Closed meklort closed 4 years ago
This was tested on a Talos II. When attempting to unbind / rebind the kernel driver to retrigger initialization, a kernel panic occurs.
root@talos:~# echo 1e660000.ethernet > /sys/devices/platform/ahb/1e660000.ethernet/driver/unbind
[316387.583992] ——————[ cut here ]—————— [316387.588737] kernel BUG at net/core/dev.c:8881! [316387.593278] Internal error: Oops - BUG: 0 [#1] ARM [316387.598171] CPU: 0 PID: 1550 Comm: sh Not tainted 5.0.7-a8a208fa7346ad643e8f6100c49cb7b8468b6d38 #1 [316387.607294] Hardware name: Generic DT based system [316387.612205] PC is at netdev_run_todo+0x214/0x298 [316387.616913] LR is at 0x60000013 [316387.620141] pc : [<80545944>] lr : [<60000013>] psr: 80000013 [316387.626490] sp : 95359d50 ip : 95359d50 fp : 95359d9c [316387.631794] r10: 80a41450 r9 : 95359f60 r8 : 95359d5c [316387.637100] r7 : 9e2e0000 r6 : 01e25079 r5 : 80a16d80 r4 : 9e2e0244 [316387.643703] r3 : 9e2e0058 r2 : 9e3ec470 r1 : 9e2e024c r0 : 9e2e0000 [316387.650310] Flags: Nzcv IRQs on FIQs on Mode SVC_32 ISA ARM Segment none [316387.657527] Control: 00c5387d Table: 9585c008 DAC: 00000051 [316387.663360] Process sh (pid: 1550, stack limit = 0x0c46da81) [316387.669108] Stack: (0x95359d50 to 0x9535a000) [316387.673558] 9d40: 00000000 80a07008 00000000 95359d5c [316387.681821] 9d60: 95359d5c 00000051 95359dac d8088e2e 805477b8 9e2e0000 9e107244 80a38050 [316387.690087] 9d80: 00000000 00000034 95359f60 00000051 95359dac 95359da0 8055af90 8054573c [316387.698347] 9da0: 95359dc4 95359db0 80547878 8055af84 9e2e0000 9e107244 95359de4 95359dc8 [316387.706607] 9dc0: 8045d550 80547858 9e107210 9e107244 80a38050 00000000 95359df4 95359de8 [316387.714876] 9de0: 8040b8f8 8045d53c 95359e1c 95359df8 8040a7f4 8040b8d8 9e107210 80a34ba8 [316387.723136] 9e00: 00000012 80a38050 947c5d50 95359f60 95359e2c 95359e20 8040a8ac 8040a698 [316387.731402] 9e20: 95359e4c 95359e30 80408070 8040a898 80407fe4 00000000 947c5d40 95a09660 [316387.739662] 9e40: 95359e64 95359e50 804078b0 80407ff0 80407880 00000000 95359e7c 95359e68 [316387.747919] 9e60: 802a0a6c 8040788c 00000000 00000000 95359eb4 95359e80 8029ffac 802a0a30 [316387.756179] 9e80: 00000000 00000000 9e13c920 959ecbe0 80a07008 95359f60 8029fea0 00000000 [316387.764439] 9ea0: 00000000 00000000 95359f2c 95359eb8 80234598 8029feac 95359ef4 95359ec8 [316387.772698] 9ec0: 80375400 8037521c 00001000 d8088e2e 9e012a00 00000010 80a48e4c 00000001 [316387.780959] 9ee0: 00000000 8011a248 95359f04 95359ef8 8011a248 8023484c 95359f2c 95359f08 [316387.789216] 9f00: 8014b6fc d8088e2e 00000012 00000012 959ecbe0 00990368 95359f60 00000000 [316387.797477] 9f20: 95359f5c 95359f30 80234888 80234560 80232cb4 80253c54 95359f5c 959ecbe0 [316387.805735] 9f40: 959ecbe0 80a07008 00990368 00000000 95359f94 95359f60 80234af0 802347e4 [316387.813994] 9f60: 00000000 00000000 00000001 d8088e2e 00000012 00990368 4f051098 00000004 [316387.822255] 9f80: 801011e4 95358000 95359fa4 95359f98 80234b6c 80234aa4 00000000 95359fa8 [316387.830512] 9fa0: 80101000 80234b60 00000012 00990368 00000001 00990368 00000012 00000000 [316387.838773] 9fc0: 00000012 00990368 4f051098 00000004 00990368 00000012 00000000 00000000 [316387.847032] 9fe0: 00000070 7eb279d8 4ef7b860 4efd4fec 60000010 00000001 00000000 00000000 [316387.855280] Backtrace: [316387.857859] [<80545730>] (netdev_run_todo) from [<8055af90>] (rtnl_unlock+0x18/0x1c) [316387.865696] r10:00000051 r9:95359f60 r8:00000034 r7:00000000 r6:80a38050 r5:9e107244 [316387.873606] r4:9e2e0000 [316387.876248] [<8055af78>] (rtnl_unlock) from [<80547878>] (unregister_netdev+0x2c/0x30) [316387.884282] [<8054784c>] (unregister_netdev) from [<8045d550>] (ftgmac100_remove+0x20/0x70) [316387.892717] r5:9e107244 r4:9e2e0000 [316387.896400] [<8045d530>] (ftgmac100_remove) from [<8040b8f8>] (platform_drv_remove+0x2c/0x38) [316387.905011] r7:00000000 r6:80a38050 r5:9e107244 r4:9e107210 [316387.910764] [<8040b8cc>] (platform_drv_remove) from [<8040a7f4>] (device_release_driver_internal+0x168/0x200) [316387.920762] [<8040a68c>] (device_release_driver_internal) from [<8040a8ac>] (device_release_driver+0x20/0x24) [316387.930761] r9:95359f60 r8:947c5d50 r7:80a38050 r6:00000012 r5:80a34ba8 r4:9e107210 [316387.938607] [<8040a88c>] (device_release_driver) from [<80408070>] (unbind_store+0x8c/0x138) [316387.947146] [<80407fe4>] (unbind_store) from [<804078b0>] (drv_attr_store+0x30/0x3c) [316387.954974] r7:95a09660 r6:947c5d40 r5:00000000 r4:80407fe4 [316387.960734] [<80407880>] (drv_attr_store) from [<802a0a6c>] (sysfs_kf_write+0x48/0x54) [316387.968733] r5:00000000 r4:80407880 [316387.972409] [<802a0a24>] (sysfs_kf_write) from [<8029ffac>] (kernfs_fop_write+0x10c/0x1f0) [316387.980752] r5:00000000 r4:00000000 [316387.984423] [<8029fea0>] (kernfs_fop_write) from [<80234598>] (__vfs_write+0x44/0x190) [316387.992425] r10:00000000 r9:00000000 r8:00000000 r7:8029fea0 r6:95359f60 r5:80a07008 [316388.000327] r4:959ecbe0 [316388.002954] [<80234554>] (__vfs_write) from [<80234888>] (vfs_write+0xb0/0x194) [316388.010345] r8:00000000 r7:95359f60 r6:00990368 r5:959ecbe0 r4:00000012 [316388.017135] [<802347d8>] (vfs_write) from [<80234af0>] (ksys_write+0x58/0xbc) [316388.024359] r8:00000000 r7:00990368 r6:80a07008 r5:959ecbe0 r4:959ecbe0 [316388.031147] [<80234a98>] (ksys_write) from [<80234b6c>] (sys_write+0x18/0x1c) [316388.038366] r9:95358000 r8:801011e4 r7:00000004 r6:4f051098 r5:00990368 r4:00000012 [316388.046195] [<80234b54>] (sys_write) from [<80101000>] (ret_fast_syscall+0x0/0x54) [316388.053847] Exception stack(0x95359fa8 to 0x95359ff0) [316388.058993] 9fa0: 00000012 00990368 00000001 00990368 00000012 00000000 [316388.067251] 9fc0: 00000012 00990368 4f051098 00000004 00990368 00000012 00000000 00000000 [316388.075508] 9fe0: 00000070 7eb279d8 4ef7b860 4efd4fec [316388.080656] Code: ebffff40 eaffffdd e7f001f2 e7f001f2 (e7f001f2) [316388.086844] —[ end trace 0f73fafef8b710b9 ]— [316388.091548] Kernel panic - not syncing: Fatal exception [316388.096867] —[ end Kernel panic - not syncing: Fatal exception ]—
Follow this one in #184 as it has a better title. This is nothing do with NCSI.
This was tested on a Talos II. When attempting to unbind / rebind the kernel driver to retrigger initialization, a kernel panic occurs.
root@talos:~# echo 1e660000.ethernet > /sys/devices/platform/ahb/1e660000.ethernet/driver/unbind