hsr_forward.c (908e757daecf2120c3019fa630ae5d4c3cd7165b) hsr_forward.c (8f4c0e01789c18674acdf17cae3822b3dc3db715)
1// SPDX-License-Identifier: GPL-2.0
2/* Copyright 2011-2014 Autronica Fire and Security AS
3 *
4 * Author(s):
5 * 2011-2014 Arvid Brodin, arvid.brodin@alten.se
1// SPDX-License-Identifier: GPL-2.0
2/* Copyright 2011-2014 Autronica Fire and Security AS
3 *
4 * Author(s):
5 * 2011-2014 Arvid Brodin, arvid.brodin@alten.se
6 *
7 * Frame router for HSR and PRP.
6 */
7
8#include "hsr_forward.h"
9#include <linux/types.h>
10#include <linux/skbuff.h>
11#include <linux/etherdevice.h>
12#include <linux/if_vlan.h>
13#include "hsr_main.h"

--- 356 unchanged lines hidden (view full) ---

370 /* Gets called for ingress frames as well as egress from master port.
371 * So check and increment stats for master port only here.
372 */
373 if (port->type == HSR_PT_MASTER) {
374 port->dev->stats.tx_packets++;
375 port->dev->stats.tx_bytes += skb->len;
376 }
377
8 */
9
10#include "hsr_forward.h"
11#include <linux/types.h>
12#include <linux/skbuff.h>
13#include <linux/etherdevice.h>
14#include <linux/if_vlan.h>
15#include "hsr_main.h"

--- 356 unchanged lines hidden (view full) ---

372 /* Gets called for ingress frames as well as egress from master port.
373 * So check and increment stats for master port only here.
374 */
375 if (port->type == HSR_PT_MASTER) {
376 port->dev->stats.tx_packets++;
377 port->dev->stats.tx_bytes += skb->len;
378 }
379
378 if (frame.skb_hsr)
379 kfree_skb(frame.skb_hsr);
380 if (frame.skb_std)
381 kfree_skb(frame.skb_std);
380 kfree_skb(frame.skb_hsr);
381 kfree_skb(frame.skb_std);
382 return;
383
384out_drop:
385 port->dev->stats.tx_dropped++;
386 kfree_skb(skb);
387}
382 return;
383
384out_drop:
385 port->dev->stats.tx_dropped++;
386 kfree_skb(skb);
387}