svn commit: r365975 - in head: share/man/man9 sys/sys
D Scott Phillips
scottph at FreeBSD.org
Mon Sep 21 22:19:13 UTC 2020
Author: scottph
Date: Mon Sep 21 22:19:12 2020
New Revision: 365975
URL: https://svnweb.freebsd.org/changeset/base/365975
Log:
bitset: expand bit index type to `long`
An upcoming patch to use the bitset macros for tracking vm page
dump information could conceivably need more than INT_MAX bits.
Expand the bit type to long so that the extra range is available
on 64-bit platforms where it would most likely be needed.
CPUSET_COUNT and DOMAINSET_COUNT are also modified to remain of
type `int`.
Reviewed by: kib, markj
Approved by: scottl (implicit)
MFC after: 1 week
Sponsored by: Ampere Computing, Inc.
Differential Revision: https://reviews.freebsd.org/D26190
Modified:
head/share/man/man9/bitset.9
head/sys/sys/bitset.h
head/sys/sys/cpuset.h
head/sys/sys/domainset.h
Modified: head/share/man/man9/bitset.9
==============================================================================
--- head/share/man/man9/bitset.9 Mon Sep 21 22:18:09 2020 (r365974)
+++ head/share/man/man9/bitset.9 Mon Sep 21 22:19:12 2020 (r365975)
@@ -84,13 +84,13 @@
.Fn BIT_EMPTY "const SETSIZE" "struct STRUCTNAME *bitset"
.Ft bool
.Fn BIT_ISFULLSET "const SETSIZE" "struct STRUCTNAME *bitset"
-.Ft int
+.Ft long
.Fn BIT_FFS "const SETSIZE" "struct STRUCTNAME *bitset"
-.Ft int
-.Fn BIT_FFS_AT "const SETSIZE" "struct STRUCTNAME *bitset" "int start"
-.Ft int
+.Ft long
+.Fn BIT_FFS_AT "const SETSIZE" "struct STRUCTNAME *bitset" "long start"
+.Ft long
.Fn BIT_FLS "const SETSIZE" "struct STRUCTNAME *bitset"
-.Ft int
+.Ft long
.Fn BIT_COUNT "const SETSIZE" "struct STRUCTNAME *bitset"
.\"
.Ft bool
Modified: head/sys/sys/bitset.h
==============================================================================
--- head/sys/sys/bitset.h Mon Sep 21 22:18:09 2020 (r365974)
+++ head/sys/sys/bitset.h Mon Sep 21 22:19:12 2020 (r365975)
@@ -213,8 +213,7 @@
*/
#define BIT_FFS_AT(_s, p, start) __extension__ ({ \
__size_t __i; \
- long __mask; \
- int __bit; \
+ long __bit, __mask; \
\
__mask = ~0UL << ((start) % _BITSET_BITS); \
__bit = 0; \
@@ -235,7 +234,7 @@
#define BIT_FLS(_s, p) __extension__ ({ \
__size_t __i; \
- int __bit; \
+ long __bit; \
\
__bit = 0; \
for (__i = __bitset_words((_s)); __i > 0; __i--) { \
@@ -250,7 +249,7 @@
#define BIT_COUNT(_s, p) __extension__ ({ \
__size_t __i; \
- int __count; \
+ long __count; \
\
__count = 0; \
for (__i = 0; __i < __bitset_words((_s)); __i++) \
Modified: head/sys/sys/cpuset.h
==============================================================================
--- head/sys/sys/cpuset.h Mon Sep 21 22:18:09 2020 (r365974)
+++ head/sys/sys/cpuset.h Mon Sep 21 22:19:12 2020 (r365975)
@@ -65,7 +65,7 @@
#define CPU_OR_ATOMIC(d, s) BIT_OR_ATOMIC(CPU_SETSIZE, d, s)
#define CPU_COPY_STORE_REL(f, t) BIT_COPY_STORE_REL(CPU_SETSIZE, f, t)
#define CPU_FFS(p) BIT_FFS(CPU_SETSIZE, p)
-#define CPU_COUNT(p) BIT_COUNT(CPU_SETSIZE, p)
+#define CPU_COUNT(p) ((int)BIT_COUNT(CPU_SETSIZE, p))
#define CPUSET_FSET BITSET_FSET(_NCPUWORDS)
#define CPUSET_T_INITIALIZER BITSET_T_INITIALIZER
Modified: head/sys/sys/domainset.h
==============================================================================
--- head/sys/sys/domainset.h Mon Sep 21 22:18:09 2020 (r365974)
+++ head/sys/sys/domainset.h Mon Sep 21 22:19:12 2020 (r365975)
@@ -68,7 +68,7 @@
BIT_COPY_STORE_REL(DOMAINSET_SETSIZE, f, t)
#define DOMAINSET_FFS(p) BIT_FFS(DOMAINSET_SETSIZE, p)
#define DOMAINSET_FLS(p) BIT_FLS(DOMAINSET_SETSIZE, p)
-#define DOMAINSET_COUNT(p) BIT_COUNT(DOMAINSET_SETSIZE, p)
+#define DOMAINSET_COUNT(p) ((int)BIT_COUNT(DOMAINSET_SETSIZE, p))
#define DOMAINSET_FSET BITSET_FSET(_NDOMAINSETWORDS)
#define DOMAINSET_T_INITIALIZER BITSET_T_INITIALIZER
More information about the svn-src-all
mailing list