CVE-2026-46118

Source
https://cve.org/CVERecord?id=CVE-2026-46118
Import Source
https://storage.googleapis.com/cve-osv-conversion/osv-output/CVE-2026-46118.json
JSON Data
https://api.osv.dev/v1/vulns/CVE-2026-46118
Downstream
Related
Published
2026-05-28T09:35:33.635Z
Modified
2026-07-15T01:48:54.010078766Z
Summary
pseries/papr-hvpipe: Fix null ptr deref in papr_hvpipe_dev_create_handle()
Details

In the Linux kernel, the following vulnerability has been resolved:

pseries/papr-hvpipe: Fix null ptr deref in paprhvpipedevcreatehandle()

commit 6d3789d347a7 ("papr-hvpipe: convert paprhvpipedevcreatehandle() to FDPREPARE()"), changed the create handle to FDPREPARE(), but it caused kernel null-ptr-deref because after call to retainandnullptr(srcinfo), src_info is re-used for adding it to the global list.

Getting the following kernel panic in paprhvpipedevcreatehandle() when trying to add srcinfo to the list. Kernel attempted to write user page (0) - exploit attempt? (uid: 0) BUG: Kernel NULL pointer dereference on write at 0x00000000 Faulting instruction address: 0xc0000000001b44a0 Oops: Kernel access of bad area, sig: 11 [#1] ... Call Trace: paprhvpipedevioctl+0x1f4/0x48c (unreliable) sysioctl+0x528/0x1064 systemcallexception+0x128/0x360 systemcallvectoredcommon+0x15c/0x2ec

Now, the error handling with FD_PREPARE's file cleanup and _free(kfree) auto cleanup is getting too convoluted. This is mainly because we need to ensure only 1 user get the srcID handle. To simplify this, we allocate prepare the srcinfo in the beginning and add it to the global list under a spinlock after checking that no duplicates exist.

This simplify the error handling where if the FDADD fails, we can simply remove the srcinfo from the list and consume any pending msg in hvpipe to be cleared, after src_info became visible in the global list.

Database specific
{
    "osv_generated_from": "https://github.com/CVEProject/cvelistV5/tree/main/cves/2026/46xxx/CVE-2026-46118.json",
    "cna_assigner": "Linux"
}
References

Affected packages

Git / git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git

Affected ranges

Type
GIT
Repo
https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git
Events
Introduced
09c15bbbed533903e600660ea09098b3b0524f48
Fixed
735439394dde8462f9b50566727fbe333beaadaf
Type
GIT
Repo
https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git
Events
Introduced
6d3789d347a7af5c4b0b2da3af47b8d9da607ab2
Fixed
cf51bec1560f8bf115d1476f60335f9d90e110b0
Fixed
1b9f7aafa44f5ce852c00509104d10fd9eb0f402
Type
GIT
Repo
https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git
Events
Introduced
6.18.32
Fixed
6.18.33

Affected versions

v6.*
v6.18.32

Database specific

source
"https://storage.googleapis.com/cve-osv-conversion/osv-output/CVE-2026-46118.json"

Linux / Kernel

Package

Name
Kernel

Affected ranges

Type
ECOSYSTEM
Events
Introduced
0Unknown introduced version / All previous versions are affected
Fixed
6.18.33
Type
ECOSYSTEM
Events
Introduced
6.19.0
Fixed
7.0.7

Database specific

source
"https://storage.googleapis.com/cve-osv-conversion/osv-output/CVE-2026-46118.json"