diff --git a/libc/kernel/android/scsi/scsi/scsi_proto.h b/libc/kernel/android/scsi/scsi/scsi_proto.h
index 754e12a..d873fad 100644
--- a/libc/kernel/android/scsi/scsi/scsi_proto.h
+++ b/libc/kernel/android/scsi/scsi/scsi_proto.h
@@ -109,7 +109,6 @@
 #define WRITE_SAME_16 0x93
 #define ZBC_OUT 0x94
 #define ZBC_IN 0x95
-#define WRITE_ATOMIC_16 0x9c
 #define SERVICE_ACTION_BIDIRECTIONAL 0x9d
 #define SERVICE_ACTION_IN_16 0x9e
 #define SERVICE_ACTION_OUT_16 0x9f
diff --git a/libc/kernel/uapi/asm-arm64/asm/unistd.h b/libc/kernel/uapi/asm-arm64/asm/unistd.h
index 178578f..7457ebc 100644
--- a/libc/kernel/uapi/asm-arm64/asm/unistd.h
+++ b/libc/kernel/uapi/asm-arm64/asm/unistd.h
@@ -4,4 +4,10 @@
  * See https://android.googlesource.com/platform/bionic/+/master/libc/kernel/
  * for more information.
  */
-#include <asm/unistd_64.h>
+#define __ARCH_WANT_RENAMEAT
+#define __ARCH_WANT_NEW_STAT
+#define __ARCH_WANT_SET_GET_RLIMIT
+#define __ARCH_WANT_TIME32_SYSCALLS
+#define __ARCH_WANT_SYS_CLONE3
+#define __ARCH_WANT_MEMFD_SECRET
+#include <asm-generic/unistd.h>
diff --git a/libc/kernel/uapi/asm-arm64/asm/unistd_64.h b/libc/kernel/uapi/asm-arm64/asm/unistd_64.h
deleted file mode 100644
index 0a0a1c0..0000000
--- a/libc/kernel/uapi/asm-arm64/asm/unistd_64.h
+++ /dev/null
@@ -1,327 +0,0 @@
-/*
- * This file is auto-generated. Modifications will be lost.
- *
- * See https://android.googlesource.com/platform/bionic/+/master/libc/kernel/
- * for more information.
- */
-#ifndef _UAPI_ASM_UNISTD_64_H
-#define _UAPI_ASM_UNISTD_64_H
-#define __NR_io_setup 0
-#define __NR_io_destroy 1
-#define __NR_io_submit 2
-#define __NR_io_cancel 3
-#define __NR_io_getevents 4
-#define __NR_setxattr 5
-#define __NR_lsetxattr 6
-#define __NR_fsetxattr 7
-#define __NR_getxattr 8
-#define __NR_lgetxattr 9
-#define __NR_fgetxattr 10
-#define __NR_listxattr 11
-#define __NR_llistxattr 12
-#define __NR_flistxattr 13
-#define __NR_removexattr 14
-#define __NR_lremovexattr 15
-#define __NR_fremovexattr 16
-#define __NR_getcwd 17
-#define __NR_lookup_dcookie 18
-#define __NR_eventfd2 19
-#define __NR_epoll_create1 20
-#define __NR_epoll_ctl 21
-#define __NR_epoll_pwait 22
-#define __NR_dup 23
-#define __NR_dup3 24
-#define __NR_fcntl 25
-#define __NR_inotify_init1 26
-#define __NR_inotify_add_watch 27
-#define __NR_inotify_rm_watch 28
-#define __NR_ioctl 29
-#define __NR_ioprio_set 30
-#define __NR_ioprio_get 31
-#define __NR_flock 32
-#define __NR_mknodat 33
-#define __NR_mkdirat 34
-#define __NR_unlinkat 35
-#define __NR_symlinkat 36
-#define __NR_linkat 37
-#define __NR_renameat 38
-#define __NR_umount2 39
-#define __NR_mount 40
-#define __NR_pivot_root 41
-#define __NR_nfsservctl 42
-#define __NR_statfs 43
-#define __NR_fstatfs 44
-#define __NR_truncate 45
-#define __NR_ftruncate 46
-#define __NR_fallocate 47
-#define __NR_faccessat 48
-#define __NR_chdir 49
-#define __NR_fchdir 50
-#define __NR_chroot 51
-#define __NR_fchmod 52
-#define __NR_fchmodat 53
-#define __NR_fchownat 54
-#define __NR_fchown 55
-#define __NR_openat 56
-#define __NR_close 57
-#define __NR_vhangup 58
-#define __NR_pipe2 59
-#define __NR_quotactl 60
-#define __NR_getdents64 61
-#define __NR_lseek 62
-#define __NR_read 63
-#define __NR_write 64
-#define __NR_readv 65
-#define __NR_writev 66
-#define __NR_pread64 67
-#define __NR_pwrite64 68
-#define __NR_preadv 69
-#define __NR_pwritev 70
-#define __NR_sendfile 71
-#define __NR_pselect6 72
-#define __NR_ppoll 73
-#define __NR_signalfd4 74
-#define __NR_vmsplice 75
-#define __NR_splice 76
-#define __NR_tee 77
-#define __NR_readlinkat 78
-#define __NR_newfstatat 79
-#define __NR_fstat 80
-#define __NR_sync 81
-#define __NR_fsync 82
-#define __NR_fdatasync 83
-#define __NR_sync_file_range 84
-#define __NR_timerfd_create 85
-#define __NR_timerfd_settime 86
-#define __NR_timerfd_gettime 87
-#define __NR_utimensat 88
-#define __NR_acct 89
-#define __NR_capget 90
-#define __NR_capset 91
-#define __NR_personality 92
-#define __NR_exit 93
-#define __NR_exit_group 94
-#define __NR_waitid 95
-#define __NR_set_tid_address 96
-#define __NR_unshare 97
-#define __NR_futex 98
-#define __NR_set_robust_list 99
-#define __NR_get_robust_list 100
-#define __NR_nanosleep 101
-#define __NR_getitimer 102
-#define __NR_setitimer 103
-#define __NR_kexec_load 104
-#define __NR_init_module 105
-#define __NR_delete_module 106
-#define __NR_timer_create 107
-#define __NR_timer_gettime 108
-#define __NR_timer_getoverrun 109
-#define __NR_timer_settime 110
-#define __NR_timer_delete 111
-#define __NR_clock_settime 112
-#define __NR_clock_gettime 113
-#define __NR_clock_getres 114
-#define __NR_clock_nanosleep 115
-#define __NR_syslog 116
-#define __NR_ptrace 117
-#define __NR_sched_setparam 118
-#define __NR_sched_setscheduler 119
-#define __NR_sched_getscheduler 120
-#define __NR_sched_getparam 121
-#define __NR_sched_setaffinity 122
-#define __NR_sched_getaffinity 123
-#define __NR_sched_yield 124
-#define __NR_sched_get_priority_max 125
-#define __NR_sched_get_priority_min 126
-#define __NR_sched_rr_get_interval 127
-#define __NR_restart_syscall 128
-#define __NR_kill 129
-#define __NR_tkill 130
-#define __NR_tgkill 131
-#define __NR_sigaltstack 132
-#define __NR_rt_sigsuspend 133
-#define __NR_rt_sigaction 134
-#define __NR_rt_sigprocmask 135
-#define __NR_rt_sigpending 136
-#define __NR_rt_sigtimedwait 137
-#define __NR_rt_sigqueueinfo 138
-#define __NR_rt_sigreturn 139
-#define __NR_setpriority 140
-#define __NR_getpriority 141
-#define __NR_reboot 142
-#define __NR_setregid 143
-#define __NR_setgid 144
-#define __NR_setreuid 145
-#define __NR_setuid 146
-#define __NR_setresuid 147
-#define __NR_getresuid 148
-#define __NR_setresgid 149
-#define __NR_getresgid 150
-#define __NR_setfsuid 151
-#define __NR_setfsgid 152
-#define __NR_times 153
-#define __NR_setpgid 154
-#define __NR_getpgid 155
-#define __NR_getsid 156
-#define __NR_setsid 157
-#define __NR_getgroups 158
-#define __NR_setgroups 159
-#define __NR_uname 160
-#define __NR_sethostname 161
-#define __NR_setdomainname 162
-#define __NR_getrlimit 163
-#define __NR_setrlimit 164
-#define __NR_getrusage 165
-#define __NR_umask 166
-#define __NR_prctl 167
-#define __NR_getcpu 168
-#define __NR_gettimeofday 169
-#define __NR_settimeofday 170
-#define __NR_adjtimex 171
-#define __NR_getpid 172
-#define __NR_getppid 173
-#define __NR_getuid 174
-#define __NR_geteuid 175
-#define __NR_getgid 176
-#define __NR_getegid 177
-#define __NR_gettid 178
-#define __NR_sysinfo 179
-#define __NR_mq_open 180
-#define __NR_mq_unlink 181
-#define __NR_mq_timedsend 182
-#define __NR_mq_timedreceive 183
-#define __NR_mq_notify 184
-#define __NR_mq_getsetattr 185
-#define __NR_msgget 186
-#define __NR_msgctl 187
-#define __NR_msgrcv 188
-#define __NR_msgsnd 189
-#define __NR_semget 190
-#define __NR_semctl 191
-#define __NR_semtimedop 192
-#define __NR_semop 193
-#define __NR_shmget 194
-#define __NR_shmctl 195
-#define __NR_shmat 196
-#define __NR_shmdt 197
-#define __NR_socket 198
-#define __NR_socketpair 199
-#define __NR_bind 200
-#define __NR_listen 201
-#define __NR_accept 202
-#define __NR_connect 203
-#define __NR_getsockname 204
-#define __NR_getpeername 205
-#define __NR_sendto 206
-#define __NR_recvfrom 207
-#define __NR_setsockopt 208
-#define __NR_getsockopt 209
-#define __NR_shutdown 210
-#define __NR_sendmsg 211
-#define __NR_recvmsg 212
-#define __NR_readahead 213
-#define __NR_brk 214
-#define __NR_munmap 215
-#define __NR_mremap 216
-#define __NR_add_key 217
-#define __NR_request_key 218
-#define __NR_keyctl 219
-#define __NR_clone 220
-#define __NR_execve 221
-#define __NR_mmap 222
-#define __NR_fadvise64 223
-#define __NR_swapon 224
-#define __NR_swapoff 225
-#define __NR_mprotect 226
-#define __NR_msync 227
-#define __NR_mlock 228
-#define __NR_munlock 229
-#define __NR_mlockall 230
-#define __NR_munlockall 231
-#define __NR_mincore 232
-#define __NR_madvise 233
-#define __NR_remap_file_pages 234
-#define __NR_mbind 235
-#define __NR_get_mempolicy 236
-#define __NR_set_mempolicy 237
-#define __NR_migrate_pages 238
-#define __NR_move_pages 239
-#define __NR_rt_tgsigqueueinfo 240
-#define __NR_perf_event_open 241
-#define __NR_accept4 242
-#define __NR_recvmmsg 243
-#define __NR_wait4 260
-#define __NR_prlimit64 261
-#define __NR_fanotify_init 262
-#define __NR_fanotify_mark 263
-#define __NR_name_to_handle_at 264
-#define __NR_open_by_handle_at 265
-#define __NR_clock_adjtime 266
-#define __NR_syncfs 267
-#define __NR_setns 268
-#define __NR_sendmmsg 269
-#define __NR_process_vm_readv 270
-#define __NR_process_vm_writev 271
-#define __NR_kcmp 272
-#define __NR_finit_module 273
-#define __NR_sched_setattr 274
-#define __NR_sched_getattr 275
-#define __NR_renameat2 276
-#define __NR_seccomp 277
-#define __NR_getrandom 278
-#define __NR_memfd_create 279
-#define __NR_bpf 280
-#define __NR_execveat 281
-#define __NR_userfaultfd 282
-#define __NR_membarrier 283
-#define __NR_mlock2 284
-#define __NR_copy_file_range 285
-#define __NR_preadv2 286
-#define __NR_pwritev2 287
-#define __NR_pkey_mprotect 288
-#define __NR_pkey_alloc 289
-#define __NR_pkey_free 290
-#define __NR_statx 291
-#define __NR_io_pgetevents 292
-#define __NR_rseq 293
-#define __NR_kexec_file_load 294
-#define __NR_pidfd_send_signal 424
-#define __NR_io_uring_setup 425
-#define __NR_io_uring_enter 426
-#define __NR_io_uring_register 427
-#define __NR_open_tree 428
-#define __NR_move_mount 429
-#define __NR_fsopen 430
-#define __NR_fsconfig 431
-#define __NR_fsmount 432
-#define __NR_fspick 433
-#define __NR_pidfd_open 434
-#define __NR_clone3 435
-#define __NR_close_range 436
-#define __NR_openat2 437
-#define __NR_pidfd_getfd 438
-#define __NR_faccessat2 439
-#define __NR_process_madvise 440
-#define __NR_epoll_pwait2 441
-#define __NR_mount_setattr 442
-#define __NR_quotactl_fd 443
-#define __NR_landlock_create_ruleset 444
-#define __NR_landlock_add_rule 445
-#define __NR_landlock_restrict_self 446
-#define __NR_memfd_secret 447
-#define __NR_process_mrelease 448
-#define __NR_futex_waitv 449
-#define __NR_set_mempolicy_home_node 450
-#define __NR_cachestat 451
-#define __NR_fchmodat2 452
-#define __NR_map_shadow_stack 453
-#define __NR_futex_wake 454
-#define __NR_futex_wait 455
-#define __NR_futex_requeue 456
-#define __NR_statmount 457
-#define __NR_listmount 458
-#define __NR_lsm_get_self_attr 459
-#define __NR_lsm_set_self_attr 460
-#define __NR_lsm_list_modules 461
-#define __NR_mseal 462
-#endif
diff --git a/libc/kernel/uapi/asm-generic/unistd.h b/libc/kernel/uapi/asm-generic/unistd.h
index 652e7a2..7eaa89a 100644
--- a/libc/kernel/uapi/asm-generic/unistd.h
+++ b/libc/kernel/uapi/asm-generic/unistd.h
@@ -381,7 +381,9 @@
 #define __NR_fsmount 432
 #define __NR_fspick 433
 #define __NR_pidfd_open 434
+#ifdef __ARCH_WANT_SYS_CLONE3
 #define __NR_clone3 435
+#endif
 #define __NR_close_range 436
 #define __NR_openat2 437
 #define __NR_pidfd_getfd 438
diff --git a/libc/kernel/uapi/asm-riscv/asm/hwprobe.h b/libc/kernel/uapi/asm-riscv/asm/hwprobe.h
index 2e5f9a4..3f30c88 100644
--- a/libc/kernel/uapi/asm-riscv/asm/hwprobe.h
+++ b/libc/kernel/uapi/asm-riscv/asm/hwprobe.h
@@ -54,18 +54,6 @@
 #define RISCV_HWPROBE_EXT_ZACAS (1ULL << 34)
 #define RISCV_HWPROBE_EXT_ZICOND (1ULL << 35)
 #define RISCV_HWPROBE_EXT_ZIHINTPAUSE (1ULL << 36)
-#define RISCV_HWPROBE_EXT_ZVE32X (1ULL << 37)
-#define RISCV_HWPROBE_EXT_ZVE32F (1ULL << 38)
-#define RISCV_HWPROBE_EXT_ZVE64X (1ULL << 39)
-#define RISCV_HWPROBE_EXT_ZVE64F (1ULL << 40)
-#define RISCV_HWPROBE_EXT_ZVE64D (1ULL << 41)
-#define RISCV_HWPROBE_EXT_ZIMOP (1ULL << 42)
-#define RISCV_HWPROBE_EXT_ZCA (1ULL << 43)
-#define RISCV_HWPROBE_EXT_ZCB (1ULL << 44)
-#define RISCV_HWPROBE_EXT_ZCD (1ULL << 45)
-#define RISCV_HWPROBE_EXT_ZCF (1ULL << 46)
-#define RISCV_HWPROBE_EXT_ZCMOP (1ULL << 47)
-#define RISCV_HWPROBE_EXT_ZAWRS (1ULL << 48)
 #define RISCV_HWPROBE_KEY_CPUPERF_0 5
 #define RISCV_HWPROBE_MISALIGNED_UNKNOWN (0 << 0)
 #define RISCV_HWPROBE_MISALIGNED_EMULATED (1 << 0)
@@ -74,13 +62,5 @@
 #define RISCV_HWPROBE_MISALIGNED_UNSUPPORTED (4 << 0)
 #define RISCV_HWPROBE_MISALIGNED_MASK (7 << 0)
 #define RISCV_HWPROBE_KEY_ZICBOZ_BLOCK_SIZE 6
-#define RISCV_HWPROBE_KEY_HIGHEST_VIRT_ADDRESS 7
-#define RISCV_HWPROBE_KEY_TIME_CSR_FREQ 8
-#define RISCV_HWPROBE_KEY_MISALIGNED_SCALAR_PERF 9
-#define RISCV_HWPROBE_MISALIGNED_SCALAR_UNKNOWN 0
-#define RISCV_HWPROBE_MISALIGNED_SCALAR_EMULATED 1
-#define RISCV_HWPROBE_MISALIGNED_SCALAR_SLOW 2
-#define RISCV_HWPROBE_MISALIGNED_SCALAR_FAST 3
-#define RISCV_HWPROBE_MISALIGNED_SCALAR_UNSUPPORTED 4
 #define RISCV_HWPROBE_WHICH_CPUS (1 << 0)
 #endif
diff --git a/libc/kernel/uapi/asm-riscv/asm/kvm.h b/libc/kernel/uapi/asm-riscv/asm/kvm.h
index 51f4977..12d8f61 100644
--- a/libc/kernel/uapi/asm-riscv/asm/kvm.h
+++ b/libc/kernel/uapi/asm-riscv/asm/kvm.h
@@ -128,13 +128,6 @@
   KVM_RISCV_ISA_EXT_ZTSO,
   KVM_RISCV_ISA_EXT_ZACAS,
   KVM_RISCV_ISA_EXT_SSCOFPMF,
