* [PATCH net-next] ipv4,ipv6: send arp/ndisc packets with TC_PRIO_CONTROL
@ 2013-08-14 23:34 Hannes Frederic Sowa
2013-08-15 3:56 ` Hannes Frederic Sowa
0 siblings, 1 reply; 2+ messages in thread
From: Hannes Frederic Sowa @ 2013-08-14 23:34 UTC (permalink / raw)
To: netdev; +Cc: bcrl
We already did this change for igmp/mld packets in commit
9d4a0314642918cbda9ed4012df51e8df608fce6 ("ipv4, ipv6: send igmpv3/mld
packets with TC_PRIO_CONTROL").
arp and ndisc are as important as mld/igmp for a working network, so
make the appropriate change here, too.
Cc: Benjamin LaHaise <bcrl@kvack.org>
Signed-off-by: Hannes Frederic Sowa <hannes@stressinduktion.org>
---
net/ipv4/arp.c | 2 ++
net/ipv6/ndisc.c | 3 ++-
2 files changed, 4 insertions(+), 1 deletion(-)
diff --git a/net/ipv4/arp.c b/net/ipv4/arp.c
index 4429b01..4ed18371 100644
--- a/net/ipv4/arp.c
+++ b/net/ipv4/arp.c
@@ -92,6 +92,7 @@
#include <linux/fddidevice.h>
#include <linux/if_arp.h>
#include <linux/skbuff.h>
+#include <linux/pkt_sched.h>
#include <linux/proc_fs.h>
#include <linux/seq_file.h>
#include <linux/stat.h>
@@ -594,6 +595,7 @@ struct sk_buff *arp_create(int type, int ptype, __be32 dest_ip,
skb_reset_network_header(skb);
arp = (struct arphdr *) skb_put(skb, arp_hdr_len(dev));
skb->dev = dev;
+ skb->priority = TC_PRIO_CONTROL;
skb->protocol = htons(ETH_P_ARP);
if (src_hw == NULL)
src_hw = dev->dev_addr;
diff --git a/net/ipv6/ndisc.c b/net/ipv6/ndisc.c
index 79aa965..007f868 100644
--- a/net/ipv6/ndisc.c
+++ b/net/ipv6/ndisc.c
@@ -50,6 +50,7 @@
#include <linux/ipv6.h>
#include <linux/icmpv6.h>
#include <linux/jhash.h>
+#include <linux/pkt_sched.h>
#include <net/sock.h>
#include <net/snmp.h>
@@ -382,7 +383,7 @@ static struct sk_buff *ndisc_alloc_skb(struct net_device *dev,
__func__, err);
return NULL;
}
-
+ skb->priority = TC_PRIO_CONTROL;
skb->protocol = htons(ETH_P_IPV6);
skb->dev = dev;
--
1.8.3.1
^ permalink raw reply related [flat|nested] 2+ messages in thread* Re: [PATCH net-next] ipv4,ipv6: send arp/ndisc packets with TC_PRIO_CONTROL
2013-08-14 23:34 [PATCH net-next] ipv4,ipv6: send arp/ndisc packets with TC_PRIO_CONTROL Hannes Frederic Sowa
@ 2013-08-15 3:56 ` Hannes Frederic Sowa
0 siblings, 0 replies; 2+ messages in thread
From: Hannes Frederic Sowa @ 2013-08-15 3:56 UTC (permalink / raw)
To: netdev, bcrl; +Cc: dave.taht
On Thu, Aug 15, 2013 at 01:34:12AM +0200, Hannes Frederic Sowa wrote:
> We already did this change for igmp/mld packets in commit
> 9d4a0314642918cbda9ed4012df51e8df608fce6 ("ipv4, ipv6: send igmpv3/mld
> packets with TC_PRIO_CONTROL").
>
> arp and ndisc are as important as mld/igmp for a working network, so
> make the appropriate change here, too.
>
> Cc: Benjamin LaHaise <bcrl@kvack.org>
> Signed-off-by: Hannes Frederic Sowa <hannes@stressinduktion.org>
I would like to downgrade this patch from tag net-next to RFC.
After Dave Taht talked to me, I realized that this change could have drastic
impact on how packets could starve in various qdiscs if a router is last hop
for a ping scan.
Please postpone this patch until I did more research. Comments are welcome,
too.
Thanks,
Hannes
^ permalink raw reply [flat|nested] 2+ messages in thread
end of thread, other threads:[~2013-08-15 3:56 UTC | newest]
Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2013-08-14 23:34 [PATCH net-next] ipv4,ipv6: send arp/ndisc packets with TC_PRIO_CONTROL Hannes Frederic Sowa
2013-08-15 3:56 ` Hannes Frederic Sowa
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox