On Mon, Jul 03, 2023 at 11:12:17PM +0200, Jan Klemkow wrote:
> bluhm pointed out that the ether_brport_isset() check it just allowed on
> ethernet devices. Thus, I put an additional ethernet check in the
> condition. This also fixes EBUSY errors of "ifconfig lo0 tcplro" calls
> in my setup.
>
> ok?
OK bluhm@
> Index: net/if.c
> ===================================================================
> RCS file: /cvs/src/sys/net/if.c,v
> retrieving revision 1.702
> diff -u -p -r1.702 if.c
> --- net/if.c 2 Jul 2023 19:59:15 -0000 1.702
> +++ net/if.c 3 Jul 2023 20:58:32 -0000
> @@ -3206,7 +3206,7 @@ ifsetlro(struct ifnet *ifp, int on)
> KERNEL_ASSERT_LOCKED(); /* for if_flags */
>
> if (on && !ISSET(ifp->if_xflags, IFXF_LRO)) {
> - if (ether_brport_isset(ifp)) {
> + if (ifp->if_type == IFT_ETHER && ether_brport_isset(ifp)) {
> error = EBUSY;
> goto out;
> }