Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > linux.kernel > #1579813 > unrolled thread

[PATCH] [TRIVIAL] kasan: Add a prototype of task_struct to avoid warning

Started byMasami Hiramatsu <mhiramat@kernel.org>
First post2017-02-13 15:30 +0100
Last post2017-02-14 01:30 +0100
Articles 2 — 1 participant

Back to article view | Back to linux.kernel


Contents

  [PATCH] [TRIVIAL] kasan: Add a prototype of task_struct to avoid warning Masami Hiramatsu <mhiramat@kernel.org> - 2017-02-13 15:30 +0100
    Re: [PATCH] [TRIVIAL] kasan: Add a prototype of task_struct to  avoid warning Masami Hiramatsu <mhiramat@kernel.org> - 2017-02-14 01:30 +0100

#1579813 — [PATCH] [TRIVIAL] kasan: Add a prototype of task_struct to avoid warning

FromMasami Hiramatsu <mhiramat@kernel.org>
Date2017-02-13 15:30 +0100
Subject[PATCH] [TRIVIAL] kasan: Add a prototype of task_struct to avoid warning
Message-ID<tapND-4Q3-7@gated-at.bofh.it>
Add a prototype of task_struct to fix below warning on arm64.

  CC      arch/arm64/kernel/probes/kprobes.o
In file included from /tmp/linux/arch/arm64/kernel/probes/kprobes.c:19:0:
/tmp/linux/include/linux/kasan.h:81:53: warning: 'struct task_struct' declared inside parameter list will not be visible outside of this definition or declaration
 static inline void kasan_unpoison_task_stack(struct task_struct *task) {}
                                                     ^~~~~~~~~~~
As same as other types (kmem_cache, page, and vm_struct)
this adds a prototype of task_struct data structure on
top of kasan.h.

Signed-off-by: Masami Hiramatsu <mhiramat@kernel.org>
Cc: Andrey Ryabinin <aryabinin@virtuozzo.com>
Cc: Alexander Potapenko <glider@google.com>
Cc: Dmitry Vyukov <dvyukov@google.com>
---
 include/linux/kasan.h |    1 +
 1 file changed, 1 insertion(+)

diff --git a/include/linux/kasan.h b/include/linux/kasan.h
index 820c0ad..c9df9e1 100644
--- a/include/linux/kasan.h
+++ b/include/linux/kasan.h
@@ -7,6 +7,7 @@
 struct kmem_cache;
 struct page;
 struct vm_struct;
+struct task_struct;
 
 #ifdef CONFIG_KASAN
 

[toc] | [next] | [standalone]


#1580162 — Re: [PATCH] [TRIVIAL] kasan: Add a prototype of task_struct to avoid warning

FromMasami Hiramatsu <mhiramat@kernel.org>
Date2017-02-14 01:30 +0100
SubjectRe: [PATCH] [TRIVIAL] kasan: Add a prototype of task_struct to avoid warning
Message-ID<tazah-2DY-5@gated-at.bofh.it>
In reply to#1579813
On Mon, 13 Feb 2017 18:06:34 +0300
Andrey Ryabinin <aryabinin@virtuozzo.com> wrote:

> 
> 
> On 02/13/2017 05:28 PM, Masami Hiramatsu wrote:
> > Add a prototype of task_struct to fix below warning on arm64.
> > 
> >   CC      arch/arm64/kernel/probes/kprobes.o
> > In file included from /tmp/linux/arch/arm64/kernel/probes/kprobes.c:19:0:
> > /tmp/linux/include/linux/kasan.h:81:53: warning: 'struct task_struct' declared inside parameter list will not be visible outside of this definition or declaration
> >  static inline void kasan_unpoison_task_stack(struct task_struct *task) {}
> >                                                      ^~~~~~~~~~~
> 
> 
> What tree is that?
> I can't see how is this possible on upstream or -next. kasan.h includes linux/sched.h so it supposed to know about task_struct.
> Also <linux/kasan.h> is the first include in kprobes, so it can't be a header recursion.

Ah, sorry, I used a bit older -tip tree. I confirmed it was solved.

> 
> BTW, arch/arm64/kernel/probes/kprobes.c no longer needs <linux/kasan.h> since
> commit ad05711cec12131e1277ce749a99d08ecf233aa7 ("arm64: Remove stack duplicating code from jprobes")

OK, thank you for checking. Please drop this.

>     
> 
> > As same as other types (kmem_cache, page, and vm_struct)
> > this adds a prototype of task_struct data structure on
> > top of kasan.h.
> > 
> > Signed-off-by: Masami Hiramatsu <mhiramat@kernel.org>
> > Cc: Andrey Ryabinin <aryabinin@virtuozzo.com>
> > Cc: Alexander Potapenko <glider@google.com>
> > Cc: Dmitry Vyukov <dvyukov@google.com>
> > ---
> >  include/linux/kasan.h |    1 +
> >  1 file changed, 1 insertion(+)
> > 
> > diff --git a/include/linux/kasan.h b/include/linux/kasan.h
> > index 820c0ad..c9df9e1 100644
> > --- a/include/linux/kasan.h
> > +++ b/include/linux/kasan.h
> > @@ -7,6 +7,7 @@
> >  struct kmem_cache;
> >  struct page;
> >  struct vm_struct;
> > +struct task_struct;
> >  
> >  #ifdef CONFIG_KASAN
> >  
> > 


-- 
Masami Hiramatsu <mhiramat@kernel.org>

[toc] | [prev] | [standalone]


Back to top | Article view | linux.kernel


csiph-web