-  KVM_RISCV_ISA_EXT_ZIMOP,
-  KVM_RISCV_ISA_EXT_ZCA,
-  KVM_RISCV_ISA_EXT_ZCB,
-  KVM_RISCV_ISA_EXT_ZCD,
-  KVM_RISCV_ISA_EXT_ZCF,
-  KVM_RISCV_ISA_EXT_ZCMOP,
-  KVM_RISCV_ISA_EXT_ZAWRS,
   KVM_RISCV_ISA_EXT_MAX,
 };
 enum KVM_RISCV_SBI_EXT_ID {
diff --git a/libc/kernel/uapi/asm-riscv/asm/unistd.h b/libc/kernel/uapi/asm-riscv/asm/unistd.h
index f395f71..0c58887 100644
--- a/libc/kernel/uapi/asm-riscv/asm/unistd.h
+++ b/libc/kernel/uapi/asm-riscv/asm/unistd.h
@@ -4,9 +4,18 @@
  * See https://android.googlesource.com/platform/bionic/+/master/libc/kernel/
  * for more information.
  */
-#include <asm/bitsperlong.h>
-#if __BITS_PER_LONG == 64
-#include <asm/unistd_64.h>
-#else
-#include <asm/unistd_32.h>
+#if defined(__LP64__) && !defined(__SYSCALL_COMPAT)
+#define __ARCH_WANT_NEW_STAT
+#define __ARCH_WANT_SET_GET_RLIMIT
 #endif
+#define __ARCH_WANT_SYS_CLONE3
+#define __ARCH_WANT_MEMFD_SECRET
+#include <asm-generic/unistd.h>
+#ifndef __NR_riscv_flush_icache
+#define __NR_riscv_flush_icache (__NR_arch_specific_syscall + 15)
+#endif
+__SYSCALL(__NR_riscv_flush_icache, sys_riscv_flush_icache)
+#ifndef __NR_riscv_hwprobe
+#define __NR_riscv_hwprobe (__NR_arch_specific_syscall + 14)
+#endif
+__SYSCALL(__NR_riscv_hwprobe, sys_riscv_hwprobe)
diff --git a/libc/kernel/uapi/asm-riscv/asm/unistd_32.h b/libc/kernel/uapi/asm-riscv/asm/unistd_32.h
deleted file mode 100644
index 864a556..0000000
--- a/libc/kernel/uapi/asm-riscv/asm/unistd_32.h
+++ /dev/null
@@ -1,318 +0,0 @@
-/*
- * This file is auto-generated. Modifications will be lost.
- *
- * See https://android.googlesource.com/platform/bionic/+/master/libc/kernel/
- * for more information.
- */
-#ifndef _UAPI_ASM_UNISTD_32_H
-#define _UAPI_ASM_UNISTD_32_H
-#define __NR_io_setup 0
-#define __NR_io_destroy 1
-#define __NR_io_submit 2
-#define __NR_io_cancel 3
-#define __NR_setxattr 5
-#define __NR_lsetxattr 6
-#define __NR_fsetxattr 7
-#define __NR_getxattr 8
-#define __NR_lgetxattr 9
-#define __NR_fgetxattr 10
-#define __NR_listxattr 11
-#define __NR_llistxattr 12
-#define __NR_flistxattr 13
-#define __NR_removexattr 14
-#define __NR_lremovexattr 15
-#define __NR_fremovexattr 16
-#define __NR_getcwd 17
-#define __NR_lookup_dcookie 18
-#define __NR_eventfd2 19
-#define __NR_epoll_create1 20
-#define __NR_epoll_ctl 21
-#define __NR_epoll_pwait 22
-#define __NR_dup 23
-#define __NR_dup3 24
-#define __NR_fcntl64 25
-#define __NR_inotify_init1 26
-#define __NR_inotify_add_watch 27
-#define __NR_inotify_rm_watch 28
-#define __NR_ioctl 29
-#define __NR_ioprio_set 30
-#define __NR_ioprio_get 31
-#define __NR_flock 32
-#define __NR_mknodat 33
-#define __NR_mkdirat 34
-#define __NR_unlinkat 35
-#define __NR_symlinkat 36
-#define __NR_linkat 37
-#define __NR_umount2 39
-#define __NR_mount 40
-#define __NR_pivot_root 41
-#define __NR_nfsservctl 42
-#define __NR_statfs64 43
-#define __NR_fstatfs64 44
-#define __NR_truncate64 45
-#define __NR_ftruncate64 46
-#define __NR_fallocate 47
-#define __NR_faccessat 48
-#define __NR_chdir 49
-#define __NR_fchdir 50
-#define __NR_chroot 51
-#define __NR_fchmod 52
-#define __NR_fchmodat 53
-#define __NR_fchownat 54
-#define __NR_fchown 55
-#define __NR_openat 56
-#define __NR_close 57
-#define __NR_vhangup 58
-#define __NR_pipe2 59
-#define __NR_quotactl 60
-#define __NR_getdents64 61
-#define __NR_llseek 62
-#define __NR_read 63
-#define __NR_write 64
-#define __NR_readv 65
-#define __NR_writev 66
-#define __NR_pread64 67
-#define __NR_pwrite64 68
-#define __NR_preadv 69
-#define __NR_pwritev 70
-#define __NR_sendfile64 71
-#define __NR_signalfd4 74
-#define __NR_vmsplice 75
-#define __NR_splice 76
-#define __NR_tee 77
-#define __NR_readlinkat 78
-#define __NR_sync 81
-#define __NR_fsync 82
-#define __NR_fdatasync 83
-#define __NR_sync_file_range 84
-#define __NR_timerfd_create 85
-#define __NR_acct 89
-#define __NR_capget 90
-#define __NR_capset 91
-#define __NR_personality 92
-#define __NR_exit 93
-#define __NR_exit_group 94
-#define __NR_waitid 95
-#define __NR_set_tid_address 96
-#define __NR_unshare 97
-#define __NR_set_robust_list 99
-#define __NR_get_robust_list 100
-#define __NR_getitimer 102
-#define __NR_setitimer 103
-#define __NR_kexec_load 104
-#define __NR_init_module 105
-#define __NR_delete_module 106
-#define __NR_timer_create 107
-#define __NR_timer_getoverrun 109
-#define __NR_timer_delete 111
-#define __NR_syslog 116
-#define __NR_ptrace 117
-#define __NR_sched_setparam 118
-#define __NR_sched_setscheduler 119
-#define __NR_sched_getscheduler 120
-#define __NR_sched_getparam 121
-#define __NR_sched_setaffinity 122
-#define __NR_sched_getaffinity 123
-#define __NR_sched_yield 124
-#define __NR_sched_get_priority_max 125
-#define __NR_sched_get_priority_min 126
-#define __NR_restart_syscall 128
-#define __NR_kill 129
-#define __NR_tkill 130
-#define __NR_tgkill 131
-#define __NR_sigaltstack 132
-#define __NR_rt_sigsuspend 133
-#define __NR_rt_sigaction 134
-#define __NR_rt_sigprocmask 135
-#define __NR_rt_sigpending 136
-#define __NR_rt_sigqueueinfo 138
-#define __NR_rt_sigreturn 139
-#define __NR_setpriority 140
-#define __NR_getpriority 141
-#define __NR_reboot 142
-#define __NR_setregid 143
-#define __NR_setgid 144
-#define __NR_setreuid 145
-#define __NR_setuid 146
-#define __NR_setresuid 147
-#define __NR_getresuid 148
-#define __NR_setresgid 149
-#define __NR_getresgid 150
-#define __NR_setfsuid 151
-#define __NR_setfsgid 152
-#define __NR_times 153
-#define __NR_setpgid 154
-#define __NR_getpgid 155
-#define __NR_getsid 156
-#define __NR_setsid 157
-#define __NR_getgroups 158
-#define __NR_setgroups 159
-#define __NR_uname 160
-#define __NR_sethostname 161
-#define __NR_setdomainname 162
-#define __NR_getrusage 165
-#define __NR_umask 166
-#define __NR_prctl 167
-#define __NR_getcpu 168
-#define __NR_getpid 172
-#define __NR_getppid 173
-#define __NR_getuid 174
-#define __NR_geteuid 175
-#define __NR_getgid 176
-#define __NR_getegid 177
-#define __NR_gettid 178
-#define __NR_sysinfo 179
-#define __NR_mq_open 180
-#define __NR_mq_unlink 181
-#define __NR_mq_notify 184
-#define __NR_mq_getsetattr 185
-#define __NR_msgget 186
-#define __NR_msgctl 187
-#define __NR_msgrcv 188
-#define __NR_msgsnd 189
-#define __NR_semget 190
-#define __NR_semctl 191
-#define __NR_semop 193
-#define __NR_shmget 194
-#define __NR_shmctl 195
-#define __NR_shmat 196
-#define __NR_shmdt 197
-#define __NR_socket 198
-#define __NR_socketpair 199
-#define __NR_bind 200
-#define __NR_listen 201
-#define __NR_accept 202
-#define __NR_connect 203
-#define __NR_getsockname 204
-#define __NR_getpeername 205
-#define __NR_sendto 206
-#define __NR_recvfrom 207
-#define __NR_setsockopt 208
-#define __NR_getsockopt 209
-#define __NR_shutdown 210
-#define __NR_sendmsg 211
-#define __NR_recvmsg 212
-#define __NR_readahead 213
-#define __NR_brk 214
-#define __NR_munmap 215
-#define __NR_mremap 216
-#define __NR_add_key 217
-#define __NR_request_key 218
-#define __NR_keyctl 219
-#define __NR_clone 220
-#define __NR_execve 221
-#define __NR_mmap2 222
-#define __NR_fadvise64_64 223
-#define __NR_swapon 224
-#define __NR_swapoff 225
-#define __NR_mprotect 226
-#define __NR_msync 227
-#define __NR_mlock 228
-#define __NR_munlock 229
-#define __NR_mlockall 230
-#define __NR_munlockall 231
-#define __NR_mincore 232
-#define __NR_madvise 233
-#define __NR_remap_file_pages 234
-#define __NR_mbind 235
-#define __NR_get_mempolicy 236
-#define __NR_set_mempolicy 237
-#define __NR_migrate_pages 238
-#define __NR_move_pages 239
-#define __NR_rt_tgsigqueueinfo 240
-#define __NR_perf_event_open 241
-#define __NR_accept4 242
-#define __NR_riscv_hwprobe 258
-#define __NR_riscv_flush_icache 259
-#define __NR_prlimit64 261
-#define __NR_fanotify_init 262
-#define __NR_fanotify_mark 263
-#define __NR_name_to_handle_at 264
-#define __NR_open_by_handle_at 265
-#define __NR_syncfs 267
-#define __NR_setns 268
-#define __NR_sendmmsg 269
-#define __NR_process_vm_readv 270
-#define __NR_process_vm_writev 271
-#define __NR_kcmp 272
-#define __NR_finit_module 273
-#define __NR_sched_setattr 274
-#define __NR_sched_getattr 275
-#define __NR_renameat2 276
-#define __NR_seccomp 277
-#define __NR_getrandom 278
-#define __NR_memfd_create 279
-#define __NR_bpf 280
-#define __NR_execveat 281
-#define __NR_userfaultfd 282
-#define __NR_membarrier 283
-#define __NR_mlock2 284
-#define __NR_copy_file_range 285
-#define __NR_preadv2 286
-#define __NR_pwritev2 287
-#define __NR_pkey_mprotect 288
-#define __NR_pkey_alloc 289
-#define __NR_pkey_free 290
-#define __NR_statx 291
-#define __NR_rseq 293
-#define __NR_kexec_file_load 294
-#define __NR_clock_gettime64 403
-#define __NR_clock_settime64 404
-#define __NR_clock_adjtime64 405
-#define __NR_clock_getres_time64 406
-#define __NR_clock_nanosleep_time64 407
-#define __NR_timer_gettime64 408
-#define __NR_timer_settime64 409
-#define __NR_timerfd_gettime64 410
-#define __NR_timerfd_settime64 411
-#define __NR_utimensat_time64 412
-#define __NR_pselect6_time64 413
-#define __NR_ppoll_time64 414
-#define __NR_io_pgetevents_time64 416
-#define __NR_recvmmsg_time64 417
-#define __NR_mq_timedsend_time64 418
-#define __NR_mq_timedreceive_time64 419
-#define __NR_semtimedop_time64 420
-#define __NR_rt_sigtimedwait_time64 421
-#define __NR_futex_time64 422
-#define __NR_sched_rr_get_interval_time64 423
-#define __NR_pidfd_send_signal 424
-#define __NR_io_uring_setup 425
-#define __NR_io_uring_enter 426
-#define __NR_io_uring_register 427
-#define __NR_open_tree 428
-#define __NR_move_mount 429
-#define __NR_fsopen 430
-#define __NR_fsconfig 431
-#define __NR_fsmount 432
-#define __NR_fspick 433
-#define __NR_pidfd_open 434
-#define __NR_clone3 435
-#define __NR_close_range 436
-#define __NR_openat2 437
-#define __NR_pidfd_getfd 438
-#define __NR_faccessat2 439
-#define __NR_process_madvise 440
-#define __NR_epoll_pwait2 441
-#define __NR_mount_setattr 442
-#define __NR_quotactl_fd 443
-#define __NR_landlock_create_ruleset 444
-#define __NR_landlock_add_rule 445
-#define __NR_landlock_restrict_self 446
-#define __NR_memfd_secret 447
-#define __NR_process_mrelease 448
-#define __NR_futex_waitv 449
-#define __NR_set_mempolicy_home_node 450
-#define __NR_cachestat 451
-#define __NR_fchmodat2 452
-#define __NR_map_shadow_stack 453
-#define __NR_futex_wake 454
-#define __NR_futex_wait 455
-#define __NR_futex_requeue 456
-#define __NR_statmount 457
-#define __NR_listmount 458
-#define __NR_lsm_get_self_attr 459
-#define __NR_lsm_set_self_attr 460
-#define __NR_lsm_list_modules 461
-#define __NR_mseal 462
-#endif
diff --git a/libc/kernel/uapi/asm-riscv/asm/unistd_64.h b/libc/kernel/uapi/asm-riscv/asm/unistd_64.h
deleted file mode 100644
index f15b65b..0000000
--- a/libc/kernel/uapi/asm-riscv/asm/unistd_64.h
+++ /dev/null
@@ -1,328 +0,0 @@
-/*
- * This file is auto-generated. Modifications will be lost.
- *
- * See https://android.googlesource.com/platform/bionic/+/master/libc/kernel/
- * for more information.
- */
-#ifndef _UAPI_ASM_UNISTD_64_H
-#define _UAPI_ASM_UNISTD_64_H
-#define __NR_io_setup 0
-#define __NR_io_destroy 1
-#define __NR_io_submit 2
-#define __NR_io_cancel 3
-#define __NR_io_getevents 4
-#define __NR_setxattr 5
-#define __NR_lsetxattr 6
-#define __NR_fsetxattr 7
-#define __NR_getxattr 8
-#define __NR_lgetxattr 9
-#define __NR_fgetxattr 10
-#define __NR_listxattr 11
-#define __NR_llistxattr 12
-#define __NR_flistxattr 13
-#define __NR_removexattr 14
-#define __NR_lremovexattr 15
-#define __NR_fremovexattr 16
-#define __NR_getcwd 17
-#define __NR_lookup_dcookie 18
-#define __NR_eventfd2 19
-#define __NR_epoll_create1 20
-#define __NR_epoll_ctl 21
-#define __NR_epoll_pwait 22
-#define __NR_dup 23
-#define __NR_dup3 24
-#define __NR_fcntl 25
-#define __NR_inotify_init1 26
-#define __NR_inotify_add_watch 27
-#define __NR_inotify_rm_watch 28
-#define __NR_ioctl 29
-#define __NR_ioprio_set 30
-#define __NR_ioprio_get 31
-#define __NR_flock 32
-#define __NR_mknodat 33
-#define __NR_mkdirat 34
-#define __NR_unlinkat 35
-#define __NR_symlinkat 36
-#define __NR_linkat 37
-#define __NR_umount2 39
-#define __NR_mount 40
-#define __NR_pivot_root 41
-#define __NR_nfsservctl 42
-#define __NR_statfs 43
-#define __NR_fstatfs 44
-#define __NR_truncate 45
-#define __NR_ftruncate 46
-#define __NR_fallocate 47
-#define __NR_faccessat 48
-#define __NR_chdir 49
-#define __NR_fchdir 50
-#define __NR_chroot 51
-#define __NR_fchmod 52
-#define __NR_fchmodat 53
-#define __NR_fchownat 54
-#define __NR_fchown 55
-#define __NR_openat 56
-#define __NR_close 57
-#define __NR_vhangup 58
-#define __NR_pipe2 59
-#define __NR_quotactl 60
-#define __NR_getdents64 61
-#define __NR_lseek 62
-#define __NR_read 63
-#define __NR_write 64
-#define __NR_readv 65
-#define __NR_writev 66
-#define __NR_pread64 67
-#define __NR_pwrite64 68
-#define __NR_preadv 69
-#define __NR_pwritev 70
-#define __NR_sendfile 71
-#define __NR_pselect6 72
-#define __NR_ppoll 73
-#define __NR_signalfd4 74
-#define __NR_vmsplice 75
-#define __NR_splice 76
-#define __NR_tee 77
-#define __NR_readlinkat 78
-#define __NR_newfstatat 79
-#define __NR_fstat 80
-#define __NR_sync 81
-#define __NR_fsync 82
-#define __NR_fdatasync 83
-#define __NR_sync_file_range 84
-#define __NR_timerfd_create 85
-#define __NR_timerfd_settime 86
-#define __NR_timerfd_gettime 87
-#define __NR_utimensat 88
-#define __NR_acct 89
-#define __NR_capget 90
-#define __NR_capset 91
-#define __NR_personality 92
-#define __NR_exit 93
-#define __NR_exit_group 94
-#define __NR_waitid 95
-#define __NR_set_tid_address 96
-#define __NR_unshare 97
-#define __NR_futex 98
-#define __NR_set_robust_list 99
-#define __NR_get_robust_list 100
-#define __NR_nanosleep 101
-#define __NR_getitimer 102
-#define __NR_setitimer 103
-#define __NR_kexec_load 104
-#define __NR_init_module 105
-#define __NR_delete_module 106
-#define __NR_timer_create 107
-#define __NR_timer_gettime 108
-#define __NR_timer_getoverrun 109
-#define __NR_timer_settime 110
-#define __NR_timer_delete 111
-#define __NR_clock_settime 112
-#define __NR_clock_gettime 113
-#define __NR_clock_getres 114
-#define __NR_clock_nanosleep 115
-#define __NR_syslog 116
-#define __NR_ptrace 117
-#define __NR_sched_setparam 118
-#define __NR_sched_setscheduler 119
-#define __NR_sched_getscheduler 120
-#define __NR_sched_getparam 121
-#define __NR_sched_setaffinity 122
-#define __NR_sched_getaffinity 123
-#define __NR_sched_yield 124
-#define __NR_sched_get_priority_max 125
-#define __NR_sched_get_priority_min 126
-#define __NR_sched_rr_get_interval 127
-#define __NR_restart_syscall 128
-#define __NR_kill 129
-#define __NR_tkill 130
-#define __NR_tgkill 131
-#define __NR_sigaltstack 132
-#define __NR_rt_sigsuspend 133
-#define __NR_rt_sigaction 134
-#define __NR_rt_sigprocmask 135
-#define __NR_rt_sigpending 136
-#define __NR_rt_sigtimedwait 137
-#define __NR_rt_sigqueueinfo 138
-#define __NR_rt_sigreturn 139
-#define __NR_setpriority 140
-#define __NR_getpriority 141
-#define __NR_reboot 142
-#define __NR_setregid 143
-#define __NR_setgid 144
-#define __NR_setreuid 145
-#define __NR_setuid 146
-#define __NR_setresuid 147
-#define __NR_getresuid 148
-#define __NR_setresgid 149
-#define __NR_getresgid 150
-#define __NR_setfsuid 151
-#define __NR_setfsgid 152
-#define __NR_times 153
-#define __NR_setpgid 154
-#define __NR_getpgid 155
-#define __NR_getsid 156
-#define __NR_setsid 157
-#define __NR_getgroups 158
-#define __NR_setgroups 159
-#define __NR_uname 160
-#define __NR_sethostname 161
-#define __NR_setdomainname 162
-#define __NR_getrlimit 163
-#define __NR_setrlimit 164
-#define __NR_getrusage 165
-#define __NR_umask 166
-#define __NR_prctl 167
-#define __NR_getcpu 168
-#define __NR_gettimeofday 169
-#define __NR_settimeofday 170
-#define __NR_adjtimex 171
-#define __NR_getpid 172
-#define __NR_getppid 173
-#define __NR_getuid 174
-#define __NR_geteuid 175
-#define __NR_getgid 176
-#define __NR_getegid 177
-#define __NR_gettid 178
-#define __NR_sysinfo 179
-#define __NR_mq_open 180
-#define __NR_mq_unlink 181
-#define __NR_mq_timedsend 182
-#define __NR_mq_timedreceive 183
-#define __NR_mq_notify 184
-#define __NR_mq_getsetattr 185
-#define __NR_msgget 186
-#define __NR_msgctl 187
-#define __NR_msgrcv 188
-#define __NR_msgsnd 189
-#define __NR_semget 190
-#define __NR_semctl 191
-#define __NR_semtimedop 192
-#define __NR_semop 193
-#define __NR_shmget 194
-#define __NR_shmctl 195
-#define __NR_shmat 196
-#define __NR_shmdt 197
-#define __NR_socket 198
-#define __NR_socketpair 199
-#define __NR_bind 200
-#define __NR_listen 201
-#define __NR_accept 202
-#define __NR_connect 203
-#define __NR_getsockname 204
-#define __NR_getpeername 205
-#define __NR_sendto 206
-#define __NR_recvfrom 207
-#define __NR_setsockopt 208
-#define __NR_getsockopt 209
-#define __NR_shutdown 210
-#define __NR_sendmsg 211
-#define __NR_recvmsg 212
-#define __NR_readahead 213
-#define __NR_brk 214
-#define __NR_munmap 215
-#define __NR_mremap 216
-#define __NR_add_key 217
-#define __NR_request_key 218
-#define __NR_keyctl 219
-#define __NR_clone 220
-#define __NR_execve 221
-#define __NR_mmap 222
-#define __NR_fadvise64 223
-#define __NR_swapon 224
-#define __NR_swapoff 225
-#define __NR_mprotect 226
-#define __NR_msync 227
-#define __NR_mlock 228
-#define __NR_munlock 229
-#define __NR_mlockall 230
-#define __NR_munlockall 231
-#define __NR_mincore 232
-#define __NR_madvise 233
-#define __NR_remap_file_pages 234
-#define __NR_mbind 235
-#define __NR_get_mempolicy 236
-#define __NR_set_mempolicy 237
-#define __NR_migrate_pages 238
-#define __NR_move_pages 239
-#define __NR_rt_tgsigqueueinfo 240
-#define __NR_perf_event_open 241
-#define __NR_accept4 242
-#define __NR_recvmmsg 243
-#define __NR_riscv_hwprobe 258
-#define __NR_riscv_flush_icache 259
-#define __NR_wait4 260
-#define __NR_prlimit64 261
-#define __NR_fanotify_init 262
-#define __NR_fanotify_mark 263
-#define __NR_name_to_handle_at 264
-#define __NR_open_by_handle_at 265
-#define __NR_clock_adjtime 266
-#define __NR_syncfs 267
-#define __NR_setns 268
-#define __NR_sendmmsg 269
-#define __NR_process_vm_readv 270
-#define __NR_process_vm_writev 271
-#define __NR_kcmp 272
-#define __NR_finit_module 273
-#define __NR_sched_setattr 274
-#define __NR_sched_getattr 275
-#define __NR_renameat2 276
-#define __NR_seccomp 277
-#define __NR_getrandom 278
-#define __NR_memfd_create 279
-#define __NR_bpf 280
-#define __NR_execveat 281
-#define __NR_userfaultfd 282
-#define __NR_membarrier 283
-#define __NR_mlock2 284
-#define __NR_copy_file_range 285
-#define __NR_preadv2 286
-#define __NR_pwritev2 287
-#define __NR_pkey_mprotect 288
-#define __NR_pkey_alloc 289
-#define __NR_pkey_free 290
-#define __NR_statx 291
-#define __NR_io_pgetevents 292
-#define __NR_rseq 293
-#define __NR_kexec_file_load 294
-#define __NR_pidfd_send_signal 424
-#define __NR_io_uring_setup 425
-#define __NR_io_uring_enter 426
-#define __NR_io_uring_register 427
-#define __NR_open_tree 428
-#define __NR_move_mount 429
-#define __NR_fsopen 430
-#define __NR_fsconfig 431
-#define __NR_fsmount 432
-#define __NR_fspick 433
-#define __NR_pidfd_open 434
-#define __NR_clone3 435
-#define __NR_close_range 436
-#define __NR_openat2 437
-#define __NR_pidfd_getfd 438
-#define __NR_faccessat2 439
-#define __NR_process_madvise 440
-#define __NR_epoll_pwait2 441
-#define __NR_mount_setattr 442
-#define __NR_quotactl_fd 443
-#define __NR_landlock_create_ruleset 444
-#define __NR_landlock_add_rule 445
-#define __NR_landlock_restrict_self 446
-#define __NR_memfd_secret 447
-#define __NR_process_mrelease 448
-#define __NR_futex_waitv 449
-#define __NR_set_mempolicy_home_node 450
-#define __NR_cachestat 451
-#define __NR_fchmodat2 452
-#define __NR_map_shadow_stack 453
-#define __NR_futex_wake 454
-#define __NR_futex_wait 455
-#define __NR_futex_requeue 456
-#define __NR_statmount 457
-#define __NR_listmount 458
-#define __NR_lsm_get_self_attr 459
-#define __NR_lsm_set_self_attr 460
-#define __NR_lsm_list_modules 461
-#define __NR_mseal 462
-#endif
diff --git a/libc/kernel/uapi/asm-x86/asm/kvm.h b/libc/kernel/uapi/asm-x86/asm/kvm.h
index cd647b6..17b1c5d 100644
--- a/libc/kernel/uapi/asm-x86/asm/kvm.h
+++ b/libc/kernel/uapi/asm-x86/asm/kvm.h
@@ -94,7 +94,6 @@
 #define KVM_NR_IRQCHIPS 3
 #define KVM_RUN_X86_SMM (1 << 0)
 #define KVM_RUN_X86_BUS_LOCK (1 << 1)
-#define KVM_RUN_X86_GUEST_MODE (1 << 2)
 struct kvm_regs {
   __u64 rax, rbx, rcx, rdx;
   __u64 rsi, rdi, rsp, rbp;
@@ -533,9 +532,6 @@
   KVM_SEV_GET_ATTESTATION_REPORT,
   KVM_SEV_SEND_CANCEL,
   KVM_SEV_INIT2,
-  KVM_SEV_SNP_LAUNCH_START = 100,
-  KVM_SEV_SNP_LAUNCH_UPDATE,
-  KVM_SEV_SNP_LAUNCH_FINISH,
   KVM_SEV_NR_MAX,
 };
 struct kvm_sev_cmd {
@@ -648,42 +644,6 @@
   __u32 trans_len;
   __u32 pad2;
 };
-struct kvm_sev_snp_launch_start {
-  __u64 policy;
-  __u8 gosvw[16];
-  __u16 flags;
-  __u8 pad0[6];
-  __u64 pad1[4];
-};
-#define KVM_SEV_SNP_PAGE_TYPE_NORMAL 0x1
-#define KVM_SEV_SNP_PAGE_TYPE_ZERO 0x3
-#define KVM_SEV_SNP_PAGE_TYPE_UNMEASURED 0x4
-#define KVM_SEV_SNP_PAGE_TYPE_SECRETS 0x5
-#define KVM_SEV_SNP_PAGE_TYPE_CPUID 0x6
-struct kvm_sev_snp_launch_update {
-  __u64 gfn_start;
-  __u64 uaddr;
-  __u64 len;
-  __u8 type;
-  __u8 pad0;
-  __u16 flags;
-  __u32 pad1;
-  __u64 pad2[4];
-};
-#define KVM_SEV_SNP_ID_BLOCK_SIZE 96
-#define KVM_SEV_SNP_ID_AUTH_SIZE 4096
-#define KVM_SEV_SNP_FINISH_DATA_SIZE 32
-struct kvm_sev_snp_launch_finish {
-  __u64 id_block_uaddr;
-  __u64 id_auth_uaddr;
-  __u8 id_block_en;
-  __u8 auth_key_en;
-  __u8 vcek_disabled;
-  __u8 host_data[KVM_SEV_SNP_FINISH_DATA_SIZE];
-  __u8 pad0[3];
-  __u16 flags;
-  __u64 pad1[4];
-};
 #define KVM_X2APIC_API_USE_32BIT_IDS (1ULL << 0)
 #define KVM_X2APIC_API_DISABLE_BROADCAST_QUIRK (1ULL << 1)
 struct kvm_hyperv_eventfd {
@@ -707,5 +667,4 @@
 #define KVM_X86_SW_PROTECTED_VM 1
 #define KVM_X86_SEV_VM 2
 #define KVM_X86_SEV_ES_VM 3
-#define KVM_X86_SNP_VM 4
 #endif
diff --git a/libc/kernel/uapi/asm-x86/asm/svm.h b/libc/kernel/uapi/asm-x86/asm/svm.h
index 4f165fa..ffbf0b3 100644
--- a/libc/kernel/uapi/asm-x86/asm/svm.h
+++ b/libc/kernel/uapi/asm-x86/asm/svm.h
@@ -117,7 +117,6 @@
 #define SVM_VMGEXIT_AP_CREATE_ON_INIT 0
 #define SVM_VMGEXIT_AP_CREATE 1
 #define SVM_VMGEXIT_AP_DESTROY 2
-#define SVM_VMGEXIT_SNP_RUN_VMPL 0x80000018
 #define SVM_VMGEXIT_HV_FEATURES 0x8000fffd
 #define SVM_VMGEXIT_TERM_REQUEST 0x8000fffe
 #define SVM_VMGEXIT_TERM_REASON(reason_set,reason_code) (((((u64) reason_set) & 0xf)) | ((((u64) reason_code) & 0xff) << 4))
diff --git a/libc/kernel/uapi/asm-x86/asm/unistd_64.h b/libc/kernel/uapi/asm-x86/asm/unistd_64.h
index d5408a3..5dd666c 100644
--- a/libc/kernel/uapi/asm-x86/asm/unistd_64.h
+++ b/libc/kernel/uapi/asm-x86/asm/unistd_64.h
@@ -341,7 +341,6 @@
 #define __NR_statx 332
 #define __NR_io_pgetevents 333
 #define __NR_rseq 334
-#define __NR_uretprobe 335
 #define __NR_pidfd_send_signal 424
 #define __NR_io_uring_setup 425
 #define __NR_io_uring_enter 426
diff --git a/libc/kernel/uapi/asm-x86/asm/unistd_x32.h b/libc/kernel/uapi/asm-x86/asm/unistd_x32.h
index fdcf7e6..a2ff6f4 100644
--- a/libc/kernel/uapi/asm-x86/asm/unistd_x32.h
+++ b/libc/kernel/uapi/asm-x86/asm/unistd_x32.h
@@ -294,7 +294,6 @@
 #define __NR_statx (__X32_SYSCALL_BIT + 332)
 #define __NR_io_pgetevents (__X32_SYSCALL_BIT + 333)
 #define __NR_rseq (__X32_SYSCALL_BIT + 334)
-#define __NR_uretprobe (__X32_SYSCALL_BIT + 335)
 #define __NR_pidfd_send_signal (__X32_SYSCALL_BIT + 424)
 #define __NR_io_uring_setup (__X32_SYSCALL_BIT + 425)
 #define __NR_io_uring_enter (__X32_SYSCALL_BIT + 426)
diff --git a/libc/kernel/uapi/drm/amdgpu_drm.h b/libc/kernel/uapi/drm/amdgpu_drm.h
index 7bbd5de..0ad0bc2 100644
--- a/libc/kernel/uapi/drm/amdgpu_drm.h
+++ b/libc/kernel/uapi/drm/amdgpu_drm.h
@@ -65,7 +65,6 @@
 #define AMDGPU_GEM_CREATE_COHERENT (1 << 13)
 #define AMDGPU_GEM_CREATE_UNCACHED (1 << 14)
 #define AMDGPU_GEM_CREATE_EXT_COHERENT (1 << 15)
-#define AMDGPU_GEM_CREATE_GFX12_DCC (1 << 16)
 struct drm_amdgpu_gem_create_in {
   __u64 bo_size;
   __u64 alignment;
@@ -217,14 +216,6 @@
 #define AMDGPU_TILING_DCC_INDEPENDENT_128B_MASK 0x1
 #define AMDGPU_TILING_SCANOUT_SHIFT 63
 #define AMDGPU_TILING_SCANOUT_MASK 0x1
-#define AMDGPU_TILING_GFX12_SWIZZLE_MODE_SHIFT 0
-#define AMDGPU_TILING_GFX12_SWIZZLE_MODE_MASK 0x7
-#define AMDGPU_TILING_GFX12_DCC_MAX_COMPRESSED_BLOCK_SHIFT 3
-#define AMDGPU_TILING_GFX12_DCC_MAX_COMPRESSED_BLOCK_MASK 0x3
-#define AMDGPU_TILING_GFX12_DCC_NUMBER_TYPE_SHIFT 5
-#define AMDGPU_TILING_GFX12_DCC_NUMBER_TYPE_MASK 0x7
-#define AMDGPU_TILING_GFX12_DCC_DATA_FORMAT_SHIFT 8
-#define AMDGPU_TILING_GFX12_DCC_DATA_FORMAT_MASK 0x3f
 #define AMDGPU_TILING_SET(field,value) (((__u64) (value) & AMDGPU_TILING_ ##field ##_MASK) << AMDGPU_TILING_ ##field ##_SHIFT)
 #define AMDGPU_TILING_GET(value,field) (((__u64) (value) >> AMDGPU_TILING_ ##field ##_SHIFT) & AMDGPU_TILING_ ##field ##_MASK)
 #define AMDGPU_GEM_METADATA_OP_SET_METADATA 1
@@ -753,10 +744,6 @@
 #define AMDGPU_FAMILY_GC_10_3_6 149
 #define AMDGPU_FAMILY_GC_10_3_7 151
 #define AMDGPU_FAMILY_GC_11_5_0 150
-#define AMDGPU_FAMILY_GC_12_0_0 152
-struct drm_color_ctm_3x4 {
-  __u64 matrix[12];
-};
 #ifdef __cplusplus
 }
 #endif
diff --git a/libc/kernel/uapi/drm/drm_fourcc.h b/libc/kernel/uapi/drm/drm_fourcc.h
index 4902d6c..6fd2eb8 100644
--- a/libc/kernel/uapi/drm/drm_fourcc.h
+++ b/libc/kernel/uapi/drm/drm_fourcc.h
@@ -255,17 +255,12 @@
 #define AMD_FMT_MOD_TILE_VER_GFX10 2
 #define AMD_FMT_MOD_TILE_VER_GFX10_RBPLUS 3
 #define AMD_FMT_MOD_TILE_VER_GFX11 4
-#define AMD_FMT_MOD_TILE_VER_GFX12 5
 #define AMD_FMT_MOD_TILE_GFX9_64K_S 9
 #define AMD_FMT_MOD_TILE_GFX9_64K_D 10
 #define AMD_FMT_MOD_TILE_GFX9_64K_S_X 25
 #define AMD_FMT_MOD_TILE_GFX9_64K_D_X 26
 #define AMD_FMT_MOD_TILE_GFX9_64K_R_X 27
 #define AMD_FMT_MOD_TILE_GFX11_256K_R_X 31
-#define AMD_FMT_MOD_TILE_GFX12_256B_2D 1
-#define AMD_FMT_MOD_TILE_GFX12_4K_2D 2
-#define AMD_FMT_MOD_TILE_GFX12_64K_2D 3
-#define AMD_FMT_MOD_TILE_GFX12_256K_2D 4
 #define AMD_FMT_MOD_DCC_BLOCK_64B 0
 #define AMD_FMT_MOD_DCC_BLOCK_128B 1
 #define AMD_FMT_MOD_DCC_BLOCK_256B 2
diff --git a/libc/kernel/uapi/drm/drm_mode.h b/libc/kernel/uapi/drm/drm_mode.h
index 06c91c5..8fccdaf 100644
--- a/libc/kernel/uapi/drm/drm_mode.h
+++ b/libc/kernel/uapi/drm/drm_mode.h
@@ -357,6 +357,9 @@
 struct drm_color_ctm {
   __u64 matrix[9];
 };
+struct drm_color_ctm_3x4 {
+  __u64 matrix[12];
+};
 struct drm_color_lut {
   __u16 red;
   __u16 green;
diff --git a/libc/kernel/uapi/drm/i915_drm.h b/libc/kernel/uapi/drm/i915_drm.h
index b43d8df..13eda7c 100644
--- a/libc/kernel/uapi/drm/i915_drm.h
+++ b/libc/kernel/uapi/drm/i915_drm.h
@@ -745,7 +745,6 @@
 #define I915_CONTEXT_PARAM_RINGSIZE 0xc
 #define I915_CONTEXT_PARAM_PROTECTED_CONTENT 0xd
 #define I915_CONTEXT_PARAM_LOW_LATENCY 0xe
-#define I915_CONTEXT_PARAM_CONTEXT_IMAGE 0xf
   __u64 value;
 };
 struct drm_i915_gem_context_param_sseu {
@@ -800,14 +799,6 @@
 } __attribute__((packed));
 #define I915_DEFINE_CONTEXT_PARAM_ENGINES(name__,N__) struct { __u64 extensions; struct i915_engine_class_instance engines[N__]; \
 } __attribute__((packed)) name__
-struct i915_gem_context_param_context_image {
-  struct i915_engine_class_instance engine;
-  __u32 flags;
-#define I915_CONTEXT_IMAGE_FLAG_ENGINE_INDEX (1u << 0)
-  __u32 size;
-  __u32 mbz;
-  __u64 image;
-} __attribute__((packed));
 struct drm_i915_gem_context_create_ext_setparam {
   struct i915_user_extension base;
   struct drm_i915_gem_context_param param;
diff --git a/libc/kernel/uapi/drm/ivpu_accel.h b/libc/kernel/uapi/drm/ivpu_accel.h
index 960bd43..fcbf6f7 100644
--- a/libc/kernel/uapi/drm/ivpu_accel.h
+++ b/libc/kernel/uapi/drm/ivpu_accel.h
@@ -18,20 +18,12 @@
 #define DRM_IVPU_BO_INFO 0x03
 #define DRM_IVPU_SUBMIT 0x05
 #define DRM_IVPU_BO_WAIT 0x06
-#define DRM_IVPU_METRIC_STREAMER_START 0x07
-#define DRM_IVPU_METRIC_STREAMER_STOP 0x08
-#define DRM_IVPU_METRIC_STREAMER_GET_DATA 0x09
-#define DRM_IVPU_METRIC_STREAMER_GET_INFO 0x0a
 #define DRM_IOCTL_IVPU_GET_PARAM DRM_IOWR(DRM_COMMAND_BASE + DRM_IVPU_GET_PARAM, struct drm_ivpu_param)
 #define DRM_IOCTL_IVPU_SET_PARAM DRM_IOW(DRM_COMMAND_BASE + DRM_IVPU_SET_PARAM, struct drm_ivpu_param)
 #define DRM_IOCTL_IVPU_BO_CREATE DRM_IOWR(DRM_COMMAND_BASE + DRM_IVPU_BO_CREATE, struct drm_ivpu_bo_create)
 #define DRM_IOCTL_IVPU_BO_INFO DRM_IOWR(DRM_COMMAND_BASE + DRM_IVPU_BO_INFO, struct drm_ivpu_bo_info)
 #define DRM_IOCTL_IVPU_SUBMIT DRM_IOW(DRM_COMMAND_BASE + DRM_IVPU_SUBMIT, struct drm_ivpu_submit)
 #define DRM_IOCTL_IVPU_BO_WAIT DRM_IOWR(DRM_COMMAND_BASE + DRM_IVPU_BO_WAIT, struct drm_ivpu_bo_wait)
-#define DRM_IOCTL_IVPU_METRIC_STREAMER_START DRM_IOWR(DRM_COMMAND_BASE + DRM_IVPU_METRIC_STREAMER_START, struct drm_ivpu_metric_streamer_start)
-#define DRM_IOCTL_IVPU_METRIC_STREAMER_STOP DRM_IOW(DRM_COMMAND_BASE + DRM_IVPU_METRIC_STREAMER_STOP, struct drm_ivpu_metric_streamer_stop)
-#define DRM_IOCTL_IVPU_METRIC_STREAMER_GET_DATA DRM_IOWR(DRM_COMMAND_BASE + DRM_IVPU_METRIC_STREAMER_GET_DATA, struct drm_ivpu_metric_streamer_get_data)
-#define DRM_IOCTL_IVPU_METRIC_STREAMER_GET_INFO DRM_IOWR(DRM_COMMAND_BASE + DRM_IVPU_METRIC_STREAMER_GET_INFO, struct drm_ivpu_metric_streamer_get_data)
 #define DRM_IVPU_PARAM_DEVICE_ID 0
 #define DRM_IVPU_PARAM_DEVICE_REVISION 1
 #define DRM_IVPU_PARAM_PLATFORM_TYPE 2
@@ -104,22 +96,6 @@
   __u32 job_status;
   __u32 pad;
 };
-struct drm_ivpu_metric_streamer_start {
-  __u64 metric_group_mask;
-  __u64 sampling_period_ns;
-  __u32 read_period_samples;
-  __u32 sample_size;
-  __u32 max_data_size;
-};
-struct drm_ivpu_metric_streamer_get_data {
-  __u64 metric_group_mask;
-  __u64 buffer_ptr;
-  __u64 buffer_size;
-  __u64 data_size;
-};
-struct drm_ivpu_metric_streamer_stop {
-  __u64 metric_group_mask;
-};
 #ifdef __cplusplus
 }
 #endif
