[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <bf9f5db4-7fb8-2ccd-7ba3-f31da6c344ce@wiesinger.com>
Date: Mon, 28 May 2018 07:24:52 +0200
From: Gerhard Wiesinger <lists@...singer.com>
To: Florian Fainelli <f.fainelli@...il.com>,
Andrew Lunn <andrew@...n.ch>, initramfs@...r.kernel.org
Cc: linux-kernel@...r.kernel.org
Subject: Re: B53 DSA switch problem on Banana Pi-R1 on Fedora 26 -
systemd-networkd problem
On 27.05.2018 22:35, Florian Fainelli wrote:
> Le 05/27/18 à 12:18, Gerhard Wiesinger a écrit :
>> On 27.05.2018 21:01, Gerhard Wiesinger wrote:
>>> On 24.05.2018 08:22, Gerhard Wiesinger wrote:
>>>> On 24.05.2018 07:29, Gerhard Wiesinger wrote:
>>>>> After some analysis with Florian (thnx) we found out that the
>>>>> current implementation is broken:
>>>>>
>>>>> https://patchwork.ozlabs.org/patch/836538/
>>>>> https://github.com/torvalds/linux/commit/c499696e7901bda18385ac723b7bd27c3a4af624#diff-a2b6f8d89e18de600e873ac3ac43fa1d
>>>>>
>>>>>
>>>>> Florians comment:
>>>>>
>>>>> c499696e7901bda18385ac723b7bd27c3a4af624 ("net: dsa: b53: Stop using
>>>>> dev->cpu_port incorrectly") since it would result in no longer setting
>>>>> the CPU port as tagged for a specific VLAN. Easiest way for you right
>>>>> now is to just revert it, but this needs some more thoughts for a
>>>>> proper
>>>>> upstream change. I will think about it some more.
>>>> Can confirm 4.14.18-200.fc26.armv7hl works, 4.15.x should be broken.
>>>>
>>>> # Kernel 4.14.x ok
>>>> https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux-stable.git/log/drivers/net/dsa/b53?h=v4.14.43
>>>>
>>>> # Kernel 4.15.x should be NOT ok
>>>> https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux-stable.git/log/drivers/net/dsa/b53?h=v4.15.18
>>>>
>>>
>> Forgot to mention: What's also strange is that the VLAN ID is very high:
>>
>> # 4.14.18-300.fc27.armv7hl, iproute-4.15.0-1.fc28.armv7hl
>> ip -d link show eth0.101 | grep "vlan protocol"
>> vlan protocol 802.1Q id 3069279796 <REORDER_HDR>
>> ip -d link show eth0.102 | grep "vlan protocol"
>> vlan protocol 802.1Q id 3068673588 <REORDER_HDR>
>>
>> On older kernels this looks ok: 4.12.8-200.fc25.armv7hl,
>> iproute-4.11.0-1.fc25.armv7hl:
>> ip -d link show eth0.101 | grep "vlan protocol"
>> vlan protocol 802.1Q id 101 <REORDER_HDR>
>> ip -d link show eth0.102 | grep "vlan protocol"
>> vlan protocol 802.1Q id 102 <REORDER_HDR>
>>
>> Ideas?
> That is quite likely a kernel/iproute2 issue, if you configured the
> switch through bridge vlan to have the ports in VLAN 101 and VLAN 102
> and you do indeed see frames entering eth0 with these VLAN IDs, then
> clearly the bridge -> switchdev -> dsa -> b53 part is working just fine
> and what you are seeing is some for of kernel header/netlink
> incompatibility.
Yes, sniffing on eth0 shows the correct VLAN IDs, e.g. 101.
Yes, my guess is that tools are wrong and have random values on 2 calls
in different values (e.g. alsopromiscuity ) , see below ....
Who can fix it?
BTW: On FC27 same issue with same kernel version, but guess older
iproute version.
Ciao,
Gerhard
ip -d link show eth0.101
13: eth0.101@...0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc
noqueue master br0 state UP mode DEFAULT group default qlen 1000
link/ether 02:18:09:ab:cd:ef brd ff:ff:ff:ff:ff:ff promiscuity
3068661300
vlan protocol 802.1Q id 3068661300 <REORDER_HDR>
bridge_slave state forwarding priority 32 cost 4 hairpin off guard
off root_block off fastleave off learning on flood on port_id 0x8005
port_no 0x5 designa
ted_port 3068661300 designated_cost 3068661300 designated_bridge
8000.66:5d:a2:ab:cd:ef designated_root 8000.66:5d:a2:ab:cd:ef
hold_timer 0.00 message_age_tim
er 0.00 forward_delay_timer 0.00 topology_change_ack 3068661300
config_pending 3068661300 proxy_arp off proxy_arp_wifi off mcast_router
3068661300 mcast_
fast_leave off mcast_flood on vlan_tunnel off addrgenmode eui64
numtxqueues 3068661300 numrxqueues 3068661300 gso_max_size 3068661300
gso_max_segs 3068661300
ip -d link show eth0.101
13: eth0.101@...0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc
noqueue master br0 state UP mode DEFAULT group default qlen 1000
link/ether 02:18:09:ab:cd:ef brd ff:ff:ff:ff:ff:ff promiscuity
3068735028
vlan protocol 802.1Q id 3068735028 <REORDER_HDR>
bridge_slave state forwarding priority 32 cost 4 hairpin off guard
off root_block off fastleave off learning on flood on port_id 0x8005
port_no 0x5 designa
ted_port 3068735028 designated_cost 3068735028 designated_bridge
8000.66:5d:ab:cd:ef designated_root 8000.66:5d:a2:ab:cd:ef hold_timer
0.00 message_age_tim
er 0.00 forward_delay_timer 0.00 topology_change_ack 3068735028
config_pending 3068735028 proxy_arp off proxy_arp_wifi off mcast_router
3068735028 mcast_
fast_leave off mcast_flood on vlan_tunnel off addrgenmode eui64
numtxqueues 3068735028 numrxqueues 3068735028 gso_max_size 3068735028
gso_max_segs 3068735028
Powered by blists - more mailing lists