summaryrefslogtreecommitdiff
path: root/net/core
diff options
context:
space:
mode:
authorEric Dumazet <eric.dumazet@gmail.com>2009-10-02 20:24:59 +0000
committerDavid S. Miller <davem@davemloft.net>2009-10-04 21:08:54 -0700
commit896a7cf8d846a9e86fb823be16f4f14ffeb7f074 (patch)
tree2260fac9cccf51938d710ab0fc74dc0fa0503a4f /net/core
parenta825e00c98a2ee37eb2a0ad93b352e79d2bc1593 (diff)
downloadkernel-common-896a7cf8d846a9e86fb823be16f4f14ffeb7f074.tar.gz
kernel-common-896a7cf8d846a9e86fb823be16f4f14ffeb7f074.tar.bz2
kernel-common-896a7cf8d846a9e86fb823be16f4f14ffeb7f074.zip
pktgen: Fix multiqueue handling
It is not currently possible to instruct pktgen to use one selected tx queue. When Robert added multiqueue support in commit 45b270f8, he added an interval (queue_map_min, queue_map_max), and his code doesnt take into account the case of min = max, to select one tx queue exactly. I suspect a high performance setup on a eight txqueue device wants to use exactly eight cpus, and assign one tx queue to each sender. This patchs makes pktgen select the right tx queue, not the first one. Also updates Documentation to reflect Robert changes. Signed-off-by: Eric Dumazet <eric.dumazet@gmail.com> Signed-off-by: Robert Olsson <robert.olsson@its.uu.se> Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'net/core')
-rw-r--r--net/core/pktgen.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/net/core/pktgen.c b/net/core/pktgen.c
index b69455217ed6..421857c8c071 100644
--- a/net/core/pktgen.c
+++ b/net/core/pktgen.c
@@ -2212,7 +2212,7 @@ static void set_cur_queue_map(struct pktgen_dev *pkt_dev)
if (pkt_dev->flags & F_QUEUE_MAP_CPU)
pkt_dev->cur_queue_map = smp_processor_id();
- else if (pkt_dev->queue_map_min < pkt_dev->queue_map_max) {
+ else if (pkt_dev->queue_map_min <= pkt_dev->queue_map_max) {
__u16 t;
if (pkt_dev->flags & F_QUEUE_MAP_RND) {
t = random32() %