From: James Prestwood <prestwoj@gmail.com>
To: linux-wireless@vger.kernel.org
Cc: James Prestwood <prestwoj@gmail.com>
Subject: [PATCH v2 2/2] mac80211_hwsim: set rx_status mactime/flag for wmediumd path
Date: Fri, 22 Nov 2019 09:06:12 -0800 [thread overview]
Message-ID: <20191122170612.8123-2-prestwoj@gmail.com> (raw)
In-Reply-To: <20191122170612.8123-1-prestwoj@gmail.com>
This patch sets the required rx_status mactime and flags in order for
the parent TSF value to be calculated and sent to userspace. This is
already done elsewhere, but this patch allows this to work for the
wmediumd code path.
---
drivers/net/wireless/mac80211_hwsim.c | 14 ++++++++++++++
1 file changed, 14 insertions(+)
diff --git a/drivers/net/wireless/mac80211_hwsim.c b/drivers/net/wireless/mac80211_hwsim.c
index e9bc599481d4..01b2ac9707cc 100644
--- a/drivers/net/wireless/mac80211_hwsim.c
+++ b/drivers/net/wireless/mac80211_hwsim.c
@@ -3238,6 +3238,8 @@ static int hwsim_cloned_frame_received_nl(struct sk_buff *skb_2,
int frame_data_len;
void *frame_data;
struct sk_buff *skb = NULL;
+ struct ieee80211_hdr *hdr = (struct ieee80211_hdr *) skb_2->data;
+ u64 now;
if (!info->attrs[HWSIM_ATTR_ADDR_RECEIVER] ||
!info->attrs[HWSIM_ATTR_FRAME] ||
@@ -3300,6 +3302,18 @@ static int hwsim_cloned_frame_received_nl(struct sk_buff *skb_2,
rx_status.rate_idx = nla_get_u32(info->attrs[HWSIM_ATTR_RX_RATE]);
rx_status.signal = nla_get_u32(info->attrs[HWSIM_ATTR_SIGNAL]);
+ if (ieee80211_is_beacon(hdr->frame_control) ||
+ ieee80211_is_probe_resp(hdr->frame_control)) {
+ rx_status.boottime_ns = ktime_get_boottime_ns();
+ now = data2->abs_bcn_ts;
+ } else {
+ now = mac80211_hwsim_get_tsf_raw();
+ }
+
+ rx_status.mactime = now + data2->tsf_offset;
+
+ rx_status.flag |= RX_FLAG_MACTIME_START;
+
memcpy(IEEE80211_SKB_RXCB(skb), &rx_status, sizeof(rx_status));
data2->rx_pkts++;
data2->rx_bytes += skb->len;
--
2.17.1
next prev parent reply other threads:[~2019-11-22 17:09 UTC|newest]
Thread overview: 3+ messages / expand[flat|nested] mbox.gz Atom feed top
2019-11-22 17:06 [PATCH v2 1/2] mac80211_hwsim: enable parent TSF feature James Prestwood
2019-11-22 17:06 ` James Prestwood [this message]
2019-11-22 17:15 ` [PATCH v2 2/2] mac80211_hwsim: set rx_status mactime/flag for wmediumd path Johannes Berg
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=20191122170612.8123-2-prestwoj@gmail.com \
--to=prestwoj@gmail.com \
--cc=linux-wireless@vger.kernel.org \
/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