diff --git a/libc/kernel/tools/defaults.py b/libc/kernel/tools/defaults.py
index e74b346..90b56f5 100644
--- a/libc/kernel/tools/defaults.py
+++ b/libc/kernel/tools/defaults.py
@@ -29,6 +29,10 @@
     "__HAVE_BUILTIN_BSWAP16__": "1",
     "__HAVE_BUILTIN_BSWAP32__": "1",
     "__HAVE_BUILTIN_BSWAP64__": "1",
+    # Use this to remove the struct __kernel_old_timeval definition.
+    # Otherwise, there will be two struct timeval definitions when
+    # __kernel_old_timeval is renamed to timeval.
+    "__kernel_old_timeval": "1",
     }
 
 # define to true if you want to remove all defined(CONFIG_FOO) tests
@@ -76,6 +80,12 @@
     "__attribute_const__": "__attribute__((__const__))",
     # In this case the kernel tries to keep out of our way, but we're happy to use its definition.
     "__kernel_sockaddr_storage": "sockaddr_storage",
+    # The kernel started using struct __kernel_old_timeval in some places,
+    # which is the exact same as struct timeval. Replace that name with
+    # timeval so that kernel structures all use the same named structure.
+    # If struct __kernel_old_timeval and struct timeval become different,
+    # then a different solution needs to be implemented.
+    "__kernel_old_timeval": "timeval",
     }
 
 
diff --git a/libc/kernel/uapi/asm-arm/asm/kvm.h b/libc/kernel/uapi/asm-arm/asm/kvm.h
index 6fdb46c..6a6d963 100644
--- a/libc/kernel/uapi/asm-arm/asm/kvm.h
+++ b/libc/kernel/uapi/asm-arm/asm/kvm.h
@@ -97,7 +97,8 @@
   struct {
     __u8 serror_pending;
     __u8 serror_has_esr;
-    __u8 pad[6];
+    __u8 ext_dabt_pending;
+    __u8 pad[5];
     __u64 serror_esr;
   } exception;
   __u32 reserved[12];
diff --git a/libc/kernel/uapi/asm-arm64/asm/kvm.h b/libc/kernel/uapi/asm-arm64/asm/kvm.h
index 1c7ee65..efe1a9c 100644
--- a/libc/kernel/uapi/asm-arm64/asm/kvm.h
+++ b/libc/kernel/uapi/asm-arm64/asm/kvm.h
@@ -103,7 +103,8 @@
   struct {
     __u8 serror_pending;
     __u8 serror_has_esr;
-    __u8 pad[6];
+    __u8 ext_dabt_pending;
+    __u8 pad[5];
     __u64 serror_esr;
   } exception;
   __u32 reserved[12];
@@ -196,6 +197,8 @@
 #define KVM_ARM_VCPU_TIMER_CTRL 1
 #define KVM_ARM_VCPU_TIMER_IRQ_VTIMER 0
 #define KVM_ARM_VCPU_TIMER_IRQ_PTIMER 1
+#define KVM_ARM_VCPU_PVTIME_CTRL 2
+#define KVM_ARM_VCPU_PVTIME_IPA 0
 #define KVM_ARM_IRQ_VCPU2_SHIFT 28
 #define KVM_ARM_IRQ_VCPU2_MASK 0xf
 #define KVM_ARM_IRQ_TYPE_SHIFT 24
diff --git a/libc/kernel/uapi/asm-arm64/asm/unistd.h b/libc/kernel/uapi/asm-arm64/asm/unistd.h
index 2f7a859..e93f3f1 100644
--- a/libc/kernel/uapi/asm-arm64/asm/unistd.h
+++ b/libc/kernel/uapi/asm-arm64/asm/unistd.h
@@ -20,4 +20,5 @@
 #define __ARCH_WANT_NEW_STAT
 #define __ARCH_WANT_SET_GET_RLIMIT
 #define __ARCH_WANT_TIME32_SYSCALLS
+#define __ARCH_WANT_SYS_CLONE3
 #include <asm-generic/unistd.h>
diff --git a/libc/kernel/uapi/asm-generic/ipcbuf.h b/libc/kernel/uapi/asm-generic/ipcbuf.h
index 4dfb6f7..40c45ab 100644
--- a/libc/kernel/uapi/asm-generic/ipcbuf.h
+++ b/libc/kernel/uapi/asm-generic/ipcbuf.h
@@ -18,6 +18,7 @@
  ****************************************************************************/
 #ifndef __ASM_GENERIC_IPCBUF_H
 #define __ASM_GENERIC_IPCBUF_H
