linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH] net: axienet: Fix double deregister of mdio
@ 2018-07-24  4:39 shubhrajyoti.datta
  2018-07-24 23:38 ` David Miller
  0 siblings, 1 reply; 5+ messages in thread
From: shubhrajyoti.datta @ 2018-07-24  4:39 UTC (permalink / raw)
  To: netdev; +Cc: shubhrajyoti.datta, michal.simek, linux-kernel, Shubhrajyoti Datta

From: Shubhrajyoti Datta <shubhrajyoti.datta@xilinx.com>

If the registration fails then mdio_unregister is called.
However at unbind the unregister ia attempted again resulting
in the below crash

[   73.544038] kernel BUG at drivers/net/phy/mdio_bus.c:415!
[   73.549362] Internal error: Oops - BUG: 0 [#1] SMP
[   73.554127] Modules linked in:
[   73.557168] CPU: 0 PID: 2249 Comm: sh Not tainted 4.14.0 #183
[   73.562895] Hardware name: xlnx,zynqmp (DT)
[   73.567062] task: ffffffc879e41180 task.stack: ffffff800cbe0000
[   73.572973] PC is at mdiobus_unregister+0x84/0x88
[   73.577656] LR is at axienet_mdio_teardown+0x18/0x30
[   73.582601] pc : [<ffffff80085fa4cc>] lr : [<ffffff8008616858>]
pstate: 20000145
[   73.589981] sp : ffffff800cbe3c30
[   73.593277] x29: ffffff800cbe3c30 x28: ffffffc879e41180
[   73.598573] x27: ffffff8008a21000 x26: 0000000000000040
[   73.603868] x25: 0000000000000124 x24: ffffffc879efe920
[   73.609164] x23: 0000000000000060 x22: ffffffc879e02000
[   73.614459] x21: ffffffc879e02800 x20: ffffffc87b0b8870
[   73.619754] x19: ffffffc879e02800 x18: 000000000000025d
[   73.625050] x17: 0000007f9a719ad0 x16: ffffff8008195bd8
[   73.630345] x15: 0000007f9a6b3d00 x14: 0000000000000010
[   73.635640] x13: 74656e7265687465 x12: 0000000000000030
[   73.640935] x11: 0000000000000030 x10: 0101010101010101
[   73.646231] x9 : 241f394f42533300 x8 : ffffffc8799f6e98
[   73.651526] x7 : ffffffc8799f6f18 x6 : ffffffc87b0ba318
[   73.656822] x5 : ffffffc87b0ba498 x4 : 0000000000000000
[   73.662117] x3 : 0000000000000000 x2 : 0000000000000008
[   73.667412] x1 : 0000000000000004 x0 : ffffffc8799f4000
[   73.672708] Process sh (pid: 2249, stack limit = 0xffffff800cbe0000)

Fix the same by making the bus NULL on unregister.

Signed-off-by: Shubhrajyoti Datta <shubhrajyoti.datta@xilinx.com>
---
 drivers/net/ethernet/xilinx/xilinx_axienet_mdio.c | 1 +
 1 file changed, 1 insertion(+)

diff --git a/drivers/net/ethernet/xilinx/xilinx_axienet_mdio.c b/drivers/net/ethernet/xilinx/xilinx_axienet_mdio.c
index 16c3bfb..757a3b3 100644
--- a/drivers/net/ethernet/xilinx/xilinx_axienet_mdio.c
+++ b/drivers/net/ethernet/xilinx/xilinx_axienet_mdio.c
@@ -218,6 +218,7 @@ int axienet_mdio_setup(struct axienet_local *lp, struct device_node *np)
 	ret = of_mdiobus_register(bus, np1);
 	if (ret) {
 		mdiobus_free(bus);
+		lp->mii_bus = NULL;
 		return ret;
 	}
 	return 0;
-- 
2.7.4


^ permalink raw reply related	[flat|nested] 5+ messages in thread

* Re: [PATCH] net: axienet: Fix double deregister of mdio
  2018-07-24  4:39 [PATCH] net: axienet: Fix double deregister of mdio shubhrajyoti.datta
@ 2018-07-24 23:38 ` David Miller
  0 siblings, 0 replies; 5+ messages in thread
From: David Miller @ 2018-07-24 23:38 UTC (permalink / raw)
  To: shubhrajyoti.datta; +Cc: netdev, michal.simek, linux-kernel, shubhrajyoti.datta

From: <shubhrajyoti.datta@gmail.com>
Date: Tue, 24 Jul 2018 10:09:53 +0530

