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


Groups > linux.kernel > #1255560 > unrolled thread

Re: [PATCH 10/16] compile error: MIPS: add definitions for extended context

Started byHauke Mehrtens <hauke@hauke-m.de>
First post2015-10-25 22:20 +0100
Last post2015-10-25 23:20 +0100
Articles 3 — 2 participants

Back to article view | Back to linux.kernel

This discussion starts older than the indexed window; earlier articles aren't shown. The article labeled Started by below is the oldest one visible, not the original post.


Contents

  Re: [PATCH 10/16] compile error: MIPS: add definitions for extended  context Hauke Mehrtens <hauke@hauke-m.de> - 2015-10-25 22:20 +0100
    Re: [PATCH 10/16] compile error: MIPS: add definitions for extended  context Florian Fainelli <f.fainelli@gmail.com> - 2015-10-25 22:50 +0100
      Re: [PATCH 10/16] compile error: MIPS: add definitions for extended  context Hauke Mehrtens <hauke@hauke-m.de> - 2015-10-25 23:20 +0100

#1255560 — Re: [PATCH 10/16] compile error: MIPS: add definitions for extended context

FromHauke Mehrtens <hauke@hauke-m.de>
Date2015-10-25 22:20 +0100
SubjectRe: [PATCH 10/16] compile error: MIPS: add definitions for extended context
Message-ID<qnARQ-814-5@gated-at.bofh.it>
This patch is causing a build error for me on 4.3-rc7.

  CC      arch/mips/kernel/signal.o
arch/mips/kernel/signal.c: In function 'sc_to_extcontext':
arch/mips/kernel/signal.c:143:12: error: 'struct ucontext' has no member
named 'uc_extcontext'
  return &uc->uc_extcontext;
            ^
In file included from include/linux/poll.h:11:0,
                 from include/linux/ring_buffer.h:7,
                 from include/linux/trace_events.h:5,
                 from include/trace/syscall.h:6,
                 from include/linux/syscalls.h:81,
                 from arch/mips/kernel/signal.c:26:
arch/mips/kernel/signal.c: In function 'save_msa_extcontext':
arch/mips/kernel/signal.c:171:40: error: dereferencing pointer to
incomplete type 'struct msa_extcontext'
   err = __put_user(read_msa_csr(), &msa->csr);
                                        ^
./arch/mips/include/asm/uaccess.h:441:15: note: in definition of macro
'__put_user_nocheck'
  __typeof__(*(ptr)) __pu_val;     \
               ^
arch/mips/kernel/signal.c:171:9: note: in expansion of macro '__put_user'
   err = __put_user(read_msa_csr(), &msa->csr);
         ^
arch/mips/kernel/signal.c:186:20: error: 'MSA_EXTCONTEXT_MAGIC'
undeclared (first use in this function)
  err |= __put_user(MSA_EXTCONTEXT_MAGIC, &msa->ext.magic);
                    ^
./arch/mips/include/asm/uaccess.h:444:14: note: in definition of macro
'__put_user_nocheck'
  __pu_val = (x);       \
              ^
arch/mips/kernel/signal.c:186:9: note: in expansion of macro '__put_user'
  err |= __put_user(MSA_EXTCONTEXT_MAGIC, &msa->ext.magic);
         ^
arch/mips/kernel/signal.c:186:20: note: each undeclared identifier is
reported only once for each function it appears in
  err |= __put_user(MSA_EXTCONTEXT_MAGIC, &msa->ext.magic);
                    ^
./arch/mips/include/asm/uaccess.h:444:14: note: in definition of macro
'__put_user_nocheck'
  __pu_val = (x);       \
              ^
arch/mips/kernel/signal.c:186:9: note: in expansion of macro '__put_user'
  err |= __put_user(MSA_EXTCONTEXT_MAGIC, &msa->ext.magic);
         ^
.......


When I include uapi/asm/ucontext.h instead of asm/ucontext.h in signal.c
it compiles again.