diff --git a/libc/kernel/uapi/drm/msm_drm.h b/libc/kernel/uapi/drm/msm_drm.h
index 7ec5ed2..4d83744 100644
--- a/libc/kernel/uapi/drm/msm_drm.h
+++ b/libc/kernel/uapi/drm/msm_drm.h
@@ -37,7 +37,6 @@
 #define MSM_PARAM_VA_START 0x0e
 #define MSM_PARAM_VA_SIZE 0x0f
 #define MSM_PARAM_HIGHEST_BANK_BIT 0x10
-#define MSM_PARAM_RAYTRACING 0x11
 #define MSM_PARAM_NR_RINGS MSM_PARAM_PRIORITIES
 struct drm_msm_param {
   __u32 pipe;
diff --git a/libc/kernel/uapi/drm/v3d_drm.h b/libc/kernel/uapi/drm/v3d_drm.h
index b7aca21..4000fd3 100644
--- a/libc/kernel/uapi/drm/v3d_drm.h
+++ b/libc/kernel/uapi/drm/v3d_drm.h
@@ -22,7 +22,6 @@
 #define DRM_V3D_PERFMON_DESTROY 0x09
 #define DRM_V3D_PERFMON_GET_VALUES 0x0a
 #define DRM_V3D_SUBMIT_CPU 0x0b
-#define DRM_V3D_PERFMON_GET_COUNTER 0x0c
 #define DRM_IOCTL_V3D_SUBMIT_CL DRM_IOWR(DRM_COMMAND_BASE + DRM_V3D_SUBMIT_CL, struct drm_v3d_submit_cl)
 #define DRM_IOCTL_V3D_WAIT_BO DRM_IOWR(DRM_COMMAND_BASE + DRM_V3D_WAIT_BO, struct drm_v3d_wait_bo)
 #define DRM_IOCTL_V3D_CREATE_BO DRM_IOWR(DRM_COMMAND_BASE + DRM_V3D_CREATE_BO, struct drm_v3d_create_bo)
@@ -35,7 +34,6 @@
 #define DRM_IOCTL_V3D_PERFMON_DESTROY DRM_IOWR(DRM_COMMAND_BASE + DRM_V3D_PERFMON_DESTROY, struct drm_v3d_perfmon_destroy)
 #define DRM_IOCTL_V3D_PERFMON_GET_VALUES DRM_IOWR(DRM_COMMAND_BASE + DRM_V3D_PERFMON_GET_VALUES, struct drm_v3d_perfmon_get_values)
 #define DRM_IOCTL_V3D_SUBMIT_CPU DRM_IOW(DRM_COMMAND_BASE + DRM_V3D_SUBMIT_CPU, struct drm_v3d_submit_cpu)
-#define DRM_IOCTL_V3D_PERFMON_GET_COUNTER DRM_IOWR(DRM_COMMAND_BASE + DRM_V3D_PERFMON_GET_COUNTER, struct drm_v3d_perfmon_get_counter)
 #define DRM_V3D_SUBMIT_CL_FLUSH_CACHE 0x01
 #define DRM_V3D_SUBMIT_EXTENSION 0x02
 struct drm_v3d_extension {
@@ -121,7 +119,6 @@
   DRM_V3D_PARAM_SUPPORTS_PERFMON,
   DRM_V3D_PARAM_SUPPORTS_MULTISYNC_EXT,
   DRM_V3D_PARAM_SUPPORTS_CPU_QUEUE,
-  DRM_V3D_PARAM_MAX_PERF_COUNTERS,
 };
 struct drm_v3d_get_param {
   __u32 param;
@@ -327,16 +324,6 @@
   __u32 pad;
   __u64 values_ptr;
 };
-#define DRM_V3D_PERFCNT_MAX_NAME 64
-#define DRM_V3D_PERFCNT_MAX_CATEGORY 32
-#define DRM_V3D_PERFCNT_MAX_DESCRIPTION 256
-struct drm_v3d_perfmon_get_counter {
-  __u8 counter;
-  __u8 name[DRM_V3D_PERFCNT_MAX_NAME];
-  __u8 category[DRM_V3D_PERFCNT_MAX_CATEGORY];
-  __u8 description[DRM_V3D_PERFCNT_MAX_DESCRIPTION];
-  __u8 reserved[7];
-};
 #ifdef __cplusplus
 }
 #endif
diff --git a/libc/kernel/uapi/drm/xe_drm.h b/libc/kernel/uapi/drm/xe_drm.h
index a034b29..d1b6dad 100644
--- a/libc/kernel/uapi/drm/xe_drm.h
+++ b/libc/kernel/uapi/drm/xe_drm.h
@@ -21,7 +21,6 @@
 #define DRM_XE_EXEC_QUEUE_GET_PROPERTY 0x08
 #define DRM_XE_EXEC 0x09
 #define DRM_XE_WAIT_USER_FENCE 0x0a
-#define DRM_XE_OBSERVATION 0x0b
 #define DRM_IOCTL_XE_DEVICE_QUERY DRM_IOWR(DRM_COMMAND_BASE + DRM_XE_DEVICE_QUERY, struct drm_xe_device_query)
 #define DRM_IOCTL_XE_GEM_CREATE DRM_IOWR(DRM_COMMAND_BASE + DRM_XE_GEM_CREATE, struct drm_xe_gem_create)
 #define DRM_IOCTL_XE_GEM_MMAP_OFFSET DRM_IOWR(DRM_COMMAND_BASE + DRM_XE_GEM_MMAP_OFFSET, struct drm_xe_gem_mmap_offset)
@@ -33,7 +32,6 @@
 #define DRM_IOCTL_XE_EXEC_QUEUE_GET_PROPERTY DRM_IOWR(DRM_COMMAND_BASE + DRM_XE_EXEC_QUEUE_GET_PROPERTY, struct drm_xe_exec_queue_get_property)
 #define DRM_IOCTL_XE_EXEC DRM_IOW(DRM_COMMAND_BASE + DRM_XE_EXEC, struct drm_xe_exec)
 #define DRM_IOCTL_XE_WAIT_USER_FENCE DRM_IOWR(DRM_COMMAND_BASE + DRM_XE_WAIT_USER_FENCE, struct drm_xe_wait_user_fence)
-#define DRM_IOCTL_XE_OBSERVATION DRM_IOW(DRM_COMMAND_BASE + DRM_XE_OBSERVATION, struct drm_xe_observation_param)
 struct drm_xe_user_extension {
   __u64 next_extension;
   __u32 name;
@@ -122,7 +120,6 @@
   __u16 gt_id;
 #define DRM_XE_TOPO_DSS_GEOMETRY 1
 #define DRM_XE_TOPO_DSS_COMPUTE 2
-#define DRM_XE_TOPO_L3_BANK 3
 #define DRM_XE_TOPO_EU_PER_DSS 4
   __u16 type;
   __u32 num_bytes;
@@ -158,7 +155,6 @@
 #define DRM_XE_DEVICE_QUERY_GT_TOPOLOGY 5
 #define DRM_XE_DEVICE_QUERY_ENGINE_CYCLES 6
 #define DRM_XE_DEVICE_QUERY_UC_FW_VERSION 7
-#define DRM_XE_DEVICE_QUERY_OA_UNITS 8
   __u32 query;
   __u32 size;
   __u64 data;
@@ -313,92 +309,6 @@
   __u32 pad2;
   __u64 reserved[2];
 };
