From: Ivo van Doorn <ivdoorn@gmail.com>
To: Ron Rindjunsky <ron.rindjunsky@intel.com>
Cc: linville@tuxdriver.com, johannes@sipsolutions.net,
linux-wireless@vger.kernel.org, tomas.winkler@intel.com,
root <root@localhost.localdomain>
Subject: Re: [RFC] mac80211: handling Qdisc issues
Date: Thu, 6 Mar 2008 19:02:32 +0100 [thread overview]
Message-ID: <200803061902.33865.IvDoorn@gmail.com> (raw)
In-Reply-To: <1204822307-5111-1-git-send-email-ron.rindjunsky@intel.com>
Hi,
For the rt2x00 driver part of this patch I agree, it can be cleaned up here and there,
but that is something I will do after this patch is applied.
> diff --git a/drivers/net/wireless/rt2x00/rt2x00pci.c b/drivers/net/wireless/rt2x00/rt2x00pci.c
> index 1960d93..54dbd74 100644
> --- a/drivers/net/wireless/rt2x00/rt2x00pci.c
> +++ b/drivers/net/wireless/rt2x00/rt2x00pci.c
> @@ -53,7 +53,7 @@ int rt2x00pci_write_tx_data(struct rt2x00_dev *rt2x00dev,
> ERROR(rt2x00dev,
> "Arrived at non-free entry in the non-full queue %d.\n"
> "Please file bug report to %s.\n",
> - control->queue, DRV_PROJECT);
> + skb_get_queue_mapping(skb), DRV_PROJECT);
> return -EINVAL;
> }
>
> @@ -68,7 +68,10 @@ int rt2x00pci_write_tx_data(struct rt2x00_dev *rt2x00dev,
> skbdesc->entry = entry;
>
> memcpy(priv_tx->data, skb->data, skb->len);
> - rt2x00lib_write_tx_desc(rt2x00dev, skb, control);
> +#if TODO
> +Is this correct??
> +#endif
> + rt2x00lib_write_tx_desc(rt2x00dev, skb, control, queue->qid);
This is incorrect, even though it theoretically would work.
The qid != queue number, for most TX queues the value will be the same,
but the meaning of the field is different.
Resolving this issue will also be something I can fix relatively fast after this
patch is accepted and applied to wireless-testing.
> rt2x00queue_index_inc(queue, Q_INDEX);
>
> @@ -175,10 +178,13 @@ void rt2x00pci_txdone(struct rt2x00_dev *rt2x00dev, struct queue_entry *entry,
> * If the data queue was full before the txdone handler
> * we must make sure the packet queue in the mac80211 stack
> * is reenabled when the txdone handler has finished.
> + *
> + * XXX: Is this correct wrt. the queue number?
> */
> +#if TODO
> +#endif
> if (!rt2x00queue_full(entry->queue))
> - ieee80211_wake_queue(rt2x00dev->hw, priv_tx->control.queue);
> -
> + ieee80211_wake_queue(rt2x00dev->hw, entry->queue->qid);
> }
> EXPORT_SYMBOL_GPL(rt2x00pci_txdone);
See above.
> diff --git a/drivers/net/wireless/rt2x00/rt2x00usb.c b/drivers/net/wireless/rt2x00/rt2x00usb.c
> index 063b167..604e64c 100644
> --- a/drivers/net/wireless/rt2x00/rt2x00usb.c
> +++ b/drivers/net/wireless/rt2x00/rt2x00usb.c
> @@ -164,9 +164,13 @@ static void rt2x00usb_interrupt_txdone(struct urb *urb)
> * If the data queue was full before the txdone handler
> * we must make sure the packet queue in the mac80211 stack
> * is reenabled when the txdone handler has finished.
> + *
> + * XXX: Is this correct wrt. the queue number?
> */
> +#if TODO
> +#endif
> if (!rt2x00queue_full(entry->queue))
> - ieee80211_wake_queue(rt2x00dev->hw, priv_tx->control.queue);
> + ieee80211_wake_queue(rt2x00dev->hw, entry->queue->qid);
> }
See above.
> int rt2x00usb_write_tx_data(struct rt2x00_dev *rt2x00dev,
> @@ -186,7 +190,7 @@ int rt2x00usb_write_tx_data(struct rt2x00_dev *rt2x00dev,
> ERROR(rt2x00dev,
> "Arrived at non-free entry in the non-full queue %d.\n"
> "Please file bug report to %s.\n",
> - control->queue, DRV_PROJECT);
> + skb_get_queue_mapping(skb), DRV_PROJECT);
> return -EINVAL;
> }
>
> @@ -206,7 +210,8 @@ int rt2x00usb_write_tx_data(struct rt2x00_dev *rt2x00dev,
> skbdesc->desc_len = queue->desc_size;
> skbdesc->entry = entry;
>
> - rt2x00lib_write_tx_desc(rt2x00dev, skb, control);
> + rt2x00lib_write_tx_desc(rt2x00dev, skb, control,
> + skb_get_queue_mapping(skb));
>
> /*
> * USB devices cannot blindly pass the skb->len as the
next prev parent reply other threads:[~2008-03-06 18:13 UTC|newest]
Thread overview: 18+ messages / expand[flat|nested] mbox.gz Atom feed top
2008-03-06 16:51 [RFC] mac80211: handling Qdisc issues Ron Rindjunsky
2008-03-06 17:15 ` Michael Buesch
2008-03-06 17:20 ` Johannes Berg
2008-03-06 17:30 ` Michael Buesch
2008-03-06 17:42 ` Johannes Berg
2008-03-06 18:21 ` Michael Buesch
2008-03-06 18:02 ` Ivo van Doorn [this message]
2008-03-06 18:06 ` Johannes Berg
2008-03-06 18:27 ` Ivo van Doorn
2008-03-06 18:47 ` Johannes Berg
2008-03-09 11:43 ` Ron Rindjunsky
2008-03-09 20:33 ` Johannes Berg
2008-03-11 16:54 ` Luis R. Rodriguez
2008-03-23 9:26 ` Ron Rindjunsky
2008-03-23 12:10 ` Johannes Berg
2008-03-25 13:00 ` Johannes Berg
[not found] ` <1879838866982C46A9CB3D56BA49ADEB04B41299@hasmsx411.ger.corp.intel.com>
[not found] ` <1206623412.22530.46.camel@johannes.berg>
[not found] ` <1879838866982C46A9CB3D56BA49ADEB04B42158@hasmsx411.ger.corp.intel.com>
[not found] ` <1208426282.4066.3.camel@johannes.berg>
[not found] ` <1879838866982C46A9CB3D56BA49ADEB04CCE9C4@hasmsx411.ger.corp.intel.com>
[not found] ` <C07C4589BE74A34981C3C3525EE1F80103BAF061@hasmsx412.ger.corp.intel.com>
[not found] ` <1208469393.4066.92.camel@johannes.berg>
[not found] ` <C07C4589BE74A34981C3C3525EE1F80103BF5D59@hasmsx412.ger.corp.intel.com>
[not found] ` <1209027037.3357.39.camel@johannes.berg>
[not found] ` <1879838866982C46A9CB3D56BA49ADEB04D09D98@hasmsx411.ger.corp.intel.com>
2008-04-26 16:02 ` Johannes Berg
2008-04-27 8:10 ` Ron Rindjunsky
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=200803061902.33865.IvDoorn@gmail.com \
--to=ivdoorn@gmail.com \
--cc=johannes@sipsolutions.net \
--cc=linux-wireless@vger.kernel.org \
--cc=linville@tuxdriver.com \
--cc=ron.rindjunsky@intel.com \
--cc=root@localhost.localdomain \
--cc=tomas.winkler@intel.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.