aboutsummaryrefslogtreecommitdiff
path: root/sys/net/if_lagg.h
Commit message (Collapse)AuthorAgeFilesLines
* Copy releng/7.3 to release/7.3.0 to mark 7.3-RELEASE.release/7.3.0_cvsKen Smith2010-03-211-1/+1
| | | | | | Approved by: re (implicit) This commit was manufactured to restore the state of the 7.3-RELEASE image.
* MFC if_lagg.c r1.20, if_lagg.h r1.11Andrew Thompson2007-10-181-0/+1
| | | | | | | | | | | | | | | | | | Fix two panics in lagg. 1. The locking was changed to shared but roundrobin mode still updated a pointer in the softc with the next tx interface to use. This will panic under high load. Change this to an atomically incremented sequence number in order to choose the tx port in round robin. 2. IFQ_HANDOFF will free the mbuf if the queue is full, this will then be freed again by lagg_start() and panic. Reorganised the error handling and freeing to fix this. Approved by: re (kensmith) Notes: svn path=/stable/7/; revision=172732
* - Propagate the largest set of interface capabilities supported by all laggAndrew Thompson2007-07-301-1/+0
| | | | | | | | | | | | | | ports to the lagg interface. - Use the MTU from the first interface as the lagg MTU, all extra interfaces must be the same. This fixes using a lagg interface for a vlan or enabling jumbo frames, etc. Approved by: re (kensmith) MFC After: 3 days Notes: svn path=/head/; revision=171661
* Allow the LACP state to be queried from userland which at the moment is theAndrew Thompson2007-07-051-0/+28
| | | | | | | | | | actor and partner peer info. Print out the active aggregator and per port data in verbose mode from ifconfig. Approved by: re (mux) Notes: svn path=/head/; revision=171247
* non-functional cleanupAndrew Thompson2007-06-121-41/+37
| | | | | | | | | | - remove dead code - use consistent variable names - gc unused defines - whitespace cleanup Notes: svn path=/head/; revision=170599
* Change from a mutex to a read/write lock. This allows the tx port to beAndrew Thompson2007-05-151-8/+9
| | | | | | | | selected simultaneously by multiple senders and transmit/receive is not serialised between aggregated interfaces. Notes: svn path=/head/; revision=169569
* Call if_setlladdr() on the aggregation port from a taskqueue so the softc lockAndrew Thompson2007-05-071-0/+11
| | | | | | | | is not held. The short delay between aggregating the port and setting the MAC address is fine. Notes: svn path=/head/; revision=169329
* Avoid touching various unsafe parts if the interface is disappearing.Andrew Thompson2007-05-071-0/+1
| | | | Notes: svn path=/head/; revision=169328
* Change from using if_delmulti() to if_delmulti_ifma() as it simplifies the codeAndrew Thompson2007-05-071-8/+4
| | | | | | | | | and is safe to use if the ifp has disappeared. Suggested by: bms Notes: svn path=/head/; revision=169327
* Fix flag descriptions.Andrew Thompson2007-05-031-2/+2
| | | | Notes: svn path=/head/; revision=169228
* - Add a disabled state for ports that can not be aggregatedAndrew Thompson2007-05-031-1/+2
| | | | | | | - Refine check for lacp links, set to disabled if not suitable Notes: svn path=/head/; revision=169227
* Rename the trunk(4) driver to lagg(4) as it is too similar to vlan trunking.Andrew Thompson2007-04-171-0/+209
The name trunk is misused as the networking term trunk means carrying multiple VLANs over a single connection. The IEEE standard for link aggregation (802.3 section 3) does not talk about 'trunk' at all while it is used throughout IEEE 802.1Q in describing vlans. The lagg(4) driver provides link aggregation, failover and fault tolerance. Discussed on: current@ Notes: svn path=/head/; revision=168793