// https://syzkaller.appspot.com/bug?id=1339e0a805a4ddb11eaee6fb6b1bc905493ded77
// autogenerated by syzkaller (http://github.com/google/syzkaller)

#define _GNU_SOURCE
#include <endian.h>
#include <fcntl.h>
#include <stdint.h>
#include <stdio.h>
#include <string.h>
#include <string.h>
#include <sys/stat.h>
#include <sys/syscall.h>
#include <unistd.h>

static uintptr_t syz_open_procfs(uintptr_t a0, uintptr_t a1)
{

  char buf[128];
  memset(buf, 0, sizeof(buf));
  if (a0 == 0) {
    snprintf(buf, sizeof(buf), "/proc/self/%s", (char*)a1);
  } else if (a0 == (uintptr_t)-1) {
    snprintf(buf, sizeof(buf), "/proc/thread-self/%s", (char*)a1);
  } else {
    snprintf(buf, sizeof(buf), "/proc/self/task/%d/%s", (int)a0, (char*)a1);
  }
  int fd = open(buf, O_RDWR);
  if (fd == -1)
    fd = open(buf, O_RDONLY);
  return fd;
}

uint64_t r[2] = {0xffffffffffffffff, 0xffffffffffffffff};
void loop()
{
  long res = 0;
  res = syscall(__NR_socket, 0xa, 1, 0);
  if (res != -1)
    r[0] = res;
  *(uint32_t*)0x20003a80 = 1;
  syscall(__NR_setsockopt, r[0], 6, 0x13, 0x20003a80, 4);
  *(uint16_t*)0x20000140 = 0xa;
  *(uint16_t*)0x20000142 = htobe16(0);
  *(uint32_t*)0x20000144 = 0;
  *(uint8_t*)0x20000148 = 0;
  *(uint8_t*)0x20000149 = 0;
  *(uint8_t*)0x2000014a = 0;
  *(uint8_t*)0x2000014b = 0;
  *(uint8_t*)0x2000014c = 0;
  *(uint8_t*)0x2000014d = 0;
  *(uint8_t*)0x2000014e = 0;
  *(uint8_t*)0x2000014f = 0;
  *(uint8_t*)0x20000150 = 0;
  *(uint8_t*)0x20000151 = 0;
  *(uint8_t*)0x20000152 = 0;
  *(uint8_t*)0x20000153 = 0;
  *(uint8_t*)0x20000154 = 0;
  *(uint8_t*)0x20000155 = 0;
  *(uint8_t*)0x20000156 = 0;
  *(uint8_t*)0x20000157 = 0;
  *(uint32_t*)0x20000158 = 0;
  syscall(__NR_connect, r[0], 0x20000140, 0x1c);
  memcpy((void*)0x20000040, "tls", 4);
  syscall(__NR_setsockopt, r[0], 6, 0x1f, 0x20000040, 4);
  *(uint16_t*)0x200006c0 = 0;
  *(uint8_t*)0x200006c2 = 0;
  *(uint32_t*)0x200006c4 = 0;
  syscall(__NR_connect, r[0], 0x200006c0, 0x80);
  *(uint16_t*)0x20000100 = 0x303;
  *(uint16_t*)0x20000102 = 0x33;
  syscall(__NR_setsockopt, r[0], 0x11a, 1, 0x20000100, 0x28);
  *(uint64_t*)0x20003a00 = 0;
  *(uint64_t*)0x20003a08 = 0;
  syscall(__NR_recvmmsg, r[0], 0x200038c0, 0, 0, 0x20003a00);
  memcpy((void*)0x200001c0, "stat", 5);
  res = syz_open_procfs(0, 0x200001c0);
  if (res != -1)
    r[1] = res;
  *(uint64_t*)0x20000000 = 0;
  syscall(__NR_sendfile, r[0], r[1], 0x20000000, 0x10000);
  *(uint8_t*)0x20000740 = 0x7f;
  *(uint8_t*)0x20000741 = 0x45;
  *(uint8_t*)0x20000742 = 0x4c;
  *(uint8_t*)0x20000743 = 0x46;
  *(uint8_t*)0x20000744 = 2;
  *(uint8_t*)0x20000745 = -1;
  *(uint8_t*)0x20000746 = -1;
  *(uint8_t*)0x20000747 = 0x78;
  *(uint64_t*)0x20000748 = 0xfffffffffffffff9;
  *(uint16_t*)0x20000750 = 2;
  *(uint16_t*)0x20000752 = 0x3e;
  *(uint32_t*)0x20000754 = 2;
  *(uint32_t*)0x20000758 = 0x2fa;
  *(uint32_t*)0x2000075c = 0x38;
  *(uint32_t*)0x20000760 = 0x172;
  *(uint32_t*)0x20000764 = 4;
  *(uint16_t*)0x20000768 = 4;
  *(uint16_t*)0x2000076a = 0x20;
  *(uint16_t*)0x2000076c = 1;
  *(uint16_t*)0x2000076e = 6;
  *(uint16_t*)0x20000770 = 7;
  *(uint16_t*)0x20000772 = 0x1000;
  *(uint32_t*)0x20000778 = 3;
  *(uint32_t*)0x2000077c = 0x100;
  *(uint32_t*)0x20000780 = 4;
  *(uint32_t*)0x20000784 = 0xa44d;
  *(uint32_t*)0x20000788 = 3;
  *(uint32_t*)0x2000078c = 5;
  *(uint32_t*)0x20000790 = 0x80;
  *(uint32_t*)0x20000794 = 0x80000001;
  *(uint32_t*)0x20000798 = 7;
  *(uint32_t*)0x2000079c = 0x76;
  *(uint32_t*)0x200007a0 = 6;
  *(uint32_t*)0x200007a4 = 3;
  *(uint32_t*)0x200007a8 = 0x794;
  *(uint32_t*)0x200007ac = 0x80000000;
  *(uint32_t*)0x200007b0 = 0x8001;
  *(uint32_t*)0x200007b4 = 0;
  *(uint64_t*)0x200007b8 = 0;
  *(uint64_t*)0x200007c0 = 0;
  *(uint64_t*)0x200007c8 = 0;
  *(uint64_t*)0x200007d0 = 0;
  *(uint64_t*)0x200007d8 = 0;
  *(uint64_t*)0x200007e0 = 0;
  *(uint64_t*)0x200007e8 = 0;
  *(uint64_t*)0x200007f0 = 0;
  *(uint64_t*)0x200007f8 = 0;
  *(uint64_t*)0x20000800 = 0;
  *(uint64_t*)0x20000808 = 0;
  *(uint64_t*)0x20000810 = 0;
  *(uint64_t*)0x20000818 = 0;
  *(uint64_t*)0x20000820 = 0;
  *(uint64_t*)0x20000828 = 0;
  *(uint64_t*)0x20000830 = 0;
  *(uint64_t*)0x20000838 = 0;
  *(uint64_t*)0x20000840 = 0;
  *(uint64_t*)0x20000848 = 0;
  *(uint64_t*)0x20000850 = 0;
  *(uint64_t*)0x20000858 = 0;
  *(uint64_t*)0x20000860 = 0;
  *(uint64_t*)0x20000868 = 0;
  *(uint64_t*)0x20000870 = 0;
  *(uint64_t*)0x20000878 = 0;
  *(uint64_t*)0x20000880 = 0;
  *(uint64_t*)0x20000888 = 0;
  *(uint64_t*)0x20000890 = 0;
  *(uint64_t*)0x20000898 = 0;
  *(uint64_t*)0x200008a0 = 0;
  *(uint64_t*)0x200008a8 = 0;
  *(uint64_t*)0x200008b0 = 0;
  *(uint64_t*)0x200008b8 = 0;
  *(uint64_t*)0x200008c0 = 0;
  *(uint64_t*)0x200008c8 = 0;
  *(uint64_t*)0x200008d0 = 0;
  *(uint64_t*)0x200008d8 = 0;
  *(uint64_t*)0x200008e0 = 0;
  *(uint64_t*)0x200008e8 = 0;
  *(uint64_t*)0x200008f0 = 0;
  *(uint64_t*)0x200008f8 = 0;
  *(uint64_t*)0x20000900 = 0;
  *(uint64_t*)0x20000908 = 0;
  *(uint64_t*)0x20000910 = 0;
  *(uint64_t*)0x20000918 = 0;
  *(uint64_t*)0x20000920 = 0;
  *(uint64_t*)0x20000928 = 0;
  *(uint64_t*)0x20000930 = 0;
  *(uint64_t*)0x20000938 = 0;
  *(uint64_t*)0x20000940 = 0;
  *(uint64_t*)0x20000948 = 0;
  *(uint64_t*)0x20000950 = 0;
  *(uint64_t*)0x20000958 = 0;
  *(uint64_t*)0x20000960 = 0;
  *(uint64_t*)0x20000968 = 0;
  *(uint64_t*)0x20000970 = 0;
  *(uint64_t*)0x20000978 = 0;
  *(uint64_t*)0x20000980 = 0;
  *(uint64_t*)0x20000988 = 0;
  *(uint64_t*)0x20000990 = 0;
  *(uint64_t*)0x20000998 = 0;
  *(uint64_t*)0x200009a0 = 0;
  *(uint64_t*)0x200009a8 = 0;
  *(uint64_t*)0x200009b0 = 0;
  *(uint64_t*)0x200009b8 = 0;
  *(uint64_t*)0x200009c0 = 0;
  *(uint64_t*)0x200009c8 = 0;
  *(uint64_t*)0x200009d0 = 0;
  *(uint64_t*)0x200009d8 = 0;
  *(uint64_t*)0x200009e0 = 0;
  *(uint64_t*)0x200009e8 = 0;
  *(uint64_t*)0x200009f0 = 0;
  *(uint64_t*)0x200009f8 = 0;
  *(uint64_t*)0x20000a00 = 0;
  *(uint64_t*)0x20000a08 = 0;
  *(uint64_t*)0x20000a10 = 0;
  *(uint64_t*)0x20000a18 = 0;
  *(uint64_t*)0x20000a20 = 0;
  *(uint64_t*)0x20000a28 = 0;
  *(uint64_t*)0x20000a30 = 0;
  *(uint64_t*)0x20000a38 = 0;
  *(uint64_t*)0x20000a40 = 0;
  *(uint64_t*)0x20000a48 = 0;
  *(uint64_t*)0x20000a50 = 0;
  *(uint64_t*)0x20000a58 = 0;
  *(uint64_t*)0x20000a60 = 0;
  *(uint64_t*)0x20000a68 = 0;
  *(uint64_t*)0x20000a70 = 0;
  *(uint64_t*)0x20000a78 = 0;
  *(uint64_t*)0x20000a80 = 0;
  *(uint64_t*)0x20000a88 = 0;
  *(uint64_t*)0x20000a90 = 0;
  *(uint64_t*)0x20000a98 = 0;
  *(uint64_t*)0x20000aa0 = 0;
  *(uint64_t*)0x20000aa8 = 0;
  *(uint64_t*)0x20000ab0 = 0;
  *(uint64_t*)0x20000ab8 = 0;
  *(uint64_t*)0x20000ac0 = 0;
  *(uint64_t*)0x20000ac8 = 0;
  *(uint64_t*)0x20000ad0 = 0;
  *(uint64_t*)0x20000ad8 = 0;
  *(uint64_t*)0x20000ae0 = 0;
  *(uint64_t*)0x20000ae8 = 0;
  *(uint64_t*)0x20000af0 = 0;
  *(uint64_t*)0x20000af8 = 0;
  *(uint64_t*)0x20000b00 = 0;
  *(uint64_t*)0x20000b08 = 0;
  *(uint64_t*)0x20000b10 = 0;
  *(uint64_t*)0x20000b18 = 0;
  *(uint64_t*)0x20000b20 = 0;
  *(uint64_t*)0x20000b28 = 0;
  *(uint64_t*)0x20000b30 = 0;
  *(uint64_t*)0x20000b38 = 0;
  *(uint64_t*)0x20000b40 = 0;
  *(uint64_t*)0x20000b48 = 0;
  *(uint64_t*)0x20000b50 = 0;
  *(uint64_t*)0x20000b58 = 0;
  *(uint64_t*)0x20000b60 = 0;
  *(uint64_t*)0x20000b68 = 0;
  *(uint64_t*)0x20000b70 = 0;
  *(uint64_t*)0x20000b78 = 0;
  *(uint64_t*)0x20000b80 = 0;
  *(uint64_t*)0x20000b88 = 0;
  *(uint64_t*)0x20000b90 = 0;
  *(uint64_t*)0x20000b98 = 0;
  *(uint64_t*)0x20000ba0 = 0;
  *(uint64_t*)0x20000ba8 = 0;
  *(uint64_t*)0x20000bb0 = 0;
  syscall(__NR_write, r[0], 0x20000740, 0x478);
}

int main()
{
  syscall(__NR_mmap, 0x20000000, 0x1000000, 3, 0x32, -1, 0);
  loop();
  return 0;
}