summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDan Gohman <dev@sunfishcode.online>2022-01-24 13:06:09 -0800
committerDan Gohman <dev@sunfishcode.online>2022-01-24 13:06:09 -0800
commitd0891d93f27a7631ddb4c0fc19344e6c25229a70 (patch)
tree6bccfb59e402594b70ac4f98226ee182a4778dcc
parentf7f06565f051144b313594672fc32a24635b6e8c (diff)
downloadrust-libc-d0891d93f27a7631ddb4c0fc19344e6c25229a70.tar.gz
Move `BINDERFS_SUPER_MAGIC` and `XFS_SUPER_MAGIC` back into ABI-specific mods.
-rw-r--r--src/unix/linux_like/linux/gnu/mod.rs13
-rw-r--r--src/unix/linux_like/linux/uclibc/mod.rs6
-rw-r--r--src/unix/linux_like/mod.rs4
3 files changed, 19 insertions, 4 deletions
diff --git a/src/unix/linux_like/linux/gnu/mod.rs b/src/unix/linux_like/linux/gnu/mod.rs
index 9a9843e880..0ae854214a 100644
--- a/src/unix/linux_like/linux/gnu/mod.rs
+++ b/src/unix/linux_like/linux/gnu/mod.rs
@@ -846,6 +846,19 @@ pub const O_ACCMODE: ::c_int = 3;
pub const ST_RELATIME: ::c_ulong = 4096;
pub const NI_MAXHOST: ::socklen_t = 1025;
+// Most `*_SUPER_MAGIC` constants are defined at the `linux_like` level; the
+// following are only available on newer Linux versions than the versions
+// currently used in CI in some configurations, so we define them here.
+cfg_if! {
+ if #[cfg(not(target_arch = "s390x"))] {
+ pub const BINDERFS_SUPER_MAGIC: ::c_long = 0x6c6f6f70;
+ pub const XFS_SUPER_MAGIC: ::c_long = 0x58465342;
+ } else if #[cfg(target_arch = "s390x")] {
+ pub const BINDERFS_SUPER_MAGIC: ::c_uint = 0x6c6f6f70;
+ pub const XFS_SUPER_MAGIC: ::c_uint = 0x58465342;
+ }
+}
+
pub const CPU_SETSIZE: ::c_int = 0x400;
pub const PTRACE_TRACEME: ::c_uint = 0;
diff --git a/src/unix/linux_like/linux/uclibc/mod.rs b/src/unix/linux_like/linux/uclibc/mod.rs
index ae1dd1d692..912e2aa419 100644
--- a/src/unix/linux_like/linux/uclibc/mod.rs
+++ b/src/unix/linux_like/linux/uclibc/mod.rs
@@ -87,6 +87,12 @@ pub const SIGEV_THREAD_ID: ::c_int = 4;
pub const AF_VSOCK: ::c_int = 40;
+// Most `*_SUPER_MAGIC` constants are defined at the `linux_like` level; the
+// following are only available on newer Linux versions than the versions
+// currently used in CI in some configurations, so we define them here.
+pub const BINDERFS_SUPER_MAGIC: ::c_long = 0x6c6f6f70;
+pub const XFS_SUPER_MAGIC: ::c_long = 0x58465342;
+
pub const PTRACE_TRACEME: ::c_int = 0;
pub const PTRACE_PEEKTEXT: ::c_int = 1;
pub const PTRACE_PEEKDATA: ::c_int = 2;
diff --git a/src/unix/linux_like/mod.rs b/src/unix/linux_like/mod.rs
index 586c0812db..89d67a6f14 100644
--- a/src/unix/linux_like/mod.rs
+++ b/src/unix/linux_like/mod.rs
@@ -1371,7 +1371,6 @@ cfg_if! {
pub const AFFS_SUPER_MAGIC: ::c_long = 0x0000adff;
pub const AFS_SUPER_MAGIC: ::c_long = 0x5346414f;
pub const AUTOFS_SUPER_MAGIC: ::c_long = 0x0187;
- pub const BINDERFS_SUPER_MAGIC: ::c_long = 0x6c6f6f70;
pub const BPF_FS_MAGIC: ::c_long = 0xcafe4a11;
pub const BTRFS_SUPER_MAGIC: ::c_long = 0x9123683e;
pub const CGROUP2_SUPER_MAGIC: ::c_long = 0x63677270;
@@ -1420,13 +1419,11 @@ cfg_if! {
pub const UDF_SUPER_MAGIC: ::c_long = 0x15013346;
pub const USBDEVICE_SUPER_MAGIC: ::c_long = 0x00009fa2;
pub const XENFS_SUPER_MAGIC: ::c_long = 0xabba1974;
- pub const XFS_SUPER_MAGIC: ::c_long = 0x58465342;
} else if #[cfg(target_arch = "s390x")] {
pub const ADFS_SUPER_MAGIC: ::c_uint = 0x0000adf5;
pub const AFFS_SUPER_MAGIC: ::c_uint = 0x0000adff;
pub const AFS_SUPER_MAGIC: ::c_uint = 0x5346414f;
pub const AUTOFS_SUPER_MAGIC: ::c_uint = 0x0187;
- pub const BINDERFS_SUPER_MAGIC: ::c_uint = 0x6c6f6f70;
pub const BPF_FS_MAGIC: ::c_uint = 0xcafe4a11;
pub const BTRFS_SUPER_MAGIC: ::c_uint = 0x9123683e;
pub const CGROUP2_SUPER_MAGIC: ::c_uint = 0x63677270;
@@ -1475,7 +1472,6 @@ cfg_if! {
pub const UDF_SUPER_MAGIC: ::c_uint = 0x15013346;
pub const USBDEVICE_SUPER_MAGIC: ::c_uint = 0x00009fa2;
pub const XENFS_SUPER_MAGIC: ::c_uint = 0xabba1974;
- pub const XFS_SUPER_MAGIC: ::c_uint = 0x58465342;
}
}