<feed xmlns='http://www.w3.org/2005/Atom'>
<title>src/sys/vm/vm_reserv.c, branch stable/13</title>
<subtitle>FreeBSD source tree</subtitle>
<id>https://cgit-dev.freebsd.org/src/atom?h=stable%2F13</id>
<link rel='self' href='https://cgit-dev.freebsd.org/src/atom?h=stable%2F13'/>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/'/>
<updated>2023-08-23T17:43:25Z</updated>
<entry>
<title>sys: Remove $FreeBSD$: one-line .c pattern</title>
<updated>2023-08-23T17:43:25Z</updated>
<author>
<name>Warner Losh</name>
<email>imp@FreeBSD.org</email>
</author>
<published>2023-08-22T01:31:27Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/commit/?id=3bc80996974a61a4223eae4c1ccd47b6ee32a48a'/>
<id>urn:sha1:3bc80996974a61a4223eae4c1ccd47b6ee32a48a</id>
<content type='text'>
Remove /^[\s*]*__FBSDID\("\$FreeBSD\$"\);?\s*\n/

Similar commit in current:
(cherry picked from commit 685dc743dc3b)
</content>
</entry>
<entry>
<title>spdx: The BSD-2-Clause-FreeBSD identifier is obsolete, drop -FreeBSD</title>
<updated>2023-07-25T15:13:49Z</updated>
<author>
<name>Warner Losh</name>
<email>imp@FreeBSD.org</email>
</author>
<published>2023-05-10T15:40:58Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/commit/?id=caa41f641755c935b036e17440a3b49329c904ed'/>
<id>urn:sha1:caa41f641755c935b036e17440a3b49329c904ed</id>
<content type='text'>
The SPDX folks have obsoleted the BSD-2-Clause-FreeBSD identifier. Catch
up to that fact and revert to their recommended match of BSD-2-Clause.

Discussed with:		pfg
MFC After:		3 days
Sponsored by:		Netflix

(cherry picked from commit 4d846d260e2b9a3d4d0a701462568268cbfe7a5b)
</content>
</entry>
<entry>
<title>vm_reserv: #include vm_extern.h explicitly, for arm.</title>
<updated>2022-07-12T16:26:06Z</updated>
<author>
<name>Doug Moore</name>
<email>dougm@FreeBSD.org</email>
</author>
<published>2021-12-31T06:40:25Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/commit/?id=6f387a56320608f80977496c67af12a2ce173a52'/>
<id>urn:sha1:6f387a56320608f80977496c67af12a2ce173a52</id>
<content type='text'>
Fixes:	c606ab59e7f9 vm_extern: use standard address checkers everywhere
(cherry picked from commit f76916c0956d8318412e7aa30711b8411864ef21)
</content>
</entry>
<entry>
<title>vm_extern: use standard address checkers everywhere</title>
<updated>2022-07-12T16:26:03Z</updated>
<author>
<name>Doug Moore</name>
<email>dougm@FreeBSD.org</email>
</author>
<published>2021-12-31T04:09:08Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/commit/?id=c5a5a9dbcf38e046d53efa149ba8fbc8aef24e15'/>
<id>urn:sha1:c5a5a9dbcf38e046d53efa149ba8fbc8aef24e15</id>
<content type='text'>
Define simple functions for alignment and boundary checks and use them
everywhere instead of having slightly different implementations
scattered about. Define them in vm_extern.h and use them where
possible where vm_extern.h is included.

Reviewed by:	kib, markj
Differential Revision:	https://reviews.freebsd.org/D33685

(cherry picked from commit c606ab59e7f9423f7027320e9a4514c7db39658d)
</content>
</entry>
<entry>
<title>vm_reserv: use enhanced bitstring for popmaps</title>
<updated>2022-07-11T05:54:06Z</updated>
<author>
<name>Doug Moore</name>
<email>dougm@FreeBSD.org</email>
</author>
<published>2022-01-12T17:03:53Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/commit/?id=b1290f4746cac5826b7a49a7e279557f8ed7918c'/>
<id>urn:sha1:b1290f4746cac5826b7a49a7e279557f8ed7918c</id>
<content type='text'>
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

