// https://syzkaller.appspot.com/bug?id=81419dc41de046ccb99da6f333074b750ac36680 // autogenerated by syzkaller (https://github.com/google/syzkaller) #define _GNU_SOURCE #include #include #include #include #include #include #include #include #include #include uint64_t r[5] = {0x0, 0x0, 0x0, 0x0, 0x0}; int main(void) { syscall(SYS_mmap, 0x10000000, 0x1000000, 7, 0x1012, -1, 0); intptr_t res = 0; syscall(SYS_munmap, 0x10ffa000, 0x3000); syscall(SYS_mmap, 0x10ffd000, 0x1000, 4, 0x1010, -1, 0); syscall(SYS_mmap, 0x10ffc000, 0x1000, 0, 0x1010, -1, 0); syscall(SYS_mmap, 0x10ffc000, 0x1000, 0, 0x1010, -1, 0); syscall(SYS_mprotect, 0x10ffe000, 0x2000, 7); syscall(SYS_mprotect, 0x10ffd000, 0x3000, 0); syscall(SYS_fork); res = syscall(SYS_fork); if (res != -1) r[0] = res; syscall(SYS_fork); res = syscall(SYS_fork); if (res != -1) r[1] = res; syscall(SYS_sigqueue, (intptr_t)r[1], 0x2b, 0); res = syscall(SYS_fork); if (res != -1) r[2] = res; syscall(SYS_sigqueue, (intptr_t)r[2], 0x2b, 0); syscall(SYS_vfork); syscall(SYS_fcntl, -1, 5, 0); syscall(SYS_sigqueue, 0, 0x2b, 0); syscall(SYS_getpgrp, (intptr_t)r[0]); syscall(SYS_fork); res = syscall(SYS_fork); if (res != -1) r[3] = res; syscall(SYS_sigqueue, (intptr_t)r[3], 0x2b, 0); syscall(SYS_getpid); syscall(SYS_mmap, 0x10ffc000, 0x1000, 3, 0x10, -1, 7); syscall(SYS_mmap, 0x10ffc000, 0x1000, 3, 0x10, -1, 7); res = syscall(SYS_fork); if (res != -1) r[4] = res; syscall(SYS_sigqueue, (intptr_t)r[4], 0xc, 0); return 0; }