kernel/time/posix-clock.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-)
After get_clock_desc(), it should call put_clock_desc()
if timespec64_valid_strict() check fails, put it ahead to avoid this.
Fixes: d8794ac20a29 ("posix-clock: Fix missing timespec64 check in pc_clock_settime()")
Signed-off-by: Jinjie Ruan <ruanjinjie@huawei.com>
---
kernel/time/posix-clock.c | 6 +++---
1 file changed, 3 insertions(+), 3 deletions(-)
diff --git a/kernel/time/posix-clock.c b/kernel/time/posix-clock.c
index 316a4e8c97d3..1af0bb2cc45c 100644
--- a/kernel/time/posix-clock.c
+++ b/kernel/time/posix-clock.c
@@ -309,6 +309,9 @@ static int pc_clock_settime(clockid_t id, const struct timespec64 *ts)
struct posix_clock_desc cd;
int err;
+ if (!timespec64_valid_strict(ts))
+ return -EINVAL;
+
err = get_clock_desc(id, &cd);
if (err)
return err;
@@ -318,9 +321,6 @@ static int pc_clock_settime(clockid_t id, const struct timespec64 *ts)
goto out;
}
- if (!timespec64_valid_strict(ts))
- return -EINVAL;
-
if (cd.clk->ops.clock_settime)
err = cd.clk->ops.clock_settime(cd.clk, ts);
else
--
2.34.1
Hi, Jinjie Ruan <ruanjinjie@huawei.com> writes: > After get_clock_desc(), it should call put_clock_desc() > if timespec64_valid_strict() check fails, put it ahead to avoid this. Can you please rewrite the commit message so that it uses full sentences and shortly explain the problem why get/put pair is required here? For the subject I would propose to change it to: "posix-clock: Fix unbalanced locking in pc_clock_settime()'. The patch is no longer against next, as the change is already part of linus tree. The change itself looks good. Thanks, Anna-Maria
On Thu, Oct 17, 2024 at 09:32:49PM +0800, Jinjie Ruan wrote: > After get_clock_desc(), it should call put_clock_desc() > if timespec64_valid_strict() check fails, put it ahead to avoid this. > > Fixes: d8794ac20a29 ("posix-clock: Fix missing timespec64 check in pc_clock_settime()") > Signed-off-by: Jinjie Ruan <ruanjinjie@huawei.com> Nice catch! Acked-by: Richard Cochran <richardcochran@gmail.com>
© 2016 - 2024 Red Hat, Inc.