[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-Id: <20191206.205136.926869407524154741.davem@davemloft.net>
Date: Fri, 06 Dec 2019 20:51:36 -0800 (PST)
From: David Miller <davem@...emloft.net>
To: brunocarneirodacunha@....br
Cc: netdev@...r.kernel.org, linux@...ielsmartinez.com
Subject: Re: [PATCH] lpc_eth: kernel BUG on remove
From: Bruno Carneiro da Cunha <brunocarneirodacunha@....br>
Date: Thu, 5 Dec 2019 17:16:26 -0300
> We may have found a bug in the nxp/lpc_eth.c driver. The function
> platform_set_drvdata() is called twice, the second time it is
> called, in lpc_mii_init(), it overwrites the struct net_device which
> should be at pdev->dev->driver_data with pldat->mii_bus. When trying
> to remove the driver, in lpc_eth_drv_remove(),
> platform_get_drvdata() will return the pldat->mii_bus pointer and
> try to use it as a struct net_device pointer. This causes
> unregister_netdev to segfault and generate a kernel BUG. Is this
> reproducible?
>
> Signed-off-by: Daniel Martinez <linux@...ielsmartinez.com>
> Signed-off-by: Bruno Carneiro da Cunha <brunocarneirodacunha@....br>
Patch applied, thanks.
Powered by blists - more mailing lists