• Masakazu Mokuno's avatar
    PS3: changed the way to handle tx skbs · 173261ed
    Masakazu Mokuno authored
    The PS3 virtual network device requires a vlan tag in the sending packet
    to select the destination device, ethernet port or wireless.
    As the vlan tag field is in the middle of the passed data,
    we should insert it into the packet data.
    To avoid copying much of the packet data, the driver used two tx descriptors
    for one tx skb; one descriptor was for sending a small static
    buffer which contained vlan tag and copied header (two mac addresses),
    one was for the residual data after the vlan field.
    
    This patch changes the way to insert the vlan tag.  By changing
    netdev->hard_header_len, we can make the headroom for moving mac address
    fields in the skb buffer. Then we can send one tx skb with
    one tx descriptor.  This also gives us a tx throughut gain of approx.
    20% according to netperf results.
    Signed-off-by: default avatarMasakazu Mokuno <mokuno@sm.sony.co.jp>
    CC: Geoff Levand <geoffrey.levand@am.sony.com>
    Signed-off-by: default avatarJeff Garzik <jeff@garzik.org>
    173261ed
ps3_gelic_net.c 40.2 KB