我正在尝试连接通过 PCI 卡通信的 CCD 相机。
当 PCI 卡直接安装在 PC 上时没有问题,但是当 PCI 卡通过光纤延长器连接到 PC 时,出现以下错误:
[ 1402.460924] BUG: unable to handle kernel NULL pointer dereference at 0000000000000038
[ 1402.460981] IP: [<ffffffffa04f76f1>] AndorDisableInterrupts+0x21/0x40 [andordrvlx]
[ 1402.461030] PGD 3e7eec067 PUD 3ea331067 PMD 0
[ 1402.461063] Oops: 0000 [#1] SMP
[ 1402.461089] CPU 0
[ 1402.461101] Modules linked in: andordrvlx(O) ip6table_filter ip6_tables iptable_filter ip_tables x_tables rfcomm bnep bluetooth parport_pc ppdev nfsd nfs lockd fscache auth_rpcgss binfmt_misc nfs_acl sunrpc snd_hda_codec_hdmi snd_hda_codec_realtek tpm_infineon shpchp coretemp snd_hda_intel kvm ghash_clmulni_intel aesni_intel cryptd aes_x86_64 snd_hda_codec snd_hwdep snd_pcm snd_seq_midi snd_rawmidi snd_seq_midi_event snd_seq snd_timer snd_seq_device lpc_ich hp_wmi sparse_keymap snd soundcore snd_page_alloc microcode tpm_tis psmouse serio_raw wmi i915 drm_kms_helper mac_hid drm mei i2c_algo_bit video lp parport hid_generic usbhid hid ahci libahci e1000e
[ 1402.461564]
[ 1402.461570] Pid: 2295, comm: image Tainted: G W O 3.5.0-44-generic #67~precise1-Ubuntu Hewlett-Packard HP Compaq Elite 8300 CMT/3396
[ 1402.461642] RIP: 0010:[<ffffffffa04f76f1>] [<ffffffffa04f76f1>] AndorDisableInterrupts+0x21/0x40 [andordrvlx]
[ 1402.461699] RSP: 0018:ffff8803e7de1e98 EFLAGS: 00010282
[ 1402.461729] RAX: 0000000000000000 RBX: 0000000000000000 RCX: ffffffffa04fc428
[ 1402.461767] RDX: ffffffffa04fc3c8 RSI: ffffffffa04fc428 RDI: 0000000000000000
[ 1402.461805] RBP: ffff8803e7de1e98 R08: 0000000000000000 R09: 0000000000000000
[ 1402.461843] R10: ffff8803e7e99510 R11: 0000000000000246 R12: 0000000000000000
[ 1402.461881] R13: ffff8803e55923c0 R14: ffff88040285d2c8 R15: ffff88040285d2c8
[ 1402.461920] FS: 00007fe7d9899740(0000) GS:ffff88041ea00000(0000) knlGS:0000000000000000
[ 1402.461963] CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033
[ 1402.461994] CR2: 0000000000000038 CR3: 00000003e7d1b000 CR4: 00000000001407f0
[ 1402.462032] DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000
[ 1402.462070] DR3: 0000000000000000 DR6: 00000000ffff0ff0 DR7: 0000000000000400
[ 1402.462109] Process image (pid: 2295, threadinfo ffff8803e7de0000, task ffff8804041b1700)
[ 1402.462152] Stack:
[ 1402.462165] ffff8803e7de1eb8 ffffffffa04f8ac4 ffff8803e7e99500 0000000000000008
[ 1402.462213] ffff8803e7de1f08 ffffffff81189e7e ffff8803e7e99510 ffff880404270160
[ 1402.462261] 000000000000a002 ffff8803e7e99500 ffff8803eecc3440 0000000000000000
[ 1402.462309] Call Trace:
[ 1402.462329] [<ffffffffa04f8ac4>] andor_release+0x54/0x90 [andordrvlx]
[ 1402.462370] [<ffffffff81189e7e>] __fput+0xbe/0x240
[ 1402.462400] [<ffffffff8118a025>] fput+0x25/0x30
[ 1402.462428] [<ffffffff81186ca6>] filp_close+0x66/0x90
[ 1402.462458] [<ffffffff81186d6e>] sys_close+0x9e/0x110
[ 1402.462491] [<ffffffff816a7729>] system_call_fastpath+0x16/0x1b
[ 1402.462524] Code: c3 66 0f 1f 84 00 00 00 00 00 55 48 89 e5 0f 1f 44 00 00 48 63 d7 48 69 d2 90 03 00 00 48 8b 82 c8 c3 4f a0 48 81 c2 c8 c3 4f a0 <8b> 40 38 48 8b 12 25 ff ef 00 ff 89 42 38 e8 ec fe ff ff 31 c0
[ 1402.462785] RIP [<ffffffffa04f76f1>] AndorDisableInterrupts+0x21/0x40 [andordrvlx]
[ 1402.462831] RSP <ffff8803e7de1e98>
[ 1402.462851] CR2: 0000000000000038
[ 1402.556994] ---[ end trace 50d359ca26ea68e0 ]---
有人知道可能是什么问题吗?
答案1
这看起来确实像是一个带有树外模块的 BUG:andordrvlx。上述类型的 Oops 意味着我们取消引用了无效指针,从而导致内核 Oops。
[ 1402.460981] IP:[] AndorDisableInterrupts+0x21/0x40 [andordrvlx]
您应该按照(调试内核 OOPS)提交错误报告[https://wiki.ubuntu.com/DebuggingKernelOops]