42 lines
1.5 KiB
Diff
42 lines
1.5 KiB
Diff
From 38f41dbb9b916164ca83db92c6860ab954a58cd1 Mon Sep 17 00:00:00 2001
|
|
Message-Id: <38f41dbb9b916164ca83db92c6860ab954a58cd1.1601675151.git.zanussi@kernel.org>
|
|
In-Reply-To: <5b5a156f9808b1acf1205606e03da117214549ea.1601675151.git.zanussi@kernel.org>
|
|
References: <5b5a156f9808b1acf1205606e03da117214549ea.1601675151.git.zanussi@kernel.org>
|
|
From: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
|
|
Date: Sat, 27 May 2017 19:02:06 +0200
|
|
Subject: [PATCH 046/333] net/core: disable NET_RX_BUSY_POLL
|
|
MIME-Version: 1.0
|
|
Content-Type: text/plain; charset=UTF-8
|
|
Content-Transfer-Encoding: 8bit
|
|
Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.148-rt64.tar.xz
|
|
|
|
sk_busy_loop() does preempt_disable() followed by a few operations which can
|
|
take sleeping locks and may get long.
|
|
I _think_ that we could use preempt_disable_nort() (in sk_busy_loop()) instead
|
|
but after a successfull cmpxchg(&napi->state, …) we would gain the ressource
|
|
and could be scheduled out. At this point nobody knows who (which context) owns
|
|
it and so it could take a while until the state is realeased and napi_poll()
|
|
could be invoked again.
|
|
|
|
Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
|
|
---
|
|
net/Kconfig | 2 +-
|
|
1 file changed, 1 insertion(+), 1 deletion(-)
|
|
|
|
diff --git a/net/Kconfig b/net/Kconfig
|
|
index 228dfa382eec..bc8d01996f22 100644
|
|
--- a/net/Kconfig
|
|
+++ b/net/Kconfig
|
|
@@ -275,7 +275,7 @@ config CGROUP_NET_CLASSID
|
|
|
|
config NET_RX_BUSY_POLL
|
|
bool
|
|
- default y
|
|
+ default y if !PREEMPT_RT_FULL
|
|
|
|
config BQL
|
|
bool
|
|
--
|
|
2.17.1
|
|
|