Hauke
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

[toc] | [next] | [standalone]


#1255568

FromFlorian Fainelli <f.fainelli@gmail.com>
Date2015-10-25 22:50 +0100
Message-ID<qnBkS-8aW-15@gated-at.bofh.it>
In reply to#1255560
Le 25/10/2015 14:10, Hauke Mehrtens a écrit :
> This patch is causing a build error for me on 4.3-rc7.
> 
>   CC      arch/mips/kernel/signal.o
> arch/mips/kernel/signal.c: In function 'sc_to_extcontext':
> arch/mips/kernel/signal.c:143:12: error: 'struct ucontext' has no member
> named 'uc_extcontext'
>   return &uc->uc_extcontext;
>             ^
> In file included from include/linux/poll.h:11:0,
>                  from include/linux/ring_buffer.h:7,
>                  from include/linux/trace_events.h:5,
>                  from include/trace/syscall.h:6,
>                  from include/linux/syscalls.h:81,
>                  from arch/mips/kernel/signal.c:26:
> arch/mips/kernel/signal.c: In function 'save_msa_extcontext':
> arch/mips/kernel/signal.c:171:40: error: dereferencing pointer to
> incomplete type 'struct msa_extcontext'
>    err = __put_user(read_msa_csr(), &msa->csr);
>                                         ^
> ./arch/mips/include/asm/uaccess.h:441:15: note: in definition of macro
> '__put_user_nocheck'
>   __typeof__(*(ptr)) __pu_val;     \
>                ^
> arch/mips/kernel/signal.c:171:9: note: in expansion of macro '__put_user'
>    err = __put_user(read_msa_csr(), &msa->csr);
>          ^
> arch/mips/kernel/signal.c:186:20: error: 'MSA_EXTCONTEXT_MAGIC'
> undeclared (first use in this function)
>   err |= __put_user(MSA_EXTCONTEXT_MAGIC, &msa->ext.magic);
>                     ^
> ./arch/mips/include/asm/uaccess.h:444:14: note: in definition of macro
> '__put_user_nocheck'
>   __pu_val = (x);       \
>               ^
> arch/mips/kernel/signal.c:186:9: note: in expansion of macro '__put_user'
>   err |= __put_user(MSA_EXTCONTEXT_MAGIC, &msa->ext.magic);
>          ^
> arch/mips/kernel/signal.c:186:20: note: each undeclared identifier is
> reported only once for each function it appears in
>   err |= __put_user(MSA_EXTCONTEXT_MAGIC, &msa->ext.magic);
>                     ^
> ./arch/mips/include/asm/uaccess.h:444:14: note: in definition of macro
> '__put_user_nocheck'
>   __pu_val = (x);       \
>               ^
> arch/mips/kernel/signal.c:186:9: note: in expansion of macro '__put_user'
>   err |= __put_user(MSA_EXTCONTEXT_MAGIC, &msa->ext.magic);
>          ^
> .......
> 
> 
> When I include uapi/asm/ucontext.h instead of asm/ucontext.h in signal.c
> it compiles again.

The problem appears if you had previously auto-generated files in
arch/mips/include/generated that do not get automatically cleaned up
when you switch to a new kernel version, and with an incompatible
ucontext layout between the two.

Jacek tripped over that here:

https://www.linux-mips.org/archives/linux-mips/2015-09/msg00150.html

and I asked whether we could follow-up with a proper Kbuild patch to
address that build dependency here:

https://www.linux-mips.org/archives/linux-mips/2015-09/msg00165.html

but this does not appear to have been proposed or addressed yet.

Paul, could you look into this and see how we could teach Kbuild about
this build dependency?
-- 
Florian
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

[toc] | [prev] | [next] | [standalone]


#1255574

