Messages in this thread | | | Date | Thu, 18 Sep 2008 16:46:27 -0700 (PDT) | Subject | Re: [PATCH] bnx2: Promote vector field in bnx2_irq structure from u16 to unsigned int | From | David Miller <> |
| |
From: "Benjamin Li" <benli@broadcom.com> Date: Wed, 17 Sep 2008 09:04:02 -0700
> The bnx2 driver stores/uses the irq value from the pci_dev internally. > But when it stores the irq value, it has been performing an > integer demotion. Because of the recent changes made to > arch/x86/kernel/io_apic.c, the new method in creating the irq value > (using build_irq_for_pci_dev()) has exposed this bug on x86 systems. > > Because of this demotion when calling request_irq() from > bnx2_request_irq(), the driver would get a return code of -EINVAL. > This is because the kernel could not find the requested irq descriptor. > By storing the irq value properly, the kernel can find the correct > irq descriptor and the bnx2 driver can operate normally. > > Signed-off-by: Benjamin Li <benli@broadcom.com> > Signed-off-by: Michael Chan <mchan@broadcom.com>
Applied to net-2.6, thanks!
| |