nvmet: fix freeing unallocated p2pmem
Description
In the Linux kernel, the following vulnerability has been resolved:
nvmet: fix freeing unallocated p2pmem
In case p2p device was found but the p2p pool is empty, the nvme target is still trying to free the sgl from the p2p pool instead of the regular sgl pool and causing a crash (BUG() is called). Instead, assign the p2p_dev for the request only if it was allocated from p2p pool.
This is the crash that was caused:
[Sun May 30 19:13:53 2021] ------------[ cut here ]------------ [Sun May 30 19:13:53 2021] kernel BUG at lib/genalloc.c:518! [Sun May 30 19:13:53 2021] invalid opcode: 0000 [#1] SMP PTI ... [Sun May 30 19:13:53 2021] kernel BUG at lib/genalloc.c:518! ... [Sun May 30 19:13:53 2021] RIP: 0010:gen_pool_free_owner+0xa8/0xb0 ... [Sun May 30 19:13:53 2021] Call Trace: [Sun May 30 19:13:53 2021] ------------[ cut here ]------------ [Sun May 30 19:13:53 2021] pci_free_p2pmem+0x2b/0x70 [Sun May 30 19:13:53 2021] pci_p2pmem_free_sgl+0x4f/0x80 [Sun May 30 19:13:53 2021] nvmet_req_free_sgls+0x1e/0x80 [nvmet] [Sun May 30 19:13:53 2021] kernel BUG at lib/genalloc.c:518! [Sun May 30 19:13:53 2021] nvmet_rdma_release_rsp+0x4e/0x1f0 [nvmet_rdma] [Sun May 30 19:13:53 2021] nvmet_rdma_send_done+0x1c/0x60 [nvmet_rdma]
Affected products
44- osv-coords43 versionspkg:rpm/suse/kernel-64kb&distro=SUSE%20Enterprise%20Storage%207.1pkg:rpm/suse/kernel-64kb&distro=SUSE%20Linux%20Enterprise%20High%20Performance%20Computing%2015%20SP3-LTSSpkg:rpm/suse/kernel-64kb&distro=SUSE%20Linux%20Enterprise%20Server%2015%20SP3-LTSSpkg:rpm/suse/kernel-default-base&distro=SUSE%20Enterprise%20Storage%207.1pkg:rpm/suse/kernel-default-base&distro=SUSE%20Linux%20Enterprise%20High%20Performance%20Computing%2015%20SP3-LTSSpkg:rpm/suse/kernel-default-base&distro=SUSE%20Linux%20Enterprise%20Micro%205.1pkg:rpm/suse/kernel-default-base&distro=SUSE%20Linux%20Enterprise%20Micro%205.2pkg:rpm/suse/kernel-default-base&distro=SUSE%20Linux%20Enterprise%20Server%2015%20SP3-LTSSpkg:rpm/suse/kernel-default-base&distro=SUSE%20Linux%20Enterprise%20Server%20for%20SAP%20Applications%2015%20SP3pkg:rpm/suse/kernel-default&distro=SUSE%20Enterprise%20Storage%207.1pkg:rpm/suse/kernel-default&distro=SUSE%20Linux%20Enterprise%20High%20Availability%20Extension%2015%20SP3pkg:rpm/suse/kernel-default&distro=SUSE%20Linux%20Enterprise%20High%20Performance%20Computing%2015%20SP3-LTSSpkg:rpm/suse/kernel-default&distro=SUSE%20Linux%20Enterprise%20Live%20Patching%2015%20SP3pkg:rpm/suse/kernel-default&distro=SUSE%20Linux%20Enterprise%20Micro%205.1pkg:rpm/suse/kernel-default&distro=SUSE%20Linux%20Enterprise%20Micro%205.2pkg:rpm/suse/kernel-default&distro=SUSE%20Linux%20Enterprise%20Server%2015%20SP3-LTSSpkg:rpm/suse/kernel-default&distro=SUSE%20Linux%20Enterprise%20Server%20for%20SAP%20Applications%2015%20SP3pkg:rpm/suse/kernel-docs&distro=SUSE%20Enterprise%20Storage%207.1pkg:rpm/suse/kernel-docs&distro=SUSE%20Linux%20Enterprise%20High%20Performance%20Computing%2015%20SP3-LTSSpkg:rpm/suse/kernel-docs&distro=SUSE%20Linux%20Enterprise%20Server%2015%20SP3-LTSSpkg:rpm/suse/kernel-docs&distro=SUSE%20Linux%20Enterprise%20Server%20for%20SAP%20Applications%2015%20SP3pkg:rpm/suse/kernel-livepatch-SLE15-SP3_Update_43&distro=SUSE%20Linux%20Enterprise%20Live%20Patching%2015%20SP3pkg:rpm/suse/kernel-obs-build&distro=SUSE%20Enterprise%20Storage%207.1pkg:rpm/suse/kernel-obs-build&distro=SUSE%20Linux%20Enterprise%20High%20Performance%20Computing%2015%20SP3-LTSSpkg:rpm/suse/kernel-obs-build&distro=SUSE%20Linux%20Enterprise%20Server%2015%20SP3-LTSSpkg:rpm/suse/kernel-obs-build&distro=SUSE%20Linux%20Enterprise%20Server%20for%20SAP%20Applications%2015%20SP3pkg:rpm/suse/kernel-preempt&distro=SUSE%20Enterprise%20Storage%207.1pkg:rpm/suse/kernel-preempt&distro=SUSE%20Linux%20Enterprise%20High%20Performance%20Computing%2015%20SP3-LTSSpkg:rpm/suse/kernel-preempt&distro=SUSE%20Linux%20Enterprise%20Server%2015%20SP3-LTSSpkg:rpm/suse/kernel-preempt&distro=SUSE%20Linux%20Enterprise%20Server%20for%20SAP%20Applications%2015%20SP3pkg:rpm/suse/kernel-rt&distro=SUSE%20Linux%20Enterprise%20Micro%205.1pkg:rpm/suse/kernel-rt&distro=SUSE%20Linux%20Enterprise%20Micro%205.2pkg:rpm/suse/kernel-source&distro=SUSE%20Enterprise%20Storage%207.1pkg:rpm/suse/kernel-source&distro=SUSE%20Linux%20Enterprise%20High%20Performance%20Computing%2015%20SP3-LTSSpkg:rpm/suse/kernel-source&distro=SUSE%20Linux%20Enterprise%20Server%2015%20SP3-LTSSpkg:rpm/suse/kernel-source&distro=SUSE%20Linux%20Enterprise%20Server%20for%20SAP%20Applications%2015%20SP3pkg:rpm/suse/kernel-source-rt&distro=SUSE%20Linux%20Enterprise%20Micro%205.1pkg:rpm/suse/kernel-source-rt&distro=SUSE%20Linux%20Enterprise%20Micro%205.2pkg:rpm/suse/kernel-syms&distro=SUSE%20Enterprise%20Storage%207.1pkg:rpm/suse/kernel-syms&distro=SUSE%20Linux%20Enterprise%20High%20Performance%20Computing%2015%20SP3-LTSSpkg:rpm/suse/kernel-syms&distro=SUSE%20Linux%20Enterprise%20Server%2015%20SP3-LTSSpkg:rpm/suse/kernel-syms&distro=SUSE%20Linux%20Enterprise%20Server%20for%20SAP%20Applications%2015%20SP3pkg:rpm/suse/kernel-zfcpdump&distro=SUSE%20Linux%20Enterprise%20Server%2015%20SP3-LTSS
< 5.3.18-150300.59.158.1+ 42 more
- (no CPE)range: < 5.3.18-150300.59.158.1
- (no CPE)range: < 5.3.18-150300.59.158.1
- (no CPE)range: < 5.3.18-150300.59.158.1
- (no CPE)range: < 5.3.18-150300.59.158.1.150300.18.92.5
- (no CPE)range: < 5.3.18-150300.59.158.1.150300.18.92.5
- (no CPE)range: < 5.3.18-150300.59.158.1.150300.18.92.5
- (no CPE)range: < 5.3.18-150300.59.158.1.150300.18.92.5
- (no CPE)range: < 5.3.18-150300.59.158.1.150300.18.92.5
- (no CPE)range: < 5.3.18-150300.59.158.1.150300.18.92.5
- (no CPE)range: < 5.3.18-150300.59.158.1
- (no CPE)range: < 5.3.18-150300.59.158.1
- (no CPE)range: < 5.3.18-150300.59.158.1
- (no CPE)range: < 5.3.18-150300.59.158.1
- (no CPE)range: < 5.3.18-150300.59.158.1
- (no CPE)range: < 5.3.18-150300.59.158.1
- (no CPE)range: < 5.3.18-150300.59.158.1
- (no CPE)range: < 5.3.18-150300.59.158.1
- (no CPE)range: < 5.3.18-150300.59.158.1
- (no CPE)range: < 5.3.18-150300.59.158.1
- (no CPE)range: < 5.3.18-150300.59.158.1
- (no CPE)range: < 5.3.18-150300.59.158.1
- (no CPE)range: < 1-150300.7.3.5
- (no CPE)range: < 5.3.18-150300.59.158.1
- (no CPE)range: < 5.3.18-150300.59.158.1
- (no CPE)range: < 5.3.18-150300.59.158.1
- (no CPE)range: < 5.3.18-150300.59.158.1
- (no CPE)range: < 5.3.18-150300.59.158.1
- (no CPE)range: < 5.3.18-150300.59.158.1
- (no CPE)range: < 5.3.18-150300.59.158.1
- (no CPE)range: < 5.3.18-150300.59.158.1
- (no CPE)range: < 5.3.18-150300.166.1
- (no CPE)range: < 5.3.18-150300.166.1
- (no CPE)range: < 5.3.18-150300.59.158.1
- (no CPE)range: < 5.3.18-150300.59.158.1
- (no CPE)range: < 5.3.18-150300.59.158.1
- (no CPE)range: < 5.3.18-150300.59.158.1
- (no CPE)range: < 5.3.18-150300.166.1
- (no CPE)range: < 5.3.18-150300.166.1
- (no CPE)range: < 5.3.18-150300.59.158.1
- (no CPE)range: < 5.3.18-150300.59.158.1
- (no CPE)range: < 5.3.18-150300.59.158.1
- (no CPE)range: < 5.3.18-150300.59.158.1
- (no CPE)range: < 5.3.18-150300.59.158.1
Patches
0No patches discovered yet.
Vulnerability mechanics
AI mechanics synthesis has not run for this CVE yet.
References
3News mentions
0No linked articles in our index yet.