The bio_map_user_iov and bio_unmap_user functions in block/bio.c in the Linux kernel before 4.13.8 do unbalanced refcounting when a SCSI I/O vector has small consecutive buffers belonging to the same page. The bio_add_pc_page function merges them into one, but the page reference is never dropped. This causes a memory leak and possible system lockup (exploitable against the host OS by a guest OS user, if a SCSI disk is passed through to a virtual machine) due to an out-of-memory condition.
History

No history.

cve-icon MITRE

Status: PUBLISHED

Assigner: redhat

Published: 2017-11-22T18:00:00

Updated: 2024-08-05T18:28:16.645Z

Reserved: 2017-08-01T00:00:00

Link: CVE-2017-12190

cve-icon Vulnrichment

No data.

cve-icon NVD

Status : Modified

Published: 2017-11-22T18:29:00.477

Modified: 2024-11-21T03:09:01.170

Link: CVE-2017-12190

cve-icon Redhat

Severity : Moderate

Publid Date: 2017-09-21T00:00:00Z

Links: CVE-2017-12190 - Bugzilla