• Matthew Iselin's avatar
    e1000: fix RX/TX descriptor alignment. · 1f5dbc2d
    Matthew Iselin authored and Kevin Wolf's avatar Kevin Wolf committed
    
    
    This patch fixes the e1000 driver in VMware (and potentially some real
    hardware as well) by enforcing a 16-byte alignment for transmit and
    receive descriptors. Without this fix, the card automatically aligns the
    addresses on a 16-byte boundary, causing corruption in several data
    structures.
    
    The specification specifically states "The * Descriptor Base Address must
    point to a 16-byte aligned block of data". VMware appears to be far more
    pedantic than QEMU and VirtualBox when using these buffers.
    Signed-off-by: default avatarMatthew Iselin <matthew@theiselins.net>
    Signed-off-by: Kevin Wolf's avatarKevin Wolf <kevin@tyndur.org>
    1f5dbc2d
device.c 15 KB