+ bnx2-promote-vector-field-in-bnx2_irq-structure-from-u16-to-unsigned-int.patch added to -mm tree

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



The patch titled
     bnx2: promote vector field in bnx2_irq structure from u16 to unsigned int
has been added to the -mm tree.  Its filename is
     bnx2-promote-vector-field-in-bnx2_irq-structure-from-u16-to-unsigned-int.patch

Before you just go and hit "reply", please:
   a) Consider who else should be cc'ed
   b) Prefer to cc a suitable mailing list as well
   c) Ideally: find the original patch on the mailing list and do a
      reply-to-all to that, adding suitable additional cc's

*** Remember to use Documentation/SubmitChecklist when testing your code ***

See http://userweb.kernel.org/~akpm/added-to-mm.txt to find
out what to do about this

The current -mm tree may be found at http://userweb.kernel.org/~akpm/mmotm/

------------------------------------------------------
Subject: bnx2: promote vector field in bnx2_irq structure from u16 to unsigned int
From: Benjamin Li <benli@xxxxxxxxxxxx>

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@xxxxxxxxxxxx>
Signed-off-by: Michael Chan <mchan@xxxxxxxxxxxx>
Cc: Jeff Garzik <jeff@xxxxxxxxxx>
Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
---

 drivers/net/bnx2.h |    2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff -puN drivers/net/bnx2.h~bnx2-promote-vector-field-in-bnx2_irq-structure-from-u16-to-unsigned-int drivers/net/bnx2.h
--- a/drivers/net/bnx2.h~bnx2-promote-vector-field-in-bnx2_irq-structure-from-u16-to-unsigned-int
+++ a/drivers/net/bnx2.h
@@ -6597,7 +6597,7 @@ struct flash_spec {
 
 struct bnx2_irq {
 	irq_handler_t	handler;
-	u16		vector;
+	unsigned int	vector;
 	u8		requested;
 	char		name[16];
 };
_

Patches currently in -mm which might be from benli@xxxxxxxxxxxx are

bnx2-promote-vector-field-in-bnx2_irq-structure-from-u16-to-unsigned-int.patch

--
To unsubscribe from this list: send the line "unsubscribe mm-commits" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html

[Index of Archives]     [Kernel Newbies FAQ]     [Kernel Archive]     [IETF Annouce]     [DCCP]     [Netdev]     [Networking]     [Security]     [Bugtraq]     [Photo]     [Yosemite]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Linux SCSI]

  Powered by Linux