From d7d52d08916cfc3f85b04324a835d19d24f43de7 Mon Sep 17 00:00:00 2001 From: Pedro Tammela Date: Fri, 13 Sep 2024 12:01:21 -0300 Subject: [PATCH] ci: clean up musl exceptions Now that we have Linux 6.6 we can clean up some of the test exceptions. Not all of them can be removed, so the comments are updated if needed. Signed-off-by: Pedro Tammela (backport ) (cherry picked from commit 55f945132b70208bdeb1fea2e552cb987929fe5b) Signed-off-by: Trevor Gross --- libc-test/build.rs | 164 ++++----------------------------------------- 1 file changed, 12 insertions(+), 152 deletions(-) diff --git a/libc-test/build.rs b/libc-test/build.rs index 37696ea67030..50bc16813086 100644 --- a/libc-test/build.rs +++ b/libc-test/build.rs @@ -3576,8 +3576,7 @@ fn test_linux(target: &str) { [gnu]: "linux/aio_abi.h", "linux/can.h", "linux/can/raw.h", - // FIXME: requires kernel headers >= 5.4.1. - [!musl]: "linux/can/j1939.h", + "linux/can/j1939.h", "linux/dccp.h", "linux/errqueue.h", "linux/falloc.h", @@ -3602,8 +3601,7 @@ fn test_linux(target: &str) { "linux/mempolicy.h", "linux/mman.h", "linux/module.h", - // FIXME: requires kernel headers >= 5.1. - [!musl]: "linux/mount.h", + "linux/mount.h", "linux/net_tstamp.h", "linux/netfilter/nfnetlink.h", "linux/netfilter/nfnetlink_log.h", @@ -3615,11 +3613,10 @@ fn test_linux(target: &str) { "linux/netfilter_ipv6.h", "linux/netfilter_ipv6/ip6_tables.h", "linux/netlink.h", - // FIXME: requires Linux >= 5.6: - [!musl]: "linux/openat2.h", + "linux/openat2.h", // FIXME: some items require Linux >= 5.6: "linux/ptp_clock.h", - [!musl]: "linux/ptrace.h", + "linux/ptrace.h", "linux/quota.h", "linux/random.h", "linux/reboot.h", @@ -3637,7 +3634,7 @@ fn test_linux(target: &str) { "sys/fanotify.h", // is not present on uclibc [!uclibc]: "sys/auxv.h", - [gnu]: "linux/close_range.h", + [gnu || musl]: "linux/close_range.h", } // note: aio.h must be included before sys/mount.h @@ -3728,11 +3725,6 @@ fn test_linux(target: &str) { // specific type. "Ioctl" => true, - // FIXME: requires >= 5.4.1 kernel headers - "pgn_t" if musl => true, - "priority_t" if musl => true, - "name_t" if musl => true, - // FIXME: "'__uint128' undeclared" in C "__uint128" => true, @@ -3751,22 +3743,6 @@ fn test_linux(target: &str) { if ty.starts_with("__c_anonymous_") { return true; } - // FIXME: musl CI has old headers - if musl && ty.starts_with("uinput_") { - return true; - } - if musl && ty == "seccomp_notif" { - return true; - } - if musl && ty == "seccomp_notif_addfd" { - return true; - } - if musl && ty == "seccomp_notif_resp" { - return true; - } - if musl && ty == "seccomp_notif_sizes" { - return true; - } // FIXME: CI has old headers if ty == "ptp_sys_offset_extended" { @@ -3850,12 +3826,6 @@ fn test_linux(target: &str) { // Might differ between kernel versions "open_how" => true, - // FIXME: requires >= 5.4.1 kernel headers - "j1939_filter" if musl => true, - - // FIXME: requires >= 5.4 kernel headers - "sockaddr_can" if musl => true, - "sctp_initmsg" | "sctp_sndrcvinfo" | "sctp_sndinfo" | "sctp_rcvinfo" | "sctp_nxtinfo" | "sctp_prinfo" | "sctp_authinfo" => true, @@ -4020,7 +3990,7 @@ fn test_linux(target: &str) { return true; } // FIXME: Requires >= 6.3 kernel headers - if name == "MFD_NOEXEC_SEAL" || name == "MFD_EXEC" { + if loongarch64 && (name == "MFD_NOEXEC_SEAL" || name == "MFD_EXEC") { return true; } } @@ -4110,7 +4080,7 @@ fn test_linux(target: &str) { if sparc64 => true, // FIXME: Not currently available in headers on ARM and musl. - "NETLINK_GET_STRICT_CHK" if arm || musl => true, + "NETLINK_GET_STRICT_CHK" if arm => true, // kernel constants not available in uclibc 1.0.34 | "EXTPROC" @@ -4179,62 +4149,14 @@ fn test_linux(target: &str) { | "MINSIGSTKSZ" if gnu => true, - // FIXME: Linux >= 5.10: - // https://github.com/torvalds/linux/commit/d25e2e9388eda61b6e298585024ee3355f50c493 - "NF_INET_INGRESS" if musl => true, - // FIXME: Linux >= 5.16: // https://github.com/torvalds/linux/commit/42df6e1d221dddc0f2acf2be37e68d553ad65f96 - "NF_NETDEV_EGRESS" if musl || sparc64 => true, + "NF_NETDEV_EGRESS" if sparc64 => true, // value changed - "NF_NETDEV_NUMHOOKS" if musl || sparc64 => true, - - // FIXME: requires Linux >= 5.6: - | "RESOLVE_BENEATH" - | "RESOLVE_CACHED" - | "RESOLVE_IN_ROOT" - | "RESOLVE_NO_MAGICLINKS" - | "RESOLVE_NO_SYMLINKS" - | "RESOLVE_NO_XDEV" if musl => true, - - // FIXME: requires Linux >= 5.4: - | "CAN_J1939" - | "CAN_NPROTO" if musl => true, - - // FIXME: requires Linux >= 5.6 - "GRND_INSECURE" if musl => true, - - // FIXME: requires Linux >= 5.7: - "MREMAP_DONTUNMAP" if musl => true, + "NF_NETDEV_NUMHOOKS" if sparc64 => true, // FIXME: requires Linux >= v5.8 - "IF_LINK_MODE_TESTING" if musl || sparc64 => true, - - // FIXME: Requires more recent kernel headers (5.9 / 5.11): - | "CLOSE_RANGE_UNSHARE" - | "CLOSE_RANGE_CLOEXEC" if musl => true, - - // FIXME: requires Linux >= 5.12: - "MPOL_F_NUMA_BALANCING" if musl => true, - - // FIXME: Requires more recent kernel headers - | "NFNL_SUBSYS_COUNT" // bumped in v5.14 - | "NFNL_SUBSYS_HOOK" // v5.14+ - | "NFULA_VLAN" // v5.4+ - | "NFULA_L2HDR" // v5.4+ - | "NFULA_VLAN_PROTO" // v5.4+ - | "NFULA_VLAN_TCI" // v5.4+ - | "NFULA_VLAN_UNSPEC" // v5.4+ - | "RTNLGRP_NEXTHOP" // linux v5.3+ - | "RTNLGRP_BRVLAN" // linux v5.6+ - if musl => true, - - | "MADV_COLD" - | "MADV_PAGEOUT" - | "MADV_POPULATE_READ" - | "MADV_POPULATE_WRITE" - if musl => true, - "CLONE_CLEAR_SIGHAND" | "CLONE_INTO_CGROUP" => true, + "IF_LINK_MODE_TESTING" if sparc64 => true, // kernel 6.1 minimum "MADV_COLLAPSE" => true, @@ -4253,9 +4175,6 @@ fn test_linux(target: &str) { => true, "SCTP_FUTURE_ASSOC" | "SCTP_CURRENT_ASSOC" | "SCTP_ALL_ASSOC" | "SCTP_PEER_ADDR_THLDS_V2" => true, // linux 5.5+ - // FIXME: Requires more recent kernel headers - "HWTSTAMP_TX_ONESTEP_P2P" if musl => true, // linux v5.6+ - // kernel 6.5 minimum "MOVE_MOUNT_BENEATH" => true, // FIXME: Requires linux 6.1 @@ -4277,10 +4196,8 @@ fn test_linux(target: &str) { | "FAN_INFO" // linux v5.16+ => true, - // FIXME: Requires linux 5.15+ - "FAN_REPORT_PIDFD" if musl => true, - - // FIXME: Requires linux 5.9+ + // musl doesn't use in + "FAN_REPORT_PIDFD" | "FAN_REPORT_DIR_FID" | "FAN_REPORT_NAME" | "FAN_REPORT_DFID_NAME" @@ -4294,55 +4211,6 @@ fn test_linux(target: &str) { // FIXME: Requires linux 6.5 "NFT_MSG_MAX" => true, - // FIXME: Requires >= 5.1 kernel headers. - // Everything that uses install-musl.sh has 4.19 kernel headers. - "TLS_1_3_VERSION" - | "TLS_1_3_VERSION_MAJOR" - | "TLS_1_3_VERSION_MINOR" - | "TLS_CIPHER_AES_GCM_256" - | "TLS_CIPHER_AES_GCM_256_IV_SIZE" - | "TLS_CIPHER_AES_GCM_256_KEY_SIZE" - | "TLS_CIPHER_AES_GCM_256_SALT_SIZE" - | "TLS_CIPHER_AES_GCM_256_TAG_SIZE" - | "TLS_CIPHER_AES_GCM_256_REC_SEQ_SIZE" - if (aarch64 || arm || i686 || s390x || x86_64) && musl => - { - true - } - - // FIXME: Requires >= 5.11 kernel headers. - // Everything that uses install-musl.sh has 4.19 kernel headers. - "TLS_CIPHER_CHACHA20_POLY1305" - | "TLS_CIPHER_CHACHA20_POLY1305_IV_SIZE" - | "TLS_CIPHER_CHACHA20_POLY1305_KEY_SIZE" - | "TLS_CIPHER_CHACHA20_POLY1305_SALT_SIZE" - | "TLS_CIPHER_CHACHA20_POLY1305_TAG_SIZE" - | "TLS_CIPHER_CHACHA20_POLY1305_REC_SEQ_SIZE" - if (aarch64 || arm || i686 || s390x || x86_64) && musl => - { - true - } - - // FIXME: Requires >= 5.3 kernel headers. - // Everything that uses install-musl.sh has 4.19 kernel headers. - "XDP_OPTIONS_ZEROCOPY" | "XDP_OPTIONS" - if musl => - { - true - } - - // FIXME: Requires >= 5.4 kernel headers. - // Everything that uses install-musl.sh has 4.19 kernel headers. - "XSK_UNALIGNED_BUF_OFFSET_SHIFT" - | "XSK_UNALIGNED_BUF_ADDR_MASK" - | "XDP_UMEM_UNALIGNED_CHUNK_FLAG" - | "XDP_RING_NEED_WAKEUP" - | "XDP_USE_NEED_WAKEUP" - if musl => - { - true - } - // FIXME: Requires >= 6.6 kernel headers. "XDP_USE_SG" | "XDP_PKT_CONTD" @@ -4401,14 +4269,6 @@ fn test_linux(target: &str) { | "PF_MCE_EARLY" | "PF_MEMALLOC_PIN" => true, - "SCHED_FLAG_KEEP_POLICY" - | "SCHED_FLAG_KEEP_PARAMS" - | "SCHED_FLAG_UTIL_CLAMP_MIN" - | "SCHED_FLAG_UTIL_CLAMP_MAX" - | "SCHED_FLAG_KEEP_ALL" - | "SCHED_FLAG_UTIL_CLAMP" - | "SCHED_FLAG_ALL" if musl => true, // Needs more recent linux headers. - // FIXME: Requires >= 6.9 kernel headers. "EPIOCSPARAMS" | "EPIOCGPARAMS" => true,