Kernel panic due to page fault in _raw_spin_lock_irqsave() called by vdd_ring_doorbell() from third-party kernel module veloce_driver

Solution Verified - Updated -

Issue

  • The kernel experiences panic that is triggered by the veloce_driver kernel module.
  • Kernel panics with following messages:
[4847971.469735] BUG: unable to handle kernel 
[4847971.470627] paging request at ffffffffa37ff8e6
[4847971.471471] IP: [<ffffffffa3dba7a2>] _raw_spin_lock_irqsave+0x22/0x40
[4847971.472307] PGD 15d6614067 PUD 15d6615063 PMD 15d5a000e1 
[4847971.473149] Oops: 0003 [#1] SMP 
[4847971.473990] Modules linked in: tcp_diag inet_diag ses enclosure nfsv3 nfs_acl nfs lockd grace fscache v
eloce_driver(OE) raid_class scsi_transport_sas sunrpc ext4 mbcache jbd2 dell_smbios iTCO_wdt iTCO_vendor_sup
port dell_wmi_descriptor dcdbas vfat fat i10nm_edac nfit libnvdimm intel_powerclamp coretemp intel_rapl iosf
_mbi kvm_intel kvm irqbypass crc32_pclmul ghash_clmulni_intel aesni_intel lrw gf128mul glue_helper ablk_help
er cryptd pcspkr sg i2c_i801 mei_me mei wmi ipmi_si ipmi_devintf ipmi_msghandler pinctrl_lewisburg pinctrl_i
ntel tpm_crb acpi_power_meter acpi_pad binfmt_misc ip_tables xfs libcrc32c sd_mod crc_t10dif crct10dif_gener
ic mgag200 i2c_algo_bit drm_kms_helper i40e syscopyarea sysfillrect crct10dif_pclmul sysimgblt crct10dif_com
mon fb_sys_fops ttm crc32c_intel megaraid_sas ahci drm tg3
[4847971.479195]  libahci libata ptp pps_core drm_panel_orientation_quirks dm_mirror dm_region_hash dm_log d
m_mod
[4847971.480918] CPU: 6 PID: 16942 Comm: testbench.veloc Kdump: loaded Tainted: G        W  OE  ------------
   3.10.0-1160.119.1.el7.x86_64 #1
[4847971.482638] Hardware name: Dell Inc. PowerEdge R750/0V3GRK, BIOS 1.11.2 08/10/2023
[4847971.483496] task: ffff94d52f32e300 ti: ffff94ca0a5f0000 task.ti: ffff94ca0a5f0000
[4847971.484343] RIP: 0010:[<ffffffffa3dba7a2>]  [<ffffffffa3dba7a2>] _raw_spin_lock_irqsave+0x22/0x40
[4847971.485203] RSP: 0018:ffff94ca0a5f3d80  EFLAGS: 00010046
[4847971.486046] RAX: 0000000000000000 RBX: 0000000000000292 RCX: ffff94d53cbfe410
[4847971.486885] RDX: 0000000000000001 RSI: 0000000000000000 RDI: ffffffffa37ff8e6
[4847971.487707] RBP: ffff94ca0a5f3d88 R08: ffff94d53cbfe410 R09: ffff9474e8c2e138
[4847971.488518] R10: 0000000000000003 R11: 0000000000000246 R12: 0000000000000100
[4847971.489322] R13: 000000000000801e R14: 0000000000006b1b R15: 00007f0c715d6410
[4847971.490121] FS:  00007f0c86041940(0000) GS:ffff9475400c0000(0000) knlGS:0000000000000000
[4847971.490917] CS:  0010 DS: 0000 ES: 0000 CR0: 0000000080050033
[4847971.491699] CR2: ffffffffa37ff8e6 CR3: 000000b66a52a000 CR4: 0000000000760fe0
[4847971.492474] DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000
[4847971.493235] DR3: 0000000000000000 DR6: 00000000fffe0ff0 DR7: 0000000000000400
[4847971.493983] PKRU: 55555554
[4847971.494722] Call Trace:
[4847971.495452]  [<ffffffffc16c0a16>] vdd_ring_doorbell+0x66/0x290 [veloce_driver]
[4847971.496179]  [<ffffffffa37ff8be>] ? do_numa_page+0x1be/0x260
[4847971.496894]  [<ffffffffc16b300e>] vdd_fops_ioctl+0x62e/0x1620 [veloce_driver]
[4847971.497595]  [<ffffffffa3802293>] ? handle_mm_fault+0xaf3/0x1190
[4847971.498287]  [<ffffffffa385b2b3>] ? do_sync_write+0x93/0xe0
[4847971.498971]  [<ffffffffa38719d8>] do_vfs_ioctl+0x3a8/0x5c0
[4847971.499645]  [<ffffffffa3dbf7f8>] ? __do_page_fault+0x238/0x510
[4847971.500304]  [<ffffffffa3871c71>] SyS_ioctl+0x81/0xa0
[4847971.500950]  [<ffffffffa3dc539a>] system_call_fastpath+0x25/0x2a
[4847971.501582] Code: 5d c3 cc cc cc cc 0f 1f 00 0f 1f 44 00 00 55 48 89 e5 53 9c 58 0f 1f 44 00 00 48 89 c3 fa 66 0f 1f 44 00 00 31 c0 ba 01 00 00 00 <f0> 0f b1 17 85 c0 75 0a 48 89 d8 5b 5d c3 cc cc cc cc 89 c6 e8 
[4847971.502889] RIP  [<ffffffffa3dba7a2>] _raw_spin_lock_irqsave+0x22/0x40
[4847971.503514]  RSP <ffff94ca0a5f3d80>
[4847971.504118] CR2: ffffffffa37ff8e6

Environment

  • Red Hat Enterprise Linux 7.9
  • Third-party kernel module veloce_driver

Subscriber exclusive content

A Red Hat subscription provides unlimited access to our knowledgebase, tools, and much more.

Current Customers and Partners

Log in for full access

Log In

New to Red Hat?

Learn more about Red Hat subscriptions

Using a Red Hat product through a public cloud?

How to access this content