+#include <linux/posix_types.h>
 struct ipc64_perm {
   __kernel_key_t key;
   __kernel_uid32_t uid;
diff --git a/libc/kernel/uapi/asm-generic/msgbuf.h b/libc/kernel/uapi/asm-generic/msgbuf.h
index a8af16e..827d050 100644
--- a/libc/kernel/uapi/asm-generic/msgbuf.h
+++ b/libc/kernel/uapi/asm-generic/msgbuf.h
@@ -19,12 +19,13 @@
 #ifndef __ASM_GENERIC_MSGBUF_H
 #define __ASM_GENERIC_MSGBUF_H
 #include <asm/bitsperlong.h>
+#include <asm/ipcbuf.h>
 struct msqid64_ds {
   struct ipc64_perm msg_perm;
 #if __BITS_PER_LONG == 64
-  __kernel_time_t msg_stime;
-  __kernel_time_t msg_rtime;
-  __kernel_time_t msg_ctime;
+  long msg_stime;
+  long msg_rtime;
+  long msg_ctime;
 #else
   unsigned long msg_stime;
   unsigned long msg_stime_high;
diff --git a/libc/kernel/uapi/asm-generic/posix_types.h b/libc/kernel/uapi/asm-generic/posix_types.h
index 5aaa56d..4045127 100644
--- a/libc/kernel/uapi/asm-generic/posix_types.h
+++ b/libc/kernel/uapi/asm-generic/posix_types.h
@@ -74,6 +74,7 @@
 #endif
 typedef __kernel_long_t __kernel_off_t;
 typedef long long __kernel_loff_t;
+typedef __kernel_long_t __kernel_old_time_t;
 typedef __kernel_long_t __kernel_time_t;
 typedef long long __kernel_time64_t;
 typedef __kernel_long_t __kernel_clock_t;
diff --git a/libc/kernel/uapi/asm-generic/sembuf.h b/libc/kernel/uapi/asm-generic/sembuf.h
index c8c1d29..46306f7 100644
--- a/libc/kernel/uapi/asm-generic/sembuf.h
+++ b/libc/kernel/uapi/asm-generic/sembuf.h
@@ -19,11 +19,12 @@
 #ifndef __ASM_GENERIC_SEMBUF_H
 #define __ASM_GENERIC_SEMBUF_H
 #include <asm/bitsperlong.h>
+#include <asm/ipcbuf.h>
 struct semid64_ds {
   struct ipc64_perm sem_perm;
 #if __BITS_PER_LONG == 64
-  __kernel_time_t sem_otime;
-  __kernel_time_t sem_ctime;
+  long sem_otime;
+  long sem_ctime;
 #else
   unsigned long sem_otime;
   unsigned long sem_otime_high;
diff --git a/libc/kernel/uapi/asm-generic/shmbuf.h b/libc/kernel/uapi/asm-generic/shmbuf.h
index 1d003ba..067ffbc 100644
--- a/libc/kernel/uapi/asm-generic/shmbuf.h
+++ b/libc/kernel/uapi/asm-generic/shmbuf.h
@@ -23,9 +23,9 @@
   struct ipc64_perm shm_perm;
   size_t shm_segsz;
 #if __BITS_PER_LONG == 64
-  __kernel_time_t shm_atime;
-  __kernel_time_t shm_dtime;
-  __kernel_time_t shm_ctime;
+  long shm_atime;
+  long shm_dtime;
+  long shm_ctime;
 #else
   unsigned long shm_atime;
   unsigned long shm_atime_high;
diff --git a/libc/kernel/uapi/asm-x86/asm/bootparam.h b/libc/kernel/uapi/asm-x86/asm/bootparam.h
index af66fdb..7401135 100644
--- a/libc/kernel/uapi/asm-x86/asm/bootparam.h
+++ b/libc/kernel/uapi/asm-x86/asm/bootparam.h
@@ -25,6 +25,8 @@
 #define SETUP_EFI 4
 #define SETUP_APPLE_PROPERTIES 5
 #define SETUP_JAILHOUSE 6
+#define SETUP_INDIRECT (1 << 31)
+#define SETUP_TYPE_MAX (SETUP_INDIRECT | SETUP_JAILHOUSE)
 #define RAMDISK_IMAGE_START_MASK 0x07FF
 #define RAMDISK_PROMPT_FLAG 0x8000
 #define RAMDISK_LOAD_FLAG 0x4000
@@ -53,6 +55,12 @@
   __u32 len;
   __u8 data[0];
 };
+struct setup_indirect {
+  __u32 type;
+  __u32 reserved;
+  __u64 len;
+  __u64 addr;
+};
 struct setup_header {
   __u8 setup_sects;
   __u16 root_flags;
@@ -92,6 +100,7 @@
   __u64 pref_address;
   __u32 init_size;
   __u32 handover_offset;
+  __u32 kernel_info_offset;
 } __attribute__((packed));
 struct sys_desc_table {
   __u16 length;
@@ -121,15 +130,22 @@
 } __attribute__((packed));
 #define JAILHOUSE_SETUP_REQUIRED_VERSION 1
 struct jailhouse_setup_data {
-  __u16 version;
-  __u16 compatible_version;
-  __u16 pm_timer_address;
-  __u16 num_cpus;
-  __u64 pci_mmconfig_base;
-  __u32 tsc_khz;
-  __u32 apic_khz;
-  __u8 standard_ioapic;
-  __u8 cpu_ids[255];
+  struct {
+    __u16 version;
+    __u16 compatible_version;
+  } __attribute__((packed)) hdr;
+  struct {
+    __u16 pm_timer_address;
+    __u16 num_cpus;
+    __u64 pci_mmconfig_base;
+    __u32 tsc_khz;
+    __u32 apic_khz;
+    __u8 standard_ioapic;
+    __u8 cpu_ids[255];
+  } __attribute__((packed)) v1;
+  struct {
+    __u32 flags;
+  } __attribute__((packed)) v2;
 } __attribute__((packed));
 struct boot_params {
   struct screen_info screen_info;
diff --git a/libc/kernel/uapi/asm-x86/asm/msgbuf.h b/libc/kernel/uapi/asm-x86/asm/msgbuf.h
index 92ab491..b100b20 100644
--- a/libc/kernel/uapi/asm-x86/asm/msgbuf.h
+++ b/libc/kernel/uapi/asm-x86/asm/msgbuf.h
@@ -21,11 +21,12 @@
 #if !defined(__x86_64__) || !defined(__ILP32__)
 #include <asm-generic/msgbuf.h>
 #else
+#include <asm/ipcbuf.h>
 struct msqid64_ds {
   struct ipc64_perm msg_perm;
-  __kernel_time_t msg_stime;
-  __kernel_time_t msg_rtime;
-  __kernel_time_t msg_ctime;
+  __kernel_long_t msg_stime;
+  __kernel_long_t msg_rtime;
+  __kernel_long_t msg_ctime;
   __kernel_ulong_t msg_cbytes;
   __kernel_ulong_t msg_qnum;
   __kernel_ulong_t msg_qbytes;
diff --git a/libc/kernel/uapi/asm-x86/asm/sembuf.h b/libc/kernel/uapi/asm-x86/asm/sembuf.h
index 9b96722..c633425 100644
--- a/libc/kernel/uapi/asm-x86/asm/sembuf.h
+++ b/libc/kernel/uapi/asm-x86/asm/sembuf.h
@@ -18,6 +18,7 @@
  ****************************************************************************/
 #ifndef _ASM_X86_SEMBUF_H
 #define _ASM_X86_SEMBUF_H
+#include <asm/ipcbuf.h>
 struct semid64_ds {
   struct ipc64_perm sem_perm;
 #ifdef __i386__
@@ -26,9 +27,9 @@
   unsigned long sem_ctime;
   unsigned long sem_ctime_high;
 #else
-  __kernel_time_t sem_otime;
+  __kernel_long_t sem_otime;
   __kernel_ulong_t __unused1;
-  __kernel_time_t sem_ctime;
+  __kernel_long_t sem_ctime;
   __kernel_ulong_t __unused2;
 #endif
   __kernel_ulong_t sem_nsems;
diff --git a/libc/kernel/uapi/asm-x86/asm/shmbuf.h b/libc/kernel/uapi/asm-x86/asm/shmbuf.h
index 4486c7b..03e195e 100644
--- a/libc/kernel/uapi/asm-x86/asm/shmbuf.h
+++ b/libc/kernel/uapi/asm-x86/asm/shmbuf.h
@@ -24,9 +24,9 @@
 struct shmid64_ds {
   struct ipc64_perm shm_perm;
   size_t shm_segsz;
-  __kernel_time_t shm_atime;
-  __kernel_time_t shm_dtime;
-  __kernel_time_t shm_ctime;
+  __kernel_long_t shm_atime;
+  __kernel_long_t shm_dtime;
+  __kernel_long_t shm_ctime;
   __kernel_pid_t shm_cpid;
   __kernel_pid_t shm_lpid;
   __kernel_ulong_t shm_nattch;
diff --git a/libc/kernel/uapi/drm/amdgpu_drm.h b/libc/kernel/uapi/drm/amdgpu_drm.h
index 1d95379..b986d30 100644
--- a/libc/kernel/uapi/drm/amdgpu_drm.h
+++ b/libc/kernel/uapi/drm/amdgpu_drm.h
@@ -301,6 +301,7 @@
 #define AMDGPU_VM_MTYPE_WC (2 << 5)
 #define AMDGPU_VM_MTYPE_CC (3 << 5)
 #define AMDGPU_VM_MTYPE_UC (4 << 5)
+#define AMDGPU_VM_MTYPE_RW (5 << 5)
 struct drm_amdgpu_gem_va {
   __u32 handle;
   __u32 _pad;
diff --git a/libc/kernel/uapi/drm/drm.h b/libc/kernel/uapi/drm/drm.h
index 7c5ffbb..c78966c 100644
--- a/libc/kernel/uapi/drm/drm.h
+++ b/libc/kernel/uapi/drm/drm.h
@@ -435,11 +435,12 @@
   __u32 count_handles;
   __u32 pad;
 };
+#define DRM_SYNCOBJ_QUERY_FLAGS_LAST_SUBMITTED (1 << 0)
 struct drm_syncobj_timeline_array {
   __u64 handles;
   __u64 points;
   __u32 count_handles;
-  __u32 pad;
+  __u32 flags;
 };
 struct drm_crtc_get_sequence {
   __u32 crtc_id;
diff --git a/libc/kernel/uapi/drm/drm_fourcc.h b/libc/kernel/uapi/drm/drm_fourcc.h
index dec9cfa..a316269 100644
--- a/libc/kernel/uapi/drm/drm_fourcc.h
+++ b/libc/kernel/uapi/drm/drm_fourcc.h
@@ -23,7 +23,7 @@
 extern "C" {
 #endif
 #define fourcc_code(a,b,c,d) ((__u32) (a) | ((__u32) (b) << 8) | ((__u32) (c) << 16) | ((__u32) (d) << 24))
-#define DRM_FORMAT_BIG_ENDIAN (1 << 31)
+#define DRM_FORMAT_BIG_ENDIAN (1U << 31)
 #define DRM_FORMAT_INVALID 0
 #define DRM_FORMAT_C8 fourcc_code('C', '8', ' ', ' ')
 #define DRM_FORMAT_R8 fourcc_code('R', '8', ' ', ' ')
@@ -178,7 +178,10 @@
 #define DRM_FORMAT_MOD_BROADCOM_SAND128 DRM_FORMAT_MOD_BROADCOM_SAND128_COL_HEIGHT(0)
 #define DRM_FORMAT_MOD_BROADCOM_SAND256 DRM_FORMAT_MOD_BROADCOM_SAND256_COL_HEIGHT(0)
 #define DRM_FORMAT_MOD_BROADCOM_UIF fourcc_mod_code(BROADCOM, 6)
-#define DRM_FORMAT_MOD_ARM_AFBC(__afbc_mode) fourcc_mod_code(ARM, __afbc_mode)
+#define DRM_FORMAT_MOD_ARM_CODE(__type,__val) fourcc_mod_code(ARM, ((__u64) (__type) << 52) | ((__val) & 0x000fffffffffffffULL))
+#define DRM_FORMAT_MOD_ARM_TYPE_AFBC 0x00
+#define DRM_FORMAT_MOD_ARM_TYPE_MISC 0x01
+#define DRM_FORMAT_MOD_ARM_AFBC(__afbc_mode) DRM_FORMAT_MOD_ARM_CODE(DRM_FORMAT_MOD_ARM_TYPE_AFBC, __afbc_mode)
 #define AFBC_FORMAT_MOD_BLOCK_SIZE_MASK 0xf
 #define AFBC_FORMAT_MOD_BLOCK_SIZE_16x16 (1ULL)
 #define AFBC_FORMAT_MOD_BLOCK_SIZE_32x8 (2ULL)
@@ -192,6 +195,7 @@
 #define AFBC_FORMAT_MOD_SC (1ULL << 9)
 #define AFBC_FORMAT_MOD_DB (1ULL << 10)
 #define AFBC_FORMAT_MOD_BCH (1ULL << 11)
+#define DRM_FORMAT_MOD_ARM_16X16_BLOCK_U_INTERLEAVED DRM_FORMAT_MOD_ARM_CODE(DRM_FORMAT_MOD_ARM_TYPE_MISC, 1ULL)
 #define DRM_FORMAT_MOD_ALLWINNER_TILED fourcc_mod_code(ALLWINNER, 1)
 #ifdef __cplusplus
 }
diff --git a/libc/kernel/uapi/drm/i915_drm.h b/libc/kernel/uapi/drm/i915_drm.h
index 09480c3..2e61275 100644
--- a/libc/kernel/uapi/drm/i915_drm.h
+++ b/libc/kernel/uapi/drm/i915_drm.h
@@ -359,6 +359,7 @@
 #define I915_PARAM_CS_TIMESTAMP_FREQUENCY 51
 #define I915_PARAM_MMAP_GTT_COHERENT 52
 #define I915_PARAM_HAS_EXEC_SUBMIT_FENCE 53
+#define I915_PARAM_PERF_REVISION 54
 typedef struct drm_i915_getparam {
   __s32 param;
   int __user * value;
@@ -711,6 +712,7 @@
 #define I915_CONTEXT_PARAM_RECOVERABLE 0x8
 #define I915_CONTEXT_PARAM_VM 0x9
 #define I915_CONTEXT_PARAM_ENGINES 0xa
+#define I915_CONTEXT_PARAM_PERSISTENCE 0xb
   __u64 value;
 };
 struct drm_i915_gem_context_param_sseu {
@@ -820,6 +822,7 @@
   DRM_I915_PERF_PROP_OA_METRICS_SET,
   DRM_I915_PERF_PROP_OA_FORMAT,
   DRM_I915_PERF_PROP_OA_EXPONENT,
+  DRM_I915_PERF_PROP_HOLD_PREEMPTION,
   DRM_I915_PERF_PROP_MAX
 };
 struct drm_i915_perf_open_param {
@@ -832,6 +835,7 @@
 };
 #define I915_PERF_IOCTL_ENABLE _IO('i', 0x0)
 #define I915_PERF_IOCTL_DISABLE _IO('i', 0x1)
+#define I915_PERF_IOCTL_CONFIG _IO('i', 0x2)
 struct drm_i915_perf_record_header {
   __u32 type;
   __u16 pad;
@@ -856,8 +860,12 @@
   __u64 query_id;
 #define DRM_I915_QUERY_TOPOLOGY_INFO 1
 #define DRM_I915_QUERY_ENGINE_INFO 2
+#define DRM_I915_QUERY_PERF_CONFIG 3
   __s32 length;
   __u32 flags;
+#define DRM_I915_QUERY_PERF_CONFIG_LIST 1
+#define DRM_I915_QUERY_PERF_CONFIG_DATA_FOR_UUID 2
+#define DRM_I915_QUERY_PERF_CONFIG_DATA_FOR_ID 3
   __u64 data_ptr;
 };
 struct drm_i915_query {
@@ -890,6 +898,15 @@
   __u32 rsvd[3];
   struct drm_i915_engine_info engines[];
 };
+struct drm_i915_query_perf_config {
+  union {
+    __u64 n_configs;
+    __u64 config;
+    char uuid[36];
+  };
+  __u32 flags;
+  __u8 data[];
+};
 #ifdef __cplusplus
 }
 #endif
diff --git a/libc/kernel/uapi/drm/omap_drm.h b/libc/kernel/uapi/drm/omap_drm.h
index 3c2fc08..72d949d 100644
--- a/libc/kernel/uapi/drm/omap_drm.h
+++ b/libc/kernel/uapi/drm/omap_drm.h
@@ -28,15 +28,14 @@
   __u64 value;
 };
 #define OMAP_BO_SCANOUT 0x00000001
-#define OMAP_BO_CACHE_MASK 0x00000006
-#define OMAP_BO_TILED_MASK 0x00000f00
 #define OMAP_BO_CACHED 0x00000000
 #define OMAP_BO_WC 0x00000002
 #define OMAP_BO_UNCACHED 0x00000004
+#define OMAP_BO_CACHE_MASK 0x00000006
 #define OMAP_BO_TILED_8 0x00000100
 #define OMAP_BO_TILED_16 0x00000200
 #define OMAP_BO_TILED_32 0x00000300
-#define OMAP_BO_TILED (OMAP_BO_TILED_8 | OMAP_BO_TILED_16 | OMAP_BO_TILED_32)
+#define OMAP_BO_TILED_MASK 0x00000f00
 union omap_gem_size {
   __u32 bytes;
   struct {
diff --git a/libc/kernel/uapi/drm/v3d_drm.h b/libc/kernel/uapi/drm/v3d_drm.h
index 0b6b94f..cdc2cf5 100644
--- a/libc/kernel/uapi/drm/v3d_drm.h
+++ b/libc/kernel/uapi/drm/v3d_drm.h
@@ -38,6 +38,7 @@
 #define DRM_IOCTL_V3D_GET_BO_OFFSET DRM_IOWR(DRM_COMMAND_BASE + DRM_V3D_GET_BO_OFFSET, struct drm_v3d_get_bo_offset)
 #define DRM_IOCTL_V3D_SUBMIT_TFU DRM_IOW(DRM_COMMAND_BASE + DRM_V3D_SUBMIT_TFU, struct drm_v3d_submit_tfu)
 #define DRM_IOCTL_V3D_SUBMIT_CSD DRM_IOW(DRM_COMMAND_BASE + DRM_V3D_SUBMIT_CSD, struct drm_v3d_submit_csd)
+#define DRM_V3D_SUBMIT_CL_FLUSH_CACHE 0x01
 struct drm_v3d_submit_cl {
   __u32 bcl_start;
   __u32 bcl_end;
@@ -51,7 +52,7 @@
   __u32 qts;
   __u64 bo_handles;
   __u32 bo_handle_count;
-  __u32 pad;
+  __u32 flags;
 };
 struct drm_v3d_wait_bo {
   __u32 handle;
@@ -79,6 +80,7 @@
   DRM_V3D_PARAM_V3D_CORE0_IDENT2,
   DRM_V3D_PARAM_SUPPORTS_TFU,
   DRM_V3D_PARAM_SUPPORTS_CSD,
+  DRM_V3D_PARAM_SUPPORTS_CACHE_FLUSH,
 };
 struct drm_v3d_get_param {
   __u32 param;
diff --git a/libc/kernel/uapi/drm/vmwgfx_drm.h b/libc/kernel/uapi/drm/vmwgfx_drm.h
index bb1f36d..753192b 100644
--- a/libc/kernel/uapi/drm/vmwgfx_drm.h
+++ b/libc/kernel/uapi/drm/vmwgfx_drm.h
@@ -266,7 +266,8 @@
 enum drm_vmw_surface_flags {
   drm_vmw_surface_flag_shareable = (1 << 0),
   drm_vmw_surface_flag_scanout = (1 << 1),
-  drm_vmw_surface_flag_create_buffer = (1 << 2)
+  drm_vmw_surface_flag_create_buffer = (1 << 2),
+  drm_vmw_surface_flag_coherent = (1 << 3),
 };
 struct drm_vmw_gb_surface_create_req {
   __u32 svga3d_flags;
diff --git a/libc/kernel/uapi/linux/audit.h b/libc/kernel/uapi/linux/audit.h
index 3f1d8f0..d14f018 100644
--- a/libc/kernel/uapi/linux/audit.h
+++ b/libc/kernel/uapi/linux/audit.h
@@ -106,6 +106,7 @@
 #define AUDIT_ANOM_PROMISCUOUS 1700
 #define AUDIT_ANOM_ABEND 1701
 #define AUDIT_ANOM_LINK 1702
+#define AUDIT_ANOM_CREAT 1703
 #define AUDIT_INTEGRITY_DATA 1800
 #define AUDIT_INTEGRITY_METADATA 1801
 #define AUDIT_INTEGRITY_STATUS 1802
diff --git a/libc/kernel/uapi/linux/blkzoned.h b/libc/kernel/uapi/linux/blkzoned.h
index 62f826f..0b8ddd6 100644
--- a/libc/kernel/uapi/linux/blkzoned.h
+++ b/libc/kernel/uapi/linux/blkzoned.h
@@ -59,4 +59,7 @@
 #define BLKRESETZONE _IOW(0x12, 131, struct blk_zone_range)
 #define BLKGETZONESZ _IOR(0x12, 132, __u32)
 #define BLKGETNRZONES _IOR(0x12, 133, __u32)
+#define BLKOPENZONE _IOW(0x12, 134, struct blk_zone_range)
+#define BLKCLOSEZONE _IOW(0x12, 135, struct blk_zone_range)
+#define BLKFINISHZONE _IOW(0x12, 136, struct blk_zone_range)
 #endif
diff --git a/libc/kernel/uapi/linux/bpf.h b/libc/kernel/uapi/linux/bpf.h
index 39a9ea6..80a9feb 100644
--- a/libc/kernel/uapi/linux/bpf.h
+++ b/libc/kernel/uapi/linux/bpf.h
@@ -151,6 +151,7 @@
   BPF_PROG_TYPE_CGROUP_SYSCTL,
   BPF_PROG_TYPE_RAW_TRACEPOINT_WRITABLE,
   BPF_PROG_TYPE_CGROUP_SOCKOPT,
+  BPF_PROG_TYPE_TRACING,
 };
 enum bpf_attach_type {
   BPF_CGROUP_INET_INGRESS,
@@ -176,6 +177,9 @@
   BPF_CGROUP_UDP6_RECVMSG,
   BPF_CGROUP_GETSOCKOPT,
   BPF_CGROUP_SETSOCKOPT,
+  BPF_TRACE_RAW_TP,
+  BPF_TRACE_FENTRY,
+  BPF_TRACE_FEXIT,
   __MAX_BPF_ATTACH_TYPE
 };
 #define MAX_BPF_ATTACH_TYPE __MAX_BPF_ATTACH_TYPE
@@ -203,6 +207,7 @@
 #define BPF_F_RDONLY_PROG (1U << 7)
 #define BPF_F_WRONLY_PROG (1U << 8)
 #define BPF_F_CLONE (1U << 9)
+#define BPF_F_MMAPABLE (1U << 10)
 #define BPF_F_QUERY_EFFECTIVE (1U << 0)
 enum bpf_stack_build_id_status {
   BPF_STACK_BUILD_ID_EMPTY = 0,
@@ -262,6 +267,8 @@
     __u32 line_info_rec_size;
     __aligned_u64 line_info;
     __u32 line_info_cnt;
+    __u32 attach_btf_id;
+    __u32 attach_prog_fd;
   };
   struct {
     __aligned_u64 pathname;
@@ -334,7 +341,7 @@
     __u64 probe_addr;
   } task_fd_query;
 } __attribute__((aligned(8)));
-#define __BPF_FUNC_MAPPER(FN) FN(unspec), FN(map_lookup_elem), FN(map_update_elem), FN(map_delete_elem), FN(probe_read), FN(ktime_get_ns), FN(trace_printk), FN(get_prandom_u32), FN(get_smp_processor_id), FN(skb_store_bytes), FN(l3_csum_replace), FN(l4_csum_replace), FN(tail_call), FN(clone_redirect), FN(get_current_pid_tgid), FN(get_current_uid_gid), FN(get_current_comm), FN(get_cgroup_classid), FN(skb_vlan_push), FN(skb_vlan_pop), FN(skb_get_tunnel_key), FN(skb_set_tunnel_key), FN(perf_event_read), FN(redirect), FN(get_route_realm), FN(perf_event_output), FN(skb_load_bytes), FN(get_stackid), FN(csum_diff), FN(skb_get_tunnel_opt), FN(skb_set_tunnel_opt), FN(skb_change_proto), FN(skb_change_type), FN(skb_under_cgroup), FN(get_hash_recalc), FN(get_current_task), FN(probe_write_user), FN(current_task_under_cgroup), FN(skb_change_tail), FN(skb_pull_data), FN(csum_update), FN(set_hash_invalid), FN(get_numa_node_id), FN(skb_change_head), FN(xdp_adjust_head), FN(probe_read_str), FN(get_socket_cookie), FN(get_socket_uid), FN(set_hash), FN(setsockopt), FN(skb_adjust_room), FN(redirect_map), FN(sk_redirect_map), FN(sock_map_update), FN(xdp_adjust_meta), FN(perf_event_read_value), FN(perf_prog_read_value), FN(getsockopt), FN(override_return), FN(sock_ops_cb_flags_set), FN(msg_redirect_map), FN(msg_apply_bytes), FN(msg_cork_bytes), FN(msg_pull_data), FN(bind), FN(xdp_adjust_tail), FN(skb_get_xfrm_state), FN(get_stack), FN(skb_load_bytes_relative), FN(fib_lookup), FN(sock_hash_update), FN(msg_redirect_hash), FN(sk_redirect_hash), FN(lwt_push_encap), FN(lwt_seg6_store_bytes), FN(lwt_seg6_adjust_srh), FN(lwt_seg6_action), FN(rc_repeat), FN(rc_keydown), FN(skb_cgroup_id), FN(get_current_cgroup_id), FN(get_local_storage), FN(sk_select_reuseport), FN(skb_ancestor_cgroup_id), FN(sk_lookup_tcp), FN(sk_lookup_udp), FN(sk_release), FN(map_push_elem), FN(map_pop_elem), FN(map_peek_elem), FN(msg_push_data), FN(msg_pop_data), FN(rc_pointer_rel), FN(spin_lock), FN(spin_unlock), FN(sk_fullsock), FN(tcp_sock), FN(skb_ecn_set_ce), FN(get_listener_sock), FN(skc_lookup_tcp), FN(tcp_check_syncookie), FN(sysctl_get_name), FN(sysctl_get_current_value), FN(sysctl_get_new_value), FN(sysctl_set_new_value), FN(strtol), FN(strtoul), FN(sk_storage_get), FN(sk_storage_delete), FN(send_signal), FN(tcp_gen_syncookie),
+#define __BPF_FUNC_MAPPER(FN) FN(unspec), FN(map_lookup_elem), FN(map_update_elem), FN(map_delete_elem), FN(probe_read), FN(ktime_get_ns), FN(trace_printk), FN(get_prandom_u32), FN(get_smp_processor_id), FN(skb_store_bytes), FN(l3_csum_replace), FN(l4_csum_replace), FN(tail_call), FN(clone_redirect), FN(get_current_pid_tgid), FN(get_current_uid_gid), FN(get_current_comm), FN(get_cgroup_classid), FN(skb_vlan_push), FN(skb_vlan_pop), FN(skb_get_tunnel_key), FN(skb_set_tunnel_key), FN(perf_event_read), FN(redirect), FN(get_route_realm), FN(perf_event_output), FN(skb_load_bytes), FN(get_stackid), FN(csum_diff), FN(skb_get_tunnel_opt), FN(skb_set_tunnel_opt), FN(skb_change_proto), FN(skb_change_type), FN(skb_under_cgroup), FN(get_hash_recalc), FN(get_current_task), FN(probe_write_user), FN(current_task_under_cgroup), FN(skb_change_tail), FN(skb_pull_data), FN(csum_update), FN(set_hash_invalid), FN(get_numa_node_id), FN(skb_change_head), FN(xdp_adjust_head), FN(probe_read_str), FN(get_socket_cookie), FN(get_socket_uid), FN(set_hash), FN(setsockopt), FN(skb_adjust_room), FN(redirect_map), FN(sk_redirect_map), FN(sock_map_update), FN(xdp_adjust_meta), FN(perf_event_read_value), FN(perf_prog_read_value), FN(getsockopt), FN(override_return), FN(sock_ops_cb_flags_set), FN(msg_redirect_map), FN(msg_apply_bytes), FN(msg_cork_bytes), FN(msg_pull_data), FN(bind), FN(xdp_adjust_tail), FN(skb_get_xfrm_state), FN(get_stack), FN(skb_load_bytes_relative), FN(fib_lookup), FN(sock_hash_update), FN(msg_redirect_hash), FN(sk_redirect_hash), FN(lwt_push_encap), FN(lwt_seg6_store_bytes), FN(lwt_seg6_adjust_srh), FN(lwt_seg6_action), FN(rc_repeat), FN(rc_keydown), FN(skb_cgroup_id), FN(get_current_cgroup_id), FN(get_local_storage), FN(sk_select_reuseport), FN(skb_ancestor_cgroup_id), FN(sk_lookup_tcp), FN(sk_lookup_udp), FN(sk_release), FN(map_push_elem), FN(map_pop_elem), FN(map_peek_elem), FN(msg_push_data), FN(msg_pop_data), FN(rc_pointer_rel), FN(spin_lock), FN(spin_unlock), FN(sk_fullsock), FN(tcp_sock), FN(skb_ecn_set_ce), FN(get_listener_sock), FN(skc_lookup_tcp), FN(tcp_check_syncookie), FN(sysctl_get_name), FN(sysctl_get_current_value), FN(sysctl_get_new_value), FN(sysctl_set_new_value), FN(strtol), FN(strtoul), FN(sk_storage_get), FN(sk_storage_delete), FN(send_signal), FN(tcp_gen_syncookie), FN(skb_output), FN(probe_read_user), FN(probe_read_kernel), FN(probe_read_user_str), FN(probe_read_kernel_str),
 #define __BPF_ENUM_FN(x) BPF_FUNC_ ##x
 enum bpf_func_id {
   __BPF_FUNC_MAPPER(__BPF_ENUM_FN) __BPF_FUNC_MAX_ID,
diff --git a/libc/kernel/uapi/linux/btrfs.h b/libc/kernel/uapi/linux/btrfs.h
index a69e089..684b295 100644
--- a/libc/kernel/uapi/linux/btrfs.h
+++ b/libc/kernel/uapi/linux/btrfs.h
@@ -174,6 +174,7 @@
 #define BTRFS_FEATURE_INCOMPAT_SKINNY_METADATA (1ULL << 8)
 #define BTRFS_FEATURE_INCOMPAT_NO_HOLES (1ULL << 9)
 #define BTRFS_FEATURE_INCOMPAT_METADATA_UUID (1ULL << 10)
+#define BTRFS_FEATURE_INCOMPAT_RAID1C34 (1ULL << 11)
 struct btrfs_ioctl_feature_flags {
   __u64 compat_flags;
   __u64 compat_ro_flags;
@@ -452,7 +453,9 @@
   BTRFS_ERROR_DEV_TGT_REPLACE,
   BTRFS_ERROR_DEV_MISSING_NOT_FOUND,
   BTRFS_ERROR_DEV_ONLY_WRITABLE,
-  BTRFS_ERROR_DEV_EXCL_RUN_IN_PROGRESS
+  BTRFS_ERROR_DEV_EXCL_RUN_IN_PROGRESS,
+  BTRFS_ERROR_DEV_RAID1C3_MIN_NOT_MET,
+  BTRFS_ERROR_DEV_RAID1C4_MIN_NOT_MET,
 };
 #define BTRFS_IOC_SNAP_CREATE _IOW(BTRFS_IOCTL_MAGIC, 1, struct btrfs_ioctl_vol_args)
 #define BTRFS_IOC_DEFRAG _IOW(BTRFS_IOCTL_MAGIC, 2, struct btrfs_ioctl_vol_args)
diff --git a/libc/kernel/uapi/linux/btrfs_tree.h b/libc/kernel/uapi/linux/btrfs_tree.h
index 5f58100..50ada36 100644
--- a/libc/kernel/uapi/linux/btrfs_tree.h
+++ b/libc/kernel/uapi/linux/btrfs_tree.h
@@ -94,6 +94,9 @@
 #define BTRFS_CSUM_SIZE 32
 enum btrfs_csum_type {
   BTRFS_CSUM_TYPE_CRC32 = 0,
+  BTRFS_CSUM_TYPE_XXHASH = 1,
+  BTRFS_CSUM_TYPE_SHA256 = 2,
+  BTRFS_CSUM_TYPE_BLAKE2 = 3,
 };
 #define BTRFS_FT_UNKNOWN 0
 #define BTRFS_FT_REG_FILE 1
@@ -322,10 +325,12 @@
   struct btrfs_disk_balance_args sys;
   __le64 unused[4];
 } __attribute__((__packed__));
-#define BTRFS_FILE_EXTENT_INLINE 0
-#define BTRFS_FILE_EXTENT_REG 1
-#define BTRFS_FILE_EXTENT_PREALLOC 2
-#define BTRFS_FILE_EXTENT_TYPES 2
+enum {
+  BTRFS_FILE_EXTENT_INLINE = 0,
+  BTRFS_FILE_EXTENT_REG = 1,
+  BTRFS_FILE_EXTENT_PREALLOC = 2,
+  BTRFS_NR_FILE_EXTENT_TYPES = 3,
+};
 struct btrfs_file_extent_item {
   __le64 generation;
   __le64 ram_bytes;
@@ -366,6 +371,8 @@
 #define BTRFS_BLOCK_GROUP_RAID10 (1ULL << 6)
 #define BTRFS_BLOCK_GROUP_RAID5 (1ULL << 7)
 #define BTRFS_BLOCK_GROUP_RAID6 (1ULL << 8)
+#define BTRFS_BLOCK_GROUP_RAID1C3 (1ULL << 9)
+#define BTRFS_BLOCK_GROUP_RAID1C4 (1ULL << 10)
 #define BTRFS_BLOCK_GROUP_RESERVED (BTRFS_AVAIL_ALLOC_BIT_SINGLE | BTRFS_SPACE_INFO_GLOBAL_RSV)
 enum btrfs_raid_types {
   BTRFS_RAID_RAID10,
@@ -375,12 +382,14 @@
   BTRFS_RAID_SINGLE,
   BTRFS_RAID_RAID5,
   BTRFS_RAID_RAID6,
+  BTRFS_RAID_RAID1C3,
+  BTRFS_RAID_RAID1C4,
   BTRFS_NR_RAID_TYPES
 };
 #define BTRFS_BLOCK_GROUP_TYPE_MASK (BTRFS_BLOCK_GROUP_DATA | BTRFS_BLOCK_GROUP_SYSTEM | BTRFS_BLOCK_GROUP_METADATA)
-#define BTRFS_BLOCK_GROUP_PROFILE_MASK (BTRFS_BLOCK_GROUP_RAID0 | BTRFS_BLOCK_GROUP_RAID1 | BTRFS_BLOCK_GROUP_RAID5 | BTRFS_BLOCK_GROUP_RAID6 | BTRFS_BLOCK_GROUP_DUP | BTRFS_BLOCK_GROUP_RAID10)
+#define BTRFS_BLOCK_GROUP_PROFILE_MASK (BTRFS_BLOCK_GROUP_RAID0 | BTRFS_BLOCK_GROUP_RAID1 | BTRFS_BLOCK_GROUP_RAID1C3 | BTRFS_BLOCK_GROUP_RAID1C4 | BTRFS_BLOCK_GROUP_RAID5 | BTRFS_BLOCK_GROUP_RAID6 | BTRFS_BLOCK_GROUP_DUP | BTRFS_BLOCK_GROUP_RAID10)
 #define BTRFS_BLOCK_GROUP_RAID56_MASK (BTRFS_BLOCK_GROUP_RAID5 | BTRFS_BLOCK_GROUP_RAID6)
-#define BTRFS_BLOCK_GROUP_RAID1_MASK (BTRFS_BLOCK_GROUP_RAID1)
+#define BTRFS_BLOCK_GROUP_RAID1_MASK (BTRFS_BLOCK_GROUP_RAID1 | BTRFS_BLOCK_GROUP_RAID1C3 | BTRFS_BLOCK_GROUP_RAID1C4)
 #define BTRFS_AVAIL_ALLOC_BIT_SINGLE (1ULL << 48)
 #define BTRFS_SPACE_INFO_GLOBAL_RSV (1ULL << 49)
 #define BTRFS_EXTENDED_PROFILE_MASK (BTRFS_BLOCK_GROUP_PROFILE_MASK | BTRFS_AVAIL_ALLOC_BIT_SINGLE)
diff --git a/libc/kernel/uapi/linux/cec.h b/libc/kernel/uapi/linux/cec.h
index a3aa2d6..238fa0a 100644
--- a/libc/kernel/uapi/linux/cec.h
+++ b/libc/kernel/uapi/linux/cec.h
@@ -107,6 +107,7 @@
 #define CEC_CAP_MONITOR_ALL (1 << 5)
 #define CEC_CAP_NEEDS_HPD (1 << 6)
 #define CEC_CAP_MONITOR_PIN (1 << 7)
+#define CEC_CAP_CONNECTOR_INFO (1 << 8)
 struct cec_caps {
   char driver[32];
   char name[32];
@@ -130,6 +131,19 @@
 #define CEC_LOG_ADDRS_FL_ALLOW_UNREG_FALLBACK (1 << 0)
 #define CEC_LOG_ADDRS_FL_ALLOW_RC_PASSTHRU (1 << 1)
 #define CEC_LOG_ADDRS_FL_CDC_ONLY (1 << 2)
+struct cec_drm_connector_info {
+  __u32 card_no;
+  __u32 connector_id;
+};
+#define CEC_CONNECTOR_TYPE_NO_CONNECTOR 0
+#define CEC_CONNECTOR_TYPE_DRM 1
+struct cec_connector_info {
+  __u32 type;
+  union {
+    struct cec_drm_connector_info drm;
+    __u32 raw[16];
+  };
+};
 #define CEC_EVENT_STATE_CHANGE 1
 #define CEC_EVENT_LOST_MSGS 2
 #define CEC_EVENT_PIN_CEC_LOW 3
@@ -143,6 +157,7 @@
 struct cec_event_state_change {
   __u16 phys_addr;
   __u16 log_addr_mask;
+  __u16 have_conn_info;
 };
 struct cec_event_lost_msgs {
   __u32 lost_msgs;
@@ -167,6 +182,7 @@
 #define CEC_DQEVENT _IOWR('a', 7, struct cec_event)
 #define CEC_G_MODE _IOR('a', 8, __u32)
 #define CEC_S_MODE _IOW('a', 9, __u32)
+#define CEC_ADAP_G_CONNECTOR_INFO _IOR('a', 10, struct cec_connector_info)
 #define CEC_MSG_ACTIVE_SOURCE 0x82
 #define CEC_MSG_IMAGE_VIEW_ON 0x04
 #define CEC_MSG_TEXT_VIEW_ON 0x0d
@@ -370,8 +386,8 @@
 #define CEC_MSG_SELECT_ANALOGUE_SERVICE 0x92
 #define CEC_MSG_SELECT_DIGITAL_SERVICE 0x93
 #define CEC_MSG_TUNER_DEVICE_STATUS 0x07
-#define CEC_OP_REC_FLAG_USED 0
-#define CEC_OP_REC_FLAG_NOT_USED 1
+#define CEC_OP_REC_FLAG_NOT_USED 0
+#define CEC_OP_REC_FLAG_USED 1
 #define CEC_OP_TUNER_DISPLAY_INFO_DIGITAL 0
 #define CEC_OP_TUNER_DISPLAY_INFO_NONE 1
 #define CEC_OP_TUNER_DISPLAY_INFO_ANALOGUE 2
@@ -397,6 +413,94 @@
 #define CEC_OP_MENU_STATE_ACTIVATED 0x00
 #define CEC_OP_MENU_STATE_DEACTIVATED 0x01
 #define CEC_MSG_USER_CONTROL_PRESSED 0x44
+#define CEC_OP_UI_CMD_SELECT 0x00
+#define CEC_OP_UI_CMD_UP 0x01
+#define CEC_OP_UI_CMD_DOWN 0x02
+#define CEC_OP_UI_CMD_LEFT 0x03
+#define CEC_OP_UI_CMD_RIGHT 0x04
+#define CEC_OP_UI_CMD_RIGHT_UP 0x05
+#define CEC_OP_UI_CMD_RIGHT_DOWN 0x06
+#define CEC_OP_UI_CMD_LEFT_UP 0x07
+#define CEC_OP_UI_CMD_LEFT_DOWN 0x08
+#define CEC_OP_UI_CMD_DEVICE_ROOT_MENU 0x09
+#define CEC_OP_UI_CMD_DEVICE_SETUP_MENU 0x0a
+#define CEC_OP_UI_CMD_CONTENTS_MENU 0x0b
+#define CEC_OP_UI_CMD_FAVORITE_MENU 0x0c
+#define CEC_OP_UI_CMD_BACK 0x0d
+#define CEC_OP_UI_CMD_MEDIA_TOP_MENU 0x10
+#define CEC_OP_UI_CMD_MEDIA_CONTEXT_SENSITIVE_MENU 0x11
+#define CEC_OP_UI_CMD_NUMBER_ENTRY_MODE 0x1d
+#define CEC_OP_UI_CMD_NUMBER_11 0x1e
+#define CEC_OP_UI_CMD_NUMBER_12 0x1f
+#define CEC_OP_UI_CMD_NUMBER_0_OR_NUMBER_10 0x20
+#define CEC_OP_UI_CMD_NUMBER_1 0x21
+#define CEC_OP_UI_CMD_NUMBER_2 0x22
+#define CEC_OP_UI_CMD_NUMBER_3 0x23
+#define CEC_OP_UI_CMD_NUMBER_4 0x24
+#define CEC_OP_UI_CMD_NUMBER_5 0x25
+#define CEC_OP_UI_CMD_NUMBER_6 0x26
+#define CEC_OP_UI_CMD_NUMBER_7 0x27
+#define CEC_OP_UI_CMD_NUMBER_8 0x28
+#define CEC_OP_UI_CMD_NUMBER_9 0x29
+#define CEC_OP_UI_CMD_DOT 0x2a
+#define CEC_OP_UI_CMD_ENTER 0x2b
+#define CEC_OP_UI_CMD_CLEAR 0x2c
+#define CEC_OP_UI_CMD_NEXT_FAVORITE 0x2f
+#define CEC_OP_UI_CMD_CHANNEL_UP 0x30
+#define CEC_OP_UI_CMD_CHANNEL_DOWN 0x31
+#define CEC_OP_UI_CMD_PREVIOUS_CHANNEL 0x32
+#define CEC_OP_UI_CMD_SOUND_SELECT 0x33
+#define CEC_OP_UI_CMD_INPUT_SELECT 0x34
+#define CEC_OP_UI_CMD_DISPLAY_INFORMATION 0x35
+#define CEC_OP_UI_CMD_HELP 0x36
+#define CEC_OP_UI_CMD_PAGE_UP 0x37
+#define CEC_OP_UI_CMD_PAGE_DOWN 0x38
+#define CEC_OP_UI_CMD_POWER 0x40
+#define CEC_OP_UI_CMD_VOLUME_UP 0x41
+#define CEC_OP_UI_CMD_VOLUME_DOWN 0x42
+#define CEC_OP_UI_CMD_MUTE 0x43
+#define CEC_OP_UI_CMD_PLAY 0x44
+#define CEC_OP_UI_CMD_STOP 0x45
+#define CEC_OP_UI_CMD_PAUSE 0x46
+#define CEC_OP_UI_CMD_RECORD 0x47
+#define CEC_OP_UI_CMD_REWIND 0x48
+#define CEC_OP_UI_CMD_FAST_FORWARD 0x49
+#define CEC_OP_UI_CMD_EJECT 0x4a
+#define CEC_OP_UI_CMD_SKIP_FORWARD 0x4b
+#define CEC_OP_UI_CMD_SKIP_BACKWARD 0x4c
+#define CEC_OP_UI_CMD_STOP_RECORD 0x4d
+#define CEC_OP_UI_CMD_PAUSE_RECORD 0x4e
+#define CEC_OP_UI_CMD_ANGLE 0x50
+#define CEC_OP_UI_CMD_SUB_PICTURE 0x51
+#define CEC_OP_UI_CMD_VIDEO_ON_DEMAND 0x52
+#define CEC_OP_UI_CMD_ELECTRONIC_PROGRAM_GUIDE 0x53
+#define CEC_OP_UI_CMD_TIMER_PROGRAMMING 0x54
+#define CEC_OP_UI_CMD_INITIAL_CONFIGURATION 0x55
+#define CEC_OP_UI_CMD_SELECT_BROADCAST_TYPE 0x56
+#define CEC_OP_UI_CMD_SELECT_SOUND_PRESENTATION 0x57
+#define CEC_OP_UI_CMD_AUDIO_DESCRIPTION 0x58
+#define CEC_OP_UI_CMD_INTERNET 0x59
+#define CEC_OP_UI_CMD_3D_MODE 0x5a
+#define CEC_OP_UI_CMD_PLAY_FUNCTION 0x60
+#define CEC_OP_UI_CMD_PAUSE_PLAY_FUNCTION 0x61
+#define CEC_OP_UI_CMD_RECORD_FUNCTION 0x62
+#define CEC_OP_UI_CMD_PAUSE_RECORD_FUNCTION 0x63
+#define CEC_OP_UI_CMD_STOP_FUNCTION 0x64
+#define CEC_OP_UI_CMD_MUTE_FUNCTION 0x65
+#define CEC_OP_UI_CMD_RESTORE_VOLUME_FUNCTION 0x66
+#define CEC_OP_UI_CMD_TUNE_FUNCTION 0x67
+#define CEC_OP_UI_CMD_SELECT_MEDIA_FUNCTION 0x68
+#define CEC_OP_UI_CMD_SELECT_AV_INPUT_FUNCTION 0x69
+#define CEC_OP_UI_CMD_SELECT_AUDIO_INPUT_FUNCTION 0x6a
+#define CEC_OP_UI_CMD_POWER_TOGGLE_FUNCTION 0x6b
+#define CEC_OP_UI_CMD_POWER_OFF_FUNCTION 0x6c
+#define CEC_OP_UI_CMD_POWER_ON_FUNCTION 0x6d
+#define CEC_OP_UI_CMD_F1_BLUE 0x71
+#define CEC_OP_UI_CMD_F2_RED 0x72
+#define CEC_OP_UI_CMD_F3_GREEN 0x73
+#define CEC_OP_UI_CMD_F4_YELLOW 0x74
+#define CEC_OP_UI_CMD_F5 0x75
+#define CEC_OP_UI_CMD_DATA 0x76
 #define CEC_OP_UI_BCAST_TYPE_TOGGLE_ALL 0x00
 #define CEC_OP_UI_BCAST_TYPE_TOGGLE_DIG_ANA 0x01
 #define CEC_OP_UI_BCAST_TYPE_ANALOGUE 0x10
diff --git a/libc/kernel/uapi/linux/chio.h b/libc/kernel/uapi/linux/chio.h
index 51425fa..725e760 100644
--- a/libc/kernel/uapi/linux/chio.h
+++ b/libc/kernel/uapi/linux/chio.h
@@ -16,6 +16,8 @@
  ***
  ****************************************************************************
  ****************************************************************************/
+#ifndef _UAPI_LINUX_CHIO_H
+#define _UAPI_LINUX_CHIO_H
 #define CHET_MT 0
 #define CHET_ST 1
 #define CHET_IE 2
@@ -116,3 +118,4 @@
 #define CHIOINITELEM _IO('c', 17)
 #define CHIOSVOLTAG _IOW('c', 18, struct changer_set_voltag)
 #define CHIOGVPARAMS _IOR('c', 19, struct changer_vendor_params)
+#endif
diff --git a/libc/kernel/uapi/linux/cyclades.h b/libc/kernel/uapi/linux/cyclades.h
index 50ea706..60bc4af 100644
--- a/libc/kernel/uapi/linux/cyclades.h
+++ b/libc/kernel/uapi/linux/cyclades.h
@@ -26,9 +26,9 @@
   unsigned long char_last;
 };
 struct cyclades_idle_stats {
-  __kernel_time_t in_use;
-  __kernel_time_t recv_idle;
-  __kernel_time_t xmit_idle;
+  __kernel_old_time_t in_use;
+  __kernel_old_time_t recv_idle;
+  __kernel_old_time_t xmit_idle;
   unsigned long recv_bytes;
   unsigned long xmit_bytes;
   unsigned long overruns;
diff --git a/libc/kernel/uapi/linux/devlink.h b/libc/kernel/uapi/linux/devlink.h
index beab9fd..b08fa8a 100644
--- a/libc/kernel/uapi/linux/devlink.h
+++ b/libc/kernel/uapi/linux/devlink.h
@@ -307,6 +307,9 @@
   DEVLINK_ATTR_TRAP_GROUP_NAME,
   DEVLINK_ATTR_RELOAD_FAILED,
   DEVLINK_ATTR_HEALTH_REPORTER_DUMP_TS_NS,
+  DEVLINK_ATTR_NETNS_FD,
+  DEVLINK_ATTR_NETNS_PID,
+  DEVLINK_ATTR_NETNS_ID,
   __DEVLINK_ATTR_MAX,
   DEVLINK_ATTR_MAX = __DEVLINK_ATTR_MAX - 1
 };
diff --git a/libc/kernel/uapi/linux/ethtool.h b/libc/kernel/uapi/linux/ethtool.h
index 28209e3..cc951d1 100644
--- a/libc/kernel/uapi/linux/ethtool.h
+++ b/libc/kernel/uapi/linux/ethtool.h
@@ -610,6 +610,11 @@
   ETHTOOL_LINK_MODE_200000baseCR4_Full_BIT = 66,
   ETHTOOL_LINK_MODE_100baseT1_Full_BIT = 67,
   ETHTOOL_LINK_MODE_1000baseT1_Full_BIT = 68,
+  ETHTOOL_LINK_MODE_400000baseKR8_Full_BIT = 69,
+  ETHTOOL_LINK_MODE_400000baseSR8_Full_BIT = 70,
+  ETHTOOL_LINK_MODE_400000baseLR8_ER8_FR8_Full_BIT = 71,
+  ETHTOOL_LINK_MODE_400000baseDR8_Full_BIT = 72,
+  ETHTOOL_LINK_MODE_400000baseCR8_Full_BIT = 73,
   __ETHTOOL_LINK_MODE_MASK_NBITS
 };
 #define __ETHTOOL_LINK_MODE_LEGACY_MASK(base_name) (1UL << (ETHTOOL_LINK_MODE_ ##base_name ##_BIT))
@@ -689,6 +694,7 @@
 #define SPEED_56000 56000
 #define SPEED_100000 100000
 #define SPEED_200000 200000
+#define SPEED_400000 400000
 #define SPEED_UNKNOWN - 1
 #define DUPLEX_HALF 0x00
 #define DUPLEX_FULL 0x01
diff --git a/libc/kernel/uapi/linux/fcntl.h b/libc/kernel/uapi/linux/fcntl.h
index e2045c8..d0f19c8 100644
--- a/libc/kernel/uapi/linux/fcntl.h
+++ b/libc/kernel/uapi/linux/fcntl.h
@@ -37,12 +37,13 @@
 #define F_SET_RW_HINT (F_LINUX_SPECIFIC_BASE + 12)
 #define F_GET_FILE_RW_HINT (F_LINUX_SPECIFIC_BASE + 13)
 #define F_SET_FILE_RW_HINT (F_LINUX_SPECIFIC_BASE + 14)
-#define RWF_WRITE_LIFE_NOT_SET 0
+#define RWH_WRITE_LIFE_NOT_SET 0
 #define RWH_WRITE_LIFE_NONE 1
 #define RWH_WRITE_LIFE_SHORT 2
 #define RWH_WRITE_LIFE_MEDIUM 3
 #define RWH_WRITE_LIFE_LONG 4
 #define RWH_WRITE_LIFE_EXTREME 5
+#define RWF_WRITE_LIFE_NOT_SET RWH_WRITE_LIFE_NOT_SET
 #define DN_ACCESS 0x00000001
 #define DN_MODIFY 0x00000002
 #define DN_CREATE 0x00000004
diff --git a/libc/kernel/uapi/linux/fscrypt.h b/libc/kernel/uapi/linux/fscrypt.h
index 75a554e..f91ce85 100644
--- a/libc/kernel/uapi/linux/fscrypt.h
+++ b/libc/kernel/uapi/linux/fscrypt.h
@@ -83,7 +83,9 @@
 struct fscrypt_add_key_arg {
   struct fscrypt_key_specifier key_spec;
   __u32 raw_size;
-  __u32 __reserved[9];
+  __u32 __reserved[8];
+#define __FSCRYPT_ADD_KEY_FLAG_HW_WRAPPED 0x00000001
+  __u32 __flags;
   __u8 raw[];
 };
 struct fscrypt_remove_key_arg {
diff --git a/libc/kernel/uapi/linux/gen_stats.h b/libc/kernel/uapi/linux/gen_stats.h
index 0b6c228..2df6616 100644
--- a/libc/kernel/uapi/linux/gen_stats.h
+++ b/libc/kernel/uapi/linux/gen_stats.h
@@ -28,6 +28,7 @@
   TCA_STATS_RATE_EST64,
   TCA_STATS_PAD,
   TCA_STATS_BASIC_HW,
+  TCA_STATS_PKT64,
   __TCA_STATS_MAX,
 };
 #define TCA_STATS_MAX (__TCA_STATS_MAX - 1)
@@ -35,10 +36,6 @@
   __u64 bytes;
   __u32 packets;
 };
-struct gnet_stats_basic_packed {
-  __u64 bytes;
-  __u32 packets;
-} __attribute__((packed));
 struct gnet_stats_rate_est {
   __u32 bps;
   __u32 pps;
diff --git a/libc/kernel/uapi/linux/gpio.h b/libc/kernel/uapi/linux/gpio.h
index 1e03277..773f409 100644
--- a/libc/kernel/uapi/linux/gpio.h
+++ b/libc/kernel/uapi/linux/gpio.h
@@ -30,6 +30,9 @@
 #define GPIOLINE_FLAG_ACTIVE_LOW (1UL << 2)
 #define GPIOLINE_FLAG_OPEN_DRAIN (1UL << 3)
 #define GPIOLINE_FLAG_OPEN_SOURCE (1UL << 4)
+#define GPIOLINE_FLAG_BIAS_PULL_UP (1UL << 5)
+#define GPIOLINE_FLAG_BIAS_PULL_DOWN (1UL << 6)
+#define GPIOLINE_FLAG_BIAS_DISABLE (1UL << 7)
 struct gpioline_info {
   __u32 line_offset;
   __u32 flags;
@@ -42,6 +45,9 @@
 #define GPIOHANDLE_REQUEST_ACTIVE_LOW (1UL << 2)
 #define GPIOHANDLE_REQUEST_OPEN_DRAIN (1UL << 3)
 #define GPIOHANDLE_REQUEST_OPEN_SOURCE (1UL << 4)
+#define GPIOHANDLE_REQUEST_BIAS_PULL_UP (1UL << 5)
+#define GPIOHANDLE_REQUEST_BIAS_PULL_DOWN (1UL << 6)
+#define GPIOHANDLE_REQUEST_BIAS_DISABLE (1UL << 7)
 struct gpiohandle_request {
   __u32 lineoffsets[GPIOHANDLES_MAX];
   __u32 flags;
@@ -50,6 +56,12 @@
   __u32 lines;
   int fd;
 };
+struct gpiohandle_config {
+  __u32 flags;
+  __u8 default_values[GPIOHANDLES_MAX];
+  __u32 padding[4];
+};
+#define GPIOHANDLE_SET_CONFIG_IOCTL _IOWR(0xB4, 0x0a, struct gpiohandle_config)
 struct gpiohandle_data {
   __u8 values[GPIOHANDLES_MAX];
 };
diff --git a/libc/kernel/uapi/linux/if.h b/libc/kernel/uapi/linux/if.h
index 15de690..12967f7 100644
--- a/libc/kernel/uapi/linux/if.h
+++ b/libc/kernel/uapi/linux/if.h
@@ -27,6 +27,7 @@
 #define IFNAMSIZ 16
 #endif
 #define IFALIASZ 256
+#define ALTIFNAMSIZ 128
 #include <linux/hdlc/ioctl.h>
 #if __UAPI_DEF_IF_NET_DEVICE_FLAGS_LOWER_UP_DORMANT_ECHO != 0 || __UAPI_DEF_IF_NET_DEVICE_FLAGS != 0
 enum net_device_flags {
diff --git a/libc/kernel/uapi/linux/if_link.h b/libc/kernel/uapi/linux/if_link.h
index 45ef92b..7843fb5 100644
--- a/libc/kernel/uapi/linux/if_link.h
+++ b/libc/kernel/uapi/linux/if_link.h
@@ -144,6 +144,8 @@
   IFLA_NEW_IFINDEX,
   IFLA_MIN_MTU,
   IFLA_MAX_MTU,
+  IFLA_PROP_LIST,
+  IFLA_ALT_IFNAME,
   __IFLA_MAX
 };
 #define IFLA_MAX (__IFLA_MAX - 1)
diff --git a/libc/kernel/uapi/linux/input-event-codes.h b/libc/kernel/uapi/linux/input-event-codes.h
index 0230c11..ee0e92f 100644
--- a/libc/kernel/uapi/linux/input-event-codes.h
+++ b/libc/kernel/uapi/linux/input-event-codes.h
@@ -571,6 +571,48 @@
 #define KEY_SLOWREVERSE 0x276
 #define KEY_DATA 0x277
 #define KEY_ONSCREEN_KEYBOARD 0x278
+#define KEY_PRIVACY_SCREEN_TOGGLE 0x279
+#define KEY_MACRO1 0x290
+#define KEY_MACRO2 0x291
+#define KEY_MACRO3 0x292
+#define KEY_MACRO4 0x293
+#define KEY_MACRO5 0x294
+#define KEY_MACRO6 0x295
+#define KEY_MACRO7 0x296
+#define KEY_MACRO8 0x297
+#define KEY_MACRO9 0x298
+#define KEY_MACRO10 0x299
+#define KEY_MACRO11 0x29a
+#define KEY_MACRO12 0x29b
+#define KEY_MACRO13 0x29c
+#define KEY_MACRO14 0x29d
+#define KEY_MACRO15 0x29e
+#define KEY_MACRO16 0x29f
+#define KEY_MACRO17 0x2a0
+#define KEY_MACRO18 0x2a1
+#define KEY_MACRO19 0x2a2
+#define KEY_MACRO20 0x2a3
+#define KEY_MACRO21 0x2a4
+#define KEY_MACRO22 0x2a5
+#define KEY_MACRO23 0x2a6
+#define KEY_MACRO24 0x2a7
+#define KEY_MACRO25 0x2a8
+#define KEY_MACRO26 0x2a9
+#define KEY_MACRO27 0x2aa
+#define KEY_MACRO28 0x2ab
+#define KEY_MACRO29 0x2ac
+#define KEY_MACRO30 0x2ad
+#define KEY_MACRO_RECORD_START 0x2b0
+#define KEY_MACRO_RECORD_STOP 0x2b1
+#define KEY_MACRO_PRESET_CYCLE 0x2b2
+#define KEY_MACRO_PRESET1 0x2b3
+#define KEY_MACRO_PRESET2 0x2b4
+#define KEY_MACRO_PRESET3 0x2b5
+#define KEY_KBD_LCD_MENU1 0x2b8
+#define KEY_KBD_LCD_MENU2 0x2b9
+#define KEY_KBD_LCD_MENU3 0x2ba
+#define KEY_KBD_LCD_MENU4 0x2bb
+#define KEY_KBD_LCD_MENU5 0x2bc
 #define BTN_TRIGGER_HAPPY 0x2c0
 #define BTN_TRIGGER_HAPPY1 0x2c0
 #define BTN_TRIGGER_HAPPY2 0x2c1
diff --git a/libc/kernel/uapi/linux/input.h b/libc/kernel/uapi/linux/input.h
index f138f64..fe17226 100644
--- a/libc/kernel/uapi/linux/input.h
+++ b/libc/kernel/uapi/linux/input.h
@@ -32,6 +32,7 @@
   __kernel_ulong_t __sec;
 #if defined(__sparc__) && defined(__arch64__)
   unsigned int __usec;
+  unsigned int __pad;
 #else
   __kernel_ulong_t __usec;
 #endif
diff --git a/libc/kernel/uapi/linux/io_uring.h b/libc/kernel/uapi/linux/io_uring.h
index 7ae31df..0639a80 100644
--- a/libc/kernel/uapi/linux/io_uring.h
+++ b/libc/kernel/uapi/linux/io_uring.h
@@ -25,7 +25,10 @@
   __u8 flags;
   __u16 ioprio;
   __s32 fd;
-  __u64 off;
+  union {
+    __u64 off;
+    __u64 addr2;
+  };
   __u64 addr;
   __u32 len;
   union {
@@ -35,6 +38,8 @@
     __u32 sync_range_flags;
     __u32 msg_flags;
     __u32 timeout_flags;
+    __u32 accept_flags;
+    __u32 cancel_flags;
   };
   __u64 user_data;
   union {
@@ -45,22 +50,33 @@
 #define IOSQE_FIXED_FILE (1U << 0)
 #define IOSQE_IO_DRAIN (1U << 1)
 #define IOSQE_IO_LINK (1U << 2)
+#define IOSQE_IO_HARDLINK (1U << 3)
 #define IORING_SETUP_IOPOLL (1U << 0)
 #define IORING_SETUP_SQPOLL (1U << 1)
 #define IORING_SETUP_SQ_AFF (1U << 2)
-#define IORING_OP_NOP 0
-#define IORING_OP_READV 1
-#define IORING_OP_WRITEV 2
-#define IORING_OP_FSYNC 3
-#define IORING_OP_READ_FIXED 4
-#define IORING_OP_WRITE_FIXED 5
-#define IORING_OP_POLL_ADD 6
-#define IORING_OP_POLL_REMOVE 7
-#define IORING_OP_SYNC_FILE_RANGE 8
-#define IORING_OP_SENDMSG 9
-#define IORING_OP_RECVMSG 10
-#define IORING_OP_TIMEOUT 11
+#define IORING_SETUP_CQSIZE (1U << 3)
+enum {
+  IORING_OP_NOP,
+  IORING_OP_READV,
+  IORING_OP_WRITEV,
+  IORING_OP_FSYNC,
+  IORING_OP_READ_FIXED,
+  IORING_OP_WRITE_FIXED,
+  IORING_OP_POLL_ADD,
+  IORING_OP_POLL_REMOVE,
+  IORING_OP_SYNC_FILE_RANGE,
+  IORING_OP_SENDMSG,
+  IORING_OP_RECVMSG,
+  IORING_OP_TIMEOUT,
+  IORING_OP_TIMEOUT_REMOVE,
+  IORING_OP_ACCEPT,
+  IORING_OP_ASYNC_CANCEL,
+  IORING_OP_LINK_TIMEOUT,
+  IORING_OP_CONNECT,
+  IORING_OP_LAST,
+};
 #define IORING_FSYNC_DATASYNC (1U << 0)
+#define IORING_TIMEOUT_ABS (1U << 0)
 struct io_uring_cqe {
   __u64 user_data;
   __s32 res;
@@ -104,10 +120,18 @@
   struct io_cqring_offsets cq_off;
 };
 #define IORING_FEAT_SINGLE_MMAP (1U << 0)
+#define IORING_FEAT_NODROP (1U << 1)
+#define IORING_FEAT_SUBMIT_STABLE (1U << 2)
 #define IORING_REGISTER_BUFFERS 0
 #define IORING_UNREGISTER_BUFFERS 1
 #define IORING_REGISTER_FILES 2
 #define IORING_UNREGISTER_FILES 3
 #define IORING_REGISTER_EVENTFD 4
 #define IORING_UNREGISTER_EVENTFD 5
+#define IORING_REGISTER_FILES_UPDATE 6
+struct io_uring_files_update {
+  __u32 offset;
+  __u32 resv;
+  __aligned_u64 fds;
+};
 #endif
diff --git a/libc/kernel/uapi/linux/iommu.h b/libc/kernel/uapi/linux/iommu.h
index 3c7849a..54452c3 100644
--- a/libc/kernel/uapi/linux/iommu.h
+++ b/libc/kernel/uapi/linux/iommu.h
@@ -83,4 +83,70 @@
   __u32 grpid;
   __u32 code;
 };
+enum iommu_inv_granularity {
+  IOMMU_INV_GRANU_DOMAIN,
+  IOMMU_INV_GRANU_PASID,
+  IOMMU_INV_GRANU_ADDR,
+  IOMMU_INV_GRANU_NR,
+};
+struct iommu_inv_addr_info {
+#define IOMMU_INV_ADDR_FLAGS_PASID (1 << 0)
+#define IOMMU_INV_ADDR_FLAGS_ARCHID (1 << 1)
+#define IOMMU_INV_ADDR_FLAGS_LEAF (1 << 2)
+  __u32 flags;
+  __u32 archid;
+  __u64 pasid;
+  __u64 addr;
+  __u64 granule_size;
+  __u64 nb_granules;
+};
+struct iommu_inv_pasid_info {
+#define IOMMU_INV_PASID_FLAGS_PASID (1 << 0)
+#define IOMMU_INV_PASID_FLAGS_ARCHID (1 << 1)
+  __u32 flags;
+  __u32 archid;
+  __u64 pasid;
+};
+struct iommu_cache_invalidate_info {
+#define IOMMU_CACHE_INVALIDATE_INFO_VERSION_1 1
+  __u32 version;
+#define IOMMU_CACHE_INV_TYPE_IOTLB (1 << 0)
+#define IOMMU_CACHE_INV_TYPE_DEV_IOTLB (1 << 1)
+#define IOMMU_CACHE_INV_TYPE_PASID (1 << 2)
+#define IOMMU_CACHE_INV_TYPE_NR (3)
+  __u8 cache;
+  __u8 granularity;
+  __u8 padding[2];
+  union {
+    struct iommu_inv_pasid_info pasid_info;
+    struct iommu_inv_addr_info addr_info;
+  };
+};
+struct iommu_gpasid_bind_data_vtd {
+#define IOMMU_SVA_VTD_GPASID_SRE (1 << 0)
+#define IOMMU_SVA_VTD_GPASID_EAFE (1 << 1)
+#define IOMMU_SVA_VTD_GPASID_PCD (1 << 2)
+#define IOMMU_SVA_VTD_GPASID_PWT (1 << 3)
+#define IOMMU_SVA_VTD_GPASID_EMTE (1 << 4)
+#define IOMMU_SVA_VTD_GPASID_CD (1 << 5)
+  __u64 flags;
+  __u32 pat;
+  __u32 emt;
+};
+struct iommu_gpasid_bind_data {
+#define IOMMU_GPASID_BIND_VERSION_1 1
+  __u32 version;
+#define IOMMU_PASID_FORMAT_INTEL_VTD 1
+  __u32 format;
+#define IOMMU_SVA_GPASID_VAL (1 << 0)
+  __u64 flags;
+  __u64 gpgd;
+  __u64 hpasid;
+  __u64 gpasid;
+  __u32 addr_width;
+  __u8 padding[12];
+  union {
+    struct iommu_gpasid_bind_data_vtd vtd;
+  };
+};
 #endif
diff --git a/libc/kernel/uapi/linux/kcov.h b/libc/kernel/uapi/linux/kcov.h
index 40f9912..cf2660b 100644
--- a/libc/kernel/uapi/linux/kcov.h
+++ b/libc/kernel/uapi/linux/kcov.h
@@ -19,9 +19,18 @@
 #ifndef _LINUX_KCOV_IOCTLS_H
 #define _LINUX_KCOV_IOCTLS_H
 #include <linux/types.h>
+struct kcov_remote_arg {
+  __u32 trace_mode;
+  __u32 area_size;
+  __u32 num_handles;
+  __aligned_u64 common_handle;
+  __aligned_u64 handles[0];
+};
+#define KCOV_REMOTE_MAX_HANDLES 0x100
 #define KCOV_INIT_TRACE _IOR('c', 1, unsigned long)
 #define KCOV_ENABLE _IO('c', 100)
 #define KCOV_DISABLE _IO('c', 101)
+#define KCOV_REMOTE_ENABLE _IOW('c', 102, struct kcov_remote_arg)
 enum {
   KCOV_TRACE_PC = 0,
   KCOV_TRACE_CMP = 1,
@@ -29,4 +38,8 @@
 #define KCOV_CMP_CONST (1 << 0)
 #define KCOV_CMP_SIZE(n) ((n) << 1)
 #define KCOV_CMP_MASK KCOV_CMP_SIZE(3)
+#define KCOV_SUBSYSTEM_COMMON (0x00ull << 56)
+#define KCOV_SUBSYSTEM_USB (0x01ull << 56)
+#define KCOV_SUBSYSTEM_MASK (0xffull << 56)
+#define KCOV_INSTANCE_MASK (0xffffffffull)
 #endif
diff --git a/libc/kernel/uapi/linux/kvm.h b/libc/kernel/uapi/linux/kvm.h
index 358a168..b865936 100644
--- a/libc/kernel/uapi/linux/kvm.h
+++ b/libc/kernel/uapi/linux/kvm.h
@@ -182,6 +182,7 @@
 #define KVM_EXIT_S390_STSI 25
 #define KVM_EXIT_IOAPIC_EOI 26
 #define KVM_EXIT_HYPERV 27
+#define KVM_EXIT_ARM_NISV 28
 #define KVM_INTERNAL_ERROR_EMULATION 1
 #define KVM_INTERNAL_ERROR_SIMUL_EX 2
 #define KVM_INTERNAL_ERROR_DELIVERY_EV 3
@@ -304,6 +305,10 @@
       __u8 vector;
     } eoi;
     struct kvm_hyperv_exit hyperv;
+    struct {
+      __u64 esr_iss;
+      __u64 fault_ipa;
+    } arm_nisv;
     char padding[256];
   };
 #define SYNC_REGS_SIZE_BYTES 2048
@@ -780,6 +785,9 @@
 #define KVM_CAP_PMU_EVENT_FILTER 173
 #define KVM_CAP_ARM_IRQ_LINE_LAYOUT_2 174
 #define KVM_CAP_HYPERV_DIRECT_TLBFLUSH 175
+#define KVM_CAP_PPC_GUEST_DEBUG_SSTEP 176
+#define KVM_CAP_ARM_NISV_TO_USER 177
+#define KVM_CAP_ARM_INJECT_EXT_DABT 178
 #ifdef KVM_CAP_IRQ_ROUTING
 struct kvm_irq_routing_irqchip {
   __u32 irqchip;
@@ -954,6 +962,8 @@
 #define KVM_DEV_TYPE_ARM_VGIC_ITS KVM_DEV_TYPE_ARM_VGIC_ITS
   KVM_DEV_TYPE_XIVE,
 #define KVM_DEV_TYPE_XIVE KVM_DEV_TYPE_XIVE
+  KVM_DEV_TYPE_ARM_PV_TIME,
+#define KVM_DEV_TYPE_ARM_PV_TIME KVM_DEV_TYPE_ARM_PV_TIME
   KVM_DEV_TYPE_MAX,
 };
 struct kvm_vfio_spapr_tce {
@@ -1024,6 +1034,7 @@
 #define KVM_PPC_GET_RMMU_INFO _IOW(KVMIO, 0xb0, struct kvm_ppc_rmmu_info)
 #define KVM_PPC_GET_CPU_CHAR _IOR(KVMIO, 0xb1, struct kvm_ppc_cpu_char)
 #define KVM_SET_PMU_EVENT_FILTER _IOW(KVMIO, 0xb2, struct kvm_pmu_event_filter)
+#define KVM_PPC_SVM_OFF _IO(KVMIO, 0xb3)
 #define KVM_CREATE_DEVICE _IOWR(KVMIO, 0xe0, struct kvm_create_device)
 #define KVM_SET_DEVICE_ATTR _IOW(KVMIO, 0xe1, struct kvm_device_attr)
 #define KVM_GET_DEVICE_ATTR _IOW(KVMIO, 0xe2, struct kvm_device_attr)
diff --git a/libc/kernel/uapi/linux/lwtunnel.h b/libc/kernel/uapi/linux/lwtunnel.h
index 05cc4fd..f1e2ab8 100644
--- a/libc/kernel/uapi/linux/lwtunnel.h
+++ b/libc/kernel/uapi/linux/lwtunnel.h
@@ -40,6 +40,7 @@
   LWTUNNEL_IP_TOS,
   LWTUNNEL_IP_FLAGS,
   LWTUNNEL_IP_PAD,
+  LWTUNNEL_IP_OPTS,
   __LWTUNNEL_IP_MAX,
 };
 #define LWTUNNEL_IP_MAX (__LWTUNNEL_IP_MAX - 1)
@@ -52,10 +53,42 @@
   LWTUNNEL_IP6_TC,
   LWTUNNEL_IP6_FLAGS,
   LWTUNNEL_IP6_PAD,
+  LWTUNNEL_IP6_OPTS,
   __LWTUNNEL_IP6_MAX,
 };
 #define LWTUNNEL_IP6_MAX (__LWTUNNEL_IP6_MAX - 1)
 enum {
+  LWTUNNEL_IP_OPTS_UNSPEC,
+  LWTUNNEL_IP_OPTS_GENEVE,
+  LWTUNNEL_IP_OPTS_VXLAN,
+  LWTUNNEL_IP_OPTS_ERSPAN,
+  __LWTUNNEL_IP_OPTS_MAX,
+};
+#define LWTUNNEL_IP_OPTS_MAX (__LWTUNNEL_IP_OPTS_MAX - 1)
+enum {
+  LWTUNNEL_IP_OPT_GENEVE_UNSPEC,
+  LWTUNNEL_IP_OPT_GENEVE_CLASS,
+  LWTUNNEL_IP_OPT_GENEVE_TYPE,
+  LWTUNNEL_IP_OPT_GENEVE_DATA,
+  __LWTUNNEL_IP_OPT_GENEVE_MAX,
+};
+#define LWTUNNEL_IP_OPT_GENEVE_MAX (__LWTUNNEL_IP_OPT_GENEVE_MAX - 1)
+enum {
+  LWTUNNEL_IP_OPT_VXLAN_UNSPEC,
+  LWTUNNEL_IP_OPT_VXLAN_GBP,
+  __LWTUNNEL_IP_OPT_VXLAN_MAX,
+};
+#define LWTUNNEL_IP_OPT_VXLAN_MAX (__LWTUNNEL_IP_OPT_VXLAN_MAX - 1)
+enum {
+  LWTUNNEL_IP_OPT_ERSPAN_UNSPEC,
+  LWTUNNEL_IP_OPT_ERSPAN_VER,
+  LWTUNNEL_IP_OPT_ERSPAN_INDEX,
+  LWTUNNEL_IP_OPT_ERSPAN_DIR,
+  LWTUNNEL_IP_OPT_ERSPAN_HWID,
+  __LWTUNNEL_IP_OPT_ERSPAN_MAX,
+};
+#define LWTUNNEL_IP_OPT_ERSPAN_MAX (__LWTUNNEL_IP_OPT_ERSPAN_MAX - 1)
+enum {
   LWT_BPF_PROG_UNSPEC,
   LWT_BPF_PROG_FD,
   LWT_BPF_PROG_NAME,
diff --git a/libc/kernel/uapi/linux/magic.h b/libc/kernel/uapi/linux/magic.h
index ebbb58c..ca1daea 100644
--- a/libc/kernel/uapi/linux/magic.h
+++ b/libc/kernel/uapi/linux/magic.h
@@ -98,4 +98,5 @@
 #define ZSMALLOC_MAGIC 0x58295829
 #define DMA_BUF_MAGIC 0x444d4142
 #define Z3FOLD_MAGIC 0x33
+#define PPC_CMM_MAGIC 0xc7571590
 #endif
diff --git a/libc/kernel/uapi/linux/msg.h b/libc/kernel/uapi/linux/msg.h
index 20d8d4f..bb32b93 100644
--- a/libc/kernel/uapi/linux/msg.h
+++ b/libc/kernel/uapi/linux/msg.h
@@ -29,9 +29,9 @@
   struct __kernel_legacy_ipc_perm msg_perm;
   struct msg * msg_first;
   struct msg * msg_last;
-  __kernel_time_t msg_stime;
-  __kernel_time_t msg_rtime;
-  __kernel_time_t msg_ctime;
+  __kernel_old_time_t msg_stime;
+  __kernel_old_time_t msg_rtime;
+  __kernel_old_time_t msg_ctime;
   unsigned long msg_lcbytes;
   unsigned long msg_lqbytes;
   unsigned short msg_cbytes;
diff --git a/libc/kernel/uapi/linux/netfilter/ipset/ip_set.h b/libc/kernel/uapi/linux/netfilter/ipset/ip_set.h
index 2c5aeeb..a6e1bce 100644
--- a/libc/kernel/uapi/linux/netfilter/ipset/ip_set.h
+++ b/libc/kernel/uapi/linux/netfilter/ipset/ip_set.h
@@ -178,6 +178,8 @@
   IPSET_FLAG_WITH_FORCEADD = (1 << IPSET_FLAG_BIT_WITH_FORCEADD),
   IPSET_FLAG_BIT_WITH_SKBINFO = 6,
   IPSET_FLAG_WITH_SKBINFO = (1 << IPSET_FLAG_BIT_WITH_SKBINFO),
+  IPSET_FLAG_BIT_IFACE_WILDCARD = 7,
+  IPSET_FLAG_IFACE_WILDCARD = (1 << IPSET_FLAG_BIT_IFACE_WILDCARD),
   IPSET_FLAG_CADT_MAX = 15,
 };
 enum ipset_create_flags {
diff --git a/libc/kernel/uapi/linux/netfilter/nf_tables.h b/libc/kernel/uapi/linux/netfilter/nf_tables.h
index a0b1a08..2fe11b0 100644
--- a/libc/kernel/uapi/linux/netfilter/nf_tables.h
+++ b/libc/kernel/uapi/linux/netfilter/nf_tables.h
@@ -98,6 +98,7 @@
   NFTA_HOOK_HOOKNUM,
   NFTA_HOOK_PRIORITY,
   NFTA_HOOK_DEV,
+  NFTA_HOOK_DEVS,
   __NFTA_HOOK_MAX
 };
 #define NFTA_HOOK_MAX (__NFTA_HOOK_MAX - 1)
@@ -791,6 +792,7 @@
   NFTA_FLOWTABLE_USE,
   NFTA_FLOWTABLE_HANDLE,
   NFTA_FLOWTABLE_PAD,
+  NFTA_FLOWTABLE_FLAGS,
   __NFTA_FLOWTABLE_MAX
 };
 #define NFTA_FLOWTABLE_MAX (__NFTA_FLOWTABLE_MAX - 1)
diff --git a/libc/kernel/uapi/linux/netfilter/xt_sctp.h b/libc/kernel/uapi/linux/netfilter/xt_sctp.h
index 14adeb0..98dd0d1 100644
--- a/libc/kernel/uapi/linux/netfilter/xt_sctp.h
+++ b/libc/kernel/uapi/linux/netfilter/xt_sctp.h
@@ -43,10 +43,10 @@
   __u32 invflags;
 };
 #define bytes(type) (sizeof(type) * 8)
-#define SCTP_CHUNKMAP_SET(chunkmap,type) do { (chunkmap)[type / bytes(__u32)] |= 1 << (type % bytes(__u32)); } while(0)
-#define SCTP_CHUNKMAP_CLEAR(chunkmap,type) do { (chunkmap)[type / bytes(__u32)] &= ~(1 << (type % bytes(__u32))); } while(0)
+#define SCTP_CHUNKMAP_SET(chunkmap,type) do { (chunkmap)[type / bytes(__u32)] |= 1u << (type % bytes(__u32)); } while(0)
+#define SCTP_CHUNKMAP_CLEAR(chunkmap,type) do { (chunkmap)[type / bytes(__u32)] &= ~(1u << (type % bytes(__u32))); } while(0)
 #define SCTP_CHUNKMAP_IS_SET(chunkmap,type) \
-({ ((chunkmap)[type / bytes(__u32)] & (1 << (type % bytes(__u32)))) ? 1 : 0; \
+({ ((chunkmap)[type / bytes(__u32)] & (1u << (type % bytes(__u32)))) ? 1 : 0; \
 })
 #define SCTP_CHUNKMAP_RESET(chunkmap) memset((chunkmap), 0, sizeof(chunkmap))
 #define SCTP_CHUNKMAP_SET_ALL(chunkmap) memset((chunkmap), ~0U, sizeof(chunkmap))
diff --git a/libc/kernel/uapi/linux/netfilter_ipv4/ip_tables.h b/libc/kernel/uapi/linux/netfilter_ipv4/ip_tables.h
index a417d9e..033c519 100644
--- a/libc/kernel/uapi/linux/netfilter_ipv4/ip_tables.h
+++ b/libc/kernel/uapi/linux/netfilter_ipv4/ip_tables.h
@@ -121,6 +121,6 @@
   struct ipt_entry entrytable[0];
 };
 static __inline__ struct xt_entry_target * ipt_get_target(struct ipt_entry * e) {
-  return(void *) e + e->target_offset;
+  return(struct xt_entry_target *) ((char *) e + e->target_offset);
 }
 #endif
diff --git a/libc/kernel/uapi/linux/netfilter_ipv6/ip6_tables.h b/libc/kernel/uapi/linux/netfilter_ipv6/ip6_tables.h
index ee9c542..b3f426d 100644
--- a/libc/kernel/uapi/linux/netfilter_ipv6/ip6_tables.h
+++ b/libc/kernel/uapi/linux/netfilter_ipv6/ip6_tables.h
@@ -141,6 +141,6 @@
   struct ip6t_entry entrytable[0];
 };
 static __inline__ struct xt_entry_target * ip6t_get_target(struct ip6t_entry * e) {
-  return(void *) e + e->target_offset;
+  return(struct xt_entry_target *) ((char *) e + e->target_offset);
 }
 #endif
diff --git a/libc/kernel/uapi/linux/nl80211.h b/libc/kernel/uapi/linux/nl80211.h
index fa2c035..9292571 100644
--- a/libc/kernel/uapi/linux/nl80211.h
+++ b/libc/kernel/uapi/linux/nl80211.h
@@ -472,6 +472,7 @@
   NL80211_ATTR_HE_OBSS_PD,
   NL80211_ATTR_WIPHY_EDMG_CHANNELS,
   NL80211_ATTR_WIPHY_EDMG_BW_CONFIG,
+  NL80211_ATTR_VLAN_ID,
   __NL80211_ATTR_AFTER_LAST,
   NUM_NL80211_ATTR = __NL80211_ATTR_AFTER_LAST,
   NL80211_ATTR_MAX = __NL80211_ATTR_AFTER_LAST - 1
@@ -1342,6 +1343,8 @@
   NL80211_EXT_FEATURE_EXT_KEY_ID,
   NL80211_EXT_FEATURE_STA_TX_PWR,
   NL80211_EXT_FEATURE_SAE_OFFLOAD,
+  NL80211_EXT_FEATURE_VLAN_OFFLOAD,
+  NL80211_EXT_FEATURE_AQL,
   NUM_NL80211_EXT_FEATURES,
   MAX_NL80211_EXT_FEATURES = NUM_NL80211_EXT_FEATURES - 1
 };
diff --git a/libc/kernel/uapi/linux/openvswitch.h b/libc/kernel/uapi/linux/openvswitch.h
index 581a371..99a987d 100644
--- a/libc/kernel/uapi/linux/openvswitch.h
+++ b/libc/kernel/uapi/linux/openvswitch.h
@@ -92,6 +92,7 @@
   OVS_PACKET_ATTR_PROBE,
   OVS_PACKET_ATTR_MRU,
   OVS_PACKET_ATTR_LEN,
+  OVS_PACKET_ATTR_HASH,
   __OVS_PACKET_ATTR_MAX
 };
 #define OVS_PACKET_ATTR_MAX (__OVS_PACKET_ATTR_MAX - 1)
diff --git a/libc/kernel/uapi/linux/pci_regs.h b/libc/kernel/uapi/linux/pci_regs.h
index a3db220..5501de0 100644
--- a/libc/kernel/uapi/linux/pci_regs.h
+++ b/libc/kernel/uapi/linux/pci_regs.h
@@ -21,6 +21,7 @@
 #define PCI_CFG_SPACE_SIZE 256
 #define PCI_CFG_SPACE_EXP_SIZE 4096
 #define PCI_STD_HEADER_SIZEOF 64
+#define PCI_STD_NUM_BARS 6
 #define PCI_VENDOR_ID 0x00
 #define PCI_DEVICE_ID 0x02
 #define PCI_COMMAND 0x04
@@ -574,6 +575,8 @@
 #define PCI_EXP_LNKCTL2_TLS_8_0GT 0x0003
 #define PCI_EXP_LNKCTL2_TLS_16_0GT 0x0004
 #define PCI_EXP_LNKCTL2_TLS_32_0GT 0x0005
+#define PCI_EXP_LNKCTL2_ENTER_COMP 0x0010
+#define PCI_EXP_LNKCTL2_TX_MARGIN 0x0380
 #define PCI_EXP_LNKSTA2 50
 #define PCI_CAP_EXP_ENDPOINT_SIZEOF_V2 52
 #define PCI_EXP_SLTCAP2 52
diff --git a/libc/kernel/uapi/linux/perf_event.h b/libc/kernel/uapi/linux/perf_event.h
index 229184f..4e9e32c 100644
--- a/libc/kernel/uapi/linux/perf_event.h
+++ b/libc/kernel/uapi/linux/perf_event.h
@@ -99,7 +99,8 @@
   PERF_SAMPLE_TRANSACTION = 1U << 17,
   PERF_SAMPLE_REGS_INTR = 1U << 18,
   PERF_SAMPLE_PHYS_ADDR = 1U << 19,
-  PERF_SAMPLE_MAX = 1U << 20,
+  PERF_SAMPLE_AUX = 1U << 20,
+  PERF_SAMPLE_MAX = 1U << 21,
   __PERF_SAMPLE_CALLCHAIN_EARLY = 1ULL << 63,
 };
 enum perf_branch_sample_type_shift {
@@ -188,6 +189,7 @@
 #define PERF_ATTR_SIZE_VER3 96
 #define PERF_ATTR_SIZE_VER4 104
 #define PERF_ATTR_SIZE_VER5 112
+#define PERF_ATTR_SIZE_VER6 120
 struct perf_event_attr {
   __u32 type;
   __u32 size;
@@ -224,6 +226,8 @@
   __u32 aux_watermark;
   __u16 sample_max_stack;
   __u16 __reserved_2;
+  __u32 aux_sample_size;
+  __u32 __reserved_3;
 };
 struct perf_event_query_bpf {
   __u32 ids_len;
diff --git a/libc/kernel/uapi/linux/pkt_cls.h b/libc/kernel/uapi/linux/pkt_cls.h
index cc5518c..dd096d9 100644
--- a/libc/kernel/uapi/linux/pkt_cls.h
+++ b/libc/kernel/uapi/linux/pkt_cls.h
@@ -29,8 +29,10 @@
   TCA_ACT_STATS,
   TCA_ACT_PAD,
   TCA_ACT_COOKIE,
+  TCA_ACT_FLAGS,
   __TCA_ACT_MAX
 };
+#define TCA_ACT_FLAGS_NO_PERCPU_STATS 1
 #define TCA_ACT_MAX __TCA_ACT_MAX
 #define TCA_OLD_COMPAT (TCA_ACT_MAX + 1)
 #define TCA_ACT_MAX_PRIO 32
@@ -456,6 +458,8 @@
 enum {
   TCA_FLOWER_KEY_ENC_OPTS_UNSPEC,
   TCA_FLOWER_KEY_ENC_OPTS_GENEVE,
+  TCA_FLOWER_KEY_ENC_OPTS_VXLAN,
+  TCA_FLOWER_KEY_ENC_OPTS_ERSPAN,
   __TCA_FLOWER_KEY_ENC_OPTS_MAX,
 };
 #define TCA_FLOWER_KEY_ENC_OPTS_MAX (__TCA_FLOWER_KEY_ENC_OPTS_MAX - 1)
@@ -468,6 +472,21 @@
 };
 #define TCA_FLOWER_KEY_ENC_OPT_GENEVE_MAX (__TCA_FLOWER_KEY_ENC_OPT_GENEVE_MAX - 1)
 enum {
+  TCA_FLOWER_KEY_ENC_OPT_VXLAN_UNSPEC,
+  TCA_FLOWER_KEY_ENC_OPT_VXLAN_GBP,
+  __TCA_FLOWER_KEY_ENC_OPT_VXLAN_MAX,
+};
+#define TCA_FLOWER_KEY_ENC_OPT_VXLAN_MAX (__TCA_FLOWER_KEY_ENC_OPT_VXLAN_MAX - 1)
+enum {
+  TCA_FLOWER_KEY_ENC_OPT_ERSPAN_UNSPEC,
+  TCA_FLOWER_KEY_ENC_OPT_ERSPAN_VER,
+  TCA_FLOWER_KEY_ENC_OPT_ERSPAN_INDEX,
+  TCA_FLOWER_KEY_ENC_OPT_ERSPAN_DIR,
+  TCA_FLOWER_KEY_ENC_OPT_ERSPAN_HWID,
+  __TCA_FLOWER_KEY_ENC_OPT_ERSPAN_MAX,
+};
+#define TCA_FLOWER_KEY_ENC_OPT_ERSPAN_MAX (__TCA_FLOWER_KEY_ENC_OPT_ERSPAN_MAX - 1)
+enum {
   TCA_FLOWER_KEY_FLAGS_IS_FRAGMENT = (1 << 0),
   TCA_FLOWER_KEY_FLAGS_FRAG_IS_FIRST = (1 << 1),
 };
diff --git a/libc/kernel/uapi/linux/pkt_sched.h b/libc/kernel/uapi/linux/pkt_sched.h
index c287e8c..c965928 100644
--- a/libc/kernel/uapi/linux/pkt_sched.h
+++ b/libc/kernel/uapi/linux/pkt_sched.h
@@ -710,6 +710,7 @@
   TCA_PIE_BETA,
   TCA_PIE_ECN,
   TCA_PIE_BYTEMODE,
+  TCA_PIE_DQ_RATE_ESTIMATOR,
   __TCA_PIE_MAX
 };
 #define TCA_PIE_MAX (__TCA_PIE_MAX - 1)
@@ -717,6 +718,7 @@
   __u64 prob;
   __u32 delay;
   __u32 avg_dq_rate;
+  __u32 dq_rate_estimating;
   __u32 packets_in;
   __u32 dropped;
   __u32 overlimit;
diff --git a/libc/kernel/uapi/linux/ppp-ioctl.h b/libc/kernel/uapi/linux/ppp-ioctl.h
index b0f893b..f188dff 100644
--- a/libc/kernel/uapi/linux/ppp-ioctl.h
+++ b/libc/kernel/uapi/linux/ppp-ioctl.h
@@ -94,6 +94,8 @@
 #define PPPIOCGDEBUG _IOR('t', 65, int)
 #define PPPIOCSDEBUG _IOW('t', 64, int)
 #define PPPIOCGIDLE _IOR('t', 63, struct ppp_idle)
+#define PPPIOCGIDLE32 _IOR('t', 63, struct ppp_idle32)
+#define PPPIOCGIDLE64 _IOR('t', 63, struct ppp_idle64)
 #define PPPIOCNEWUNIT _IOWR('t', 62, int)
 #define PPPIOCATTACH _IOW('t', 61, int)
 #define PPPIOCDETACH _IOW('t', 60, int)
diff --git a/libc/kernel/uapi/linux/ppp_defs.h b/libc/kernel/uapi/linux/ppp_defs.h
index 9cbcaa1..84c23d9 100644
--- a/libc/kernel/uapi/linux/ppp_defs.h
+++ b/libc/kernel/uapi/linux/ppp_defs.h
@@ -105,7 +105,15 @@
   struct compstat d;
 };
 struct ppp_idle {
-  __kernel_time_t xmit_idle;
-  __kernel_time_t recv_idle;
+  __kernel_old_time_t xmit_idle;
+  __kernel_old_time_t recv_idle;
+};
+struct ppp_idle32 {
+  __s32 xmit_idle;
+  __s32 recv_idle;
+};
+struct ppp_idle64 {
+  __s64 xmit_idle;
+  __s64 recv_idle;
 };
 #endif
