diff options
Diffstat (limited to 'gitlab/issues_text/target_missing/host_missing/accel_missing/2311')
| -rw-r--r-- | gitlab/issues_text/target_missing/host_missing/accel_missing/2311 | 15 |
1 files changed, 15 insertions, 0 deletions
diff --git a/gitlab/issues_text/target_missing/host_missing/accel_missing/2311 b/gitlab/issues_text/target_missing/host_missing/accel_missing/2311 new file mode 100644 index 000000000..5f7512b7d --- /dev/null +++ b/gitlab/issues_text/target_missing/host_missing/accel_missing/2311 @@ -0,0 +1,15 @@ +Possible dereference of NULL +Description of problem: +There is possible dereference of NULL using macro QEMU_LOCK_GUARD(&q->lock) in: +1) /block/nvme.c line [326](https://github.com/qemu/qemu/blob/5da72194df36535d773c8bdc951529ecd5e31707/block/nvme.c#L326) +2) /include/qemu/ratelimit.h line [45](https://github.com/qemu/qemu/blob/5da72194df36535d773c8bdc951529ecd5e31707/include/qemu/ratelimit.h#L45) +3) /include/qemu/ratelimit.h line [88](https://github.com/qemu/qemu/blob/5da72194df36535d773c8bdc951529ecd5e31707/include/qemu/ratelimit.h#L88) + + +The QEMU_MAKE_LOCKABLE(x) macro provides a special case (line [71](https://github.com/qemu/qemu/blob/5da72194df36535d773c8bdc951529ecd5e31707/include/qemu/lockable.h#L71) of the lockable.h) if NULL gets into it. Then the macro will return NULL, which will get to the input of the qemu_lockable_auto_lock() function, then to the qemu_lockable_lock() function, where NULL dereference will occur (line [95](https://github.com/qemu/qemu/blob/5da72194df36535d773c8bdc951529ecd5e31707/include/qemu/lockable.h#L95)). + +It turns out that the NULL case is provided, but not handled properly. I think a NULL check should be added. + +Found by Linux Verification Center (portal.linuxtesting.ru) with SVACE. + +Author A. Burke. |