> From: Shubhrajyoti Datta <shubhrajyoti.datta@xilinx.com>
> 
> If the registration fails then mdio_unregister is called.
> However at unbind the unregister ia attempted again resulting
> in the below crash
 ...
> Fix the same by making the bus NULL on unregister.
> 
> Signed-off-by: Shubhrajyoti Datta <shubhrajyoti.datta@xilinx.com>

Applied, thank you.

^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: [PATCH] net: axienet: Fix double deregister of mdio
  2018-07-23 16:43 ` David Miller
@ 2018-07-24  4:42   ` Shubhrajyoti Datta
  0 siblings, 0 replies; 5+ messages in thread
From: Shubhrajyoti Datta @ 2018-07-24  4:42 UTC (permalink / raw)
  To: David Miller; +Cc: Shubhrajyoti Datta, netdev, Michal Simek, linux-kernel

Hi David,

On Mon, Jul 23, 2018 at 10:13 PM, David Miller <davem@davemloft.net> wrote:
> From: Shubhrajyoti Datta <shubhrajyoti.datta@xilinx.com>
> Date: Mon, 23 Jul 2018 14:08:47 +0530
>
>> diff --git a/drivers/net/ethernet/xilinx/xilinx_axienet_mdio.c b/drivers/net/ethernet/xilinx/xilinx_axienet_mdio.c
>> index 16c3bfb..757a3b3 100644
>> --- a/drivers/net/ethernet/xilinx/xilinx_axienet_mdio.c
>> +++ b/drivers/net/ethernet/xilinx/xilinx_axienet_mdio.c
>> @@ -218,6 +218,7 @@ int axienet_mdio_setup(struct axienet_local *lp, struct device_node *np)
>>         ret = of_mdiobus_register(bus, np1);
>>         if (ret) {
>>                 mdiobus_free(bus);
>> +               lp->mii_bus = NULL;
>>                 return ret;
>>         }
>
> Your patch was corrupted by your email client, in particular it has transformed TAB
> characters into SPACEs.
>
> Please fix this, email the patch to yourself as a test, and please do
> not send the patch here to the list again until you can successfully
> apply the patch you receive in that test email.
>
>> This email and any attachments are intended for the sole use of the named recipient(s) and contain(s) confidential information that may be proprietary, privileged or copyrighted under applicable law. If you are not the intended recipient, do not read, copy, or forward this email message or any attachments. Delete this email message and any attachments immediately.
>
> This is inappropriate for postings to this mailing list, please disable this footer
> if you would like to post here.
>
> Thank you.

Apologies for the same.
Resent now .

^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: [PATCH] net: axienet: Fix double deregister of mdio
  2018-07-23  8:38 Shubhrajyoti Datta
@ 2018-07-23 16:43 ` David Miller
  2018-07-24  4:42   ` Shubhrajyoti Datta
  0 siblings, 1 reply; 5+ messages in thread
From: David Miller @ 2018-07-23 16:43 UTC (permalink / raw)
  To: shubhrajyoti.datta; +Cc: netdev, michal.simek, linux-kernel

From: Shubhrajyoti Datta <shubhrajyoti.datta@xilinx.com>
Date: Mon, 23 Jul 2018 14:08:47 +0530

> diff --git a/drivers/net/ethernet/xilinx/xilinx_axienet_mdio.c b/drivers/net/ethernet/xilinx/xilinx_axienet_mdio.c
> index 16c3bfb..757a3b3 100644
> --- a/drivers/net/ethernet/xilinx/xilinx_axienet_mdio.c
> +++ b/drivers/net/ethernet/xilinx/xilinx_axienet_mdio.c
> @@ -218,6 +218,7 @@ int axienet_mdio_setup(struct axienet_local *lp, struct device_node *np)
>         ret = of_mdiobus_register(bus, np1);
>         if (ret) {
>                 mdiobus_free(bus);
> +               lp->mii_bus = NULL;
>                 return ret;
>         }

Your patch was corrupted by your email client, in particular it has transformed TAB
characters into SPACEs.

Please fix this, email the patch to yourself as a test, and please do
not send the patch here to the list again until you can successfully
apply the patch you receive in that test email.

> This email and any attachments are intended for the sole use of the named recipient(s) and contain(s) confidential information that may be proprietary, privileged or copyrighted under applicable law. If you are not the intended recipient, do not read, copy, or forward this email message or any attachments. Delete this email message and any attachments immediately.

This is inappropriate for postings to this mailing list, please disable this footer
if you would like to post here.

Thank you.

