Search Linux Wireless

Re: A good way to get CSI info to user-space?

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On 10/24/2017 06:55 AM, Johannes Berg wrote:
On Tue, 2017-10-24 at 06:50 -0700, Ben Greear wrote:

We keep having this discussion. You need to fix this, it should be
really simple to fix this - just remove all checks for CONF_MONITOR
from ath10k and make it use WANT_MONITOR_VIF instead if it doesn't
already.

I don't recall having this discussion,

I'm pretty sure I had this discussion about ath10k not liking virtual
monitor, but maybe it was with somebody else.

but even if you can do a
non-promiscuous monitor mode, you would have to end up having a bpf
socket filter and packet socket, right?

True.

Wouldn't that have a noticeable effect on performance on modest sized
AP hardware?

Yes. I was planning to add the wifi BPF to fix that:
https://git.kernel.org/pub/scm/linux/kernel/git/jberg/mac80211-next.git/log/?h=bpf

You shouldn't think that building netlink messages is free though.
There's a lot more locking etc. going on there.

CSI info is quite rare (probe-responses only at this point),
so even if each report is somewhat costly, that
will still be a lot less over-all work than running any kind of filter on
every frame.

I'm not sure how often tx-beamforming data is made available, but probably
it is somewhat rare compared to normal data packets, at least in ath10k.

mac80211_nl_send_opaque_event(mac80211-handle, int data-type, u8* data, int data_len);

I will not accept this upstream.

Thanks for letting me know up front, at least.

Anyone know if there is a useful way to stream events from debugfs
and/or sysfs w/out having to busy-poll on it?

There's relayfs, which is kinda built for that. You could even use
netlink vendor events, but I don't really think netlink is appropriate
here.

I'll look into the netlink vendor events.

Thanks,
Ben


johannes



--
Ben Greear <greearb@xxxxxxxxxxxxxxx>
Candela Technologies Inc  http://www.candelatech.com




[Index of Archives]     [Linux Host AP]     [ATH6KL]     [Linux Wireless Personal Area Network]     [Linux Bluetooth]     [Linux Netdev]     [Kernel Newbies]     [Linux Kernel]     [IDE]     [Git]     [Netfilter]     [Bugtraq]     [Yosemite Hiking]     [MIPS Linux]     [ARM Linux]     [Linux RAID]

  Powered by Linux