blob: 2ea6a76fb32d921a28c09250572cb7e2069e7bee (
plain) (
blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
|
<think>
Okay, let's try to figure out the category for this bug report. The user mentioned that when using QEMU with ivshmem and msi=off, there's a segfault because s->msi_vectors isn't initialized and is accessed as if it were non-zero.
Looking at the provided patch, it seems like the problem occurs in the ivshmem.c file. Specifically, the code tries to access s->msi_vectors[vector].pdev without checking if msi_vectors is properly initialized or not. The error happens when msi is disabled because, in that case, msi_vectors might not be allocated.
The patch modifies the pci_ivshmem_exit function to check if s->msi_vectors exists before freeing it. It also removes a line where pdev was being assigned to s->msi_vectors[vector].pdev, which probably wasn't necessary when msi is off.
So, what's the main issue here? It looks like an uninitialized pointer causing a crash because of improper handling when msi is disabled. This falls under a bug related to device management, specifically with how MSIs are handled in the ivshmem device.
The categories given include things like 'device', 'graphic', etc. Since this involves the ivshmem device and its MSI handling, the most appropriate category seems to be 'device'.
</think>
The issue relates to improper handling of the msi_vectors array in the ivshmem device when MSI is disabled, leading to a segfault due to accessing an uninitialized pointer. This pertains to device-specific behavior and management.
**device**
|