On Thursday 27 November 2008 01:15:57 Larry Finger wrote: > > diff -Nurp a/drivers/net/wireless/p54/p54common.c b/drivers/net/wireless/p54/p54common.c > > --- a/drivers/net/wireless/p54/p54common.c 2008-11-24 21:05:42.590287518 +0100 > > +++ b/drivers/net/wireless/p54/p54common.c 2008-11-24 22:06:13.951266225 +0100 > > @@ -843,6 +863,8 @@ static int p54_assign_address(struct iee > > > > spin_lock_irqsave(&priv->tx_queue.lock, flags); > > left = skb_queue_len(&priv->tx_queue); > > + if (left > 30) > > + return -ENOMEM; > > The above returns with tx_queue.lock still set. Oops, this piece should be in another patch. So, ok it's gone now. > --snip-- > > + } > > + } > > + > > + mutex_lock(&priv->conf_mutex); > > + skb = p54_alloc_skb(dev, P54_HDR_FLAG_CONTROL_OPSET, sizeof(*rxkey) + > > + sizeof(struct p54_hdr), P54_CONTROL_TYPE_RX_KEYCACHE, > > + GFP_ATOMIC); > > + if (!skb) { > > + mutex_unlock(&priv->conf_mutex); > > + return -ENOMEM; > > + } > > + > > + rxkey = (struct p54_keycache *)skb_put(skb, sizeof(*rxkey)); > > + rxkey->entry = cpu_to_le16(key->keyidx); > > + rxkey->key_id = cpu_to_le16(key->keyidx); > > Sparse objects to the above two statments because key->keyidx is of type s8, and > both rxkey->entry and rxkey->key_id are of type u8. A conversion to le16 is not > needed. > > A patch for both problems is below: Thanks... I guess the final RFT/RFC will be ready on friday/saturday. there are a two outstanding issues: - do we need to swap CCMP's IV as well? - does MIC failure & replay detection work? (or did you test that, when you were working with TKIP?) Regards, Chr -- 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