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


Groups > linux.kernel > #1552866 > unrolled thread

next: s390 allyesconfig fails to compile samples/seccomp

Started byMichal Hocko <mhocko@kernel.org>
First post2017-01-06 16:10 +0100
Last post2017-01-07 11:30 +0100
Articles 4 — 2 participants

Back to article view | Back to linux.kernel


Contents

  next: s390 allyesconfig fails to compile samples/seccomp Michal Hocko <mhocko@kernel.org> - 2017-01-06 16:10 +0100
    Re: next: s390 allyesconfig fails to compile samples/seccomp Kees Cook <keescook@chromium.org> - 2017-01-06 21:20 +0100
      Re: next: s390 allyesconfig fails to compile samples/seccomp Kees Cook <keescook@chromium.org> - 2017-01-06 22:00 +0100
      Re: next: s390 allyesconfig fails to compile samples/seccomp Michal Hocko <mhocko@kernel.org> - 2017-01-07 11:30 +0100

#1552866 — next: s390 allyesconfig fails to compile samples/seccomp

FromMichal Hocko <mhocko@kernel.org>
Date2017-01-06 16:10 +0100
Subjectnext: s390 allyesconfig fails to compile samples/seccomp
Message-ID<sWEjw-3EM-35@gated-at.bofh.it>
Hi,
I am not relly sure what went wrong, but I've noticed that allyesconfig
doesn't compile with my s390 crosscompiler with a strange error
messages for linux-next (next-20170106). Linus' tree compiles just fine.
It smells like some headers include problems because
$ git diff origin/master..next/master -- samples/seccomp/
doesn't show anything...

samples/seccomp/bpf-helper.h:134:2: error: #error __BITS_PER_LONG value unusable.
 #error __BITS_PER_LONG value unusable.
  ^
In file included from samples/seccomp/bpf-fancy.c:12:0:
samples/seccomp/bpf-fancy.c: In function ‘main’:
samples/seccomp/bpf-fancy.c:37:11: error: ‘__NR_exit’ undeclared (first use in this function)
   SYSCALL(__NR_exit, ALLOW),
           ^
./usr/include/linux/filter.h:51:69: note: in definition of macro ‘BPF_JUMP’
 #define BPF_JUMP(code, k, jt, jf) { (unsigned short)(code), jt, jf, k }
                                                                     ^
samples/seccomp/bpf-fancy.c:37:3: note: in expansion of macro ‘SYSCALL’
   SYSCALL(__NR_exit, ALLOW),
   ^
samples/seccomp/bpf-fancy.c:37:11: note: each undeclared identifier is reported only once for each function it appears in
   SYSCALL(__NR_exit, ALLOW),
           ^
./usr/include/linux/filter.h:51:69: note: in definition of macro ‘BPF_JUMP’
 #define BPF_JUMP(code, k, jt, jf) { (unsigned short)(code), jt, jf, k }
                                                                     ^
samples/seccomp/bpf-fancy.c:37:3: note: in expansion of macro ‘SYSCALL’
   SYSCALL(__NR_exit, ALLOW),
   ^
samples/seccomp/bpf-fancy.c:38:11: error: ‘__NR_exit_group’ undeclared (first use in this function)
   SYSCALL(__NR_exit_group, ALLOW),
           ^
./usr/include/linux/filter.h:51:69: note: in definition of macro ‘BPF_JUMP’
 #define BPF_JUMP(code, k, jt, jf) { (unsigned short)(code), jt, jf, k }
                                                                     ^
samples/seccomp/bpf-fancy.c:38:3: note: in expansion of macro ‘SYSCALL’
   SYSCALL(__NR_exit_group, ALLOW),
   ^
samples/seccomp/bpf-fancy.c:39:11: error: ‘__NR_write’ undeclared (first use in this function)
   SYSCALL(__NR_write, JUMP(&l, write_fd)),
           ^
./usr/include/linux/filter.h:51:69: note: in definition of macro ‘BPF_JUMP’
 #define BPF_JUMP(code, k, jt, jf) { (unsigned short)(code), jt, jf, k }
                                                                     ^
samples/seccomp/bpf-fancy.c:39:3: note: in expansion of macro ‘SYSCALL’
   SYSCALL(__NR_write, JUMP(&l, write_fd)),
-- 
Michal Hocko
SUSE Labs

[toc] | [next] | [standalone]


#1553076

FromKees Cook <keescook@chromium.org>
Date2017-01-06 21:20 +0100
Message-ID<sWJ9v-6Xm-19@gated-at.bofh.it>
In reply to#1552866
On Fri, Jan 6, 2017 at 7:04 AM, Michal Hocko <mhocko@kernel.org> wrote:
> Hi,
> I am not relly sure what went wrong, but I've noticed that allyesconfig
> doesn't compile with my s390 crosscompiler with a strange error
> messages for linux-next (next-20170106). Linus' tree compiles just fine.
> It smells like some headers include problems because
> $ git diff origin/master..next/master -- samples/seccomp/
> doesn't show anything...

