diff options
author | Lasse Collin <lasse.collin@tukaani.org> | 2009-08-29 13:39:21 +0300 |
---|---|---|
committer | Lasse Collin <lasse.collin@tukaani.org> | 2009-08-29 13:39:21 +0300 |
commit | 27414daadf5727e8ab942374b5ec1c8990122878 (patch) | |
tree | f0c214fa98ef24f296e288529e2aefb456a75794 | |
parent | Fix x86 assembler on GCC 3. (diff) | |
download | xz-27414daadf5727e8ab942374b5ec1c8990122878.tar.xz |
Fix sysctl() usage.
This fixes build on *BSDs and Darwin.
Thanks to Jukka Salmi for the patches.
Richard Koch reported the problem too.
-rw-r--r-- | m4/lc_cpucores.m4 | 2 | ||||
-rw-r--r-- | m4/lc_physmem.m4 | 2 | ||||
-rw-r--r-- | src/common/cpucores.h | 2 | ||||
-rw-r--r-- | src/common/physmem.h | 2 |
4 files changed, 4 insertions, 4 deletions
diff --git a/m4/lc_cpucores.m4 b/m4/lc_cpucores.m4 index 2fae953a..52f7c985 100644 --- a/m4/lc_cpucores.m4 +++ b/m4/lc_cpucores.m4 @@ -43,7 +43,7 @@ main(void) int name[2] = { CTL_HW, HW_NCPU }; int cpus; size_t cpus_size = sizeof(cpus); - sysctl(name, 2, &cpus, &cpus_size, NULL, NULL); + sysctl(name, 2, &cpus, &cpus_size, NULL, 0); return 0; } ]])], [ diff --git a/m4/lc_physmem.m4 b/m4/lc_physmem.m4 index 78be1362..5d9581e1 100644 --- a/m4/lc_physmem.m4 +++ b/m4/lc_physmem.m4 @@ -45,7 +45,7 @@ main(void) int name[2] = { CTL_HW, HW_PHYSMEM }; unsigned long mem; size_t mem_ptr_size = sizeof(mem); - sysctl(name, 2, &mem, &mem_ptr_size, NULL, NULL); + sysctl(name, 2, &mem, &mem_ptr_size, NULL, 0); return 0; } ]])], [ diff --git a/src/common/cpucores.h b/src/common/cpucores.h index 704d8a26..330cd9c9 100644 --- a/src/common/cpucores.h +++ b/src/common/cpucores.h @@ -40,7 +40,7 @@ cpucores(void) int name[2] = { CTL_HW, HW_NCPU }; int cpus; size_t cpus_size = sizeof(cpus); - if (!sysctl(name, &cpus, &cpus_size, NULL, NULL) + if (!sysctl(name, 2, &cpus, &cpus_size, NULL, 0) && cpus_size == sizeof(cpus) && cpus > 0) ret = (uint32_t)(cpus); #endif diff --git a/src/common/physmem.h b/src/common/physmem.h index 63482c6c..0dc77e97 100644 --- a/src/common/physmem.h +++ b/src/common/physmem.h @@ -104,7 +104,7 @@ physmem(void) uint64_t u64; } mem; size_t mem_ptr_size = sizeof(mem.u64); - if (!sysctl(name, 2, &mem.u64, &mem_ptr_size, NULL, NULL)) { + if (!sysctl(name, 2, &mem.u64, &mem_ptr_size, NULL, 0)) { // IIRC, 64-bit "return value" is possible on some 64-bit // BSD systems even with HW_PHYSMEM (instead of HW_PHYSMEM64), // so support both. |