From: Ivo van Doorn <ivdoorn@gmail.com>
To: Adam Baker <linux@baker-net.org.uk>
Cc: linux-wireless@vger.kernel.org, "Luis R. Rodriguez" <mcgrof@gmail.com>
Subject: Re: [PATCH] mac80211: enable IBSS merging
Date: Wed, 23 Jan 2008 00:25:02 +0100 [thread overview]
Message-ID: <200801230025.02550.IvDoorn@gmail.com> (raw)
In-Reply-To: <loom.20080122T230306-543@post.gmane.org>
Hi,
> > > > > > Then there is a problem for rt2x00. Since the mactime isn't known.
> > > > > > rt2400pci is the _only_ device which has a RX_END_TIME field in the
> > > > > > RX descriptor.
> > > > >
> > > > > one workaround could be to simply use the current TSF at the time in
> > > > > the tasklet or interrupt handler (to be more close to the actual rx
> > > > > time). this should be sufficient to catch most cases where an IBSS
> > > > > merge is necessary - usually the beacon's TSF will be much higher
> > > > > than the local TSF.
> > > >
> > > > Should the driver to this, or should mac80211 handle that?
> > >
> > > The driver should if it has access to some the mactime of the received
> > > packet otherwise yes -- I think mac80211 can handle this using the
> > > supplied get_tsf().
> > >
> > > > Personally I think it is something for the mac80211 layer since the
> > > > driver will give what it can, and can be sure that it is what mac80211
> > > > expects instead of drivers interpreting what mac80211 might want as
> > > > replacement. If mac80211 needs the TSF value when no mac time is
> > > > given, it could just use the get_tsf() callback function to the driver
> > > > to get the substitute. When the get_tsf() callback is not provided,
> > > > then mac80211 can complain about missing information.
> > >
> >
>
> I see one problem with this. At the moment rt2x00 doesn't implement get_tsf
> for USB devices. In the case of RT73 this is because mac80211 requires
> get_tsf to be atomic which precludes waiting for a USB device to reply
> to a request. Ivo has got an implementation in the code but it is disabled
> as the fact it sleeps was causing bugs. Presumably other USB devices would
> have the same problem.
Oops, I really should have checked it, I thought the other tsf handler was disabled
and only get_tsf was implemented. Apparently rt73usb only has reset_tsf(). :S
For rt2500usb the problem is that it contains no TSF registers at all
(at least I never found an offset which contained something looking like a TSF).
> I'm not sure if the code path for IBSS merging would require an atomic
> version, I'm guessing it wouldn't. If so do we need to consider whether
> to either have both get_tsf and get_tsf_atomic or have a flag to get_tsf
> indicating if it can sleep if it needs to?
The new patch has get_tsf() in normal context, I think the best thing would
be moving all remaining atomic get_tsf() calls out of that context. But last time
I checked that wouldn't be too easy. :(
Ivo
next prev parent reply other threads:[~2008-01-22 23:25 UTC|newest]
Thread overview: 56+ messages / expand[flat|nested] mbox.gz Atom feed top
2008-01-18 12:52 [PATCH] mac80211: enable IBSS merging Bruno Randolf
2008-01-20 10:17 ` Luis R. Rodriguez
2008-01-20 10:43 ` Ivo van Doorn
2008-01-21 1:52 ` bruno randolf
2008-01-21 16:05 ` Ivo van Doorn
2008-01-22 19:47 ` Luis R. Rodriguez
2008-01-22 19:54 ` Ivo van Doorn
2008-01-22 20:32 ` Luis R. Rodriguez
2008-01-22 20:51 ` Ivo van Doorn
2008-01-23 1:59 ` [ath5k-devel] " bruno randolf
2008-01-22 23:16 ` Adam Baker
2008-01-22 23:25 ` Ivo van Doorn [this message]
2008-01-23 14:49 ` Johannes Berg
2008-01-24 5:51 ` bruno randolf
2008-01-21 1:57 ` bruno randolf
2008-01-23 14:48 ` Johannes Berg
2008-01-23 17:22 ` Dan Williams
2008-01-24 3:49 ` bruno randolf
2008-01-24 3:26 ` bruno randolf
2008-01-24 16:55 ` Johannes Berg
2008-01-25 8:01 ` bruno randolf
2008-02-02 23:22 ` Luis R. Rodriguez
2008-02-05 1:50 ` bruno randolf
2008-02-05 1:56 ` Luis R. Rodriguez
2008-02-06 10:01 ` Johannes Berg
2008-02-06 4:34 ` Jouni Malinen
2008-02-06 18:33 ` Luis R. Rodriguez
2008-02-06 20:10 ` John W. Linville
2008-02-07 3:58 ` Jouni Malinen
2008-02-08 9:22 ` Luis R. Rodriguez
2008-02-12 2:00 ` bruno randolf
2008-02-15 1:06 ` Luis R. Rodriguez
2008-02-15 1:40 ` bruno randolf
2008-02-07 3:52 ` Jouni Malinen
2008-02-08 9:10 ` Luis R. Rodriguez
2008-01-24 5:43 ` bruno randolf
2008-01-24 8:51 ` Kalle Valo
2008-01-24 14:27 ` Johannes Berg
2008-01-24 14:30 ` Johannes Berg
2008-01-25 6:16 ` bruno randolf
-- strict thread matches above, loose matches on Subject: below --
2008-02-05 11:08 [PATCH 2/2] " Johannes Berg
2008-02-06 2:49 ` [PATCH] " Bruno Randolf
2008-02-06 23:52 ` Johannes Berg
2008-02-08 9:25 ` Luis R. Rodriguez
2008-02-12 3:25 ` bruno randolf
2008-02-12 9:50 ` Johannes Berg
2008-02-14 6:19 ` bruno randolf
2008-02-14 14:12 ` Johannes Berg
2008-02-12 9:52 ` Johannes Berg
2008-02-14 10:19 ` bruno randolf
2008-02-08 9:41 Joerg Pommnitz
2008-02-15 15:09 [PATCH 3/3] " Johannes Berg
2008-02-16 2:29 ` [PATCH] " Bruno Randolf
2008-02-17 9:11 ` Johannes Berg
2008-02-18 1:42 ` bruno randolf
2008-02-18 11:15 ` Johannes Berg
2008-02-18 2:03 ` bruno randolf
2008-02-18 11:16 ` 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=200801230025.02550.IvDoorn@gmail.com \
--to=ivdoorn@gmail.com \
--cc=linux-wireless@vger.kernel.org \
--cc=linux@baker-net.org.uk \
--cc=mcgrof@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).