Oh, how strange. Did __BITS_PER_LONG move around? That's part of uapi...


>
> samples/seccomp/bpf-helper.h:134:2: error: #error __BITS_PER_LONG value unusable.
>  #error __BITS_PER_LONG value unusable.
>   ^

#include <asm/bitsperlong.h>    /* for __BITS_PER_LONG */

Hm, maybe this should be uapi/asm/bitsperlong.h ?

Let me see if I can reproduce this...

-Kees

-- 
Kees Cook
Nexus Security

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


#1553120

FromKees Cook <keescook@chromium.org>
Date2017-01-06 22:00 +0100
Message-ID<sWJMe-7eR-29@gated-at.bofh.it>
In reply to#1553076
On Fri, Jan 6, 2017 at 12:18 PM, Kees Cook <keescook@chromium.org> wrote:
> On Fri, Jan 6, 2017 at 7:04 AM, Michal Hocko <mhocko@kernel.org> wrote:
>> Hi,
>> I am not relly sure what went wrong, but I've noticed that allyesconfig
>> doesn't compile with my s390 crosscompiler with a strange error
>> messages for linux-next (next-20170106). Linus' tree compiles just fine.
>> It smells like some headers include problems because
>> $ git diff origin/master..next/master -- samples/seccomp/
>> doesn't show anything...
>
> Oh, how strange. Did __BITS_PER_LONG move around? That's part of uapi...
>
>
>>
>> samples/seccomp/bpf-helper.h:134:2: error: #error __BITS_PER_LONG value unusable.
>>  #error __BITS_PER_LONG value unusable.
>>   ^
>
> #include <asm/bitsperlong.h>    /* for __BITS_PER_LONG */
>
> Hm, maybe this should be uapi/asm/bitsperlong.h ?
>
> Let me see if I can reproduce this...

I don't see the samples error. :(

I do get this, though:

  OBJCOPY arch/s390/boot/compressed/vmlinux.bin
  GZIP    arch/s390/boot/compressed/vmlinux.bin.gz
  AS      arch/s390/boot/compressed/head.o
  CC      arch/s390/boot/compressed/misc.o
  LD      arch/s390/boot/compressed/piggy.o
s390x-linux-gnu-ld: arch/s390/boot/compressed/vmlinux.bin.gz: not in ELF format
arch/s390/boot/compressed/Makefile:71: recipe for target
'arch/s390/boot/compressed/piggy.o' failed
make[2]: *** [arch/s390/boot/compressed/piggy.o] Error 1
arch/s390/boot/Makefile:22: recipe for target
'arch/s390/boot/compressed/vmlinux' failed
make[1]: *** [arch/s390/boot/compressed/vmlinux] Error 2
arch/s390/Makefile:119: recipe for target 'bzImage' failed

I'm using:

$ s390x-linux-gnu-gcc --version
s390x-linux-gnu-gcc (Ubuntu 5.4.0-6ubuntu1~16.04.1) 5.4.0 20160609

-Kees

-- 
Kees Cook
Nexus Security

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


#1553632

FromMichal Hocko <mhocko@kernel.org>
Date2017-01-07 11:30 +0100
Message-ID<sWWq5-7o2-5@gated-at.bofh.it>
In reply to#1553076
On Fri 06-01-17 12:18:42, Kees Cook wrote:
> On Fri, Jan 6, 2017 at 7:04 AM, Michal Hocko <mhocko@kernel.org> wrote:
> > Hi,
> > I am not relly sure what went wrong, but I've noticed that allyesconfig
> > doesn't compile with my s390 crosscompiler with a strange error
> > messages for linux-next (next-20170106). Linus' tree compiles just fine.
> > It smells like some headers include problems because
> > $ git diff origin/master..next/master -- samples/seccomp/
> > doesn't show anything...
> 
> Oh, how strange. Did __BITS_PER_LONG move around? That's part of uapi...

Yes, and it seems something is broken wrt build system for
samples/seccomp
In file included from samples/seccomp/bpf-fancy.c:20:0:
samples/seccomp/bpf-helper.h:17:60: fatal error: uapi/asm/bitsperlong.h: No such file or directory
 #include <uapi/asm/bitsperlong.h> /* for __BITS_PER_LONG */
                                                            ^
compilation terminated.
make[2]: *** [samples/seccomp/bpf-fancy.o] Error 1
make[2]: *** Waiting for unfinished jobs....
In file included from samples/seccomp/bpf-helper.c:16:0:
samples/seccomp/bpf-helper.h:17:60: fatal error: uapi/asm/bitsperlong.h: No such file or directory
 #include <uapi/asm/bitsperlong.h> /* for __BITS_PER_LONG */

-- 
Michal Hocko
SUSE Labs

[toc] | [prev] | [standalone]


Back to top | Article view | linux.kernel


csiph-web