aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorEilon Greenstein <eilong@broadcom.com>2009-03-09 00:52:14 +0000
committerDavid S. Miller <davem@davemloft.net>2009-03-10 04:52:01 -0700
commit916c775ff297dc60219a4f0e5527ba6ab4a88ed4 (patch)
tree42dd79132bf1e2891641cff65bbbf285288abdfb
parentp54: fix race condition in memory management (diff)
downloadlinux-dev-916c775ff297dc60219a4f0e5527ba6ab4a88ed4.tar.xz
linux-dev-916c775ff297dc60219a4f0e5527ba6ab4a88ed4.zip
bnx2x: Adding restriction on sge_buf_size
sge_buff_size may not be more than 0xffff. Reported-by: Bjorn Helgaas <bjorn.helgaas@hp.com> Signed-off-by: Vladislav Zolotarov <vladz@broadcom.com> Tested-by: Bjorn Helgaas <bjorn.helgaas@hp.com> Signed-off-by: Eilon Greenstein <eilong@broadcom.com> Signed-off-by: David S. Miller <davem@davemloft.net>
-rw-r--r--drivers/net/bnx2x_main.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/drivers/net/bnx2x_main.c b/drivers/net/bnx2x_main.c
index d3e7775a9ccf..48127f11d033 100644
--- a/drivers/net/bnx2x_main.c
+++ b/drivers/net/bnx2x_main.c
@@ -4518,7 +4518,8 @@ static void bnx2x_init_context(struct bnx2x *bp)
(USTORM_ETH_ST_CONTEXT_CONFIG_ENABLE_TPA |
USTORM_ETH_ST_CONTEXT_CONFIG_ENABLE_SGE_RING);
context->ustorm_st_context.common.sge_buff_size =
- (u16)(BCM_PAGE_SIZE*PAGES_PER_SGE);
+ (u16)min((u32)SGE_PAGE_SIZE*PAGES_PER_SGE,
+ (u32)0xffff);
context->ustorm_st_context.common.sge_page_base_hi =
U64_HI(fp->rx_sge_mapping);
context->ustorm_st_context.common.sge_page_base_lo =