02 Apr, 2012

24 commits


30 Mar, 2012

2 commits

  • When K >= 0xFFFF0000, AND needs the two least significant bytes of K as
    its operand, but EMIT2() gives it the least significant byte of K and
    0x2. EMIT() should be used here to replace EMIT2().

    Signed-off-by: Feiran Zhuang
    Acked-by: Eric Dumazet
    Signed-off-by: David S. Miller

    zhuangfeiran@ict.ac.cn
     
  • When a bonding device is configured with fail_over_mac=active,
    we expect to see the MAC address of the new active slave as the source MAC
    address after failover. But we see that the source MAC address is the MAC
    address of previous active slave.

    Emit NETDEV_CHANGEADDR event when bonding changes its MAC address, in order
    to let arp_netdev_event flush neighbour cache and route cache.

    How to reproduce this bug ?

    -----------hostB----------------
    hostA ----- switch ---|-- eth0--bond0(192.168.100.2/24)|
    (192.168.100.1/24 \--|-- eth1-/ |
    --------------------------------

    1 on hostB,
    modprobe bonding mode=1 miimon=500 fail_over_mac=active downdelay=1000
    num_grat_arp=1
    ifconfig bond0 192.168.100.2/24 up
    ifenslave bond0 eth0
    ifenslave bond0 eth1

    then eth0 is the active slave, and MAC of bond0 is MAC of eth0.

    2 on hostA, ping 192.168.100.2

    3 on hostB,
    tcpdump -i bond0 -p icmp -XXX
    you will see bond0 uses MAC of eth0 as source MAC in icmp reply.

    4 on hostB,
    ifconfig eth0 down
    tcpdump -i bond0 -p icmp -XXX (just keep it running in step 3)
    you will see first bond0 uses MAC of eth1 as source MAC in icmp
    reply, then it will use MAC of eth0 as source MAC.

    Signed-off-by: Weiping Pan
    Signed-off-by: Jay Vosburgh
    Signed-off-by: David S. Miller

    Weiping Pan
     

29 Mar, 2012

5 commits


28 Mar, 2012

9 commits

  • While investigating another bug, I found that the code on the incoming path
    in __netif_receive_skb will only set skb->skb_iif if it is already 0. When
    dev_forward_skb() is used in the case of interfaces like veth, skb_iif may
    already have been set. Making dev_forward_skb() cause the packet to look
    like a newly received packet would seem to the the correct behaviour here,
    as otherwise the wrong incoming interface can be reported for such a packet.

    Signed-off-by: Benjamin LaHaise
    Signed-off-by: David S. Miller

    Benjamin LaHaise
     
  • When using multicast over a local bridge feeding a number of LXC guests
    using veth, the LXC guests are unable to get a response from other guests
    when pinging 224.0.0.1. Multicast packets did not appear to be getting
    delivered to the network namespaces of the guest hosts, and further
    inspection showed that the incoming route was pointing to the loopback
    device of the host, not the guest. This lead to the wrong network namespace
    being picked up by sockets (like ICMP). Fix this by using the correct
    network namespace when creating the inbound route entry.

    Signed-off-by: Benjamin LaHaise
    Signed-off-by: David S. Miller

    Benjamin LaHaise
     
  • While it is desirable to rate limit certain messages, it is not
    desirable to rate limit the incrementing of counters associated
    with those messages.

    Signed-off-by: Rick Jones
    Acked-by: Rusty Russell
    Acked-by: Michael S. Tsirkin
    Signed-off-by: David S. Miller

    Rick Jones
     
  • David S. Miller
     
  • Update the driver version number to better match version of out of tree
    driver that has similar functionality.

    Signed-off-by: Don Skidmore
    Tested-by: Phil Schmitt
    Signed-off-by: Jeff Kirsher

    Don Skidmore
     
  • This was pointed out to me by Xiaojun Zhang on Source Forge.

    CC: Xiaojun Zhang
    Signed-off-by: Don Skidmore
    Tested-by: Phil Schmitt
    Signed-off-by: Jeff Kirsher

    Don Skidmore
     
  • Dan Carpenter noticed that ixgbevf initial default was different than
    the rest. But the problem is broader than that, only one Intel driver (ixgb)
    was doing it almost right.

    The convention for default debug level should be consistent among
    Intel drivers and follow established convention.

    Signed-off-by: Stephen Hemminger
    Tested-by: Aaron Brown
    Signed-off-by: Jeff Kirsher

    stephen hemminger
     
  • Now skb_add_rx_frag() has a truesize parameter, we can fix cdc-phonet to
    properly account truesize of each fragment : a full page.

    Signed-off-by: Eric Dumazet
    Cc: Felipe Balbi
    Cc: Greg Kroah-Hartman
    Cc: Rémi Denis-Courmont
    Acked-by: Rémi Denis-Courmont
    Signed-off-by: David S. Miller

    Eric Dumazet
     
  • Now skb_add_rx_frag() has a truesize parameter, we can fix f_phonet to
    properly account truesize of each fragment : a full page.

    Signed-off-by: Eric Dumazet
    Cc: Felipe Balbi
    Cc: Greg Kroah-Hartman
    Cc: Rémi Denis-Courmont
    Signed-off-by: David S. Miller

    Eric Dumazet