On Friday, August 22, 2014 02:08:52 PM Eric Dumazet wrote: > On Fri, 2014-08-22 at 22:38 +0200, Christian Lamparter wrote: > [...] > > From: Andreea-Cristina Bernat <bernat.ada@xxxxxxxxx> > > > > The carl9170_op_ampdu_action() function is used only by the mac80211 > > framework. Since the mac80211 already takes care of checks and > > properly serializing calls to the driver's function there is no > > need for the driver to do the same thing. > > > > --- > > @@ -1430,18 +1430,10 @@ static int carl9170_op_ampdu_action(struct ieee80211_hw *hw, > > if (!sta_info->ht_sta) > > return -EOPNOTSUPP; > > > > - rcu_read_lock(); > > - if (rcu_dereference(sta_info->agg[tid])) { > > - rcu_read_unlock(); > > - return -EBUSY; > > - } > > - > > [...] > > --- > > Sorry but this patch is not complete. > > You need to somehow return -EBUSY if sta_info->agg[tid] is set. The sta_info->agg[tid] check is not needed (for reference, see [0]). (There is already a check in mac80211 which prevents the leak of sta_info->agg[tid] [1]). Regards Christian [0] <https://lkml.org/lkml/2014/8/20/725> [1] <http://lxr.free-electrons.com/source/net/mac80211/agg-tx.c#L583> -- 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