// https://syzkaller.appspot.com/bug?id=e634bd820c7bd376c401dd05f3ba79fe401f44ec // autogenerated by syzkaller (https://github.com/google/syzkaller) #define _GNU_SOURCE #include #include #include #include #include #include #include #include #ifndef __NR_io_setup #define __NR_io_setup 245 #endif #ifndef __NR_io_submit #define __NR_io_submit 248 #endif #ifndef __NR_mmap #define __NR_mmap 192 #endif #ifndef __NR_pipe #define __NR_pipe 42 #endif #undef __NR_mmap #define __NR_mmap __NR_mmap2 uint64_t r[3] = {0xffffffffffffffff, 0xffffffffffffffff, 0x0}; int main(void) { syscall(__NR_mmap, 0x20000000, 0x1000000, 3, 0x32, -1, 0); long res = 0; res = syscall(__NR_pipe, 0x20000400); if (res != -1) { r[0] = *(uint32_t*)0x20000400; r[1] = *(uint32_t*)0x20000404; } res = syscall(__NR_io_setup, 4, 0x20000200); if (res != -1) r[2] = *(uint32_t*)0x20000200; *(uint32_t*)0x200041c0 = 0x20003bc0; *(uint64_t*)0x20003bc0 = 0; *(uint32_t*)0x20003bc8 = 0; *(uint32_t*)0x20003bcc = 0; *(uint16_t*)0x20003bd0 = 4; *(uint16_t*)0x20003bd2 = 1; *(uint32_t*)0x20003bd4 = r[0]; *(uint64_t*)0x20003bd8 = 0; *(uint64_t*)0x20003be0 = 0; *(uint64_t*)0x20003be8 = 0x200; *(uint64_t*)0x20003bf0 = 0; *(uint32_t*)0x20003bf8 = 1; *(uint32_t*)0x20003bfc = r[1]; *(uint32_t*)0x200041c4 = 0; *(uint32_t*)0x200041c8 = 0; *(uint32_t*)0x200041cc = 0; *(uint32_t*)0x200041d0 = 0; *(uint32_t*)0x200041d4 = 0; *(uint32_t*)0x200041d8 = 0; syscall(__NR_io_submit, (long)r[2], 7, 0x200041c0); return 0; }