From: Jisheng Zhang <jszhang@kernel.org>
To: Sebastian Andrzej Siewior <bigeasy@linutronix.de>,
Thomas Gleixner <tglx@linutronix.de>,
Paul Walmsley <paul.walmsley@sifive.com>,
Palmer Dabbelt <palmer@dabbelt.com>,
Albert Ou <aou@eecs.berkeley.edu>
Cc: linux-riscv@lists.infradead.org, tobias.schaffner@siemens.com,
Arnd Bergmann <arnd@arndb.de>,
Conor Dooley <conor.dooley@microchip.com>
Subject: [PATCH RT v2 1/2] riscv: add PREEMPT_AUTO support
Date: Tue, 31 Oct 2023 22:35:20 +0800 [thread overview]
Message-ID: <20231031143521.441-2-jszhang@kernel.org> (raw)
In-Reply-To: <20231031143521.441-1-jszhang@kernel.org>
riscv has switched to GENERIC_ENTRY, so adding PREEMPT_AUTO is as simple
as adding TIF_ARCH_RESCHED_LAZY related definitions and enabling
HAVE_PREEMPT_AUTO.
Signed-off-by: Jisheng Zhang <jszhang@kernel.org>
---
arch/riscv/Kconfig | 1 +
arch/riscv/include/asm/thread_info.h | 2 ++
2 files changed, 3 insertions(+)
diff --git a/arch/riscv/Kconfig b/arch/riscv/Kconfig
index d607ab0f7c6d..5f43b82691fc 100644
--- a/arch/riscv/Kconfig
+++ b/arch/riscv/Kconfig
@@ -135,6 +135,7 @@ config RISCV
select HAVE_PERF_USER_STACK_DUMP
select HAVE_POSIX_CPU_TIMERS_TASK_WORK
select HAVE_PREEMPT_DYNAMIC_KEY if !XIP_KERNEL
+ select HAVE_PREEMPT_AUTO
select HAVE_REGS_AND_STACK_ACCESS_API
select HAVE_RETHOOK if !XIP_KERNEL
select HAVE_RSEQ
diff --git a/arch/riscv/include/asm/thread_info.h b/arch/riscv/include/asm/thread_info.h
index 1833beb00489..c5aebcdafd7b 100644
--- a/arch/riscv/include/asm/thread_info.h
+++ b/arch/riscv/include/asm/thread_info.h
@@ -85,6 +85,7 @@ int arch_dup_task_struct(struct task_struct *dst, struct task_struct *src);
* - pending work-to-be-done flags are in lowest half-word
* - other flags in upper half-word(s)
*/
+#define TIF_ARCH_RESCHED_LAZY 0 /* Lazy rescheduling */
#define TIF_NOTIFY_RESUME 1 /* callback before returning to user */
#define TIF_SIGPENDING 2 /* signal pending */
#define TIF_NEED_RESCHED 3 /* rescheduling necessary */
@@ -99,6 +100,7 @@ int arch_dup_task_struct(struct task_struct *dst, struct task_struct *src);
#define _TIF_NEED_RESCHED (1 << TIF_NEED_RESCHED)
#define _TIF_NOTIFY_SIGNAL (1 << TIF_NOTIFY_SIGNAL)
#define _TIF_UPROBE (1 << TIF_UPROBE)
+#define _TIF_ARCH_RESCHED_LAZY (1 << TIF_ARCH_RESCHED_LAZY)
#define _TIF_WORK_MASK \
(_TIF_NOTIFY_RESUME | _TIF_SIGPENDING | _TIF_NEED_RESCHED | \
--
2.40.1
_______________________________________________
linux-riscv mailing list
linux-riscv@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-riscv
next prev parent reply other threads:[~2023-10-31 14:47 UTC|newest]
Thread overview: 21+ messages / expand[flat|nested] mbox.gz Atom feed top
2023-10-31 14:35 [PATCH RT v2 0/3] riscv: add PREEMPT_RT support Jisheng Zhang
2023-10-31 14:35 ` Jisheng Zhang [this message]
2023-10-31 14:35 ` [PATCH RT v2 2/2] riscv: allow to enable RT Jisheng Zhang
2023-10-31 15:32 ` [PATCH RT v2 0/3] riscv: add PREEMPT_RT support Sebastian Andrzej Siewior
2023-10-31 15:49 ` Jisheng Zhang
2023-10-31 16:44 ` Sebastian Andrzej Siewior
2023-11-01 11:41 ` Jisheng Zhang
2023-11-02 12:31 ` Conor Dooley
2023-11-02 15:54 ` Sebastian Andrzej Siewior
2023-11-02 17:03 ` Jisheng Zhang
2023-11-02 21:37 ` Palmer Dabbelt
2023-11-03 8:17 ` Sebastian Andrzej Siewior
2023-11-03 8:14 ` Conor Dooley
2023-11-03 8:24 ` Sebastian Andrzej Siewior
2023-11-03 17:19 ` Evan Green
2023-11-03 17:39 ` Sebastian Andrzej Siewior
2023-11-03 18:22 ` Evan Green
2023-11-06 8:53 ` Sebastian Andrzej Siewior
2023-11-06 16:25 ` Evan Green
2023-11-06 21:58 ` Palmer Dabbelt
2023-11-10 15:37 ` Sebastian Andrzej Siewior
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=20231031143521.441-2-jszhang@kernel.org \
--to=jszhang@kernel.org \
--cc=aou@eecs.berkeley.edu \
--cc=arnd@arndb.de \
--cc=bigeasy@linutronix.de \
--cc=conor.dooley@microchip.com \
--cc=linux-riscv@lists.infradead.org \
--cc=palmer@dabbelt.com \
--cc=paul.walmsley@sifive.com \
--cc=tglx@linutronix.de \
--cc=tobias.schaffner@siemens.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.