diff options
-rw-r--r-- | patches/net-dev-always-take-qdisc-s-busylock-in-__dev_xmit_s.patch | 37 | ||||
-rw-r--r-- | patches/series | 3 |
2 files changed, 2 insertions, 38 deletions
diff --git a/patches/net-dev-always-take-qdisc-s-busylock-in-__dev_xmit_s.patch b/patches/net-dev-always-take-qdisc-s-busylock-in-__dev_xmit_s.patch deleted file mode 100644 index 7587708ea2f9e1..00000000000000 --- a/patches/net-dev-always-take-qdisc-s-busylock-in-__dev_xmit_s.patch +++ /dev/null @@ -1,37 +0,0 @@ -From 6e3be85b547b6f2b5e1740acf874b95b6721d873 Mon Sep 17 00:00:00 2001 -From: Sebastian Andrzej Siewior <bigeasy@linutronix.de> -Date: Wed, 30 Mar 2016 13:36:29 +0200 -Subject: [PATCH] net: dev: always take qdisc's busylock in __dev_xmit_skb() - -The root-lock is dropped before dev_hard_start_xmit() is invoked and after -setting the __QDISC___STATE_RUNNING bit. If this task is now pushed away -by a task with a higher priority then the task with the higher priority -won't be able to submit packets to the NIC directly instead they will be -enqueued into the Qdisc. The NIC will remain idle until the task(s) with -higher priority leave the CPU and the task with lower priority gets back -and finishes the job. - -If we take always the busylock we ensure that the RT task can boost the -low-prio task and submit the packet. - -Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de> - -diff --git a/net/core/dev.c b/net/core/dev.c -index b1e7a30b0cdf..aff6965fe941 100644 ---- a/net/core/dev.c -+++ b/net/core/dev.c -@@ -3084,7 +3084,11 @@ static inline int __dev_xmit_skb(struct sk_buff *skb, struct Qdisc *q, - * This permits qdisc->running owner to get the lock more - * often and dequeue packets faster. - */ -+#ifdef CONFIG_PREEMPT_RT_FULL -+ contended = true; -+#else - contended = qdisc_is_running(q); -+#endif - if (unlikely(contended)) - spin_lock(&q->busylock); - --- -2.5.0 - diff --git a/patches/series b/patches/series index 7e04717346b35f..285bb41cd5450c 100644 --- a/patches/series +++ b/patches/series @@ -430,7 +430,8 @@ skbufhead-raw-lock.patch net-core-cpuhotplug-drain-input_pkt_queue-lockless.patch net-move-xmit_recursion-to-per-task-variable-on-RT.patch net-provide-a-way-to-delegate-processing-a-softirq-t.patch -net-dev-always-take-qdisc-s-busylock-in-__dev_xmit_s.patch +# not valid after mainline commit f9eb8aea2a1e seqcount addition +# net-dev-always-take-qdisc-s-busylock-in-__dev_xmit_s.patch net-add-back-the-missing-serialization-in-ip_send_un.patch net-add-a-lock-around-icmp_sk.patch |