History log of /netbsd-current/sys/net/lagg/if_laggproto.h
Revision (<<< Hide revision tags) (Show revision tags >>>) Date Author Comments
# 1.20 28-Nov-2023 yamaguchi

lagg(4): Fix missing IFNET_LOCK acquirement


# 1.19 22-Nov-2023 yamaguchi

Set the fastest linkspeed in each physical interface to lagg(4)


Revision tags: thorpej-ifq-base thorpej-altq-separation-base netbsd-10-0-RC1 netbsd-10-base bouyer-sunxi-drm-base
# 1.18 26-Jun-2022 riastradh

branches: 1.18.8;
lagg(4): Safely handle misaligned mbufs.

Optimizing for non-strict-alignment architectures -- without falling
afoul of alignment sanitizers or overeager compilers -- is left as an
exercise for the reader.

PR kern/56894


# 1.17 24-May-2022 andvar

fix various typos in comment, documentation and log messages.


# 1.16 04-Apr-2022 yamaguchi

Move input processing of lagg(4) before ether_input
to get rid of dependence.

This implementation is similar with that of bridge(4).


# 1.15 31-Mar-2022 yamaguchi

rename lagg_enqueue to lagg_output

NFC


# 1.14 31-Mar-2022 yamaguchi

Use addlog(4) for putting 2 messages to one line


# 1.13 31-Mar-2022 yamaguchi

Make lagg interface specified "laggproto none" able to up


# 1.12 31-Mar-2022 yamaguchi

added log when ifpromisc is failed


# 1.11 31-Mar-2022 yamaguchi

fix coding style


# 1.10 12-Jan-2022 yamaguchi

Fix to call lacp_linkstate with IFNET_LOCK held

Network stack calls lacp_linkstate through lagg_port_ioctl when
doing "ifconfig up" or "ifconfig down" to an interface that is
a member of lagg(4). And IFNET_LOCK in the member interface
is held while the ioctl.
Therefore, lacp_linkstate is renamed to
lacp_linkstate_ifnet_locked, and always called with IFNET_LOCK
held. It avoids locking agains myself.


# 1.9 19-Oct-2021 yamaguchi

lagg: support l2tp(4) aggregation

- Accept "ifconfig lagg* laggport l2tp*"
- Set promiscuous mode when the added interface is l2tp*
- check IFF_UP in addition to IFF_RUNNING on
SIOCSIFFLAGS to a child interface.


# 1.8 12-Oct-2021 yamaguchi

Set a port interface of lagg(4) in promiscuous mode
when the lagg(4) is in promiscuous mode.


# 1.7 12-Oct-2021 yamaguchi

lagg: update capabilities of ifnet and ethercom

Commonly capabilities of all child interface are configured
to a lagg interface.


# 1.6 30-Sep-2021 yamaguchi

lagg: Register lagg_ifdetach to ether_ifdetach hook


# 1.5 30-Sep-2021 yamaguchi

Make a link-layer address of lagg(4) configurable by ifconfig(8)

lagg(4) uses a configured link-layer (MAC) address instead
of a random MAC address generated on creating.
The configured MAC address is copied to all child interface
and used for a system id of LACP.


# 1.4 30-Sep-2021 yamaguchi

lagg: Register lagg_linkstate_changed to link-state change hook


Revision tags: thorpej-i2c-spi-conf2-base thorpej-futex2-base thorpej-cfargs2-base thorpej-i2c-spi-conf-base cjep_sun2x-base1 cjep_sun2x-base cjep_staticlib_x-base1
# 1.3 24-May-2021 yamaguchi

branches: 1.3.2; 1.3.6;
Added missing copyright and license notice

pointed out by thorpej@n.o., Thanks.


# 1.2 19-May-2021 rillig

if_lagg: fix Clang build

Clang is stricter than GCC when it comes to nonliteral format strings.

sys/net/lagg/if_lagg.c:2372:12: error:
format string is not a string literal [-Werror,-Wformat-nonliteral]


# 1.1 17-May-2021 yamaguchi

Add a new link-aggregation pseudo interface named lagg(4)

- FreeBSD's lagg(4) based implementation
- MP-safe and MP-scalable