-enum drm_xe_observation_type {
-  DRM_XE_OBSERVATION_TYPE_OA,
-};
-enum drm_xe_observation_op {
-  DRM_XE_OBSERVATION_OP_STREAM_OPEN,
-  DRM_XE_OBSERVATION_OP_ADD_CONFIG,
-  DRM_XE_OBSERVATION_OP_REMOVE_CONFIG,
-};
-struct drm_xe_observation_param {
-  __u64 extensions;
-  __u64 observation_type;
-  __u64 observation_op;
-  __u64 param;
-};
-enum drm_xe_observation_ioctls {
-  DRM_XE_OBSERVATION_IOCTL_ENABLE = _IO('i', 0x0),
-  DRM_XE_OBSERVATION_IOCTL_DISABLE = _IO('i', 0x1),
-  DRM_XE_OBSERVATION_IOCTL_CONFIG = _IO('i', 0x2),
-  DRM_XE_OBSERVATION_IOCTL_STATUS = _IO('i', 0x3),
-  DRM_XE_OBSERVATION_IOCTL_INFO = _IO('i', 0x4),
-};
-enum drm_xe_oa_unit_type {
-  DRM_XE_OA_UNIT_TYPE_OAG,
-  DRM_XE_OA_UNIT_TYPE_OAM,
-};
-struct drm_xe_oa_unit {
-  __u64 extensions;
-  __u32 oa_unit_id;
-  __u32 oa_unit_type;
-  __u64 capabilities;
-#define DRM_XE_OA_CAPS_BASE (1 << 0)
-  __u64 oa_timestamp_freq;
-  __u64 reserved[4];
-  __u64 num_engines;
-  struct drm_xe_engine_class_instance eci[];
-};
-struct drm_xe_query_oa_units {
-  __u64 extensions;
-  __u32 num_oa_units;
-  __u32 pad;
-  __u64 oa_units[];
-};
-enum drm_xe_oa_format_type {
-  DRM_XE_OA_FMT_TYPE_OAG,
-  DRM_XE_OA_FMT_TYPE_OAR,
-  DRM_XE_OA_FMT_TYPE_OAM,
-  DRM_XE_OA_FMT_TYPE_OAC,
-  DRM_XE_OA_FMT_TYPE_OAM_MPEC,
-  DRM_XE_OA_FMT_TYPE_PEC,
-};
-enum drm_xe_oa_property_id {
-#define DRM_XE_OA_EXTENSION_SET_PROPERTY 0
-  DRM_XE_OA_PROPERTY_OA_UNIT_ID = 1,
-  DRM_XE_OA_PROPERTY_SAMPLE_OA,
-  DRM_XE_OA_PROPERTY_OA_METRIC_SET,
-  DRM_XE_OA_PROPERTY_OA_FORMAT,
-#define DRM_XE_OA_FORMAT_MASK_FMT_TYPE (0xffu << 0)
-#define DRM_XE_OA_FORMAT_MASK_COUNTER_SEL (0xffu << 8)
-#define DRM_XE_OA_FORMAT_MASK_COUNTER_SIZE (0xffu << 16)
-#define DRM_XE_OA_FORMAT_MASK_BC_REPORT (0xffu << 24)
-  DRM_XE_OA_PROPERTY_OA_PERIOD_EXPONENT,
-  DRM_XE_OA_PROPERTY_OA_DISABLED,
-  DRM_XE_OA_PROPERTY_EXEC_QUEUE_ID,
-  DRM_XE_OA_PROPERTY_OA_ENGINE_INSTANCE,
-  DRM_XE_OA_PROPERTY_NO_PREEMPT,
-};
-struct drm_xe_oa_config {
-  __u64 extensions;
-  char uuid[36];
-  __u32 n_regs;
-  __u64 regs_ptr;
-};
-struct drm_xe_oa_stream_status {
-  __u64 extensions;
-  __u64 oa_status;
-#define DRM_XE_OASTATUS_MMIO_TRG_Q_FULL (1 << 3)
-#define DRM_XE_OASTATUS_COUNTER_OVERFLOW (1 << 2)
-#define DRM_XE_OASTATUS_BUFFER_OVERFLOW (1 << 1)
-#define DRM_XE_OASTATUS_REPORT_LOST (1 << 0)
-  __u64 reserved[3];
-};
-struct drm_xe_oa_stream_info {
-  __u64 extensions;
-  __u64 oa_buf_size;
-  __u64 reserved[3];
-};
 #ifdef __cplusplus
 }
 #endif
diff --git a/libc/kernel/uapi/linux/bpf.h b/libc/kernel/uapi/linux/bpf.h
index 8d64816..c732920 100644
--- a/libc/kernel/uapi/linux/bpf.h
+++ b/libc/kernel/uapi/linux/bpf.h
@@ -367,7 +367,6 @@
 #define BPF_F_QUERY_EFFECTIVE (1U << 0)
 #define BPF_F_TEST_RUN_ON_CPU (1U << 0)
 #define BPF_F_TEST_XDP_LIVE_FRAMES (1U << 1)
-#define BPF_F_TEST_SKB_CHECKSUM_COMPLETE (1U << 2)
 enum bpf_stats_type {
   BPF_STATS_RUN_TIME = 0,
 };
@@ -774,11 +773,8 @@
 #define __bpf_md_ptr(type,name) union { type name; __u64 : 64; \
 } __attribute__((aligned(8)))
 enum {
-  BPF_SKB_TSTAMP_UNSPEC = 0,
-  BPF_SKB_TSTAMP_DELIVERY_MONO = 1,
-  BPF_SKB_CLOCK_REALTIME = 0,
-  BPF_SKB_CLOCK_MONOTONIC = 1,
-  BPF_SKB_CLOCK_TAI = 2,
+  BPF_SKB_TSTAMP_UNSPEC,
+  BPF_SKB_TSTAMP_DELIVERY_MONO,
 };
 struct __sk_buff {
   __u32 len;
diff --git a/libc/kernel/uapi/linux/btrfs_tree.h b/libc/kernel/uapi/linux/btrfs_tree.h
index 88f44d9..ea33eee 100644
--- a/libc/kernel/uapi/linux/btrfs_tree.h
+++ b/libc/kernel/uapi/linux/btrfs_tree.h
@@ -279,8 +279,18 @@
   __le64 devid;
   __le64 physical;
 } __attribute__((__packed__));
+#define BTRFS_STRIPE_RAID0 1
+#define BTRFS_STRIPE_RAID1 2
+#define BTRFS_STRIPE_DUP 3
+#define BTRFS_STRIPE_RAID10 4
+#define BTRFS_STRIPE_RAID5 5
+#define BTRFS_STRIPE_RAID6 6
+#define BTRFS_STRIPE_RAID1C3 7
+#define BTRFS_STRIPE_RAID1C4 8
 struct btrfs_stripe_extent {
-  __DECLARE_FLEX_ARRAY(struct btrfs_raid_stride, strides);
+  __u8 encoding;
+  __u8 reserved[7];
+  struct btrfs_raid_stride strides[];
 } __attribute__((__packed__));
 #define BTRFS_HEADER_FLAG_WRITTEN (1ULL << 0)
 #define BTRFS_HEADER_FLAG_RELOC (1ULL << 1)
@@ -290,9 +300,6 @@
 #define BTRFS_SUPER_FLAG_METADUMP_V2 (1ULL << 34)
 #define BTRFS_SUPER_FLAG_CHANGING_FSID (1ULL << 35)
 #define BTRFS_SUPER_FLAG_CHANGING_FSID_V2 (1ULL << 36)
-#define BTRFS_SUPER_FLAG_CHANGING_BG_TREE (1ULL << 38)
-#define BTRFS_SUPER_FLAG_CHANGING_DATA_CSUM (1ULL << 39)
-#define BTRFS_SUPER_FLAG_CHANGING_META_CSUM (1ULL << 40)
 struct btrfs_extent_item {
   __le64 refs;
   __le64 generation;
diff --git a/libc/kernel/uapi/linux/dlm.h b/libc/kernel/uapi/linux/dlm.h
index 1344f9b..3c73908 100644
--- a/libc/kernel/uapi/linux/dlm.h
+++ b/libc/kernel/uapi/linux/dlm.h
@@ -20,5 +20,4 @@
 };
 #define DLM_LSFL_TIMEWARN 0x00000002
 #define DLM_LSFL_NEWEXCL 0x00000008
-#define __DLM_LSFL_RESERVED0 0x00000010
 #endif
diff --git a/libc/kernel/uapi/linux/dma-heap.h b/libc/kernel/uapi/linux/dma-heap.h
index ac86b59..467e336 100644
--- a/libc/kernel/uapi/linux/dma-heap.h
+++ b/libc/kernel/uapi/linux/dma-heap.h
@@ -9,7 +9,7 @@
 #include <linux/ioctl.h>
 #include <linux/types.h>
 #define DMA_HEAP_VALID_FD_FLAGS (O_CLOEXEC | O_ACCMODE)
-#define DMA_HEAP_VALID_HEAP_FLAGS (0ULL)
+#define DMA_HEAP_VALID_HEAP_FLAGS (0)
 struct dma_heap_allocation_data {
   __u64 len;
   __u32 fd;
diff --git a/libc/kernel/uapi/linux/ethtool.h b/libc/kernel/uapi/linux/ethtool.h
index e213ba1..334c788 100644
--- a/libc/kernel/uapi/linux/ethtool.h
+++ b/libc/kernel/uapi/linux/ethtool.h
@@ -270,56 +270,6 @@
   ETHTOOL_MODULE_POWER_MODE_LOW = 1,
   ETHTOOL_MODULE_POWER_MODE_HIGH,
 };
-enum ethtool_c33_pse_ext_state {
-  ETHTOOL_C33_PSE_EXT_STATE_ERROR_CONDITION = 1,
-  ETHTOOL_C33_PSE_EXT_STATE_MR_MPS_VALID,
-  ETHTOOL_C33_PSE_EXT_STATE_MR_PSE_ENABLE,
-  ETHTOOL_C33_PSE_EXT_STATE_OPTION_DETECT_TED,
-  ETHTOOL_C33_PSE_EXT_STATE_OPTION_VPORT_LIM,
-  ETHTOOL_C33_PSE_EXT_STATE_OVLD_DETECTED,
-  ETHTOOL_C33_PSE_EXT_STATE_PD_DLL_POWER_TYPE,
-  ETHTOOL_C33_PSE_EXT_STATE_POWER_NOT_AVAILABLE,
-  ETHTOOL_C33_PSE_EXT_STATE_SHORT_DETECTED,
-};
-enum ethtool_c33_pse_ext_substate_mr_mps_valid {
-  ETHTOOL_C33_PSE_EXT_SUBSTATE_MR_MPS_VALID_DETECTED_UNDERLOAD = 1,
-  ETHTOOL_C33_PSE_EXT_SUBSTATE_MR_MPS_VALID_CONNECTION_OPEN,
-};
-enum ethtool_c33_pse_ext_substate_error_condition {
-  ETHTOOL_C33_PSE_EXT_SUBSTATE_ERROR_CONDITION_NON_EXISTING_PORT = 1,
-  ETHTOOL_C33_PSE_EXT_SUBSTATE_ERROR_CONDITION_UNDEFINED_PORT,
-  ETHTOOL_C33_PSE_EXT_SUBSTATE_ERROR_CONDITION_INTERNAL_HW_FAULT,
-  ETHTOOL_C33_PSE_EXT_SUBSTATE_ERROR_CONDITION_COMM_ERROR_AFTER_FORCE_ON,
-  ETHTOOL_C33_PSE_EXT_SUBSTATE_ERROR_CONDITION_UNKNOWN_PORT_STATUS,
-  ETHTOOL_C33_PSE_EXT_SUBSTATE_ERROR_CONDITION_HOST_CRASH_TURN_OFF,
-  ETHTOOL_C33_PSE_EXT_SUBSTATE_ERROR_CONDITION_HOST_CRASH_FORCE_SHUTDOWN,
-  ETHTOOL_C33_PSE_EXT_SUBSTATE_ERROR_CONDITION_CONFIG_CHANGE,
-  ETHTOOL_C33_PSE_EXT_SUBSTATE_ERROR_CONDITION_DETECTED_OVER_TEMP,
-};
-enum ethtool_c33_pse_ext_substate_mr_pse_enable {
-  ETHTOOL_C33_PSE_EXT_SUBSTATE_MR_PSE_ENABLE_DISABLE_PIN_ACTIVE = 1,
-};
-enum ethtool_c33_pse_ext_substate_option_detect_ted {
-  ETHTOOL_C33_PSE_EXT_SUBSTATE_OPTION_DETECT_TED_DET_IN_PROCESS = 1,
-  ETHTOOL_C33_PSE_EXT_SUBSTATE_OPTION_DETECT_TED_CONNECTION_CHECK_ERROR,
-};
-enum ethtool_c33_pse_ext_substate_option_vport_lim {
-  ETHTOOL_C33_PSE_EXT_SUBSTATE_OPTION_VPORT_LIM_HIGH_VOLTAGE = 1,
-  ETHTOOL_C33_PSE_EXT_SUBSTATE_OPTION_VPORT_LIM_LOW_VOLTAGE,
-  ETHTOOL_C33_PSE_EXT_SUBSTATE_OPTION_VPORT_LIM_VOLTAGE_INJECTION,
-};
-enum ethtool_c33_pse_ext_substate_ovld_detected {
-  ETHTOOL_C33_PSE_EXT_SUBSTATE_OVLD_DETECTED_OVERLOAD = 1,
-};
-enum ethtool_c33_pse_ext_substate_power_not_available {
-  ETHTOOL_C33_PSE_EXT_SUBSTATE_POWER_NOT_AVAILABLE_BUDGET_EXCEEDED = 1,
-  ETHTOOL_C33_PSE_EXT_SUBSTATE_POWER_NOT_AVAILABLE_PORT_PW_LIMIT_EXCEEDS_CONTROLLER_BUDGET,
-  ETHTOOL_C33_PSE_EXT_SUBSTATE_POWER_NOT_AVAILABLE_PD_REQUEST_EXCEEDS_PORT_LIMIT,
-  ETHTOOL_C33_PSE_EXT_SUBSTATE_POWER_NOT_AVAILABLE_HW_PW_LIMIT,
-};
-enum ethtool_c33_pse_ext_substate_short_detected {
-  ETHTOOL_C33_PSE_EXT_SUBSTATE_SHORT_DETECTED_SHORT_CONDITION = 1,
-};
 enum ethtool_pse_types {
   ETHTOOL_PSE_UNKNOWN = 1 << 0,
   ETHTOOL_PSE_PODL = 1 << 1,
@@ -361,12 +311,6 @@
   ETHTOOL_MM_VERIFY_STATUS_FAILED,
   ETHTOOL_MM_VERIFY_STATUS_DISABLED,
 };
-enum ethtool_module_fw_flash_status {
-  ETHTOOL_MODULE_FW_FLASH_STATUS_STARTED = 1,
-  ETHTOOL_MODULE_FW_FLASH_STATUS_IN_PROGRESS,
-  ETHTOOL_MODULE_FW_FLASH_STATUS_COMPLETED,
-  ETHTOOL_MODULE_FW_FLASH_STATUS_ERROR,
-};
 struct ethtool_gstrings {
   __u32 cmd;
   __u32 string_set;
@@ -805,7 +749,6 @@
   ETHTOOL_LINK_MODE_10baseT1S_Full_BIT = 99,
   ETHTOOL_LINK_MODE_10baseT1S_Half_BIT = 100,
   ETHTOOL_LINK_MODE_10baseT1S_P2MP_Half_BIT = 101,
-  ETHTOOL_LINK_MODE_10baseT1BRR_Full_BIT = 102,
   __ETHTOOL_LINK_MODE_MASK_NBITS
 };
 #define __ETHTOOL_LINK_MODE_LEGACY_MASK(base_name) (1UL << (ETHTOOL_LINK_MODE_ ##base_name ##_BIT))
diff --git a/libc/kernel/uapi/linux/ethtool_netlink.h b/libc/kernel/uapi/linux/ethtool_netlink.h
index ac6391a..6757ef5 100644
--- a/libc/kernel/uapi/linux/ethtool_netlink.h
+++ b/libc/kernel/uapi/linux/ethtool_netlink.h
@@ -52,7 +52,6 @@
   ETHTOOL_MSG_PLCA_GET_STATUS,
   ETHTOOL_MSG_MM_GET,
   ETHTOOL_MSG_MM_SET,
-  ETHTOOL_MSG_MODULE_FW_FLASH_ACT,
   __ETHTOOL_MSG_USER_CNT,
   ETHTOOL_MSG_USER_MAX = __ETHTOOL_MSG_USER_CNT - 1
 };
@@ -101,7 +100,6 @@
   ETHTOOL_MSG_PLCA_NTF,
   ETHTOOL_MSG_MM_GET_REPLY,
   ETHTOOL_MSG_MM_NTF,
-  ETHTOOL_MSG_MODULE_FW_FLASH_NTF,
   __ETHTOOL_MSG_KERNEL_CNT,
   ETHTOOL_MSG_KERNEL_MAX = __ETHTOOL_MSG_KERNEL_CNT - 1
 };
@@ -318,26 +316,10 @@
   ETHTOOL_A_COALESCE_TX_AGGR_MAX_BYTES,
   ETHTOOL_A_COALESCE_TX_AGGR_MAX_FRAMES,
   ETHTOOL_A_COALESCE_TX_AGGR_TIME_USECS,
-  ETHTOOL_A_COALESCE_RX_PROFILE,
-  ETHTOOL_A_COALESCE_TX_PROFILE,
   __ETHTOOL_A_COALESCE_CNT,
   ETHTOOL_A_COALESCE_MAX = (__ETHTOOL_A_COALESCE_CNT - 1)
 };
 enum {
-  ETHTOOL_A_PROFILE_UNSPEC,
-  ETHTOOL_A_PROFILE_IRQ_MODERATION,
-  __ETHTOOL_A_PROFILE_CNT,
-  ETHTOOL_A_PROFILE_MAX = (__ETHTOOL_A_PROFILE_CNT - 1)
-};
-enum {
-  ETHTOOL_A_IRQ_MODERATION_UNSPEC,
-  ETHTOOL_A_IRQ_MODERATION_USEC,
-  ETHTOOL_A_IRQ_MODERATION_PKTS,
-  ETHTOOL_A_IRQ_MODERATION_COMPS,
-  __ETHTOOL_A_IRQ_MODERATION_CNT,
-  ETHTOOL_A_IRQ_MODERATION_MAX = (__ETHTOOL_A_IRQ_MODERATION_CNT - 1)
-};
-enum {
   ETHTOOL_A_PAUSE_UNSPEC,
   ETHTOOL_A_PAUSE_HEADER,
   ETHTOOL_A_PAUSE_AUTONEG,
@@ -653,11 +635,6 @@
   ETHTOOL_A_MODULE_MAX = (__ETHTOOL_A_MODULE_CNT - 1)
 };
 enum {
-  ETHTOOL_A_C33_PSE_PW_LIMIT_UNSPEC,
-  ETHTOOL_A_C33_PSE_PW_LIMIT_MIN,
-  ETHTOOL_A_C33_PSE_PW_LIMIT_MAX,
-};
-enum {
   ETHTOOL_A_PSE_UNSPEC,
   ETHTOOL_A_PSE_HEADER,
   ETHTOOL_A_PODL_PSE_ADMIN_STATE,
@@ -666,12 +643,6 @@
   ETHTOOL_A_C33_PSE_ADMIN_STATE,
   ETHTOOL_A_C33_PSE_ADMIN_CONTROL,
   ETHTOOL_A_C33_PSE_PW_D_STATUS,
-  ETHTOOL_A_C33_PSE_PW_CLASS,
-  ETHTOOL_A_C33_PSE_ACTUAL_PW,
-  ETHTOOL_A_C33_PSE_EXT_STATE,
-  ETHTOOL_A_C33_PSE_EXT_SUBSTATE,
-  ETHTOOL_A_C33_PSE_AVAIL_PW_LIMIT,
-  ETHTOOL_A_C33_PSE_PW_LIMIT_RANGES,
   __ETHTOOL_A_PSE_CNT,
   ETHTOOL_A_PSE_MAX = (__ETHTOOL_A_PSE_CNT - 1)
 };
@@ -728,18 +699,6 @@
   __ETHTOOL_A_MM_CNT,
   ETHTOOL_A_MM_MAX = (__ETHTOOL_A_MM_CNT - 1)
 };
-enum {
-  ETHTOOL_A_MODULE_FW_FLASH_UNSPEC,
-  ETHTOOL_A_MODULE_FW_FLASH_HEADER,
-  ETHTOOL_A_MODULE_FW_FLASH_FILE_NAME,
-  ETHTOOL_A_MODULE_FW_FLASH_PASSWORD,
-  ETHTOOL_A_MODULE_FW_FLASH_STATUS,
-  ETHTOOL_A_MODULE_FW_FLASH_STATUS_MSG,
-  ETHTOOL_A_MODULE_FW_FLASH_DONE,
-  ETHTOOL_A_MODULE_FW_FLASH_TOTAL,
-  __ETHTOOL_A_MODULE_FW_FLASH_CNT,
-  ETHTOOL_A_MODULE_FW_FLASH_MAX = (__ETHTOOL_A_MODULE_FW_FLASH_CNT - 1)
-};
 #define ETHTOOL_GENL_NAME "ethtool"
 #define ETHTOOL_GENL_VERSION 1
 #define ETHTOOL_MCGRP_MONITOR_NAME "monitor"
diff --git a/libc/kernel/uapi/linux/fs.h b/libc/kernel/uapi/linux/fs.h
index adab56f..38a2d9e 100644
--- a/libc/kernel/uapi/linux/fs.h
+++ b/libc/kernel/uapi/linux/fs.h
@@ -194,10 +194,8 @@
 #define RWF_NOWAIT (( __kernel_rwf_t) 0x00000008)
 #define RWF_APPEND (( __kernel_rwf_t) 0x00000010)
 #define RWF_NOAPPEND (( __kernel_rwf_t) 0x00000020)
-#define RWF_ATOMIC (( __kernel_rwf_t) 0x00000040)
-#define RWF_SUPPORTED (RWF_HIPRI | RWF_DSYNC | RWF_SYNC | RWF_NOWAIT | RWF_APPEND | RWF_NOAPPEND | RWF_ATOMIC)
-#define PROCFS_IOCTL_MAGIC 'f'
-#define PAGEMAP_SCAN _IOWR(PROCFS_IOCTL_MAGIC, 16, struct pm_scan_arg)
+#define RWF_SUPPORTED (RWF_HIPRI | RWF_DSYNC | RWF_SYNC | RWF_NOWAIT | RWF_APPEND | RWF_NOAPPEND)
+#define PAGEMAP_SCAN _IOWR('f', 16, struct pm_scan_arg)
 #define PAGE_IS_WPALLOWED (1 << 0)
 #define PAGE_IS_WRITTEN (1 << 1)
 #define PAGE_IS_FILE (1 << 2)
@@ -227,30 +225,4 @@
   __u64 category_anyof_mask;
   __u64 return_mask;
 };
-#define PROCMAP_QUERY _IOWR(PROCFS_IOCTL_MAGIC, 17, struct procmap_query)
-enum procmap_query_flags {
-  PROCMAP_QUERY_VMA_READABLE = 0x01,
-  PROCMAP_QUERY_VMA_WRITABLE = 0x02,
-  PROCMAP_QUERY_VMA_EXECUTABLE = 0x04,
-  PROCMAP_QUERY_VMA_SHARED = 0x08,
-  PROCMAP_QUERY_COVERING_OR_NEXT_VMA = 0x10,
-  PROCMAP_QUERY_FILE_BACKED_VMA = 0x20,
-};
-struct procmap_query {
-  __u64 size;
-  __u64 query_flags;
-  __u64 query_addr;
-  __u64 vma_start;
-  __u64 vma_end;
-  __u64 vma_flags;
-  __u64 vma_page_size;
-  __u64 vma_offset;
-  __u64 inode;
-  __u32 dev_major;
-  __u32 dev_minor;
-  __u32 vma_name_size;
-  __u32 build_id_size;
-  __u64 vma_name_addr;
-  __u64 build_id_addr;
-};
 #endif
diff --git a/libc/kernel/uapi/linux/if_xdp.h b/libc/kernel/uapi/linux/if_xdp.h
index 7201e06..b7eec87 100644
--- a/libc/kernel/uapi/linux/if_xdp.h
+++ b/libc/kernel/uapi/linux/if_xdp.h
@@ -14,7 +14,6 @@
 #define XDP_USE_SG (1 << 4)
 #define XDP_UMEM_UNALIGNED_CHUNK_FLAG (1 << 0)
 #define XDP_UMEM_TX_SW_CSUM (1 << 1)
