public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
* [PATCH 1/1] kthread: add __printf attributes
@ 2016-11-26 19:35 Nicolas Iooss
  2016-11-28 10:24 ` Petr Mladek
  0 siblings, 1 reply; 2+ messages in thread
From: Nicolas Iooss @ 2016-11-26 19:35 UTC (permalink / raw)
  To: Andrew Morton, Petr Mladek; +Cc: linux-kernel, Nicolas Iooss

When commit fbae2d44aa1d ("kthread: add kthread_create_worker*()")
introduced some kthread_create_...() functions which were taking
printf-like parametter, it introduced __printf attributes to some
functions (e.g. kthread_create_worker()). Nevertheless some new
functions were forgotten (they have been detected thanks to
-Wmissing-format-attribute warning flag).

Add the missing __printf attributes to the newly-introduced functions in
order to detect formatting issues at build-time with -Wformat flag.

Signed-off-by: Nicolas Iooss <nicolas.iooss_linux@m4x.org>
---
 include/linux/kthread.h | 2 +-
 kernel/kthread.c        | 5 +++--
 2 files changed, 4 insertions(+), 3 deletions(-)

diff --git a/include/linux/kthread.h b/include/linux/kthread.h
index a6e82a69c363..4de93a54f20b 100644
--- a/include/linux/kthread.h
+++ b/include/linux/kthread.h
@@ -174,7 +174,7 @@ __printf(2, 3)
 struct kthread_worker *
 kthread_create_worker(unsigned int flags, const char namefmt[], ...);
 
-struct kthread_worker *
+__printf(3, 4) struct kthread_worker *
 kthread_create_worker_on_cpu(int cpu, unsigned int flags,
 			     const char namefmt[], ...);
 
diff --git a/kernel/kthread.c b/kernel/kthread.c
index be2cc1f9dd57..2baf9354c5fc 100644
--- a/kernel/kthread.c
+++ b/kernel/kthread.c
@@ -244,7 +244,8 @@ static void create_kthread(struct kthread_create_info *create)
 	}
 }
 
-static struct task_struct *__kthread_create_on_node(int (*threadfn)(void *data),
+static __printf(4, 0)
+struct task_struct *__kthread_create_on_node(int (*threadfn)(void *data),
 						    void *data, int node,
 						    const char namefmt[],
 						    va_list args)
@@ -630,7 +631,7 @@ int kthread_worker_fn(void *worker_ptr)
 }
 EXPORT_SYMBOL_GPL(kthread_worker_fn);
 
-static struct kthread_worker *
+static __printf(3, 0) struct kthread_worker *
 __kthread_create_worker(int cpu, unsigned int flags,
 			const char namefmt[], va_list args)
 {
-- 
2.10.2

^ permalink raw reply related	[flat|nested] 2+ messages in thread

* Re: [PATCH 1/1] kthread: add __printf attributes
  2016-11-26 19:35 [PATCH 1/1] kthread: add __printf attributes Nicolas Iooss
@ 2016-11-28 10:24 ` Petr Mladek
  0 siblings, 0 replies; 2+ messages in thread
From: Petr Mladek @ 2016-11-28 10:24 UTC (permalink / raw)
  To: Nicolas Iooss; +Cc: Andrew Morton, linux-kernel

On Sat 2016-11-26 20:35:43, Nicolas Iooss wrote:
> When commit fbae2d44aa1d ("kthread: add kthread_create_worker*()")
> introduced some kthread_create_...() functions which were taking
> printf-like parametter, it introduced __printf attributes to some
> functions (e.g. kthread_create_worker()). Nevertheless some new
> functions were forgotten (they have been detected thanks to
> -Wmissing-format-attribute warning flag).
> 
> Add the missing __printf attributes to the newly-introduced functions in
> order to detect formatting issues at build-time with -Wformat flag.
> 
> Signed-off-by: Nicolas Iooss <nicolas.iooss_linux@m4x.org>

Thanks for the fix.

Reviewed-by: Petr Mladek <pmladek@suse.com>

> ---
>  include/linux/kthread.h | 2 +-
>  kernel/kthread.c        | 5 +++--
>  2 files changed, 4 insertions(+), 3 deletions(-)
> 
> diff --git a/include/linux/kthread.h b/include/linux/kthread.h
> index a6e82a69c363..4de93a54f20b 100644
> --- a/include/linux/kthread.h
> +++ b/include/linux/kthread.h
> @@ -174,7 +174,7 @@ __printf(2, 3)
>  struct kthread_worker *
>  kthread_create_worker(unsigned int flags, const char namefmt[], ...);
>  
> -struct kthread_worker *
> +__printf(3, 4) struct kthread_worker *
>  kthread_create_worker_on_cpu(int cpu, unsigned int flags,
>  			     const char namefmt[], ...);
>  
> diff --git a/kernel/kthread.c b/kernel/kthread.c
> index be2cc1f9dd57..2baf9354c5fc 100644
> --- a/kernel/kthread.c
> +++ b/kernel/kthread.c
> @@ -244,7 +244,8 @@ static void create_kthread(struct kthread_create_info *create)
>  	}
>  }
>  
> -static struct task_struct *__kthread_create_on_node(int (*threadfn)(void *data),
> +static __printf(4, 0)
> +struct task_struct *__kthread_create_on_node(int (*threadfn)(void *data),
>  						    void *data, int node,
>  						    const char namefmt[],
>  						    va_list args)

It would be great to update the indentation of these three lines
as well. But it is just a cosmetic problem.

Best Regards,
Petr

^ permalink raw reply	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2016-11-28 10:26 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2016-11-26 19:35 [PATCH 1/1] kthread: add __printf attributes Nicolas Iooss
2016-11-28 10:24 ` Petr Mladek

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox