Thread (15 messages) 15 messages, 4 authors, 2023-09-14

Re: [PATCH] net: hsr : Provide fix for HSRv1 supervisor frames decoding

From: Lukasz Majewski <lukma@denx.de>
Date: 2023-09-05 16:02:06
Also in: lkml

Hi Sebastian,
On 2023-08-25 17:31:11 [+0200], Lukasz Majewski wrote:
quoted
Provide fix to decode correctly supervisory frames when HSRv1
version of the HSR protocol is used.

Without this patch console is polluted with:
ksz-switch spi1.0 lan1: hsr_addr_subst_dest: Unknown node

as a result of destination node's A MAC address equals to:
00:00:00:00:00:00.

cat /sys/kernel/debug/hsr/hsr0/node_table
Node Table entries for (HSR) device
MAC-Address-A,    MAC-Address-B,    time_in[A], time_in[B],
Address-B 00:00:00:00:00:00 00:10:a1:94:77:30      400bf,
399c,	        0

It was caused by wrong frames decoding in the
hsr_handle_sup_frame().

As the supervisor frame is encapsulated in HSRv1 frame:

SKB_I100000000: 01 15 4e 00 01 2d 00 10 a1 94 77 30 89 2f 00 34
SKB_I100000010: 02 59 88 fb 00 01 84 15 17 06 00 10 a1 94 77 30
SKB_I100000020: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
SKB_I100000030: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
SKB_I100000040: 00 00

The code had to be adjusted accordingly and the MAC-Address-A now
has the proper address (the MAC-Address-B now has all 0's).  
Was this broken by commit
	eafaa88b3eb7f ("net: hsr: Add support for redbox supervision
frames")
Yes, it seems so.
? Is this frame somehow special? I don't remember this…
Please refer to the whole thread - I've described this issue thoroughly
(including hex dump of frames):
https://lore.kernel.org/lkml/20230904175419.7bed196b@wsk/T/#m35cbfa4f1b8901d341fbc39659ace6a041f84c98 (local)

In short - the HSRv1 is not recognized correctly anymore:

HSR v0:
    [Protocols in frame: eth:ethertype:hsr_prp_supervision]
                                                                        
HSR v1:
    [Protocols in frame: eth:ethertype:hsr:hsr_prp_supervision]

quoted
Signed-off-by: Lukasz Majewski <lukma@denx.de>  
Sebastian

Best regards,

Lukasz Majewski

--

DENX Software Engineering GmbH,      Managing Director: Erika Unter
HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany
Phone: (+49)-8142-66989-59 Fax: (+49)-8142-66989-80 Email: lukma@denx.de

Attachments

  • (unnamed) [application/pgp-signature] 488 bytes
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help