-#define XDP_UMEM_TX_METADATA_LEN (1 << 2)
 struct sockaddr_xdp {
   __u16 sxdp_family;
   __u16 sxdp_flags;
diff --git a/libc/kernel/uapi/linux/iio/buffer.h b/libc/kernel/uapi/linux/iio/buffer.h
index 7e03a8c..45c6f65 100644
--- a/libc/kernel/uapi/linux/iio/buffer.h
+++ b/libc/kernel/uapi/linux/iio/buffer.h
@@ -6,16 +6,5 @@
  */
 #ifndef _UAPI_IIO_BUFFER_H_
 #define _UAPI_IIO_BUFFER_H_
-#include <linux/types.h>
-#define IIO_BUFFER_DMABUF_CYCLIC (1 << 0)
-#define IIO_BUFFER_DMABUF_SUPPORTED_FLAGS 0x00000001
-struct iio_dmabuf {
-  __u32 fd;
-  __u32 flags;
-  __u64 bytes_used;
-};
 #define IIO_BUFFER_GET_FD_IOCTL _IOWR('i', 0x91, int)
-#define IIO_BUFFER_DMABUF_ATTACH_IOCTL _IOW('i', 0x92, int)
-#define IIO_BUFFER_DMABUF_DETACH_IOCTL _IOW('i', 0x93, int)
-#define IIO_BUFFER_DMABUF_ENQUEUE_IOCTL _IOW('i', 0x94, struct iio_dmabuf)
 #endif
diff --git a/libc/kernel/uapi/linux/in.h b/libc/kernel/uapi/linux/in.h
index 97bf493..44efdd8 100644
--- a/libc/kernel/uapi/linux/in.h
+++ b/libc/kernel/uapi/linux/in.h
@@ -69,8 +69,6 @@
 #define IPPROTO_ETHERNET IPPROTO_ETHERNET
   IPPROTO_RAW = 255,
 #define IPPROTO_RAW IPPROTO_RAW
-  IPPROTO_SMC = 256,
-#define IPPROTO_SMC IPPROTO_SMC
   IPPROTO_MPTCP = 262,
 #define IPPROTO_MPTCP IPPROTO_MPTCP
   IPPROTO_MAX
diff --git a/libc/kernel/uapi/linux/io_uring.h b/libc/kernel/uapi/linux/io_uring.h
index 6b4f2ea..5505963 100644
--- a/libc/kernel/uapi/linux/io_uring.h
+++ b/libc/kernel/uapi/linux/io_uring.h
@@ -176,8 +176,6 @@
   IORING_OP_FUTEX_WAITV,
   IORING_OP_FIXED_FD_INSTALL,
   IORING_OP_FTRUNCATE,
-  IORING_OP_BIND,
-  IORING_OP_LISTEN,
   IORING_OP_LAST,
 };
 #define IORING_URING_CMD_FIXED (1U << 0)