# 1.19 22-Nov-2023 yamaguchi

Set the fastest linkspeed in each physical interface to lagg(4)


Revision tags: thorpej-ifq-base thorpej-altq-separation-base netbsd-10-0-RC1 netbsd-10-base bouyer-sunxi-drm-base
# 1.18 26-Jun-2022 riastradh

branches: 1.18.8;
lagg(4): Safely handle misaligned mbufs.

Optimizing for non-strict-alignment architectures -- without falling
afoul of alignment sanitizers or overeager compilers -- is left as an
exercise for the reader.

PR kern/56894


# 1.17 24-May-2022 andvar

fix various typos in comment, documentation and log messages.


# 1.16 04-Apr-2022 yamaguchi

Move input processing of lagg(4) before ether_input
to get rid of dependence.

This implementation is similar with that of bridge(4).


# 1.15 31-Mar-2022 yamaguchi

rename lagg_enqueue to lagg_output

NFC


# 1.14 31-Mar-2022 yamaguchi

Use addlog(4) for putting 2 messages to one line


# 1.13 31-Mar-2022 yamaguchi

Make lagg interface specified "laggproto none" able to up


# 1.12 31-Mar-2022 yamaguchi

added log when ifpromisc is failed


# 1.11 31-Mar-2022 yamaguchi

fix coding style


# 1.10 12-Jan-2022 yamaguchi

Fix to call lacp_linkstate with IFNET_LOCK held

Network stack calls lacp_linkstate through lagg_port_ioctl when
doing "ifconfig up" or "ifconfig down" to an interface that is
a member of lagg(4). And IFNET_LOCK in the member interface
is held while the ioctl.
Therefore, lacp_linkstate is renamed to
lacp_linkstate_ifnet_locked, and always called with IFNET_LOCK
held. It avoids locking agains myself.


# 1.9 19-Oct-2021 yamaguchi

lagg: support l2tp(4) aggregation

- Accept "ifconfig lagg* laggport l2tp*"
- Set promiscuous mode when the added interface is l2tp*
- check IFF_UP in addition to IFF_RUNNING on
SIOCSIFFLAGS to a child interface.


# 1.8 12-Oct-2021 yamaguchi

Set a port interface of lagg(4) in promiscuous mode
when the lagg(4) is in promiscuous mode.


# 1.7 12-Oct-2021 yamaguchi

lagg: update capabilities of ifnet and ethercom

Commonly capabilities of all child interface are configured
to a lagg interface.


# 1.6 30-Sep-2021 yamaguchi

lagg: Register lagg_ifdetach to ether_ifdetach hook


# 1.5 30-Sep-2021 yamaguchi

Make a link-layer address of lagg(4) configurable by ifconfig(8)

lagg(4) uses a configured link-layer (MAC) address instead
of a random MAC address generated on creating.
The configured MAC address is copied to all child interface
and used for a system id of LACP.


# 1.4 30-Sep-2021 yamaguchi

lagg: Register lagg_linkstate_changed to link-state change hook


Revision tags: thorpej-i2c-spi-conf2-base thorpej-futex2-base thorpej-cfargs2-base thorpej-i2c-spi-conf-base cjep_sun2x-base1 cjep_sun2x-base cjep_staticlib_x-base1
# 1.3 24-May-2021 yamaguchi

branches: 1.3.2; 1.3.6;
Added missing copyright and license notice

pointed out by thorpej@n.o., Thanks.


# 1.2 19-May-2021 rillig

if_lagg: fix Clang build

Clang is stricter than GCC when it comes to nonliteral format strings.

sys/net/lagg/if_lagg.c:2372:12: error:
format string is not a string literal [-Werror,-Wformat-nonliteral]


# 1.1 17-May-2021 yamaguchi

Add a new link-aggregation pseudo interface named lagg(4)

- FreeBSD's lagg(4) based implementation
- MP-safe and MP-scalable


# 1.18 26-Jun-2022 riastradh

lagg(4): Safely handle misaligned mbufs.

Optimizing for non-strict-alignment architectures -- without falling
afoul of alignment sanitizers or overeager compilers -- is left as an
exercise for the reader.

