net: ep93xx_eth: fix mismatch of request_mem_region in remove

[ Upstream commit 3df70afe8d33f4977d0e0891bdcfb639320b5257 ]

The driver calls release_resource in remove to match request_mem_region
in probe, which is incorrect.
Fix it by using the right one, release_mem_region.

Signed-off-by: Chuhong Yuan <hslester96@gmail.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Signed-off-by: Sasha Levin <sashal@kernel.org>
This commit is contained in:
Chuhong Yuan 2019-11-14 23:43:24 +08:00 committed by Greg Kroah-Hartman
parent a4b6dafb84
commit cb569f88c5

View file

@ -776,6 +776,7 @@ static int ep93xx_eth_remove(struct platform_device *pdev)
{ {
struct net_device *dev; struct net_device *dev;
struct ep93xx_priv *ep; struct ep93xx_priv *ep;
struct resource *mem;
dev = platform_get_drvdata(pdev); dev = platform_get_drvdata(pdev);
if (dev == NULL) if (dev == NULL)
@ -791,8 +792,8 @@ static int ep93xx_eth_remove(struct platform_device *pdev)
iounmap(ep->base_addr); iounmap(ep->base_addr);
if (ep->res != NULL) { if (ep->res != NULL) {
release_resource(ep->res); mem = platform_get_resource(pdev, IORESOURCE_MEM, 0);
kfree(ep->res); release_mem_region(mem->start, resource_size(mem));
} }
free_netdev(dev); free_netdev(dev);