(cherry picked from commit 84e2ae64c597000a0152c6772b2c8925773c6f6c)
</content>
</entry>
<entry>
<title>vm: alloc pages from reserv before breaking it</title>
<updated>2022-07-11T05:41:07Z</updated>
<author>
<name>Doug Moore</name>
<email>dougm@FreeBSD.org</email>
</author>
<published>2021-12-24T18:59:16Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/commit/?id=88a5d20e90438735cb456ba04055c26073c12057'/>
<id>urn:sha1:88a5d20e90438735cb456ba04055c26073c12057</id>
<content type='text'>
Function vm_reserv_reclaim_contig breaks a reservation with enough
free space to satisfy an allocation request and returns the free space
to the buddy allocator. Change the function to allocate the request
memory from the reservation before breaking it, and return that memory
to the caller. That avoids a second call to the buddy allocator and
guarantees successful allocation after breaking the reservation, where
that success is not currently guaranteed.

Reviewed by:	alc, kib (previous version)
Differential Revision:	https://reviews.freebsd.org/D33644

(cherry picked from commit 0d5fac287294490ac488d74e598e019334610bdb)
</content>
</entry>
<entry>
<title>vm_reserv: fix zero-boundary error</title>
<updated>2021-12-29T17:23:48Z</updated>
<author>
<name>Doug Moore</name>
<email>dougm@FreeBSD.org</email>
</author>
<published>2021-12-26T17:40:27Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/commit/?id=dd8ea1c755b3cc2c9c4eaa8611a97ac8f0f9b755'/>
<id>urn:sha1:dd8ea1c755b3cc2c9c4eaa8611a97ac8f0f9b755</id>
<content type='text'>
Handle specially the boundary==0 case of vm_reserv_reclaim_config,
by turning off boundary adjustment in that case.

Reviewed by:	alc
Tested by:	pho, madpilot

(cherry picked from commit 49fd2d51f07fb29af3fd239f83f249c00cd84123)
</content>
</entry>
<entry>
<title>Correct type size format error in KASSERT.</title>
<updated>2021-12-23T08:02:42Z</updated>
<author>
<name>Doug Moore</name>
<email>dougm@FreeBSD.org</email>
</author>
<published>2021-12-16T19:48:58Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/commit/?id=42f18ad1126bf119a7b29b7c8561b27f1cffc57c'/>
<id>urn:sha1:42f18ad1126bf119a7b29b7c8561b27f1cffc57c</id>
<content type='text'>
Reported by:	jenkins
Fixes:	6f1c8908272f vm: Don't break vm reserv that can't meet align reqs

(cherry picked from commit f7aa44763d20d06c9ea5caf330aca02a8b107a70)
</content>
</entry>
<entry>
<title>vm: Don't break vm reserv that can't meet align reqs</title>
<updated>2021-12-23T08:01:17Z</updated>
<author>
<name>Doug Moore</name>
<email>dougm@FreeBSD.org</email>
</author>
<published>2021-12-16T18:20:56Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/commit/?id=3b8062cdd5a86232957cfb26e6f89ca4798ecad0'/>
<id>urn:sha1:3b8062cdd5a86232957cfb26e6f89ca4798ecad0</id>
<content type='text'>
Function vm_reserv_test_contig has incorrectly used its alignment
and boundary parameters to find a well-positioned range of empty pages
in a reservation.  Consequently, a reservation could be broken
mistakenly when it was unable to provide a satisfactory set of pages.

Rename the function, correct the errors, and add assertions to detect
the error in case it appears again.

Reviewed by:	alc, markj
MFC after:	1 week
Differential Revision:	https://reviews.freebsd.org/D33344

(cherry picked from commit 6f1c8908272f3c0a6631e001bd2eb50a5b69261d)
</content>
</entry>
<entry>
<title>Set uninitialized popmap bits in vm_reserv_init</title>
<updated>2021-12-14T05:09:13Z</updated>
<author>
<name>Doug Moore</name>
<email>dougm@FreeBSD.org</email>
</author>
<published>2021-12-05T23:17:25Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/commit/?id=0848451a2ee5da154f0c4b975697102be4f349f2'/>
<id>urn:sha1:0848451a2ee5da154f0c4b975697102be4f349f2</id>
<content type='text'>
In vm_reserv_init, set all the marker popmap bits in vm_reserv_init,
and not just the bits of the first popmap entry.

Reviewed by:	markj
MFC after:	1 week
Differential Revision:	https://reviews.freebsd.org/D33258

(cherry picked from commit 9f32cb5b1c81ceed28491c031cd109811a5f5d7a)
</content>
</entry>
</feed>
