Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Dev #1053

Merged
merged 2 commits into from
Mar 27, 2019
Merged

Dev #1053

merged 2 commits into from
Mar 27, 2019

Conversation

noaos
Copy link
Contributor

@noaos noaos commented Mar 13, 2019

These patches allow syzkaller to exercise the RDMA subsystem:
The first patch adds the needed descriptions and disables QP types in rdma_cm.
The second one updates CONTRIBUTORS as requested.

Noa

@googlebot
Copy link

Thanks for your pull request. It looks like this may be your first contribution to a Google open source project (if not, look below for help). Before we can look at your pull request, you'll need to sign a Contributor License Agreement (CLA).

📝 Please visit https://cla.developers.google.com/ to sign.

Once you've signed (or fixed any issues), please reply here (e.g. I signed it!) and we'll verify it.


What to do if you already signed the CLA

Individual signers
Corporate signers

ℹ️ Googlers: Go here for more info.

@dvyukov
Copy link
Collaborator

dvyukov commented Mar 13, 2019

Thanks!
You also need to check-in all generated files (including sys/linux/*.const). Namely make generate must not create any diffs.

@dvyukov
Copy link
Collaborator

dvyukov commented Mar 13, 2019

Pleas squash first and second commits, otherwise build is broken in between.

@noaos
Copy link
Contributor Author

noaos commented Mar 13, 2019

The two commits squashed. As for your other comment, will push it soon.

@noaos
Copy link
Contributor Author

noaos commented Mar 14, 2019

Re/ generated files - my git status after make generate is
modified: executor/defs.h
modified: executor/syscalls.h
modified: pkg/build/akaros.go
modified: pkg/build/fuchsia.go
modified: pkg/vcs/vcs_test.go
modified: prog/prog_test.go
modified: sys/linux/gen/386.go
modified: sys/linux/gen/amd64.go
modified: sys/linux/gen/arm.go
modified: sys/linux/gen/arm64.go
modified: sys/linux/gen/ppc64le.go
and untracked sys/linux/dev_infiniband_rdma_amd64.const
Should I push all of them? Squash into the first commit or separately?

@dvyukov
Copy link
Collaborator

dvyukov commented Mar 14, 2019

@noaos
Copy link
Contributor Author

noaos commented Mar 14, 2019

Done. I missed the note in the second link.

@dvyukov
Copy link
Collaborator

dvyukov commented Mar 14, 2019

Done. I missed the note in the second link.

That's because I just added it :)
d34313c

@dvyukov
Copy link
Collaborator

dvyukov commented Mar 14, 2019

There are few more things to fix. I can merge this and then fix up myself. Not sure how much you are up to massaging this more, learning curve may be a bit steep for a first commit.

  1. Since you removed flags from dev_infiniband_rdma_cm.txt, the corresponding consts should be removed from .const files by make extract.
  2. We need .const files for dev_infiniband_rdma.txt for other arches.
  3. All these stray formatting changes in *.go files are because you are using Go 1.11 or 1.12. Unfortunately they changed formatting rules between 1.10 and 1.11 so now it's very inconvenient to collaborate on open-source projects. We currently stick to 1.9 and 1.10, though switch to 1.11+ is in plans.

But we still need your CLA to merge:
#1053 (comment)

@noaos
Copy link
Contributor Author

noaos commented Mar 14, 2019

There are few more things to fix. I can merge this and then fix up myself. Not sure how much you are up to massaging this more, learning curve may be a bit steep for a first commit.

1. Since you removed flags from dev_infiniband_rdma_cm.txt, the corresponding consts should be removed from .const files by `make extract`.

Done

2. We need .const files for dev_infiniband_rdma.txt for other arches.

I tried changing arch and re-run but compiler fails due to missing files. Any guide for this that you added a few minutes ago?..

3. All these stray formatting changes in *.go files are because you are using Go 1.11 or 1.12. Unfortunately they changed formatting rules between 1.10 and 1.11 so now it's very inconvenient to collaborate on open-source projects. We currently stick to 1.9 and 1.10, though switch to 1.11+ is in plans.

Your guide says go 1.8 :) I upgraded since syzkaller refused to build, thought I'd go for the latest :/

But we still need your CLA to merge:
#1053 (comment)
We're trying. Apparently there's an older CLA managed by someone not in Mellanox anymore. I sent an email to [email protected] yesterday. If you can somehow speed things up, I'd really appreciate it.

@dvyukov
Copy link
Collaborator

dvyukov commented Mar 14, 2019

I tried changing arch and re-run but compiler fails due to missing files. Any guide for this that you added a few minutes ago?..

No last minute guide this time :)
Something has changed in the linux kernel (again). fsverity.h was added and then seems to be dropped, but we already added descriptions for it. I will take a look.

Your guide says go 1.8 :) I upgraded since syzkaller refused to build, thought I'd go for the latest :/

Will fix. Thanks.
Meanwhile it's 1.9 or 1.10 (but as I said we should switch soon). This becomes a popular problem.

Apparently there's an older CLA

Oh, that's corp CLA. I don't yet have any experience with this. Let's wait few more days because I won't be able to do anything other then also mailing them.

@dvyukov
Copy link
Collaborator

dvyukov commented Mar 14, 2019

1e82084

I tried changing arch and re-run but compiler fails due to missing files. Any guide for this that you added a few minutes ago?..

No last minute guide this time :)
Something has changed in the linux kernel (again). fsverity.h was added and then seems to be dropped, but we already added descriptions for it. I will take a look.

This should be fixed by:
1e82084
You will get massive conflicts on rebase, but you don't need to resolve them manually, re-run make extract/generate on the current LInus tree (I used fa3d493f7a573b4e4e2538486e912093a0161c1b). It should resolve everyhting.

@dvyukov
Copy link
Collaborator

dvyukov commented Mar 14, 2019

I will try to switch to Go 1.12 now. So don't install 1.10 yet.

@codecov-io
Copy link

codecov-io commented Mar 14, 2019

Codecov Report

Merging #1053 into master will increase coverage by 0.65%.
The diff coverage is 0%.

Impacted file tree graph

@@            Coverage Diff            @@
##           master   #1053      +/-   ##
=========================================
+ Coverage   67.15%   67.8%   +0.65%     
=========================================
  Files         117     117              
  Lines       20568   20354     -214     
=========================================
- Hits        13812   13802      -10     
+ Misses       6103    5915     -188     
+ Partials      653     637      -16
Impacted Files Coverage Δ
pkg/build/fuchsia.go 0% <0%> (ø) ⬆️
pkg/build/akaros.go 0% <0%> (ø) ⬆️
tools/syz-trace2syz/parser/strace.go 40.25% <0%> (+1.67%) ⬆️
tools/syz-trace2syz/parser/lex.go 93.88% <0%> (+4.35%) ⬆️

Continue to review full report at Codecov.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update 1e82084...4d04a10. Read the comment docs.

@noaos
Copy link
Contributor Author

noaos commented Mar 14, 2019

I rebased and re-pushed, now I see we have conflicting files.
Building for other archs still fails e.g.
/images/linux//include/linux/kernel.h:18:10: fatal error: asm/div64.h: No such file or directory
#include <asm/div64.h>
and
/images/linux//arch/x86/include/asm/elf.h:178:6: error: 'struct pt_regs' has no member named 'r8'
regs->r8 = regs->r9 = regs->r10 = regs->r11 = 0;

@dvyukov
Copy link
Collaborator

dvyukov commented Mar 14, 2019

I rebased and re-pushed, now I see we have conflicting files.
Building for other archs still fails e.g.
/images/linux//include/linux/kernel.h:18:10: fatal error: asm/div64.h: No such file or directory
#include <asm/div64.h>
and
/images/linux//arch/x86/include/asm/elf.h:178:6: error: 'struct pt_regs' has no member named 'r8'
regs->r8 = regs->r9 = regs->r10 = regs->r11 = 0;

Please post full log. I can't understand what produces this output and what arch fails.

@dvyukov
Copy link
Collaborator

dvyukov commented Mar 14, 2019

Please post full log. I can't understand what produces this output and what arch fails.

And what exactly you run.
Do you run syz-extract manually? Note that if you run syz-extract manually for a single arch, you need to pre-bootstrap the kernel dir for each arch separately. Or you can use -build then it should do it itself. But the recommended way (and the most tested) is make extract.

@noaos
Copy link
Contributor Author

noaos commented Mar 14, 2019

Normally I'm running this:
make bin/syz-extract
bin/syz-extract -os linux -arch amd64 -sourcedir /images/linux/ rdma.txt
make generate
make clean all

Today I tried replacing amd64 with 386/arm64 which caused the above failures.

Running make extract is not pretty:
$ make extract TARGETOS=linux SOURCEDIR=/images/linux/
export BUILDOS=linux
export NATIVEBUILDOS=linux
export HOSTOS=linux
export HOSTARCH=amd64
export TARGETOS=linux
export TARGETARCH=amd64
export TARGETVMARCH=amd64
export CC=gcc
export ADDCFLAGS=-m64 -static
export NCORES=48
export EXE=

GOOS=linux GOARCH=amd64 go build "-ldflags=-s -w -X github.com/google/syzkaller/sys.GitRevision=4d04a100e0f1e3e88840fdb253762556daf6a710+" -o bin/syz-extract ./sys/syz-extract
bin/syz-extract -build -os=linux -sourcedir=/images/linux/
generating linux/386...
extracting from 9p.txt
failed to run compiler: exit status 1
/usr/bin/ld: cannot find Scrt1.o: No such file or directory
/usr/bin/ld: cannot find crti.o: No such file or directory
/usr/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-linux-gnu/7/libgcc.a when searching for -lgcc
/usr/bin/ld: cannot find -lgcc
/usr/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-linux-gnu/7/libgcc_s.so.1 when searching for libgcc_s.so.1
/usr/bin/ld: cannot find libgcc_s.so.1
/usr/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-linux-gnu/7/libgcc.a when searching for -lgcc
/usr/bin/ld: cannot find -lgcc
collect2: error: ld returned 1 exit status

extracting from aio.txt
failed to run compiler: exit status 1
/usr/bin/ld: cannot find Scrt1.o: No such file or directory
/usr/bin/ld: cannot find crti.o: No such file or directory
/usr/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-linux-gnu/7/libgcc.a when searching for -lgcc
/usr/bin/ld: cannot find -lgcc
/usr/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-linux-gnu/7/libgcc_s.so.1 when searching for libgcc_s.so.1
/usr/bin/ld: cannot find libgcc_s.so.1
/usr/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-linux-gnu/7/libgcc.a when searching for -lgcc
/usr/bin/ld: cannot find -lgcc
collect2: error: ld returned 1 exit status

extracting from apparmor.txt
failed to run compiler: exit status 1
/usr/bin/ld: cannot find Scrt1.o: No such file or directory
/usr/bin/ld: cannot find crti.o: No such file or directory
/usr/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-linux-gnu/7/libgcc.a when searching for -lgcc
/usr/bin/ld: cannot find -lgcc
/usr/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-linux-gnu/7/libgcc_s.so.1 when searching for libgcc_s.so.1
/usr/bin/ld: cannot find libgcc_s.so.1
/usr/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-linux-gnu/7/libgcc.a when searching for -lgcc
/usr/bin/ld: cannot find -lgcc
collect2: error: ld returned 1 exit status

extracting from ashmem.txt
failed to run compiler: exit status 1
/usr/bin/ld: cannot find Scrt1.o: No such file or directory
/usr/bin/ld: cannot find crti.o: No such file or directory
/usr/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-linux-gnu/7/libgcc.a when searching for -lgcc
/usr/bin/ld: cannot find -lgcc
/usr/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-linux-gnu/7/libgcc_s.so.1 when searching for libgcc_s.so.1
/usr/bin/ld: cannot find libgcc_s.so.1
/usr/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-linux-gnu/7/libgcc.a when searching for -lgcc
/usr/bin/ld: cannot find -lgcc
collect2: error: ld returned 1 exit status

extracting from binder.txt
failed to run compiler: exit status 1
/usr/bin/ld: cannot find Scrt1.o: No such file or directory
/usr/bin/ld: cannot find crti.o: No such file or directory
/usr/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-linux-gnu/7/libgcc.a when searching for -lgcc
/usr/bin/ld: cannot find -lgcc
/usr/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-linux-gnu/7/libgcc_s.so.1 when searching for libgcc_s.so.1
/usr/bin/ld: cannot find libgcc_s.so.1
/usr/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-linux-gnu/7/libgcc.a when searching for -lgcc
/usr/bin/ld: cannot find -lgcc
collect2: error: ld returned 1 exit status

extracting from binfmt.txt
failed to run compiler: exit status 1
/usr/bin/ld: cannot find Scrt1.o: No such file or directory
/usr/bin/ld: cannot find crti.o: No such file or directory
/usr/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-linux-gnu/7/libgcc.a when searching for -lgcc
/usr/bin/ld: cannot find -lgcc
/usr/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-linux-gnu/7/libgcc_s.so.1 when searching for libgcc_s.so.1
/usr/bin/ld: cannot find libgcc_s.so.1
/usr/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-linux-gnu/7/libgcc.a when searching for -lgcc
/usr/bin/ld: cannot find -lgcc
collect2: error: ld returned 1 exit status

extracting from block.txt
failed to run compiler: exit status 1
/usr/bin/ld: cannot find Scrt1.o: No such file or directory
/usr/bin/ld: cannot find crti.o: No such file or directory
/usr/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-linux-gnu/7/libgcc.a when searching for -lgcc
/usr/bin/ld: cannot find -lgcc
/usr/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-linux-gnu/7/libgcc_s.so.1 when searching for libgcc_s.so.1
/usr/bin/ld: cannot find libgcc_s.so.1
/usr/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-linux-gnu/7/libgcc.a when searching for -lgcc
/usr/bin/ld: cannot find -lgcc
collect2: error: ld returned 1 exit status

extracting from bpf.txt
failed to run compiler: exit status 1
/usr/bin/ld: cannot find Scrt1.o: No such file or directory
/usr/bin/ld: cannot find crti.o: No such file or directory
/usr/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-linux-gnu/7/libgcc.a when searching for -lgcc
/usr/bin/ld: cannot find -lgcc
/usr/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-linux-gnu/7/libgcc_s.so.1 when searching for libgcc_s.so.1
/usr/bin/ld: cannot find libgcc_s.so.1
/usr/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-linux-gnu/7/libgcc.a when searching for -lgcc
/usr/bin/ld: cannot find -lgcc
collect2: error: ld returned 1 exit status

extracting from cdrom.txt
failed to run compiler: exit status 1
/usr/bin/ld: cannot find Scrt1.o: No such file or directory
/usr/bin/ld: cannot find crti.o: No such file or directory
/usr/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-linux-gnu/7/libgcc.a when searching for -lgcc
/usr/bin/ld: cannot find -lgcc
/usr/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-linux-gnu/7/libgcc_s.so.1 when searching for libgcc_s.so.1
/usr/bin/ld: cannot find libgcc_s.so.1
/usr/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-linux-gnu/7/libgcc.a when searching for -lgcc
/usr/bin/ld: cannot find -lgcc
collect2: error: ld returned 1 exit status

extracting from cgroup.txt
failed to run compiler: exit status 1
/usr/bin/ld: cannot find Scrt1.o: No such file or directory
/usr/bin/ld: cannot find crti.o: No such file or directory
/usr/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-linux-gnu/7/libgcc.a when searching for -lgcc
/usr/bin/ld: cannot find -lgcc
/usr/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-linux-gnu/7/libgcc_s.so.1 when searching for libgcc_s.so.1
/usr/bin/ld: cannot find libgcc_s.so.1
/usr/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-linux-gnu/7/libgcc.a when searching for -lgcc
/usr/bin/ld: cannot find -lgcc
collect2: error: ld returned 1 exit status

extracting from dri.txt
failed to run compiler: exit status 1
/usr/bin/ld: cannot find Scrt1.o: No such file or directory
/usr/bin/ld: cannot find crti.o: No such file or directory
/usr/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-linux-gnu/7/libgcc.a when searching for -lgcc
/usr/bin/ld: cannot find -lgcc
/usr/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-linux-gnu/7/libgcc_s.so.1 when searching for libgcc_s.so.1
/usr/bin/ld: cannot find libgcc_s.so.1
/usr/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-linux-gnu/7/libgcc.a when searching for -lgcc
/usr/bin/ld: cannot find -lgcc
collect2: error: ld returned 1 exit status

extracting from filesystem.txt
failed to run compiler: exit status 1
/usr/bin/ld: cannot find Scrt1.o: No such file or directory
/usr/bin/ld: cannot find crti.o: No such file or directory
/usr/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-linux-gnu/7/libgcc.a when searching for -lgcc
/usr/bin/ld: cannot find -lgcc
/usr/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-linux-gnu/7/libgcc_s.so.1 when searching for libgcc_s.so.1
/usr/bin/ld: cannot find libgcc_s.so.1
/usr/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-linux-gnu/7/libgcc.a when searching for -lgcc
/usr/bin/ld: cannot find -lgcc
collect2: error: ld returned 1 exit status

extracting from floppy.txt
failed to run compiler: exit status 1
/usr/bin/ld: cannot find Scrt1.o: No such file or directory
/usr/bin/ld: cannot find crti.o: No such file or directory
/usr/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-linux-gnu/7/libgcc.a when searching for -lgcc
/usr/bin/ld: cannot find -lgcc
/usr/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-linux-gnu/7/libgcc_s.so.1 when searching for libgcc_s.so.1
/usr/bin/ld: cannot find libgcc_s.so.1
/usr/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-linux-gnu/7/libgcc.a when searching for -lgcc
/usr/bin/ld: cannot find -lgcc
collect2: error: ld returned 1 exit status

extracting from fs_btrfs.txt
failed to run compiler: exit status 1
/usr/bin/ld: cannot find Scrt1.o: No such file or directory
/usr/bin/ld: cannot find crti.o: No such file or directory
/usr/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-linux-gnu/7/libgcc.a when searching for -lgcc
/usr/bin/ld: cannot find -lgcc
/usr/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-linux-gnu/7/libgcc_s.so.1 when searching for libgcc_s.so.1
/usr/bin/ld: cannot find libgcc_s.so.1
/usr/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-linux-gnu/7/libgcc.a when searching for -lgcc
/usr/bin/ld: cannot find -lgcc
collect2: error: ld returned 1 exit status

extracting from fs_ext4.txt
failed to run compiler: exit status 1
/usr/bin/ld: cannot find Scrt1.o: No such file or directory
/usr/bin/ld: cannot find crti.o: No such file or directory
/usr/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-linux-gnu/7/libgcc.a when searching for -lgcc
/usr/bin/ld: cannot find -lgcc
/usr/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-linux-gnu/7/libgcc_s.so.1 when searching for libgcc_s.so.1
/usr/bin/ld: cannot find libgcc_s.so.1
/usr/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-linux-gnu/7/libgcc.a when searching for -lgcc
/usr/bin/ld: cannot find -lgcc
collect2: error: ld returned 1 exit status

extracting from fs_ioctl.txt
failed to run compiler: exit status 1
/usr/bin/ld: cannot find Scrt1.o: No such file or directory
/usr/bin/ld: cannot find crti.o: No such file or directory
/usr/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-linux-gnu/7/libgcc.a when searching for -lgcc
/usr/bin/ld: cannot find -lgcc
/usr/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-linux-gnu/7/libgcc_s.so.1 when searching for libgcc_s.so.1
/usr/bin/ld: cannot find libgcc_s.so.1
/usr/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-linux-gnu/7/libgcc.a when searching for -lgcc
/usr/bin/ld: cannot find -lgcc
collect2: error: ld returned 1 exit status

extracting from fuse.txt
failed to run compiler: exit status 1
/usr/bin/ld: cannot find Scrt1.o: No such file or directory
/usr/bin/ld: cannot find crti.o: No such file or directory
/usr/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-linux-gnu/7/libgcc.a when searching for -lgcc
/usr/bin/ld: cannot find -lgcc
/usr/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-linux-gnu/7/libgcc_s.so.1 when searching for libgcc_s.so.1
/usr/bin/ld: cannot find libgcc_s.so.1
/usr/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-linux-gnu/7/libgcc.a when searching for -lgcc
/usr/bin/ld: cannot find -lgcc
collect2: error: ld returned 1 exit status

extracting from i2c.txt
failed to run compiler: exit status 1
/usr/bin/ld: cannot find Scrt1.o: No such file or directory
/usr/bin/ld: cannot find crti.o: No such file or directory
/usr/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-linux-gnu/7/libgcc.a when searching for -lgcc
/usr/bin/ld: cannot find -lgcc
/usr/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-linux-gnu/7/libgcc_s.so.1 when searching for libgcc_s.so.1
/usr/bin/ld: cannot find libgcc_s.so.1
/usr/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-linux-gnu/7/libgcc.a when searching for -lgcc
/usr/bin/ld: cannot find -lgcc
collect2: error: ld returned 1 exit status

extracting from input.txt
failed to run compiler: exit status 1
/usr/bin/ld: cannot find Scrt1.o: No such file or directory
/usr/bin/ld: cannot find crti.o: No such file or directory
/usr/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-linux-gnu/7/libgcc.a when searching for -lgcc
/usr/bin/ld: cannot find -lgcc
/usr/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-linux-gnu/7/libgcc_s.so.1 when searching for libgcc_s.so.1
/usr/bin/ld: cannot find libgcc_s.so.1
/usr/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-linux-gnu/7/libgcc.a when searching for -lgcc
/usr/bin/ld: cannot find -lgcc
collect2: error: ld returned 1 exit status

extracting from ion.txt
failed to run compiler: exit status 1
/usr/bin/ld: cannot find Scrt1.o: No such file or directory
/usr/bin/ld: cannot find crti.o: No such file or directory
/usr/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-linux-gnu/7/libgcc.a when searching for -lgcc
/usr/bin/ld: cannot find -lgcc
/usr/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-linux-gnu/7/libgcc_s.so.1 when searching for libgcc_s.so.1
/usr/bin/ld: cannot find libgcc_s.so.1
/usr/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-linux-gnu/7/libgcc.a when searching for -lgcc
/usr/bin/ld: cannot find -lgcc
collect2: error: ld returned 1 exit status

extracting from ipc.txt
failed to run compiler: exit status 1
/usr/bin/ld: cannot find Scrt1.o: No such file or directory
/usr/bin/ld: cannot find crti.o: No such file or directory
/usr/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-linux-gnu/7/libgcc.a when searching for -lgcc
/usr/bin/ld: cannot find -lgcc
/usr/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-linux-gnu/7/libgcc_s.so.1 when searching for libgcc_s.so.1
/usr/bin/ld: cannot find libgcc_s.so.1
/usr/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-linux-gnu/7/libgcc.a when searching for -lgcc
/usr/bin/ld: cannot find -lgcc
collect2: error: ld returned 1 exit status

extracting from ipvs.txt
failed to run compiler: exit status 1
/usr/bin/ld: cannot find Scrt1.o: No such file or directory
/usr/bin/ld: cannot find crti.o: No such file or directory
/usr/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-linux-gnu/7/libgcc.a when searching for -lgcc
/usr/bin/ld: cannot find -lgcc
/usr/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-linux-gnu/7/libgcc_s.so.1 when searching for libgcc_s.so.1
/usr/bin/ld: cannot find libgcc_s.so.1
/usr/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-linux-gnu/7/libgcc.a when searching for -lgcc
/usr/bin/ld: cannot find -lgcc
collect2: error: ld returned 1 exit status

extracting from key.txt
failed to run compiler: exit status 1
/usr/bin/ld: cannot find Scrt1.o: No such file or directory
/usr/bin/ld: cannot find crti.o: No such file or directory
/usr/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-linux-gnu/7/libgcc.a when searching for -lgcc
/usr/bin/ld: cannot find -lgcc
/usr/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-linux-gnu/7/libgcc_s.so.1 when searching for libgcc_s.so.1
/usr/bin/ld: cannot find libgcc_s.so.1
/usr/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-linux-gnu/7/libgcc.a when searching for -lgcc
/usr/bin/ld: cannot find -lgcc
collect2: error: ld returned 1 exit status

extracting from kvm.txt
failed to run compiler: exit status 1
In file included from /images/linux//include/asm-generic/ioctl.h:5:0,
from /images/linux//arch/x86/include/uapi/asm/ioctl.h:1,
from /images/linux//include/uapi/linux/ioctl.h:5,
from /images/linux//include/uapi/linux/kvm.h:13,
from :5:
: In function 'main':
/images/linux//include/uapi/linux/kvm.h:1401:48: error: invalid application of 'sizeof' to incomplete type 'struct kvm_vcpu_init'
#define KVM_ARM_VCPU_INIT _IOW(KVMIO, 0xae, struct kvm_vcpu_init)
^
/images/linux//include/uapi/asm-generic/ioctl.h:73:5: note: in definition of macro '_IOC'
((size) << _IOC_SIZESHIFT))
^~~~
/images/linux//include/uapi/asm-generic/ioctl.h:87:57: note: in expansion of macro '_IOC_TYPECHECK'
#define _IOW(type,nr,size) _IOC(_IOC_WRITE,(type),(nr),(_IOC_TYPECHECK(size)))
^~~~~~~~~~~~~~
/images/linux//include/uapi/linux/kvm.h:1401:29: note: in expansion of macro '_IOW'
#define KVM_ARM_VCPU_INIT _IOW(KVMIO, 0xae, struct kvm_vcpu_init)
^~~~
:67:23: note: in expansion of macro 'KVM_ARM_VCPU_INIT'
/images/linux//include/asm-generic/ioctl.h:13:25: error: array type has incomplete element type 'struct kvm_vcpu_init'
((sizeof(t) == sizeof(t[1]) &&
^
/images/linux//include/uapi/asm-generic/ioctl.h:73:5: note: in definition of macro '_IOC'
((size) << _IOC_SIZESHIFT))
^~~~
/images/linux//include/uapi/asm-generic/ioctl.h:87:57: note: in expansion of macro '_IOC_TYPECHECK'
#define _IOW(type,nr,size) _IOC(_IOC_WRITE,(type),(nr),(_IOC_TYPECHECK(size)))
^~~~~~~~~~~~~~
/images/linux//include/uapi/linux/kvm.h:1401:29: note: in expansion of macro '_IOW'
#define KVM_ARM_VCPU_INIT _IOW(KVMIO, 0xae, struct kvm_vcpu_init)
^~~~
:67:23: note: in expansion of macro 'KVM_ARM_VCPU_INIT'
/images/linux//include/uapi/linux/kvm.h:1401:48: error: invalid application of 'sizeof' to incomplete type 'struct kvm_vcpu_init'
#define KVM_ARM_VCPU_INIT _IOW(KVMIO, 0xae, struct kvm_vcpu_init)
^
/images/linux//include/uapi/asm-generic/ioctl.h:73:5: note: in definition of macro '_IOC'
((size) << _IOC_SIZESHIFT))
^~~~
/images/linux//include/uapi/asm-generic/ioctl.h:87:57: note: in expansion of macro '_IOC_TYPECHECK'
#define _IOW(type,nr,size) _IOC(_IOC_WRITE,(type),(nr),(_IOC_TYPECHECK(size)))
^~~~~~~~~~~~~~
/images/linux//include/uapi/linux/kvm.h:1401:29: note: in expansion of macro '_IOW'
#define KVM_ARM_VCPU_INIT _IOW(KVMIO, 0xae, struct kvm_vcpu_init)
^~~~
:67:23: note: in expansion of macro 'KVM_ARM_VCPU_INIT'
/images/linux//include/uapi/linux/kvm.h:1401:48: error: invalid application of 'sizeof' to incomplete type 'struct kvm_vcpu_init'
#define KVM_ARM_VCPU_INIT _IOW(KVMIO, 0xae, struct kvm_vcpu_init)
^
/images/linux//include/uapi/asm-generic/ioctl.h:73:5: note: in definition of macro '_IOC'
((size) << _IOC_SIZESHIFT))
^~~~
/images/linux//include/uapi/asm-generic/ioctl.h:87:57: note: in expansion of macro '_IOC_TYPECHECK'
#define _IOW(type,nr,size) _IOC(_IOC_WRITE,(type),(nr),(_IOC_TYPECHECK(size)))
^~~~~~~~~~~~~~
/images/linux//include/uapi/linux/kvm.h:1401:29: note: in expansion of macro '_IOW'
#define KVM_ARM_VCPU_INIT _IOW(KVMIO, 0xae, struct kvm_vcpu_init)
^~~~
:67:23: note: in expansion of macro 'KVM_ARM_VCPU_INIT'

extracting from loop.txt
failed to run compiler: exit status 1
/usr/bin/ld: cannot find Scrt1.o: No such file or directory
/usr/bin/ld: cannot find crti.o: No such file or directory
/usr/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-linux-gnu/7/libgcc.a when searching for -lgcc
/usr/bin/ld: cannot find -lgcc
/usr/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-linux-gnu/7/libgcc_s.so.1 when searching for libgcc_s.so.1
/usr/bin/ld: cannot find libgcc_s.so.1
/usr/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-linux-gnu/7/libgcc.a when searching for -lgcc
/usr/bin/ld: cannot find -lgcc
collect2: error: ld returned 1 exit status

extracting from midi.txt
failed to run compiler: exit status 1
/usr/bin/ld: cannot find Scrt1.o: No such file or directory
/usr/bin/ld: cannot find crti.o: No such file or directory
/usr/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-linux-gnu/7/libgcc.a when searching for -lgcc
/usr/bin/ld: cannot find -lgcc
/usr/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-linux-gnu/7/libgcc_s.so.1 when searching for libgcc_s.so.1
/usr/bin/ld: cannot find libgcc_s.so.1
/usr/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-linux-gnu/7/libgcc.a when searching for -lgcc
/usr/bin/ld: cannot find -lgcc
collect2: error: ld returned 1 exit status

extracting from namespaces.txt
failed to run compiler: exit status 1
/usr/bin/ld: cannot find Scrt1.o: No such file or directory
/usr/bin/ld: cannot find crti.o: No such file or directory
/usr/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-linux-gnu/7/libgcc.a when searching for -lgcc
/usr/bin/ld: cannot find -lgcc
/usr/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-linux-gnu/7/libgcc_s.so.1 when searching for libgcc_s.so.1
/usr/bin/ld: cannot find libgcc_s.so.1
/usr/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-linux-gnu/7/libgcc.a when searching for -lgcc
/usr/bin/ld: cannot find -lgcc
collect2: error: ld returned 1 exit status

extracting from nbd.txt
failed to run compiler: exit status 1
/usr/bin/ld: cannot find Scrt1.o: No such file or directory
/usr/bin/ld: cannot find crti.o: No such file or directory
/usr/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-linux-gnu/7/libgcc.a when searching for -lgcc
/usr/bin/ld: cannot find -lgcc
/usr/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-linux-gnu/7/libgcc_s.so.1 when searching for libgcc_s.so.1
/usr/bin/ld: cannot find libgcc_s.so.1
/usr/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-linux-gnu/7/libgcc.a when searching for -lgcc
/usr/bin/ld: cannot find -lgcc
collect2: error: ld returned 1 exit status

extracting from netfilter.txt
failed to run compiler: exit status 1
/usr/bin/ld: cannot find Scrt1.o: No such file or directory
/usr/bin/ld: cannot find crti.o: No such file or directory
/usr/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-linux-gnu/7/libgcc.a when searching for -lgcc
/usr/bin/ld: cannot find -lgcc
/usr/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-linux-gnu/7/libgcc_s.so.1 when searching for libgcc_s.so.1
/usr/bin/ld: cannot find libgcc_s.so.1
/usr/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-linux-gnu/7/libgcc.a when searching for -lgcc
/usr/bin/ld: cannot find -lgcc
collect2: error: ld returned 1 exit status

extracting from netfilter_arp.txt
failed to run compiler: exit status 1
/usr/bin/ld: cannot find Scrt1.o: No such file or directory
/usr/bin/ld: cannot find crti.o: No such file or directory
/usr/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-linux-gnu/7/libgcc.a when searching for -lgcc
/usr/bin/ld: cannot find -lgcc
/usr/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-linux-gnu/7/libgcc_s.so.1 when searching for libgcc_s.so.1
/usr/bin/ld: cannot find libgcc_s.so.1
/usr/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-linux-gnu/7/libgcc.a when searching for -lgcc
/usr/bin/ld: cannot find -lgcc
collect2: error: ld returned 1 exit status

extracting from netfilter_bridge.txt
failed to run compiler: exit status 1
/usr/bin/ld: cannot find Scrt1.o: No such file or directory
/usr/bin/ld: cannot find crti.o: No such file or directory
/usr/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-linux-gnu/7/libgcc.a when searching for -lgcc
/usr/bin/ld: cannot find -lgcc
/usr/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-linux-gnu/7/libgcc_s.so.1 when searching for libgcc_s.so.1
/usr/bin/ld: cannot find libgcc_s.so.1
/usr/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-linux-gnu/7/libgcc.a when searching for -lgcc
/usr/bin/ld: cannot find -lgcc
collect2: error: ld returned 1 exit status

extracting from netfilter_ipv4.txt
failed to run compiler: exit status 1
/usr/bin/ld: cannot find Scrt1.o: No such file or directory
/usr/bin/ld: cannot find crti.o: No such file or directory
/usr/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-linux-gnu/7/libgcc.a when searching for -lgcc
/usr/bin/ld: cannot find -lgcc
/usr/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-linux-gnu/7/libgcc_s.so.1 when searching for libgcc_s.so.1
/usr/bin/ld: cannot find libgcc_s.so.1
/usr/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-linux-gnu/7/libgcc.a when searching for -lgcc
/usr/bin/ld: cannot find -lgcc
collect2: error: ld returned 1 exit status

extracting from netfilter_ipv6.txt
failed to run compiler: exit status 1
/usr/bin/ld: cannot find Scrt1.o: No such file or directory
/usr/bin/ld: cannot find crti.o: No such file or directory
/usr/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-linux-gnu/7/libgcc.a when searching for -lgcc
/usr/bin/ld: cannot find -lgcc
/usr/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-linux-gnu/7/libgcc_s.so.1 when searching for libgcc_s.so.1
/usr/bin/ld: cannot find libgcc_s.so.1
/usr/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-linux-gnu/7/libgcc.a when searching for -lgcc
/usr/bin/ld: cannot find -lgcc
collect2: error: ld returned 1 exit status

extracting from netfilter_targets.txt
failed to run compiler: exit status 1
/usr/bin/ld: cannot find Scrt1.o: No such file or directory
/usr/bin/ld: cannot find crti.o: No such file or directory
/usr/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-linux-gnu/7/libgcc.a when searching for -lgcc
/usr/bin/ld: cannot find -lgcc
/usr/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-linux-gnu/7/libgcc_s.so.1 when searching for libgcc_s.so.1
/usr/bin/ld: cannot find libgcc_s.so.1
/usr/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-linux-gnu/7/libgcc.a when searching for -lgcc
/usr/bin/ld: cannot find -lgcc
collect2: error: ld returned 1 exit status

extracting from perf.txt
failed to run compiler: exit status 1
/usr/bin/ld: cannot find Scrt1.o: No such file or directory
/usr/bin/ld: cannot find crti.o: No such file or directory
/usr/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-linux-gnu/7/libgcc.a when searching for -lgcc
/usr/bin/ld: cannot find -lgcc
/usr/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-linux-gnu/7/libgcc_s.so.1 when searching for libgcc_s.so.1
/usr/bin/ld: cannot find libgcc_s.so.1
/usr/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-linux-gnu/7/libgcc.a when searching for -lgcc
/usr/bin/ld: cannot find -lgcc
collect2: error: ld returned 1 exit status

extracting from prctl.txt
failed to run compiler: exit status 1
/usr/bin/ld: cannot find Scrt1.o: No such file or directory
/usr/bin/ld: cannot find crti.o: No such file or directory
/usr/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-linux-gnu/7/libgcc.a when searching for -lgcc
/usr/bin/ld: cannot find -lgcc
/usr/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-linux-gnu/7/libgcc_s.so.1 when searching for libgcc_s.so.1
/usr/bin/ld: cannot find libgcc_s.so.1
/usr/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-linux-gnu/7/libgcc.a when searching for -lgcc
/usr/bin/ld: cannot find -lgcc
collect2: error: ld returned 1 exit status

extracting from random.txt
failed to run compiler: exit status 1
/usr/bin/ld: cannot find Scrt1.o: No such file or directory
/usr/bin/ld: cannot find crti.o: No such file or directory
/usr/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-linux-gnu/7/libgcc.a when searching for -lgcc
/usr/bin/ld: cannot find -lgcc
/usr/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-linux-gnu/7/libgcc_s.so.1 when searching for libgcc_s.so.1
/usr/bin/ld: cannot find libgcc_s.so.1
/usr/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-linux-gnu/7/libgcc.a when searching for -lgcc
/usr/bin/ld: cannot find -lgcc
collect2: error: ld returned 1 exit status

extracting from rdma.txt
failed to run compiler: exit status 1
/usr/bin/ld: cannot find Scrt1.o: No such file or directory
/usr/bin/ld: cannot find crti.o: No such file or directory
/usr/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-linux-gnu/7/libgcc.a when searching for -lgcc
/usr/bin/ld: cannot find -lgcc
/usr/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-linux-gnu/7/libgcc_s.so.1 when searching for libgcc_s.so.1
/usr/bin/ld: cannot find libgcc_s.so.1
/usr/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-linux-gnu/7/libgcc.a when searching for -lgcc
/usr/bin/ld: cannot find -lgcc
collect2: error: ld returned 1 exit status

extracting from rdma_cm.txt
failed to run compiler: exit status 1
/usr/bin/ld: cannot find Scrt1.o: No such file or directory
/usr/bin/ld: cannot find crti.o: No such file or directory
/usr/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-linux-gnu/7/libgcc.a when searching for -lgcc
/usr/bin/ld: cannot find -lgcc
/usr/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-linux-gnu/7/libgcc_s.so.1 when searching for libgcc_s.so.1
/usr/bin/ld: cannot find libgcc_s.so.1
/usr/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-linux-gnu/7/libgcc.a when searching for -lgcc
/usr/bin/ld: cannot find -lgcc
collect2: error: ld returned 1 exit status

extracting from rtc.txt
failed to run compiler: exit status 1
/usr/bin/ld: cannot find Scrt1.o: No such file or directory
/usr/bin/ld: cannot find crti.o: No such file or directory
/usr/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-linux-gnu/7/libgcc.a when searching for -lgcc
/usr/bin/ld: cannot find -lgcc
/usr/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-linux-gnu/7/libgcc_s.so.1 when searching for libgcc_s.so.1
/usr/bin/ld: cannot find libgcc_s.so.1
/usr/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-linux-gnu/7/libgcc.a when searching for -lgcc
/usr/bin/ld: cannot find -lgcc
collect2: error: ld returned 1 exit status

extracting from selinux.txt
failed to run compiler: exit status 1
/usr/bin/ld: cannot find Scrt1.o: No such file or directory
/usr/bin/ld: cannot find crti.o: No such file or directory
/usr/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-linux-gnu/7/libgcc.a when searching for -lgcc
/usr/bin/ld: cannot find -lgcc
/usr/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-linux-gnu/7/libgcc_s.so.1 when searching for libgcc_s.so.1
/usr/bin/ld: cannot find libgcc_s.so.1
/usr/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-linux-gnu/7/libgcc.a when searching for -lgcc
/usr/bin/ld: cannot find -lgcc
collect2: error: ld returned 1 exit status

extracting from sg.txt
failed to run compiler: exit status 1
/usr/bin/ld: cannot find Scrt1.o: No such file or directory
/usr/bin/ld: cannot find crti.o: No such file or directory
/usr/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-linux-gnu/7/libgcc.a when searching for -lgcc
/usr/bin/ld: cannot find -lgcc
/usr/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-linux-gnu/7/libgcc_s.so.1 when searching for libgcc_s.so.1
/usr/bin/ld: cannot find libgcc_s.so.1
/usr/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-linux-gnu/7/libgcc.a when searching for -lgcc
/usr/bin/ld: cannot find -lgcc
collect2: error: ld returned 1 exit status

extracting from smack.txt
failed to run compiler: exit status 1
/usr/bin/ld: cannot find Scrt1.o: No such file or directory
/usr/bin/ld: cannot find crti.o: No such file or directory
/usr/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-linux-gnu/7/libgcc.a when searching for -lgcc
/usr/bin/ld: cannot find -lgcc
/usr/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-linux-gnu/7/libgcc_s.so.1 when searching for libgcc_s.so.1
/usr/bin/ld: cannot find libgcc_s.so.1
/usr/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-linux-gnu/7/libgcc.a when searching for -lgcc
/usr/bin/ld: cannot find -lgcc
collect2: error: ld returned 1 exit status

extracting from sndcontrol.txt
failed to run compiler: exit status 1
/usr/bin/ld: cannot find Scrt1.o: No such file or directory
/usr/bin/ld: cannot find crti.o: No such file or directory
/usr/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-linux-gnu/7/libgcc.a when searching for -lgcc
/usr/bin/ld: cannot find -lgcc
/usr/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-linux-gnu/7/libgcc_s.so.1 when searching for libgcc_s.so.1
/usr/bin/ld: cannot find libgcc_s.so.1
/usr/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-linux-gnu/7/libgcc.a when searching for -lgcc
/usr/bin/ld: cannot find -lgcc
collect2: error: ld returned 1 exit status

extracting from sndseq.txt
failed to run compiler: exit status 1
/usr/bin/ld: cannot find Scrt1.o: No such file or directory
/usr/bin/ld: cannot find crti.o: No such file or directory
/usr/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-linux-gnu/7/libgcc.a when searching for -lgcc
/usr/bin/ld: cannot find -lgcc
/usr/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-linux-gnu/7/libgcc_s.so.1 when searching for libgcc_s.so.1
/usr/bin/ld: cannot find libgcc_s.so.1
/usr/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-linux-gnu/7/libgcc.a when searching for -lgcc
/usr/bin/ld: cannot find -lgcc
collect2: error: ld returned 1 exit status

extracting from sndtimer.txt
failed to run compiler: exit status 1
/usr/bin/ld: cannot find Scrt1.o: No such file or directory
/usr/bin/ld: cannot find crti.o: No such file or directory
/usr/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-linux-gnu/7/libgcc.a when searching for -lgcc
/usr/bin/ld: cannot find -lgcc
/usr/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-linux-gnu/7/libgcc_s.so.1 when searching for libgcc_s.so.1
/usr/bin/ld: cannot find libgcc_s.so.1
/usr/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-linux-gnu/7/libgcc.a when searching for -lgcc
/usr/bin/ld: cannot find -lgcc
collect2: error: ld returned 1 exit status

extracting from socket.txt
failed to run compiler: exit status 1
/usr/bin/ld: cannot find Scrt1.o: No such file or directory
/usr/bin/ld: cannot find crti.o: No such file or directory
/usr/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-linux-gnu/7/libgcc.a when searching for -lgcc
/usr/bin/ld: cannot find -lgcc
/usr/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-linux-gnu/7/libgcc_s.so.1 when searching for libgcc_s.so.1
/usr/bin/ld: cannot find libgcc_s.so.1
/usr/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-linux-gnu/7/libgcc.a when searching for -lgcc
/usr/bin/ld: cannot find -lgcc
collect2: error: ld returned 1 exit status

extracting from socket_alg.txt
failed to run compiler: exit status 1
/usr/bin/ld: cannot find Scrt1.o: No such file or directory
/usr/bin/ld: cannot find crti.o: No such file or directory
/usr/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-linux-gnu/7/libgcc.a when searching for -lgcc
/usr/bin/ld: cannot find -lgcc
/usr/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-linux-gnu/7/libgcc_s.so.1 when searching for libgcc_s.so.1
/usr/bin/ld: cannot find libgcc_s.so.1
/usr/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-linux-gnu/7/libgcc.a when searching for -lgcc
/usr/bin/ld: cannot find -lgcc
collect2: error: ld returned 1 exit status

extracting from socket_ax25.txt
failed to run compiler: exit status 1
/usr/bin/ld: cannot find Scrt1.o: No such file or directory
/usr/bin/ld: cannot find crti.o: No such file or directory
/usr/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-linux-gnu/7/libgcc.a when searching for -lgcc
/usr/bin/ld: cannot find -lgcc
/usr/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-linux-gnu/7/libgcc_s.so.1 when searching for libgcc_s.so.1
/usr/bin/ld: cannot find libgcc_s.so.1
/usr/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-linux-gnu/7/libgcc.a when searching for -lgcc
/usr/bin/ld: cannot find -lgcc
collect2: error: ld returned 1 exit status

extracting from socket_bluetooth.txt
failed to run compiler: exit status 1
/usr/bin/ld: cannot find Scrt1.o: No such file or directory
/usr/bin/ld: cannot find crti.o: No such file or directory
/usr/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-linux-gnu/7/libgcc.a when searching for -lgcc
/usr/bin/ld: cannot find -lgcc
/usr/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-linux-gnu/7/libgcc_s.so.1 when searching for libgcc_s.so.1
/usr/bin/ld: cannot find libgcc_s.so.1
/usr/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-linux-gnu/7/libgcc.a when searching for -lgcc
/usr/bin/ld: cannot find -lgcc
collect2: error: ld returned 1 exit status

extracting from socket_can.txt
failed to run compiler: exit status 1
/usr/bin/ld: cannot find Scrt1.o: No such file or directory
/usr/bin/ld: cannot find crti.o: No such file or directory
/usr/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-linux-gnu/7/libgcc.a when searching for -lgcc
/usr/bin/ld: cannot find -lgcc
/usr/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-linux-gnu/7/libgcc_s.so.1 when searching for libgcc_s.so.1
/usr/bin/ld: cannot find libgcc_s.so.1
/usr/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-linux-gnu/7/libgcc.a when searching for -lgcc
/usr/bin/ld: cannot find -lgcc
collect2: error: ld returned 1 exit status

extracting from socket_inet.txt
failed to run compiler: exit status 1
/usr/bin/ld: cannot find Scrt1.o: No such file or directory
/usr/bin/ld: cannot find crti.o: No such file or directory
/usr/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-linux-gnu/7/libgcc.a when searching for -lgcc
/usr/bin/ld: cannot find -lgcc
/usr/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-linux-gnu/7/libgcc_s.so.1 when searching for libgcc_s.so.1
/usr/bin/ld: cannot find libgcc_s.so.1
/usr/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-linux-gnu/7/libgcc.a when searching for -lgcc
/usr/bin/ld: cannot find -lgcc
collect2: error: ld returned 1 exit status

extracting from socket_inet6.txt
failed to run compiler: exit status 1
/usr/bin/ld: cannot find Scrt1.o: No such file or directory
/usr/bin/ld: cannot find crti.o: No such file or directory
/usr/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-linux-gnu/7/libgcc.a when searching for -lgcc
/usr/bin/ld: cannot find -lgcc
/usr/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-linux-gnu/7/libgcc_s.so.1 when searching for libgcc_s.so.1
/usr/bin/ld: cannot find libgcc_s.so.1
/usr/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-linux-gnu/7/libgcc.a when searching for -lgcc
/usr/bin/ld: cannot find -lgcc
collect2: error: ld returned 1 exit status

extracting from socket_inet_dccp.txt
failed to run compiler: exit status 1
/usr/bin/ld: cannot find Scrt1.o: No such file or directory
/usr/bin/ld: cannot find crti.o: No such file or directory
/usr/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-linux-gnu/7/libgcc.a when searching for -lgcc
/usr/bin/ld: cannot find -lgcc
/usr/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-linux-gnu/7/libgcc_s.so.1 when searching for libgcc_s.so.1
/usr/bin/ld: cannot find libgcc_s.so.1
/usr/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-linux-gnu/7/libgcc.a when searching for -lgcc
/usr/bin/ld: cannot find -lgcc
collect2: error: ld returned 1 exit status

extracting from socket_inet_icmp.txt
failed to run compiler: exit status 1
/usr/bin/ld: cannot find Scrt1.o: No such file or directory
/usr/bin/ld: cannot find crti.o: No such file or directory
/usr/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-linux-gnu/7/libgcc.a when searching for -lgcc
/usr/bin/ld: cannot find -lgcc
/usr/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-linux-gnu/7/libgcc_s.so.1 when searching for libgcc_s.so.1
/usr/bin/ld: cannot find libgcc_s.so.1
/usr/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-linux-gnu/7/libgcc.a when searching for -lgcc
/usr/bin/ld: cannot find -lgcc
collect2: error: ld returned 1 exit status

extracting from socket_inet_sctp.txt
failed to run compiler: exit status 1
/usr/bin/ld: cannot find Scrt1.o: No such file or directory
/usr/bin/ld: cannot find crti.o: No such file or directory
/usr/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-linux-gnu/7/libgcc.a when searching for -lgcc
/usr/bin/ld: cannot find -lgcc
/usr/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-linux-gnu/7/libgcc_s.so.1 when searching for libgcc_s.so.1
/usr/bin/ld: cannot find libgcc_s.so.1
/usr/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-linux-gnu/7/libgcc.a when searching for -lgcc
/usr/bin/ld: cannot find -lgcc
collect2: error: ld returned 1 exit status

extracting from socket_inet_tcp.txt
failed to run compiler: exit status 1
/usr/bin/ld: cannot find Scrt1.o: No such file or directory
/usr/bin/ld: cannot find crti.o: No such file or directory
/usr/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-linux-gnu/7/libgcc.a when searching for -lgcc
/usr/bin/ld: cannot find -lgcc
/usr/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-linux-gnu/7/libgcc_s.so.1 when searching for libgcc_s.so.1
/usr/bin/ld: cannot find libgcc_s.so.1
/usr/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-linux-gnu/7/libgcc.a when searching for -lgcc
/usr/bin/ld: cannot find -lgcc
collect2: error: ld returned 1 exit status

extracting from socket_inet_udp.txt
failed to run compiler: exit status 1
/usr/bin/ld: cannot find Scrt1.o: No such file or directory
/usr/bin/ld: cannot find crti.o: No such file or directory
/usr/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-linux-gnu/7/libgcc.a when searching for -lgcc
/usr/bin/ld: cannot find -lgcc
/usr/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-linux-gnu/7/libgcc_s.so.1 when searching for libgcc_s.so.1
/usr/bin/ld: cannot find libgcc_s.so.1
/usr/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-linux-gnu/7/libgcc.a when searching for -lgcc
/usr/bin/ld: cannot find -lgcc
collect2: error: ld returned 1 exit status

extracting from socket_ipx.txt
failed to run compiler: exit status 1
/usr/bin/ld: cannot find Scrt1.o: No such file or directory
/usr/bin/ld: cannot find crti.o: No such file or directory
/usr/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-linux-gnu/7/libgcc.a when searching for -lgcc
/usr/bin/ld: cannot find -lgcc
/usr/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-linux-gnu/7/libgcc_s.so.1 when searching for libgcc_s.so.1
/usr/bin/ld: cannot find libgcc_s.so.1
/usr/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-linux-gnu/7/libgcc.a when searching for -lgcc
/usr/bin/ld: cannot find -lgcc
collect2: error: ld returned 1 exit status

extracting from socket_kcm.txt
failed to run compiler: exit status 1
/usr/bin/ld: cannot find Scrt1.o: No such file or directory
/usr/bin/ld: cannot find crti.o: No such file or directory
/usr/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-linux-gnu/7/libgcc.a when searching for -lgcc
/usr/bin/ld: cannot find -lgcc
/usr/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-linux-gnu/7/libgcc_s.so.1 when searching for libgcc_s.so.1
/usr/bin/ld: cannot find libgcc_s.so.1
/usr/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-linux-gnu/7/libgcc.a when searching for -lgcc
/usr/bin/ld: cannot find -lgcc
collect2: error: ld returned 1 exit status

extracting from socket_key.txt
failed to run compiler: exit status 1
/usr/bin/ld: cannot find Scrt1.o: No such file or directory
/usr/bin/ld: cannot find crti.o: No such file or directory
/usr/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-linux-gnu/7/libgcc.a when searching for -lgcc
/usr/bin/ld: cannot find -lgcc
/usr/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-linux-gnu/7/libgcc_s.so.1 when searching for libgcc_s.so.1
/usr/bin/ld: cannot find libgcc_s.so.1
/usr/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-linux-gnu/7/libgcc.a when searching for -lgcc
/usr/bin/ld: cannot find -lgcc
collect2: error: ld returned 1 exit status

extracting from socket_llc.txt
failed to run compiler: exit status 1
/usr/bin/ld: cannot find Scrt1.o: No such file or directory
/usr/bin/ld: cannot find crti.o: No such file or directory
/usr/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-linux-gnu/7/libgcc.a when searching for -lgcc
/usr/bin/ld: cannot find -lgcc
/usr/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-linux-gnu/7/libgcc_s.so.1 when searching for libgcc_s.so.1
/usr/bin/ld: cannot find libgcc_s.so.1
/usr/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-linux-gnu/7/libgcc.a when searching for -lgcc
/usr/bin/ld: cannot find -lgcc
collect2: error: ld returned 1 exit status

extracting from socket_netlink.txt
failed to run compiler: exit status 1
/usr/bin/ld: cannot find Scrt1.o: No such file or directory
/usr/bin/ld: cannot find crti.o: No such file or directory
/usr/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-linux-gnu/7/libgcc.a when searching for -lgcc
/usr/bin/ld: cannot find -lgcc
/usr/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-linux-gnu/7/libgcc_s.so.1 when searching for libgcc_s.so.1
/usr/bin/ld: cannot find libgcc_s.so.1
/usr/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-linux-gnu/7/libgcc.a when searching for -lgcc
/usr/bin/ld: cannot find -lgcc
collect2: error: ld returned 1 exit status

extracting from socket_netlink_crypto.txt
failed to run compiler: exit status 1
/usr/bin/ld: cannot find Scrt1.o: No such file or directory
/usr/bin/ld: cannot find crti.o: No such file or directory
/usr/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-linux-gnu/7/libgcc.a when searching for -lgcc
/usr/bin/ld: cannot find -lgcc
/usr/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-linux-gnu/7/libgcc_s.so.1 when searching for libgcc_s.so.1
/usr/bin/ld: cannot find libgcc_s.so.1
/usr/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-linux-gnu/7/libgcc.a when searching for -lgcc
/usr/bin/ld: cannot find -lgcc
collect2: error: ld returned 1 exit status

extracting from socket_netlink_generic.txt
failed to run compiler: exit status 1
/usr/bin/ld: cannot find Scrt1.o: No such file or directory
/usr/bin/ld: cannot find crti.o: No such file or directory
/usr/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-linux-gnu/7/libgcc.a when searching for -lgcc
/usr/bin/ld: cannot find -lgcc
/usr/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-linux-gnu/7/libgcc_s.so.1 when searching for libgcc_s.so.1
/usr/bin/ld: cannot find libgcc_s.so.1
/usr/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-linux-gnu/7/libgcc.a when searching for -lgcc
/usr/bin/ld: cannot find -lgcc
collect2: error: ld returned 1 exit status

extracting from socket_netlink_generic_fou.txt
failed to run compiler: exit status 1
/usr/bin/ld: cannot find Scrt1.o: No such file or directory
/usr/bin/ld: cannot find crti.o: No such file or directory
/usr/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-linux-gnu/7/libgcc.a when searching for -lgcc
/usr/bin/ld: cannot find -lgcc
/usr/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-linux-gnu/7/libgcc_s.so.1 when searching for libgcc_s.so.1
/usr/bin/ld: cannot find libgcc_s.so.1
/usr/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-linux-gnu/7/libgcc.a when searching for -lgcc
/usr/bin/ld: cannot find -lgcc
collect2: error: ld returned 1 exit status

extracting from socket_netlink_generic_team.txt
failed to run compiler: exit status 1
/usr/bin/ld: cannot find Scrt1.o: No such file or directory
/usr/bin/ld: cannot find crti.o: No such file or directory
/usr/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-linux-gnu/7/libgcc.a when searching for -lgcc
/usr/bin/ld: cannot find -lgcc
/usr/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-linux-gnu/7/libgcc_s.so.1 when searching for libgcc_s.so.1
/usr/bin/ld: cannot find libgcc_s.so.1
/usr/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-linux-gnu/7/libgcc.a when searching for -lgcc
/usr/bin/ld: cannot find -lgcc
collect2: error: ld returned 1 exit status

extracting from socket_netlink_netfilter.txt
failed to run compiler: exit status 1
/usr/bin/ld: cannot find Scrt1.o: No such file or directory
/usr/bin/ld: cannot find crti.o: No such file or directory
/usr/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-linux-gnu/7/libgcc.a when searching for -lgcc
/usr/bin/ld: cannot find -lgcc
/usr/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-linux-gnu/7/libgcc_s.so.1 when searching for libgcc_s.so.1
/usr/bin/ld: cannot find libgcc_s.so.1
/usr/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-linux-gnu/7/libgcc.a when searching for -lgcc
/usr/bin/ld: cannot find -lgcc
collect2: error: ld returned 1 exit status

extracting from socket_netlink_route.txt
failed to run compiler: exit status 1
/usr/bin/ld: cannot find Scrt1.o: No such file or directory
/usr/bin/ld: cannot find crti.o: No such file or directory
/usr/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-linux-gnu/7/libgcc.a when searching for -lgcc
/usr/bin/ld: cannot find -lgcc
/usr/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-linux-gnu/7/libgcc_s.so.1 when searching for libgcc_s.so.1
/usr/bin/ld: cannot find libgcc_s.so.1
/usr/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-linux-gnu/7/libgcc.a when searching for -lgcc
/usr/bin/ld: cannot find -lgcc
collect2: error: ld returned 1 exit status

extracting from socket_netlink_route_sched.txt
failed to run compiler: exit status 1
/usr/bin/ld: cannot find Scrt1.o: No such file or directory
/usr/bin/ld: cannot find crti.o: No such file or directory
/usr/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-linux-gnu/7/libgcc.a when searching for -lgcc
/usr/bin/ld: cannot find -lgcc
/usr/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-linux-gnu/7/libgcc_s.so.1 when searching for libgcc_s.so.1
/usr/bin/ld: cannot find libgcc_s.so.1
/usr/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-linux-gnu/7/libgcc.a when searching for -lgcc
/usr/bin/ld: cannot find -lgcc
collect2: error: ld returned 1 exit status

extracting from socket_netlink_xfrm.txt
failed to run compiler: exit status 1
/usr/bin/ld: cannot find Scrt1.o: No such file or directory
/usr/bin/ld: cannot find crti.o: No such file or directory
/usr/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-linux-gnu/7/libgcc.a when searching for -lgcc
/usr/bin/ld: cannot find -lgcc
/usr/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-linux-gnu/7/libgcc_s.so.1 when searching for libgcc_s.so.1
/usr/bin/ld: cannot find libgcc_s.so.1
/usr/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-linux-gnu/7/libgcc.a when searching for -lgcc
/usr/bin/ld: cannot find -lgcc
collect2: error: ld returned 1 exit status

extracting from socket_netrom.txt
failed to run compiler: exit status 1
/usr/bin/ld: cannot find Scrt1.o: No such file or directory
/usr/bin/ld: cannot find crti.o: No such file or directory
/usr/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-linux-gnu/7/libgcc.a when searching for -lgcc
/usr/bin/ld: cannot find -lgcc
/usr/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-linux-gnu/7/libgcc_s.so.1 when searching for libgcc_s.so.1
/usr/bin/ld: cannot find libgcc_s.so.1
/usr/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-linux-gnu/7/libgcc.a when searching for -lgcc
/usr/bin/ld: cannot find -lgcc
collect2: error: ld returned 1 exit status

extracting from socket_nfc.txt
failed to run compiler: exit status 1
/usr/bin/ld: cannot find Scrt1.o: No such file or directory
/usr/bin/ld: cannot find crti.o: No such file or directory
/usr/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-linux-gnu/7/libgcc.a when searching for -lgcc
/usr/bin/ld: cannot find -lgcc
/usr/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-linux-gnu/7/libgcc_s.so.1 when searching for libgcc_s.so.1
/usr/bin/ld: cannot find libgcc_s.so.1
/usr/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-linux-gnu/7/libgcc.a when searching for -lgcc
/usr/bin/ld: cannot find -lgcc
collect2: error: ld returned 1 exit status

extracting from socket_packet.txt
failed to run compiler: exit status 1
/usr/bin/ld: cannot find Scrt1.o: No such file or directory
/usr/bin/ld: cannot find crti.o: No such file or directory
/usr/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-linux-gnu/7/libgcc.a when searching for -lgcc
/usr/bin/ld: cannot find -lgcc
/usr/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-linux-gnu/7/libgcc_s.so.1 when searching for libgcc_s.so.1
/usr/bin/ld: cannot find libgcc_s.so.1
/usr/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-linux-gnu/7/libgcc.a when searching for -lgcc
/usr/bin/ld: cannot find -lgcc
collect2: error: ld returned 1 exit status

extracting from socket_pppox.txt
failed to run compiler: exit status 1
/usr/bin/ld: cannot find Scrt1.o: No such file or directory
/usr/bin/ld: cannot find crti.o: No such file or directory
/usr/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-linux-gnu/7/libgcc.a when searching for -lgcc
/usr/bin/ld: cannot find -lgcc
/usr/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-linux-gnu/7/libgcc_s.so.1 when searching for libgcc_s.so.1
/usr/bin/ld: cannot find libgcc_s.so.1
/usr/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-linux-gnu/7/libgcc.a when searching for -lgcc
/usr/bin/ld: cannot find -lgcc
collect2: error: ld returned 1 exit status

extracting from socket_rds.txt
failed to run compiler: exit status 1
/usr/bin/ld: cannot find Scrt1.o: No such file or directory
/usr/bin/ld: cannot find crti.o: No such file or directory
/usr/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-linux-gnu/7/libgcc.a when searching for -lgcc
/usr/bin/ld: cannot find -lgcc
/usr/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-linux-gnu/7/libgcc_s.so.1 when searching for libgcc_s.so.1
/usr/bin/ld: cannot find libgcc_s.so.1
/usr/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-linux-gnu/7/libgcc.a when searching for -lgcc
/usr/bin/ld: cannot find -lgcc
collect2: error: ld returned 1 exit status

extracting from socket_tipc.txt
failed to run compiler: exit status 1
/usr/bin/ld: cannot find Scrt1.o: No such file or directory
/usr/bin/ld: cannot find crti.o: No such file or directory
/usr/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-linux-gnu/7/libgcc.a when searching for -lgcc
/usr/bin/ld: cannot find -lgcc
/usr/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-linux-gnu/7/libgcc_s.so.1 when searching for libgcc_s.so.1
/usr/bin/ld: cannot find libgcc_s.so.1
/usr/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-linux-gnu/7/libgcc.a when searching for -lgcc
/usr/bin/ld: cannot find -lgcc
collect2: error: ld returned 1 exit status

extracting from socket_tipc_netlink.txt
failed to run compiler: exit status 1
/usr/bin/ld: cannot find Scrt1.o: No such file or directory
/usr/bin/ld: cannot find crti.o: No such file or directory
/usr/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-linux-gnu/7/libgcc.a when searching for -lgcc
/usr/bin/ld: cannot find -lgcc
/usr/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-linux-gnu/7/libgcc_s.so.1 when searching for libgcc_s.so.1
/usr/bin/ld: cannot find libgcc_s.so.1
/usr/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-linux-gnu/7/libgcc.a when searching for -lgcc
/usr/bin/ld: cannot find -lgcc
collect2: error: ld returned 1 exit status

extracting from socket_unix.txt
failed to run compiler: exit status 1
/usr/bin/ld: cannot find Scrt1.o: No such file or directory
/usr/bin/ld: cannot find crti.o: No such file or directory
/usr/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-linux-gnu/7/libgcc.a when searching for -lgcc
/usr/bin/ld: cannot find -lgcc
/usr/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-linux-gnu/7/libgcc_s.so.1 when searching for libgcc_s.so.1
/usr/bin/ld: cannot find libgcc_s.so.1
/usr/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-linux-gnu/7/libgcc.a when searching for -lgcc
/usr/bin/ld: cannot find -lgcc
collect2: error: ld returned 1 exit status

extracting from socket_vnet.txt
failed to run compiler: exit status 1
/usr/bin/ld: cannot find Scrt1.o: No such file or directory
/usr/bin/ld: cannot find crti.o: No such file or directory
/usr/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-linux-gnu/7/libgcc.a when searching for -lgcc
/usr/bin/ld: cannot find -lgcc
/usr/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-linux-gnu/7/libgcc_s.so.1 when searching for libgcc_s.so.1
/usr/bin/ld: cannot find libgcc_s.so.1
/usr/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-linux-gnu/7/libgcc.a when searching for -lgcc
/usr/bin/ld: cannot find -lgcc
collect2: error: ld returned 1 exit status

extracting from socket_xdp.txt
failed to run compiler: exit status 1
/usr/bin/ld: cannot find Scrt1.o: No such file or directory
/usr/bin/ld: cannot find crti.o: No such file or directory
/usr/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-linux-gnu/7/libgcc.a when searching for -lgcc
/usr/bin/ld: cannot find -lgcc
/usr/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-linux-gnu/7/libgcc_s.so.1 when searching for libgcc_s.so.1
/usr/bin/ld: cannot find libgcc_s.so.1
/usr/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-linux-gnu/7/libgcc.a when searching for -lgcc
/usr/bin/ld: cannot find -lgcc
collect2: error: ld returned 1 exit status

extracting from sr.txt
failed to run compiler: exit status 1
/usr/bin/ld: cannot find Scrt1.o: No such file or directory
/usr/bin/ld: cannot find crti.o: No such file or directory
/usr/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-linux-gnu/7/libgcc.a when searching for -lgcc
/usr/bin/ld: cannot find -lgcc
/usr/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-linux-gnu/7/libgcc_s.so.1 when searching for libgcc_s.so.1
/usr/bin/ld: cannot find libgcc_s.so.1
/usr/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-linux-gnu/7/libgcc.a when searching for -lgcc
/usr/bin/ld: cannot find -lgcc
collect2: error: ld returned 1 exit status

extracting from sys.txt
failed to run compiler: exit status 1
/usr/bin/ld: cannot find Scrt1.o: No such file or directory
/usr/bin/ld: cannot find crti.o: No such file or directory
/usr/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-linux-gnu/7/libgcc.a when searching for -lgcc
/usr/bin/ld: cannot find -lgcc
/usr/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-linux-gnu/7/libgcc_s.so.1 when searching for libgcc_s.so.1
/usr/bin/ld: cannot find libgcc_s.so.1
/usr/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-linux-gnu/7/libgcc.a when searching for -lgcc
/usr/bin/ld: cannot find -lgcc
collect2: error: ld returned 1 exit status

extracting from tty.txt
failed to run compiler: exit status 1
/usr/bin/ld: cannot find Scrt1.o: No such file or directory
/usr/bin/ld: cannot find crti.o: No such file or directory
/usr/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-linux-gnu/7/libgcc.a when searching for -lgcc
/usr/bin/ld: cannot find -lgcc
/usr/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-linux-gnu/7/libgcc_s.so.1 when searching for libgcc_s.so.1
/usr/bin/ld: cannot find libgcc_s.so.1
/usr/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-linux-gnu/7/libgcc.a when searching for -lgcc
/usr/bin/ld: cannot find -lgcc
collect2: error: ld returned 1 exit status

extracting from tun.txt
failed to run compiler: exit status 1
/usr/bin/ld: cannot find Scrt1.o: No such file or directory
/usr/bin/ld: cannot find crti.o: No such file or directory
/usr/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-linux-gnu/7/libgcc.a when searching for -lgcc
/usr/bin/ld: cannot find -lgcc
/usr/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-linux-gnu/7/libgcc_s.so.1 when searching for libgcc_s.so.1
/usr/bin/ld: cannot find libgcc_s.so.1
/usr/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-linux-gnu/7/libgcc.a when searching for -lgcc
/usr/bin/ld: cannot find -lgcc
collect2: error: ld returned 1 exit status

extracting from uffd.txt
failed to run compiler: exit status 1
/usr/bin/ld: cannot find Scrt1.o: No such file or directory
/usr/bin/ld: cannot find crti.o: No such file or directory
/usr/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-linux-gnu/7/libgcc.a when searching for -lgcc
/usr/bin/ld: cannot find -lgcc
/usr/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-linux-gnu/7/libgcc_s.so.1 when searching for libgcc_s.so.1
/usr/bin/ld: cannot find libgcc_s.so.1
/usr/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-linux-gnu/7/libgcc.a when searching for -lgcc
/usr/bin/ld: cannot find -lgcc
collect2: error: ld returned 1 exit status

extracting from uhid.txt
failed to run compiler: exit status 1
/usr/bin/ld: cannot find Scrt1.o: No such file or directory
/usr/bin/ld: cannot find crti.o: No such file or directory
/usr/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-linux-gnu/7/libgcc.a when searching for -lgcc
/usr/bin/ld: cannot find -lgcc
/usr/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-linux-gnu/7/libgcc_s.so.1 when searching for libgcc_s.so.1
/usr/bin/ld: cannot find libgcc_s.so.1
/usr/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-linux-gnu/7/libgcc.a when searching for -lgcc
/usr/bin/ld: cannot find -lgcc
collect2: error: ld returned 1 exit status

extracting from uinput.txt
failed to run compiler: exit status 1
/usr/bin/ld: cannot find Scrt1.o: No such file or directory
/usr/bin/ld: cannot find crti.o: No such file or directory
/usr/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-linux-gnu/7/libgcc.a when searching for -lgcc
/usr/bin/ld: cannot find -lgcc
/usr/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-linux-gnu/7/libgcc_s.so.1 when searching for libgcc_s.so.1
/usr/bin/ld: cannot find libgcc_s.so.1
/usr/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-linux-gnu/7/libgcc.a when searching for -lgcc
/usr/bin/ld: cannot find -lgcc
collect2: error: ld returned 1 exit status

extracting from userio.txt
failed to run compiler: exit status 1
/usr/bin/ld: cannot find Scrt1.o: No such file or directory
/usr/bin/ld: cannot find crti.o: No such file or directory
/usr/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-linux-gnu/7/libgcc.a when searching for -lgcc
/usr/bin/ld: cannot find -lgcc
/usr/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-linux-gnu/7/libgcc_s.so.1 when searching for libgcc_s.so.1
/usr/bin/ld: cannot find libgcc_s.so.1
/usr/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-linux-gnu/7/libgcc.a when searching for -lgcc
/usr/bin/ld: cannot find -lgcc
collect2: error: ld returned 1 exit status

extracting from vnet.txt
failed to run compiler: exit status 1
/usr/bin/ld: cannot find Scrt1.o: No such file or directory
/usr/bin/ld: cannot find crti.o: No such file or directory
/usr/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-linux-gnu/7/libgcc.a when searching for -lgcc
/usr/bin/ld: cannot find -lgcc
/usr/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-linux-gnu/7/libgcc_s.so.1 when searching for libgcc_s.so.1
/usr/bin/ld: cannot find libgcc_s.so.1
/usr/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-linux-gnu/7/libgcc.a when searching for -lgcc
/usr/bin/ld: cannot find -lgcc
collect2: error: ld returned 1 exit status

extracting from xattr.txt
failed to run compiler: exit status 1
/usr/bin/ld: cannot find Scrt1.o: No such file or directory
/usr/bin/ld: cannot find crti.o: No such file or directory
/usr/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-linux-gnu/7/libgcc.a when searching for -lgcc
/usr/bin/ld: cannot find -lgcc
/usr/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-linux-gnu/7/libgcc_s.so.1 when searching for libgcc_s.so.1
/usr/bin/ld: cannot find libgcc_s.so.1
/usr/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-linux-gnu/7/libgcc.a when searching for -lgcc
/usr/bin/ld: cannot find -lgcc
collect2: error: ld returned 1 exit status

generating linux/amd64...
extracting from 9p.txt
extracting from aio.txt
extracting from apparmor.txt
extracting from ashmem.txt
extracting from binder.txt
extracting from binfmt.txt
extracting from block.txt
extracting from bpf.txt
extracting from cdrom.txt
extracting from cgroup.txt
extracting from dri.txt
extracting from filesystem.txt
extracting from floppy.txt
extracting from fs_btrfs.txt
extracting from fs_ext4.txt
extracting from fs_ioctl.txt
extracting from fuse.txt
extracting from i2c.txt
extracting from input.txt
extracting from ion.txt
extracting from ipc.txt
extracting from ipvs.txt
extracting from key.txt
extracting from kvm.txt
failed to run compiler: exit status 1
In file included from /images/linux//include/asm-generic/ioctl.h:5:0,
from /images/linux//arch/x86/include/uapi/asm/ioctl.h:1,
from /images/linux//include/uapi/linux/ioctl.h:5,
from /images/linux//include/uapi/linux/kvm.h:13,
from :5:
: In function 'main':
/images/linux//include/uapi/linux/kvm.h:1401:48: error: invalid application of 'sizeof' to incomplete type 'struct kvm_vcpu_init'
#define KVM_ARM_VCPU_INIT _IOW(KVMIO, 0xae, struct kvm_vcpu_init)
^
/images/linux//include/uapi/asm-generic/ioctl.h:73:5: note: in definition of macro '_IOC'
((size) << _IOC_SIZESHIFT))
^~~~
/images/linux//include/uapi/asm-generic/ioctl.h:87:57: note: in expansion of macro '_IOC_TYPECHECK'
#define _IOW(type,nr,size) _IOC(_IOC_WRITE,(type),(nr),(_IOC_TYPECHECK(size)))
^~~~~~~~~~~~~~
/images/linux//include/uapi/linux/kvm.h:1401:29: note: in expansion of macro '_IOW'
#define KVM_ARM_VCPU_INIT _IOW(KVMIO, 0xae, struct kvm_vcpu_init)
^~~~
:67:23: note: in expansion of macro 'KVM_ARM_VCPU_INIT'
/images/linux//include/asm-generic/ioctl.h:13:25: error: array type has incomplete element type 'struct kvm_vcpu_init'
((sizeof(t) == sizeof(t[1]) &&
^
/images/linux//include/uapi/asm-generic/ioctl.h:73:5: note: in definition of macro '_IOC'
((size) << _IOC_SIZESHIFT))
^~~~
/images/linux//include/uapi/asm-generic/ioctl.h:87:57: note: in expansion of macro '_IOC_TYPECHECK'
#define _IOW(type,nr,size) _IOC(_IOC_WRITE,(type),(nr),(_IOC_TYPECHECK(size)))
^~~~~~~~~~~~~~
/images/linux//include/uapi/linux/kvm.h:1401:29: note: in expansion of macro '_IOW'
#define KVM_ARM_VCPU_INIT _IOW(KVMIO, 0xae, struct kvm_vcpu_init)
^~~~
:67:23: note: in expansion of macro 'KVM_ARM_VCPU_INIT'
/images/linux//include/uapi/linux/kvm.h:1401:48: error: invalid application of 'sizeof' to incomplete type 'struct kvm_vcpu_init'
#define KVM_ARM_VCPU_INIT _IOW(KVMIO, 0xae, struct kvm_vcpu_init)
^
/images/linux//include/uapi/asm-generic/ioctl.h:73:5: note: in definition of macro '_IOC'
((size) << _IOC_SIZESHIFT))
^~~~
/images/linux//include/uapi/asm-generic/ioctl.h:87:57: note: in expansion of macro '_IOC_TYPECHECK'
#define _IOW(type,nr,size) _IOC(_IOC_WRITE,(type),(nr),(_IOC_TYPECHECK(size)))
^~~~~~~~~~~~~~
/images/linux//include/uapi/linux/kvm.h:1401:29: note: in expansion of macro '_IOW'
#define KVM_ARM_VCPU_INIT _IOW(KVMIO, 0xae, struct kvm_vcpu_init)
^~~~
:67:23: note: in expansion of macro 'KVM_ARM_VCPU_INIT'
/images/linux//include/uapi/linux/kvm.h:1401:48: error: invalid application of 'sizeof' to incomplete type 'struct kvm_vcpu_init'
#define KVM_ARM_VCPU_INIT _IOW(KVMIO, 0xae, struct kvm_vcpu_init)
^
/images/linux//include/uapi/asm-generic/ioctl.h:73:5: note: in definition of macro '_IOC'
((size) << _IOC_SIZESHIFT))
^~~~
/images/linux//include/uapi/asm-generic/ioctl.h:87:57: note: in expansion of macro '_IOC_TYPECHECK'
#define _IOW(type,nr,size) _IOC(_IOC_WRITE,(type),(nr),(_IOC_TYPECHECK(size)))
^~~~~~~~~~~~~~
/images/linux//include/uapi/linux/kvm.h:1401:29: note: in expansion of macro '_IOW'
#define KVM_ARM_VCPU_INIT _IOW(KVMIO, 0xae, struct kvm_vcpu_init)
^~~~
:67:23: note: in expansion of macro 'KVM_ARM_VCPU_INIT'

extracting from loop.txt
extracting from midi.txt
extracting from namespaces.txt
extracting from nbd.txt
extracting from netfilter.txt
extracting from netfilter_arp.txt
extracting from netfilter_bridge.txt
extracting from netfilter_ipv4.txt
extracting from netfilter_ipv6.txt
extracting from netfilter_targets.txt
extracting from perf.txt
extracting from prctl.txt
extracting from random.txt
extracting from rdma.txt
extracting from rdma_cm.txt
extracting from rtc.txt
extracting from selinux.txt
extracting from sg.txt
extracting from smack.txt
extracting from sndcontrol.txt
extracting from sndseq.txt
extracting from sndtimer.txt
extracting from socket.txt
extracting from socket_alg.txt
extracting from socket_ax25.txt
extracting from socket_bluetooth.txt
extracting from socket_can.txt
extracting from socket_inet.txt
extracting from socket_inet6.txt
extracting from socket_inet_dccp.txt
extracting from socket_inet_icmp.txt
extracting from socket_inet_sctp.txt
extracting from socket_inet_tcp.txt
extracting from socket_inet_udp.txt
extracting from socket_ipx.txt
extracting from socket_kcm.txt
extracting from socket_key.txt
extracting from socket_llc.txt
extracting from socket_netlink.txt
extracting from socket_netlink_crypto.txt
extracting from socket_netlink_generic.txt
extracting from socket_netlink_generic_fou.txt
extracting from socket_netlink_generic_team.txt
extracting from socket_netlink_netfilter.txt
extracting from socket_netlink_route.txt
extracting from socket_netlink_route_sched.txt
extracting from socket_netlink_xfrm.txt
extracting from socket_netrom.txt
extracting from socket_nfc.txt
extracting from socket_packet.txt
extracting from socket_pppox.txt
extracting from socket_rds.txt
extracting from socket_tipc.txt
extracting from socket_tipc_netlink.txt
extracting from socket_unix.txt
extracting from socket_vnet.txt
extracting from socket_xdp.txt
extracting from sr.txt
extracting from sys.txt
extracting from tty.txt
extracting from tun.txt
extracting from uffd.txt
extracting from uhid.txt
extracting from uinput.txt
extracting from userio.txt
extracting from vnet.txt
extracting from xattr.txt

generating linux/arm...
make failed: failed to run ["make" "ARCH=arm" "CROSS_COMPILE=arm-linux-gnueabihf-" "CFLAGS=-D__LINUX_ARM_ARCH__=6 -march=armv6t2" "O=/tmp/syzkaller-kernel-build001163655" "-j" "48" "init/main.o"]: exit status 2
make[1]: warning: -jN forced in submake: disabling jobserver mode.
make[1]: Entering directory '/images/linux'
make[2]: Entering directory '/tmp/syzkaller-kernel-build001163655'
/bin/sh: 1: arm-linux-gnueabihf-gcc: not found
make[2]: arm-linux-gnueabihf-gcc: Command not found
/bin/sh: 1: arm-linux-gnueabihf-gcc: not found
/bin/sh: 1: arm-linux-gnueabihf-gcc: not found
GEN Makefile
/bin/sh: 1: arm-linux-gnueabihf-gcc: not found
scripts/kconfig/conf --syncconfig Kconfig
/images/linux/scripts/gcc-version.sh: 17: /images/linux/scripts/gcc-version.sh: arm-linux-gnueabihf-gcc: not found
/images/linux/scripts/gcc-version.sh: 18: /images/linux/scripts/gcc-version.sh: arm-linux-gnueabihf-gcc: not found
/images/linux/scripts/gcc-version.sh: 19: /images/linux/scripts/gcc-version.sh: arm-linux-gnueabihf-gcc: not found
/images/linux/scripts/gcc-version.sh: 17: /images/linux/scripts/gcc-version.sh: arm-linux-gnueabihf-gcc: not found
/images/linux/scripts/gcc-version.sh: 18: /images/linux/scripts/gcc-version.sh: arm-linux-gnueabihf-gcc: not found
/images/linux/scripts/gcc-version.sh: 19: /images/linux/scripts/gcc-version.sh: arm-linux-gnueabihf-gcc: not found
/images/linux/scripts/clang-version.sh: 11: /images/linux/scripts/clang-version.sh: arm-linux-gnueabihf-gcc: not found
/images/linux/scripts/gcc-plugin.sh: 11: /images/linux/scripts/gcc-plugin.sh: arm-linux-gnueabihf-gcc: not found
init/Kconfig:16:warning: 'GCC_VERSION': number is invalid
/bin/sh: 1: arm-linux-gnueabihf-gcc: not found
make[2]: arm-linux-gnueabihf-gcc: Command not found
make[2]: arm-linux-gnueabihf-gcc: Command not found
make[2]: arm-linux-gnueabihf-gcc: Command not found
SYSHDR arch/arm/include/generated/uapi/asm/unistd-common.h
SYSHDR arch/arm/include/generated/uapi/asm/unistd-oabi.h
SYSHDR arch/arm/include/generated/uapi/asm/unistd-eabi.h
make[2]: arm-linux-gnueabihf-gcc: Command not found
GEN Makefile
WRAP arch/arm/include/generated/uapi/asm/bitsperlong.h
WRAP arch/arm/include/generated/uapi/asm/bpf_perf_event.h
WRAP arch/arm/include/generated/uapi/asm/errno.h
WRAP arch/arm/include/generated/uapi/asm/ioctl.h
WRAP arch/arm/include/generated/uapi/asm/ipcbuf.h
WRAP arch/arm/include/generated/uapi/asm/msgbuf.h
WRAP arch/arm/include/generated/uapi/asm/poll.h
WRAP arch/arm/include/generated/uapi/asm/param.h
WRAP arch/arm/include/generated/uapi/asm/resource.h
WRAP arch/arm/include/generated/uapi/asm/sembuf.h
WRAP arch/arm/include/generated/uapi/asm/shmbuf.h
make[2]: arm-linux-gnueabihf-gcc: Command not found
WRAP arch/arm/include/generated/uapi/asm/siginfo.h
WRAP arch/arm/include/generated/uapi/asm/socket.h
WRAP arch/arm/include/generated/uapi/asm/sockios.h
WRAP arch/arm/include/generated/uapi/asm/termbits.h
WRAP arch/arm/include/generated/uapi/asm/termios.h
UPD include/generated/uapi/linux/version.h
make[2]: arm-linux-gnueabihf-gcc: Command not found
make[2]: arm-linux-gnueabihf-gcc: Command not found
WRAP arch/arm/include/generated/asm/compat.h
WRAP arch/arm/include/generated/asm/current.h
WRAP arch/arm/include/generated/asm/emergency-restart.h
WRAP arch/arm/include/generated/asm/early_ioremap.h
WRAP arch/arm/include/generated/asm/exec.h
WRAP arch/arm/include/generated/asm/irq_regs.h
WRAP arch/arm/include/generated/asm/extable.h
WRAP arch/arm/include/generated/asm/kdebug.h
make[2]: arm-linux-gnueabihf-gcc: Command not found
WRAP arch/arm/include/generated/asm/local.h
WRAP arch/arm/include/generated/asm/mm-arch-hooks.h
WRAP arch/arm/include/generated/asm/local64.h
WRAP arch/arm/include/generated/asm/msi.h
WRAP arch/arm/include/generated/asm/parport.h
WRAP arch/arm/include/generated/asm/rwsem.h
WRAP arch/arm/include/generated/asm/segment.h
WRAP arch/arm/include/generated/asm/preempt.h
WRAP arch/arm/include/generated/asm/seccomp.h
WRAP arch/arm/include/generated/asm/serial.h
WRAP arch/arm/include/generated/asm/sizes.h
WRAP arch/arm/include/generated/asm/simd.h
WRAP arch/arm/include/generated/asm/timex.h
WRAP arch/arm/include/generated/asm/trace_clock.h
HOSTCC scripts/dtc/dtc.o
HOSTCC scripts/dtc/flattree.o
HOSTCC scripts/dtc/fstree.o
HOSTCC scripts/dtc/data.o
HOSTCC scripts/dtc/livetree.o
HOSTCC scripts/dtc/treesource.o
HOSTCC scripts/dtc/srcpos.o
HOSTCC scripts/dtc/checks.o
HOSTCC scripts/dtc/util.o
LEX scripts/dtc/dtc-lexer.lex.c
YACC scripts/dtc/dtc-parser.tab.h
YACC scripts/dtc/dtc-parser.tab.c
HOSTCC scripts/dtc/dtc-parser.tab.o
HOSTCC scripts/dtc/dtc-lexer.lex.o
UPD include/config/kernel.release
make[2]: arm-linux-gnueabihf-gcc: Command not found
Using /images/linux as source for kernel
make[2]: arm-linux-gnueabihf-gcc: Command not found
UPD include/generated/utsrelease.h
make[2]: arm-linux-gnueabihf-gcc: Command not found
HOSTLD scripts/dtc/dtc
make[2]: arm-linux-gnueabihf-gcc: Command not found
HOSTCC scripts/kallsyms
HOSTCC scripts/sortextable
HOSTCC scripts/conmakehash
HOSTCC scripts/asn1_compiler
HOSTCC scripts/extract-cert
make[2]: arm-linux-gnueabihf-gcc: Command not found
SYSNR arch/arm/include/generated/asm/unistd-nr.h
GEN arch/arm/include/generated/asm/mach-types.h
SYSTBL arch/arm/include/generated/calls-oabi.S
SYSTBL arch/arm/include/generated/calls-eabi.S
make[2]: arm-linux-gnueabihf-gcc: Command not found
HOSTCC scripts/mod/mk_elfconfig
CC scripts/mod/devicetable-offsets.s
/bin/sh: 1: arm-linux-gnueabihf-gcc: not found
/images/linux/scripts/Makefile.build:112: recipe for target 'scripts/mod/devicetable-offsets.s' failed
make[3]: *** [scripts/mod/devicetable-offsets.s] Error 127
make[3]: *** Waiting for unfinished jobs....
CC scripts/mod/empty.o
/bin/sh: 1: arm-linux-gnueabihf-gcc: not found
/images/linux/scripts/Makefile.build:278: recipe for target 'scripts/mod/empty.o' failed
make[3]: *** [scripts/mod/empty.o] Error 127
/images/linux/Makefile:1080: recipe for target 'prepare0' failed
make[2]: *** [prepare0] Error 2
make[2]: Leaving directory '/tmp/syzkaller-kernel-build001163655'
Makefile:160: recipe for target 'sub-make' failed
make[1]: *** [sub-make] Error 2
make[1]: Leaving directory '/images/linux'

generating linux/arm64...
make failed: failed to run ["make" "ARCH=arm64" "CROSS_COMPILE=aarch64-linux-gnu-" "CFLAGS=" "O=/tmp/syzkaller-kernel-build125027130" "-j" "48" "init/main.o"]: exit status 2
make[1]: warning: -jN forced in submake: disabling jobserver mode.
make[1]: Entering directory '/images/linux'
make[2]: Entering directory '/tmp/syzkaller-kernel-build125027130'
arch/arm64/Makefile:27: ld does not support --fix-cortex-a53-843419; kernel may be susceptible to erratum
arch/arm64/Makefile:40: LSE atomics not supported by binutils
arch/arm64/Makefile:48: Detected assembler with broken .inst; disassembly will be unreliable
/bin/sh: 1: aarch64-linux-gnu-gcc: not found
make[2]: aarch64-linux-gnu-gcc: Command not found
/bin/sh: 1: aarch64-linux-gnu-gcc: not found
/bin/sh: 1: aarch64-linux-gnu-gcc: not found
GEN Makefile
/bin/sh: 1: aarch64-linux-gnu-gcc: not found
scripts/kconfig/conf --syncconfig Kconfig
/images/linux/scripts/gcc-version.sh: 17: /images/linux/scripts/gcc-version.sh: aarch64-linux-gnu-gcc: not found
/images/linux/scripts/gcc-version.sh: 18: /images/linux/scripts/gcc-version.sh: aarch64-linux-gnu-gcc: not found
/images/linux/scripts/gcc-version.sh: 19: /images/linux/scripts/gcc-version.sh: aarch64-linux-gnu-gcc: not found
/images/linux/scripts/gcc-version.sh: 17: /images/linux/scripts/gcc-version.sh: aarch64-linux-gnu-gcc: not found
/images/linux/scripts/gcc-version.sh: 18: /images/linux/scripts/gcc-version.sh: aarch64-linux-gnu-gcc: not found
/images/linux/scripts/gcc-version.sh: 19: /images/linux/scripts/gcc-version.sh: aarch64-linux-gnu-gcc: not found
/images/linux/scripts/clang-version.sh: 11: /images/linux/scripts/clang-version.sh: aarch64-linux-gnu-gcc: not found
/images/linux/scripts/gcc-plugin.sh: 11: /images/linux/scripts/gcc-plugin.sh: aarch64-linux-gnu-gcc: not found
init/Kconfig:16:warning: 'GCC_VERSION': number is invalid
arch/arm64/Makefile:27: ld does not support --fix-cortex-a53-843419; kernel may be susceptible to erratum
arch/arm64/Makefile:40: LSE atomics not supported by binutils
arch/arm64/Makefile:48: Detected assembler with broken .inst; disassembly will be unreliable
/bin/sh: 1: aarch64-linux-gnu-gcc: not found
make[2]: aarch64-linux-gnu-gcc: Command not found
make[2]: aarch64-linux-gnu-gcc: Command not found
make[2]: aarch64-linux-gnu-gcc: Command not found
GEN Makefile
WRAP arch/arm64/include/generated/uapi/asm/kvm_para.h
WRAP arch/arm64/include/generated/uapi/asm/errno.h
WRAP arch/arm64/include/generated/uapi/asm/ioctl.h
WRAP arch/arm64/include/generated/uapi/asm/ioctls.h
WRAP arch/arm64/include/generated/uapi/asm/ipcbuf.h
WRAP arch/arm64/include/generated/uapi/asm/mman.h
make[2]: aarch64-linux-gnu-gcc: Command not found
WRAP arch/arm64/include/generated/uapi/asm/msgbuf.h
WRAP arch/arm64/include/generated/uapi/asm/poll.h
WRAP arch/arm64/include/generated/uapi/asm/resource.h
WRAP arch/arm64/include/generated/uapi/asm/sembuf.h
WRAP arch/arm64/include/generated/uapi/asm/shmbuf.h
WRAP arch/arm64/include/generated/uapi/asm/siginfo.h
WRAP arch/arm64/include/generated/uapi/asm/socket.h
WRAP arch/arm64/include/generated/uapi/asm/sockios.h
WRAP arch/arm64/include/generated/uapi/asm/swab.h
WRAP arch/arm64/include/generated/uapi/asm/termbits.h
WRAP arch/arm64/include/generated/uapi/asm/termios.h
WRAP arch/arm64/include/generated/uapi/asm/types.h
UPD include/generated/uapi/linux/version.h
make[2]: aarch64-linux-gnu-gcc: Command not found
make[2]: aarch64-linux-gnu-gcc: Command not found
WRAP arch/arm64/include/generated/asm/bugs.h
WRAP arch/arm64/include/generated/asm/delay.h
WRAP arch/arm64/include/generated/asm/div64.h
WRAP arch/arm64/include/generated/asm/dma.h
WRAP arch/arm64/include/generated/asm/dma-contiguous.h
WRAP arch/arm64/include/generated/asm/early_ioremap.h
WRAP arch/arm64/include/generated/asm/hw_irq.h
WRAP arch/arm64/include/generated/asm/emergency-restart.h
WRAP arch/arm64/include/generated/asm/irq_regs.h
WRAP arch/arm64/include/generated/asm/kmap_types.h
WRAP arch/arm64/include/generated/asm/kdebug.h
make[2]: aarch64-linux-gnu-gcc: Command not found
WRAP arch/arm64/include/generated/asm/local.h
WRAP arch/arm64/include/generated/asm/local64.h
WRAP arch/arm64/include/generated/asm/mcs_spinlock.h
WRAP arch/arm64/include/generated/asm/mm-arch-hooks.h
WRAP arch/arm64/include/generated/asm/msi.h
WRAP arch/arm64/include/generated/asm/qrwlock.h
WRAP arch/arm64/include/generated/asm/qspinlock.h
WRAP arch/arm64/include/generated/asm/rwsem.h
WRAP arch/arm64/include/generated/asm/segment.h
WRAP arch/arm64/include/generated/asm/serial.h
WRAP arch/arm64/include/generated/asm/set_memory.h
WRAP arch/arm64/include/generated/asm/sizes.h
WRAP arch/arm64/include/generated/asm/switch_to.h
WRAP arch/arm64/include/generated/asm/trace_clock.h
WRAP arch/arm64/include/generated/asm/unaligned.h
WRAP arch/arm64/include/generated/asm/user.h
WRAP arch/arm64/include/generated/asm/vga.h
HOSTCC scripts/dtc/dtc.o
HOSTCC scripts/dtc/flattree.o
HOSTCC scripts/dtc/fstree.o
HOSTCC scripts/dtc/data.o
HOSTCC scripts/dtc/livetree.o
HOSTCC scripts/dtc/treesource.o
HOSTCC scripts/dtc/srcpos.o
HOSTCC scripts/dtc/checks.o
LEX scripts/dtc/dtc-lexer.lex.c
HOSTCC scripts/dtc/util.o
YACC scripts/dtc/dtc-parser.tab.h
YACC scripts/dtc/dtc-parser.tab.c
HOSTCC scripts/dtc/dtc-parser.tab.o
HOSTCC scripts/dtc/dtc-lexer.lex.o
UPD include/config/kernel.release
make[2]: aarch64-linux-gnu-gcc: Command not found
Using /images/linux as source for kernel
make[2]: aarch64-linux-gnu-gcc: Command not found
UPD include/generated/utsrelease.h
make[2]: aarch64-linux-gnu-gcc: Command not found
HOSTLD scripts/dtc/dtc
make[2]: aarch64-linux-gnu-gcc: Command not found
HOSTCC scripts/bin2c
HOSTCC scripts/kallsyms
HOSTCC scripts/pnmtologo
HOSTCC scripts/conmakehash
HOSTCC scripts/sortextable
HOSTCC scripts/asn1_compiler
HOSTCC scripts/extract-cert
make[2]: aarch64-linux-gnu-gcc: Command not found
HOSTCC scripts/mod/mk_elfconfig
CC scripts/mod/devicetable-offsets.s
/bin/sh: 1: aarch64-linux-gnu-gcc: not found
/images/linux/scripts/Makefile.build:112: recipe for target 'scripts/mod/devicetable-offsets.s' failed
make[3]: *** [scripts/mod/devicetable-offsets.s] Error 127
make[3]: *** Waiting for unfinished jobs....
CC scripts/mod/empty.o
/bin/sh: 1: aarch64-linux-gnu-gcc: not found
/images/linux/scripts/Makefile.build:278: recipe for target 'scripts/mod/empty.o' failed
make[3]: *** [scripts/mod/empty.o] Error 127
/images/linux/Makefile:1080: recipe for target 'prepare0' failed
make[2]: *** [prepare0] Error 2
make[2]: Leaving directory '/tmp/syzkaller-kernel-build125027130'
Makefile:160: recipe for target 'sub-make' failed
make[1]: *** [sub-make] Error 2
make[1]: Leaving directory '/images/linux'

generating linux/ppc64le...
make failed: failed to run ["make" "ARCH=powerpc" "CROSS_COMPILE=powerpc64le-linux-gnu-" "CFLAGS=-D__powerpc64__" "O=/tmp/syzkaller-kernel-build826141009" "-j" "48" "init/main.o"]: exit status 2
make[1]: warning: -jN forced in submake: disabling jobserver mode.
make[1]: Entering directory '/images/linux'
make[2]: Entering directory '/tmp/syzkaller-kernel-build826141009'
/bin/sh: 1: powerpc64le-linux-gnu-ld: not found
/bin/sh: 1: [: -ge: unexpected operator
/bin/sh: 1: powerpc64le-linux-gnu-gcc: not found
make[2]: powerpc64le-linux-gnu-gcc: Command not found
/bin/sh: 1: powerpc64le-linux-gnu-ld: not found
/bin/sh: 1: [: -ge: unexpected operator
/bin/sh: 1: powerpc64le-linux-gnu-gcc: not found
/bin/sh: 1: powerpc64le-linux-gnu-gcc: not found
GEN Makefile
/bin/sh: 1: powerpc64le-linux-gnu-gcc: not found
scripts/kconfig/conf --syncconfig Kconfig
/images/linux/scripts/gcc-version.sh: 17: /images/linux/scripts/gcc-version.sh: powerpc64le-linux-gnu-gcc: not found
/images/linux/scripts/gcc-version.sh: 18: /images/linux/scripts/gcc-version.sh: powerpc64le-linux-gnu-gcc: not found
/images/linux/scripts/gcc-version.sh: 19: /images/linux/scripts/gcc-version.sh: powerpc64le-linux-gnu-gcc: not found
/images/linux/scripts/gcc-version.sh: 17: /images/linux/scripts/gcc-version.sh: powerpc64le-linux-gnu-gcc: not found
/images/linux/scripts/gcc-version.sh: 18: /images/linux/scripts/gcc-version.sh: powerpc64le-linux-gnu-gcc: not found
/images/linux/scripts/gcc-version.sh: 19: /images/linux/scripts/gcc-version.sh: powerpc64le-linux-gnu-gcc: not found
/images/linux/scripts/clang-version.sh: 11: /images/linux/scripts/clang-version.sh: powerpc64le-linux-gnu-gcc: not found
/images/linux/scripts/gcc-plugin.sh: 11: /images/linux/scripts/gcc-plugin.sh: powerpc64le-linux-gnu-gcc: not found
init/Kconfig:16:warning: 'GCC_VERSION': number is invalid
/bin/sh: 1: powerpc64le-linux-gnu-ld: not found
/bin/sh: 1: [: -ge: unexpected operator
/bin/sh: 1: powerpc64le-linux-gnu-gcc: not found
make[2]: powerpc64le-linux-gnu-gcc: Command not found
make[2]: powerpc64le-linux-gnu-gcc: Command not found
SYSTBL arch/powerpc/include/generated/asm/syscall_table_32.h
SYSTBL arch/powerpc/include/generated/asm/syscall_table_64.h
make[2]: powerpc64le-linux-gnu-gcc: Command not found
SYSTBL arch/powerpc/include/generated/asm/syscall_table_c32.h
SYSTBL arch/powerpc/include/generated/asm/syscall_table_spu.h
SYSHDR arch/powerpc/include/generated/uapi/asm/unistd_32.h
SYSHDR arch/powerpc/include/generated/uapi/asm/unistd_64.h
make[2]: powerpc64le-linux-gnu-gcc: Command not found
GEN Makefile
WRAP arch/powerpc/include/generated/uapi/asm/param.h
WRAP arch/powerpc/include/generated/uapi/asm/poll.h
WRAP arch/powerpc/include/generated/uapi/asm/resource.h
WRAP arch/powerpc/include/generated/uapi/asm/siginfo.h
WRAP arch/powerpc/include/generated/uapi/asm/statfs.h
WRAP arch/powerpc/include/generated/uapi/asm/sockios.h
make[2]: powerpc64le-linux-gnu-gcc: Command not found
UPD include/generated/uapi/linux/version.h
make[2]: powerpc64le-linux-gnu-gcc: Command not found
make[2]: powerpc64le-linux-gnu-gcc: Command not found
make[2]: powerpc64le-linux-gnu-gcc: Command not found
WRAP arch/powerpc/include/generated/asm/div64.h
WRAP arch/powerpc/include/generated/asm/export.h
WRAP arch/powerpc/include/generated/asm/irq_regs.h
WRAP arch/powerpc/include/generated/asm/irq_work.h
WRAP arch/powerpc/include/generated/asm/local64.h
WRAP arch/powerpc/include/generated/asm/mcs_spinlock.h
WRAP arch/powerpc/include/generated/asm/preempt.h
make[2]: powerpc64le-linux-gnu-gcc: Command not found
WRAP arch/powerpc/include/generated/asm/rwsem.h
WRAP arch/powerpc/include/generated/asm/vtime.h
WRAP arch/powerpc/include/generated/asm/msi.h
HOSTCC scripts/dtc/dtc.o
HOSTCC scripts/dtc/flattree.o
HOSTCC scripts/dtc/fstree.o
HOSTCC scripts/dtc/data.o
HOSTCC scripts/dtc/livetree.o
HOSTCC scripts/dtc/treesource.o
HOSTCC scripts/dtc/srcpos.o
HOSTCC scripts/dtc/checks.o
HOSTCC scripts/dtc/util.o
LEX scripts/dtc/dtc-lexer.lex.c
YACC scripts/dtc/dtc-parser.tab.h
YACC scripts/dtc/dtc-parser.tab.c
HOSTCC scripts/dtc/dtc-parser.tab.o
HOSTCC scripts/dtc/dtc-lexer.lex.o
UPD include/config/kernel.release
make[2]: powerpc64le-linux-gnu-gcc: Command not found
Using /images/linux as source for kernel
make[2]: powerpc64le-linux-gnu-gcc: Command not found
UPD include/generated/utsrelease.h
make[2]: powerpc64le-linux-gnu-gcc: Command not found
HOSTLD scripts/dtc/dtc
make[2]: powerpc64le-linux-gnu-gcc: Command not found
HOSTCC scripts/bin2c
HOSTCC scripts/kallsyms
HOSTCC scripts/pnmtologo
HOSTCC scripts/conmakehash
HOSTCC scripts/sortextable
HOSTCC scripts/genksyms/genksyms.o
YACC scripts/genksyms/parse.tab.c
LEX scripts/genksyms/lex.lex.c
YACC scripts/genksyms/parse.tab.h
HOSTCC scripts/genksyms/parse.tab.o
HOSTCC scripts/genksyms/lex.lex.o
HOSTLD scripts/genksyms/genksyms
make[2]: powerpc64le-linux-gnu-gcc: Command not found
HOSTCC scripts/mod/mk_elfconfig
CC scripts/mod/devicetable-offsets.s
/bin/sh: 1: powerpc64le-linux-gnu-gcc: not found
/images/linux/scripts/Makefile.build:112: recipe for target 'scripts/mod/devicetable-offsets.s' failed
make[3]: *** [scripts/mod/devicetable-offsets.s] Error 127
make[3]: *** Waiting for unfinished jobs....
CC scripts/mod/empty.o
/bin/sh: 1: powerpc64le-linux-gnu-gcc: not found
/images/linux/scripts/Makefile.build:278: recipe for target 'scripts/mod/empty.o' failed
make[3]: *** [scripts/mod/empty.o] Error 127
/images/linux/Makefile:1080: recipe for target 'prepare0' failed
make[2]: *** [prepare0] Error 2
make[2]: Leaving directory '/tmp/syzkaller-kernel-build826141009'
Makefile:160: recipe for target 'sub-make' failed
make[1]: *** [sub-make] Error 2
make[1]: Leaving directory '/images/linux'

Makefile:171: recipe for target 'extract' failed
make: *** [extract] Error 1

@dvyukov
Copy link
Collaborator

dvyukov commented Mar 14, 2019

Yes, this is not supposed to work, see:
#1053 (comment)

@noaos
Copy link
Contributor Author

noaos commented Mar 14, 2019

So how do we proceed from here?

@dvyukov
Copy link
Collaborator

dvyukov commented Mar 14, 2019

So how do we proceed from here?

////////////

But the recommended way (and the most tested) is make extract.

Just run:

make extract SOURCEDIR=/images/linux
```
It will do everything.

Running syz-extract manually is like invoking preprocessor, compiler, assembler and linker manually with all the custom flags instead of invoking the compiler frontend gcc. It gives lots of flexibility but also adds lots of complexity.

@noaos
Copy link
Contributor Author

noaos commented Mar 14, 2019

The long error-ish output above is the result of make extract.
Same when I remove TARGETOS.

@dvyukov
Copy link
Collaborator

dvyukov commented Mar 14, 2019

My bad. I stopped reading carefully after several mentions of syz-extract.
All these errors for arm/arm64/386/powerpc suggest missing cross-compilers:

/usr/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-linux-gnu/7/libgcc.a when searching for -lgcc
/usr/bin/ld: cannot find -lgcc            
/images/linux/scripts/gcc-version.sh: 17: /images/linux/scripts/gcc-version.sh: arm-linux-gnueabihf-gcc: not found
make[2]: arm-linux-gnueabihf-gcc: Command not found
/images/linux/scripts/gcc-version.sh: 18: /images/linux/scripts/gcc-version.sh: aarch64-linux-gnu-gcc: not found
/images/linux/scripts/gcc-version.sh: 19: /images/linux/scripts/gcc-version.sh: powerpc64le-linux-gnu-gcc: not found

Welcome to C world. Nobody can build anything...
Please try sudo make install_prerequisites if you didn't already. It's known to work on Ubuntu/Debian distros, but if you have a different one... well, you need to install packages that provide arm-linux-gnueabihf-gcc, aarch64-linux-gnu-gcc, powerpc64le-linux-gnu-gcc and 386 libraries.
It's mentioned in docs/contributing.md, but probably need to add to docs/syscall_descriptions.md as well.

If nothing works, as I said I can merge it as is and then fix up in a separate commit.

@noaos
Copy link
Contributor Author

noaos commented Mar 14, 2019

Welcome to C world. Nobody can build anything...
I know, I was surprised you suggested it but hey, why not give it a go? (pun intended)
Please try sudo make install_prerequisites if you didn't already. It's known to work on Ubuntu/Debian distros,
I reinstalled my server to ubuntu 18.04 as you guys are using Debian/Ubuntu.
make install_prerequisites failed as well,
...
go get -u golang.org/x/tools/cmd/goyacc
go get -u gopkg.in/alecthomas/gometalinter.v2
gometalinter.v2 --install
make: gometalinter.v2: Command not found
Makefile:320: recipe for target 'install_prerequisites' failed
make: *** [install_prerequisites] Error 127

Interesting enough:
$ l $GOPATH/src/gopkg.in/alecthomas/gometalinter.v2/
CONTRIBUTING.md README.md aggregate.go config.go directives.go execute.go issue.go issue_test.go linters_test.go main_test.go partition_test.go scripts/ vendor/
COPYING _linters/ checkstyle.go config_test.go directives_test.go execute_test.go issue_template.md linters.go main.go partition.go regressiontests/ stringset.go
So it exists but make can't find it.

If nothing works, as I said I can merge it as is and then fix up in a separate commit.
We'll see about that. I'll try installing the libraries you suggested but that will be on Sunday.

Thanks for all your help!

@noaos
Copy link
Contributor Author

noaos commented Mar 14, 2019

A final addition: I rebased to take your golang changes and now:

$ bin/syz-extract -os linux -arch amd64 -sourcedir /images/linux/ rdma.txt
generating linux/amd64...
extracting from rdma.txt
        failed to run compiler: exit status 1
In file included from <command-line>:0:0:
/images/linux//include/linux/kconfig.h:5:10: fatal error: generated/autoconf.h: No such file or directory
 #include <generated/autoconf.h>
          ^~~~~~~~~~~~~~~~~~~~~~
compilation terminated.

but

$ l /lib/modules/$(uname -r)/build/include/generated
asm-offsets.h  autoconf.h  autoksyms.h  bounds.h  compile.h  timeconst.h  uapi/  utsrelease.h

If you have any suggestions, I'll try them next week. Else, I'll dig into this.

@dvyukov
Copy link
Collaborator

dvyukov commented Mar 14, 2019

So it exists but make can't find it.

I think you need to add $GOPATH/bin to $PATH (that's a common setup because go get installs binaries to $GOPATH/bin). If you did not set $GOPATH, then it defaults to ~/go, so that will be ~/go/bin.

@dvyukov
Copy link
Collaborator

dvyukov commented Mar 14, 2019

The dev_kvm.txt for amd64 was different and should be fixed by:
d72db19

@dvyukov
Copy link
Collaborator

dvyukov commented Mar 14, 2019

A final addition: I rebased to take your golang changes and now:

make extract cleans the kernel dir whild syz-exctract expects the kernel dir to be pre-bootstrapped (see https://github.com/google/syzkaller/blob/master/sys/syz-extract/linux.go#L45-L106).
Perhaps you run make extract, it cleaned the dir and now syz-extract can't find kernel auto-generated files.

@noaos
Copy link
Contributor Author

noaos commented Mar 17, 2019

Updates:

  • I can build syzkaller (my way, make bin/syz-extract) for amd64

  • make install_prerequisites now succeeds.

  • I can't build for other archs. I tried installing gcc-arm-linux-gnueabi and binutils-arm-linux-gnueabi but that's not enough:
    $ bin/syz-extract -os linux -arch arm -sourcedir /images/linux/ rdma.txt generating linux/arm... extracting from rdma.txt failed to run compiler: exit status 1 In file included from /images/linux//arch/arm/include/uapi/asm/posix_types.h:36:0, from /images/linux//include/uapi/linux/posix_types.h:36, from /images/linux//include/uapi/linux/types.h:14, from /images/linux//include/linux/types.h:6, from /images/linux//include/uapi/asm-generic/fcntl.h:5, from /images/linux//arch/arm/include/uapi/asm/fcntl.h:10, from /images/linux//include/uapi/linux/fcntl.h:5, from <stdin>:5: /images/linux//include/uapi/asm-generic/posix_types.h:5:10: fatal error: asm/bitsperlong.h: No such file or directory #include <asm/bitsperlong.h> ^~~~~~~~~~~~~~~~~~~ compilation terminated.

  • No updates from Google's CLA submissions yet.

@dvyukov
Copy link
Collaborator

dvyukov commented Mar 17, 2019

But you pre-bootstrapped arm build in /images/linux before running bin/syz-extract -arch arm, right? It needs all of the generated headers for arm.

@noaos
Copy link
Contributor Author

noaos commented Mar 17, 2019

But you pre-bootstrapped arm build in /images/linux before running bin/syz-extract -arch arm, right? It needs all of the generated headers for arm.

sorry, I'm not familiar with this. Do you have a guide?

@dvyukov
Copy link
Collaborator

dvyukov commented Mar 17, 2019

But you pre-bootstrapped arm build in /images/linux before running bin/syz-extract -arch arm, right? It needs all of the generated headers for arm.

sorry, I'm not familiar with this. Do you have a guide?

What's the current status of running make extract? I think we resolved all known problems.
If you run syz-extract manually you create problems for yourself.
I understand that make extract was broken because kernel is a moving target and native cross-compilation is hell, but we try to fix these bugs. Running make extract is the simple and supported way of doing this.

@noaos
Copy link
Contributor Author

noaos commented Mar 17, 2019

What's the current status of running make extract? I think we resolved all known problems.
If you run syz-extract manually you create problems for yourself.
I understand that make extract was broken because kernel is a moving target and native cross-compilation is hell, but we try to fix these bugs. Running make extract is the simple and supported way of doing this.

I cut some of it for readability's sake.

$ make extract /images/linux

export BUILDOS=linux
export NATIVEBUILDOS=linux
export HOSTOS=linux
export HOSTARCH=amd64
export TARGETOS=linux
export TARGETARCH=amd64
export TARGETVMARCH=amd64
export CC=gcc
export ADDCFLAGS=-O2 -pthread -Wall -Werror -Wparentheses -Wunused-const-variable -Wframe-larger-than=8192 -m64 -static
export NCORES=48
export EXE=
export NATIVEBUILDOS=linux

GOOS=linux GOARCH=amd64 go build "-ldflags=-s -w -X github.com/google/syzkaller/sys.GitRevision=2470bb760b295949f45c49767f55ecf40e78af7e+" -o bin/syz-extract ./sys/syz-extract
make: Nothing to be done for '/images/linux'.
bin/syz-extract -build -os=linux -sourcedir=/images/linux
generating linux/386...
... (no issues here)
generating linux/amd64...
... (no issues here)
generating linux/arm...
... (no issues here)
generating linux/arm64...
... (no issues here)
generating linux/ppc64le...
...
extracting from vnet.txt
extracting from xattr.txt

socket.txt: SO_RCVTIMEO_OLD is unsupported on all arches (typo?)
socket.txt: SO_SNDTIMEO_OLD is unsupported on all arches (typo?)
socket.txt: SO_TIMESTAMPING_OLD is unsupported on all arches (typo?)
socket.txt: SO_TIMESTAMP_OLD is unsupported on all arches (typo?)
socket.txt: SO_TIMESTAMPNS_OLD is unsupported on all arches (typo?)
Makefile:177: recipe for target 'extract' failed
make: *** [extract] Error 1

@dvyukov
Copy link
Collaborator

dvyukov commented Mar 17, 2019

This suggests that you are using an old kernel checkout. Extract need to run on the latest checkout. Older revisions will naturally break due to missing syscalls/consts/etc. Somewhere above I provided a commit that worked for me, take at least that commit.

@noaos
Copy link
Contributor Author

noaos commented Mar 17, 2019

We're running syzkaller on https://git.kernel.org/pub/scm/linux/kernel/git/leon/linux-rdma but I changed it to Linus's master for now.
Built and pushed (make extract replacing make bin/syz-extract and bin/syz-extract -os linux -arch amd64 -sourcedir /images/linux/ rdma.txt)

@dvyukov
Copy link
Collaborator

dvyukov commented Mar 18, 2019

Built and pushed (make extract replacing make bin/syz-extract and bin/syz-extract -os linux -arch amd64 -sourcedir /images/linux/ rdma.txt)

Great!

We're running syzkaller on https://git.kernel.org/pub/scm/linux/kernel/git/leon/linux-rdma but I changed it to Linus's master for now.

If everybody use different trees on different revisions, it can't work unfortunately. Consider, you add some consts that are present in your tree, then somebody else adds own but removes yours (they are not in their tree), and so on. We use the latest upstream as the source of truth.

I've also sent an internal email re CLA.

Sorry that it's all so painful. The second time it really should be just:

make extract SOURCEDIR=/images/linux
make generate
git add -u && git commit && git push

hopefully... :)

@noaos
Copy link
Contributor Author

noaos commented Mar 18, 2019

If everybody use different trees on different revisions, it can't work unfortunately. Consider, you add some consts that are present in your tree, then somebody else adds own but removes yours (they are not in their tree), and so on. We use the latest upstream as the source of truth.

Understood. We're usually rebased upstream as well and should catch up with Linus today or tomorrow.

I've also sent an internal email re CLA.

Thanks for that, your help is appreciated.

Sorry that it's all so painful. The second time it really should be just:

make extract SOURCEDIR=/images/linux
make generate
git add -u && git commit && git push

hopefully... :)

Hopefully :)

}

mlx5_get_context_cmd {
command const[0x0, int32]
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Are there any literal consts for these? Is it IB_USER_VERBS_CMD_GET_CONTEXT? Please use literal consts.
It's hard for me to find any traces of this in kernel source to do any checking or understand what happens.
Usually if I see, say, mlx5_get_context_cmd I can do https://elixir.bootlin.com/linux/v5.1-rc1/ident/mlx5_get_context_cmd and find corresponding kernel code. But in this case I find nothing.
While https://elixir.bootlin.com/linux/v5.1-rc1/ident/IB_USER_VERBS_CMD_GET_CONTEXT gives something.

provider_in_words const[0x0, int16]
provider_out_words const[0x8, int16]
reserved const[0x0, int32]
comp_mask const[0x0, int32]
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

It seems these reserved and comp_mask fields correspond to ib_uverbs_ex_query_device struct:
https://elixir.bootlin.com/linux/v5.1-rc1/source/include/uapi/rdma/ib_user_verbs.h#L219
Please declare this struct explicitly with the name matching kernel definition.
It makes working with these description way easier. And in future we will have static checking for typos and bugs in descriptions:
#590

# context
# ===========

mlx5_get_context_cmd_resp {
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The first 2 fields seem to correspond to ib_uverbs_get_context_resp struct. It would be useful to have ib_uverbs_get_context_resp struct explicitly defined and used here. Something along the lines of:

type ib_uverbs_get_context_resp[DRIVER_DATA] {
  async_fd			int32
  num_comp_vectors		int32
  driver_data DRIVER_DATA
}

mlx5_get_context_cmd_resp {
  qp_tab_size			int32
  ...
}

And then use ib_uverbs_get_context_resp[mlx5_get_context_cmd_resp] instantiation for mlx5.
Is there a kernel name for mlx5_get_context_cmd_resp? I can't find it in kernel:
https://elixir.bootlin.com/linux/v5.1-rc1/ident/mlx5_get_context_cmd_resp
If so please use it.

# ===========

mlx5_get_context_cmd_resp {
async_fd int32
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Is it fd? If so use fd type. If it's an fd of a particular subtype, e.g. event fd, then use fd_event.

}

query_device_cmd_ex {
command const[IB_USER_VERBS_EX_CMD_QUERY_DEVICE, int32]
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The first 6 fields seem to be duplicated across all requests. I think we need some templates for this and also match names with kernel names. Something along the lines of (if I correctly understand what happens here):

type ib_uverbs_cmd_hdr[CMD, REQ] {
	command const[CMD, int32]
	in_words  bytesize4[req, int16]
	out_words const[0, int16]
        req REQ
}

type ib_uverbs_ex_cmd_hdr[CMD, REQ, RESP, PROVIDER_REQ, PROVIDER_RESP] {
	command const[CMD, int32]
	in_words  bytesize4[request, int16]
	out_words bytesize4[response, int16]
	response ptr64[out, RESP]
	provider_in_words bytesize4[provider_req, int16]
	provider_out_words bytesize4[provider_resp, int16]
	__u32 cmd_hdr_reserved;
        request REQ
# or where/how they go?
        provider_req PROVIDER_REQ
        provider_resp ptr64[out, PROVIDER_RESP]
}

And then this can be used create actual requests as ib_uverbs_cmd_hdr[IB_USER_VERBS_EX_CMD_QUERY_DEVICE, ib_uverbs_ex_query_device] or ib_uverbs_ex_cmd_hdr[IB_USER_VERBS_EX_CMD_QUERY_DEVICE, ib_uverbs_ex_query_device, resp, ...]. Type voidmay be useful if there are cases where some of these things is not present,void` have static size of 0.

ioctl$READ_COUNTERS(fd fd_rdma, cmd const[RDMA_VERBS_IOCTL], arg ptr[inout, ib_uverbs_read_counters_cmd])

# device
syz_open_dev$ibv_device(dev ptr[in, string["/dev/infiniband/uverbs0"]], id intptr, flags flags[rdma_dev_open_flags]) fd_rdma
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The only point in using syz_open_dev is that it can format dynamic strings (while we don't have direct support for this in descriptions syntax).
E.g. if you pass string "/dev/infiniband/uverbs#" as file name, then it will generate uverbs0, uverbs1, uverbs2, etc depending on id argument.
But since we don't use # syz_open_dev only leads to more complex reproducers.
Please use openat syscall to open the file.

resource vcontext_handle[int32]

ib_uverbs_create_counters_cmd {
length bytesize8[ib_uverbs_create_counters_cmd, int16]
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

It seems all common fields for all ioctl's correspond to ib_uverbs_ioctl_hdr struct.
Please define it explicitly using templates similarly to the commands for write.

syz_open_dev$ibv_device(dev ptr[in, string["/dev/infiniband/uverbs0"]], id intptr, flags flags[rdma_dev_open_flags]) fd_rdma
write$MLX5_GET_CONTEXT(fd fd_rdma, buf ptr[inout, mlx5_get_context_cmd], len len[buf])
close$ibv_device(fd fd_rdma)
write$QUERY_DEVICE_EX(fd fd_rdma, buf ptr[inout, query_device_cmd_ex], len len[buf])
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The query_device_cmd_ex struct itself is only input, right?
There is ptr[out] for response and that response is output, right?
If so, use in direction here and for other write's. ptr[out] for response will override it for the response, so it still will be output.

resource flow_handle[int32]

# defines
define IB_USER_VERBS_EX_CMD_QUERY_DEVICE 0x80000001
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This is defined in a header. Remove.

driver_id const[RDMA_DRIVER_MLX5, int32]
reserved1 const[0x0, int32]

attr_id0 const[UVERBS_ATTR_READ_COUNTERS_HANDLE, int16]
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

We could make this an actual array:

attrs array[....]

and then use len[attars] for num_attrs.
This would allow fuzzer to generate more interesting options.

@dvyukov
Copy link
Collaborator

dvyukov commented Mar 19, 2019

I've made a first pass over the actual descriptions. The common themes:

  1. Names in descriptions don't match names in kernel, so it's very hard to figure out correspondence between them (even find where are these things in kernel code). Please preserve names.
  2. Descriptions seem to diverge from kernel descriptions in some ways. E.g. structs are squashed. Please keep them as close to each other as possible. Ideally, is there is struct X with 12 fields in kernel, we should have struct X with 12 fields.
  3. There is a bunch of duplication. We now have templates that can efficiently remove this duplication.

ioctl$READ_COUNTERS(fd fd_rdma, cmd const[RDMA_VERBS_IOCTL], arg ptr[inout, ib_uverbs_read_counters_cmd])

# device
syz_open_dev$ibv_device(dev ptr[in, string["/dev/infiniband/uverbs0"]], id intptr, flags flags[rdma_dev_open_flags]) fd_rdma
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

We now prefix all files that work with files in /dev with dev_ prefix.
And we have descirptions for /dev/infiniband/rdma_cm in dev_infiniband_rdma_cm.txt.
I think this should be named dev_infiniband_uverbs.txt

@noaos
Copy link
Contributor Author

noaos commented Mar 21, 2019

I think we sorted the CLA issue, is it possible to verify?

@googlebot
Copy link

CLAs look good, thanks!

ℹ️ Googlers: Go here for more info.

Initial description of the kernel's RDMA subsystem.
This patch covers most of the older write() interface as well as the
some ioctl functions.
Also disable rdma_cm's ib_qp_type flags as it conflicts with rdma's
definition, and rdma builds first.

Signed-off-by: Noa Osherovich <[email protected]>
Signed-off-by: Noa Osherovich <[email protected]>
@dvyukov
Copy link
Collaborator

dvyukov commented Mar 27, 2019

As per offline discussion: we merge this now with some remaining TODOs, which may be resolved later incrementally.

Thanks for bearing with me! I am merging this now.

@dvyukov dvyukov merged commit b454dce into google:master Mar 27, 2019
@dvyukov
Copy link
Collaborator

dvyukov commented Apr 2, 2019

One last question: are there also some configs/sysclts that we need to enable to cover this?
https://github.com/google/syzkaller/blob/master/dashboard/config/upstream-kasan.config
Or this is not coverable without hardware? I currently only see rdma_cm device:

# ls -l /dev/infiniband/        
total 0
crw-rw-rw- 1 root root 10, 54 Apr  2 07:44 rdma_cm

@noaos
Copy link
Contributor Author

noaos commented Apr 2, 2019

You'll need hardware / emulator for this. This also requires configuring Syzkaller to use another network device.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants