10 Aug, 2011

1 commit

  • This ensures the neighbor entries associated with the bridge
    dev are flushed, also invalidating the associated cached L2 headers.

    This means we br_add_if/br_del_if ports to implement hand-over and
    not wind up with bridge packets going out with stale MAC.

    This means we can also change MAC of port device and also not wind
    up with bridge packets going out with stale MAC.

    This builds on Stephen Hemminger's patch, also handling the br_del_if
    case and the port MAC change case.

    Cc: Stephen Hemminger
    Signed-off-by: Andrei Warkentin
    Acked-by: Stephen Hemminger
    Signed-off-by: David S. Miller

    Andrei Warkentin
     

29 Apr, 2011

1 commit


18 Apr, 2011

1 commit


05 Apr, 2011

1 commit

  • Add netlink device ops to allow creating bridge device via netlink.
    This works in a manner similar to vlan, macvlan and bonding.

    Example:
    # ip link add link dev br0 type bridge
    # ip link del dev br0

    The change required rearranging initializtion code to deal with
    being called by create link. Most of the initialization happens
    in br_dev_setup, but allocation of stats is done in ndo_init callback
    to deal with allocation failure. Sysfs setup has to wait until
    after the network device kobject is registered.

    Signed-off-by: Stephen Hemminger
    Signed-off-by: David S. Miller

    stephen hemminger
     

16 Nov, 2010

2 commits


16 Jun, 2010

1 commit


16 May, 2010

1 commit

  • Links for each port are created in sysfs using the device
    name, but this could be changed after being added to the
    bridge.

    As well as being unable to remove interfaces after this
    occurs (because userspace tools don't recognise the new
    name, and the kernel won't recognise the old name), adding
    another interface with the old name to the bridge will
    cause an error trying to create the sysfs link.

    This fixes the problem by listening for NETDEV_CHANGENAME
    notifications and renaming the link.

    https://bugzilla.kernel.org/show_bug.cgi?id=12743

    Signed-off-by: Simon Arlott
    Acked-by: Stephen Hemminger
    Signed-off-by: David S. Miller

    Simon Arlott
     

19 Mar, 2010

1 commit

  • It's not desired for underlaying devices to change type. At the time,
    there is for example possible to have bond with changed type from
    Ethernet to Infiniband as a port of a bridge. This patch fixes this.

    Signed-off-by: Jiri Pirko
    Signed-off-by: Jay Vosburgh
    Signed-off-by: David S. Miller

    Jiri Pirko
     

09 Sep, 2008

1 commit

  • Bridge as netdevice doesn't cross netns boundaries.

    Bridge ports and bridge itself live in same netns.

    Notifiers are fixed.

    netns propagated from userspace socket for setup and teardown.

    Signed-off-by: Alexey Dobriyan
    Acked-by: Stephen Hemminger
    Signed-off-by: David S. Miller

    Alexey Dobriyan
     

20 Jul, 2008

1 commit


12 Jun, 2008

1 commit


26 Mar, 2008

1 commit


11 Oct, 2007

1 commit

  • Every user of the network device notifiers is either a protocol
    stack or a pseudo device. If a protocol stack that does not have
    support for multiple network namespaces receives an event for a
    device that is not in the initial network namespace it quite possibly
    can get confused and do the wrong thing.

    To avoid problems until all of the protocol stacks are converted
    this patch modifies all netdev event handlers to ignore events on
    devices that are not in the initial network namespace.

    As the rest of the code is made network namespace aware these
    checks can be removed.

    Signed-off-by: Eric W. Biederman
    Signed-off-by: David S. Miller

    Eric W. Biederman
     

26 Apr, 2007

1 commit


27 Feb, 2007

1 commit


14 Feb, 2007

1 commit


11 Feb, 2007

1 commit


18 Jun, 2006

1 commit

  • Add basic netlink support to the Ethernet bridge. Including:
    * dump interfaces in bridges
    * monitor link status changes
    * change state of bridge port

    For some demo programs see:
    http://developer.osdl.org/shemminger/prototypes/brnl.tar.gz

    These are to allow building a daemon that does alternative
    implementations of Spanning Tree Protocol.

    Signed-off-by: Stephen Hemminger
    Signed-off-by: David S. Miller

    Stephen Hemminger
     

04 Jan, 2006

1 commit

  • Speed of a interface may not be available until carrier
    is detected in the case of autonegotiation. To get the correct value
    we need to recheck speed after carrier event. But the check needs to
    be done in a context that is similar to normal ethtool interface (can sleep).

    Also, delay check for 1ms to try avoid any carrier bounce transitions.

    Signed-off-by: Stephen Hemminger
    Signed-off-by: David S. Miller

    Stephen Hemminger
     

30 May, 2005

1 commit


17 Apr, 2005

1 commit

  • Initial git repository build. I'm not bothering with the full history,
    even though we have it. We can create a separate "historical" git
    archive of that later if we want to, and in the meantime it's about
    3.2GB when imported into git - space that would just make the early
    git days unnecessarily complicated, when we don't have a lot of good
    infrastructure for it.

    Let it rip!

    Linus Torvalds