PR kern/56894


# 1.17 24-May-2022 andvar

fix various typos in comment, documentation and log messages.


# 1.16 04-Apr-2022 yamaguchi

Move input processing of lagg(4) before ether_input
to get rid of dependence.

This implementation is similar with that of bridge(4).


# 1.15 31-Mar-2022 yamaguchi

rename lagg_enqueue to lagg_output

NFC


# 1.14 31-Mar-2022 yamaguchi

Use addlog(4) for putting 2 messages to one line


# 1.13 31-Mar-2022 yamaguchi

Make lagg interface specified "laggproto none" able to up


# 1.12 31-Mar-2022 yamaguchi

added log when ifpromisc is failed


# 1.11 31-Mar-2022 yamaguchi

fix coding style


# 1.10 12-Jan-2022 yamaguchi

Fix to call lacp_linkstate with IFNET_LOCK held

Network stack calls lacp_linkstate through lagg_port_ioctl when
doing "ifconfig up" or "ifconfig down" to an interface that is
a member of lagg(4). And IFNET_LOCK in the member interface
is held while the ioctl.
Therefore, lacp_linkstate is renamed to
lacp_linkstate_ifnet_locked, and always called with IFNET_LOCK
held. It avoids locking agains myself.


# 1.9 19-Oct-2021 yamaguchi

lagg: support l2tp(4) aggregation

- Accept "ifconfig lagg* laggport l2tp*"
- Set promiscuous mode when the added interface is l2tp*
- check IFF_UP in addition to IFF_RUNNING on
SIOCSIFFLAGS to a child interface.


# 1.8 12-Oct-2021 yamaguchi

Set a port interface of lagg(4) in promiscuous mode
when the lagg(4) is in promiscuous mode.


# 1.7 12-Oct-2021 yamaguchi

lagg: update capabilities of ifnet and ethercom

Commonly capabilities of all child interface are configured
to a lagg interface.


# 1.6 30-Sep-2021 yamaguchi

lagg: Register lagg_ifdetach to ether_ifdetach hook


# 1.5 30-Sep-2021 yamaguchi

Make a link-layer address of lagg(4) configurable by ifconfig(8)

lagg(4) uses a configured link-layer (MAC) address instead
of a random MAC address generated on creating.
The configured MAC address is copied to all child interface
and used for a system id of LACP.


# 1.4 30-Sep-2021 yamaguchi

lagg: Register lagg_linkstate_changed to link-state change hook


Revision tags: thorpej-i2c-spi-conf2-base thorpej-futex2-base thorpej-cfargs2-base thorpej-i2c-spi-conf-base cjep_sun2x-base1 cjep_sun2x-base cjep_staticlib_x-base1
# 1.3 24-May-2021 yamaguchi

branches: 1.3.2; 1.3.6;
Added missing copyright and license notice

pointed out by thorpej@n.o., Thanks.


# 1.2 19-May-2021 rillig

if_lagg: fix Clang build

Clang is stricter than GCC when it comes to nonliteral format strings.

sys/net/lagg/if_lagg.c:2372:12: error:
format string is not a string literal [-Werror,-Wformat-nonliteral]


# 1.1 17-May-2021 yamaguchi

Add a new link-aggregation pseudo interface named lagg(4)

- FreeBSD's lagg(4) based implementation
- MP-safe and MP-scalable


# 1.17 24-May-2022 andvar

fix various typos in comment, documentation and log messages.


# 1.16 04-Apr-2022 yamaguchi

Move input processing of lagg(4) before ether_input
to get rid of dependence.

This implementation is similar with that of bridge(4).


# 1.15 31-Mar-2022 yamaguchi

rename lagg_enqueue to lagg_output

NFC


# 1.14 31-Mar-2022 yamaguchi

Use addlog(4) for putting 2 messages to one line


# 1.13 31-Mar-2022 yamaguchi

Make lagg interface specified "laggproto none" able to up


# 1.12 31-Mar-2022 yamaguchi

added log when ifpromisc is failed


# 1.11 31-Mar-2022 yamaguchi

fix coding style


# 1.10 12-Jan-2022 yamaguchi

