• Michael Chan's avatar
    bnxt_en: Limit RX BD pages to be no bigger than 32K. · 2839f28b
    Michael Chan authored
    
    
    The RX BD length field of this device is 16-bit, so the largest buffer
    size is 65535.  For LRO and GRO, we allocate native CPU pages for the
    aggregation ring buffers.  It won't work if the native CPU page size is
    64K or bigger.
    
    We fix this by defining BNXT_RX_PAGE_SIZE to be native CPU page size
    up to 32K.  Replace PAGE_SIZE with BNXT_RX_PAGE_SIZE in all appropriate
    places related to the rx aggregation ring logic.
    
    The next patch will add additional logic to divide the page into 32K
    chunks for aggrgation ring buffers if PAGE_SIZE is bigger than
    BNXT_RX_PAGE_SIZE.
    Signed-off-by: default avatarMichael Chan <michael.chan@broadcom.com>
    Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
    2839f28b
bnxt.c 153 KB