diff options
author | Alexander Duyck <alexander.h.duyck@intel.com> | 2008-09-12 20:57:23 -0400 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2008-09-12 20:57:23 -0400 |
commit | f07d1501292b3b0d3276ee0e537005526a45e242 (patch) | |
tree | df132456469046ec7f71ea4ac39723450c8e3c6e /Documentation/networking | |
parent | 67333bb5679325db310bb612c1de3e6e47bb0043 (diff) |
multiq: Further multiqueue cleanup
This patch resolves a few issues found with multiq including wording
suggestions and a problem seen in the allocation of queues.
Signed-off-by: Alexander Duyck <alexander.h.duyck@intel.com>
Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'Documentation/networking')
-rw-r--r-- | Documentation/networking/multiqueue.txt | 14 |
1 files changed, 7 insertions, 7 deletions
diff --git a/Documentation/networking/multiqueue.txt b/Documentation/networking/multiqueue.txt index 8c2b06b77f61..4caa0e314cc2 100644 --- a/Documentation/networking/multiqueue.txt +++ b/Documentation/networking/multiqueue.txt | |||
@@ -29,15 +29,15 @@ Section 2: Qdisc support for multiqueue devices | |||
29 | 29 | ||
30 | ----------------------------------------------- | 30 | ----------------------------------------------- |
31 | 31 | ||
32 | Currently two qdiscs support multiqueue devices. The first is the default | 32 | Currently two qdiscs are optimized for multiqueue devices. The first is the |
33 | pfifo_fast qdisc. This qdisc supports one qdisc per hardware queue. A new | 33 | default pfifo_fast qdisc. This qdisc supports one qdisc per hardware queue. |
34 | round-robin qdisc, sch_multiq also supports multiple hardware queues. The | 34 | A new round-robin qdisc, sch_multiq also supports multiple hardware queues. The |
35 | qdisc is responsible for classifying the skb's and then directing the skb's to | 35 | qdisc is responsible for classifying the skb's and then directing the skb's to |
36 | bands and queues based on the value in skb->queue_mapping. Use this field in | 36 | bands and queues based on the value in skb->queue_mapping. Use this field in |
37 | the base driver to determine which queue to send the skb to. | 37 | the base driver to determine which queue to send the skb to. |
38 | 38 | ||
39 | sch_multiq has been added for hardware that wishes to avoid unnecessary | 39 | sch_multiq has been added for hardware that wishes to avoid head-of-line |
40 | requeuing. It will cycle though the bands and verify that the hardware queue | 40 | blocking. It will cycle though the bands and verify that the hardware queue |
41 | associated with the band is not stopped prior to dequeuing a packet. | 41 | associated with the band is not stopped prior to dequeuing a packet. |
42 | 42 | ||
43 | On qdisc load, the number of bands is based on the number of queues on the | 43 | On qdisc load, the number of bands is based on the number of queues on the |
@@ -63,8 +63,8 @@ band 1 => queue 1 | |||
63 | band 2 => queue 2 | 63 | band 2 => queue 2 |
64 | band 3 => queue 3 | 64 | band 3 => queue 3 |
65 | 65 | ||
66 | Traffic will begin flowing through each queue if your base device has either | 66 | Traffic will begin flowing through each queue based on either the simple_tx_hash |
67 | the default simple_tx_hash or a custom netdev->select_queue() defined. | 67 | function or based on netdev->select_queue() if you have it defined. |
68 | 68 | ||
69 | The behavior of tc filters remains the same. However a new tc action, | 69 | The behavior of tc filters remains the same. However a new tc action, |
70 | skbedit, has been added. Assuming you wanted to route all traffic to a | 70 | skbedit, has been added. Assuming you wanted to route all traffic to a |