In the Linux kernel, the following vulnerability has been resolved:
Drivers: hv: vmbus: Fix initialization of device object in vmbusdeviceregister()
Initialize the device's dma{mask,parms} pointers and the device's dmamask value before invoking device_register(). Address the following trace with 5.17-rc7:
[ 49.646839] WARNING: CPU: 0 PID: 189 at include/linux/dma-mapping.h:543 netvscprobe+0x37a/0x3a0 [hvnetvsc] [ 49.646928] Call Trace: [ 49.646930] <TASK> [ 49.646935] vmbusprobe+0x40/0x60 [hvvmbus] [ 49.646942] reallyprobe+0x1ce/0x3b0 [ 49.646948] _driverprobedevice+0x109/0x180 [ 49.646952] driverprobedevice+0x23/0xa0 [ 49.646955] _deviceattachdriver+0x76/0xe0 [ 49.646958] ? driverallowsasyncprobing+0x50/0x50 [ 49.646961] busforeachdrv+0x84/0xd0 [ 49.646964] _deviceattach+0xed/0x170 [ 49.646967] deviceinitialprobe+0x13/0x20 [ 49.646970] busprobedevice+0x8f/0xa0 [ 49.646973] deviceadd+0x41a/0x8e0 [ 49.646975] ? hrtimerinit+0x28/0x80 [ 49.646981] deviceregister+0x1b/0x20 [ 49.646983] vmbusdeviceregister+0x5e/0xf0 [hvvmbus] [ 49.646991] vmbusaddchannelwork+0x12d/0x190 [hvvmbus] [ 49.646999] processonework+0x21d/0x3f0 [ 49.647002] workerthread+0x4a/0x3b0 [ 49.647005] ? processonework+0x3f0/0x3f0 [ 49.647007] kthread+0xff/0x130 [ 49.647011] ? kthreadcompleteandexit+0x20/0x20 [ 49.647015] retfrom_fork+0x22/0x30 [ 49.647020] </TASK> [ 49.647021] ---[ end trace 0000000000000000 ]---
[
{
"deprecated": false,
"signature_version": "v1",
"digest": {
"function_hash": "261577810733189301401264432619358585872",
"length": 1037.0
},
"target": {
"function": "vmbus_device_register",
"file": "drivers/hv/vmbus_drv.c"
},
"id": "CVE-2022-49099-079b0cec",
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@2fe4b8631427618175a32f125062df91a5fe3f73",
"signature_type": "Function"
},
{
"deprecated": false,
"signature_version": "v1",
"digest": {
"function_hash": "261577810733189301401264432619358585872",
"length": 1037.0
},
"target": {
"function": "vmbus_device_register",
"file": "drivers/hv/vmbus_drv.c"
},
"id": "CVE-2022-49099-37b34e71",
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@3a5469582c241abca22500f36a9cb8e9331969cf",
"signature_type": "Function"
},
{
"deprecated": false,
"signature_version": "v1",
"digest": {
"threshold": 0.9,
"line_hashes": [
"293339556136865592677239895572776027149",
"312560126995432418923398963868571435127",
"25502968565924455014656440617338888631",
"280761334533928278631947952887025282402",
"244554659909473380528436881797218871324",
"177440655453247686767502596962254650685",
"142587895566256793913221953721804103313",
"156790452251976557788718474388261205846",
"327201766486574363139829305821016153236"
]
},
"target": {
"file": "drivers/hv/vmbus_drv.c"
},
"id": "CVE-2022-49099-3c3b2d77",
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@3a5469582c241abca22500f36a9cb8e9331969cf",
"signature_type": "Line"
},
{
"deprecated": false,
"signature_version": "v1",
"digest": {
"threshold": 0.9,
"line_hashes": [
"293339556136865592677239895572776027149",
"312560126995432418923398963868571435127",
"25502968565924455014656440617338888631",
"280761334533928278631947952887025282402",
"244554659909473380528436881797218871324",
"177440655453247686767502596962254650685",
"142587895566256793913221953721804103313",
"156790452251976557788718474388261205846",
"327201766486574363139829305821016153236"
]
},
"target": {
"file": "drivers/hv/vmbus_drv.c"
},
"id": "CVE-2022-49099-4fcf5055",
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@2fe4b8631427618175a32f125062df91a5fe3f73",
"signature_type": "Line"
}
]