Hi John, On Fri, 2010-05-28 at 06:22 -0700, Johannes Berg wrote: > From: Johannes Berg <johannes.berg@xxxxxxxxx> > > Processing an association response could take a bit > of time while we set up the hardware etc. During that > time, the AP might already send a blockack request. > If this happens very quickly on a fairly slow machine, > we can end up processing the blockack request before > the association processing has finished. Since the > blockack processing cannot sleep right now, we also > cannot make it wait in the driver. > > As a result, sometimes on slow machines the iwlagn > driver gets totally confused, and no traffic can pass > when the aggregation setup was done before the assoc > setup completed. > > I'm working on a proper fix for this, which involves > queuing all blockack category action frames from a > work struct, and also allowing the ampdu_action driver > callback to sleep, which will generally clean up the > code and make things easier. > > However, this is a very involved and complex change. > To fix the problem at hand in a way that can also be > backported to stable, I've come up with this patch. > Here, I simply process all aggregation action frames > from the managed interface skb queue, which means > their processing will be serialized with processing > the association response, thereby fixing the problem. > > Signed-off-by: Johannes Berg <johannes.berg@xxxxxxxxx> > Cc: stable@xxxxxxxxxx > --- Could you please consider this patch for wireless-2.6/2.6.34 ? Without this patch no data transfer is possible on some slow machines. Thank you Reinette -- 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