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

From: Herbert J. Skuhra <herbert_at_gojira.at>
Date: Fri, 01 Sep 2023 06:21:36 UTC
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?

--
Herbert