@@ -3511,8 +3511,7 @@ fn test_linux(target: &str) {
3511
3511
[ gnu] : "linux/aio_abi.h" ,
3512
3512
"linux/can.h" ,
3513
3513
"linux/can/raw.h" ,
3514
- // FIXME: requires kernel headers >= 5.4.1.
3515
- [ !musl] : "linux/can/j1939.h" ,
3514
+ "linux/can/j1939.h" ,
3516
3515
"linux/dccp.h" ,
3517
3516
"linux/errqueue.h" ,
3518
3517
"linux/falloc.h" ,
@@ -3537,8 +3536,7 @@ fn test_linux(target: &str) {
3537
3536
"linux/mempolicy.h" ,
3538
3537
"linux/mman.h" ,
3539
3538
"linux/module.h" ,
3540
- // FIXME: requires kernel headers >= 5.1.
3541
- [ !musl] : "linux/mount.h" ,
3539
+ "linux/mount.h" ,
3542
3540
"linux/net_tstamp.h" ,
3543
3541
"linux/netfilter/nfnetlink.h" ,
3544
3542
"linux/netfilter/nfnetlink_log.h" ,
@@ -3550,9 +3548,8 @@ fn test_linux(target: &str) {
3550
3548
"linux/netfilter_ipv6.h" ,
3551
3549
"linux/netfilter_ipv6/ip6_tables.h" ,
3552
3550
"linux/netlink.h" ,
3553
- // FIXME: requires Linux >= 5.6:
3554
- [ !musl] : "linux/openat2.h" ,
3555
- [ !musl] : "linux/ptrace.h" ,
3551
+ "linux/openat2.h" ,
3552
+ "linux/ptrace.h" ,
3556
3553
"linux/quota.h" ,
3557
3554
"linux/random.h" ,
3558
3555
"linux/reboot.h" ,
@@ -3570,7 +3567,7 @@ fn test_linux(target: &str) {
3570
3567
"sys/fanotify.h" ,
3571
3568
// <sys/auxv.h> is not present on uclibc
3572
3569
[ !uclibc] : "sys/auxv.h" ,
3573
- [ gnu] : "linux/close_range.h" ,
3570
+ [ gnu || musl ] : "linux/close_range.h" ,
3574
3571
}
3575
3572
3576
3573
// note: aio.h must be included before sys/mount.h
@@ -3661,11 +3658,6 @@ fn test_linux(target: &str) {
3661
3658
// specific type.
3662
3659
"Ioctl" => true ,
3663
3660
3664
- // FIXME: requires >= 5.4.1 kernel headers
3665
- "pgn_t" if musl => true ,
3666
- "priority_t" if musl => true ,
3667
- "name_t" if musl => true ,
3668
-
3669
3661
// FIXME: "'__uint128' undeclared" in C
3670
3662
"__uint128" => true ,
3671
3663
@@ -3684,22 +3676,6 @@ fn test_linux(target: &str) {
3684
3676
if ty. starts_with ( "__c_anonymous_" ) {
3685
3677
return true ;
3686
3678
}
3687
- // FIXME: musl CI has old headers
3688
- if musl && ty. starts_with ( "uinput_" ) {
3689
- return true ;
3690
- }
3691
- if musl && ty == "seccomp_notif" {
3692
- return true ;
3693
- }
3694
- if musl && ty == "seccomp_notif_addfd" {
3695
- return true ;
3696
- }
3697
- if musl && ty == "seccomp_notif_resp" {
3698
- return true ;
3699
- }
3700
- if musl && ty == "seccomp_notif_sizes" {
3701
- return true ;
3702
- }
3703
3679
3704
3680
// LFS64 types have been removed in musl 1.2.4+
3705
3681
if musl && ( ty. ends_with ( "64" ) || ty. ends_with ( "64_t" ) ) {
@@ -3778,12 +3754,6 @@ fn test_linux(target: &str) {
3778
3754
// Might differ between kernel versions
3779
3755
"open_how" => true ,
3780
3756
3781
- // FIXME: requires >= 5.4.1 kernel headers
3782
- "j1939_filter" if musl => true ,
3783
-
3784
- // FIXME: requires >= 5.4 kernel headers
3785
- "sockaddr_can" if musl => true ,
3786
-
3787
3757
"sctp_initmsg" | "sctp_sndrcvinfo" | "sctp_sndinfo" | "sctp_rcvinfo"
3788
3758
| "sctp_nxtinfo" | "sctp_prinfo" | "sctp_authinfo" => true ,
3789
3759
@@ -3794,34 +3764,6 @@ fn test_linux(target: &str) {
3794
3764
// https://github.com/torvalds/linux/commit/94dfc73e7cf4a31da66b8843f0b9283ddd6b8381
3795
3765
"af_alg_iv" => true ,
3796
3766
3797
- // FIXME: Requires >= 5.1 kernel headers.
3798
- // Everything that uses install-musl.sh has 4.19 kernel headers.
3799
- "tls12_crypto_info_aes_gcm_256"
3800
- if ( aarch64 || arm || i686 || s390x || x86_64) && musl =>
3801
- {
3802
- true
3803
- }
3804
-
3805
- // FIXME: Requires >= 5.11 kernel headers.
3806
- // Everything that uses install-musl.sh has 4.19 kernel headers.
3807
- "tls12_crypto_info_chacha20_poly1305"
3808
- if ( aarch64 || arm || i686 || s390x || x86_64) && musl =>
3809
- {
3810
- true
3811
- }
3812
-
3813
- // FIXME: Requires >= 5.3 kernel headers.
3814
- // Everything that uses install-musl.sh has 4.19 kernel headers.
3815
- "xdp_options" if musl => true ,
3816
-
3817
- // FIXME: Requires >= 5.4 kernel headers.
3818
- // Everything that uses install-musl.sh has 4.19 kernel headers.
3819
- "xdp_umem_reg" | "xdp_ring_offset" | "xdp_mmap_offsets" if musl => true ,
3820
-
3821
- // FIXME: Requires >= 5.9 kernel headers.
3822
- // Everything that uses install-musl.sh has 4.19 kernel headers.
3823
- "xdp_statistics" if musl => true ,
3824
-
3825
3767
// A new field was added in kernel 5.4, this is the old version for backwards compatibility.
3826
3768
// https://github.com/torvalds/linux/commit/77cd0d7b3f257fd0e3096b4fdcff1a7d38e99e10
3827
3769
"xdp_ring_offset_v1" | "xdp_mmap_offsets_v1" => true ,
@@ -3885,31 +3827,6 @@ fn test_linux(target: &str) {
3885
3827
}
3886
3828
}
3887
3829
if musl {
3888
- // FIXME: Requires >= 5.0 kernel headers
3889
- if name == "SECCOMP_GET_NOTIF_SIZES"
3890
- || name == "SECCOMP_FILTER_FLAG_NEW_LISTENER"
3891
- || name == "SECCOMP_FILTER_FLAG_TSYNC_ESRCH"
3892
- || name == "SECCOMP_USER_NOTIF_FLAG_CONTINUE" // requires >= 5.5
3893
- || name == "SECCOMP_ADDFD_FLAG_SETFD" // requires >= 5.9
3894
- || name == "SECCOMP_ADDFD_FLAG_SEND" // requires >= 5.9
3895
- || name == "SECCOMP_FILTER_FLAG_WAIT_KILLABLE_RECV" // requires >= 5.19
3896
- {
3897
- return true ;
3898
- }
3899
- // FIXME: Requires >= 5.4.1 kernel headers
3900
- if name. starts_with ( "J1939" )
3901
- || name. starts_with ( "RTEXT_FILTER_" )
3902
- || name. starts_with ( "SO_J1939" )
3903
- || name. starts_with ( "SCM_J1939" )
3904
- {
3905
- return true ;
3906
- }
3907
- // FIXME: Requires >= 5.10 kernel headers
3908
- if name. starts_with ( "MEMBARRIER_CMD_REGISTER" )
3909
- || name. starts_with ( "MEMBARRIER_CMD_PRIVATE" )
3910
- {
3911
- return true ;
3912
- }
3913
3830
// LFS64 types have been removed in musl 1.2.4+
3914
3831
if name. starts_with ( "RLIM64" ) {
3915
3832
return true ;
@@ -3918,10 +3835,6 @@ fn test_linux(target: &str) {
3918
3835
if name. starts_with ( "NI_IDN" ) {
3919
3836
return true ;
3920
3837
}
3921
- // FIXME: Requires >= 6.3 kernel headers
3922
- if name == "MFD_NOEXEC_SEAL" || name == "MFD_EXEC" {
3923
- return true ;
3924
- }
3925
3838
}
3926
3839
match name {
3927
3840
// These constants are not available if gnu headers have been included
@@ -4006,7 +3919,7 @@ fn test_linux(target: &str) {
4006
3919
"SECCOMP_FILTER_FLAG_WAIT_KILLABLE_RECV" if sparc64 => true ,
4007
3920
4008
3921
// FIXME: Not currently available in headers on ARM and musl.
4009
- "NETLINK_GET_STRICT_CHK" if arm || musl => true ,
3922
+ "NETLINK_GET_STRICT_CHK" if arm => true ,
4010
3923
4011
3924
// kernel constants not available in uclibc 1.0.34
4012
3925
| "EXTPROC"
@@ -4075,62 +3988,14 @@ fn test_linux(target: &str) {
4075
3988
| "MINSIGSTKSZ"
4076
3989
if gnu => true ,
4077
3990
4078
- // FIXME: Linux >= 5.10:
4079
- // https://github.com/torvalds/linux/commit/d25e2e9388eda61b6e298585024ee3355f50c493
4080
- "NF_INET_INGRESS" if musl => true ,
4081
-
4082
3991
// FIXME: Linux >= 5.16:
4083
3992
// https://github.com/torvalds/linux/commit/42df6e1d221dddc0f2acf2be37e68d553ad65f96
4084
- "NF_NETDEV_EGRESS" if musl || sparc64 => true ,
3993
+ "NF_NETDEV_EGRESS" if sparc64 => true ,
4085
3994
// value changed
4086
- "NF_NETDEV_NUMHOOKS" if musl || sparc64 => true ,
4087
-
4088
- // FIXME: requires Linux >= 5.6:
4089
- | "RESOLVE_BENEATH"
4090
- | "RESOLVE_CACHED"
4091
- | "RESOLVE_IN_ROOT"
4092
- | "RESOLVE_NO_MAGICLINKS"
4093
- | "RESOLVE_NO_SYMLINKS"
4094
- | "RESOLVE_NO_XDEV" if musl => true ,
4095
-
4096
- // FIXME: requires Linux >= 5.4:
4097
- | "CAN_J1939"
4098
- | "CAN_NPROTO" if musl => true ,
4099
-
4100
- // FIXME: requires Linux >= 5.6
4101
- "GRND_INSECURE" if musl => true ,
4102
-
4103
- // FIXME: requires Linux >= 5.7:
4104
- "MREMAP_DONTUNMAP" if musl => true ,
3995
+ "NF_NETDEV_NUMHOOKS" if sparc64 => true ,
4105
3996
4106
3997
// FIXME: requires Linux >= v5.8
4107
- "IF_LINK_MODE_TESTING" if musl || sparc64 => true ,
4108
-
4109
- // FIXME: Requires more recent kernel headers (5.9 / 5.11):
4110
- | "CLOSE_RANGE_UNSHARE"
4111
- | "CLOSE_RANGE_CLOEXEC" if musl => true ,
4112
-
4113
- // FIXME: requires Linux >= 5.12:
4114
- "MPOL_F_NUMA_BALANCING" if musl => true ,
4115
-
4116
- // FIXME: Requires more recent kernel headers
4117
- | "NFNL_SUBSYS_COUNT" // bumped in v5.14
4118
- | "NFNL_SUBSYS_HOOK" // v5.14+
4119
- | "NFULA_VLAN" // v5.4+
4120
- | "NFULA_L2HDR" // v5.4+
4121
- | "NFULA_VLAN_PROTO" // v5.4+
4122
- | "NFULA_VLAN_TCI" // v5.4+
4123
- | "NFULA_VLAN_UNSPEC" // v5.4+
4124
- | "RTNLGRP_NEXTHOP" // linux v5.3+
4125
- | "RTNLGRP_BRVLAN" // linux v5.6+
4126
- if musl => true ,
4127
-
4128
- | "MADV_COLD"
4129
- | "MADV_PAGEOUT"
4130
- | "MADV_POPULATE_READ"
4131
- | "MADV_POPULATE_WRITE"
4132
- if musl => true ,
4133
- "CLONE_CLEAR_SIGHAND" | "CLONE_INTO_CGROUP" => true ,
3998
+ "IF_LINK_MODE_TESTING" if sparc64 => true ,
4134
3999
4135
4000
// FIXME: Requires >= 6.3 kernel headers
4136
4001
"MFD_EXEC" | "MFD_NOEXEC_SEAL" if sparc64 => true ,
@@ -4152,9 +4017,6 @@ fn test_linux(target: &str) {
4152
4017
=> true ,
4153
4018
"SCTP_FUTURE_ASSOC" | "SCTP_CURRENT_ASSOC" | "SCTP_ALL_ASSOC" | "SCTP_PEER_ADDR_THLDS_V2" => true , // linux 5.5+
4154
4019
4155
- // FIXME: Requires more recent kernel headers
4156
- "HWTSTAMP_TX_ONESTEP_P2P" if musl => true , // linux v5.6+
4157
-
4158
4020
// kernel 6.5 minimum
4159
4021
"MOVE_MOUNT_BENEATH" => true ,
4160
4022
// FIXME: Requires linux 6.1
@@ -4176,10 +4038,8 @@ fn test_linux(target: &str) {
4176
4038
| "FAN_INFO" // linux v5.16+
4177
4039
=> true ,
4178
4040
4179
- // FIXME: Requires linux 5.15+
4180
- "FAN_REPORT_PIDFD" if musl => true ,
4181
-
4182
- // FIXME: Requires linux 5.9+
4041
+ // musl doesn't use <linux/fanotify.h> in <sys/fanotify.h>
4042
+ "FAN_REPORT_PIDFD"
4183
4043
| "FAN_REPORT_DIR_FID"
4184
4044
| "FAN_REPORT_NAME"
4185
4045
| "FAN_REPORT_DFID_NAME"
@@ -4193,55 +4053,6 @@ fn test_linux(target: &str) {
4193
4053
// FIXME: Requires linux 6.5
4194
4054
"NFT_MSG_MAX" => true ,
4195
4055
4196
- // FIXME: Requires >= 5.1 kernel headers.
4197
- // Everything that uses install-musl.sh has 4.19 kernel headers.
4198
- "TLS_1_3_VERSION"
4199
- | "TLS_1_3_VERSION_MAJOR"
4200
- | "TLS_1_3_VERSION_MINOR"
4201
- | "TLS_CIPHER_AES_GCM_256"
4202
- | "TLS_CIPHER_AES_GCM_256_IV_SIZE"
4203
- | "TLS_CIPHER_AES_GCM_256_KEY_SIZE"
4204
- | "TLS_CIPHER_AES_GCM_256_SALT_SIZE"
4205
- | "TLS_CIPHER_AES_GCM_256_TAG_SIZE"
4206
- | "TLS_CIPHER_AES_GCM_256_REC_SEQ_SIZE"
4207
- if ( aarch64 || arm || i686 || s390x || x86_64) && musl =>
4208
- {
4209
- true
4210
- }
4211
-
4212
- // FIXME: Requires >= 5.11 kernel headers.
4213
- // Everything that uses install-musl.sh has 4.19 kernel headers.
4214
- "TLS_CIPHER_CHACHA20_POLY1305"
4215
- | "TLS_CIPHER_CHACHA20_POLY1305_IV_SIZE"
4216
- | "TLS_CIPHER_CHACHA20_POLY1305_KEY_SIZE"
4217
- | "TLS_CIPHER_CHACHA20_POLY1305_SALT_SIZE"
4218
- | "TLS_CIPHER_CHACHA20_POLY1305_TAG_SIZE"
4219
- | "TLS_CIPHER_CHACHA20_POLY1305_REC_SEQ_SIZE"
4220
- if ( aarch64 || arm || i686 || s390x || x86_64) && musl =>
4221
- {
4222
- true
4223
- }
4224
-
4225
- // FIXME: Requires >= 5.3 kernel headers.
4226
- // Everything that uses install-musl.sh has 4.19 kernel headers.
4227
- "XDP_OPTIONS_ZEROCOPY" | "XDP_OPTIONS"
4228
- if musl =>
4229
- {
4230
- true
4231
- }
4232
-
4233
- // FIXME: Requires >= 5.4 kernel headers.
4234
- // Everything that uses install-musl.sh has 4.19 kernel headers.
4235
- "XSK_UNALIGNED_BUF_OFFSET_SHIFT"
4236
- | "XSK_UNALIGNED_BUF_ADDR_MASK"
4237
- | "XDP_UMEM_UNALIGNED_CHUNK_FLAG"
4238
- | "XDP_RING_NEED_WAKEUP"
4239
- | "XDP_USE_NEED_WAKEUP"
4240
- if musl =>
4241
- {
4242
- true
4243
- }
4244
-
4245
4056
// FIXME: Requires >= 6.6 kernel headers.
4246
4057
"XDP_USE_SG"
4247
4058
| "XDP_PKT_CONTD"
@@ -4283,14 +4094,6 @@ fn test_linux(target: &str) {
4283
4094
| "PF_MCE_EARLY"
4284
4095
| "PF_MEMALLOC_PIN" => true ,
4285
4096
4286
- "SCHED_FLAG_KEEP_POLICY"
4287
- | "SCHED_FLAG_KEEP_PARAMS"
4288
- | "SCHED_FLAG_UTIL_CLAMP_MIN"
4289
- | "SCHED_FLAG_UTIL_CLAMP_MAX"
4290
- | "SCHED_FLAG_KEEP_ALL"
4291
- | "SCHED_FLAG_UTIL_CLAMP"
4292
- | "SCHED_FLAG_ALL" if musl => true , // Needs more recent linux headers.
4293
-
4294
4097
// FIXME: Requires >= 6.9 kernel headers.
4295
4098
"EPIOCSPARAMS"
4296
4099
| "EPIOCGPARAMS" => true ,
0 commit comments