mirror of https://gitee.com/openkylin/linux.git
6565243c06
The ocelot_port->ts_id is used to:
(a) populate skb->cb[0] for matching the TX timestamp in the PTP IRQ
with an skb.
(b) populate the REW_OP from the injection header of the ongoing skb.
Only then is ocelot_port->ts_id incremented.
This is a problem because, at least theoretically, another timestampable
skb might use the same ocelot_port->ts_id before that is incremented.
Normally all transmit calls are serialized by the netdev transmit
spinlock, but in this case, ocelot_port_add_txtstamp_skb() is also
called by DSA, which has started declaring the NETIF_F_LLTX feature
since commit
|
||
---|---|---|
.. | ||
Kconfig | ||
Makefile | ||
dsa.c | ||
dsa2.c | ||
dsa_priv.h | ||
master.c | ||
port.c | ||
slave.c | ||
switch.c | ||
tag_8021q.c | ||
tag_ar9331.c | ||
tag_brcm.c | ||
tag_dsa.c | ||
tag_edsa.c | ||
tag_gswip.c | ||
tag_ksz.c | ||
tag_lan9303.c | ||
tag_mtk.c | ||
tag_ocelot.c | ||
tag_qca.c | ||
tag_rtl4_a.c | ||
tag_sja1105.c | ||
tag_trailer.c |