Bug 273539 - VLAN issue after upgrading from stable/13 to main or stable/14 - kernel without COMPAT_FREEBSD12
Summary: VLAN issue after upgrading from stable/13 to main or stable/14 - kernel witho...
Status: Closed FIXED
Alias: None
Product: Base System
Classification: Unclassified
Component: kern (show other bugs)
Version: 14.0-STABLE
Hardware: Any Any
: --- Affects Many People
Assignee: Dag-Erling Smørgrav
URL:
Keywords: regression
Depends on:
Blocks:
 
Reported: 2023-09-03 09:40 UTC by Herbert J. Skuhra
Modified: 2023-09-08 10:14 UTC (History)
5 users (show)

See Also:
des: mfc-stable14+
des: mfc-stable13+


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Herbert J. Skuhra 2023-09-03 09:40:42 UTC
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
[..]


Without "COMPAT_FREEBSD12" vlanproto = 0x0000.
If I run "ifconfig vlan31 vlanproto 802.1q" mpd5 works.

According to ifconfig(8) 802.1q is the default vlanproto.

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
  
?


To reproduce: build and run the following kernel:

include GENERIC
ident TEST
nooptions COMPAT_FREEBSD12

stable/13:

# 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:

# 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.

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
Comment 1 Dag-Erling Smørgrav freebsd_committer freebsd_triage 2023-09-04 11:01:47 UTC
Alexander, can you see a reason not to just remove the #ifdef?
Comment 2 Dag-Erling Smørgrav freebsd_committer freebsd_triage 2023-09-04 13:27:51 UTC
https://reviews.freebsd.org/D41717
Comment 3 commit-hook freebsd_committer freebsd_triage 2023-09-04 23:38:24 UTC
A commit in branch main references this bug:

URL: https://cgit.FreeBSD.org/src/commit/?id=b451dcc84f1cfd1d14ede8a53d1d8359c9b85c94

commit b451dcc84f1cfd1d14ede8a53d1d8359c9b85c94
Author:     Dag-Erling Smørgrav <des@FreeBSD.org>
AuthorDate: 2023-09-04 23:26:07 +0000
Commit:     Dag-Erling Smørgrav <des@FreeBSD.org>
CommitDate: 2023-09-04 23:26:18 +0000

    if_vlan: Always default to 802.1q.

    There is no reason for this fallback to be conditional on COMPAT_FREEBSD12.

    PR:             273539
    MFC after:      1 week
    Sponsored by:   Klara, Inc.
    Sponsored by:   NetApp, Inc.
    Reviewed by:    melifaro, allanjude
    Differential Revision:  https://reviews.freebsd.org/D41717

 sys/net/if_vlan.c | 5 -----
 1 file changed, 5 deletions(-)
Comment 4 commit-hook freebsd_committer freebsd_triage 2023-09-07 20:29:15 UTC
A commit in branch stable/14 references this bug:

URL: https://cgit.FreeBSD.org/src/commit/?id=a0fea1dc59d5eae266bef72e8f6ba9ca9d9f9691

commit a0fea1dc59d5eae266bef72e8f6ba9ca9d9f9691
Author:     Dag-Erling Smørgrav <des@FreeBSD.org>
AuthorDate: 2023-09-04 23:26:07 +0000
Commit:     Dag-Erling Smørgrav <des@FreeBSD.org>
CommitDate: 2023-09-07 20:28:31 +0000

    if_vlan: Always default to 802.1q.

    There is no reason for this fallback to be conditional on COMPAT_FREEBSD12.

    PR:             273539
    MFC after:      1 week
    Sponsored by:   Klara, Inc.
    Sponsored by:   NetApp, Inc.
    Reviewed by:    melifaro, allanjude
    Differential Revision:  https://reviews.freebsd.org/D41717

    (cherry picked from commit b451dcc84f1cfd1d14ede8a53d1d8359c9b85c94)

    Approved by:    re (gjb)

 sys/net/if_vlan.c | 5 -----
 1 file changed, 5 deletions(-)
Comment 5 commit-hook freebsd_committer freebsd_triage 2023-09-08 10:14:12 UTC
A commit in branch stable/13 references this bug:

URL: https://cgit.FreeBSD.org/src/commit/?id=6d5d8c7b2c745f29533a63d6bced705b9ecb1a57

commit 6d5d8c7b2c745f29533a63d6bced705b9ecb1a57
Author:     Dag-Erling Smørgrav <des@FreeBSD.org>
AuthorDate: 2023-09-04 23:26:07 +0000
Commit:     Dag-Erling Smørgrav <des@FreeBSD.org>
CommitDate: 2023-09-08 10:09:23 +0000

    if_vlan: Always default to 802.1q.

    There is no reason for this fallback to be conditional on COMPAT_FREEBSD12.

    PR:             273539
    MFC after:      1 week
    Sponsored by:   Klara, Inc.
    Sponsored by:   NetApp, Inc.
    Reviewed by:    melifaro, allanjude
    Differential Revision:  https://reviews.freebsd.org/D41717

    (cherry picked from commit b451dcc84f1cfd1d14ede8a53d1d8359c9b85c94)

 sys/net/if_vlan.c | 5 -----
 1 file changed, 5 deletions(-)