CVE-2022-50058

Source
https://nvd.nist.gov/vuln/detail/CVE-2022-50058
Import Source
https://storage.googleapis.com/osv-test-cve-osv-conversion/osv-output/CVE-2022-50058.json
JSON Data
https://api.test.osv.dev/v1/vulns/CVE-2022-50058
Downstream
Published
2025-06-18T11:02:06Z
Modified
2025-10-16T04:03:25.787775Z
Summary
vdpa_sim_blk: set number of address spaces and virtqueue groups
Details

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

vdpasimblk: set number of address spaces and virtqueue groups

Commit bda324fd037a ("vdpasim: control virtqueue support") added two new fields (nas, ngroups) to vdpasimdevattr, but we forgot to initialize them for vdpasimblk.

When creating a new vdpasimblk device this causes the kernel to panic in this way:    $ vdpa dev add mgmtdev vdpasimblk name blk0    BUG: kernel NULL pointer dereference, address: 0000000000000030    ...    RIP: 0010:vhostiotlbaddrangectx+0x41/0x220 [vhostiotlb]    ...    Call Trace:     <TASK>     vhostiotlbaddrange+0x11/0x800 [vhostiotlb]     vdpasimmaprange+0x91/0xd0 [vdpasim]     vdpasimalloccoherent+0x56/0x90 [vdpasim]     ...

This happens because vdpasim->iommu[0] is not initialized when dev_attr.nas is 0.

Let's fix this issue by initializing both (nas, ngroups) to 1 for vdpasimblk.

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
bda324fd037a6b0d44da5699574ce741ca161bc4
Fixed
a291c7d289fac2cb13fb2614a9a251afbbd86ce9
Type
GIT
Repo
https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git
Events
Introduced
bda324fd037a6b0d44da5699574ce741ca161bc4
Fixed
19cd4a5471b8eaa4bd161b0fdb4567f2fc88d809

Affected versions

v5.*

v5.19
v5.19-rc1
v5.19-rc2
v5.19-rc3
v5.19-rc4
v5.19-rc5
v5.19-rc6
v5.19-rc7
v5.19-rc8
v5.19.1
v5.19.2
v5.19.3

Linux / Kernel

Package

Name
Kernel

Affected ranges

Type
ECOSYSTEM
Events
Introduced
5.19.0
Fixed
5.19.4