[PATCH -next v5 21/22] entry: Add has_syscall_work() helepr

Jinjie Ruan posted 22 patches 2 weeks, 6 days ago
There is a newer version of this series
[PATCH -next v5 21/22] entry: Add has_syscall_work() helepr
Posted by Jinjie Ruan 2 weeks, 6 days ago
Add has_syscall_work() heleper and use it in entry.h. The benefits of
doing so lie in the fact that it can be used in the architecture code
that uses generic entry.

No functional changes.

Signed-off-by: Jinjie Ruan <ruanjinjie@huawei.com>
---
 include/linux/entry-common.h | 7 ++++++-
 1 file changed, 6 insertions(+), 1 deletion(-)

diff --git a/include/linux/entry-common.h b/include/linux/entry-common.h
index d11bdb4679b3..3bb5d7d839f4 100644
--- a/include/linux/entry-common.h
+++ b/include/linux/entry-common.h
@@ -43,6 +43,11 @@
 				 SYSCALL_WORK_SYSCALL_EXIT_TRAP	|	\
 				 ARCH_SYSCALL_WORK_EXIT)
 
+static inline bool has_syscall_work(unsigned long work)
+{
+	return unlikely(work & SYSCALL_WORK_ENTER);
+}
+
 /**
  * syscall_enter_from_user_mode_prepare - Establish state and enable interrupts
  * @regs:	Pointer to currents pt_regs
@@ -90,7 +95,7 @@ static __always_inline long syscall_enter_from_user_mode_work(struct pt_regs *re
 {
 	unsigned long work = READ_ONCE(current_thread_info()->syscall_work);
 
-	if (work & SYSCALL_WORK_ENTER)
+	if (has_syscall_work(work))
 		syscall = syscall_trace_enter(regs, syscall, work);
 
 	return syscall;
-- 
2.34.1