Re: [PATCH] ARM: uaccess: Add missing include for set_thread_flag

From: Thomas Garnier
Date: Wed Sep 20 2017 - 12:31:38 EST


On Tue, Sep 19, 2017 at 2:35 PM, Jonathan Liu <net147@xxxxxxxxx> wrote:
>
> Hi Thomas,
>
> The top of the C source file I am compiling has:
> #include <linux/kernel.h>
> #include <asm/uaccess.h>
>
> Tracing through the asm/uaccess.h include I see
> asm/uaccess.h -> asm/domain.h -> asm/thread_info.h
>
> but set_thread_info is defined in linux/thread_info.h not
> asm/thread_info.h (see
> http://elixir.free-electrons.com/linux/v4.14-rc1/ident/set_thread_flag).

I see, I think I could not reproduce this issue because I already
reverted the original commit in favor of a different approach on
linux-next (see commit 2404269bc4e77a67875c8db6667be34c9913c96e).

Let me know if this commit resolve the issue and thanks for reaching out.

>
> Regards,
> Jonathan
>
> On 20 September 2017 at 00:32, Thomas Garnier <thgarnie@xxxxxxxxxx> wrote:
> > On Tue, Sep 19, 2017 at 4:50 AM, Jonathan Liu <net147@xxxxxxxxx> wrote:
> >> Fixes "implicit declaration of function" compile error for out-of-tree
> >> kernel modules including asm/uaccess.h.
> >
> > I failed to reproduce this issue by creating an out of tree module
> > with a separate file (with only uaccess.h). Are you using a special
> > config?
> >
> > Looking at the headers on uaccess.h. You get thread_info through:
> >
> > asm/domain.h -> asm/thread_info.h
> >
> >>
> >> Fixes: 73ac5d6a2b6a ("arm/syscalls: Check address limit on user-mode return")
> >> Signed-off-by: Jonathan Liu <net147@xxxxxxxxx>
> >> ---
> >> arch/arm/include/asm/uaccess.h | 1 +
> >> 1 file changed, 1 insertion(+)
> >>
> >> diff --git a/arch/arm/include/asm/uaccess.h b/arch/arm/include/asm/uaccess.h
> >> index 87936dd5d151..13d1877ffb75 100644
> >> --- a/arch/arm/include/asm/uaccess.h
> >> +++ b/arch/arm/include/asm/uaccess.h
> >> @@ -17,6 +17,7 @@
> >> #include <asm/unified.h>
> >> #include <asm/compiler.h>
> >>
> >> +#include <linux/thread_info.h>
> >> #include <asm/extable.h>
> >>
> >> /*
> >> --
> >> 2.13.2
> >>
> >
> >
> >
> > --
> > Thomas




--
Thomas