Patchwork [v2,1/2,net-next] net: fec: fix miss init spinlock

login
register
mail settings
Submitter Frank Li
Date Feb. 5, 2013, 6:26 a.m.
Message ID <1360045577-6266-1-git-send-email-Frank.Li@freescale.com>
Download mbox | patch
Permalink /patch/218161/
State Changes Requested
Delegated to: David Miller
Headers show

Comments

Frank Li - Feb. 5, 2013, 6:26 a.m.
BUG: spinlock bad magic on CPU#1, swapper/0/1
lock: 0xbfae0f8c, .magic: 00000000, .owner: <none>/-1, .owner_cpu: 0
Backtrace:
 [<80011d54>] (dump_backtrace+0x0/0x10c) from [<804e7800>] (dump_stack+0x18/0x1c)
 r6:bfae0000 r5:bfae0f8c r4:00000000 r3:806c1310
 [<804e77e8>] (dump_stack+0x0/0x1c) from [<804e9f20>] (spin_dump+0x80/0x94)
 [<804e9ea0>] (spin_dump+0x0/0x94) from [<804e9f60>] (spin_bug+0x2c/0x30)
 r5:805f6f8c r4:bfae0f8c
 [<804e9f34>] (spin_bug+0x0/0x30) from [<80257984>] (do_raw_spin_lock+0x170/0x1b0                                         )
 r5:806b4950 r4:bfae0f8c
 [<80257814>] (do_raw_spin_lock+0x0/0x1b0) from [<804ed15c>] (_raw_spin_lock_irqs                                         ave+0x18/0x20)
 [<804ed144>] (_raw_spin_lock_irqsave+0x0/0x20) from [<8033c694>] (fec_ptp_start_                                         cyclecounter+0x3c/0x120)
 r4:bfae0f8c r3:00000002
 [<8033c658>] (fec_ptp_start_cyclecounter+0x0/0x120) from [<80339e08>] (fec_resta                                         rt+0x56c/0x5f8)
 r8:00000000 r7:806e6f48 r6:00000112 r5:806b4950 r4:bfae0000
 [<8033989c>] (fec_restart+0x0/0x5f8) from [<8033b9e4>] (fec_probe+0x508/0xa48)

Signed-off-by: Frank Li <Frank.Li@freescale.com>
---
Change from v1 to v2
 - avoid reinit hwreg_lock twice

 drivers/net/ethernet/freescale/fec.c |    6 +++---
 1 files changed, 3 insertions(+), 3 deletions(-)
David Miller - Feb. 6, 2013, 8:04 p.m.
From: Frank Li <Frank.Li@freescale.com>
Date: Tue, 5 Feb 2013 14:26:16 +0800

> Change from v1 to v2
>  - avoid reinit hwreg_lock twice

I already applied your v1 patch, so you have to revert that spin_lock_init()
call in this change.

Please do that and respin this patch series.
--
To unsubscribe from this list: send the line "unsubscribe netdev" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Frank Li - Feb. 7, 2013, 1:37 a.m.
2013/2/7 David Miller <davem@davemloft.net>:
> From: Frank Li <Frank.Li@freescale.com>
> Date: Tue, 5 Feb 2013 14:26:16 +0800
>
>> Change from v1 to v2
>>  - avoid reinit hwreg_lock twice
>
> I already applied your v1 patch, so you have to revert that spin_lock_init()
> call in this change.
>
> Please do that and respin this patch series.

Okay
--
To unsubscribe from this list: send the line "unsubscribe netdev" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Patch

diff --git a/drivers/net/ethernet/freescale/fec.c b/drivers/net/ethernet/freescale/fec.c
index 0287675..0fe68c4 100644
--- a/drivers/net/ethernet/freescale/fec.c
+++ b/drivers/net/ethernet/freescale/fec.c
@@ -1840,6 +1840,9 @@  fec_probe(struct platform_device *pdev)
 
 	fec_reset_phy(pdev);
 
+	if (fep->bufdesc_ex)
+		fec_ptp_init(ndev, pdev);
+
 	ret = fec_enet_init(ndev);
 	if (ret)
 		goto failed_init;
@@ -1855,9 +1858,6 @@  fec_probe(struct platform_device *pdev)
 	if (ret)
 		goto failed_register;
 
-	if (fep->bufdesc_ex)
-		fec_ptp_init(ndev, pdev);
-
 	return 0;
 
 failed_register: