On Tue, Jan 23, 2018 at 7:58 PM, David Ahern <dsah...@gmail.com> wrote: > On 1/23/18 11:50 AM, William Tu wrote: >> Hi, >> >> I'm new to kasan and trying to follow this instruction to reproduce the >> issue: >> https://github.com/google/syzkaller/blob/master/docs/executing_syzkaller_programs.md >> >> After re-compile my kernel with KASAN related config enable, I run >> $ ./syz-execprog -cover=0 -repeat=0 -procs=16 program >> >> I wonder does the "program" mean the repro.c.txt? or I should compile >> it to binary? >> # gcc -o program repro.c.txt >> # ./syz-execprog myprogram >> 2018/01/23 10:45:19 parsed 0 programs >> >> And how to use the "repro.syz.txt"? >> It seems to have some command like "syz_emit_ethernet" to generate packet. >> but I have no clue where to run it. Maybe I'm still missing something? >> > > In the past I have only compiled a kernel with KASAN, compiled the > reproducer program and run it in a VM. No need for the syzbot overhead.
Yes, if C program reproducer the crash then it's easier to use. repro.c.txt is the C program, you need to rename it to repro.c, compile with gcc and run just as ./a.out. But make sure that you have a gcc that supports KASAN (kernel build does not in the beginning on compiler not supporting KASAN). I think it's at least gcc 5+, but gcc 7+ would be better. You can also run the syzkaller reproducer as: ./syz-execprog -cover=0 -repeat=0 -procs=16 repro.syz.txt