Re: net/mpd5 on stable/14 - COMPAT_FREEBSD12 required?

From: Herbert J. Skuhra <herbert_at_gojira.at>
Date: Sun, 03 Sep 2023 10:51:22 UTC
On Fri, 01 Sep 2023 08:44:50 +0200, Eugene Grosbein wrote:
> 
> 01.09.2023 13:21, Herbert J. Skuhra wrote:
> 
> > On Thu, 31 Aug 2023 18:39:13 +0200, "Herbert J. Skuhra" wrote:
> >>
> >> On Wed, 30 Aug 2023 15:46:46 +0200, "Herbert J. Skuhra" wrote:
> >>>
> >>> On Wed, 30 Aug 2023 15:29:28 +0200, "Herbert J. Skuhra" wrote:
> >>>>
> >>>> Hi,
> >>>>
> >>>> after updating from stable/13 to (main and later to) stable/14
> >>>> net/mpd5 only connects to my ISP (VDSL with VLAN) if I enable "options
> >>>> COMPAT_FREEBSD12" in my kernel. Without I get only:
> >>>>
> >>>> Aug 30 15:08:06 gw mpd[59876]: [L1] PPPoE connection timeout after 9 seconds
> >>>> Aug 30 15:08:06 gw mpd[59876]: [L1] Link: DOWN event
> >>>> Aug 30 15:08:06 gw mpd[59876]: [L1] LCP: Down event
> >>>> Aug 30 15:08:06 gw mpd[59876]: [L1] Link: reconnection attempt 1 in 7 seconds
> >>>> Aug 30 15:08:14 gw mpd[59876]: [L1] Link: reconnection attempt 1
> >>>> Aug 30 15:08:14 gw mpd[59876]: [L1] PPPoE: Connecting to ''
> >>>> Aug 30 15:08:23 gw mpd[59876]: [L1] PPPoE connection timeout after 9 seconds
> >>>> Aug 30 15:08:23 gw mpd[59876]: [L1] Link: DOWN event
> >>>> Aug 30 15:08:23 gw mpd[59876]: [L1] LCP: Down event
> >>>> [..]
> >>>>
> >>>> I guess the problem is:
> >>>>
> >>>> Without "COMPAT_FREEBSD12" vlanproto = 0x0000. If I run "ifconfig
> >>>> vlan31 vlanproto 802.1q" mpd5 works.
> >>>
> >>> Maybe this commit is related:
> >>>
> >>> commit afbb64f1d85b7d8c2938031c3567946b5d10da4f
> >>> Author: Alexander V. Chernikov
> >>> Date:   Sun Apr 11 17:47:03 2021 +0100
> >>>
> >>>     Fix vlan creation for the older ifconfig(8) binaries.
> >>>     
> >>>     Reported by:    allanjude
> >>>     MFC after:      immediately
> >>>
> >>> ?
> >>
> >> On stable/13 (GENERIC without COMPAT_FREEBSD12):
> >>
> >> # ifconfig vlan99 create
> >>  ==> vlanproto: 0x0000
> >> # ifconfig vlan99 vlan 99 vlandev igb0
> >>  ==> vlanproto: 802.1q
> >> # ifconfig vlan99 destroy
> >> # ifconfig vlan99 create vlan 99 vlandev igb0
> >>  ==> vlanproto: 802.1q
> >>
> >> On stable/14 or main (GENERIC without COMPAT_FREEBSD12):
> >>
> >> # ifconfig vlan99 create
> >>  ==> vlanproto 0x0000
> >> # ifconfig vlan99 vlan 99 vlandev igb0
> >>  ==> vlanproto 0x0000#
> >> # ifconfig vlan99 create vlan 99 vlandev igb0
> >>  ==> vlanproto: 802.1q
> >>
> >> I guess that's why the following lines in my /etc/rc.conf no longer
> >> work on stable/14 or main (without COMPAT_FREEBSD12):
> >>
> >> cloned_interfaces="vlan99"
> >> ifconfig_vlan99="vlan 99 vlandev igb0"
> >>
> >> I have to replace the ifconfig line with:
> >>
> >> ifconfig_vlan99="vlan 99 vlandev igb0 vlanproto 802.1q"
> >>
> >> It also works if I remove the following lines in sys/net/if_vlan.c:
> >>
> >> 1110 #ifdef COMPAT_FREEBSD12
> >> 1113 #endif
> >>
> >> 2265 #ifdef COMPAT_FREEBSD12
> >> 2268 #endif
> > 
> > Bug or user error?
> 
> Seems to me as a regression in 14.

https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=273539

--
Herbert