Messages in this thread | | | Date | Wed, 27 Mar 2024 09:05:12 +0530 | From | Ratheesh Kannoth <> | Subject | Re: [PATCH v3 RESEND] net: hsr: Provide RedBox support |
| |
On 2024-03-26 at 14:32:20, Lukasz Majewski (lukma@denx.de) wrote: > --- a/net/hsr/hsr_device.h > +++ b/net/hsr/hsr_device.h > @@ -16,8 +16,8 @@ > void hsr_del_ports(struct hsr_priv *hsr); > void hsr_dev_setup(struct net_device *dev); > int hsr_dev_finalize(struct net_device *hsr_dev, struct net_device *slave[2], > - unsigned char multicast_spec, u8 protocol_version, > - struct netlink_ext_ack *extack); > + struct net_device *interlink, unsigned char multicast_spec, > + u8 protocol_version, struct netlink_ext_ack *extack); > void hsr_check_carrier_and_operstate(struct hsr_priv *hsr); > int hsr_get_max_mtu(struct hsr_priv *hsr); > #endif /* __HSR_DEVICE_H */ > diff --git a/net/hsr/hsr_forward.c b/net/hsr/hsr_forward.c > index 5d68cb181695..7c5a4bda1cca 100644 > --- a/net/hsr/hsr_forward.c > +++ b/net/hsr/hsr_forward.c > @@ -377,6 +377,15 @@ static int hsr_xmit(struct sk_buff *skb, struct hsr_port *port, > */ > ether_addr_copy(eth_hdr(skb)->h_source, port->dev->dev_addr); > } > + > + /* When HSR node is used as RedBox - the frame received from HSR ring > + * requires source MAC address (SA) replacement to one which can be > + * recognized by SAN devices (otherwise, frames are dropped by switch) > + */ > + if (port->type == HSR_PT_INTERLINK) > + memcpy(ð_hdr(skb)->h_source, port->hsr->macaddress_redbox, > + ETH_ALEN); why not ether_addr_copy here too ?
| |