• Michael Chan's avatar
    [TG3]: Fix 4GB boundary tx handling · c58ec932
    Michael Chan authored
    Fix and simplify the workaround code for the 4GB boundary tx buffer
    hardware bug.
    
    1. Need to unmap the original SKB's dma addresses if a new SKB cannot
       be allocated.
    
    2. Need to pass the base flag to tigon3_4gb_hwbug_workaround() or TSO
       won't work properly.
    
    3. The guilty entry and length parameters for
       tigon3_4gb_hwbug_workaround() are removed as they are not necessary.
    
    4. Remove assumption that only one fragment can hit the 4GB boundary.
       Another fragment can hit 8GB for example.
    Signed-off-by: default avatarMichael Chan <mchan@broadcom.com>
    Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
    c58ec932
tg3.c 308 KB