diff --git a/libc/kernel/uapi/linux/iommufd.h b/libc/kernel/uapi/linux/iommufd.h
index 6f663b4..2570628 100644
--- a/libc/kernel/uapi/linux/iommufd.h
+++ b/libc/kernel/uapi/linux/iommufd.h
@@ -12,20 +12,19 @@
 enum {
   IOMMUFD_CMD_BASE = 0x80,
   IOMMUFD_CMD_DESTROY = IOMMUFD_CMD_BASE,
-  IOMMUFD_CMD_IOAS_ALLOC = 0x81,
-  IOMMUFD_CMD_IOAS_ALLOW_IOVAS = 0x82,
-  IOMMUFD_CMD_IOAS_COPY = 0x83,
-  IOMMUFD_CMD_IOAS_IOVA_RANGES = 0x84,
-  IOMMUFD_CMD_IOAS_MAP = 0x85,
-  IOMMUFD_CMD_IOAS_UNMAP = 0x86,
-  IOMMUFD_CMD_OPTION = 0x87,
-  IOMMUFD_CMD_VFIO_IOAS = 0x88,
-  IOMMUFD_CMD_HWPT_ALLOC = 0x89,
-  IOMMUFD_CMD_GET_HW_INFO = 0x8a,
-  IOMMUFD_CMD_HWPT_SET_DIRTY_TRACKING = 0x8b,
-  IOMMUFD_CMD_HWPT_GET_DIRTY_BITMAP = 0x8c,
-  IOMMUFD_CMD_HWPT_INVALIDATE = 0x8d,
-  IOMMUFD_CMD_FAULT_QUEUE_ALLOC = 0x8e,
+  IOMMUFD_CMD_IOAS_ALLOC,
+  IOMMUFD_CMD_IOAS_ALLOW_IOVAS,
+  IOMMUFD_CMD_IOAS_COPY,
+  IOMMUFD_CMD_IOAS_IOVA_RANGES,
+  IOMMUFD_CMD_IOAS_MAP,
+  IOMMUFD_CMD_IOAS_UNMAP,
+  IOMMUFD_CMD_OPTION,
+  IOMMUFD_CMD_VFIO_IOAS,
+  IOMMUFD_CMD_HWPT_ALLOC,
+  IOMMUFD_CMD_GET_HW_INFO,
+  IOMMUFD_CMD_HWPT_SET_DIRTY_TRACKING,
+  IOMMUFD_CMD_HWPT_GET_DIRTY_BITMAP,
+  IOMMUFD_CMD_HWPT_INVALIDATE,
 };
 struct iommu_destroy {
   __u32 size;
@@ -123,7 +122,6 @@
 enum iommufd_hwpt_alloc_flags {
   IOMMU_HWPT_ALLOC_NEST_PARENT = 1 << 0,
   IOMMU_HWPT_ALLOC_DIRTY_TRACKING = 1 << 1,
-  IOMMU_HWPT_FAULT_ID_VALID = 1 << 2,
 };
 enum iommu_hwpt_vtd_s1_flags {
   IOMMU_VTD_S1_SRE = 1 << 0,
@@ -137,8 +135,8 @@
   __u32 __reserved;
 };
 enum iommu_hwpt_data_type {
-  IOMMU_HWPT_DATA_NONE = 0,
-  IOMMU_HWPT_DATA_VTD_S1 = 1,
+  IOMMU_HWPT_DATA_NONE,
+  IOMMU_HWPT_DATA_VTD_S1,
 };
 struct iommu_hwpt_alloc {
   __u32 size;
@@ -150,8 +148,6 @@
   __u32 data_type;
   __u32 data_len;
   __aligned_u64 data_uptr;
-  __u32 fault_id;
-  __u32 __reserved2;
 };
 #define IOMMU_HWPT_ALLOC _IO(IOMMUFD_TYPE, IOMMUFD_CMD_HWPT_ALLOC)
 enum iommu_hw_info_vtd_flags {
@@ -164,8 +160,8 @@
   __aligned_u64 ecap_reg;
 };
 enum iommu_hw_info_type {
-  IOMMU_HW_INFO_TYPE_NONE = 0,
-  IOMMU_HW_INFO_TYPE_INTEL_VTD = 1,
+  IOMMU_HW_INFO_TYPE_NONE,
+  IOMMU_HW_INFO_TYPE_INTEL_VTD,
 };
 enum iommufd_hw_capabilities {
   IOMMU_HW_CAP_DIRTY_TRACKING = 1 << 0,
@@ -206,7 +202,7 @@
 };
 #define IOMMU_HWPT_GET_DIRTY_BITMAP _IO(IOMMUFD_TYPE, IOMMUFD_CMD_HWPT_GET_DIRTY_BITMAP)
 enum iommu_hwpt_invalidate_data_type {
-  IOMMU_HWPT_INVALIDATE_DATA_VTD_S1 = 0,
+  IOMMU_HWPT_INVALIDATE_DATA_VTD_S1,
 };
 enum iommu_hwpt_vtd_s1_invalidate_flags {
   IOMMU_VTD_INV_FLAGS_LEAF = 1 << 0,
@@ -227,39 +223,4 @@
   __u32 __reserved;
 };
 #define IOMMU_HWPT_INVALIDATE _IO(IOMMUFD_TYPE, IOMMUFD_CMD_HWPT_INVALIDATE)
-enum iommu_hwpt_pgfault_flags {
-  IOMMU_PGFAULT_FLAGS_PASID_VALID = (1 << 0),
-  IOMMU_PGFAULT_FLAGS_LAST_PAGE = (1 << 1),
-};
-enum iommu_hwpt_pgfault_perm {
-  IOMMU_PGFAULT_PERM_READ = (1 << 0),
-  IOMMU_PGFAULT_PERM_WRITE = (1 << 1),
-  IOMMU_PGFAULT_PERM_EXEC = (1 << 2),
-  IOMMU_PGFAULT_PERM_PRIV = (1 << 3),
-};
-struct iommu_hwpt_pgfault {
-  __u32 flags;
-  __u32 dev_id;
-  __u32 pasid;
-  __u32 grpid;
-  __u32 perm;
-  __u64 addr;
-  __u32 length;
-  __u32 cookie;
-};
-enum iommufd_page_response_code {
-  IOMMUFD_PAGE_RESP_SUCCESS = 0,
-  IOMMUFD_PAGE_RESP_INVALID = 1,
-};
-struct iommu_hwpt_page_response {
-  __u32 cookie;
-  __u32 code;
-};
-struct iommu_fault_alloc {
-  __u32 size;
-  __u32 flags;
-  __u32 out_fault_id;
-  __u32 out_fault_fd;
-};
-#define IOMMU_FAULT_QUEUE_ALLOC _IO(IOMMUFD_TYPE, IOMMUFD_CMD_FAULT_QUEUE_ALLOC)
 #endif
diff --git a/libc/kernel/uapi/linux/kfd_ioctl.h b/libc/kernel/uapi/linux/kfd_ioctl.h
index 193dd8e..62c9872 100644
--- a/libc/kernel/uapi/linux/kfd_ioctl.h
+++ b/libc/kernel/uapi/linux/kfd_ioctl.h
@@ -9,7 +9,7 @@
 #include <drm/drm.h>
 #include <linux/ioctl.h>
 #define KFD_IOCTL_MAJOR_VERSION 1
-#define KFD_IOCTL_MINOR_VERSION 16
+#define KFD_IOCTL_MINOR_VERSION 15
 struct kfd_ioctl_get_version_args {
   __u32 major_version;
   __u32 minor_version;
@@ -269,7 +269,6 @@
 #define KFD_IOC_ALLOC_MEM_FLAGS_COHERENT (1 << 26)
 #define KFD_IOC_ALLOC_MEM_FLAGS_UNCACHED (1 << 25)
 #define KFD_IOC_ALLOC_MEM_FLAGS_EXT_COHERENT (1 << 24)
-#define KFD_IOC_ALLOC_MEM_FLAGS_CONTIGUOUS (1 << 23)
 struct kfd_ioctl_alloc_memory_of_gpu_args {
   __u64 va_addr;
   __u64 size;
@@ -466,7 +465,6 @@
 };
 enum kfd_dbg_trap_flags {
   KFD_DBG_TRAP_FLAG_SINGLE_MEM_OP = 1,
-  KFD_DBG_TRAP_FLAG_SINGLE_ALU_OP = 2,
 };
 enum kfd_dbg_trap_exception_code {
   EC_NONE = 0,
diff --git a/libc/kernel/uapi/linux/kfd_sysfs.h b/libc/kernel/uapi/linux/kfd_sysfs.h
index 7771582..e538cf2 100644
--- a/libc/kernel/uapi/linux/kfd_sysfs.h
+++ b/libc/kernel/uapi/linux/kfd_sysfs.h
@@ -35,8 +35,7 @@
 #define HSA_CAP_SVMAPI_SUPPORTED 0x08000000
 #define HSA_CAP_FLAGS_COHERENTHOSTACCESS 0x10000000
 #define HSA_CAP_TRAP_DEBUG_FIRMWARE_SUPPORTED 0x20000000
-#define HSA_CAP_TRAP_DEBUG_PRECISE_ALU_OPERATIONS_SUPPORTED 0x40000000
-#define HSA_CAP_RESERVED 0x800f8000
+#define HSA_CAP_RESERVED 0xe00f8000
 #define HSA_DBG_WATCH_ADDR_MASK_LO_BIT_MASK 0x0000000f
 #define HSA_DBG_WATCH_ADDR_MASK_LO_BIT_SHIFT 0
 #define HSA_DBG_WATCH_ADDR_MASK_HI_BIT_MASK 0x000003f0
diff --git a/libc/kernel/uapi/linux/kvm.h b/libc/kernel/uapi/linux/kvm.h
index 297a09d..ffaf5e6 100644
--- a/libc/kernel/uapi/linux/kvm.h
+++ b/libc/kernel/uapi/linux/kvm.h
@@ -149,10 +149,9 @@
 #define KVM_INTERNAL_ERROR_DELIVERY_EV 3
 #define KVM_INTERNAL_ERROR_UNEXPECTED_EXIT_REASON 4
 #define KVM_INTERNAL_ERROR_EMULATION_FLAG_INSTRUCTION_BYTES (1ULL << 0)
-#define HINT_UNSAFE_IN_KVM(_symbol) _symbol
 struct kvm_run {
   __u8 request_interrupt_window;
-  __u8 HINT_UNSAFE_IN_KVM(immediate_exit);
+  __u8 immediate_exit;
   __u8 padding1[6];
   __u32 exit_reason;
   __u8 ready_for_interrupt_injection;
@@ -720,9 +719,6 @@
 #define KVM_CAP_MEMORY_ATTRIBUTES 233
 #define KVM_CAP_GUEST_MEMFD 234
 #define KVM_CAP_VM_TYPES 235
-#define KVM_CAP_PRE_FAULT_MEMORY 236
-#define KVM_CAP_X86_APIC_BUS_CYCLES_NS 237
-#define KVM_CAP_X86_GUEST_MODE 238
 struct kvm_irq_routing_irqchip {
   __u32 irqchip;
   __u32 pin;
@@ -1113,11 +1109,4 @@
   __u64 flags;
   __u64 reserved[6];
 };
-#define KVM_PRE_FAULT_MEMORY _IOWR(KVMIO, 0xd5, struct kvm_pre_fault_memory)
-struct kvm_pre_fault_memory {
-  __u64 gpa;
-  __u64 size;
-  __u64 flags;
-  __u64 padding[5];
-};
 #endif
diff --git a/libc/kernel/uapi/linux/media/raspberrypi/pisp_be_config.h b/libc/kernel/uapi/linux/media/raspberrypi/pisp_be_config.h
deleted file mode 100644
index 2e981ad..0000000
--- a/libc/kernel/uapi/linux/media/raspberrypi/pisp_be_config.h
+++ /dev/null
@@ -1,418 +0,0 @@
-/*
- * This file is auto-generated. Modifications will be lost.
- *
- * See https://android.googlesource.com/platform/bionic/+/master/libc/kernel/
- * for more information.
- */
-#ifndef _UAPI_PISP_BE_CONFIG_H_
-#define _UAPI_PISP_BE_CONFIG_H_
-#include <linux/types.h>
-#include "pisp_common.h"
-#define PISP_BACK_END_INPUT_ALIGN 4u
-#define PISP_BACK_END_COMPRESSED_ALIGN 8u
-#define PISP_BACK_END_OUTPUT_MIN_ALIGN 16u
-#define PISP_BACK_END_OUTPUT_MAX_ALIGN 64u
-#define PISP_BACK_END_MIN_TILE_WIDTH 16u
-#define PISP_BACK_END_MIN_TILE_HEIGHT 16u
-#define PISP_BACK_END_NUM_OUTPUTS 2
-#define PISP_BACK_END_HOG_OUTPUT 1
-#define PISP_BACK_END_NUM_TILES 64
-enum pisp_be_bayer_enable {
-  PISP_BE_BAYER_ENABLE_INPUT = 0x000001,
-  PISP_BE_BAYER_ENABLE_DECOMPRESS = 0x000002,
-  PISP_BE_BAYER_ENABLE_DPC = 0x000004,
-  PISP_BE_BAYER_ENABLE_GEQ = 0x000008,
-  PISP_BE_BAYER_ENABLE_TDN_INPUT = 0x000010,
-  PISP_BE_BAYER_ENABLE_TDN_DECOMPRESS = 0x000020,
-  PISP_BE_BAYER_ENABLE_TDN = 0x000040,
-  PISP_BE_BAYER_ENABLE_TDN_COMPRESS = 0x000080,
-  PISP_BE_BAYER_ENABLE_TDN_OUTPUT = 0x000100,
-  PISP_BE_BAYER_ENABLE_SDN = 0x000200,
-  PISP_BE_BAYER_ENABLE_BLC = 0x000400,
-  PISP_BE_BAYER_ENABLE_STITCH_INPUT = 0x000800,
-  PISP_BE_BAYER_ENABLE_STITCH_DECOMPRESS = 0x001000,
-  PISP_BE_BAYER_ENABLE_STITCH = 0x002000,
-  PISP_BE_BAYER_ENABLE_STITCH_COMPRESS = 0x004000,
-  PISP_BE_BAYER_ENABLE_STITCH_OUTPUT = 0x008000,
-  PISP_BE_BAYER_ENABLE_WBG = 0x010000,
-  PISP_BE_BAYER_ENABLE_CDN = 0x020000,
-  PISP_BE_BAYER_ENABLE_LSC = 0x040000,
-  PISP_BE_BAYER_ENABLE_TONEMAP = 0x080000,
-  PISP_BE_BAYER_ENABLE_CAC = 0x100000,
-  PISP_BE_BAYER_ENABLE_DEBIN = 0x200000,
-  PISP_BE_BAYER_ENABLE_DEMOSAIC = 0x400000,
-};
-enum pisp_be_rgb_enable {
-  PISP_BE_RGB_ENABLE_INPUT = 0x000001,
-  PISP_BE_RGB_ENABLE_CCM = 0x000002,
-  PISP_BE_RGB_ENABLE_SAT_CONTROL = 0x000004,
-  PISP_BE_RGB_ENABLE_YCBCR = 0x000008,
-  PISP_BE_RGB_ENABLE_FALSE_COLOUR = 0x000010,
-  PISP_BE_RGB_ENABLE_SHARPEN = 0x000020,
-  PISP_BE_RGB_ENABLE_YCBCR_INVERSE = 0x000080,
-  PISP_BE_RGB_ENABLE_GAMMA = 0x000100,
-  PISP_BE_RGB_ENABLE_CSC0 = 0x000200,
-  PISP_BE_RGB_ENABLE_CSC1 = 0x000400,
-  PISP_BE_RGB_ENABLE_DOWNSCALE0 = 0x001000,
-  PISP_BE_RGB_ENABLE_DOWNSCALE1 = 0x002000,
-  PISP_BE_RGB_ENABLE_RESAMPLE0 = 0x008000,
-  PISP_BE_RGB_ENABLE_RESAMPLE1 = 0x010000,
-  PISP_BE_RGB_ENABLE_OUTPUT0 = 0x040000,
-  PISP_BE_RGB_ENABLE_OUTPUT1 = 0x080000,
-  PISP_BE_RGB_ENABLE_HOG = 0x200000
-};
-#define PISP_BE_RGB_ENABLE_CSC(i) (PISP_BE_RGB_ENABLE_CSC0 << (i))
-#define PISP_BE_RGB_ENABLE_DOWNSCALE(i) (PISP_BE_RGB_ENABLE_DOWNSCALE0 << (i))
-#define PISP_BE_RGB_ENABLE_RESAMPLE(i) (PISP_BE_RGB_ENABLE_RESAMPLE0 << (i))
-#define PISP_BE_RGB_ENABLE_OUTPUT(i) (PISP_BE_RGB_ENABLE_OUTPUT0 << (i))
-enum pisp_be_dirty {
-  PISP_BE_DIRTY_GLOBAL = 0x0001,
-  PISP_BE_DIRTY_SH_FC_COMBINE = 0x0002,
-  PISP_BE_DIRTY_CROP = 0x0004
-};
-struct pisp_be_global_config {
-  __u32 bayer_enables;
-  __u32 rgb_enables;
-  __u8 bayer_order;
-  __u8 pad[3];
-} __attribute__((packed));
-struct pisp_be_input_buffer_config {
-  __u32 addr[3][2];
-} __attribute__((packed));
-struct pisp_be_dpc_config {
-  __u8 coeff_level;
-  __u8 coeff_range;
-  __u8 pad;
-#define PISP_BE_DPC_FLAG_FOLDBACK 1
-  __u8 flags;
-} __attribute__((packed));
-struct pisp_be_geq_config {
-  __u16 offset;
-#define PISP_BE_GEQ_SHARPER (1U << 15)
-#define PISP_BE_GEQ_SLOPE ((1 << 10) - 1)
-  __u16 slope_sharper;
-  __u16 min;
-  __u16 max;
-} __attribute__((packed));
-struct pisp_be_tdn_input_buffer_config {
-  __u32 addr[2];
-} __attribute__((packed));
-struct pisp_be_tdn_config {
-  __u16 black_level;
-  __u16 ratio;
-  __u16 noise_constant;
-  __u16 noise_slope;
-  __u16 threshold;
-  __u8 reset;
-  __u8 pad;
-} __attribute__((packed));
-struct pisp_be_tdn_output_buffer_config {
-  __u32 addr[2];
-} __attribute__((packed));
-struct pisp_be_sdn_config {
-  __u16 black_level;
-  __u8 leakage;
-  __u8 pad;
-  __u16 noise_constant;
-  __u16 noise_slope;
-  __u16 noise_constant2;
-  __u16 noise_slope2;
-} __attribute__((packed));
-struct pisp_be_stitch_input_buffer_config {
-  __u32 addr[2];
-} __attribute__((packed));
-#define PISP_BE_STITCH_STREAMING_LONG 0x8000
-#define PISP_BE_STITCH_EXPOSURE_RATIO_MASK 0x7fff
-struct pisp_be_stitch_config {
-  __u16 threshold_lo;
-  __u8 threshold_diff_power;
-  __u8 pad;
-  __u16 exposure_ratio;
-  __u8 motion_threshold_256;
-  __u8 motion_threshold_recip;
-} __attribute__((packed));
-struct pisp_be_stitch_output_buffer_config {
-  __u32 addr[2];
-} __attribute__((packed));
-struct pisp_be_cdn_config {
-  __u16 thresh;
-  __u8 iir_strength;
-  __u8 g_adjust;
-} __attribute__((packed));
-#define PISP_BE_LSC_LOG_GRID_SIZE 5
-#define PISP_BE_LSC_GRID_SIZE (1 << PISP_BE_LSC_LOG_GRID_SIZE)
-#define PISP_BE_LSC_STEP_PRECISION 18
-struct pisp_be_lsc_config {
-  __u16 grid_step_x;
-  __u16 grid_step_y;
-#define PISP_BE_LSC_LUT_SIZE (PISP_BE_LSC_GRID_SIZE + 1)
-  __u32 lut_packed[PISP_BE_LSC_LUT_SIZE][PISP_BE_LSC_LUT_SIZE];
-} __attribute__((packed));
-struct pisp_be_lsc_extra {
-  __u16 offset_x;
-  __u16 offset_y;
-} __attribute__((packed));
-#define PISP_BE_CAC_LOG_GRID_SIZE 3
-#define PISP_BE_CAC_GRID_SIZE (1 << PISP_BE_CAC_LOG_GRID_SIZE)
-#define PISP_BE_CAC_STEP_PRECISION 20
-struct pisp_be_cac_config {
-  __u16 grid_step_x;
-  __u16 grid_step_y;
-#define PISP_BE_CAC_LUT_SIZE (PISP_BE_CAC_GRID_SIZE + 1)
-  __s8 lut[PISP_BE_CAC_LUT_SIZE][PISP_BE_CAC_LUT_SIZE][2][2];
-} __attribute__((packed));
-struct pisp_be_cac_extra {
-  __u16 offset_x;
-  __u16 offset_y;
-} __attribute__((packed));
-#define PISP_BE_DEBIN_NUM_COEFFS 4
-struct pisp_be_debin_config {
-  __s8 coeffs[PISP_BE_DEBIN_NUM_COEFFS];
-  __s8 h_enable;
-  __s8 v_enable;
-  __s8 pad[2];
-} __attribute__((packed));
-#define PISP_BE_TONEMAP_LUT_SIZE 64
-struct pisp_be_tonemap_config {
-  __u16 detail_constant;
-  __u16 detail_slope;
-  __u16 iir_strength;
-  __u16 strength;
-  __u32 lut[PISP_BE_TONEMAP_LUT_SIZE];
-} __attribute__((packed));
-struct pisp_be_demosaic_config {
-  __u8 sharper;
-  __u8 fc_mode;
-  __u8 pad[2];
-} __attribute__((packed));
-struct pisp_be_ccm_config {
-  __s16 coeffs[9];
-  __u8 pad[2];
-  __s32 offsets[3];
-} __attribute__((packed));
-struct pisp_be_sat_control_config {
-  __u8 shift_r;
-  __u8 shift_g;
-  __u8 shift_b;
-  __u8 pad;
-} __attribute__((packed));
-struct pisp_be_false_colour_config {
-  __u8 distance;
-  __u8 pad[3];
-} __attribute__((packed));
-#define PISP_BE_SHARPEN_SIZE 5
-#define PISP_BE_SHARPEN_FUNC_NUM_POINTS 9
-struct pisp_be_sharpen_config {
-  __s8 kernel0[PISP_BE_SHARPEN_SIZE * PISP_BE_SHARPEN_SIZE];
-  __s8 pad0[3];
-  __s8 kernel1[PISP_BE_SHARPEN_SIZE * PISP_BE_SHARPEN_SIZE];
-  __s8 pad1[3];
-  __s8 kernel2[PISP_BE_SHARPEN_SIZE * PISP_BE_SHARPEN_SIZE];
-  __s8 pad2[3];
-  __s8 kernel3[PISP_BE_SHARPEN_SIZE * PISP_BE_SHARPEN_SIZE];
-  __s8 pad3[3];
-  __s8 kernel4[PISP_BE_SHARPEN_SIZE * PISP_BE_SHARPEN_SIZE];
-  __s8 pad4[3];
-  __u16 threshold_offset0;
-  __u16 threshold_slope0;
-  __u16 scale0;
-  __u16 pad5;
-  __u16 threshold_offset1;
-  __u16 threshold_slope1;
-  __u16 scale1;
-  __u16 pad6;
-  __u16 threshold_offset2;
-  __u16 threshold_slope2;
-  __u16 scale2;
-  __u16 pad7;
-  __u16 threshold_offset3;
-  __u16 threshold_slope3;
-  __u16 scale3;
-  __u16 pad8;
-  __u16 threshold_offset4;
-  __u16 threshold_slope4;
-  __u16 scale4;
-  __u16 pad9;
-  __u16 positive_strength;
-  __u16 positive_pre_limit;
-  __u16 positive_func[PISP_BE_SHARPEN_FUNC_NUM_POINTS];
-  __u16 positive_limit;
-  __u16 negative_strength;
-  __u16 negative_pre_limit;
-  __u16 negative_func[PISP_BE_SHARPEN_FUNC_NUM_POINTS];
-  __u16 negative_limit;
-  __u8 enables;
-  __u8 white;
-  __u8 black;
-  __u8 grey;
-} __attribute__((packed));
-struct pisp_be_sh_fc_combine_config {
-  __u8 y_factor;
-  __u8 c1_factor;
-  __u8 c2_factor;
-  __u8 pad;
-} __attribute__((packed));
-#define PISP_BE_GAMMA_LUT_SIZE 64
-struct pisp_be_gamma_config {
-  __u32 lut[PISP_BE_GAMMA_LUT_SIZE];
-} __attribute__((packed));
-struct pisp_be_crop_config {
-  __u16 offset_x, offset_y;
-  __u16 width, height;
-} __attribute__((packed));
-#define PISP_BE_RESAMPLE_FILTER_SIZE 96
-struct pisp_be_resample_config {
-  __u16 scale_factor_h, scale_factor_v;
-  __s16 coef[PISP_BE_RESAMPLE_FILTER_SIZE];
-} __attribute__((packed));
-struct pisp_be_resample_extra {
-  __u16 scaled_width;
-  __u16 scaled_height;
-  __s16 initial_phase_h[3];
-  __s16 initial_phase_v[3];
-} __attribute__((packed));
-struct pisp_be_downscale_config {
-  __u16 scale_factor_h;
-  __u16 scale_factor_v;
-  __u16 scale_recip_h;
-  __u16 scale_recip_v;
-} __attribute__((packed));
-struct pisp_be_downscale_extra {
-  __u16 scaled_width;
-  __u16 scaled_height;
-} __attribute__((packed));
-struct pisp_be_hog_config {
-  __u8 compute_signed;
-  __u8 channel_mix[3];
-  __u32 stride;
-} __attribute__((packed));
-struct pisp_be_axi_config {
-  __u8 r_qos;
-  __u8 r_cache_prot;
-  __u8 w_qos;
-  __u8 w_cache_prot;
-} __attribute__((packed));
-enum pisp_be_transform {
-  PISP_BE_TRANSFORM_NONE = 0x0,
-  PISP_BE_TRANSFORM_HFLIP = 0x1,
-  PISP_BE_TRANSFORM_VFLIP = 0x2,
-  PISP_BE_TRANSFORM_ROT180 = (PISP_BE_TRANSFORM_HFLIP | PISP_BE_TRANSFORM_VFLIP)
-};
-struct pisp_be_output_format_config {
-  struct pisp_image_format_config image;
-  __u8 transform;
-  __u8 pad[3];
-  __u16 lo;
-  __u16 hi;
-  __u16 lo2;
-  __u16 hi2;
-} __attribute__((packed));
-struct pisp_be_output_buffer_config {
-  __u32 addr[3][2];
-} __attribute__((packed));
-struct pisp_be_hog_buffer_config {
-  __u32 addr[2];
-} __attribute__((packed));
-struct pisp_be_config {
-  struct pisp_be_input_buffer_config input_buffer;
-  struct pisp_be_tdn_input_buffer_config tdn_input_buffer;
-  struct pisp_be_stitch_input_buffer_config stitch_input_buffer;
-  struct pisp_be_tdn_output_buffer_config tdn_output_buffer;
-  struct pisp_be_stitch_output_buffer_config stitch_output_buffer;
-  struct pisp_be_output_buffer_config output_buffer[PISP_BACK_END_NUM_OUTPUTS];
-  struct pisp_be_hog_buffer_config hog_buffer;
-  struct pisp_be_global_config global;
-  struct pisp_image_format_config input_format;
-  struct pisp_decompress_config decompress;
-  struct pisp_be_dpc_config dpc;
-  struct pisp_be_geq_config geq;
-  struct pisp_image_format_config tdn_input_format;
-  struct pisp_decompress_config tdn_decompress;
-  struct pisp_be_tdn_config tdn;
-  struct pisp_compress_config tdn_compress;
-  struct pisp_image_format_config tdn_output_format;
-  struct pisp_be_sdn_config sdn;
-  struct pisp_bla_config blc;
-  struct pisp_compress_config stitch_compress;
-  struct pisp_image_format_config stitch_output_format;
-  struct pisp_image_format_config stitch_input_format;
-  struct pisp_decompress_config stitch_decompress;
-  struct pisp_be_stitch_config stitch;
-  struct pisp_be_lsc_config lsc;
-  struct pisp_wbg_config wbg;
-  struct pisp_be_cdn_config cdn;
-  struct pisp_be_cac_config cac;
-  struct pisp_be_debin_config debin;
-  struct pisp_be_tonemap_config tonemap;
-  struct pisp_be_demosaic_config demosaic;
-  struct pisp_be_ccm_config ccm;
-  struct pisp_be_sat_control_config sat_control;
-  struct pisp_be_ccm_config ycbcr;
-  struct pisp_be_sharpen_config sharpen;
-  struct pisp_be_false_colour_config false_colour;
-  struct pisp_be_sh_fc_combine_config sh_fc_combine;
-  struct pisp_be_ccm_config ycbcr_inverse;
-  struct pisp_be_gamma_config gamma;
-  struct pisp_be_ccm_config csc[PISP_BACK_END_NUM_OUTPUTS];
-  struct pisp_be_downscale_config downscale[PISP_BACK_END_NUM_OUTPUTS];
-  struct pisp_be_resample_config resample[PISP_BACK_END_NUM_OUTPUTS];
-  struct pisp_be_output_format_config output_format[PISP_BACK_END_NUM_OUTPUTS];
-  struct pisp_be_hog_config hog;
-  struct pisp_be_axi_config axi;
-  struct pisp_be_lsc_extra lsc_extra;
-  struct pisp_be_cac_extra cac_extra;
-  struct pisp_be_downscale_extra downscale_extra[PISP_BACK_END_NUM_OUTPUTS];
-  struct pisp_be_resample_extra resample_extra[PISP_BACK_END_NUM_OUTPUTS];
-  struct pisp_be_crop_config crop;
-  struct pisp_image_format_config hog_format;
-  __u32 dirty_flags_bayer;
-  __u32 dirty_flags_rgb;
-  __u32 dirty_flags_extra;
-} __attribute__((packed));
-enum pisp_tile_edge {
-  PISP_LEFT_EDGE = (1 << 0),
-  PISP_RIGHT_EDGE = (1 << 1),
-  PISP_TOP_EDGE = (1 << 2),
-  PISP_BOTTOM_EDGE = (1 << 3)
-};
-struct pisp_tile {
-  __u8 edge;
-  __u8 pad0[3];
-  __u32 input_addr_offset;
-  __u32 input_addr_offset2;
-  __u16 input_offset_x;
-  __u16 input_offset_y;
-  __u16 input_width;
-  __u16 input_height;
-  __u32 tdn_input_addr_offset;
-  __u32 tdn_output_addr_offset;
-  __u32 stitch_input_addr_offset;
-  __u32 stitch_output_addr_offset;
-  __u32 lsc_grid_offset_x;
-  __u32 lsc_grid_offset_y;
-  __u32 cac_grid_offset_x;
-  __u32 cac_grid_offset_y;
-  __u16 crop_x_start[PISP_BACK_END_NUM_OUTPUTS];
-  __u16 crop_x_end[PISP_BACK_END_NUM_OUTPUTS];
-  __u16 crop_y_start[PISP_BACK_END_NUM_OUTPUTS];
-  __u16 crop_y_end[PISP_BACK_END_NUM_OUTPUTS];
-  __u16 downscale_phase_x[3 * PISP_BACK_END_NUM_OUTPUTS];
-  __u16 downscale_phase_y[3 * PISP_BACK_END_NUM_OUTPUTS];
-  __u16 resample_in_width[PISP_BACK_END_NUM_OUTPUTS];
-  __u16 resample_in_height[PISP_BACK_END_NUM_OUTPUTS];
-  __u16 resample_phase_x[3 * PISP_BACK_END_NUM_OUTPUTS];
-  __u16 resample_phase_y[3 * PISP_BACK_END_NUM_OUTPUTS];
-  __u16 output_offset_x[PISP_BACK_END_NUM_OUTPUTS];
-  __u16 output_offset_y[PISP_BACK_END_NUM_OUTPUTS];
-  __u16 output_width[PISP_BACK_END_NUM_OUTPUTS];
-  __u16 output_height[PISP_BACK_END_NUM_OUTPUTS];
-  __u32 output_addr_offset[PISP_BACK_END_NUM_OUTPUTS];
-  __u32 output_addr_offset2[PISP_BACK_END_NUM_OUTPUTS];
-  __u32 output_hog_addr_offset;
-} __attribute__((packed));
-struct pisp_be_tiles_config {
-  struct pisp_be_config config;
-  struct pisp_tile tiles[PISP_BACK_END_NUM_TILES];
-  __u32 num_tiles;
-} __attribute__((packed));
-#endif
diff --git a/libc/kernel/uapi/linux/media/raspberrypi/pisp_common.h b/libc/kernel/uapi/linux/media/raspberrypi/pisp_common.h
deleted file mode 100644
index 0e0b23f..0000000
--- a/libc/kernel/uapi/linux/media/raspberrypi/pisp_common.h
+++ /dev/null
@@ -1,119 +0,0 @@
-/*
- * This file is auto-generated. Modifications will be lost.
- *
- * See https://android.googlesource.com/platform/bionic/+/master/libc/kernel/
- * for more information.
- */
-#ifndef _UAPI_PISP_COMMON_H_
-#define _UAPI_PISP_COMMON_H_
-#include <linux/types.h>
-struct pisp_image_format_config {
-  __u16 width;
-  __u16 height;
-  __u32 format;
-  __s32 stride;
-  __s32 stride2;
-} __attribute__((packed));
-enum pisp_bayer_order {
-  PISP_BAYER_ORDER_RGGB = 0,
-  PISP_BAYER_ORDER_GBRG = 1,
-  PISP_BAYER_ORDER_BGGR = 2,
-  PISP_BAYER_ORDER_GRBG = 3,
-  PISP_BAYER_ORDER_GREYSCALE = 128
-};
-enum pisp_image_format {
-  PISP_IMAGE_FORMAT_BPS_8 = 0x00000000,
-  PISP_IMAGE_FORMAT_BPS_10 = 0x00000001,
-  PISP_IMAGE_FORMAT_BPS_12 = 0x00000002,
-  PISP_IMAGE_FORMAT_BPS_16 = 0x00000003,
-  PISP_IMAGE_FORMAT_BPS_MASK = 0x00000003,
-  PISP_IMAGE_FORMAT_PLANARITY_INTERLEAVED = 0x00000000,
-  PISP_IMAGE_FORMAT_PLANARITY_SEMI_PLANAR = 0x00000010,
-  PISP_IMAGE_FORMAT_PLANARITY_PLANAR = 0x00000020,
-  PISP_IMAGE_FORMAT_PLANARITY_MASK = 0x00000030,
-  PISP_IMAGE_FORMAT_SAMPLING_444 = 0x00000000,
-  PISP_IMAGE_FORMAT_SAMPLING_422 = 0x00000100,
-  PISP_IMAGE_FORMAT_SAMPLING_420 = 0x00000200,
-  PISP_IMAGE_FORMAT_SAMPLING_MASK = 0x00000300,
-  PISP_IMAGE_FORMAT_ORDER_NORMAL = 0x00000000,
-  PISP_IMAGE_FORMAT_ORDER_SWAPPED = 0x00001000,
-  PISP_IMAGE_FORMAT_SHIFT_0 = 0x00000000,
-  PISP_IMAGE_FORMAT_SHIFT_1 = 0x00010000,
-  PISP_IMAGE_FORMAT_SHIFT_2 = 0x00020000,
-  PISP_IMAGE_FORMAT_SHIFT_3 = 0x00030000,
-  PISP_IMAGE_FORMAT_SHIFT_4 = 0x00040000,
-  PISP_IMAGE_FORMAT_SHIFT_5 = 0x00050000,
-  PISP_IMAGE_FORMAT_SHIFT_6 = 0x00060000,
-  PISP_IMAGE_FORMAT_SHIFT_7 = 0x00070000,
-  PISP_IMAGE_FORMAT_SHIFT_8 = 0x00080000,
-  PISP_IMAGE_FORMAT_SHIFT_MASK = 0x000f0000,
-  PISP_IMAGE_FORMAT_BPP_32 = 0x00100000,
-  PISP_IMAGE_FORMAT_UNCOMPRESSED = 0x00000000,
-  PISP_IMAGE_FORMAT_COMPRESSION_MODE_1 = 0x01000000,
-  PISP_IMAGE_FORMAT_COMPRESSION_MODE_2 = 0x02000000,
-  PISP_IMAGE_FORMAT_COMPRESSION_MODE_3 = 0x03000000,
-  PISP_IMAGE_FORMAT_COMPRESSION_MASK = 0x03000000,
-  PISP_IMAGE_FORMAT_HOG_SIGNED = 0x04000000,
-  PISP_IMAGE_FORMAT_HOG_UNSIGNED = 0x08000000,
-  PISP_IMAGE_FORMAT_INTEGRAL_IMAGE = 0x10000000,
-  PISP_IMAGE_FORMAT_WALLPAPER_ROLL = 0x20000000,
-  PISP_IMAGE_FORMAT_THREE_CHANNEL = 0x40000000,
-  PISP_IMAGE_FORMAT_SINGLE_16 = PISP_IMAGE_FORMAT_BPS_16,
-  PISP_IMAGE_FORMAT_THREE_16 = PISP_IMAGE_FORMAT_BPS_16 | PISP_IMAGE_FORMAT_THREE_CHANNEL
-};
-#define PISP_IMAGE_FORMAT_BPS_8(fmt) (((fmt) & PISP_IMAGE_FORMAT_BPS_MASK) == PISP_IMAGE_FORMAT_BPS_8)
-#define PISP_IMAGE_FORMAT_BPS_10(fmt) (((fmt) & PISP_IMAGE_FORMAT_BPS_MASK) == PISP_IMAGE_FORMAT_BPS_10)
-#define PISP_IMAGE_FORMAT_BPS_12(fmt) (((fmt) & PISP_IMAGE_FORMAT_BPS_MASK) == PISP_IMAGE_FORMAT_BPS_12)
-#define PISP_IMAGE_FORMAT_BPS_16(fmt) (((fmt) & PISP_IMAGE_FORMAT_BPS_MASK) == PISP_IMAGE_FORMAT_BPS_16)
-#define PISP_IMAGE_FORMAT_BPS(fmt) (((fmt) & PISP_IMAGE_FORMAT_BPS_MASK) ? 8 + (2 << (((fmt) & PISP_IMAGE_FORMAT_BPS_MASK) - 1)) : 8)
-#define PISP_IMAGE_FORMAT_SHIFT(fmt) (((fmt) & PISP_IMAGE_FORMAT_SHIFT_MASK) / PISP_IMAGE_FORMAT_SHIFT_1)
-#define PISP_IMAGE_FORMAT_THREE_CHANNEL(fmt) ((fmt) & PISP_IMAGE_FORMAT_THREE_CHANNEL)
-#define PISP_IMAGE_FORMAT_SINGLE_CHANNEL(fmt) (! ((fmt) & PISP_IMAGE_FORMAT_THREE_CHANNEL))
-#define PISP_IMAGE_FORMAT_COMPRESSED(fmt) (((fmt) & PISP_IMAGE_FORMAT_COMPRESSION_MASK) != PISP_IMAGE_FORMAT_UNCOMPRESSED)
-#define PISP_IMAGE_FORMAT_SAMPLING_444(fmt) (((fmt) & PISP_IMAGE_FORMAT_SAMPLING_MASK) == PISP_IMAGE_FORMAT_SAMPLING_444)
-#define PISP_IMAGE_FORMAT_SAMPLING_422(fmt) (((fmt) & PISP_IMAGE_FORMAT_SAMPLING_MASK) == PISP_IMAGE_FORMAT_SAMPLING_422)
-#define PISP_IMAGE_FORMAT_SAMPLING_420(fmt) (((fmt) & PISP_IMAGE_FORMAT_SAMPLING_MASK) == PISP_IMAGE_FORMAT_SAMPLING_420)
-#define PISP_IMAGE_FORMAT_ORDER_NORMAL(fmt) (! ((fmt) & PISP_IMAGE_FORMAT_ORDER_SWAPPED))
-#define PISP_IMAGE_FORMAT_ORDER_SWAPPED(fmt) ((fmt) & PISP_IMAGE_FORMAT_ORDER_SWAPPED)
-#define PISP_IMAGE_FORMAT_INTERLEAVED(fmt) (((fmt) & PISP_IMAGE_FORMAT_PLANARITY_MASK) == PISP_IMAGE_FORMAT_PLANARITY_INTERLEAVED)
-#define PISP_IMAGE_FORMAT_SEMIPLANAR(fmt) (((fmt) & PISP_IMAGE_FORMAT_PLANARITY_MASK) == PISP_IMAGE_FORMAT_PLANARITY_SEMI_PLANAR)
-#define PISP_IMAGE_FORMAT_PLANAR(fmt) (((fmt) & PISP_IMAGE_FORMAT_PLANARITY_MASK) == PISP_IMAGE_FORMAT_PLANARITY_PLANAR)
-#define PISP_IMAGE_FORMAT_WALLPAPER(fmt) ((fmt) & PISP_IMAGE_FORMAT_WALLPAPER_ROLL)
-#define PISP_IMAGE_FORMAT_BPP_32(fmt) ((fmt) & PISP_IMAGE_FORMAT_BPP_32)
-#define PISP_IMAGE_FORMAT_HOG(fmt) ((fmt) & (PISP_IMAGE_FORMAT_HOG_SIGNED | PISP_IMAGE_FORMAT_HOG_UNSIGNED))
-#define PISP_WALLPAPER_WIDTH 128
-struct pisp_bla_config {
-  __u16 black_level_r;
-  __u16 black_level_gr;
-  __u16 black_level_gb;
-  __u16 black_level_b;
-  __u16 output_black_level;
-  __u8 pad[2];
-} __attribute__((packed));
-struct pisp_wbg_config {
-  __u16 gain_r;
-  __u16 gain_g;
-  __u16 gain_b;
-  __u8 pad[2];
-} __attribute__((packed));
-struct pisp_compress_config {
-  __u16 offset;
-  __u8 pad;
-  __u8 mode;
-} __attribute__((packed));
-struct pisp_decompress_config {
-  __u16 offset;
-  __u8 pad;
-  __u8 mode;
-} __attribute__((packed));
-enum pisp_axi_flags {
-  PISP_AXI_FLAG_ALIGN = 128,
-  PISP_AXI_FLAG_PAD = 64,
-  PISP_AXI_FLAG_PANIC = 32,
-};
-struct pisp_axi_config {
-  __u8 maxlen_flags;
-  __u8 cache_prot;
-  __u16 qos;
-} __attribute__((packed));
-#endif
diff --git a/libc/kernel/uapi/linux/mman.h b/libc/kernel/uapi/linux/mman.h
index f50b51c..cf1e978 100644
--- a/libc/kernel/uapi/linux/mman.h
+++ b/libc/kernel/uapi/linux/mman.h
@@ -18,7 +18,6 @@
 #define MAP_SHARED 0x01
 #define MAP_PRIVATE 0x02
 #define MAP_SHARED_VALIDATE 0x03
-#define MAP_DROPPABLE 0x08
 #define MAP_HUGE_SHIFT HUGETLB_FLAG_ENCODE_SHIFT
 #define MAP_HUGE_MASK HUGETLB_FLAG_ENCODE_MASK
 #define MAP_HUGE_16KB HUGETLB_FLAG_ENCODE_16KB
diff --git a/libc/kernel/uapi/linux/mount.h b/libc/kernel/uapi/linux/mount.h
index c4278b5..1166a7a 100644
--- a/libc/kernel/uapi/linux/mount.h
+++ b/libc/kernel/uapi/linux/mount.h
@@ -90,7 +90,7 @@
 #define MOUNT_ATTR_SIZE_VER0 32
 struct statmount {
   __u32 size;
-  __u32 mnt_opts;
+  __u32 __spare1;
   __u64 mask;
   __u32 sb_dev_major;
   __u32 sb_dev_minor;
@@ -108,8 +108,7 @@
   __u64 propagate_from;
   __u32 mnt_root;
   __u32 mnt_point;
-  __u64 mnt_ns_id;
-  __u64 __spare2[49];
+  __u64 __spare2[50];
   char str[];
 };
 struct mnt_id_req {
@@ -117,18 +116,13 @@
   __u32 spare;
   __u64 mnt_id;
   __u64 param;
-  __u64 mnt_ns_id;
 };
 #define MNT_ID_REQ_SIZE_VER0 24
-#define MNT_ID_REQ_SIZE_VER1 32
 #define STATMOUNT_SB_BASIC 0x00000001U
 #define STATMOUNT_MNT_BASIC 0x00000002U
 #define STATMOUNT_PROPAGATE_FROM 0x00000004U
 #define STATMOUNT_MNT_ROOT 0x00000008U
 #define STATMOUNT_MNT_POINT 0x00000010U
 #define STATMOUNT_FS_TYPE 0x00000020U
-#define STATMOUNT_MNT_NS_ID 0x00000040U
-#define STATMOUNT_MNT_OPTS 0x00000080U
 #define LSMT_ROOT 0xffffffffffffffff
-#define LISTMOUNT_REVERSE (1 << 0)
 #endif
diff --git a/libc/kernel/uapi/linux/netfilter/nf_tables.h b/libc/kernel/uapi/linux/netfilter/nf_tables.h
index bfc6e25..7922147 100644
--- a/libc/kernel/uapi/linux/netfilter/nf_tables.h
+++ b/libc/kernel/uapi/linux/netfilter/nf_tables.h
@@ -695,7 +695,7 @@
   __NFTA_SECMARK_MAX,
 };
 #define NFTA_SECMARK_MAX (__NFTA_SECMARK_MAX - 1)
-#define NFT_SECMARK_CTX_MAXLEN 4096
+#define NFT_SECMARK_CTX_MAXLEN 256
 enum nft_reject_types {
   NFT_REJECT_ICMP_UNREACH,
   NFT_REJECT_TCP_RST,
diff --git a/libc/kernel/uapi/linux/nfs4.h b/libc/kernel/uapi/linux/nfs4.h
index 6512901..21f1103 100644
--- a/libc/kernel/uapi/linux/nfs4.h
+++ b/libc/kernel/uapi/linux/nfs4.h
@@ -34,7 +34,6 @@
 #define NFS4_OPEN_RESULT_CONFIRM 0x0002
 #define NFS4_OPEN_RESULT_LOCKTYPE_POSIX 0x0004
 #define NFS4_OPEN_RESULT_PRESERVE_UNLINKED 0x0008
-#define NFS4_OPEN_RESULT_NO_OPEN_STATEID 0x0010
 #define NFS4_OPEN_RESULT_MAY_NOTIFY_LOCK 0x0020
 #define NFS4_SHARE_ACCESS_MASK 0x000F
 #define NFS4_SHARE_ACCESS_READ 0x0001
@@ -53,8 +52,6 @@
 #define NFS4_SHARE_WHEN_MASK 0xF0000
 #define NFS4_SHARE_SIGNAL_DELEG_WHEN_RESRC_AVAIL 0x10000
 #define NFS4_SHARE_PUSH_DELEG_WHEN_UNCONTENDED 0x20000
-#define NFS4_SHARE_WANT_DELEG_TIMESTAMPS 0x100000
-#define NFS4_SHARE_WANT_OPEN_XOR_DELEGATION 0x200000
 #define NFS4_CDFC4_FORE 0x1
 #define NFS4_CDFC4_BACK 0x2
 #define NFS4_CDFC4_BOTH 0x3
diff --git a/libc/kernel/uapi/linux/nfsd_netlink.h b/libc/kernel/uapi/linux/nfsd_netlink.h
index bd3f02c..45cb504 100644
--- a/libc/kernel/uapi/linux/nfsd_netlink.h
+++ b/libc/kernel/uapi/linux/nfsd_netlink.h
@@ -58,12 +58,6 @@
   NFSD_A_SERVER_SOCK_MAX = (__NFSD_A_SERVER_SOCK_MAX - 1)
 };
 enum {
-  NFSD_A_POOL_MODE_MODE = 1,
-  NFSD_A_POOL_MODE_NPOOLS,
-  __NFSD_A_POOL_MODE_MAX,
-  NFSD_A_POOL_MODE_MAX = (__NFSD_A_POOL_MODE_MAX - 1)
-};
-enum {
   NFSD_CMD_RPC_STATUS_GET = 1,
   NFSD_CMD_THREADS_SET,
   NFSD_CMD_THREADS_GET,
@@ -71,8 +65,6 @@
   NFSD_CMD_VERSION_GET,
   NFSD_CMD_LISTENER_SET,
   NFSD_CMD_LISTENER_GET,
-  NFSD_CMD_POOL_MODE_SET,
-  NFSD_CMD_POOL_MODE_GET,
   __NFSD_CMD_MAX,
   NFSD_CMD_MAX = (__NFSD_CMD_MAX - 1)
 };
diff --git a/libc/kernel/uapi/linux/nl80211.h b/libc/kernel/uapi/linux/nl80211.h
index 1bad2f2..98180c2 100644
--- a/libc/kernel/uapi/linux/nl80211.h
+++ b/libc/kernel/uapi/linux/nl80211.h
@@ -528,8 +528,6 @@
   NL80211_ATTR_MLO_TTLM_DLINK,
   NL80211_ATTR_MLO_TTLM_ULINK,
   NL80211_ATTR_ASSOC_SPP_AMSDU,
-  NL80211_ATTR_WIPHY_RADIOS,
-  NL80211_ATTR_WIPHY_INTERFACE_COMBINATIONS,
   __NL80211_ATTR_AFTER_LAST,
   NUM_NL80211_ATTR = __NL80211_ATTR_AFTER_LAST,
   NL80211_ATTR_MAX = __NL80211_ATTR_AFTER_LAST - 1
@@ -880,7 +878,6 @@
   NL80211_FREQUENCY_ATTR_NO_6GHZ_VLP_CLIENT,
   NL80211_FREQUENCY_ATTR_NO_6GHZ_AFC_CLIENT,
   NL80211_FREQUENCY_ATTR_CAN_MONITOR,
-  NL80211_FREQUENCY_ATTR_ALLOW_6GHZ_VLP_AP,
   __NL80211_FREQUENCY_ATTR_AFTER_LAST,
   NL80211_FREQUENCY_ATTR_MAX = __NL80211_FREQUENCY_ATTR_AFTER_LAST - 1
 };
@@ -958,7 +955,6 @@
   NL80211_RRF_DFS_CONCURRENT = 1 << 21,
   NL80211_RRF_NO_6GHZ_VLP_CLIENT = 1 << 22,
   NL80211_RRF_NO_6GHZ_AFC_CLIENT = 1 << 23,
-  NL80211_RRF_ALLOW_6GHZ_VLP_AP = 1 << 24,
 };
 #define NL80211_RRF_PASSIVE_SCAN NL80211_RRF_NO_IR
 #define NL80211_RRF_NO_IBSS NL80211_RRF_NO_IR
@@ -1977,19 +1973,4 @@
   NL80211_AP_SETTINGS_EXTERNAL_AUTH_SUPPORT = 1 << 0,
   NL80211_AP_SETTINGS_SA_QUERY_OFFLOAD_SUPPORT = 1 << 1,
 };
