[PATCH] x86: Reserve FIRST_DEVICE_VECTOR in used_vectors bitmap

From: Stefan Bader
Date: Fri Oct 10 2008 - 16:02:19 EST


Affected: 2.6.24-2.6.27

Someone from the community found out, that after repeatedly unloading and
loading a device driver that uses MSI IRQs, the system eventually assigned
the vector initially reserved for IRQ0 to the device driver.

The reason for this is, that although IRQ0 is tied to the FIRST_DEVICE_VECTOR
when declaring the irq_vector table, the corresponding bit in the used_vectors
map is not set. So, if vectors are released and assigned often enough, the
vector will get assigned to another interrupt. This happens more often with
MSI interrupts as those are exclusively using a vector.

Fix this by setting the bit for the FIRST_DEVICE_VECTOR in the bitmap.

Signed-off-by: Stefan Bader <stefan.bader@xxxxxxxxxxxxx>
--

When all other means of communication fail, try words!


Attachment: 0001-x86-Reserve-FIRST_DEVICE_VECTOR-in-used_vectors-bit.patch
Description: application/mbox