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

From: Eugene Grosbein <eugen_at_grosbein.net>
Date: Fri, 01 Sep 2023 06:44:50 UTC
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.