From: Vladimir Oltean <olteanv@gmail.com>
To: f.fainelli@gmail.com, vivien.didelot@gmail.com, andrew@lunn.ch,
davem@davemloft.net
Cc: netdev@vger.kernel.org, Vladimir Oltean <olteanv@gmail.com>
Subject: [PATCH net 0/3] Fix a bug and avoid dangerous usage patterns
Date: Sat, 11 May 2019 23:14:44 +0300 [thread overview]
Message-ID: <20190511201447.15662-1-olteanv@gmail.com> (raw)
Making DSA use the sk_buff control block was my idea during the
'Traffic-support-for-SJA1105-DSA-driver' patchset, and I had also
introduced a series of macro helpers that turned out to not be so
helpful:
1. DSA_SKB_ZERO() zeroizes the 48-byte skb->cb area, but due to the high
performance impact in the hotpath it was only intended to be called
from the timestamping path. But it turns out that not zeroizing it
has uncovered the reading of an uninitialized member field of
DSA_SKB_CB, so in the future just be careful about what needs
initialization and remove this macro.
2. DSA_SKB_CLONE() contains a flaw in its body definition (originally
put there to silence checkpatch.pl) and is unusable at this point
(will only cause NPE's when used). So remove it.
3. For DSA_SKB_COPY() the same performance considerations apply as above
and therefore it's best to prune this function before it reaches a
stable kernel and potentially any users.
Vladimir Oltean (3):
net: dsa: Initialize DSA_SKB_CB(skb)->deferred_xmit variable
net: dsa: Remove dangerous DSA_SKB_CLONE() macro
net: dsa: Remove the now unused DSA_SKB_CB_COPY() macro
include/net/dsa.h | 15 ---------------
net/dsa/slave.c | 2 ++
2 files changed, 2 insertions(+), 15 deletions(-)
--
2.17.1
next reply other threads:[~2019-05-11 20:16 UTC|newest]
Thread overview: 8+ messages / expand[flat|nested] mbox.gz Atom feed top
2019-05-11 20:14 Vladimir Oltean [this message]
2019-05-11 20:14 ` [PATCH net 1/3] net: dsa: Initialize DSA_SKB_CB(skb)->deferred_xmit variable Vladimir Oltean
2019-05-11 20:14 ` [PATCH net 2/3] net: dsa: Remove dangerous DSA_SKB_CLONE() macro Vladimir Oltean
2019-05-12 2:39 ` Andrew Lunn
2019-05-11 20:14 ` [PATCH net 3/3] net: dsa: Remove the now unused DSA_SKB_CB_COPY() macro Vladimir Oltean
2019-05-12 2:39 ` Andrew Lunn
2019-05-11 20:26 ` [PATCH net 0/3] Fix a bug and avoid dangerous usage patterns Vladimir Oltean
2019-05-12 20:20 ` David Miller
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20190511201447.15662-1-olteanv@gmail.com \
--to=olteanv@gmail.com \
--cc=andrew@lunn.ch \
--cc=davem@davemloft.net \
--cc=f.fainelli@gmail.com \
--cc=netdev@vger.kernel.org \
--cc=vivien.didelot@gmail.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).