diff --git a/libc/kernel/uapi/linux/psp-sev.h b/libc/kernel/uapi/linux/psp-sev.h
index b3f88dc..fcdb102 100644
--- a/libc/kernel/uapi/linux/psp-sev.h
+++ b/libc/kernel/uapi/linux/psp-sev.h
@@ -54,6 +54,9 @@
   SEV_RET_HWSEV_RET_PLATFORM,
   SEV_RET_HWSEV_RET_UNSAFE,
   SEV_RET_UNSUPPORTED,
+  SEV_RET_INVALID_PARAM,
+  SEV_RET_RESOURCE_LIMIT,
+  SEV_RET_SECURE_DATA_INVALID,
   SEV_RET_MAX,
 } sev_ret_code;
 struct sev_user_data_status {
diff --git a/libc/kernel/uapi/linux/rtnetlink.h b/libc/kernel/uapi/linux/rtnetlink.h
index b0feb7e..14366de 100644
--- a/libc/kernel/uapi/linux/rtnetlink.h
+++ b/libc/kernel/uapi/linux/rtnetlink.h
@@ -145,6 +145,12 @@
 #define RTM_DELNEXTHOP RTM_DELNEXTHOP
   RTM_GETNEXTHOP,
 #define RTM_GETNEXTHOP RTM_GETNEXTHOP
+  RTM_NEWLINKPROP = 108,
+#define RTM_NEWLINKPROP RTM_NEWLINKPROP
+  RTM_DELLINKPROP,
+#define RTM_DELLINKPROP RTM_DELLINKPROP
+  RTM_GETLINKPROP,
+#define RTM_GETLINKPROP RTM_GETLINKPROP
   __RTM_MAX,
 #define RTM_MAX (((__RTM_MAX + 3) & ~3) - 1)
 };
