diff mbox

ARM: uaccess: Add missing include for set_thread_flag

Message ID 20170919115042.6800-1-net147@gmail.com (mailing list archive)
State New, archived
Headers show

Commit Message

Jonathan Liu Sept. 19, 2017, 11:50 a.m. UTC
Fixes "implicit declaration of function" compile error for out-of-tree
kernel modules including asm/uaccess.h.

Fixes: 73ac5d6a2b6a ("arm/syscalls: Check address limit on user-mode return")
Signed-off-by: Jonathan Liu <net147@gmail.com>
---
 arch/arm/include/asm/uaccess.h | 1 +
 1 file changed, 1 insertion(+)

Comments

Thomas Garnier Sept. 19, 2017, 2:32 p.m. UTC | #1
On Tue, Sep 19, 2017 at 4:50 AM, Jonathan Liu <net147@gmail.com> 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@gmail.com>
> ---
>  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
>
Jonathan Liu Sept. 19, 2017, 9:35 p.m. UTC | #2
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).

Regards,
Jonathan

On 20 September 2017 at 00:32, Thomas Garnier <thgarnie@google.com> wrote:
> On Tue, Sep 19, 2017 at 4:50 AM, Jonathan Liu <net147@gmail.com> 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@gmail.com>
>> ---
>>  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 Garnier Sept. 20, 2017, 4:31 p.m. UTC | #3
On Tue, Sep 19, 2017 at 2:35 PM, Jonathan Liu <net147@gmail.com> 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@google.com> wrote:
> > On Tue, Sep 19, 2017 at 4:50 AM, Jonathan Liu <net147@gmail.com> 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@gmail.com>
> >> ---
> >>  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
Jonathan Liu Sept. 20, 2017, 10:03 p.m. UTC | #4
Hi Thomas,

On 21 September 2017 at 02:31, Thomas Garnier <thgarnie@google.com> wrote:
> On Tue, Sep 19, 2017 at 2:35 PM, Jonathan Liu <net147@gmail.com> 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.
>

Cherry-picking commit 2404269bc4e77a67875c8db6667be34c9913c96e on top
of 4.14-rc1 resolves the issue.
Thanks.

>>
>> Regards,
>> Jonathan
>>
>> On 20 September 2017 at 00:32, Thomas Garnier <thgarnie@google.com> wrote:
>> > On Tue, Sep 19, 2017 at 4:50 AM, Jonathan Liu <net147@gmail.com> 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@gmail.com>
>> >> ---
>> >>  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

Regards,
Jonathan
diff mbox

Patch

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>
 
 /*