summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorHiroki Noda <kubo39@gmail.com>2020-04-15 08:52:05 +0900
committerHiroki Noda <kubo39@gmail.com>2020-04-16 07:16:48 +0900
commitbe0f98a78eccf23f615dba07ec7f8c4cc1ba6eb0 (patch)
tree4656f36ffd09850e8f4e46e82715482f61f31182
parente0fc936d8606fcd096800519868a865151e92d72 (diff)
downloadrust-libc-be0f98a78eccf23f615dba07ec7f8c4cc1ba6eb0.tar.gz
Add CPU_ALLOC_SIZE
Co-Authored-By: Yuki Okushi <huyuumi.dev@gmail.com>
-rw-r--r--src/unix/linux_like/linux/mod.rs6
1 files changed, 6 insertions, 0 deletions
diff --git a/src/unix/linux_like/linux/mod.rs b/src/unix/linux_like/linux/mod.rs
index 5e410a6697..27d5ab2219 100644
--- a/src/unix/linux_like/linux/mod.rs
+++ b/src/unix/linux_like/linux/mod.rs
@@ -2620,6 +2620,12 @@ f! {
}
}
+ pub fn CPU_ALLOC_SIZE(count: ::c_int) -> ::size_t {
+ let _dummy: cpu_set_t = ::mem::zeroed();
+ let size_in_bits = 8 * ::mem::size_of_val(&_dummy.bits[0]);
+ ((count as ::size_t + size_in_bits - 1) / 8) as ::size_t
+ }
+
pub fn CPU_ZERO(cpuset: &mut cpu_set_t) -> () {
for slot in cpuset.bits.iter_mut() {
*slot = 0;