FromHauke Mehrtens <hauke@hauke-m.de>
Date2015-10-25 23:20 +0100
Message-ID<qnBNU-81-7@gated-at.bofh.it>
In reply to#1255568
On 10/25/2015 10:47 PM, Florian Fainelli wrote:
> Le 25/10/2015 14:10, Hauke Mehrtens a écrit :
>> This patch is causing a build error for me on 4.3-rc7.
>>
>>   CC      arch/mips/kernel/signal.o
>> arch/mips/kernel/signal.c: In function 'sc_to_extcontext':
>> arch/mips/kernel/signal.c:143:12: error: 'struct ucontext' has no member
>> named 'uc_extcontext'
>>   return &uc->uc_extcontext;
>>             ^
>> In file included from include/linux/poll.h:11:0,
>>                  from include/linux/ring_buffer.h:7,
>>                  from include/linux/trace_events.h:5,
>>                  from include/trace/syscall.h:6,
>>                  from include/linux/syscalls.h:81,
>>                  from arch/mips/kernel/signal.c:26:
>> arch/mips/kernel/signal.c: In function 'save_msa_extcontext':
>> arch/mips/kernel/signal.c:171:40: error: dereferencing pointer to
>> incomplete type 'struct msa_extcontext'
>>    err = __put_user(read_msa_csr(), &msa->csr);
>>                                         ^
>> ./arch/mips/include/asm/uaccess.h:441:15: note: in definition of macro
>> '__put_user_nocheck'
>>   __typeof__(*(ptr)) __pu_val;     \
>>                ^
>> arch/mips/kernel/signal.c:171:9: note: in expansion of macro '__put_user'
>>    err = __put_user(read_msa_csr(), &msa->csr);
>>          ^
>> arch/mips/kernel/signal.c:186:20: error: 'MSA_EXTCONTEXT_MAGIC'
>> undeclared (first use in this function)
>>   err |= __put_user(MSA_EXTCONTEXT_MAGIC, &msa->ext.magic);
>>                     ^
>> ./arch/mips/include/asm/uaccess.h:444:14: note: in definition of macro
>> '__put_user_nocheck'
>>   __pu_val = (x);       \
>>               ^
>> arch/mips/kernel/signal.c:186:9: note: in expansion of macro '__put_user'
>>   err |= __put_user(MSA_EXTCONTEXT_MAGIC, &msa->ext.magic);
>>          ^
>> arch/mips/kernel/signal.c:186:20: note: each undeclared identifier is
>> reported only once for each function it appears in
>>   err |= __put_user(MSA_EXTCONTEXT_MAGIC, &msa->ext.magic);
>>                     ^
>> ./arch/mips/include/asm/uaccess.h:444:14: note: in definition of macro
>> '__put_user_nocheck'
>>   __pu_val = (x);       \
>>               ^
>> arch/mips/kernel/signal.c:186:9: note: in expansion of macro '__put_user'
>>   err |= __put_user(MSA_EXTCONTEXT_MAGIC, &msa->ext.magic);
>>          ^
>> .......
>>
>>
>> When I include uapi/asm/ucontext.h instead of asm/ucontext.h in signal.c
>> it compiles again.
> 
> The problem appears if you had previously auto-generated files in
> arch/mips/include/generated that do not get automatically cleaned up
> when you switch to a new kernel version, and with an incompatible
> ucontext layout between the two.
> 
> Jacek tripped over that here:
> 
> https://www.linux-mips.org/archives/linux-mips/2015-09/msg00150.html
> 
> and I asked whether we could follow-up with a proper Kbuild patch to
> address that build dependency here:
> 
> https://www.linux-mips.org/archives/linux-mips/2015-09/msg00165.html
> 
> but this does not appear to have been proposed or addressed yet.
> 
> Paul, could you look into this and see how we could teach Kbuild about
> this build dependency?
> 

Yes that was the problem, after doing this I worked again:
rm arch/mips/include/generated/ -rf

Hauke
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

[toc] | [prev] | [standalone]


Back to top | Article view | linux.kernel


csiph-web