From: Johannes Berg <johannes@xxxxxxxxxxxxxxxx> Date: Wed, 12 Apr 2017 16:29:07 +0200 > On Wed, 2017-04-12 at 13:07 +0200, Johannes Berg wrote: >> >> struct ieee80211_if_mntr { >> u32 flags; >> > [...] > + bool deliver; > > That's ... broken for multi-queue RX. I haven't really found a good > other way to do it. The best way will likely be to copy the SKB the > first time it's needed, build the radiotap header, and then keep a > reference to it to be able to clone it later if it's needed again. If you don't recurse into the receive path for different devices before you are done with this boolean, simply make a global per-cpu boolean and use that.