diff mbox

[net-next-2.6,2/2] ip_gre: add multiqueue support

Message ID 1284712536.3391.40.camel@edumazet-laptop
State Deferred, archived
Delegated to: David Miller
Headers show

Commit Message

Eric Dumazet Sept. 17, 2010, 8:35 a.m. UTC
Enable multiqueue support for non fallback GRE tunnels.

# ip link add gre34 txqueues 8 type gre remote A.B.C.D

Signed-off-by: Eric Dumazet <eric.dumazet@gmail.com>
---
 net/ipv4/ip_gre.c |    5 ++++-
 1 file changed, 4 insertions(+), 1 deletion(-)



--
To unsubscribe from this list: send the line "unsubscribe netdev" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
diff mbox

Patch

diff --git a/net/ipv4/ip_gre.c b/net/ipv4/ip_gre.c
index fc20e68..c708a25 100644
--- a/net/ipv4/ip_gre.c
+++ b/net/ipv4/ip_gre.c
@@ -664,7 +664,8 @@  static netdev_tx_t ipgre_tunnel_xmit(struct sk_buff *skb, struct net_device *dev
 {
 	struct ip_tunnel *tunnel = netdev_priv(dev);
 	struct net_device_stats *stats = &dev->stats;
-	struct netdev_queue *txq = netdev_get_tx_queue(dev, 0);
+	int n = skb_get_queue_mapping(skb);
+	struct netdev_queue *txq = netdev_get_tx_queue(dev, n);
 	struct iphdr  *old_iph = ip_hdr(skb);
 	struct iphdr  *tiph;
 	u8     tos;
@@ -1490,6 +1491,8 @@  static int ipgre_newlink(struct net *src_net, struct net_device *dev, struct nla
 	if (!tb[IFLA_MTU])
 		dev->mtu = mtu;
 
+	dev->real_num_tx_queues = dev->num_tx_queues;
+
 	err = register_netdevice(dev);
 	if (err)
 		goto out;