include/linux/time64.h | 2 +- kernel/time/time.c | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-)
In ns_to_kernel_old_timeval() definition,
the function argument is defined with const identifier in kernel/time/time.c,
but the prototype in include/linux/time32.h looks different.
- The function is defined in kernel/time/time.c as below:
struct __kernel_old_timeval ns_to_kernel_old_timeval(const s64 nsec)
- The function is decalared in include/linux/time32.h as below:
extern struct __kernel_old_timeval ns_to_kernel_old_timeval(s64 nsec);
Because the variable of arithmethic types isn't modified in the calling scope,
there's no need to mark arguments as const.
And there is a review in Link[1] why it was omitted during review stage,
so they should be matched.
Likewise, we can remove the "const" keyword in both definition and declaration
of ns_to_timespec64() as it was metentined below Link[2] and Link[3].
Link[1]: https://www.mail-archive.com/linux-kernel@vger.kernel.org/msg1637458.html
Link[2]: https://lore.kernel.org/all/20220531064346.51677-1-chanho61.park@samsung.com/T/
Link[3]: https://lore.kernel.org/lkml/CAK8P3a3nknJgEDESGdJH91jMj6R_xydFqWASd8r5BbesdvMBgA@mail.gmail.com
Fixes: a84d1169164b ("y2038: Introduce struct __kernel_old_timeval")
Signed-off-by: Youngmin Nam <youngmin.nam@samsung.com>
---
include/linux/time64.h | 2 +-
kernel/time/time.c | 4 ++--
2 files changed, 3 insertions(+), 3 deletions(-)
diff --git a/include/linux/time64.h b/include/linux/time64.h
index 81b9686a2079..ee021da0966e 100644
--- a/include/linux/time64.h
+++ b/include/linux/time64.h
@@ -142,7 +142,7 @@ static inline s64 timespec64_to_ns(const struct timespec64 *ts)
*
* Returns the timespec64 representation of the nsec parameter.
*/
-extern struct timespec64 ns_to_timespec64(const s64 nsec);
+extern struct timespec64 ns_to_timespec64(s64 nsec);
/**
* timespec64_add_ns - Adds nanoseconds to a timespec64
diff --git a/kernel/time/time.c b/kernel/time/time.c
index 29923b20e0e4..526257b3727c 100644
--- a/kernel/time/time.c
+++ b/kernel/time/time.c
@@ -449,7 +449,7 @@ time64_t mktime64(const unsigned int year0, const unsigned int mon0,
}
EXPORT_SYMBOL(mktime64);
-struct __kernel_old_timeval ns_to_kernel_old_timeval(const s64 nsec)
+struct __kernel_old_timeval ns_to_kernel_old_timeval(s64 nsec)
{
struct timespec64 ts = ns_to_timespec64(nsec);
struct __kernel_old_timeval tv;
@@ -503,7 +503,7 @@ EXPORT_SYMBOL(set_normalized_timespec64);
*
* Returns the timespec64 representation of the nsec parameter.
*/
-struct timespec64 ns_to_timespec64(const s64 nsec)
+struct timespec64 ns_to_timespec64(s64 nsec)
{
struct timespec64 ts = { 0, 0 };
s32 rem;
--
2.34.0
On Tue, Jul 12, 2022 at 11:47 AM Youngmin Nam <youngmin.nam@samsung.com> wrote:
>
> In ns_to_kernel_old_timeval() definition,
> the function argument is defined with const identifier in kernel/time/time.c,
> but the prototype in include/linux/time32.h looks different.
>
> - The function is defined in kernel/time/time.c as below:
> struct __kernel_old_timeval ns_to_kernel_old_timeval(const s64 nsec)
>
> - The function is decalared in include/linux/time32.h as below:
> extern struct __kernel_old_timeval ns_to_kernel_old_timeval(s64 nsec);
>
> Because the variable of arithmethic types isn't modified in the calling scope,
> there's no need to mark arguments as const.
> And there is a review in Link[1] why it was omitted during review stage,
> so they should be matched.
>
> Likewise, we can remove the "const" keyword in both definition and declaration
> of ns_to_timespec64() as it was metentined below Link[2] and Link[3].
>
> Link[1]: https://www.mail-archive.com/linux-kernel@vger.kernel.org/msg1637458.html
> Link[2]: https://lore.kernel.org/all/20220531064346.51677-1-chanho61.park@samsung.com/T/
> Link[3]: https://lore.kernel.org/lkml/CAK8P3a3nknJgEDESGdJH91jMj6R_xydFqWASd8r5BbesdvMBgA@mail.gmail.com
> Fixes: a84d1169164b ("y2038: Introduce struct __kernel_old_timeval")
> Signed-off-by: Youngmin Nam <youngmin.nam@samsung.com>
Reviewed-by: Arnd Bergmann <arnd@arndb.de>
Hi Jone, Thomas.
Could you consider applying this patch ?
Thanks
On Tue, Jul 12, 2022 at 11:25:22AM +0200, Arnd Bergmann wrote:
> On Tue, Jul 12, 2022 at 11:47 AM Youngmin Nam <youngmin.nam@samsung.com> wrote:
> >
> > In ns_to_kernel_old_timeval() definition,
> > the function argument is defined with const identifier in kernel/time/time.c,
> > but the prototype in include/linux/time32.h looks different.
> >
> > - The function is defined in kernel/time/time.c as below:
> > struct __kernel_old_timeval ns_to_kernel_old_timeval(const s64 nsec)
> >
> > - The function is decalared in include/linux/time32.h as below:
> > extern struct __kernel_old_timeval ns_to_kernel_old_timeval(s64 nsec);
> >
> > Because the variable of arithmethic types isn't modified in the calling scope,
> > there's no need to mark arguments as const.
> > And there is a review in Link[1] why it was omitted during review stage,
> > so they should be matched.
> >
> > Likewise, we can remove the "const" keyword in both definition and declaration
> > of ns_to_timespec64() as it was metentined below Link[2] and Link[3].
> >
> > Link[1]: https://www.mail-archive.com/linux-kernel@vger.kernel.org/msg1637458.html
> > Link[2]: https://lore.kernel.org/all/20220531064346.51677-1-chanho61.park@samsung.com/T/
> > Link[3]: https://lore.kernel.org/lkml/CAK8P3a3nknJgEDESGdJH91jMj6R_xydFqWASd8r5BbesdvMBgA@mail.gmail.com
> > Fixes: a84d1169164b ("y2038: Introduce struct __kernel_old_timeval")
> > Signed-off-by: Youngmin Nam <youngmin.nam@samsung.com>
>
> Reviewed-by: Arnd Bergmann <arnd@arndb.de>
>
The following commit has been merged into the timers/urgent branch of tip:
Commit-ID: 46dae32fe625a75f549c3a70edc77b778197bb05
Gitweb: https://git.kernel.org/tip/46dae32fe625a75f549c3a70edc77b778197bb05
Author: Youngmin Nam <youngmin.nam@samsung.com>
AuthorDate: Tue, 12 Jul 2022 18:47:15 +09:00
Committer: Thomas Gleixner <tglx@linutronix.de>
CommitterDate: Tue, 09 Aug 2022 20:02:13 +02:00
time: Correct the prototype of ns_to_kernel_old_timeval and ns_to_timespec64
In ns_to_kernel_old_timeval() definition, the function argument is defined
with const identifier in kernel/time/time.c, but the prototype in
include/linux/time32.h looks different.
- The function is defined in kernel/time/time.c as below:
struct __kernel_old_timeval ns_to_kernel_old_timeval(const s64 nsec)
- The function is decalared in include/linux/time32.h as below:
extern struct __kernel_old_timeval ns_to_kernel_old_timeval(s64 nsec);
Because the variable of arithmethic types isn't modified in the calling scope,
there's no need to mark arguments as const, which was already mentioned during
review (Link[1) of the original patch.
Likewise remove the "const" keyword in both definition and declaration of
ns_to_timespec64() as requested by Arnd (Link[2]).
Fixes: a84d1169164b ("y2038: Introduce struct __kernel_old_timeval")
Signed-off-by: Youngmin Nam <youngmin.nam@samsung.com>
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Reviewed-by: Arnd Bergmann <arnd@arndb.de>
Link: https://lore.kernel.org/all/20220712094715.2918823-1-youngmin.nam@samsung.com
Link[1]: https://lore.kernel.org/all/20180310081123.thin6wphgk7tongy@gmail.com/
Link[2]: https://lore.kernel.org/all/CAK8P3a3nknJgEDESGdJH91jMj6R_xydFqWASd8r5BbesdvMBgA@mail.gmail.com/
---
include/linux/time64.h | 2 +-
kernel/time/time.c | 4 ++--
2 files changed, 3 insertions(+), 3 deletions(-)
diff --git a/include/linux/time64.h b/include/linux/time64.h
index 2fb8232..f1bcea8 100644
--- a/include/linux/time64.h
+++ b/include/linux/time64.h
@@ -145,7 +145,7 @@ static inline s64 timespec64_to_ns(const struct timespec64 *ts)
*
* Returns the timespec64 representation of the nsec parameter.
*/
-extern struct timespec64 ns_to_timespec64(const s64 nsec);
+extern struct timespec64 ns_to_timespec64(s64 nsec);
/**
* timespec64_add_ns - Adds nanoseconds to a timespec64
diff --git a/kernel/time/time.c b/kernel/time/time.c
index 29923b2..526257b 100644
--- a/kernel/time/time.c
+++ b/kernel/time/time.c
@@ -449,7 +449,7 @@ time64_t mktime64(const unsigned int year0, const unsigned int mon0,
}
EXPORT_SYMBOL(mktime64);
-struct __kernel_old_timeval ns_to_kernel_old_timeval(const s64 nsec)
+struct __kernel_old_timeval ns_to_kernel_old_timeval(s64 nsec)
{
struct timespec64 ts = ns_to_timespec64(nsec);
struct __kernel_old_timeval tv;
@@ -503,7 +503,7 @@ EXPORT_SYMBOL(set_normalized_timespec64);
*
* Returns the timespec64 representation of the nsec parameter.
*/
-struct timespec64 ns_to_timespec64(const s64 nsec)
+struct timespec64 ns_to_timespec64(s64 nsec)
{
struct timespec64 ts = { 0, 0 };
s32 rem;
© 2016 - 2026 Red Hat, Inc.