diff --git a/libc/kernel/uapi/linux/scc.h b/libc/kernel/uapi/linux/scc.h
index 60aa05d..a2a5503 100644
--- a/libc/kernel/uapi/linux/scc.h
+++ b/libc/kernel/uapi/linux/scc.h
@@ -18,6 +18,7 @@
  ****************************************************************************/
 #ifndef _UAPI_SCC_H
 #define _UAPI_SCC_H
+#include <linux/sockios.h>
 #define PA0HZP 0x00
 #define EAGLE 0x01
 #define PC100 0x02
diff --git a/libc/kernel/uapi/linux/sched.h b/libc/kernel/uapi/linux/sched.h
index 13a34ce..b8f39dd 100644
--- a/libc/kernel/uapi/linux/sched.h
+++ b/libc/kernel/uapi/linux/sched.h
@@ -44,6 +44,7 @@
 #define CLONE_NEWPID 0x20000000
 #define CLONE_NEWNET 0x40000000
 #define CLONE_IO 0x80000000
+#define CLONE_CLEAR_SIGHAND 0x100000000ULL
 #ifndef __ASSEMBLY__
 struct clone_args {
   __aligned_u64 flags;
@@ -54,9 +55,12 @@
   __aligned_u64 stack;
   __aligned_u64 stack_size;
   __aligned_u64 tls;
+  __aligned_u64 set_tid;
+  __aligned_u64 set_tid_size;
 };
 #endif
 #define CLONE_ARGS_SIZE_VER0 64
