1. 16 Nov, 2009 12 commits
  2. 15 Nov, 2009 1 commit
  3. 14 Nov, 2009 25 commits
  4. 13 Nov, 2009 2 commits
    • Patrick McHardy's avatar
      vlan/macvlan: propagate transmission state to upper layers · cbbef5e1
      Patrick McHardy authored
      Both vlan and macvlan devices usually don't use a qdisc and immediately
      queue packets to the underlying device. Propagate transmission state of
      the underlying device to the upper layers so they can react on congestion
      and/or inform the sending process.
      Signed-off-by: default avatarPatrick McHardy <kaber@trash.net>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      cbbef5e1
    • Patrick McHardy's avatar
      net: allow to propagate errors through ->ndo_hard_start_xmit() · 572a9d7b
      Patrick McHardy authored
      Currently the ->ndo_hard_start_xmit() callbacks are only permitted to return
      one of the NETDEV_TX codes. This prevents any kind of error propagation for
      virtual devices, like queue congestion of the underlying device in case of
      layered devices, or unreachability in case of tunnels.
      
      This patches changes the NET_XMIT codes to avoid clashes with the NETDEV_TX
      codes and changes the two callers of dev_hard_start_xmit() to expect either
      errno codes, NET_XMIT codes or NETDEV_TX codes as return value.
      
      In case of qdisc_restart(), all non NETDEV_TX codes are mapped to NETDEV_TX_OK
      since no error propagation is possible when using qdiscs. In case of
      dev_queue_xmit(), the error is propagated upwards.
      Signed-off-by: default avatarPatrick McHardy <kaber@trash.net>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      572a9d7b