summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorGreg V <greg@unrelenting.technology>2019-12-29 23:18:53 +0000
committerGreg V <greg@unrelenting.technology>2020-07-06 15:31:37 +0300
commit45e7b8bef403dc01abe0243a2bc049060a6f4483 (patch)
tree5f6b9e56ded553d58d3d548c27ce3a6bfda9e356
parente9a75ddd76522bf7e56f282bf64976e0c9e8eb10 (diff)
downloadrust-libc-45e7b8bef403dc01abe0243a2bc049060a6f4483.tar.gz
FreeBSD: fix SIGSTKSZ on arm/aarch64 / add MINSIGSTKSZ
-rw-r--r--src/unix/bsd/freebsdlike/freebsd/aarch64.rs1
-rw-r--r--src/unix/bsd/freebsdlike/freebsd/arm.rs1
-rw-r--r--src/unix/bsd/freebsdlike/freebsd/mod.rs4
-rw-r--r--src/unix/bsd/freebsdlike/freebsd/powerpc64.rs1
-rw-r--r--src/unix/bsd/freebsdlike/freebsd/x86.rs1
-rw-r--r--src/unix/bsd/freebsdlike/freebsd/x86_64/mod.rs1
6 files changed, 7 insertions, 2 deletions
diff --git a/src/unix/bsd/freebsdlike/freebsd/aarch64.rs b/src/unix/bsd/freebsdlike/freebsd/aarch64.rs
index 2ac6d4fb6d..7138c86b32 100644
--- a/src/unix/bsd/freebsdlike/freebsd/aarch64.rs
+++ b/src/unix/bsd/freebsdlike/freebsd/aarch64.rs
@@ -16,3 +16,4 @@ cfg_if! {
}
pub const MAP_32BIT: ::c_int = 0x00080000;
+pub const MINSIGSTKSZ: ::size_t = 4096; // 1024 * 4
diff --git a/src/unix/bsd/freebsdlike/freebsd/arm.rs b/src/unix/bsd/freebsdlike/freebsd/arm.rs
index b7480aa78b..e49de8ad19 100644
--- a/src/unix/bsd/freebsdlike/freebsd/arm.rs
+++ b/src/unix/bsd/freebsdlike/freebsd/arm.rs
@@ -45,3 +45,4 @@ cfg_if! {
}
}
pub const MAP_32BIT: ::c_int = 0x00080000;
+pub const MINSIGSTKSZ: ::size_t = 4096; // 1024 * 4
diff --git a/src/unix/bsd/freebsdlike/freebsd/mod.rs b/src/unix/bsd/freebsdlike/freebsd/mod.rs
index bd626754ec..1e7f156637 100644
--- a/src/unix/bsd/freebsdlike/freebsd/mod.rs
+++ b/src/unix/bsd/freebsdlike/freebsd/mod.rs
@@ -323,9 +323,9 @@ pub const EXTATTR_NAMESPACE_USER: ::c_int = 1;
pub const EXTATTR_NAMESPACE_SYSTEM: ::c_int = 2;
pub const RAND_MAX: ::c_int = 0x7fff_fffd;
-pub const PTHREAD_STACK_MIN: ::size_t = 2048;
+pub const PTHREAD_STACK_MIN: ::size_t = MINSIGSTKSZ;
pub const PTHREAD_MUTEX_ADAPTIVE_NP: ::c_int = 4;
-pub const SIGSTKSZ: ::size_t = 34816;
+pub const SIGSTKSZ: ::size_t = MINSIGSTKSZ + 32768;
pub const SF_NODISKIO: ::c_int = 0x00000001;
pub const SF_MNOWAIT: ::c_int = 0x00000002;
pub const SF_SYNC: ::c_int = 0x00000004;
diff --git a/src/unix/bsd/freebsdlike/freebsd/powerpc64.rs b/src/unix/bsd/freebsdlike/freebsd/powerpc64.rs
index 5c0c6e7f32..39b38a561e 100644
--- a/src/unix/bsd/freebsdlike/freebsd/powerpc64.rs
+++ b/src/unix/bsd/freebsdlike/freebsd/powerpc64.rs
@@ -42,3 +42,4 @@ cfg_if! {
}
pub const MAP_32BIT: ::c_int = 0x00080000;
+pub const MINSIGSTKSZ: ::size_t = 2048; // 512 * 4
diff --git a/src/unix/bsd/freebsdlike/freebsd/x86.rs b/src/unix/bsd/freebsdlike/freebsd/x86.rs
index adec88cb54..8fee434402 100644
--- a/src/unix/bsd/freebsdlike/freebsd/x86.rs
+++ b/src/unix/bsd/freebsdlike/freebsd/x86.rs
@@ -41,3 +41,4 @@ cfg_if! {
pub const _ALIGNBYTES: usize = 8 - 1;
}
}
+pub const MINSIGSTKSZ: ::size_t = 2048; // 512 * 4
diff --git a/src/unix/bsd/freebsdlike/freebsd/x86_64/mod.rs b/src/unix/bsd/freebsdlike/freebsd/x86_64/mod.rs
index ff8f9a9d3e..6049c1a816 100644
--- a/src/unix/bsd/freebsdlike/freebsd/x86_64/mod.rs
+++ b/src/unix/bsd/freebsdlike/freebsd/x86_64/mod.rs
@@ -185,6 +185,7 @@ cfg_if! {
}
}
pub const MAP_32BIT: ::c_int = 0x00080000;
+pub const MINSIGSTKSZ: ::size_t = 2048; // 512 * 4
cfg_if! {
if #[cfg(libc_align)] {