[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-Id: <20201001205141.8885-2-erez.geva.ext@siemens.com>
Date: Thu, 1 Oct 2020 22:51:35 +0200
From: Erez Geva <erez.geva.ext@...mens.com>
To: linux-kernel@...r.kernel.org, netdev@...r.kernel.org,
Cong Wang <xiyou.wangcong@...il.com>,
"David S . Miller" <davem@...emloft.net>,
Jakub Kicinski <kuba@...nel.org>,
Jamal Hadi Salim <jhs@...atatu.com>,
Jiri Pirko <jiri@...nulli.us>, Andrei Vagin <avagin@...il.com>,
Dmitry Safonov <0x7f454c46@...il.com>,
"Eric W . Biederman" <ebiederm@...ssion.com>,
Ingo Molnar <mingo@...nel.org>,
John Stultz <john.stultz@...aro.org>,
Michal Kubecek <mkubecek@...e.cz>,
Oleg Nesterov <oleg@...hat.com>,
Peter Zijlstra <peterz@...radead.org>,
Richard Cochran <richardcochran@...il.com>,
Stephen Boyd <sboyd@...nel.org>,
Thomas Gleixner <tglx@...utronix.de>,
Vladis Dronov <vdronov@...hat.com>,
Sebastian Andrzej Siewior <bigeasy@...utronix.de>,
Frederic Weisbecker <frederic@...nel.org>,
Eric Dumazet <edumazet@...gle.com>
Cc: Jesus Sanchez-Palencia <jesus.sanchez-palencia@...el.com>,
Vinicius Costa Gomes <vinicius.gomes@...el.com>,
Vedang Patel <vedang.patel@...el.com>,
Simon Sudler <simon.sudler@...mens.com>,
Andreas Meisinger <andreas.meisinger@...mens.com>,
Andreas Bucher <andreas.bucher@...mens.com>,
Henning Schild <henning.schild@...mens.com>,
Jan Kiszka <jan.kiszka@...mens.com>,
Andreas Zirkler <andreas.zirkler@...mens.com>,
Ermin Sakic <ermin.sakic@...mens.com>,
An Ninh Nguyen <anninh.nguyen@...mens.com>,
Michael Saenger <michael.saenger@...mens.com>,
Bernd Maehringer <bernd.maehringer@...mens.com>,
Gisela Greinert <gisela.greinert@...mens.com>,
Erez Geva <erez.geva.ext@...mens.com>,
Erez Geva <ErezGeva2@...il.com>
Subject: [PATCH 1/7] POSIX clock ID check function
Add function to check whether a clock ID refer to
a file descriptor of a POSIX dynamic clock.
Signed-off-by: Erez Geva <erez.geva.ext@...mens.com>
---
include/linux/posix-timers.h | 5 +++++
kernel/time/posix-timers.c | 2 +-
2 files changed, 6 insertions(+), 1 deletion(-)
diff --git a/include/linux/posix-timers.h b/include/linux/posix-timers.h
index 896c16d2c5fb..7cb551bbb763 100644
--- a/include/linux/posix-timers.h
+++ b/include/linux/posix-timers.h
@@ -57,6 +57,11 @@ static inline int clockid_to_fd(const clockid_t clk)
return ~(clk >> 3);
}
+static inline bool is_clockid_fd_clock(const clockid_t clk)
+{
+ return (clk < 0) && ((clk & CLOCKFD_MASK) == CLOCKFD);
+}
+
#ifdef CONFIG_POSIX_TIMERS
/**
diff --git a/kernel/time/posix-timers.c b/kernel/time/posix-timers.c
index bf540f5a4115..806465233303 100644
--- a/kernel/time/posix-timers.c
+++ b/kernel/time/posix-timers.c
@@ -1400,7 +1400,7 @@ static const struct k_clock *clockid_to_kclock(const clockid_t id)
clockid_t idx = id;
if (id < 0) {
- return (id & CLOCKFD_MASK) == CLOCKFD ?
+ return is_clockid_fd_clock(id) ?
&clock_posix_dynamic : &clock_posix_cpu;
}
--
2.20.1
Powered by blists - more mailing lists