Skip to content

Commit 766c13b

Browse files
authored
Update to linux 6.8 (#115)
1 parent 5670c88 commit 766c13b

145 files changed

Lines changed: 30741 additions & 20220 deletions

File tree

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

gen/src/main.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@ use std::process::Command;
1010
use std::{env, fs};
1111

1212
#[allow(unused_doc_comments)]
13-
const LINUX_VERSION: &str = "v6.5";
13+
const LINUX_VERSION: &str = "v6.8";
1414

1515
/// Some commonly used features.
1616
const DEFAULT_FEATURES: &str = "\"general\", \"errno\"";

src/aarch64/general.rs

Lines changed: 170 additions & 54 deletions
Original file line numberDiff line numberDiff line change
@@ -183,7 +183,8 @@ pub version: __u8,
183183
pub contents_encryption_mode: __u8,
184184
pub filenames_encryption_mode: __u8,
185185
pub flags: __u8,
186-
pub __reserved: [__u8; 4usize],
186+
pub log2_data_unit_size: __u8,
187+
pub __reserved: [__u8; 3usize],
187188
pub master_key_identifier: [__u8; 16usize],
188189
}
189190
#[repr(C)]
@@ -240,6 +241,39 @@ pub propagation: __u64,
240241
pub userns_fd: __u64,
241242
}
242243
#[repr(C)]
244+
#[derive(Debug)]
245+
pub struct statmount {
246+
pub size: __u32,
247+
pub __spare1: __u32,
248+
pub mask: __u64,
249+
pub sb_dev_major: __u32,
250+
pub sb_dev_minor: __u32,
251+
pub sb_magic: __u64,
252+
pub sb_flags: __u32,
253+
pub fs_type: __u32,
254+
pub mnt_id: __u64,
255+
pub mnt_parent_id: __u64,
256+
pub mnt_id_old: __u32,
257+
pub mnt_parent_id_old: __u32,
258+
pub mnt_attr: __u64,
259+
pub mnt_propagation: __u64,
260+
pub mnt_peer_group: __u64,
261+
pub mnt_master: __u64,
262+
pub propagate_from: __u64,
263+
pub mnt_root: __u32,
264+
pub mnt_point: __u32,
265+
pub __spare2: [__u64; 50usize],
266+
pub str_: __IncompleteArrayField<crate::ctypes::c_char>,
267+
}
268+
#[repr(C)]
269+
#[derive(Debug, Copy, Clone)]
270+
pub struct mnt_id_req {
271+
pub size: __u32,
272+
pub spare: __u32,
273+
pub mnt_id: __u64,
274+
pub param: __u64,
275+
}
276+
#[repr(C)]
243277
#[derive(Debug, Copy, Clone)]
244278
pub struct file_clone_range {
245279
pub src_fd: __s64,
@@ -299,6 +333,29 @@ pub fsx_pad: [crate::ctypes::c_uchar; 8usize],
299333
}
300334
#[repr(C)]
301335
#[derive(Debug, Copy, Clone)]
336+
pub struct page_region {
337+
pub start: __u64,
338+
pub end: __u64,
339+
pub categories: __u64,
340+
}
341+
#[repr(C)]
342+
#[derive(Debug, Copy, Clone)]
343+
pub struct pm_scan_arg {
344+
pub size: __u64,
345+
pub flags: __u64,
346+
pub start: __u64,
347+
pub end: __u64,
348+
pub walk_end: __u64,
349+
pub vec: __u64,
350+
pub vec_len: __u64,
351+
pub max_pages: __u64,
352+
pub category_inverted: __u64,
353+
pub category_mask: __u64,
354+
pub category_anyof_mask: __u64,
355+
pub return_mask: __u64,
356+
}
357+
#[repr(C)]
358+
#[derive(Debug, Copy, Clone)]
302359
pub struct futex_waitv {
303360
pub val: __u64,
304361
pub uaddr: __u64,
@@ -393,36 +450,6 @@ pub tv_usec: __s64,
393450
}
394451
#[repr(C)]
395452
#[derive(Debug, Copy, Clone)]
396-
pub struct timespec {
397-
pub tv_sec: __kernel_old_time_t,
398-
pub tv_nsec: crate::ctypes::c_long,
399-
}
400-
#[repr(C)]
401-
#[derive(Debug, Copy, Clone)]
402-
pub struct timeval {
403-
pub tv_sec: __kernel_old_time_t,
404-
pub tv_usec: __kernel_suseconds_t,
405-
}
406-
#[repr(C)]
407-
#[derive(Debug, Copy, Clone)]
408-
pub struct itimerspec {
409-
pub it_interval: timespec,
410-
pub it_value: timespec,
411-
}
412-
#[repr(C)]
413-
#[derive(Debug, Copy, Clone)]
414-
pub struct itimerval {
415-
pub it_interval: timeval,
416-
pub it_value: timeval,
417-
}
418-
#[repr(C)]
419-
#[derive(Debug, Copy, Clone)]
420-
pub struct timezone {
421-
pub tz_minuteswest: crate::ctypes::c_int,
422-
pub tz_dsttime: crate::ctypes::c_int,
423-
}
424-
#[repr(C)]
425-
#[derive(Debug, Copy, Clone)]
426453
pub struct rusage {
427454
pub ru_utime: __kernel_old_timeval,
428455
pub ru_stime: __kernel_old_timeval,
@@ -673,6 +700,36 @@ pub c_cc: [crate::ctypes::c_uchar; 8usize],
673700
}
674701
#[repr(C)]
675702
#[derive(Debug, Copy, Clone)]
703+
pub struct timespec {
704+
pub tv_sec: __kernel_old_time_t,
705+
pub tv_nsec: crate::ctypes::c_long,
706+
}
707+
#[repr(C)]
708+
#[derive(Debug, Copy, Clone)]
709+
pub struct timeval {
710+
pub tv_sec: __kernel_old_time_t,
711+
pub tv_usec: __kernel_suseconds_t,
712+
}
713+
#[repr(C)]
714+
#[derive(Debug, Copy, Clone)]
715+
pub struct itimerspec {
716+
pub it_interval: timespec,
717+
pub it_value: timespec,
718+
}
719+
#[repr(C)]
720+
#[derive(Debug, Copy, Clone)]
721+
pub struct itimerval {
722+
pub it_interval: timeval,
723+
pub it_value: timeval,
724+
}
725+
#[repr(C)]
726+
#[derive(Debug, Copy, Clone)]
727+
pub struct timezone {
728+
pub tz_minuteswest: crate::ctypes::c_int,
729+
pub tz_dsttime: crate::ctypes::c_int,
730+
}
731+
#[repr(C)]
732+
#[derive(Debug, Copy, Clone)]
676733
pub struct iovec {
677734
pub iov_base: *mut crate::ctypes::c_void,
678735
pub iov_len: __kernel_size_t,
@@ -768,6 +825,22 @@ pub mode: __u64,
768825
pub mapped: __s64,
769826
}
770827
#[repr(C)]
828+
#[derive(Debug, Copy, Clone)]
829+
pub struct uffdio_poison {
830+
pub range: uffdio_range,
831+
pub mode: __u64,
832+
pub updated: __s64,
833+
}
834+
#[repr(C)]
835+
#[derive(Debug, Copy, Clone)]
836+
pub struct uffdio_move {
837+
pub dst: __u64,
838+
pub src: __u64,
839+
pub len: __u64,
840+
pub mode: __u64,
841+
pub move_: __s64,
842+
}
843+
#[repr(C)]
771844
#[derive(Debug)]
772845
pub struct linux_dirent64 {
773846
pub d_ino: crate::ctypes::c_ulong,
@@ -871,9 +944,9 @@ pub sa_flags: crate::ctypes::c_ulong,
871944
pub sa_restorer: __sigrestore_t,
872945
pub sa_mask: kernel_sigset_t,
873946
}
874-
pub const LINUX_VERSION_CODE: u32 = 394496;
947+
pub const LINUX_VERSION_CODE: u32 = 395264;
875948
pub const LINUX_VERSION_MAJOR: u32 = 6;
876-
pub const LINUX_VERSION_PATCHLEVEL: u32 = 5;
949+
pub const LINUX_VERSION_PATCHLEVEL: u32 = 8;
877950
pub const LINUX_VERSION_SUBLEVEL: u32 = 0;
878951
pub const AT_SYSINFO_EHDR: u32 = 33;
879952
pub const AT_MINSIGSTKSZ: u32 = 51;
@@ -1242,6 +1315,14 @@ pub const MOUNT_ATTR_NODIRATIME: u32 = 128;
12421315
pub const MOUNT_ATTR_IDMAP: u32 = 1048576;
12431316
pub const MOUNT_ATTR_NOSYMFOLLOW: u32 = 2097152;
12441317
pub const MOUNT_ATTR_SIZE_VER0: u32 = 32;
1318+
pub const MNT_ID_REQ_SIZE_VER0: u32 = 24;
1319+
pub const STATMOUNT_SB_BASIC: u32 = 1;
1320+
pub const STATMOUNT_MNT_BASIC: u32 = 2;
1321+
pub const STATMOUNT_PROPAGATE_FROM: u32 = 4;
1322+
pub const STATMOUNT_MNT_ROOT: u32 = 8;
1323+
pub const STATMOUNT_MNT_POINT: u32 = 16;
1324+
pub const STATMOUNT_FS_TYPE: u32 = 32;
1325+
pub const LSMT_ROOT: i32 = -1;
12451326
pub const INR_OPEN_CUR: u32 = 1024;
12461327
pub const INR_OPEN_MAX: u32 = 4096;
12471328
pub const BLOCK_SIZE_BITS: u32 = 10;
@@ -1313,6 +1394,16 @@ pub const SYNC_FILE_RANGE_WAIT_BEFORE: u32 = 1;
13131394
pub const SYNC_FILE_RANGE_WRITE: u32 = 2;
13141395
pub const SYNC_FILE_RANGE_WAIT_AFTER: u32 = 4;
13151396
pub const SYNC_FILE_RANGE_WRITE_AND_WAIT: u32 = 7;
1397+
pub const PAGE_IS_WPALLOWED: u32 = 1;
1398+
pub const PAGE_IS_WRITTEN: u32 = 2;
1399+
pub const PAGE_IS_FILE: u32 = 4;
1400+
pub const PAGE_IS_PRESENT: u32 = 8;
1401+
pub const PAGE_IS_SWAPPED: u32 = 16;
1402+
pub const PAGE_IS_PFNZERO: u32 = 32;
1403+
pub const PAGE_IS_HUGE: u32 = 64;
1404+
pub const PAGE_IS_SOFT_DIRTY: u32 = 128;
1405+
pub const PM_SCAN_WP_MATCHING: u32 = 1;
1406+
pub const PM_SCAN_CHECK_WPASYNC: u32 = 2;
13161407
pub const FUTEX_WAIT: u32 = 0;
13171408
pub const FUTEX_WAKE: u32 = 1;
13181409
pub const FUTEX_FD: u32 = 2;
@@ -1343,6 +1434,13 @@ pub const FUTEX_WAIT_BITSET_PRIVATE: u32 = 137;
13431434
pub const FUTEX_WAKE_BITSET_PRIVATE: u32 = 138;
13441435
pub const FUTEX_WAIT_REQUEUE_PI_PRIVATE: u32 = 139;
13451436
pub const FUTEX_CMP_REQUEUE_PI_PRIVATE: u32 = 140;
1437+
pub const FUTEX2_SIZE_U8: u32 = 0;
1438+
pub const FUTEX2_SIZE_U16: u32 = 1;
1439+
pub const FUTEX2_SIZE_U32: u32 = 2;
1440+
pub const FUTEX2_SIZE_U64: u32 = 3;
1441+
pub const FUTEX2_NUMA: u32 = 4;
1442+
pub const FUTEX2_PRIVATE: u32 = 128;
1443+
pub const FUTEX2_SIZE_MASK: u32 = 3;
13461444
pub const FUTEX_32: u32 = 2;
13471445
pub const FUTEX_WAITV_MAX: u32 = 128;
13481446
pub const FUTEX_WAITERS: u32 = 2147483648;
@@ -1601,25 +1699,6 @@ pub const LINUX_REBOOT_CMD_POWER_OFF: u32 = 1126301404;
16011699
pub const LINUX_REBOOT_CMD_RESTART2: u32 = 2712847316;
16021700
pub const LINUX_REBOOT_CMD_SW_SUSPEND: u32 = 3489725666;
16031701
pub const LINUX_REBOOT_CMD_KEXEC: u32 = 1163412803;
1604-
pub const ITIMER_REAL: u32 = 0;
1605-
pub const ITIMER_VIRTUAL: u32 = 1;
1606-
pub const ITIMER_PROF: u32 = 2;
1607-
pub const CLOCK_REALTIME: u32 = 0;
1608-
pub const CLOCK_MONOTONIC: u32 = 1;
1609-
pub const CLOCK_PROCESS_CPUTIME_ID: u32 = 2;
1610-
pub const CLOCK_THREAD_CPUTIME_ID: u32 = 3;
1611-
pub const CLOCK_MONOTONIC_RAW: u32 = 4;
1612-
pub const CLOCK_REALTIME_COARSE: u32 = 5;
1613-
pub const CLOCK_MONOTONIC_COARSE: u32 = 6;
1614-
pub const CLOCK_BOOTTIME: u32 = 7;
1615-
pub const CLOCK_REALTIME_ALARM: u32 = 8;
1616-
pub const CLOCK_BOOTTIME_ALARM: u32 = 9;
1617-
pub const CLOCK_SGI_CYCLE: u32 = 10;
1618-
pub const CLOCK_TAI: u32 = 11;
1619-
pub const MAX_CLOCKS: u32 = 16;
1620-
pub const CLOCKS_MASK: u32 = 1;
1621-
pub const CLOCKS_MONO: u32 = 1;
1622-
pub const TIMER_ABSTIME: u32 = 1;
16231702
pub const RUSAGE_SELF: u32 = 0;
16241703
pub const RUSAGE_CHILDREN: i32 = -1;
16251704
pub const RUSAGE_BOTH: i32 = -2;
@@ -1802,7 +1881,8 @@ pub const SEGV_ADIDERR: u32 = 6;
18021881
pub const SEGV_ADIPERR: u32 = 7;
18031882
pub const SEGV_MTEAERR: u32 = 8;
18041883
pub const SEGV_MTESERR: u32 = 9;
1805-
pub const NSIGSEGV: u32 = 9;
1884+
pub const SEGV_CPERR: u32 = 10;
1885+
pub const NSIGSEGV: u32 = 10;
18061886
pub const BUS_ADRALN: u32 = 1;
18071887
pub const BUS_ADRERR: u32 = 2;
18081888
pub const BUS_OBJERR: u32 = 3;
@@ -1883,6 +1963,7 @@ pub const STATX_BASIC_STATS: u32 = 2047;
18831963
pub const STATX_BTIME: u32 = 2048;
18841964
pub const STATX_MNT_ID: u32 = 4096;
18851965
pub const STATX_DIOALIGN: u32 = 8192;
1966+
pub const STATX_MNT_ID_UNIQUE: u32 = 16384;
18861967
pub const STATX__RESERVED: u32 = 2147483648;
18871968
pub const STATX_ALL: u32 = 4095;
18881969
pub const STATX_ATTR_COMPRESSED: u32 = 4;
@@ -2060,6 +2141,25 @@ pub const TIOCM_RI: u32 = 128;
20602141
pub const TIOCM_OUT1: u32 = 8192;
20612142
pub const TIOCM_OUT2: u32 = 16384;
20622143
pub const TIOCM_LOOP: u32 = 32768;
2144+
pub const ITIMER_REAL: u32 = 0;
2145+
pub const ITIMER_VIRTUAL: u32 = 1;
2146+
pub const ITIMER_PROF: u32 = 2;
2147+
pub const CLOCK_REALTIME: u32 = 0;
2148+
pub const CLOCK_MONOTONIC: u32 = 1;
2149+
pub const CLOCK_PROCESS_CPUTIME_ID: u32 = 2;
2150+
pub const CLOCK_THREAD_CPUTIME_ID: u32 = 3;
2151+
pub const CLOCK_MONOTONIC_RAW: u32 = 4;
2152+
pub const CLOCK_REALTIME_COARSE: u32 = 5;
2153+
pub const CLOCK_MONOTONIC_COARSE: u32 = 6;
2154+
pub const CLOCK_BOOTTIME: u32 = 7;
2155+
pub const CLOCK_REALTIME_ALARM: u32 = 8;
2156+
pub const CLOCK_BOOTTIME_ALARM: u32 = 9;
2157+
pub const CLOCK_SGI_CYCLE: u32 = 10;
2158+
pub const CLOCK_TAI: u32 = 11;
2159+
pub const MAX_CLOCKS: u32 = 16;
2160+
pub const CLOCKS_MASK: u32 = 1;
2161+
pub const CLOCKS_MONO: u32 = 1;
2162+
pub const TIMER_ABSTIME: u32 = 1;
20632163
pub const UIO_FASTIOV: u32 = 8;
20642164
pub const UIO_MAXIOV: u32 = 1024;
20652165
pub const __NR_io_setup: u32 = 0;
@@ -2370,7 +2470,17 @@ pub const __NR_process_mrelease: u32 = 448;
23702470
pub const __NR_futex_waitv: u32 = 449;
23712471
pub const __NR_set_mempolicy_home_node: u32 = 450;
23722472
pub const __NR_cachestat: u32 = 451;
2373-
pub const __NR_syscalls: u32 = 452;
2473+
pub const __NR_fchmodat2: u32 = 452;
2474+
pub const __NR_map_shadow_stack: u32 = 453;
2475+
pub const __NR_futex_wake: u32 = 454;
2476+
pub const __NR_futex_wait: u32 = 455;
2477+
pub const __NR_futex_requeue: u32 = 456;
2478+
pub const __NR_statmount: u32 = 457;
2479+
pub const __NR_listmount: u32 = 458;
2480+
pub const __NR_lsm_get_self_attr: u32 = 459;
2481+
pub const __NR_lsm_set_self_attr: u32 = 460;
2482+
pub const __NR_lsm_list_modules: u32 = 461;
2483+
pub const __NR_syscalls: u32 = 462;
23742484
pub const __NR_fcntl: u32 = 25;
23752485
pub const __NR_statfs: u32 = 43;
23762486
pub const __NR_fstatfs: u32 = 44;
@@ -2460,8 +2570,10 @@ pub const _UFFDIO_UNREGISTER: u32 = 1;
24602570
pub const _UFFDIO_WAKE: u32 = 2;
24612571
pub const _UFFDIO_COPY: u32 = 3;
24622572
pub const _UFFDIO_ZEROPAGE: u32 = 4;
2573+
pub const _UFFDIO_MOVE: u32 = 5;
24632574
pub const _UFFDIO_WRITEPROTECT: u32 = 6;
24642575
pub const _UFFDIO_CONTINUE: u32 = 7;
2576+
pub const _UFFDIO_POISON: u32 = 8;
24652577
pub const _UFFDIO_API: u32 = 63;
24662578
pub const UFFDIO: u32 = 170;
24672579
pub const UFFD_EVENT_PAGEFAULT: u32 = 18;
@@ -2486,6 +2598,9 @@ pub const UFFD_FEATURE_MINOR_SHMEM: u32 = 1024;
24862598
pub const UFFD_FEATURE_EXACT_ADDRESS: u32 = 2048;
24872599
pub const UFFD_FEATURE_WP_HUGETLBFS_SHMEM: u32 = 4096;
24882600
pub const UFFD_FEATURE_WP_UNPOPULATED: u32 = 8192;
2601+
pub const UFFD_FEATURE_POISON: u32 = 16384;
2602+
pub const UFFD_FEATURE_WP_ASYNC: u32 = 32768;
2603+
pub const UFFD_FEATURE_MOVE: u32 = 65536;
24892604
pub const UFFD_USER_MODE_ONLY: u32 = 1;
24902605
pub const DT_UNKNOWN: u32 = 0;
24912606
pub const DT_FIFO: u32 = 1;
@@ -2560,6 +2675,7 @@ FSCONFIG_SET_PATH_EMPTY = 4,
25602675
FSCONFIG_SET_FD = 5,
25612676
FSCONFIG_CMD_CREATE = 6,
25622677
FSCONFIG_CMD_RECONFIGURE = 7,
2678+
FSCONFIG_CMD_CREATE_EXCL = 8,
25632679
}
25642680
#[repr(u32)]
25652681
#[non_exhaustive]

0 commit comments

Comments
 (0)