^ permalink raw reply	[flat|nested] 5+ messages in thread

* [PATCH] net: axienet: Fix double deregister of mdio
@ 2018-07-23  8:38 Shubhrajyoti Datta
  2018-07-23 16:43 ` David Miller
  0 siblings, 1 reply; 5+ messages in thread
From: Shubhrajyoti Datta @ 2018-07-23  8:38 UTC (permalink / raw)
  To: netdev; +Cc: michal.simek, linux-kernel, Shubhrajyoti Datta

If the registration fails then mdio_unregister is called.
However at unbind the unregister ia attempted again resulting
in the below crash

[   73.544038] kernel BUG at drivers/net/phy/mdio_bus.c:415!
[   73.549362] Internal error: Oops - BUG: 0 [#1] SMP
[   73.554127] Modules linked in:
[   73.557168] CPU: 0 PID: 2249 Comm: sh Not tainted 4.14.0 #183
[   73.562895] Hardware name: xlnx,zynqmp (DT)
[   73.567062] task: ffffffc879e41180 task.stack: ffffff800cbe0000
[   73.572973] PC is at mdiobus_unregister+0x84/0x88
[   73.577656] LR is at axienet_mdio_teardown+0x18/0x30
[   73.582601] pc : [<ffffff80085fa4cc>] lr : [<ffffff8008616858>]
pstate: 20000145
[   73.589981] sp : ffffff800cbe3c30
[   73.593277] x29: ffffff800cbe3c30 x28: ffffffc879e41180
[   73.598573] x27: ffffff8008a21000 x26: 0000000000000040
[   73.603868] x25: 0000000000000124 x24: ffffffc879efe920
[   73.609164] x23: 0000000000000060 x22: ffffffc879e02000
[   73.614459] x21: ffffffc879e02800 x20: ffffffc87b0b8870
[   73.619754] x19: ffffffc879e02800 x18: 000000000000025d
[   73.625050] x17: 0000007f9a719ad0 x16: ffffff8008195bd8
[   73.630345] x15: 0000007f9a6b3d00 x14: 0000000000000010
[   73.635640] x13: 74656e7265687465 x12: 0000000000000030
[   73.640935] x11: 0000000000000030 x10: 0101010101010101
[   73.646231] x9 : 241f394f42533300 x8 : ffffffc8799f6e98
[   73.651526] x7 : ffffffc8799f6f18 x6 : ffffffc87b0ba318
[   73.656822] x5 : ffffffc87b0ba498 x4 : 0000000000000000
[   73.662117] x3 : 0000000000000000 x2 : 0000000000000008
[   73.667412] x1 : 0000000000000004 x0 : ffffffc8799f4000
[   73.672708] Process sh (pid: 2249, stack limit = 0xffffff800cbe0000)

Fix the same by making the bus NULL on unregister.

Signed-off-by: Shubhrajyoti Datta <shubhrajyoti.datta@xilinx.com>
---
 drivers/net/ethernet/xilinx/xilinx_axienet_mdio.c | 1 +
 1 file changed, 1 insertion(+)

diff --git a/drivers/net/ethernet/xilinx/xilinx_axienet_mdio.c b/drivers/net/ethernet/xilinx/xilinx_axienet_mdio.c
index 16c3bfb..757a3b3 100644
--- a/drivers/net/ethernet/xilinx/xilinx_axienet_mdio.c
+++ b/drivers/net/ethernet/xilinx/xilinx_axienet_mdio.c
@@ -218,6 +218,7 @@ int axienet_mdio_setup(struct axienet_local *lp, struct device_node *np)
        ret = of_mdiobus_register(bus, np1);
        if (ret) {
                mdiobus_free(bus);
+               lp->mii_bus = NULL;
                return ret;
        }
        return 0;
--
2.7.4

This email and any attachments are intended for the sole use of the named recipient(s) and contain(s) confidential information that may be proprietary, privileged or copyrighted under applicable law. If you are not the intended recipient, do not read, copy, or forward this email message or any attachments. Delete this email message and any attachments immediately.

^ permalink raw reply related	[flat|nested] 5+ messages in thread

end of thread, other threads:[~2018-07-24 23:38 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2018-07-24  4:39 [PATCH] net: axienet: Fix double deregister of mdio shubhrajyoti.datta
2018-07-24 23:38 ` David Miller
  -- strict thread matches above, loose matches on Subject: below --
2018-07-23  8:38 Shubhrajyoti Datta
2018-07-23 16:43 ` David Miller
2018-07-24  4:42   ` Shubhrajyoti Datta

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).