Fix to call lacp_linkstate with IFNET_LOCK held

Network stack calls lacp_linkstate through lagg_port_ioctl when
doing "ifconfig up" or "ifconfig down" to an interface that is
a member of lagg(4). And IFNET_LOCK in the member interface
is held while the ioctl.
Therefore, lacp_linkstate is renamed to
lacp_linkstate_ifnet_locked, and always called with IFNET_LOCK
held. It avoids locking agains myself.


# 1.9 19-Oct-2021 yamaguchi

lagg: support l2tp(4) aggregation

- Accept "ifconfig lagg* laggport l2tp*"
- Set promiscuous mode when the added interface is l2tp*
- check IFF_UP in addition to IFF_RUNNING on
SIOCSIFFLAGS to a child interface.


# 1.8 12-Oct-2021 yamaguchi

Set a port interface of lagg(4) in promiscuous mode
when the lagg(4) is in promiscuous mode.


# 1.7 12-Oct-2021 yamaguchi

lagg: update capabilities of ifnet and ethercom

Commonly capabilities of all child interface are configured
to a lagg interface.


# 1.6 30-Sep-2021 yamaguchi

lagg: Register lagg_ifdetach to ether_ifdetach hook


# 1.5 30-Sep-2021 yamaguchi

Make a link-layer address of lagg(4) configurable by ifconfig(8)

lagg(4) uses a configured link-layer (MAC) address instead
of a random MAC address generated on creating.
The configured MAC address is copied to all child interface
and used for a system id of LACP.


# 1.4 30-Sep-2021 yamaguchi

lagg: Register lagg_linkstate_changed to link-state change hook


Revision tags: thorpej-i2c-spi-conf2-base thorpej-futex2-base thorpej-cfargs2-base thorpej-i2c-spi-conf-base cjep_sun2x-base1 cjep_sun2x-base cjep_staticlib_x-base1
# 1.3 24-May-2021 yamaguchi

branches: 1.3.2; 1.3.6;
Added missing copyright and license notice

pointed out by thorpej@n.o., Thanks.


# 1.2 19-May-2021 rillig

if_lagg: fix Clang build

Clang is stricter than GCC when it comes to nonliteral format strings.

sys/net/lagg/if_lagg.c:2372:12: error:
format string is not a string literal [-Werror,-Wformat-nonliteral]


# 1.1 17-May-2021 yamaguchi

Add a new link-aggregation pseudo interface named lagg(4)

- FreeBSD's lagg(4) based implementation
- MP-safe and MP-scalable


# 1.16 04-Apr-2022 yamaguchi

Move input processing of lagg(4) before ether_input
to get rid of dependence.

This implementation is similar with that of bridge(4).


# 1.15 31-Mar-2022 yamaguchi

rename lagg_enqueue to lagg_output

NFC


# 1.14 31-Mar-2022 yamaguchi

Use addlog(4) for putting 2 messages to one line


# 1.13 31-Mar-2022 yamaguchi

Make lagg interface specified "laggproto none" able to up


# 1.12 31-Mar-2022 yamaguchi

added log when ifpromisc is failed


# 1.11 31-Mar-2022 yamaguchi

fix coding style


# 1.10 12-Jan-2022 yamaguchi

Fix to call lacp_linkstate with IFNET_LOCK held

Network stack calls lacp_linkstate through lagg_port_ioctl when
doing "ifconfig up" or "ifconfig down" to an interface that is
a member of lagg(4). And IFNET_LOCK in the member interface
is held while the ioctl.
Therefore, lacp_linkstate is renamed to
lacp_linkstate_ifnet_locked, and always called with IFNET_LOCK
held. It avoids locking agains myself.


# 1.9 19-Oct-2021 yamaguchi

lagg: support l2tp(4) aggregation

- Accept "ifconfig lagg* laggport l2tp*"
- Set promiscuous mode when the added interface is l2tp*
- check IFF_UP in addition to IFF_RUNNING on
SIOCSIFFLAGS to a child interface.


# 1.8 12-Oct-2021 yamaguchi

Set a port interface of lagg(4) in promiscuous mode
when the lagg(4) is in promiscuous mode.


