From: Emanuele Rocca <ema@debian.org>
To: Mike Galbraith <efault@gmx.de>
Cc: linux-kernel@vger.kernel.org, Michal Hocko <mhocko@suse.com>
Subject: Re: Runtime overhead of PREEMPT_DYNAMIC
Date: Fri, 20 Oct 2023 15:40:42 +0200 [thread overview]
Message-ID: <ZTKDWnLrSnPs9VUi@ariel> (raw)
In-Reply-To: <7a818250a8f36476f13b57a172fdb1ab23645edc.camel@gmx.de>
Hi Mike,
On 2023-10-20 02:42, Mike Galbraith wrote:
> It's kinda hard to imagine the author's mailbox surviving submission
> day were it _that_ horrid, surely something is amiss.
Thanks for trying to reproduce! Let's see if we can find out what's
wrong in my setup then.
> voluntary (my usual)
> CONFIG_PREEMPT_VOLUNTARY_BUILD=y
> # CONFIG_PREEMPT_NONE is not set
> CONFIG_PREEMPT_VOLUNTARY=y
> # CONFIG_PREEMPT is not set
> # CONFIG_PREEMPT_DYNAMIC is not set
>
> dynamic (same config, just flip dynamic switch)
> CONFIG_PREEMPT_BUILD=y
> # CONFIG_PREEMPT_NONE is not set
> CONFIG_PREEMPT_VOLUNTARY=y
> # CONFIG_PREEMPT is not set
> CONFIG_PREEMPT_COUNT=y
> CONFIG_PREEMPTION=y
> CONFIG_PREEMPT_DYNAMIC=y
Here is the full diff between the kernel configurations I used. The only
change I made was setting CONFIG_PREEMPT_DYNAMIC=n, everything else was
a consequence of that AFAICT, but please do let me know if you see
anything that shouldn't be there.
--- config-6.5.0-0.preempt-dynamic-amd64 2023-10-11 15:30:02.000000000 +0200
+++ config-6.5.0-0.a.test-amd64 2023-10-11 14:30:02.000000000 +0200
@@ -125,13 +125,11 @@
CONFIG_BPF_LSM=y
# end of BPF subsystem
-CONFIG_PREEMPT_BUILD=y
+CONFIG_PREEMPT_VOLUNTARY_BUILD=y
# CONFIG_PREEMPT_NONE is not set
CONFIG_PREEMPT_VOLUNTARY=y
# CONFIG_PREEMPT is not set
-CONFIG_PREEMPT_COUNT=y
-CONFIG_PREEMPTION=y
-CONFIG_PREEMPT_DYNAMIC=y
+# CONFIG_PREEMPT_DYNAMIC is not set
# CONFIG_SCHED_CORE is not set
#
@@ -156,11 +154,9 @@
# RCU Subsystem
#
CONFIG_TREE_RCU=y
-CONFIG_PREEMPT_RCU=y
# CONFIG_RCU_EXPERT is not set
CONFIG_TREE_SRCU=y
CONFIG_TASKS_RCU_GENERIC=y
-CONFIG_TASKS_RCU=y
CONFIG_TASKS_RUDE_RCU=y
CONFIG_TASKS_TRACE_RCU=y
CONFIG_RCU_STALL_COMMON=y
@@ -1009,7 +1005,11 @@
CONFIG_PREEMPT_NOTIFIERS=y
CONFIG_PADATA=y
CONFIG_ASN1=y
-CONFIG_UNINLINE_SPIN_UNLOCK=y
+CONFIG_INLINE_SPIN_UNLOCK_IRQ=y
+CONFIG_INLINE_READ_UNLOCK=y
+CONFIG_INLINE_READ_UNLOCK_IRQ=y
+CONFIG_INLINE_WRITE_UNLOCK=y
+CONFIG_INLINE_WRITE_UNLOCK_IRQ=y
CONFIG_ARCH_SUPPORTS_ATOMIC_RMW=y
CONFIG_MUTEX_SPIN_ON_OWNER=y
CONFIG_RWSEM_SPIN_ON_OWNER=y
@@ -5395,7 +5395,6 @@
CONFIG_MEDIA_CEC_SUPPORT=y
# CONFIG_CEC_CH7322 is not set
# CONFIG_CEC_CROS_EC is not set
-# CONFIG_CEC_GPIO is not set
CONFIG_CEC_SECO=m
# CONFIG_CEC_SECO_RC is not set
CONFIG_USB_PULSE8_CEC=m
@@ -10597,7 +10596,6 @@
# end of Scheduler Debugging
# CONFIG_DEBUG_TIMEKEEPING is not set
-CONFIG_DEBUG_PREEMPT=y
#
# Lock Debugging (spinlocks, mutexes, etc...)
@@ -10696,7 +10694,6 @@
# CONFIG_FUNCTION_PROFILER is not set
CONFIG_STACK_TRACER=y
# CONFIG_IRQSOFF_TRACER is not set
-# CONFIG_PREEMPT_TRACER is not set
# CONFIG_SCHED_TRACER is not set
# CONFIG_HWLAT_TRACER is not set
# CONFIG_OSNOISE_TRACER is not set
next prev parent reply other threads:[~2023-10-20 13:38 UTC|newest]
Thread overview: 6+ messages / expand[flat|nested] mbox.gz Atom feed top
2023-10-20 9:14 Runtime overhead of PREEMPT_DYNAMIC Emanuele Rocca
2023-10-20 12:42 ` Mike Galbraith
2023-10-20 13:40 ` Emanuele Rocca [this message]
2023-10-20 14:11 ` Mike Galbraith
2023-10-20 14:34 ` Mike Galbraith
2023-10-20 14:45 ` Emanuele Rocca
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=ZTKDWnLrSnPs9VUi@ariel \
--to=ema@debian.org \
--cc=efault@gmx.de \
--cc=linux-kernel@vger.kernel.org \
--cc=mhocko@suse.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.