On Thu, 2008-08-07 at 08:21 -0500, Larry Finger wrote: > From: Christian Lamparter <chunkeey@xxxxxx> > > For p54pci and p54usb, skb_get_queue_mapping does not work correctly for > multiple queues. > > Signed-off-by: Christian Lamparter <chunkeey@xxxxxx> > Acked by: Larry Finger <Larry.Finger@xxxxxxxxxxxx> > CC: stable@xxxxxxxxxx > --- > > Index: wireless-testing/drivers/net/wireless/p54/p54common.c > =================================================================== > --- wireless-testing.orig/drivers/net/wireless/p54/p54common.c > +++ wireless-testing/drivers/net/wireless/p54/p54common.c > @@ -413,12 +413,12 @@ static void p54_rx_frame_sent(struct iee > last_addr = range->end_addr; > __skb_unlink(entry, &priv->tx_queue); > memset(&info->status, 0, sizeof(info->status)); > - priv->tx_stats[skb_get_queue_mapping(skb)].len--; > entry_hdr = (struct p54_control_hdr *) entry->data; > entry_data = (struct p54_tx_control_allocdata *) entry_hdr->data; > if ((entry_hdr->magic1 & cpu_to_le16(0x4000)) != 0) > pad = entry_data->align[0]; > > + priv->tx_stats[le32_to_cpu(entry_data->frame_type - 4)].len--; Sorry for not catching this earlier, but this looks wrong, the -4 surely should be outside the endian conversion? johannes
Attachment:
signature.asc
Description: This is a digitally signed message part