From: Michael Wu <fla...@so...> - 2005-09-14 03:13:34
|
On Tuesday 13 September 2005 22:44, Mike Kershaw wrote: > > I would prefer either that or giving drivers access to the generic > > monitor mode path so frames can be passed to userspace ASAP. > > I'm of 2 minds here... For a driver to implement radiotap, all it takes > is a struct that the driver fills in that LOOKS like a radiotap dynamic > header to userspace, but is really just a static struct fill. For the > ieee80211 layer to do the same, it will have to actually dynamically > contstruct the header, per frame, based on what the driver gives us. > It's quicker to do per-driver header construction. > > I don't mind implementing both, and including a field that ieee80211 > layer can pick to do headers dynamically or not. > > Maybe this is too weird an idea, and we should just pick "80211" or > "driver". I'm willing to write the code for either use case. I suppose > that rfmon is a fairly special case and won't be as much of a cpu drain > as a wired ethernet NIC or normal mode would be. > I'm currently leaning towards taking the monitor mode stuff out of the ieee80211 rx path and letting the driver decide when to hook in the monitor mode stuff. Then the radiotap headers would be constructed in the driver. > > Also, we probably want an ioctl or some way to switch between raw > > ieee80211 frames and radiotap headers. > > Sure, *as long as every driver uses the same ioctl* :) PLEASE PLEASE > PLEASE lets pick a constant ioctl name for this. I assume we'll want it > as an iwpriv ioctl, thats where the other behavior of this ilk lives. > If we're going to implement an iwpriv control for it, shall we plan > forward and make it an integer not a boolean, so we can have different > headers if we need them? > By ioctl, I mean Wireless Extensions, so hopefully some future version of WE will have it. I somehow doubt that we will need much more than extensions of radiotap headers in the future.. it looks like it can cover everything. However, an int is easy, so why not.. -Michael Wu |