1. 27 1月, 2009 1 次提交
  2. 09 1月, 2009 1 次提交
  3. 07 1月, 2009 1 次提交
    • H
      vlan: Add GRO interfaces · e1c096e2
      Herbert Xu 提交于
      This patch adds GRO interfaces for hardware-assisted VLAN reception.
      With this in place we're now at parity with LRO as far as the
      interface is concerned.  That is, you can now take any LRO driver
      and convert it over to GRO.
      
      As the CB memory clashes with GRO's use of CB, I've removed it
      entirely by storing dev in skb->dev.  This is OK because VLAN
      gets called first thing in netif_receive_skb and skb->dev is
      not used in between us calling netif_rx and netif_receive_skb
      getting called.
      Signed-off-by: NHerbert Xu <herbert@gondor.apana.org.au>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      e1c096e2
  4. 26 12月, 2008 1 次提交
  5. 20 11月, 2008 1 次提交
  6. 11 11月, 2008 1 次提交
  7. 05 11月, 2008 1 次提交
    • P
      net: fix packet socket delivery in rx irq handler · 9b22ea56
      Patrick McHardy 提交于
      The changes to deliver hardware accelerated VLAN packets to packet
      sockets (commit bc1d0411) caused a warning for non-NAPI drivers.
      The __vlan_hwaccel_rx() function is called directly from the drivers
      RX function, for non-NAPI drivers that means its still in RX IRQ
      context:
      
      [   27.779463] ------------[ cut here ]------------
      [   27.779509] WARNING: at kernel/softirq.c:136 local_bh_enable+0x37/0x81()
      ...
      [   27.782520]  [<c0264755>] netif_nit_deliver+0x5b/0x75
      [   27.782590]  [<c02bba83>] __vlan_hwaccel_rx+0x79/0x162
      [   27.782664]  [<f8851c1d>] atl1_intr+0x9a9/0xa7c [atl1]
      [   27.782738]  [<c0155b17>] handle_IRQ_event+0x23/0x51
      [   27.782808]  [<c015692e>] handle_edge_irq+0xc2/0x102
      [   27.782878]  [<c0105fd5>] do_IRQ+0x4d/0x64
      
      Split hardware accelerated VLAN reception into two parts to fix this:
      
      - __vlan_hwaccel_rx just stores the VLAN TCI and performs the VLAN
        device lookup, then calls netif_receive_skb()/netif_rx()
      
      - vlan_hwaccel_do_receive(), which is invoked by netif_receive_skb()
        in softirq context, performs the real reception and delivery to
        packet sockets.
      Reported-and-tested-by: NRamon Casellas <ramon.casellas@cttc.es>
      Signed-off-by: NPatrick McHardy <kaber@trash.net>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      9b22ea56
  8. 04 11月, 2008 1 次提交
  9. 29 10月, 2008 1 次提交
  10. 21 9月, 2008 1 次提交
  11. 12 9月, 2008 1 次提交
  12. 23 7月, 2008 1 次提交
  13. 18 7月, 2008 1 次提交
    • D
      netdev: Allocate multiple queues for TX. · e8a0464c
      David S. Miller 提交于
      alloc_netdev_mq() now allocates an array of netdev_queue
      structures for TX, based upon the queue_count argument.
      
      Furthermore, all accesses to the TX queues are now vectored
      through the netdev_get_tx_queue() and netdev_for_each_tx_queue()
      interfaces.  This makes it easy to grep the tree for all
      things that want to get to a TX queue of a net device.
      
      Problem spots which are not really multiqueue aware yet, and
      only work with one queue, can easily be spotted by grepping
      for all netdev_get_tx_queue() calls that pass in a zero index.
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      e8a0464c
  14. 15 7月, 2008 6 次提交
  15. 09 7月, 2008 2 次提交
  16. 08 7月, 2008 6 次提交
  17. 06 7月, 2008 3 次提交
  18. 23 5月, 2008 1 次提交
  19. 21 5月, 2008 2 次提交
  20. 19 5月, 2008 1 次提交
  21. 02 5月, 2008 1 次提交
  22. 16 4月, 2008 5 次提交