+#define CLONE_ARGS_SIZE_VER1 80
 #define SCHED_NORMAL 0
 #define SCHED_FIFO 1
 #define SCHED_RR 2
diff --git a/libc/kernel/uapi/linux/sctp.h b/libc/kernel/uapi/linux/sctp.h
index 9a808ef..e3fc7bf 100644
--- a/libc/kernel/uapi/linux/sctp.h
+++ b/libc/kernel/uapi/linux/sctp.h
@@ -63,6 +63,7 @@
 #define SCTP_DEFAULT_SNDINFO 34
 #define SCTP_AUTH_DEACTIVATE_KEY 35
 #define SCTP_REUSE_PORT 36
+#define SCTP_PEER_ADDR_THLDS_V2 37
 #define SCTP_SOCKOPT_BINDX_ADD 100
 #define SCTP_SOCKOPT_BINDX_REM 101
 #define SCTP_SOCKOPT_PEELOFF 102
@@ -90,6 +91,8 @@
 #define SCTP_ASCONF_SUPPORTED 128
 #define SCTP_AUTH_SUPPORTED 129
 #define SCTP_ECN_SUPPORTED 130
+#define SCTP_EXPOSE_POTENTIALLY_FAILED_STATE 131
+#define SCTP_EXPOSE_PF_STATE SCTP_EXPOSE_POTENTIALLY_FAILED_STATE
 #define SCTP_PR_SCTP_NONE 0x0000
 #define SCTP_PR_SCTP_TTL 0x0010
 #define SCTP_PR_SCTP_RTX 0x0020
