summaryrefslogtreecommitdiffstats
path: root/net/dsa/dsa2.c
diff options
context:
space:
mode:
authorVivien Didelot <vivien.didelot@savoirfairelinux.com>2017-09-29 17:19:18 -0400
committerDavid S. Miller <davem@davemloft.net>2017-10-01 04:15:07 +0100
commit152402483ed75b167d5628d414e876ffa7a6d4c4 (patch)
tree19cbdba3c8720900a35bddf92da7d75052a9fff4 /net/dsa/dsa2.c
parent62fc95876298987c35e9fb10badd467f4787aae7 (diff)
downloadlinux-stable-152402483ed75b167d5628d414e876ffa7a6d4c4.tar.gz
linux-stable-152402483ed75b167d5628d414e876ffa7a6d4c4.tar.bz2
linux-stable-152402483ed75b167d5628d414e876ffa7a6d4c4.zip
net: dsa: add tagging ops to port
The DSA tagging protocol operations are specific to each CPU port, thus the dsa_device_ops pointer belongs to the dsa_port structure. >From now on assign a slave's xmit copy from its CPU port tagging operations. This will ease the future support for multiple CPU ports. Also keep the tag_ops at the beginning of the dsa_port structure so that we ensure copies for hot path are in cacheline 1. Signed-off-by: Vivien Didelot <vivien.didelot@savoirfairelinux.com> Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'net/dsa/dsa2.c')
-rw-r--r--net/dsa/dsa2.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/net/dsa/dsa2.c b/net/dsa/dsa2.c
index 6a10c5c1639f..9eac4726dc0c 100644
--- a/net/dsa/dsa2.c
+++ b/net/dsa/dsa2.c
@@ -522,6 +522,7 @@ static int dsa_cpu_parse(struct dsa_port *port, u32 index,
return PTR_ERR(tag_ops);
}
+ dst->cpu_dp->tag_ops = tag_ops;
dst->tag_ops = tag_ops;
dst->rcv = dst->tag_ops->rcv;