System panic while executing log_entry_set_key function in dsa_filter module codepath

Solution Unverified - Updated -

Issue

  • Kernel panic due to a NULL pointer dereference in the dsa_filter kernel module.

  • Log holds a stack trace similar to the following:

[2522678.952814] BUG: unable to handle kernel NULL pointer dereference at 0000000000000020
[2522678.952883] IP: [<ffffffffc0a5f9fa>] log_entry_set_key+0xa/0x340 [dsa_filter]
[2522678.952956] PGD 800000011578a067 PUD 11500b067 PMD 0 
[2522678.953002] Oops: 0000 [#1] SMP 
[2522678.953032] Modules linked in: tcp_diag udp_diag inet_diag falcon_lsm_serviceable(PE) falcon_nf_netcontain(PE) falcon_kal(E) falcon_lsm_pinned_11711(E) gsch(OE) redirfs(OE) acdc(POE) dsa_filter(POE) falcon_lsm_pinned_11611(E) rpcsec_gss_krb5 nfsv4 dns_resolver nfs lockd grace fscache falcon_lsm_pinned_11312(E) vmw_vsock_vmci_transport vsock sb_edac iosf_mbi kvm_intel kvm irqbypass crc32_pclmul ppdev ghash_clmulni_intel vmw_balloon aesni_intel lrw gf128mul glue_helper ablk_helper cryptd pcspkr joydev sg vmw_vmci parport_pc parport i2c_piix4 auth_rpcgss sunrpc ip_tables xfs libcrc32c sr_mod cdrom ata_generic pata_acpi vmwgfx sd_mod crc_t10dif drm_kms_helper crct10dif_generic ata_piix syscopyarea sysfillrect sysimgblt fb_sys_fops ttm libata crct10dif_pclmul crct10dif_common crc32c_intel drm serio_raw
[2522678.953751]  nfit vmxnet3 libnvdimm vmw_pvscsi drm_panel_orientation_quirks dm_mirror dm_region_hash dm_log dm_mod fuse [last unloaded: falcon_kal]
[2522678.953884] CPU: 2 PID: 11985 Comm: dsp.fwdpi.servi Kdump: loaded Tainted: P           OEL ------------   3.10.0-1160.24.1.el7.x86_64 #1
[2522678.953966] Hardware name: VMware, Inc. VMware Virtual Platform/440BX Desktop Reference Platform, BIOS 6.00 12/12/2018
[2522678.954039] task: ffff9e1ab7ff2100 ti: ffff9e1a46d44000 task.ti: ffff9e1a46d44000
[2522678.954091] RIP: 0010:[<ffffffffc0a5f9fa>]  [<ffffffffc0a5f9fa>] log_entry_set_key+0xa/0x340 [dsa_filter]
[2522678.954187] RSP: 0018:ffff9e1a46d474e0  EFLAGS: 00010246
[2522678.954237] RAX: 0000000000000000 RBX: ffff9e1a46d47db0 RCX: 0000000000010000
[2522678.954287] RDX: ffff9e1a46d47db0 RSI: 000000000000001d RDI: ffff9e1a46d47db0
[2522678.954337] RBP: ffff9e1a46d474e8 R08: 0000000000010000 R09: ffff9e1a46d47eac
[2522678.954396] R10: 00000000c8d5c401 R11: ffff9e1bc8d5c330 R12: ffff9e19fae86de0
[2522678.954496] R13: ffff9e1a46d47eac R14: 0000000000000008 R15: 000000000000001d
[2522678.954548] FS:  00007f9b9673c700(0000) GS:ffff9e1d7fd00000(0000) knlGS:0000000000000000
[2522678.954604] CS:  0010 DS: 0000 ES: 0000 CR0: 0000000080050033
[2522678.954645] CR2: 0000000000000020 CR3: 00000002b1978000 CR4: 00000000003607e0
[2522678.954771] Call Trace:
[2522678.954807]  [<ffffffffc0a5fef7>] get_logs_from_tree+0xf7/0x2e0 [dsa_filter]
[2522678.954865]  [<ffffffffc0a5fea4>] get_logs_from_tree+0xa4/0x2e0 [dsa_filter]
[2522678.954922]  [<ffffffffc0a5fea4>] get_logs_from_tree+0xa4/0x2e0 [dsa_filter]
[2522678.954978]  [<ffffffffc0a5fea4>] get_logs_from_tree+0xa4/0x2e0 [dsa_filter]
[2522678.955035]  [<ffffffffc0a5fea4>] get_logs_from_tree+0xa4/0x2e0 [dsa_filter]
[2522678.955091]  [<ffffffffc0a5fea4>] get_logs_from_tree+0xa4/0x2e0 [dsa_filter]
[2522678.955148]  [<ffffffffc0a5fea4>] get_logs_from_tree+0xa4/0x2e0 [dsa_filter]
[2522678.955204]  [<ffffffffc0a5fea4>] get_logs_from_tree+0xa4/0x2e0 [dsa_filter]
[2522678.955260]  [<ffffffffc0a5fea4>] get_logs_from_tree+0xa4/0x2e0 [dsa_filter]
[2522678.957014]  [<ffffffffc0a5fea4>] get_logs_from_tree+0xa4/0x2e0 [dsa_filter]
[2522678.958520]  [<ffffffffc0a5fea4>] get_logs_from_tree+0xa4/0x2e0 [dsa_filter]
[2522678.959328]  [<ffffffffc0a5fea4>] get_logs_from_tree+0xa4/0x2e0 [dsa_filter]
[2522678.960144]  [<ffffffff878bb8b1>] ? iomap_file_buffered_write+0xa1/0xe0
[2522678.960959]  [<ffffffffc05b13c4>] ? xfs_iunlock+0xe4/0x120 [xfs]
[2522678.961746]  [<ffffffffc0a5fea4>] get_logs_from_tree+0xa4/0x2e0 [dsa_filter]
[2522678.962545]  [<ffffffffc08db55f>] ? redirfs_get_filename+0x4ff/0x520 [redirfs]
[2522678.963358]  [<ffffffffc0a5fea4>] get_logs_from_tree+0xa4/0x2e0 [dsa_filter]
[2522678.964164]  [<ffffffffc0a5fea4>] get_logs_from_tree+0xa4/0x2e0 [dsa_filter]
[2522678.964962]  [<ffffffff876e12ae>] ? account_entity_dequeue+0xae/0xd0
[2522678.965769]  [<ffffffff876e61d1>] ? put_prev_entity+0x31/0x400
[2522678.966586]  [<ffffffffc0a5fea4>] get_logs_from_tree+0xa4/0x2e0 [dsa_filter]
[2522678.967391]  [<ffffffff8762b621>] ? __switch_to+0x151/0x580
[2522678.968225]  [<ffffffffc0a62fcc>] tb_log_get+0x75c/0x930 [dsa_filter]
[2522678.969031]  [<ffffffffc0abdf73>] dsa_lin_read+0x53/0xd0 [dsa_filter]
[2522678.969813]  [<ffffffff8784dc6f>] vfs_read+0x9f/0x170
[2522678.970584]  [<ffffffff8784eaef>] SyS_read+0x7f/0xf0
[2522678.971382]  [<ffffffff87d95f92>] system_call_fastpath+0x25/0x2a
[2522678.972142] Code: 00 e8 8b 6e 00 00 e8 66 36 06 00 48 c7 c0 80 17 ae c0 5d c3 66 2e 0f 1f 84 00 00 00 00 00 0f 1f 00 e8 6b a0 33 c7 55 48 89 e5 53 <80> 7e 03 11 48 89 f3 0f 87 99 02 00 00 0f b6 46 03 48 8b 04 c5 
[2522678.973784] RIP  [<ffffffffc0a5f9fa>] log_entry_set_key+0xa/0x340 [dsa_filter]
[2522678.974570]  RSP <ffff9e1a46d474e0>
[2522678.975294] CR2: 0000000000000020

Environment

  • Red Hat Enterprise Linux 7
  • Red Hat Enterprise Linux 8

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