@@ -230,6 +233,8 @@
   SCTP_ADDR_ADDED,
   SCTP_ADDR_MADE_PRIM,
   SCTP_ADDR_CONFIRMED,
+  SCTP_ADDR_POTENTIALLY_FAILED,
+#define SCTP_ADDR_PF SCTP_ADDR_POTENTIALLY_FAILED
 };
 struct sctp_remote_error {
   __u16 sre_type;
@@ -248,6 +253,15 @@
   sctp_assoc_t ssf_assoc_id;
   __u8 ssf_data[0];
 };
+struct sctp_send_failed_event {
+  __u16 ssf_type;
+  __u16 ssf_flags;
+  __u32 ssf_length;
+  __u32 ssf_error;
+  struct sctp_sndinfo ssfe_info;
+  sctp_assoc_t ssf_assoc_id;
+  __u8 ssf_data[0];
+};
 enum sctp_ssf_flags {
   SCTP_DATA_UNSENT,
   SCTP_DATA_SENT,
@@ -345,6 +359,7 @@
   __u8 sctp_stream_reset_event;
   __u8 sctp_assoc_reset_event;
   __u8 sctp_stream_change_event;
+  __u8 sctp_send_failure_event_event;
 };
 union sctp_notification {
   struct {
@@ -364,6 +379,7 @@
   struct sctp_stream_reset_event sn_strreset_event;
   struct sctp_assoc_reset_event sn_assocreset_event;
   struct sctp_stream_change_event sn_strchange_event;
+  struct sctp_send_failed_event sn_send_failed_event;
 };
 enum sctp_sn_type {
   SCTP_SN_TYPE_BASE = (1 << 15),
@@ -393,7 +409,9 @@
 #define SCTP_ASSOC_RESET_EVENT SCTP_ASSOC_RESET_EVENT
   SCTP_STREAM_CHANGE_EVENT,
 #define SCTP_STREAM_CHANGE_EVENT SCTP_STREAM_CHANGE_EVENT
-  SCTP_SN_TYPE_MAX = SCTP_STREAM_CHANGE_EVENT,
+  SCTP_SEND_FAILED_EVENT,
+#define SCTP_SEND_FAILED_EVENT SCTP_SEND_FAILED_EVENT
+  SCTP_SN_TYPE_MAX = SCTP_SEND_FAILED_EVENT,
 #define SCTP_SN_TYPE_MAX SCTP_SN_TYPE_MAX
 };
 typedef enum sctp_sn_error {
@@ -505,6 +523,7 @@
 enum sctp_spinfo_state {
   SCTP_INACTIVE,
   SCTP_PF,
+#define SCTP_POTENTIALLY_FAILED SCTP_PF
   SCTP_ACTIVE,
   SCTP_UNCONFIRMED,
   SCTP_UNKNOWN = 0xffff
@@ -586,6 +605,13 @@
   __u16 spt_pathmaxrxt;
   __u16 spt_pathpfthld;
 };
+struct sctp_paddrthlds_v2 {
+  sctp_assoc_t spt_assoc_id;
+  struct sockaddr_storage spt_address;
+  __u16 spt_pathmaxrxt;
+  __u16 spt_pathpfthld;
+  __u16 spt_pathcpthld;
+};
 struct sctp_prstatus {
   sctp_assoc_t sprstat_assoc_id;
   __u16 sprstat_sid;
diff --git a/libc/kernel/uapi/linux/seccomp.h b/libc/kernel/uapi/linux/seccomp.h
index a1e577d..6f7cbbe 100644
--- a/libc/kernel/uapi/linux/seccomp.h
+++ b/libc/kernel/uapi/linux/seccomp.h
@@ -60,6 +60,7 @@
   __u32 flags;
   struct seccomp_data data;
 };
+#define SECCOMP_USER_NOTIF_FLAG_CONTINUE (1UL << 0)
 struct seccomp_notif_resp {
   __u64 id;
   __s64 val;
diff --git a/libc/kernel/uapi/linux/sed-opal.h b/libc/kernel/uapi/linux/sed-opal.h
index fc12509..a20197a 100644
--- a/libc/kernel/uapi/linux/sed-opal.h
+++ b/libc/kernel/uapi/linux/sed-opal.h
@@ -96,6 +96,22 @@
   __u64 offset;
   __u64 size;
 };
+enum opal_table_ops {
+  OPAL_READ_TABLE,
+  OPAL_WRITE_TABLE,
+};
+#define OPAL_UID_LENGTH 8
+struct opal_read_write_table {
+  struct opal_key key;
+  const __u64 data;
+  const __u8 table_uid[OPAL_UID_LENGTH];
+  __u64 offset;
+  __u64 size;
+#define OPAL_TABLE_READ (1 << OPAL_READ_TABLE)
+#define OPAL_TABLE_WRITE (1 << OPAL_WRITE_TABLE)
+  __u64 flags;
+  __u64 priv;
+};
 #define IOC_OPAL_SAVE _IOW('p', 220, struct opal_lock_unlock)
 #define IOC_OPAL_LOCK_UNLOCK _IOW('p', 221, struct opal_lock_unlock)
 #define IOC_OPAL_TAKE_OWNERSHIP _IOW('p', 222, struct opal_key)
@@ -111,4 +127,5 @@
 #define IOC_OPAL_PSID_REVERT_TPR _IOW('p', 232, struct opal_key)
 #define IOC_OPAL_MBR_DONE _IOW('p', 233, struct opal_mbr_done)
 #define IOC_OPAL_WRITE_SHADOW_MBR _IOW('p', 234, struct opal_shadow_mbr)
+#define IOC_OPAL_GENERIC_TABLE_RW _IOW('p', 235, struct opal_read_write_table)
 #endif
diff --git a/libc/kernel/uapi/linux/sem.h b/libc/kernel/uapi/linux/sem.h
index 552be4a..98ed1bf 100644
--- a/libc/kernel/uapi/linux/sem.h
+++ b/libc/kernel/uapi/linux/sem.h
@@ -32,8 +32,8 @@
 #define SEM_STAT_ANY 20
 struct __kernel_legacy_semid_ds {
   struct __kernel_legacy_ipc_perm sem_perm;
-  __kernel_time_t sem_otime;
-  __kernel_time_t sem_ctime;
+  __kernel_old_time_t sem_otime;
+  __kernel_old_time_t sem_ctime;
   struct sem * sem_base;
   struct sem_queue * sem_pending;
   struct sem_queue * * sem_pending_last;
diff --git a/libc/kernel/uapi/linux/shm.h b/libc/kernel/uapi/linux/shm.h
index 57394cb..72ee715 100644
--- a/libc/kernel/uapi/linux/shm.h
+++ b/libc/kernel/uapi/linux/shm.h
@@ -30,9 +30,9 @@
 struct __kernel_legacy_shmid_ds {
   struct __kernel_legacy_ipc_perm shm_perm;
   int shm_segsz;
-  __kernel_time_t shm_atime;
-  __kernel_time_t shm_dtime;
-  __kernel_time_t shm_ctime;
+  __kernel_old_time_t shm_atime;
+  __kernel_old_time_t shm_dtime;
+  __kernel_old_time_t shm_ctime;
   __kernel_ipc_pid_t shm_cpid;
   __kernel_ipc_pid_t shm_lpid;
   unsigned short shm_nattch;
diff --git a/libc/kernel/uapi/linux/snmp.h b/libc/kernel/uapi/linux/snmp.h
index 9f500ca..3ec299a 100644
--- a/libc/kernel/uapi/linux/snmp.h
+++ b/libc/kernel/uapi/linux/snmp.h
@@ -286,4 +286,18 @@
   LINUX_MIB_XFRMACQUIREERROR,
   __LINUX_MIB_XFRMMAX
 };
+enum {
+  LINUX_MIB_TLSNUM = 0,
+  LINUX_MIB_TLSCURRTXSW,
+  LINUX_MIB_TLSCURRRXSW,
+  LINUX_MIB_TLSCURRTXDEVICE,
+  LINUX_MIB_TLSCURRRXDEVICE,
+  LINUX_MIB_TLSTXSW,
+  LINUX_MIB_TLSRXSW,
+  LINUX_MIB_TLSTXDEVICE,
+  LINUX_MIB_TLSRXDEVICE,
+  LINUX_MIB_TLSDECRYPTERROR,
+  LINUX_MIB_TLSRXDEVICERESYNC,
+  __LINUX_MIB_TLSMAX
+};
 #endif
diff --git a/libc/kernel/uapi/linux/stat.h b/libc/kernel/uapi/linux/stat.h
index bf728d0..98fdbea 100644
--- a/libc/kernel/uapi/linux/stat.h
+++ b/libc/kernel/uapi/linux/stat.h
@@ -100,4 +100,5 @@
 #define STATX_ATTR_NODUMP 0x00000040
 #define STATX_ATTR_ENCRYPTED 0x00000800
 #define STATX_ATTR_AUTOMOUNT 0x00001000
+#define STATX_ATTR_VERITY 0x00100000
 #endif
diff --git a/libc/kernel/uapi/linux/tc_act/tc_tunnel_key.h b/libc/kernel/uapi/linux/tc_act/tc_tunnel_key.h
index 4511b18..e137ae8 100644
--- a/libc/kernel/uapi/linux/tc_act/tc_tunnel_key.h
+++ b/libc/kernel/uapi/linux/tc_act/tc_tunnel_key.h
@@ -46,6 +46,8 @@
 enum {
   TCA_TUNNEL_KEY_ENC_OPTS_UNSPEC,
   TCA_TUNNEL_KEY_ENC_OPTS_GENEVE,
+  TCA_TUNNEL_KEY_ENC_OPTS_VXLAN,
+  TCA_TUNNEL_KEY_ENC_OPTS_ERSPAN,
   __TCA_TUNNEL_KEY_ENC_OPTS_MAX,
 };
 #define TCA_TUNNEL_KEY_ENC_OPTS_MAX (__TCA_TUNNEL_KEY_ENC_OPTS_MAX - 1)
@@ -57,4 +59,19 @@
   __TCA_TUNNEL_KEY_ENC_OPT_GENEVE_MAX,
 };
 #define TCA_TUNNEL_KEY_ENC_OPT_GENEVE_MAX (__TCA_TUNNEL_KEY_ENC_OPT_GENEVE_MAX - 1)
+enum {
+  TCA_TUNNEL_KEY_ENC_OPT_VXLAN_UNSPEC,
+  TCA_TUNNEL_KEY_ENC_OPT_VXLAN_GBP,
+  __TCA_TUNNEL_KEY_ENC_OPT_VXLAN_MAX,
+};
+#define TCA_TUNNEL_KEY_ENC_OPT_VXLAN_MAX (__TCA_TUNNEL_KEY_ENC_OPT_VXLAN_MAX - 1)
+enum {
+  TCA_TUNNEL_KEY_ENC_OPT_ERSPAN_UNSPEC,
+  TCA_TUNNEL_KEY_ENC_OPT_ERSPAN_VER,
+  TCA_TUNNEL_KEY_ENC_OPT_ERSPAN_INDEX,
+  TCA_TUNNEL_KEY_ENC_OPT_ERSPAN_DIR,
+  TCA_TUNNEL_KEY_ENC_OPT_ERSPAN_HWID,
+  __TCA_TUNNEL_KEY_ENC_OPT_ERSPAN_MAX,
+};
+#define TCA_TUNNEL_KEY_ENC_OPT_ERSPAN_MAX (__TCA_TUNNEL_KEY_ENC_OPT_ERSPAN_MAX - 1)
 #endif
diff --git a/libc/kernel/uapi/linux/tcp.h b/libc/kernel/uapi/linux/tcp.h
index 4cae8d8..823583d 100644
--- a/libc/kernel/uapi/linux/tcp.h
+++ b/libc/kernel/uapi/linux/tcp.h
@@ -113,6 +113,12 @@
   TCP_SEND_QUEUE,
   TCP_QUEUES_NR,
 };
+enum tcp_fastopen_client_fail {
+  TFO_STATUS_UNSPEC,
+  TFO_COOKIE_UNAVAILABLE,
+  TFO_DATA_NOT_ACKED,
+  TFO_SYN_RETRANSMITTED,
+};
 #define TCPI_OPT_TIMESTAMPS 1
 #define TCPI_OPT_SACK 2
 #define TCPI_OPT_WSCALE 4
@@ -139,7 +145,7 @@
   __u8 tcpi_backoff;
   __u8 tcpi_options;
   __u8 tcpi_snd_wscale : 4, tcpi_rcv_wscale : 4;
-  __u8 tcpi_delivery_rate_app_limited : 1;
+  __u8 tcpi_delivery_rate_app_limited : 1, tcpi_fastopen_client_fail : 2;
   __u32 tcpi_rto;
   __u32 tcpi_ato;
   __u32 tcpi_snd_mss;
diff --git a/libc/kernel/uapi/linux/time.h b/libc/kernel/uapi/linux/time.h
index dbf105b..eed430b 100644
--- a/libc/kernel/uapi/linux/time.h
+++ b/libc/kernel/uapi/linux/time.h
@@ -23,12 +23,12 @@
 #ifndef _STRUCT_TIMESPEC
 #define _STRUCT_TIMESPEC
 struct timespec {
-  __kernel_time_t tv_sec;
+  __kernel_old_time_t tv_sec;
   long tv_nsec;
 };
 #endif
 struct timeval {
-  __kernel_time_t tv_sec;
+  __kernel_old_time_t tv_sec;
   __kernel_suseconds_t tv_usec;
 };
 struct timezone {
diff --git a/libc/kernel/uapi/linux/time_types.h b/libc/kernel/uapi/linux/time_types.h
index 425e6ae..8c70a56 100644
--- a/libc/kernel/uapi/linux/time_types.h
+++ b/libc/kernel/uapi/linux/time_types.h
@@ -27,12 +27,10 @@
   struct __kernel_timespec it_interval;
   struct __kernel_timespec it_value;
 };
-#ifndef __kernel_old_timeval
-struct __kernel_old_timeval {
-  __kernel_long_t tv_sec;
-  __kernel_long_t tv_usec;
+struct __kernel_old_timespec {
+  __kernel_old_time_t tv_sec;
+  long tv_nsec;
 };
-#endif
 struct __kernel_sock_timeval {
   __s64 tv_sec;
   __s64 tv_usec;
diff --git a/libc/kernel/uapi/linux/tipc.h b/libc/kernel/uapi/linux/tipc.h
index b66b340..1d092cc 100644
--- a/libc/kernel/uapi/linux/tipc.h
+++ b/libc/kernel/uapi/linux/tipc.h
@@ -112,6 +112,7 @@
 #define TIPC_GROUP_JOIN 135
 #define TIPC_GROUP_LEAVE 136
 #define TIPC_SOCK_RECVQ_USED 137
+#define TIPC_NODELAY 138
 #define TIPC_GROUP_LOOPBACK 0x1
 #define TIPC_GROUP_MEMBER_EVTS 0x2
 struct tipc_group_req {
@@ -136,6 +137,15 @@
   __u32 peer;
   char node_id[TIPC_NODEID_LEN];
 };
+#define TIPC_AEAD_ALG_NAME (32)
+struct tipc_aead_key {
+  char alg_name[TIPC_AEAD_ALG_NAME];
+  unsigned int keylen;
+  char key[];
+};
+#define TIPC_AEAD_KEYLEN_MIN (16 + 4)
+#define TIPC_AEAD_KEYLEN_MAX (32 + 4)
+#define TIPC_AEAD_KEY_SIZE_MAX (sizeof(struct tipc_aead_key) + TIPC_AEAD_KEYLEN_MAX)
 #define TIPC_CFG_SRV 0
 #define TIPC_ZONE_SCOPE 1
 #define TIPC_ADDR_NAMESEQ 1
diff --git a/libc/kernel/uapi/linux/tipc_netlink.h b/libc/kernel/uapi/linux/tipc_netlink.h
index 3721118..61577fa 100644
--- a/libc/kernel/uapi/linux/tipc_netlink.h
+++ b/libc/kernel/uapi/linux/tipc_netlink.h
@@ -44,6 +44,8 @@
   TIPC_NL_PEER_REMOVE,
   TIPC_NL_BEARER_ADD,
   TIPC_NL_UDP_GET_REMOTEIP,
+  TIPC_NL_KEY_SET,
+  TIPC_NL_KEY_FLUSH,
   __TIPC_NL_CMD_MAX,
   TIPC_NL_CMD_MAX = __TIPC_NL_CMD_MAX - 1
 };
@@ -122,6 +124,8 @@
   TIPC_NLA_NODE_UNSPEC,
   TIPC_NLA_NODE_ADDR,
   TIPC_NLA_NODE_UP,
+  TIPC_NLA_NODE_ID,
+  TIPC_NLA_NODE_KEY,
   __TIPC_NLA_NODE_MAX,
   TIPC_NLA_NODE_MAX = __TIPC_NLA_NODE_MAX - 1
 };
diff --git a/libc/kernel/uapi/linux/utime.h b/libc/kernel/uapi/linux/utime.h
index 937e7c3..8ed98b9 100644
--- a/libc/kernel/uapi/linux/utime.h
+++ b/libc/kernel/uapi/linux/utime.h
@@ -20,7 +20,7 @@
 #define _LINUX_UTIME_H
 #include <linux/types.h>
 struct utimbuf {
-  __kernel_time_t actime;
-  __kernel_time_t modtime;
+  __kernel_old_time_t actime;
+  __kernel_old_time_t modtime;
 };
 #endif
diff --git a/libc/kernel/uapi/linux/v4l2-controls.h b/libc/kernel/uapi/linux/v4l2-controls.h
index 9288710..85f3a8b 100644
--- a/libc/kernel/uapi/linux/v4l2-controls.h
+++ b/libc/kernel/uapi/linux/v4l2-controls.h
@@ -870,6 +870,7 @@
 #define V4L2_CID_TEST_PATTERN_GREENR (V4L2_CID_IMAGE_SOURCE_CLASS_BASE + 5)
 #define V4L2_CID_TEST_PATTERN_BLUE (V4L2_CID_IMAGE_SOURCE_CLASS_BASE + 6)
 #define V4L2_CID_TEST_PATTERN_GREENB (V4L2_CID_IMAGE_SOURCE_CLASS_BASE + 7)
+#define V4L2_CID_UNIT_CELL_SIZE (V4L2_CID_IMAGE_SOURCE_CLASS_BASE + 8)
 #define V4L2_CID_IMAGE_PROC_CLASS_BASE (V4L2_CTRL_CLASS_IMAGE_PROC | 0x900)
 #define V4L2_CID_IMAGE_PROC_CLASS (V4L2_CTRL_CLASS_IMAGE_PROC | 1)
 #define V4L2_CID_LINK_FREQ (V4L2_CID_IMAGE_PROC_CLASS_BASE + 1)
diff --git a/libc/kernel/uapi/linux/version.h b/libc/kernel/uapi/linux/version.h
index 7f3f9af..471dcd7 100644
--- a/libc/kernel/uapi/linux/version.h
+++ b/libc/kernel/uapi/linux/version.h
@@ -16,5 +16,5 @@
  ***
  ****************************************************************************
  ****************************************************************************/
-#define LINUX_VERSION_CODE 328704
+#define LINUX_VERSION_CODE 328960
 #define KERNEL_VERSION(a,b,c) (((a) << 16) + ((b) << 8) + (c))
diff --git a/libc/kernel/uapi/linux/videodev2.h b/libc/kernel/uapi/linux/videodev2.h
index 3d70691..aaf5a70 100644
--- a/libc/kernel/uapi/linux/videodev2.h
+++ b/libc/kernel/uapi/linux/videodev2.h
@@ -147,6 +147,10 @@
   __u32 numerator;
   __u32 denominator;
 };