# 1.7 12-Oct-2021 yamaguchi

lagg: update capabilities of ifnet and ethercom

Commonly capabilities of all child interface are configured
to a lagg interface.


# 1.6 30-Sep-2021 yamaguchi

lagg: Register lagg_ifdetach to ether_ifdetach hook


# 1.5 30-Sep-2021 yamaguchi

Make a link-layer address of lagg(4) configurable by ifconfig(8)

lagg(4) uses a configured link-layer (MAC) address instead
of a random MAC address generated on creating.
The configured MAC address is copied to all child interface
and used for a system id of LACP.


# 1.4 30-Sep-2021 yamaguchi

lagg: Register lagg_linkstate_changed to link-state change hook


Revision tags: thorpej-i2c-spi-conf2-base thorpej-futex2-base thorpej-cfargs2-base thorpej-i2c-spi-conf-base cjep_sun2x-base1 cjep_sun2x-base cjep_staticlib_x-base1
# 1.3 24-May-2021 yamaguchi

branches: 1.3.2; 1.3.6;
Added missing copyright and license notice

pointed out by thorpej@n.o., Thanks.


# 1.2 19-May-2021 rillig

if_lagg: fix Clang build

Clang is stricter than GCC when it comes to nonliteral format strings.

sys/net/lagg/if_lagg.c:2372:12: error:
format string is not a string literal [-Werror,-Wformat-nonliteral]


# 1.1 17-May-2021 yamaguchi

Add a new link-aggregation pseudo interface named lagg(4)

- FreeBSD's lagg(4) based implementation
- MP-safe and MP-scalable


# 1.15 31-Mar-2022 yamaguchi

rename lagg_enqueue to lagg_output

NFC


# 1.14 31-Mar-2022 yamaguchi

Use addlog(4) for putting 2 messages to one line


# 1.13 31-Mar-2022 yamaguchi

Make lagg interface specified "laggproto none" able to up


# 1.12 31-Mar-2022 yamaguchi

added log when ifpromisc is failed


# 1.11 31-Mar-2022 yamaguchi

fix coding style


# 1.10 12-Jan-2022 yamaguchi

Fix to call lacp_linkstate with IFNET_LOCK held

Network stack calls lacp_linkstate through lagg_port_ioctl when
doing "ifconfig up" or "ifconfig down" to an interface that is
a member of lagg(4). And IFNET_LOCK in the member interface
is held while the ioctl.
Therefore, lacp_linkstate is renamed to
lacp_linkstate_ifnet_locked, and always called with IFNET_LOCK
held. It avoids locking agains myself.


# 1.9 19-Oct-2021 yamaguchi

lagg: support l2tp(4) aggregation

- Accept "ifconfig lagg* laggport l2tp*"
- Set promiscuous mode when the added interface is l2tp*
- check IFF_UP in addition to IFF_RUNNING on
SIOCSIFFLAGS to a child interface.


# 1.8 12-Oct-2021 yamaguchi

Set a port interface of lagg(4) in promiscuous mode
when the lagg(4) is in promiscuous mode.


# 1.7 12-Oct-2021 yamaguchi

lagg: update capabilities of ifnet and ethercom

Commonly capabilities of all child interface are configured
to a lagg interface.


# 1.6 30-Sep-2021 yamaguchi

lagg: Register lagg_ifdetach to ether_ifdetach hook


# 1.5 30-Sep-2021 yamaguchi

Make a link-layer address of lagg(4) configurable by ifconfig(8)

lagg(4) uses a configured link-layer (MAC) address instead
of a random MAC address generated on creating.
The configured MAC address is copied to all child interface
and used for a system id of LACP.


# 1.4 30-Sep-2021 yamaguchi

lagg: Register lagg_linkstate_changed to link-state change hook


Revision tags: thorpej-i2c-spi-conf2-base thorpej-futex2-base thorpej-cfargs2-base thorpej-i2c-spi-conf-base cjep_sun2x-base1 cjep_sun2x-base cjep_staticlib_x-base1
# 1.3 24-May-2021 yamaguchi

branches: 1.3.2; 1.3.6;
Added missing copyright and license notice

pointed out by thorpej@n.o., Thanks.


