| // general protection fault in __lock_acquire |
| // https://syzkaller.appspot.com/bug?id=6a2569b47dbe868e0ef1563cc53f1557781efcf2 |
| // status:open |
| // autogenerated by syzkaller (http://github.com/google/syzkaller) |
| |
| #define _GNU_SOURCE |
| #include <endian.h> |
| #include <stdint.h> |
| #include <string.h> |
| #include <sys/syscall.h> |
| #include <unistd.h> |
| |
| long r[1]; |
| void loop() |
| { |
| memset(r, -1, sizeof(r)); |
| syscall(__NR_mmap, 0x20000000, 0xfff000, 3, 0x32, -1, 0); |
| r[0] = syscall(__NR_socket, 0x10, 3, 0xc); |
| *(uint64_t*)0x20d73fc8 = 0x20de2ff4; |
| *(uint32_t*)0x20d73fd0 = 0xc; |
| *(uint64_t*)0x20d73fd8 = 0x20023000; |
| *(uint64_t*)0x20d73fe0 = 1; |
| *(uint64_t*)0x20d73fe8 = 0; |
| *(uint64_t*)0x20d73ff0 = 0; |
| *(uint32_t*)0x20d73ff8 = 0; |
| *(uint16_t*)0x20de2ff4 = 0x10; |
| *(uint16_t*)0x20de2ff6 = 0; |
| *(uint32_t*)0x20de2ff8 = 0; |
| *(uint32_t*)0x20de2ffc = 0; |
| *(uint64_t*)0x20023000 = 0x20008f68; |
| *(uint64_t*)0x20023008 = 0x30; |
| *(uint32_t*)0x20008f68 = 0x30; |
| *(uint8_t*)0x20008f6c = 1; |
| *(uint8_t*)0x20008f6d = 4; |
| *(uint16_t*)0x20008f6e = 1; |
| *(uint32_t*)0x20008f70 = 0; |
| *(uint32_t*)0x20008f74 = 0; |
| *(uint8_t*)0x20008f78 = 0; |
| *(uint8_t*)0x20008f79 = 0; |
| *(uint16_t*)0x20008f7a = htobe16(0); |
| *(uint16_t*)0x20008f7c = 0xc; |
| *(uint16_t*)0x20008f7e = 6; |
| *(uint16_t*)0x20008f80 = 8; |
| *(uint16_t*)0x20008f82 = 0; |
| *(uint16_t*)0x20008f88 = 0x10; |
| *(uint16_t*)0x20008f8a = 1; |
| *(uint16_t*)0x20008f8c = 0xc; |
| *(uint16_t*)0x20008f8e = 4; |
| memcpy((void*)0x20008f94, "/", 2); |
| syscall(__NR_sendmsg, r[0], 0x20d73fc8, 0); |
| } |
| |
| int main() |
| { |
| loop(); |
| return 0; |
| } |