Description of problem: 使用inspur自研显卡会触发内核panic [ 25.978756] BUG: kernel NULL pointer dereference, address: 0000000000000104 [ 25.979093] #PF: supervisor read access in kernel mode [ 25.979344] #PF: error_code(0x0000) - not-present page [ 25.979595] PGD 0 P4D 0 [ 25.979725] Oops: 0000 [#1] SMP NOPTI [ 25.979908] CPU: 0 PID: 578 Comm: kworker/0:1 Not tainted 5.10.134-15.2.6.kos5.x86_64 #1 [ 25.980298] Hardware name: Inspur NF5280M6/NF5280M6, BIOS 08.02.00 09/04/2023 [ 25.980647] Workqueue: events work_for_cpu_fn [ 25.980865] RIP: 0010:kobject_get+0x9/0x70 [ 25.981067] Code: 9f 48 c7 c7 00 d8 32 a0 48 c7 c6 87 02 3b 9f e8 3d cb fe ff 48 89 df 5b e9 f4 f7 d4 ff 0f 1f 40 00 53 48 89 fb 48 85 ff 74 1f <f6> 47 3c 01 74 22 48 8d 7b 38 b8 01 00 00 00 f0 0f c1 43 38 85 c0 [ 25.981962] RSP: 0000:ffffb4045a43fd10 EFLAGS: 00010202 [ 25.982218] RAX: ffff9431f5985200 RBX: 00000000000000c8 RCX: 0000000000000000 [ 25.982563] RDX: ffff9431f13785f8 RSI: ffffffff9e71e730 RDI: 00000000000000c8 [ 25.982908] RBP: ffff9431f5936560 R08: 0000000000000100 R09: ffff9431f5985200 [ 25.983252] R10: ffff9431f354f6c8 R11: ffff9431f13785fd R12: 00000000000000c8 [ 25.983596] R13: ffff9431f5936018 R14: ffff9431f5936040 R15: ffffb4045b58bb40 [ 25.983941] FS: 0000000000000000(0000) GS:ffff952d3e600000(0000) knlGS:0000000000000000 [ 25.984350] CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033 [ 25.984629] CR2: 0000000000000104 CR3: 0000010090aba004 CR4: 0000000000770ef0 [ 25.984974] DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000 [ 25.985318] DR3: 0000000000000000 DR6: 00000000fffe0ff0 DR7: 0000000000000400 [ 25.985663] PKRU: 55555554 [ 25.985799] Call Trace: [ 25.985929] device_add+0xcd/0x7c0 [ 25.986104] i2c_register_adapter+0xf6/0x640 [i2c_core] [ 25.986362] ? i2c_register_adapter+0x640/0x640 [i2c_core] [ 25.986630] __i2c_bit_add_bus+0x3d/0x2a0 [i2c_algo_bit] [ 25.986891] inspur_vdac_init+0x23/0x120 [inspur_drm] [ 25.987141] inspur_load+0x1b8/0x260 [inspur_drm] [ 25.987373] inspur_pci_probe+0xbc/0x130 [inspur_drm] [ 25.987621] local_pci_probe+0x3f/0x80 [ 25.987807] work_for_cpu_fn+0x13/0x20 [ 25.987994] process_one_work+0x19b/0x340 [ 25.988193] worker_thread+0x1c3/0x370 [ 25.988379] ? process_one_work+0x340/0x340 [ 25.988585] kthread+0x114/0x130 [ 25.988746] ? __kthread_cancel_work+0x50/0x50 [ 25.988969] ret_from_fork+0x1f/0x30 [ 25.989146] Modules linked in: llc inspur_drm(+) drm_vram_helper drm_ttm_helper i2c_algo_bit ttm drm_kms_helper syscopyarea crct10dif_pclmul sysfillrect crc32_pclmul sysimgblt fb_sys_fops ghash_clmulni_intel mlx5_core(+) ahci(+) drm libahci mlxfw megaraid_sas i40e(+) pci_hyperv_intf i2c_core libata wmi uas usb_storage sunrpc lrw dm_crypt dm_round_robin dm_multipath dm_snapshot dm_bufio dm_mirror dm_region_hash dm_log dm_zero dm_mod linear raid10 raid456 async_raid6_recov async_memcpy async_pq async_xor xor async_tx raid6_pq libcrc32c crc32c_intel raid1 raid0 iscsi_ibft squashfs cramfs be2iscsi bnx2i cnic uio cxgb4i cxgb4 tls libcxgbi libcxgb qla4xxx iscsi_boot_sysfs iscsi_tcp libiscsi_tcp libiscsi scsi_transport_iscsi [ 25.992189] CR2: 0000000000000104 [ 25.992354] ---[ end trace 842509501a1aeab1 ]--- [ 25.996243] RIP: 0010:kobject_get+0x9/0x70 [ 25.996445] Code: 9f 48 c7 c7 00 d8 32 a0 48 c7 c6 87 02 3b 9f e8 3d cb fe ff 48 89 df 5b e9 f4 f7 d4 ff 0f 1f 40 00 53 48 89 fb 48 85 ff 74 1f <f6> 47 3c 01 74 22 48 8d 7b 38 b8 01 00 00 00 f0 0f c1 43 38 85 c0 [ 25.997340] RSP: 0000:ffffb4045a43fd10 EFLAGS: 00010202 [ 25.997595] RAX: ffff9431f5985200 RBX: 00000000000000c8 RCX: 0000000000000000 [ 25.997940] RDX: ffff9431f13785f8 RSI: ffffffff9e71e730 RDI: 00000000000000c8 [ 25.998284] RBP: ffff9431f5936560 R08: 0000000000000100 R09: ffff9431f5985200 [ 25.998629] R10: ffff9431f354f6c8 R11: ffff9431f13785fd R12: 00000000000000c8 [ 25.998974] R13: ffff9431f5936018 R14: ffff9431f5936040 R15: ffffb4045b58bb40 [ 25.999319] FS: 0000000000000000(0000) GS:ffff952d3e600000(0000) knlGS:0000000000000000 [ 25.999708] CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033 [ 25.999988] CR2: 0000000000000104 CR3: 0000010090aba004 CR4: 0000000000770ef0 [ 26.000332] DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000 [ 26.000677] DR3: 0000000000000000 DR6: 00000000fffe0ff0 DR7: 0000000000000400 [ 26.001021] PKRU: 55555554 [ 26.001158] Kernel panic - not syncing: Fatal exception [ 26.002418] Kernel Offset: 0x1d000000 from 0xffffffff81000000 (relocation range: 0xffffffff80000000-0xffffffffbfffffff) [ 26.006555] Rebooting in 1 seconds.. [ 27.009126] list_add double add: new=ffffffff9fa2dd40, prev=ffffffff9fa28188, next=ffffffff9fa2dd40. [ 27.010309] ------------[ cut here ]------------ [ 27.010535] kernel BUG at lib/list_debug.c:31! [ 27.010754] invalid opcode: 0000 [#2] SMP NOPTI [ 27.010977] CPU: 0 PID: 578 Comm: kworker/0:1 Tainted: G D 5.10.134-15.2.6.kos5.x86_64 #1 [ 27.011432] Hardware name: Inspur NF5280M6/NF5280M6, BIOS 08.02.00 09/04/2023 [ 27.011777] Workqueue: events work_for_cpu_fn [ 27.011992] RIP: 0010:__list_add_valid+0x45/0x50 [ 27.012219] Code: 00 48 39 c7 74 0f 48 39 d7 74 0a b8 01 00 00 00 c3 cc cc cc cc 48 89 f2 4c 89 c1 48 89 fe 48 c7 c7 c0 d8 3a 9f e8 2f 0b 4a 00 <0f> 0b 66 0f 1f 84 00 00 00 00 00 48 8b 07 48 8b 57 08 48 b9 00 01 [ 27.013111] RSP: 0000:ffffb4045a43fa80 EFLAGS: 00010096 [ 27.013366] RAX: 0000000000000058 RBX: ffffffff9fa2dd40 RCX: 0000000000000027 [ 27.013711] RDX: 0000000000000027 RSI: ffff952d3e61fc40 RDI: ffff952d3e61fc48 [ 27.014056] RBP: 0000000000000008 R08: 0000000000000000 R09: c0000000fffeffff [ 27.014400] R10: 0000000000000001 R11: ffffb4045a43f8b0 R12: ffffffff9fa28188 [ 27.014744] R13: ffffffff9fa28180 R14: 0000000000000046 R15: ffffffff9fa2dd40 [ 27.015089] FS: 0000000000000000(0000) GS:ffff952d3e600000(0000) knlGS:0000000000000000 [ 27.015478] CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033 [ 27.015758] CR2: 0000000000000104 CR3: 0000010090aba004 CR4: 0000000000770ef0 [ 27.016102] DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000 [ 27.017535] DR3: 0000000000000000 DR6: 00000000fffe0ff0 DR7: 0000000000000400 [ 27.017879] PKRU: 55555554 [ 27.018014] Call Trace: [ 27.018140] __register_nmi_handler+0xcf/0x110 [ 27.018362] nmi_shootdown_cpus+0x39/0xa0 [ 27.018560] native_machine_emergency_restart+0x1ea/0x200 [ 27.018825] panic+0x285/0x2e9 [ 27.018980] ? printk+0x48/0x4e [ 27.019139] oops_end.cold.12+0x18/0x18 [ 27.019332] no_context+0x209/0x360 [ 27.019509] exc_page_fault+0x398/0x530 [ 27.019701] asm_exc_page_fault+0x1e/0x30 [ 27.019899] RIP: 0010:kobject_get+0x9/0x70 [ 27.020101] Code: 9f 48 c7 c7 00 d8 32 a0 48 c7 c6 87 02 3b 9f e8 3d cb fe ff 48 89 df 5b e9 f4 f7 d4 ff 0f 1f 40 00 53 48 89 fb 48 85 ff 74 1f <f6> 47 3c 01 74 22 48 8d 7b 38 b8 01 00 00 00 f0 0f c1 43 38 85 c0 [ 27.020995] RSP: 0000:ffffb4045a43fd10 EFLAGS: 00010202 [ 27.021250] RAX: ffff9431f5985200 RBX: 00000000000000c8 RCX: 0000000000000000 [ 27.021594] RDX: ffff9431f13785f8 RSI: ffffffff9e71e730 RDI: 00000000000000c8 [ 27.021938] RBP: ffff9431f5936560 R08: 0000000000000100 R09: ffff9431f5985200 [ 27.022283] R10: ffff9431f354f6c8 R11: ffff9431f13785fd R12: 00000000000000c8 [ 27.022627] R13: ffff9431f5936018 R14: ffff9431f5936040 R15: ffffb4045b58bb40 [ 27.022973] ? get_device+0x20/0x20 [ 27.023148] device_add+0xcd/0x7c0 [ 27.023321] i2c_register_adapter+0xf6/0x640 [i2c_core] [ 27.023578] ? i2c_register_adapter+0x640/0x640 [i2c_core] [ 27.023846] __i2c_bit_add_bus+0x3d/0x2a0 [i2c_algo_bit] [ 27.024119] inspur_vdac_init+0x23/0x120 [inspur_drm] [ 27.024367] inspur_load+0x1b8/0x260 [inspur_drm] [ 27.024599] inspur_pci_probe+0xbc/0x130 [inspur_drm] [ 27.024846] local_pci_probe+0x3f/0x80 [ 27.025031] work_for_cpu_fn+0x13/0x20 [ 27.025217] process_one_work+0x19b/0x340 [ 27.025415] worker_thread+0x1c3/0x370 [ 27.025601] ? process_one_work+0x340/0x340 [ 27.025806] kthread+0x114/0x130 [ 27.025967] ? __kthread_cancel_work+0x50/0x50 [ 27.026186] ret_from_fork+0x1f/0x30 [ 27.026364] Modules linked in: llc inspur_drm(+) drm_vram_helper drm_ttm_helper i2c_algo_bit ttm drm_kms_helper syscopyarea crct10dif_pclmul sysfillrect crc32_pclmul sysimgblt fb_sys_fops ghash_clmulni_intel mlx5_core(+) ahci(+) drm libahci mlxfw megaraid_sas i40e(+) pci_hyperv_intf i2c_core libata wmi uas usb_storage sunrpc lrw dm_crypt dm_round_robin dm_multipath dm_snapshot dm_bufio dm_mirror dm_region_hash dm_log dm_zero dm_mod linear raid10 raid456 async_raid6_recov async_memcpy async_pq async_xor xor async_tx raid6_pq libcrc32c crc32c_intel raid1 raid0 iscsi_ibft squashfs cramfs be2iscsi bnx2i cnic uio cxgb4i cxgb4 tls libcxgbi libcxgb qla4xxx iscsi_boot_sysfs iscsi_tcp libiscsi_tcp libiscsi scsi_transport_iscsi [ 27.029397] ---[ end trace 842509501a1aeab2 ]--- [ 27.033328] RIP: 0010:kobject_get+0x9/0x70 [ 27.033530] Code: 9f 48 c7 c7 00 d8 32 a0 48 c7 c6 87 02 3b 9f e8 3d cb fe ff 48 89 df 5b e9 f4 f7 d4 ff 0f 1f 40 00 53 48 89 fb 48 85 ff 74 1f <f6> 47 3c 01 74 22 48 8d 7b 38 b8 01 00 00 00 f0 0f c1 43 38 85 c0 [ 27.034448] RSP: 0000:ffffb4045a43fd10 EFLAGS: 00010202 [ 27.034703] RAX: ffff9431f5985200 RBX: 00000000000000c8 RCX: 0000000000000000 [ 27.035048] RDX: ffff9431f13785f8 RSI: ffffffff9e71e730 RDI: 00000000000000c8 [ 27.035392] RBP: ffff9431f5936560 R08: 0000000000000100 R09: ffff9431f5985200 [ 27.035737] R10: ffff9431f354f6c8 R11: ffff9431f13785fd R12: 00000000000000c8 [ 27.036081] R13: ffff9431f5936018 R14: ffff9431f5936040 R15: ffffb4045b58bb40 [ 27.036426] FS: 0000000000000000(0000) GS:ffff952d3e600000(0000) knlGS:0000000000000000 [ 27.036815] CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033 [ 27.037095] CR2: 0000000000000104 CR3: 0000010090aba004 CR4: 0000000000770ef0 [ 27.037440] DR0: 0000000000000000 DR1: 00000000000000000 DR2: 0000000000000000 [ 27.037784] DR3: 0000000000000000 DR6: 00000000fffe0ff0 DR7: 0000000000000400 [ 27.038129] PKRU: 55555554 [ 27.038265] Kernel panic - not syncing: Fatal exception [ 27.038520] Kernel Offset: 0x1d000000 from 0xffffffff81000000 (relocation range: 0xffffffff80000000-0xffffffffbfffffff) [ 27.042840] Rebooting in 1 seconds..
The PR Link: https://gitee.com/anolis/cloud-kernel/pulls/2336