# 1.2 19-May-2021 rillig

if_lagg: fix Clang build

Clang is stricter than GCC when it comes to nonliteral format strings.

sys/net/lagg/if_lagg.c:2372:12: error:
format string is not a string literal [-Werror,-Wformat-nonliteral]


# 1.1 17-May-2021 yamaguchi

Add a new link-aggregation pseudo interface named lagg(4)

- FreeBSD's lagg(4) based implementation
- MP-safe and MP-scalable


# 1.10 12-Jan-2022 yamaguchi

Fix to call lacp_linkstate with IFNET_LOCK held

Network stack calls lacp_linkstate through lagg_port_ioctl when
doing "ifconfig up" or "ifconfig down" to an interface that is
a member of lagg(4). And IFNET_LOCK in the member interface
is held while the ioctl.
Therefore, lacp_linkstate is renamed to
lacp_linkstate_ifnet_locked, and always called with IFNET_LOCK
held. It avoids locking agains myself.


# 1.9 19-Oct-2021 yamaguchi

lagg: support l2tp(4) aggregation

- Accept "ifconfig lagg* laggport l2tp*"
- Set promiscuous mode when the added interface is l2tp*
- check IFF_UP in addition to IFF_RUNNING on
SIOCSIFFLAGS to a child interface.


# 1.8 12-Oct-2021 yamaguchi

Set a port interface of lagg(4) in promiscuous mode
when the lagg(4) is in promiscuous mode.


# 1.7 12-Oct-2021 yamaguchi

lagg: update capabilities of ifnet and ethercom

Commonly capabilities of all child interface are configured
to a lagg interface.


# 1.6 30-Sep-2021 yamaguchi

lagg: Register lagg_ifdetach to ether_ifdetach hook


# 1.5 30-Sep-2021 yamaguchi

Make a link-layer address of lagg(4) configurable by ifconfig(8)

lagg(4) uses a configured link-layer (MAC) address instead
of a random MAC address generated on creating.
The configured MAC address is copied to all child interface
and used for a system id of LACP.


# 1.4 30-Sep-2021 yamaguchi

lagg: Register lagg_linkstate_changed to link-state change hook


Revision tags: thorpej-i2c-spi-conf2-base thorpej-futex2-base thorpej-cfargs2-base thorpej-i2c-spi-conf-base cjep_sun2x-base1 cjep_sun2x-base cjep_staticlib_x-base1
# 1.3 24-May-2021 yamaguchi

branches: 1.3.2; 1.3.6;
Added missing copyright and license notice

pointed out by thorpej@n.o., Thanks.


# 1.2 19-May-2021 rillig

if_lagg: fix Clang build

Clang is stricter than GCC when it comes to nonliteral format strings.

sys/net/lagg/if_lagg.c:2372:12: error:
format string is not a string literal [-Werror,-Wformat-nonliteral]


# 1.1 17-May-2021 yamaguchi

Add a new link-aggregation pseudo interface named lagg(4)

- FreeBSD's lagg(4) based implementation
- MP-safe and MP-scalable


# 1.9 19-Oct-2021 yamaguchi

lagg: support l2tp(4) aggregation

- Accept "ifconfig lagg* laggport l2tp*"
- Set promiscuous mode when the added interface is l2tp*
- check IFF_UP in addition to IFF_RUNNING on
SIOCSIFFLAGS to a child interface.


# 1.8 12-Oct-2021 yamaguchi

Set a port interface of lagg(4) in promiscuous mode
when the lagg(4) is in promiscuous mode.


# 1.7 12-Oct-2021 yamaguchi

lagg: update capabilities of ifnet and ethercom

Commonly capabilities of all child interface are configured
to a lagg interface.


# 1.6 30-Sep-2021 yamaguchi

lagg: Register lagg_ifdetach to ether_ifdetach hook


# 1.5 30-Sep-2021 yamaguchi

Make a link-layer address of lagg(4) configurable by ifconfig(8)

lagg(4) uses a configured link-layer (MAC) address instead
of a random MAC address generated on creating.
The configured MAC address is copied to all child interface
and used for a system id of LACP.


# 1.4 30-Sep-2021 yamaguchi