+struct v4l2_area {
+  __u32 width;
+  __u32 height;
+};
 struct v4l2_capability {
   __u8 driver[16];
   __u8 card[32];
@@ -402,6 +406,7 @@
 #define V4L2_META_FMT_VSP1_HGT v4l2_fourcc('V', 'S', 'P', 'T')
 #define V4L2_META_FMT_UVC v4l2_fourcc('U', 'V', 'C', 'H')
 #define V4L2_META_FMT_D4XX v4l2_fourcc('D', '4', 'X', 'X')
+#define V4L2_META_FMT_VIVID v4l2_fourcc('V', 'I', 'V', 'D')
 #define V4L2_PIX_FMT_PRIV_MAGIC 0xfeedcafe
 #define V4L2_PIX_FMT_FLAG_PREMUL_ALPHA 0x00000001
 struct v4l2_fmtdesc {
@@ -510,6 +515,7 @@
 #define V4L2_BUF_CAP_SUPPORTS_DMABUF (1 << 2)
 #define V4L2_BUF_CAP_SUPPORTS_REQUESTS (1 << 3)
 #define V4L2_BUF_CAP_SUPPORTS_ORPHANED_BUFS (1 << 4)
+#define V4L2_BUF_CAP_SUPPORTS_M2M_HOLD_CAPTURE_BUF (1 << 5)
 struct v4l2_plane {
   __u32 bytesused;
   __u32 length;
@@ -553,6 +559,7 @@
 #define V4L2_BUF_FLAG_ERROR 0x00000040
 #define V4L2_BUF_FLAG_IN_REQUEST 0x00000080
 #define V4L2_BUF_FLAG_TIMECODE 0x00000100
+#define V4L2_BUF_FLAG_M2M_HOLD_CAPTURE_BUF 0x00000200
 #define V4L2_BUF_FLAG_PREPARED 0x00000400
 #define V4L2_BUF_FLAG_NO_CACHE_INVALIDATE 0x00000800
 #define V4L2_BUF_FLAG_NO_CACHE_CLEAN 0x00001000
@@ -854,6 +861,7 @@
     __u8 __user * p_u8;
     __u16 __user * p_u16;
     __u32 __user * p_u32;
+    struct v4l2_area __user * p_area;
     void __user * ptr;
   };
 } __attribute__((packed));
@@ -890,6 +898,7 @@
   V4L2_CTRL_TYPE_U8 = 0x0100,
   V4L2_CTRL_TYPE_U16 = 0x0101,
   V4L2_CTRL_TYPE_U32 = 0x0102,
+  V4L2_CTRL_TYPE_AREA = 0x0106,
 };
 struct v4l2_queryctrl {
   __u32 id;
@@ -1086,6 +1095,7 @@
 #define V4L2_DEC_CMD_STOP (1)
 #define V4L2_DEC_CMD_PAUSE (2)
 #define V4L2_DEC_CMD_RESUME (3)
+#define V4L2_DEC_CMD_FLUSH (4)
 #define V4L2_DEC_CMD_START_MUTE_AUDIO (1 << 0)
 #define V4L2_DEC_CMD_PAUSE_TO_BLACK (1 << 0)
 #define V4L2_DEC_CMD_STOP_TO_BLACK (1 << 0)
diff --git a/libc/kernel/uapi/misc/fastrpc.h b/libc/kernel/uapi/misc/fastrpc.h
index 6f99e63..762eefc 100644
--- a/libc/kernel/uapi/misc/fastrpc.h
+++ b/libc/kernel/uapi/misc/fastrpc.h
@@ -24,6 +24,8 @@
 #define FASTRPC_IOCTL_INVOKE _IOWR('R', 3, struct fastrpc_invoke)
 #define FASTRPC_IOCTL_INIT_ATTACH _IO('R', 4)
 #define FASTRPC_IOCTL_INIT_CREATE _IOWR('R', 5, struct fastrpc_init_create)
+#define FASTRPC_IOCTL_MMAP _IOWR('R', 6, struct fastrpc_req_mmap)
+#define FASTRPC_IOCTL_MUNMAP _IOWR('R', 7, struct fastrpc_req_munmap)
 struct fastrpc_invoke_args {
   __u64 ptr;
   __u64 length;
@@ -47,4 +49,15 @@
   __u32 flags;
   __u64 size;
 };
+struct fastrpc_req_mmap {
+  __s32 fd;
+  __u32 flags;
+  __u64 vaddrin;
+  __u64 size;
+  __u64 vaddrout;
+};
+struct fastrpc_req_munmap {
+  __u64 vaddrout;
+  __u64 size;
+};
 #endif
diff --git a/libc/kernel/uapi/misc/habanalabs.h b/libc/kernel/uapi/misc/habanalabs.h
index ffc8c9f..91849ec 100644
--- a/libc/kernel/uapi/misc/habanalabs.h
+++ b/libc/kernel/uapi/misc/habanalabs.h
@@ -68,7 +68,10 @@
 #define HL_INFO_DEVICE_STATUS 4
 #define HL_INFO_DEVICE_UTILIZATION 6
 #define HL_INFO_HW_EVENTS_AGGREGATE 7
+#define HL_INFO_CLK_RATE 8
+#define HL_INFO_RESET_COUNT 9
 #define HL_INFO_VERSION_MAX_LEN 128
+#define HL_INFO_CARD_NAME_MAX_LEN 16
 struct hl_info_hw_ip_info {
   __u64 sram_base_address;
   __u64 dram_base_address;
@@ -86,6 +89,7 @@
   __u8 dram_enabled;
   __u8 pad[2];
   __u8 armcp_version[HL_INFO_VERSION_MAX_LEN];
+  __u8 card_name[HL_INFO_CARD_NAME_MAX_LEN];
 };
 struct hl_info_dram_usage {
   __u64 dram_free_mem;
@@ -103,6 +107,14 @@
   __u32 utilization;
   __u32 pad;
 };
+struct hl_info_clk_rate {
+  __u32 cur_clk_rate_mhz;
+  __u32 max_clk_rate_mhz;
+};
+struct hl_info_reset_count {
+  __u32 hard_reset_cnt;
+  __u32 soft_reset_cnt;
+};
 struct hl_info_args {
   __u64 return_pointer;
   __u32 return_size;
@@ -115,6 +127,7 @@
 };
 #define HL_CB_OP_CREATE 0
 #define HL_CB_OP_DESTROY 1
+#define HL_MAX_CB_SIZE 0x200000
 struct hl_cb_in {
   __u64 cb_handle;
   __u32 op;
@@ -138,6 +151,7 @@
 };
 #define HL_CS_FLAGS_FORCE_RESTORE 0x1
 #define HL_CS_STATUS_SUCCESS 0
+#define HL_MAX_JOBS_PER_CS 512
 struct hl_cs_in {
   __u64 chunks_restore;
   __u64 chunks_execute;
diff --git a/libc/kernel/uapi/rdma/cxgb3-abi.h b/libc/kernel/uapi/rdma/cxgb3-abi.h
deleted file mode 100644
index 205d748..0000000
--- a/libc/kernel/uapi/rdma/cxgb3-abi.h
+++ /dev/null
@@ -1,52 +0,0 @@
-/****************************************************************************
- ****************************************************************************
- ***
- ***   This header was automatically generated from a Linux kernel header
- ***   of the same name, to make information necessary for userspace to
- ***   call into the kernel available to libc.  It contains only constants,
- ***   structures, and macros generated from the original header, and thus,
- ***   contains no copyrightable information.
- ***
- ***   To edit the content of this header, modify the corresponding
- ***   source file (e.g. under external/kernel-headers/original/) then
- ***   run bionic/libc/kernel/tools/update_all.py
- ***
- ***   Any manual change here will be lost the next time this script will
- ***   be run. You've been warned!
- ***
- ****************************************************************************
- ****************************************************************************/
-#ifndef CXGB3_ABI_USER_H
-#define CXGB3_ABI_USER_H
-#include <linux/types.h>
-#define IWCH_UVERBS_ABI_VERSION 1
-struct iwch_create_cq_req {
-  __aligned_u64 user_rptr_addr;
-};
-struct iwch_create_cq_resp_v0 {
-  __aligned_u64 key;
-  __u32 cqid;
-  __u32 size_log2;
-};
-struct iwch_create_cq_resp {
-  __aligned_u64 key;
-  __u32 cqid;
-  __u32 size_log2;
-  __u32 memsize;
-  __u32 reserved;
-};
-struct iwch_create_qp_resp {
-  __aligned_u64 key;
-  __aligned_u64 db_key;
-  __u32 qpid;
-  __u32 size_log2;
-  __u32 sq_size_log2;
-  __u32 rq_size_log2;
-};
-struct iwch_reg_user_mr_resp {
-  __u32 pbl_addr;
-};
-struct iwch_alloc_pd_resp {
-  __u32 pdid;
-};
-#endif
diff --git a/libc/kernel/uapi/rdma/efa-abi.h b/libc/kernel/uapi/rdma/efa-abi.h
index 1445c9c..39fd55b 100644
--- a/libc/kernel/uapi/rdma/efa-abi.h
+++ b/libc/kernel/uapi/rdma/efa-abi.h
@@ -78,11 +78,16 @@
   __u16 efa_address_handle;
   __u8 reserved_30[2];
 };
+enum {
+  EFA_QUERY_DEVICE_CAPS_RDMA_READ = 1 << 0,
+};
 struct efa_ibv_ex_query_device_resp {
   __u32 comp_mask;
   __u32 max_sq_wr;
   __u32 max_rq_wr;
   __u16 max_sq_sge;
   __u16 max_rq_sge;
+  __u32 max_rdma_size;
+  __u32 device_caps;
 };
 #endif
diff --git a/libc/kernel/uapi/rdma/ib_user_ioctl_verbs.h b/libc/kernel/uapi/rdma/ib_user_ioctl_verbs.h
index 47a548e..1394ed7 100644
--- a/libc/kernel/uapi/rdma/ib_user_ioctl_verbs.h
+++ b/libc/kernel/uapi/rdma/ib_user_ioctl_verbs.h
@@ -125,4 +125,25 @@
   __u16 port_cap_flags2;
   __u8 reserved[6];
 };