-enum nl80211_wiphy_radio_attrs {
-  __NL80211_WIPHY_RADIO_ATTR_INVALID,
-  NL80211_WIPHY_RADIO_ATTR_INDEX,
-  NL80211_WIPHY_RADIO_ATTR_FREQ_RANGE,
-  NL80211_WIPHY_RADIO_ATTR_INTERFACE_COMBINATION,
-  __NL80211_WIPHY_RADIO_ATTR_LAST,
-  NL80211_WIPHY_RADIO_ATTR_MAX = __NL80211_WIPHY_RADIO_ATTR_LAST - 1,
-};
-enum nl80211_wiphy_radio_freq_range {
-  __NL80211_WIPHY_RADIO_FREQ_ATTR_INVALID,
-  NL80211_WIPHY_RADIO_FREQ_ATTR_START,
-  NL80211_WIPHY_RADIO_FREQ_ATTR_END,
-  __NL80211_WIPHY_RADIO_FREQ_ATTR_LAST,
-  NL80211_WIPHY_RADIO_FREQ_ATTR_MAX = __NL80211_WIPHY_RADIO_FREQ_ATTR_LAST - 1,
-};
 #endif
diff --git a/libc/kernel/uapi/linux/nsfs.h b/libc/kernel/uapi/linux/nsfs.h
index c8f2208..61a5797 100644
--- a/libc/kernel/uapi/linux/nsfs.h
+++ b/libc/kernel/uapi/linux/nsfs.h
@@ -7,15 +7,9 @@
 #ifndef __LINUX_NSFS_H
 #define __LINUX_NSFS_H
 #include <linux/ioctl.h>
-#include <linux/types.h>
 #define NSIO 0xb7
 #define NS_GET_USERNS _IO(NSIO, 0x1)
 #define NS_GET_PARENT _IO(NSIO, 0x2)
 #define NS_GET_NSTYPE _IO(NSIO, 0x3)
 #define NS_GET_OWNER_UID _IO(NSIO, 0x4)
-#define NS_GET_MNTNS_ID _IOR(NSIO, 0x5, __u64)
-#define NS_GET_PID_FROM_PIDNS _IOR(NSIO, 0x6, int)
-#define NS_GET_TGID_FROM_PIDNS _IOR(NSIO, 0x7, int)
-#define NS_GET_PID_IN_PIDNS _IOR(NSIO, 0x8, int)
-#define NS_GET_TGID_IN_PIDNS _IOR(NSIO, 0x9, int)
 #endif
diff --git a/libc/kernel/uapi/linux/openvswitch.h b/libc/kernel/uapi/linux/openvswitch.h
index 98c8037..d45f4fa 100644
--- a/libc/kernel/uapi/linux/openvswitch.h
+++ b/libc/kernel/uapi/linux/openvswitch.h
@@ -429,13 +429,6 @@
   __OVS_CHECK_PKT_LEN_ATTR_MAX,
 };
 #define OVS_CHECK_PKT_LEN_ATTR_MAX (__OVS_CHECK_PKT_LEN_ATTR_MAX - 1)
-#define OVS_PSAMPLE_COOKIE_MAX_SIZE 16
-enum ovs_psample_attr {
-  OVS_PSAMPLE_ATTR_GROUP = 1,
-  OVS_PSAMPLE_ATTR_COOKIE,
-  __OVS_PSAMPLE_ATTR_MAX
-};
-#define OVS_PSAMPLE_ATTR_MAX (__OVS_PSAMPLE_ATTR_MAX - 1)
 enum ovs_action_attr {
   OVS_ACTION_ATTR_UNSPEC,
   OVS_ACTION_ATTR_OUTPUT,
@@ -462,7 +455,6 @@
   OVS_ACTION_ATTR_ADD_MPLS,
   OVS_ACTION_ATTR_DEC_TTL,
   OVS_ACTION_ATTR_DROP,
-  OVS_ACTION_ATTR_PSAMPLE,
   __OVS_ACTION_ATTR_MAX,
 };
 #define OVS_ACTION_ATTR_MAX (__OVS_ACTION_ATTR_MAX - 1)
diff --git a/libc/kernel/uapi/linux/perf_event.h b/libc/kernel/uapi/linux/perf_event.h
index ec9b856..16a1a2e 100644
--- a/libc/kernel/uapi/linux/perf_event.h
+++ b/libc/kernel/uapi/linux/perf_event.h
@@ -460,8 +460,6 @@
 #define PERF_MEM_LVLNUM_L2 0x02
 #define PERF_MEM_LVLNUM_L3 0x03
 #define PERF_MEM_LVLNUM_L4 0x04
-#define PERF_MEM_LVLNUM_L2_MHB 0x05
-#define PERF_MEM_LVLNUM_MSC 0x06
 #define PERF_MEM_LVLNUM_UNC 0x08
 #define PERF_MEM_LVLNUM_CXL 0x09
 #define PERF_MEM_LVLNUM_IO 0x0a
diff --git a/libc/kernel/uapi/linux/pidfd.h b/libc/kernel/uapi/linux/pidfd.h
index 9068727..082b4a0 100644
--- a/libc/kernel/uapi/linux/pidfd.h
+++ b/libc/kernel/uapi/linux/pidfd.h
@@ -8,21 +8,9 @@
 #define _UAPI_LINUX_PIDFD_H
 #include <linux/types.h>
 #include <linux/fcntl.h>
-#include <linux/ioctl.h>
 #define PIDFD_NONBLOCK O_NONBLOCK
 #define PIDFD_THREAD O_EXCL
 #define PIDFD_SIGNAL_THREAD (1UL << 0)
 #define PIDFD_SIGNAL_THREAD_GROUP (1UL << 1)
 #define PIDFD_SIGNAL_PROCESS_GROUP (1UL << 2)
-#define PIDFS_IOCTL_MAGIC 0xFF
-#define PIDFD_GET_CGROUP_NAMESPACE _IO(PIDFS_IOCTL_MAGIC, 1)
-#define PIDFD_GET_IPC_NAMESPACE _IO(PIDFS_IOCTL_MAGIC, 2)
-#define PIDFD_GET_MNT_NAMESPACE _IO(PIDFS_IOCTL_MAGIC, 3)
-#define PIDFD_GET_NET_NAMESPACE _IO(PIDFS_IOCTL_MAGIC, 4)
-#define PIDFD_GET_PID_NAMESPACE _IO(PIDFS_IOCTL_MAGIC, 5)
-#define PIDFD_GET_PID_FOR_CHILDREN_NAMESPACE _IO(PIDFS_IOCTL_MAGIC, 6)
-#define PIDFD_GET_TIME_NAMESPACE _IO(PIDFS_IOCTL_MAGIC, 7)
-#define PIDFD_GET_TIME_FOR_CHILDREN_NAMESPACE _IO(PIDFS_IOCTL_MAGIC, 8)
-#define PIDFD_GET_USER_NAMESPACE _IO(PIDFS_IOCTL_MAGIC, 9)
-#define PIDFD_GET_UTS_NAMESPACE _IO(PIDFS_IOCTL_MAGIC, 10)
 #endif
diff --git a/libc/kernel/uapi/linux/pkt_cls.h b/libc/kernel/uapi/linux/pkt_cls.h
index bdca553..6b5143c 100644
--- a/libc/kernel/uapi/linux/pkt_cls.h
+++ b/libc/kernel/uapi/linux/pkt_cls.h
@@ -419,8 +419,6 @@
   TCA_FLOWER_KEY_CFM,
   TCA_FLOWER_KEY_SPI,
   TCA_FLOWER_KEY_SPI_MASK,
-  TCA_FLOWER_KEY_ENC_FLAGS,
-  TCA_FLOWER_KEY_ENC_FLAGS_MASK,
   __TCA_FLOWER_MAX,
 };
 #define TCA_FLOWER_MAX (__TCA_FLOWER_MAX - 1)
@@ -499,13 +497,7 @@
 enum {
   TCA_FLOWER_KEY_FLAGS_IS_FRAGMENT = (1 << 0),
   TCA_FLOWER_KEY_FLAGS_FRAG_IS_FIRST = (1 << 1),
-  TCA_FLOWER_KEY_FLAGS_TUNNEL_CSUM = (1 << 2),
-  TCA_FLOWER_KEY_FLAGS_TUNNEL_DONT_FRAGMENT = (1 << 3),
-  TCA_FLOWER_KEY_FLAGS_TUNNEL_OAM = (1 << 4),
-  TCA_FLOWER_KEY_FLAGS_TUNNEL_CRIT_OPT = (1 << 5),
-  __TCA_FLOWER_KEY_FLAGS_MAX,
 };
-#define TCA_FLOWER_KEY_FLAGS_MAX (__TCA_FLOWER_KEY_FLAGS_MAX - 1)
 enum {
   TCA_FLOWER_KEY_CFM_OPT_UNSPEC,
   TCA_FLOWER_KEY_CFM_MD_LEVEL,
diff --git a/libc/kernel/uapi/linux/psample.h b/libc/kernel/uapi/linux/psample.h
index f9f979c..c82e76e 100644
--- a/libc/kernel/uapi/linux/psample.h
+++ b/libc/kernel/uapi/linux/psample.h
@@ -22,8 +22,6 @@
   PSAMPLE_ATTR_LATENCY,
   PSAMPLE_ATTR_TIMESTAMP,
   PSAMPLE_ATTR_PROTO,
-  PSAMPLE_ATTR_USER_COOKIE,
-  PSAMPLE_ATTR_SAMPLE_PROBABILITY,
   __PSAMPLE_ATTR_MAX
 };
 enum psample_command {
diff --git a/libc/kernel/uapi/linux/psp-sev.h b/libc/kernel/uapi/linux/psp-sev.h
index 7274081..82fcbf1 100644
--- a/libc/kernel/uapi/linux/psp-sev.h
+++ b/libc/kernel/uapi/linux/psp-sev.h
@@ -20,7 +20,6 @@
   SNP_PLATFORM_STATUS,
   SNP_COMMIT,
   SNP_SET_CONFIG,
-  SNP_VLEK_LOAD,
   SEV_MAX,
 };
 typedef enum {
@@ -29,7 +28,6 @@
   SEV_RET_INVALID_PLATFORM_STATE,
   SEV_RET_INVALID_GUEST_STATE,
   SEV_RET_INAVLID_CONFIG,
-  SEV_RET_INVALID_CONFIG = SEV_RET_INAVLID_CONFIG,
   SEV_RET_INVALID_LEN,
   SEV_RET_ALREADY_OWNED,
   SEV_RET_INVALID_CERTIFICATE,
@@ -115,15 +113,6 @@
   __u32 rsvd : 30;
   __u8 rsvd1[52];
 } __attribute__((__packed__));
-struct sev_user_data_snp_vlek_load {
-  __u32 len;
-  __u8 vlek_wrapped_version;
-  __u8 rsvd[3];
-  __u64 vlek_wrapped_address;
-} __attribute__((__packed__));
-struct sev_user_data_snp_wrapped_vlek_hashstick {
-  __u8 data[432];
-} __attribute__((__packed__));
 struct sev_issue_cmd {
   __u32 cmd;
   __u64 data;
diff --git a/libc/kernel/uapi/linux/random.h b/libc/kernel/uapi/linux/random.h
index 64f62d9..d1fd998 100644
--- a/libc/kernel/uapi/linux/random.h
+++ b/libc/kernel/uapi/linux/random.h
@@ -24,10 +24,4 @@
 #define GRND_NONBLOCK 0x0001
 #define GRND_RANDOM 0x0002
 #define GRND_INSECURE 0x0004
-struct vgetrandom_opaque_params {
-  __u32 size_of_opaque_state;
-  __u32 mmap_prot;
-  __u32 mmap_flags;
-  __u32 reserved[13];
-};
 #endif
diff --git a/libc/kernel/uapi/linux/sev-guest.h b/libc/kernel/uapi/linux/sev-guest.h
index a722641..a822bed 100644
--- a/libc/kernel/uapi/linux/sev-guest.h
+++ b/libc/kernel/uapi/linux/sev-guest.h
@@ -51,8 +51,6 @@
 #define SNP_GUEST_FW_ERR_MASK GENMASK_ULL(31, 0)
 #define SNP_GUEST_VMM_ERR_SHIFT 32
 #define SNP_GUEST_VMM_ERR(x) (((u64) x) << SNP_GUEST_VMM_ERR_SHIFT)
-#define SNP_GUEST_FW_ERR(x) ((x) & SNP_GUEST_FW_ERR_MASK)
-#define SNP_GUEST_ERR(vmm_err,fw_err) (SNP_GUEST_VMM_ERR(vmm_err) | SNP_GUEST_FW_ERR(fw_err))
 #define SNP_GUEST_VMM_ERR_INVALID_LEN 1
 #define SNP_GUEST_VMM_ERR_BUSY 2
 #endif
diff --git a/libc/kernel/uapi/linux/stat.h b/libc/kernel/uapi/linux/stat.h
index aae9ed4..ff98fd2 100644
--- a/libc/kernel/uapi/linux/stat.h
+++ b/libc/kernel/uapi/linux/stat.h
@@ -69,11 +69,7 @@
   __u32 stx_dio_mem_align;
   __u32 stx_dio_offset_align;
   __u64 stx_subvol;
-  __u32 stx_atomic_write_unit_min;
-  __u32 stx_atomic_write_unit_max;
-  __u32 stx_atomic_write_segments_max;
-  __u32 __spare1[1];
-  __u64 __spare3[9];
+  __u64 __spare3[11];
 };
 #define STATX_TYPE 0x00000001U
 #define STATX_MODE 0x00000002U
@@ -92,7 +88,6 @@
 #define STATX_DIOALIGN 0x00002000U
 #define STATX_MNT_ID_UNIQUE 0x00004000U
 #define STATX_SUBVOL 0x00008000U
-#define STATX_WRITE_ATOMIC 0x00010000U
 #define STATX__RESERVED 0x80000000U
 #define STATX_ALL 0x00000fffU
 #define STATX_ATTR_COMPRESSED 0x00000004
@@ -104,5 +99,4 @@
 #define STATX_ATTR_MOUNT_ROOT 0x00002000
 #define STATX_ATTR_VERITY 0x00100000
 #define STATX_ATTR_DAX 0x00200000
-#define STATX_ATTR_WRITE_ATOMIC 0x00400000
 #endif
diff --git a/libc/kernel/uapi/linux/tcp_metrics.h b/libc/kernel/uapi/linux/tcp_metrics.h
index 46ca141..931f50c 100644
--- a/libc/kernel/uapi/linux/tcp_metrics.h
+++ b/libc/kernel/uapi/linux/tcp_metrics.h
@@ -4,8 +4,8 @@
  * See https://android.googlesource.com/platform/bionic/+/master/libc/kernel/
  * for more information.
  */
-#ifndef _UAPI_LINUX_TCP_METRICS_H
-#define _UAPI_LINUX_TCP_METRICS_H
+#ifndef _LINUX_TCP_METRICS_H
+#define _LINUX_TCP_METRICS_H
 #include <linux/types.h>
 #define TCP_METRICS_GENL_NAME "tcp_metrics"
 #define TCP_METRICS_GENL_VERSION 0x1