lagg: Register lagg_linkstate_changed to link-state change hook


Revision tags: thorpej-i2c-spi-conf2-base thorpej-futex2-base thorpej-cfargs2-base thorpej-i2c-spi-conf-base cjep_sun2x-base1 cjep_sun2x-base cjep_staticlib_x-base1
# 1.3 24-May-2021 yamaguchi

branches: 1.3.2; 1.3.6;
Added missing copyright and license notice

pointed out by thorpej@n.o., Thanks.


# 1.2 19-May-2021 rillig

if_lagg: fix Clang build

Clang is stricter than GCC when it comes to nonliteral format strings.

sys/net/lagg/if_lagg.c:2372:12: error:
format string is not a string literal [-Werror,-Wformat-nonliteral]


# 1.1 17-May-2021 yamaguchi

Add a new link-aggregation pseudo interface named lagg(4)

- FreeBSD's lagg(4) based implementation
- MP-safe and MP-scalable


# 1.8 12-Oct-2021 yamaguchi

Set a port interface of lagg(4) in promiscuous mode
when the lagg(4) is in promiscuous mode.


# 1.7 12-Oct-2021 yamaguchi

lagg: update capabilities of ifnet and ethercom

Commonly capabilities of all child interface are configured
to a lagg interface.


# 1.6 30-Sep-2021 yamaguchi

lagg: Register lagg_ifdetach to ether_ifdetach hook


# 1.5 30-Sep-2021 yamaguchi

Make a link-layer address of lagg(4) configurable by ifconfig(8)

lagg(4) uses a configured link-layer (MAC) address instead
of a random MAC address generated on creating.
The configured MAC address is copied to all child interface
and used for a system id of LACP.


# 1.4 30-Sep-2021 yamaguchi

lagg: Register lagg_linkstate_changed to link-state change hook


Revision tags: thorpej-i2c-spi-conf2-base thorpej-futex2-base thorpej-cfargs2-base thorpej-i2c-spi-conf-base cjep_sun2x-base1 cjep_sun2x-base cjep_staticlib_x-base1
# 1.3 24-May-2021 yamaguchi

branches: 1.3.2; 1.3.6;
Added missing copyright and license notice

pointed out by thorpej@n.o., Thanks.


# 1.2 19-May-2021 rillig

if_lagg: fix Clang build

Clang is stricter than GCC when it comes to nonliteral format strings.

sys/net/lagg/if_lagg.c:2372:12: error:
format string is not a string literal [-Werror,-Wformat-nonliteral]


# 1.1 17-May-2021 yamaguchi

Add a new link-aggregation pseudo interface named lagg(4)

- FreeBSD's lagg(4) based implementation
- MP-safe and MP-scalable


# 1.6 30-Sep-2021 yamaguchi

lagg: Register lagg_ifdetach to ether_ifdetach hook


# 1.5 30-Sep-2021 yamaguchi

Make a link-layer address of lagg(4) configurable by ifconfig(8)

lagg(4) uses a configured link-layer (MAC) address instead
of a random MAC address generated on creating.
The configured MAC address is copied to all child interface
and used for a system id of LACP.


# 1.4 30-Sep-2021 yamaguchi

lagg: Register lagg_linkstate_changed to link-state change hook


Revision tags: thorpej-i2c-spi-conf2-base thorpej-futex2-base thorpej-cfargs2-base thorpej-i2c-spi-conf-base cjep_sun2x-base1 cjep_sun2x-base cjep_staticlib_x-base1
# 1.3 24-May-2021 yamaguchi

branches: 1.3.2; 1.3.6;
Added missing copyright and license notice

pointed out by thorpej@n.o., Thanks.


# 1.2 19-May-2021 rillig

if_lagg: fix Clang build

Clang is stricter than GCC when it comes to nonliteral format strings.

sys/net/lagg/if_lagg.c:2372:12: error:
format string is not a string literal [-Werror,-Wformat-nonliteral]


# 1.1 17-May-2021 yamaguchi

Add a new link-aggregation pseudo interface named lagg(4)

- FreeBSD's lagg(4) based implementation
- MP-safe and MP-scalable