Search Linux Wireless

Re: [RFC 04/15] mac80211: split PS buffers into ACs

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

 



On Tue, 2011-09-27 at 13:51 -0700, Luis R. Rodriguez wrote:

> > +       /*
> > +        * If all ACs are delivery-enabled then we should build
> > +        * the TIM bit for all ACs anyway; if only some are then
> > +        * we ignore those and build the TIM bit using only the
> > +        * non-enabled ones.
> > +        */
> 
> As per the documentation uapsd_queues is the "bitmap of queues
> configured for uapsd". As I read this we are ignoring setting the TIM
> for the STA if an AC queue was marked as uapsd-enabled but had
> buffered frames for it, so we'd only set the TIM if we had at least
> one AC queue that did not have uapsd enabled and had buffered frames
> pending. Is that accurate?

Almost.

First of all, we need to differentiate between delivery- and
trigger-enabled, which currently we don't. Since this only happens with
TSPEC, we're not worried about that right now, but it's good to keep it
in mind. So right now, the uapsd_queues bitmap marks those that are both
trigger- and delivery-enabled.

Now, to the TIM bit: when *all* ACs are delivery-enabled, the TIM bit
will be set from all ACs. This is the case you missed. When only some of
the ACs are delivery-enabled, the delivery-enabled ACs are ignored for
purposes of setting the TIM bit. This is what you described.

This is described in 11.2.1.5 (IIRC).

johannes

--
To unsubscribe from this list: send the line "unsubscribe linux-wireless" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html


[Index of Archives]     [Linux Host AP]     [ATH6KL]     [Linux Bluetooth]     [Linux Netdev]     [Kernel Newbies]     [Linux Kernel]     [IDE]     [Security]     [Git]     [Netfilter]     [Bugtraq]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Linux ATA RAID]     [Samba]     [Device Mapper]
  Powered by Linux