@@ -21,17 +21,6 @@
 };
 #define TCP_METRIC_MAX (__TCP_METRIC_MAX - 1)
 enum {
-  TCP_METRICS_A_METRICS_RTT = 1,
-  TCP_METRICS_A_METRICS_RTTVAR,
-  TCP_METRICS_A_METRICS_SSTHRESH,
-  TCP_METRICS_A_METRICS_CWND,
-  TCP_METRICS_A_METRICS_REODERING,
-  TCP_METRICS_A_METRICS_RTT_US,
-  TCP_METRICS_A_METRICS_RTTVAR_US,
-  __TCP_METRICS_A_METRICS_MAX
-};
-#define TCP_METRICS_A_METRICS_MAX (__TCP_METRICS_A_METRICS_MAX - 1)
-enum {
   TCP_METRICS_ATTR_UNSPEC,
   TCP_METRICS_ATTR_ADDR_IPV4,
   TCP_METRICS_ATTR_ADDR_IPV6,
diff --git a/libc/kernel/uapi/linux/um_timetravel.h b/libc/kernel/uapi/linux/um_timetravel.h
index 49eeb28..8706017 100644
--- a/libc/kernel/uapi/linux/um_timetravel.h
+++ b/libc/kernel/uapi/linux/um_timetravel.h
@@ -12,15 +12,6 @@
   __u32 seq;
   __u64 time;
 };
-#define UM_TIMETRAVEL_MAX_FDS 2
-enum um_timetravel_shared_mem_fds {
-  UM_TIMETRAVEL_SHARED_MEMFD,
-  UM_TIMETRAVEL_SHARED_LOGFD,
-  UM_TIMETRAVEL_SHARED_MAX_FDS,
-};
-enum um_timetravel_start_ack {
-  UM_TIMETRAVEL_START_ACK_ID = 0xffff,
-};
 enum um_timetravel_ops {
   UM_TIMETRAVEL_ACK = 0,
   UM_TIMETRAVEL_START = 1,
@@ -31,36 +22,5 @@
   UM_TIMETRAVEL_RUN = 6,
   UM_TIMETRAVEL_FREE_UNTIL = 7,
   UM_TIMETRAVEL_GET_TOD = 8,
-  UM_TIMETRAVEL_BROADCAST = 9,
-};
-#define UM_TIMETRAVEL_SCHEDSHM_VERSION 2
-enum um_timetravel_schedshm_cap {
-  UM_TIMETRAVEL_SCHEDSHM_CAP_TIME_SHARE = 0x1,
-};
-enum um_timetravel_schedshm_flags {
-  UM_TIMETRAVEL_SCHEDSHM_FLAGS_REQ_RUN = 0x1,
-};
-union um_timetravel_schedshm_client {
-  struct {
-    __u32 capa;
-    __u32 flags;
-    __u64 req_time;
-    __u64 name;
-  };
-  char reserve[128];
-};
-struct um_timetravel_schedshm {
-  union {
-    struct {
-      __u32 version;
-      __u32 len;
-      __u64 free_until;
-      __u64 current_time;
-      __u16 running_id;
-      __u16 max_clients;
-    };
-    char hdr[4096];
-  };
-  union um_timetravel_schedshm_client clients[];
 };
 #endif
diff --git a/libc/kernel/uapi/linux/v4l2-controls.h b/libc/kernel/uapi/linux/v4l2-controls.h
index f6ef26c..23158dc 100644
--- a/libc/kernel/uapi/linux/v4l2-controls.h
+++ b/libc/kernel/uapi/linux/v4l2-controls.h
@@ -714,7 +714,6 @@
   V4L2_MPEG_VIDEO_AV1_LEVEL_7_2 = 22,
   V4L2_MPEG_VIDEO_AV1_LEVEL_7_3 = 23
 };
-#define V4L2_CID_MPEG_VIDEO_AVERAGE_QP (V4L2_CID_CODEC_BASE + 657)
 #define V4L2_CID_CODEC_CX2341X_BASE (V4L2_CTRL_CLASS_CODEC | 0x1000)
 #define V4L2_CID_MPEG_CX2341X_VIDEO_SPATIAL_FILTER_MODE (V4L2_CID_CODEC_CX2341X_BASE + 0)
 enum v4l2_mpeg_cx2341x_video_spatial_filter_mode {
diff --git a/libc/kernel/uapi/linux/version.h b/libc/kernel/uapi/linux/version.h
index 0cc45cf..7faa30f 100644
--- a/libc/kernel/uapi/linux/version.h
+++ b/libc/kernel/uapi/linux/version.h
@@ -4,8 +4,8 @@
  * See https://android.googlesource.com/platform/bionic/+/master/libc/kernel/
  * for more information.
  */
-#define LINUX_VERSION_CODE 396032
+#define LINUX_VERSION_CODE 395776
 #define KERNEL_VERSION(a,b,c) (((a) << 16) + ((b) << 8) + ((c) > 255 ? 255 : (c)))
 #define LINUX_VERSION_MAJOR 6
-#define LINUX_VERSION_PATCHLEVEL 11
+#define LINUX_VERSION_PATCHLEVEL 10
 #define LINUX_VERSION_SUBLEVEL 0
diff --git a/libc/kernel/uapi/linux/videodev2.h b/libc/kernel/uapi/linux/videodev2.h
index fb69a8a..3905949 100644
--- a/libc/kernel/uapi/linux/videodev2.h
+++ b/libc/kernel/uapi/linux/videodev2.h
@@ -236,8 +236,6 @@
 #define V4L2_PIX_FMT_RGBA1010102 v4l2_fourcc('R', 'A', '3', '0')
 #define V4L2_PIX_FMT_ARGB2101010 v4l2_fourcc('A', 'R', '3', '0')
 #define V4L2_PIX_FMT_BGR48_12 v4l2_fourcc('B', '3', '1', '2')
-#define V4L2_PIX_FMT_BGR48 v4l2_fourcc('B', 'G', 'R', '6')
-#define V4L2_PIX_FMT_RGB48 v4l2_fourcc('R', 'G', 'B', '6')
 #define V4L2_PIX_FMT_ABGR64_12 v4l2_fourcc('B', '4', '1', '2')
 #define V4L2_PIX_FMT_GREY v4l2_fourcc('G', 'R', 'E', 'Y')
 #define V4L2_PIX_FMT_Y4 v4l2_fourcc('Y', '0', '4', ' ')
@@ -427,16 +425,6 @@
 #define V4L2_PIX_FMT_IPU3_SGBRG10 v4l2_fourcc('i', 'p', '3', 'g')
 #define V4L2_PIX_FMT_IPU3_SGRBG10 v4l2_fourcc('i', 'p', '3', 'G')
 #define V4L2_PIX_FMT_IPU3_SRGGB10 v4l2_fourcc('i', 'p', '3', 'r')
-#define V4L2_PIX_FMT_PISP_COMP1_RGGB v4l2_fourcc('P', 'C', '1', 'R')
-#define V4L2_PIX_FMT_PISP_COMP1_GRBG v4l2_fourcc('P', 'C', '1', 'G')
-#define V4L2_PIX_FMT_PISP_COMP1_GBRG v4l2_fourcc('P', 'C', '1', 'g')
-#define V4L2_PIX_FMT_PISP_COMP1_BGGR v4l2_fourcc('P', 'C', '1', 'B')
-#define V4L2_PIX_FMT_PISP_COMP1_MONO v4l2_fourcc('P', 'C', '1', 'M')
-#define V4L2_PIX_FMT_PISP_COMP2_RGGB v4l2_fourcc('P', 'C', '2', 'R')
-#define V4L2_PIX_FMT_PISP_COMP2_GRBG v4l2_fourcc('P', 'C', '2', 'G')
-#define V4L2_PIX_FMT_PISP_COMP2_GBRG v4l2_fourcc('P', 'C', '2', 'g')
-#define V4L2_PIX_FMT_PISP_COMP2_BGGR v4l2_fourcc('P', 'C', '2', 'B')
-#define V4L2_PIX_FMT_PISP_COMP2_MONO v4l2_fourcc('P', 'C', '2', 'M')
 #define V4L2_SDR_FMT_CU8 v4l2_fourcc('C', 'U', '0', '8')
 #define V4L2_SDR_FMT_CU16LE v4l2_fourcc('C', 'U', '1', '6')
 #define V4L2_SDR_FMT_CS8 v4l2_fourcc('C', 'S', '0', '8')
@@ -456,7 +444,6 @@
 #define V4L2_META_FMT_VIVID v4l2_fourcc('V', 'I', 'V', 'D')
 #define V4L2_META_FMT_RK_ISP1_PARAMS v4l2_fourcc('R', 'K', '1', 'P')
 #define V4L2_META_FMT_RK_ISP1_STAT_3A v4l2_fourcc('R', 'K', '1', 'S')
-#define V4L2_META_FMT_RPI_BE_CFG v4l2_fourcc('R', 'P', 'B', 'C')
 #define V4L2_PIX_FMT_PRIV_MAGIC 0xfeedcafe
 #define V4L2_PIX_FMT_FLAG_PREMUL_ALPHA 0x00000001
 #define V4L2_PIX_FMT_FLAG_SET_CSC 0x00000002
diff --git a/libc/kernel/uapi/linux/xfrm.h b/libc/kernel/uapi/linux/xfrm.h
index 9509efe..b8e79e8 100644
--- a/libc/kernel/uapi/linux/xfrm.h
+++ b/libc/kernel/uapi/linux/xfrm.h
@@ -260,7 +260,6 @@
   XFRMA_IF_ID,
   XFRMA_MTIMER_THRESH,
   XFRMA_SA_DIR,
-  XFRMA_NAT_KEEPALIVE_INTERVAL,
   __XFRMA_MAX
 #define XFRMA_OUTPUT_MARK XFRMA_SET_MARK
 #define XFRMA_MAX (__XFRMA_MAX - 1)
diff --git a/libc/kernel/uapi/linux/zorro_ids.h b/libc/kernel/uapi/linux/zorro_ids.h
index 05239cd..f47c899 100644
--- a/libc/kernel/uapi/linux/zorro_ids.h
+++ b/libc/kernel/uapi/linux/zorro_ids.h
@@ -354,8 +354,6 @@
 #define ZORRO_MANUF_VMC 0x1389
 #define ZORRO_PROD_VMC_ISDN_BLASTER_Z2 ZORRO_ID(VMC, 0x01, 0)
 #define ZORRO_PROD_VMC_HYPERCOM_4 ZORRO_ID(VMC, 0x02, 0)
-#define ZORRO_MANUF_CSLAB 0x1400
-#define ZORRO_PROD_CSLAB_WARP_1260 ZORRO_ID(CSLAB, 0x65, 0)
 #define ZORRO_MANUF_INFORMATION 0x157C
 #define ZORRO_PROD_INFORMATION_ISDN_ENGINE_I ZORRO_ID(INFORMATION, 0x64, 0)
 #define ZORRO_MANUF_VORTEX 0x2017
diff --git a/libc/kernel/uapi/misc/mrvl_cn10k_dpi.h b/libc/kernel/uapi/misc/mrvl_cn10k_dpi.h
deleted file mode 100644
index 7d8671f..0000000
--- a/libc/kernel/uapi/misc/mrvl_cn10k_dpi.h
+++ /dev/null
@@ -1,26 +0,0 @@
-/*
- * This file is auto-generated. Modifications will be lost.
- *
- * See https://android.googlesource.com/platform/bionic/+/master/libc/kernel/
- * for more information.
- */
-#ifndef __MRVL_CN10K_DPI_H__
-#define __MRVL_CN10K_DPI_H__
-#include <linux/types.h>
-#define DPI_MAX_ENGINES 6
-struct dpi_mps_mrrs_cfg {
-  __u16 max_read_req_sz;
-  __u16 max_payload_sz;
-  __u16 port;
-  __u16 reserved;
-};
-struct dpi_engine_cfg {
-  __u64 fifo_mask;
-  __u16 molr[DPI_MAX_ENGINES];
-  __u16 update_molr;
-  __u16 reserved;
-};
-#define DPI_MAGIC_NUM 0xB8
-#define DPI_MPS_MRRS_CFG _IOW(DPI_MAGIC_NUM, 1, struct dpi_mps_mrrs_cfg)
-#define DPI_ENGINE_CFG _IOW(DPI_MAGIC_NUM, 2, struct dpi_engine_cfg)
-#endif
diff --git a/libc/kernel/uapi/rdma/bnxt_re-abi.h b/libc/kernel/uapi/rdma/bnxt_re-abi.h
index 50f8b8a..3dceafd 100644
--- a/libc/kernel/uapi/rdma/bnxt_re-abi.h
+++ b/libc/kernel/uapi/rdma/bnxt_re-abi.h
@@ -18,7 +18,7 @@
   BNXT_RE_UCNTX_CMASK_WC_DPI_ENABLED = 0x04ULL,
   BNXT_RE_UCNTX_CMASK_DBR_PACING_ENABLED = 0x08ULL,
   BNXT_RE_UCNTX_CMASK_POW2_DISABLED = 0x10ULL,
-  BNXT_RE_UCNTX_CMASK_MSN_TABLE_ENABLED = 0x40,
+  BNXT_RE_COMP_MASK_UCNTX_HW_RETX_ENABLED = 0x40,
 };
 enum bnxt_re_wqe_mode {
   BNXT_QPLIB_WQE_MODE_STATIC = 0x00,
diff --git a/libc/kernel/uapi/rdma/ib_user_ioctl_cmds.h b/libc/kernel/uapi/rdma/ib_user_ioctl_cmds.h
index 5f5c426..d774fba 100644
--- a/libc/kernel/uapi/rdma/ib_user_ioctl_cmds.h
+++ b/libc/kernel/uapi/rdma/ib_user_ioctl_cmds.h
@@ -8,6 +8,8 @@
 #define IB_USER_IOCTL_CMDS_H
 #define UVERBS_ID_NS_MASK 0xF000
 #define UVERBS_ID_NS_SHIFT 12
+#define UVERBS_UDATA_DRIVER_DATA_NS 1
+#define UVERBS_UDATA_DRIVER_DATA_FLAG (1UL << UVERBS_ID_NS_SHIFT)
 enum uverbs_default_objects {
   UVERBS_OBJECT_DEVICE,
   UVERBS_OBJECT_PD,
@@ -28,10 +30,8 @@
   UVERBS_OBJECT_ASYNC_EVENT,
 };
 enum {
-  UVERBS_ID_DRIVER_NS = 1UL << UVERBS_ID_NS_SHIFT,
-  UVERBS_ATTR_UHW_IN = UVERBS_ID_DRIVER_NS,
+  UVERBS_ATTR_UHW_IN = UVERBS_UDATA_DRIVER_DATA_FLAG,
   UVERBS_ATTR_UHW_OUT,
-  UVERBS_ID_DRIVER_NS_WITH_UHW,
 };
 enum uverbs_methods_device {
   UVERBS_METHOD_INVOKE_WRITE,
diff --git a/libc/kernel/uapi/rdma/mana-abi.h b/libc/kernel/uapi/rdma/mana-abi.h
index 02bb061..7347175 100644
--- a/libc/kernel/uapi/rdma/mana-abi.h
+++ b/libc/kernel/uapi/rdma/mana-abi.h
@@ -33,13 +33,6 @@
   __u32 tx_vp_offset;
   __u32 reserved;
 };
-struct mana_ib_create_rc_qp {
-  __aligned_u64 queue_buf[4];
-  __u32 queue_size[4];
-};
-struct mana_ib_create_rc_qp_resp {
-  __u32 queue_id[4];
-};
 struct mana_ib_create_wq {
   __aligned_u64 wq_buf_addr;
   __u32 wq_buf_size;
diff --git a/libc/kernel/uapi/rdma/mlx5_user_ioctl_cmds.h b/libc/kernel/uapi/rdma/mlx5_user_ioctl_cmds.h
index ebafb00..69d5250 100644
--- a/libc/kernel/uapi/rdma/mlx5_user_ioctl_cmds.h
+++ b/libc/kernel/uapi/rdma/mlx5_user_ioctl_cmds.h
@@ -201,9 +201,6 @@
 enum mlx5_ib_device_query_context_attrs {
   MLX5_IB_ATTR_QUERY_CONTEXT_RESP_UCTX = (1U << UVERBS_ID_NS_SHIFT),
 };
-enum mlx5_ib_create_cq_attrs {
-  MLX5_IB_ATTR_CREATE_CQ_UAR_INDEX = UVERBS_ID_DRIVER_NS_WITH_UHW,
-};
 #define MLX5_IB_DW_MATCH_PARAM 0xA0
 struct mlx5_ib_match_params {
   __u32 match_params[MLX5_IB_DW_MATCH_PARAM];
diff --git a/libc/kernel/uapi/rdma/rdma_netlink.h b/libc/kernel/uapi/rdma/rdma_netlink.h
index ac027ac..912a3c0 100644
--- a/libc/kernel/uapi/rdma/rdma_netlink.h
+++ b/libc/kernel/uapi/rdma/rdma_netlink.h
@@ -199,8 +199,6 @@
   RDMA_NLDEV_CMD_RES_SRQ_GET,
   RDMA_NLDEV_CMD_STAT_GET_STATUS,
   RDMA_NLDEV_CMD_RES_SRQ_GET_RAW,
-  RDMA_NLDEV_CMD_NEWDEV,
-  RDMA_NLDEV_CMD_DELDEV,
   RDMA_NLDEV_NUM_OPS
 };
 enum rdma_nldev_print_type {
@@ -308,9 +306,6 @@
   RDMA_NLDEV_SYS_ATTR_PRIVILEGED_QKEY_MODE,
   RDMA_NLDEV_ATTR_DRIVER_DETAILS,
   RDMA_NLDEV_ATTR_RES_SUBTYPE,
-  RDMA_NLDEV_ATTR_DEV_TYPE,
-  RDMA_NLDEV_ATTR_PARENT_NAME,
-  RDMA_NLDEV_ATTR_NAME_ASSIGN_TYPE,
   RDMA_NLDEV_ATTR_MAX
 };
 enum rdma_nl_counter_mode {
@@ -323,11 +318,4 @@
   RDMA_COUNTER_MASK_QP_TYPE = 1,
   RDMA_COUNTER_MASK_PID = 1 << 1,
 };
-enum rdma_nl_dev_type {
-  RDMA_DEVICE_TYPE_SMI = 1,
-};
-enum rdma_nl_name_assign_type {
-  RDMA_NAME_ASSIGN_TYPE_UNKNOWN = 0,
-  RDMA_NAME_ASSIGN_TYPE_USER = 1,
-};
 #endif
diff --git a/libc/kernel/uapi/scsi/scsi_bsg_mpi3mr.h b/libc/kernel/uapi/scsi/scsi_bsg_mpi3mr.h
index fe3094e..d98e8fa 100644
--- a/libc/kernel/uapi/scsi/scsi_bsg_mpi3mr.h
+++ b/libc/kernel/uapi/scsi/scsi_bsg_mpi3mr.h
@@ -144,7 +144,7 @@
 };
 struct mpi3mr_bsg_in_hdb_status {
   __u8 num_hdb_types;
-  __u8 element_trigger_format;
+  __u8 rsvd1;
   __u16 rsvd2;
   __u32 rsvd3;
   struct mpi3mr_hdb_entry entry[1];
diff --git a/libc/kernel/uapi/sound/asequencer.h b/libc/kernel/uapi/sound/asequencer.h
index a3826a5..7918528 100644
--- a/libc/kernel/uapi/sound/asequencer.h
+++ b/libc/kernel/uapi/sound/asequencer.h
@@ -7,7 +7,7 @@
 #ifndef _UAPI__SOUND_ASEQUENCER_H
 #define _UAPI__SOUND_ASEQUENCER_H
 #include <sound/asound.h>
-#define SNDRV_SEQ_VERSION SNDRV_PROTOCOL_VERSION(1, 0, 4)
+#define SNDRV_SEQ_VERSION SNDRV_PROTOCOL_VERSION(1, 0, 3)
 #define SNDRV_SEQ_EVENT_SYSTEM 0
 #define SNDRV_SEQ_EVENT_RESULT 1
 #define SNDRV_SEQ_EVENT_NOTE 5
@@ -343,8 +343,7 @@
   int ppq;
   unsigned int skew_value;
   unsigned int skew_base;
-  unsigned short tempo_base;
-  char reserved[22];
+  char reserved[24];
 };
 #define SNDRV_SEQ_TIMER_ALSA 0
 #define SNDRV_SEQ_TIMER_MIDI_CLOCK 1
diff --git a/libc/kernel/uapi/sound/asound.h b/libc/kernel/uapi/sound/asound.h
index cfe9f66..b608ed5 100644
--- a/libc/kernel/uapi/sound/asound.h
+++ b/libc/kernel/uapi/sound/asound.h
@@ -92,7 +92,7 @@
 #define SNDRV_HWDEP_IOCTL_INFO _IOR('H', 0x01, struct snd_hwdep_info)
 #define SNDRV_HWDEP_IOCTL_DSP_STATUS _IOR('H', 0x02, struct snd_hwdep_dsp_status)
 #define SNDRV_HWDEP_IOCTL_DSP_LOAD _IOW('H', 0x03, struct snd_hwdep_dsp_image)
-#define SNDRV_PCM_VERSION SNDRV_PROTOCOL_VERSION(2, 0, 18)
+#define SNDRV_PCM_VERSION SNDRV_PROTOCOL_VERSION(2, 0, 17)
 typedef unsigned long snd_pcm_uframes_t;
 typedef signed long snd_pcm_sframes_t;
 enum {
@@ -263,7 +263,7 @@
   unsigned char id[16];
   unsigned short id16[8];
   unsigned int id32[4];
-} __attribute__((deprecated));
+};
 struct snd_pcm_info {
   unsigned int device;
   unsigned int subdevice;
@@ -276,7 +276,7 @@
   int dev_subclass;
   unsigned int subdevices_count;
   unsigned int subdevices_avail;
-  unsigned char pad1[16];
+  union snd_pcm_sync_id sync;
   unsigned char reserved[64];
 };
 typedef int snd_pcm_hw_param_t;
@@ -324,8 +324,7 @@
   unsigned int rate_num;
   unsigned int rate_den;
   snd_pcm_uframes_t fifo_size;
-  unsigned char sync[16];
-  unsigned char reserved[48];
+  unsigned char reserved[64];
 };
 enum {
   SNDRV_PCM_TSTAMP_NONE = 0,
diff --git a/libc/kernel/uapi/sound/sof/abi.h b/libc/kernel/uapi/sound/sof/abi.h
index ed66131..fe1fe47 100644
--- a/libc/kernel/uapi/sound/sof/abi.h
+++ b/libc/kernel/uapi/sound/sof/abi.h
@@ -9,7 +9,7 @@
 #include <linux/types.h>
 #define SOF_ABI_MAJOR 3
 #define SOF_ABI_MINOR 23
-#define SOF_ABI_PATCH 1
+#define SOF_ABI_PATCH 0
 #define SOF_ABI_MAJOR_SHIFT 24
 #define SOF_ABI_MAJOR_MASK 0xff
 #define SOF_ABI_MINOR_SHIFT 12
