Patchwork [meta-fsl-arm-extra] linux-imx (2.6.35.3): Disable NAPI

login
register
mail settings
Submitter Fabio Estevam
Date June 6, 2013, 8:41 p.m.
Message ID <1370551317-13083-1-git-send-email-festevam@gmail.com>
Download mbox | patch
Permalink /patch/51233/
State Accepted
Delegated to: Otavio Salvador
Headers show

Comments

Fabio Estevam - June 6, 2013, 8:41 p.m.
From: Fabio Estevam <fabio.estevam@freescale.com>

commit 0a9469a14c5 (linux-imx (2.6.35.3): Enable FEC_NAPI in the MX5 defconfig) 
enabled NAPI support on mx5 defconfig and causes the following kernel crash:

Starting advanced power management daemon: kernel BUG at include/linux/netdevice.h:462!
Unable to handle kernel NULL pointer dereference at virtual address 00000000
apmd.
apmd[1613]: apmd 3.2.1 interfacimxc_ipu mxc_ipu: Channel already disabled 9
mxc_ipu mxc_ipu: Channel already uninitialized 9
ng with apm driver 1.13 and APM BIOS 1.2
pgd = df79c000
[00000000] *pgd=cf598031, *pte=00000000, *ppte=00000000
Internal error: Oops: 817 [#1] PREEMPT
last sysfs file: /sys/devices/platform/mxc_sdc_fb.1/graphics/fb0/mode
Modules linked in:
CPU: 0    Not tainted  (2.6.35.3-maintain+yocto+g2796ca6 #1)
PC is at __bug+0x1c/0x28
LR is at __bug+0x18/0x28
pc : [<80035c28>]    lr : [<80035c24>]    psr: 600f0013
sp : df635e38  ip : e08fe000  fp : 00008914
r10: 7ebf48e0  r9 : 00000000  r8 : 00000001
r7 : 00009002  r6 : 00000001  r5 : 8045406c  r4 : df011000
r3 : 00000000  r2 : df635e2c  r1 : 807a3d2b  r0 : 00000033
Flags: nZCv  IRQs on  FIQs on  Mode SVC_32  ISA ARM  Segment user
Control: 10c5387d  Table: cf79c019  DAC: 00000015
Process connmand (pid: 1589, stack limit = 0xdf6342e8)
Stack: (0xdf635e38 to 0xdf636000)
5e20:                                                       00000000 802a833c
5e40: df011000 000000e2 df011000 8045406c 00000001 00009002 00000001 00000000
5e60: 7ebf48e0 80376224 803761a8 df011000 ffff9003 80376464 00008914 df011000
5e80: 00009002 df422000 df011000 80376554 00000000 df42200c df422000 803b8438
5ea0: df634000 00000000 30687465 00000000 00000000 00000000 00009003 00000000
5ec0: 00000000 00000000 00000000 00008914 803639d4 7ebf48e0 808cdebc 80033004
5ee0: df634000 00093250 7ebf48e0 80363be0 0000c000 df561000 803639d4 7ebf48e0
5f00: 00008914 800d5c78 0000c000 7ebf48e0 df561000 00008914 0000000d 800d66d8
5f20: 00000003 80712c08 808cdce8 df634000 00093250 800c964c 00000000 0000000d
5f40: de289c00 df635f84 00080000 803641ec df634000 df052800 de28e800 00000000
5f60: 00000000 7ebf48e0 df561000 00008914 0000000d 80033004 df634000 00093250
5f80: 7ebf4cf4 800d6760 0000000d 00000000 7ebf48e0 0000000d 00000000 00000001
5fa0: 00000036 80032e80 0000000d 00000000 0000000d 00008914 7ebf48e0 00009002
5fc0: 0000000d 00000000 00000001 00000036 00000000 000001bc 00093250 7ebf4cf4
5fe0: 0008e5ac 7ebf48dc 00053ef4 4d196fec 600f0010 0000000d 00000000 00000000
[<80035c28>] (__bug+0x1c/0x28) from [<802a833c>] (fec_enet_open+0x2c/0x25c)
[<802a833c>] (fec_enet_open+0x2c/0x25c) from [<80376224>] (__dev_open+0x7c/0xfc)
[<80376224>] (__dev_open+0x7c/0xfc) from [<80376464>] (__dev_change_flags+0x8c/0x110)
[<80376464>] (__dev_change_flags+0x8c/0x110) from [<80376554>] (dev_change_flags+0x10/0x44)
[<80376554>] (dev_change_flags+0x10/0x44) from [<803b8438>] (devinet_ioctl+0x298/0x694)
[<803b8438>] (devinet_ioctl+0x298/0x694) from [<80363be0>] (sock_ioctl+0x20c/0x25c)
[<80363be0>] (sock_ioctl+0x20c/0x25c) from [<800d5c78>] (vfs_ioctl+0x2c/0xac)
[<800d5c78>] (vfs_ioctl+0x2c/0xac) from [<800d66d8>] (do_vfs_ioctl+0x514/0x56c)
[<800d66d8>] (do_vfs_ioctl+0x514/0x56c) from [<800d6760>] (sys_ioctl+0x30/0x58)
[<800d6760>] (sys_ioctl+0x30/0x58) from [<80032e80>] (ret_fast_syscall+0x0/0x30)
Code: e59f0010 e1a01003 eb0fb87b e3a03000 (e5833000)
---[ end trace 1602d2bf9360375c ]---

Disable CONFIG_FEC_NAPI option so that we can have FEC functional again.

Signed-off-by: Fabio Estevam <fabio.estevam@freescale.com>
---
 recipes-kernel/linux/linux-imx-2.6.35.3/mx5/defconfig | 1 -
 1 file changed, 1 deletion(-)
Otavio Salvador - June 6, 2013, 9:13 p.m.
On Thu, Jun 6, 2013 at 5:41 PM, Fabio Estevam <festevam@gmail.com> wrote:

> From: Fabio Estevam <fabio.estevam@freescale.com>
>
> commit 0a9469a14c5 (linux-imx (2.6.35.3): Enable FEC_NAPI in the MX5
> defconfig)
> enabled NAPI support on mx5 defconfig and causes the following kernel
> crash:
>
> Starting advanced power management daemon: kernel BUG at
> include/linux/netdevice.h:462!
> Unable to handle kernel NULL pointer dereference at virtual address
> 00000000
> apmd.
> apmd[1613]: apmd 3.2.1 interfacimxc_ipu mxc_ipu: Channel already disabled 9
> mxc_ipu mxc_ipu: Channel already uninitialized 9
> ng with apm driver 1.13 and APM BIOS 1.2
> pgd = df79c000
> [00000000] *pgd=cf598031, *pte=00000000, *ppte=00000000
> Internal error: Oops: 817 [#1] PREEMPT
> last sysfs file: /sys/devices/platform/mxc_sdc_fb.1/graphics/fb0/mode
> Modules linked in:
> CPU: 0    Not tainted  (2.6.35.3-maintain+yocto+g2796ca6 #1)
> PC is at __bug+0x1c/0x28
> LR is at __bug+0x18/0x28
> pc : [<80035c28>]    lr : [<80035c24>]    psr: 600f0013
> sp : df635e38  ip : e08fe000  fp : 00008914
> r10: 7ebf48e0  r9 : 00000000  r8 : 00000001
> r7 : 00009002  r6 : 00000001  r5 : 8045406c  r4 : df011000
> r3 : 00000000  r2 : df635e2c  r1 : 807a3d2b  r0 : 00000033
> Flags: nZCv  IRQs on  FIQs on  Mode SVC_32  ISA ARM  Segment user
> Control: 10c5387d  Table: cf79c019  DAC: 00000015
> Process connmand (pid: 1589, stack limit = 0xdf6342e8)
> Stack: (0xdf635e38 to 0xdf636000)
> 5e20:                                                       00000000
> 802a833c
> 5e40: df011000 000000e2 df011000 8045406c 00000001 00009002 00000001
> 00000000
> 5e60: 7ebf48e0 80376224 803761a8 df011000 ffff9003 80376464 00008914
> df011000
> 5e80: 00009002 df422000 df011000 80376554 00000000 df42200c df422000
> 803b8438
> 5ea0: df634000 00000000 30687465 00000000 00000000 00000000 00009003
> 00000000
> 5ec0: 00000000 00000000 00000000 00008914 803639d4 7ebf48e0 808cdebc
> 80033004
> 5ee0: df634000 00093250 7ebf48e0 80363be0 0000c000 df561000 803639d4
> 7ebf48e0
> 5f00: 00008914 800d5c78 0000c000 7ebf48e0 df561000 00008914 0000000d
> 800d66d8
> 5f20: 00000003 80712c08 808cdce8 df634000 00093250 800c964c 00000000
> 0000000d
> 5f40: de289c00 df635f84 00080000 803641ec df634000 df052800 de28e800
> 00000000
> 5f60: 00000000 7ebf48e0 df561000 00008914 0000000d 80033004 df634000
> 00093250
> 5f80: 7ebf4cf4 800d6760 0000000d 00000000 7ebf48e0 0000000d 00000000
> 00000001
> 5fa0: 00000036 80032e80 0000000d 00000000 0000000d 00008914 7ebf48e0
> 00009002
> 5fc0: 0000000d 00000000 00000001 00000036 00000000 000001bc 00093250
> 7ebf4cf4
> 5fe0: 0008e5ac 7ebf48dc 00053ef4 4d196fec 600f0010 0000000d 00000000
> 00000000
> [<80035c28>] (__bug+0x1c/0x28) from [<802a833c>] (fec_enet_open+0x2c/0x25c)
> [<802a833c>] (fec_enet_open+0x2c/0x25c) from [<80376224>]
> (__dev_open+0x7c/0xfc)
> [<80376224>] (__dev_open+0x7c/0xfc) from [<80376464>]
> (__dev_change_flags+0x8c/0x110)
> [<80376464>] (__dev_change_flags+0x8c/0x110) from [<80376554>]
> (dev_change_flags+0x10/0x44)
> [<80376554>] (dev_change_flags+0x10/0x44) from [<803b8438>]
> (devinet_ioctl+0x298/0x694)
> [<803b8438>] (devinet_ioctl+0x298/0x694) from [<80363be0>]
> (sock_ioctl+0x20c/0x25c)
> [<80363be0>] (sock_ioctl+0x20c/0x25c) from [<800d5c78>]
> (vfs_ioctl+0x2c/0xac)
> [<800d5c78>] (vfs_ioctl+0x2c/0xac) from [<800d66d8>]
> (do_vfs_ioctl+0x514/0x56c)
> [<800d66d8>] (do_vfs_ioctl+0x514/0x56c) from [<800d6760>]
> (sys_ioctl+0x30/0x58)
> [<800d6760>] (sys_ioctl+0x30/0x58) from [<80032e80>]
> (ret_fast_syscall+0x0/0x30)
> Code: e59f0010 e1a01003 eb0fb87b e3a03000 (e5833000)
> ---[ end trace 1602d2bf9360375c ]---
>
> Disable CONFIG_FEC_NAPI option so that we can have FEC functional again.
>
> Signed-off-by: Fabio Estevam <fabio.estevam@freescale.com>
>

I applied it in master; thanks for sending it.

Patch

diff --git a/recipes-kernel/linux/linux-imx-2.6.35.3/mx5/defconfig b/recipes-kernel/linux/linux-imx-2.6.35.3/mx5/defconfig
index a4fd20f..c2a11cb 100644
--- a/recipes-kernel/linux/linux-imx-2.6.35.3/mx5/defconfig
+++ b/recipes-kernel/linux/linux-imx-2.6.35.3/mx5/defconfig
@@ -874,7 +874,6 @@  CONFIG_SMSC911X=y
 # CONFIG_KS8851 is not set
 # CONFIG_KS8851_MLL is not set
 CONFIG_FEC=y
-CONFIG_FEC_NAPI=y
 # CONFIG_FEC_1588 is not set
 # CONFIG_FEC2 is not set
 # CONFIG_NETDEV_1000 is not set