+enum rdma_driver_id {
+  RDMA_DRIVER_UNKNOWN,
+  RDMA_DRIVER_MLX5,
+  RDMA_DRIVER_MLX4,
+  RDMA_DRIVER_CXGB3,
+  RDMA_DRIVER_CXGB4,
+  RDMA_DRIVER_MTHCA,
+  RDMA_DRIVER_BNXT_RE,
+  RDMA_DRIVER_OCRDMA,
+  RDMA_DRIVER_NES,
+  RDMA_DRIVER_I40IW,
+  RDMA_DRIVER_VMW_PVRDMA,
+  RDMA_DRIVER_QEDR,
+  RDMA_DRIVER_HNS,
+  RDMA_DRIVER_USNIC,
+  RDMA_DRIVER_RXE,
+  RDMA_DRIVER_HFI1,
+  RDMA_DRIVER_QIB,
+  RDMA_DRIVER_EFA,
+  RDMA_DRIVER_SIW,
+};
 #endif
diff --git a/libc/kernel/uapi/rdma/mlx5_user_ioctl_cmds.h b/libc/kernel/uapi/rdma/mlx5_user_ioctl_cmds.h
index dcd281a..1cd3339 100644
--- a/libc/kernel/uapi/rdma/mlx5_user_ioctl_cmds.h
+++ b/libc/kernel/uapi/rdma/mlx5_user_ioctl_cmds.h
@@ -154,6 +154,7 @@
   MLX5_IB_ATTR_CREATE_FLOW_ARR_FLOW_ACTIONS,
   MLX5_IB_ATTR_CREATE_FLOW_TAG,
   MLX5_IB_ATTR_CREATE_FLOW_ARR_COUNTERS_DEVX,
+  MLX5_IB_ATTR_CREATE_FLOW_ARR_COUNTERS_DEVX_OFFSET,
 };
 enum mlx5_ib_destoy_flow_attrs {
   MLX5_IB_ATTR_DESTROY_FLOW_HANDLE = (1U << UVERBS_ID_NS_SHIFT),
diff --git a/libc/kernel/uapi/rdma/nes-abi.h b/libc/kernel/uapi/rdma/nes-abi.h
deleted file mode 100644
index 724852e..0000000
--- a/libc/kernel/uapi/rdma/nes-abi.h
+++ /dev/null
@@ -1,76 +0,0 @@
-/****************************************************************************
- ****************************************************************************
- ***
- ***   This header was automatically generated from a Linux kernel header
- ***   of the same name, to make information necessary for userspace to
- ***   call into the kernel available to libc.  It contains only constants,
- ***   structures, and macros generated from the original header, and thus,
- ***   contains no copyrightable information.
- ***
- ***   To edit the content of this header, modify the corresponding
- ***   source file (e.g. under external/kernel-headers/original/) then
- ***   run bionic/libc/kernel/tools/update_all.py
- ***
- ***   Any manual change here will be lost the next time this script will
- ***   be run. You've been warned!
- ***
- ****************************************************************************
- ****************************************************************************/
-#ifndef NES_ABI_USER_H
-#define NES_ABI_USER_H
-#include <linux/types.h>
-#define NES_ABI_USERSPACE_VER 2
-#define NES_ABI_KERNEL_VER 2
-struct nes_alloc_ucontext_req {
-  __u32 reserved32;
-  __u8 userspace_ver;
-  __u8 reserved8[3];
-};
-struct nes_alloc_ucontext_resp {
-  __u32 max_pds;
-  __u32 max_qps;
-  __u32 wq_size;
-  __u8 virtwq;
-  __u8 kernel_ver;
-  __u8 reserved[2];
-};
-struct nes_alloc_pd_resp {
-  __u32 pd_id;
-  __u32 mmap_db_index;
-};
-struct nes_create_cq_req {
-  __aligned_u64 user_cq_buffer;
-  __u32 mcrqf;
-  __u8 reserved[4];
-};
-struct nes_create_qp_req {
-  __aligned_u64 user_wqe_buffers;
-  __aligned_u64 user_qp_buffer;
-};
-enum iwnes_memreg_type {
-  IWNES_MEMREG_TYPE_MEM = 0x0000,
-  IWNES_MEMREG_TYPE_QP = 0x0001,
-  IWNES_MEMREG_TYPE_CQ = 0x0002,
-  IWNES_MEMREG_TYPE_MW = 0x0003,
-  IWNES_MEMREG_TYPE_FMR = 0x0004,
-  IWNES_MEMREG_TYPE_FMEM = 0x0005,
-};
-struct nes_mem_reg_req {
-  __u32 reg_type;
-  __u32 reserved;
-};
-struct nes_create_cq_resp {
-  __u32 cq_id;
-  __u32 cq_size;
-  __u32 mmap_db_index;
-  __u32 reserved;
-};
-struct nes_create_qp_resp {
-  __u32 qp_id;
-  __u32 actual_sq_size;
-  __u32 actual_rq_size;
-  __u32 mmap_sq_db_index;
-  __u32 mmap_rq_db_index;
-  __u32 nes_drv_opt;
-};
-#endif
diff --git a/libc/kernel/uapi/rdma/qedr-abi.h b/libc/kernel/uapi/rdma/qedr-abi.h
index 57ad827..fd96309 100644
--- a/libc/kernel/uapi/rdma/qedr-abi.h
+++ b/libc/kernel/uapi/rdma/qedr-abi.h
@@ -20,6 +20,14 @@
 #define __QEDR_USER_H__
 #include <linux/types.h>
 #define QEDR_ABI_VERSION (8)
+enum qedr_alloc_ucontext_flags {
+  QEDR_ALLOC_UCTX_RESERVED = 1 << 0,
+  QEDR_ALLOC_UCTX_DB_REC = 1 << 1
+};
+struct qedr_alloc_ucontext_req {
+  __u32 context_flags;
+  __u32 reserved;
+};
 struct qedr_alloc_ucontext_resp {
   __aligned_u64 db_pa;
   __u32 db_size;
@@ -50,6 +58,7 @@
   __u32 db_offset;
   __u16 icid;
   __u16 reserved;
+  __aligned_u64 db_rec_addr;
 };
 struct qedr_create_qp_ureq {
   __u32 qp_handle_hi;
@@ -68,6 +77,8 @@
   __u16 rq_icid;
   __u32 rq_db2_offset;
   __u32 reserved;
+  __aligned_u64 sq_db_rec_addr;
+  __aligned_u64 rq_db_rec_addr;
 };
 struct qedr_create_srq_ureq {
   __aligned_u64 prod_pair_addr;
@@ -79,4 +90,7 @@
   __u16 reserved0;
   __u32 reserved1;
 };
+struct qedr_user_db_rec {
+  __aligned_u64 db_data;
+};
 #endif
diff --git a/libc/kernel/uapi/rdma/rdma_user_ioctl_cmds.h b/libc/kernel/uapi/rdma/rdma_user_ioctl_cmds.h
index b779bc8..22adfaa 100644
--- a/libc/kernel/uapi/rdma/rdma_user_ioctl_cmds.h
+++ b/libc/kernel/uapi/rdma/rdma_user_ioctl_cmds.h
@@ -52,25 +52,4 @@
   __u32 reserved2;
   struct ib_uverbs_attr attrs[0];
 };
-enum rdma_driver_id {
-  RDMA_DRIVER_UNKNOWN,
-  RDMA_DRIVER_MLX5,
-  RDMA_DRIVER_MLX4,
-  RDMA_DRIVER_CXGB3,
-  RDMA_DRIVER_CXGB4,
-  RDMA_DRIVER_MTHCA,
-  RDMA_DRIVER_BNXT_RE,
-  RDMA_DRIVER_OCRDMA,
-  RDMA_DRIVER_NES,
-  RDMA_DRIVER_I40IW,
-  RDMA_DRIVER_VMW_PVRDMA,
-  RDMA_DRIVER_QEDR,
-  RDMA_DRIVER_HNS,
-  RDMA_DRIVER_USNIC,
-  RDMA_DRIVER_RXE,
-  RDMA_DRIVER_HFI1,
-  RDMA_DRIVER_QIB,
-  RDMA_DRIVER_EFA,
-  RDMA_DRIVER_SIW,
-};
 #endif
diff --git a/libc/kernel/uapi/rdma/vmw_pvrdma-abi.h b/libc/kernel/uapi/rdma/vmw_pvrdma-abi.h
index fc86778..3b86798 100644
--- a/libc/kernel/uapi/rdma/vmw_pvrdma-abi.h
+++ b/libc/kernel/uapi/rdma/vmw_pvrdma-abi.h
@@ -136,6 +136,10 @@
   __u32 sbuf_size;
   __aligned_u64 qp_addr;
 };
+struct pvrdma_create_qp_resp {
+  __u32 qpn;
+  __u32 qp_handle;
+};
 struct pvrdma_ex_cmp_swap {
   __aligned_u64 swap_val;
   __aligned_u64 compare_val;
diff --git a/libc/kernel/uapi/sound/compress_params.h b/libc/kernel/uapi/sound/compress_params.h
index f5f7e8f..f49b45f 100644
--- a/libc/kernel/uapi/sound/compress_params.h
+++ b/libc/kernel/uapi/sound/compress_params.h
@@ -163,12 +163,21 @@
   __u32 bw;
   __s32 reserved[15];
 } __attribute__((packed, aligned(4)));
+struct snd_dec_flac {
+  __u16 sample_size;
+  __u16 min_blk_size;
+  __u16 max_blk_size;
+  __u16 min_frame_size;
+  __u16 max_frame_size;
+  __u16 reserved;
+} __attribute__((packed, aligned(4)));
 union snd_codec_options {
   struct snd_enc_wma wma;
   struct snd_enc_vorbis vorbis;
   struct snd_enc_real real;
   struct snd_enc_flac flac;
   struct snd_enc_generic generic;
+  struct snd_dec_flac flac_d;
 } __attribute__((packed, aligned(4)));
 struct snd_codec_desc {
   __u32 max_ch;
diff --git a/libc/kernel/uapi/sound/sof/abi.h b/libc/kernel/uapi/sound/sof/abi.h
index f69ebae..f19e4e9 100644
--- a/libc/kernel/uapi/sound/sof/abi.h
+++ b/libc/kernel/uapi/sound/sof/abi.h
@@ -19,7 +19,7 @@
 #ifndef __INCLUDE_UAPI_SOUND_SOF_ABI_H__
 #define __INCLUDE_UAPI_SOUND_SOF_ABI_H__
 #define SOF_ABI_MAJOR 3
-#define SOF_ABI_MINOR 10
+#define SOF_ABI_MINOR 11
 #define SOF_ABI_PATCH 0
 #define SOF_ABI_MAJOR_SHIFT 24
 #define SOF_ABI_MAJOR_MASK 0xff
diff --git a/libc/kernel/uapi/sound/sof/tokens.h b/libc/kernel/uapi/sound/sof/tokens.h
index b4af004..6d8561f 100644
--- a/libc/kernel/uapi/sound/sof/tokens.h
+++ b/libc/kernel/uapi/sound/sof/tokens.h
@@ -68,5 +68,9 @@
 #define SOF_TKN_PROCESS_TYPE 900
 #define SOF_TKN_EFFECT_TYPE SOF_TKN_PROCESS_TYPE
 #define SOF_TKN_IMX_SAI_FIRST_TOKEN 1000
-#define SOF_TKN_IMX_ESAI_FIRST_TOKEN 1100
+#define SOF_TKN_IMX_ESAI_MCLK_ID 1100
+#define SOF_TKN_STREAM_PLAYBACK_COMPATIBLE_D0I3 1200
+#define SOF_TKN_STREAM_CAPTURE_COMPATIBLE_D0I3 1201
+#define SOF_TKN_MUTE_LED_USE 1300
+#define SOF_TKN_MUTE_LED_DIRECTION 1301
 #endif
