• Alexander Duyck's avatar
    i40e: Drop redundant Rx descriptor processing code · 99dad8b3
    Alexander Duyck authored
    This patch cleans up several pieces of redundant code in the Rx clean-up
    paths.
    
    The first bit is that hdr_addr and the status_err_len portions of the Rx
    descriptor represent the same value.  As such there is no point in setting
    them to 0 before setting them to 0.  I'm dropping the second spot where we
    are updating the value to 0 so that we only have 1 write for this value
    instead of 2.
    
    The second piece is the checking for the DD bit in the packet.  We only
    need to check for a non-zero value for the status_err_len because if the
    device is done with the descriptor it will have written something back and
    the DD is just one piece of it.  In addition I have moved the reading of
    the Rx descriptor bits related to rx_ptype down so that they are actually
    below the dma_rmb() call so that we are guaranteed that we don't have any
    funky 64b on 32b calls causing any ordering issues.
    
    Change-ID: I256e44a025d3c64a7224aaaec37c852bfcb1871b
    Signed-off-by: default avatarAlexander Duyck <alexander.h.duyck@intel.com>
    Tested-by: default avatarAndrew Bowers <andrewx.bowers@intel.com>
    Signed-off-by: default avatarJeff Kirsher <jeffrey.t.kirsher@intel.com>
    99dad8b3
i40e_txrx.c 61.2 KB