freebsd-dev/share
Doug Moore 84e2ae64c5 vm_reserv: use enhanced bitstring for popmaps
vm_reserv.c uses its own bitstring implemenation for popmaps. Using
the bitstring_t type from a standard header eliminates the code
duplication, allows some bit-at-a-time operations to be replaced with
more efficient bitstring range operations, and, in
vm_reserv_test_contig, allows bit_ffc_area_at to more efficiently
search for a big-enough set of consecutive zero-bits.

Make bitstring changes improve the vm_reserv code.  Define a bit_ntest
method to test whether a range of bits is all set, or all clear.
Define bit_ff_at and bit_ff_area_at to implement the ffs and ffc
versions with a parameter to choose between set- and clear- bits.
Improve the area_at implementation.  Modify the bit_nset and
bit_nclear implementations to allow code optimization in the cases
when start or end are multiples of _BITSTR_BITS.

Add a few new cases to bitstring_test.

Discussed with:	alc
Reviewed by:	markj
Tested by:	pho (earlier version)
Differential Revision:	https://reviews.freebsd.org/D33312
2022-01-12 11:03:53 -06:00
..
colldef pkgbase: locales: Also tag the files dir 2021-08-06 14:37:45 +02:00
colldef_unicode pkgbase: locales: Also tag the files dir 2021-08-06 14:37:45 +02:00
ctypedef localedef: unbreak WITHOUT_LOCALES 2021-08-19 12:38:17 -05:00
dict
doc iwlwifi: add man pages 2021-12-27 18:47:25 +00:00
dtrace dtrace: fix ipfw_rule_info_t translator 2021-09-02 16:35:01 +03:00
examples ipfilter: Adjust example returns to conform to style(9) 2022-01-03 18:06:43 -08:00
i18n Remove mkcsmapper_static and mkesdb_static from build-tools 2021-08-02 14:33:25 +01:00
keys pkgbase: Add a FreeBSD-pkg-bootstrap package 2021-12-21 10:17:48 +01:00
man vm_reserv: use enhanced bitstring for popmaps 2022-01-12 11:03:53 -06:00
misc organization.dot: update the re@ roster 2022-01-03 21:04:01 -05:00
mk libsoft: Remove 2022-01-06 22:44:07 -07:00
monetdef pkgbase: locales: Also tag the files dir 2021-08-06 14:37:45 +02:00
monetdef_unicode pkgbase: locales: Also tag the files dir 2021-08-06 14:37:45 +02:00
msgdef pkgbase: locales: Also tag the files dir 2021-08-06 14:37:45 +02:00
msgdef_unicode pkgbase: locales: Also tag the files dir 2021-08-06 14:37:45 +02:00
numericdef pkgbase: locales: Also tag the files dir 2021-08-06 14:37:45 +02:00
numericdef_unicode pkgbase: locales: Also tag the files dir 2021-08-06 14:37:45 +02:00
security
sendmail
skel sh(1): fix home/del key on mobaxterm env 2021-10-20 14:00:20 +02:00
snmp pkgbase: Put the mibs and defs in the bnsmp package 2021-06-19 17:50:03 +02:00
syscons pkgbase: Create a syscons-data package 2021-09-07 10:21:40 +02:00
tabset
termcap termcap: add an entry for the foot terminal 2021-02-21 06:06:47 +01:00
tests
timedef pkgbase: locales: Also tag the files dir 2021-08-06 14:37:45 +02:00
vt pkgbase: Create a vt-data package 2021-09-07 10:21:09 +02:00
zoneinfo pkgbase: Put zoneinfo file in their own package 2021-01-04 16:18:36 +01:00
Makefile locales: now that C.UTF-8 is the default locale, always install it 2021-07-23 16:58:20 +02:00
Makefile.inc