bna: off by one in bfa_msgq_rspq_pi_update()
authorDan Carpenter <error27@gmail.com>
Wed, 24 Aug 2011 01:30:28 +0000 (01:30 +0000)
committerDavid S. Miller <davem@davemloft.net>
Fri, 26 Aug 2011 16:55:18 +0000 (12:55 -0400)
The rspq->rsphdlr[] array has BFI_MC_MAX elements, so this test was
off by one.

Signed-off-by: Dan Carpenter <error27@gmail.com>
Acked-by: Rasesh Mody <rmody@brocade.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
drivers/net/ethernet/brocade/bna/bfa_msgq.c

index ed52187827879755e9ac332b8252c8128c4b6f80..dd36427f4752116a2b8fbe0625e98b96e129b343 100644 (file)
@@ -483,7 +483,7 @@ bfa_msgq_rspq_pi_update(struct bfa_msgq_rspq *rspq, struct bfi_mbmsg *mb)
                mc = msghdr->msg_class;
                num_entries = ntohs(msghdr->num_entries);
 
-               if ((mc > BFI_MC_MAX) || (rspq->rsphdlr[mc].cbfn == NULL))
+               if ((mc >= BFI_MC_MAX) || (rspq->rsphdlr[mc].cbfn == NULL))
                        break;
 
                (rspq->rsphdlr[mc].cbfn)(rspq->rsphdlr[mc].cbarg, msghdr);