mirror of
https://git.hardenedbsd.org/hardenedbsd/HardenedBSD.git
synced 2024-11-24 17:44:17 +01:00
Merge branch 'freebsd/current/main' into hardened/current/master
This commit is contained in:
commit
953a35e679
@ -60,7 +60,7 @@ This is an alias for
|
||||
.It Dv MEMBARRIER_CMD_GLOBAL_EXPEDITED
|
||||
Execute a memory barrier on all running threads of all processes registered
|
||||
with
|
||||
.Dv MEMBARRIER_CMD_REGISTER_GLOBAL_EXPEDITED
|
||||
.Dv MEMBARRIER_CMD_REGISTER_GLOBAL_EXPEDITED .
|
||||
.It Dv MEMBARRIER_CMD_REGISTER_GLOBAL_EXPEDITED
|
||||
Register the process to receive
|
||||
.Dv MEMBARRIER_CMD_GLOBAL_EXPEDITED
|
||||
@ -102,8 +102,9 @@ The
|
||||
argument is ignored.
|
||||
.Sh RETURN VALUES
|
||||
If the
|
||||
.Dv cmd
|
||||
is MEMBARRIER_CMD_QUERY
|
||||
.Fa cmd
|
||||
is
|
||||
.Dv MEMBARRIER_CMD_QUERY
|
||||
a bitmask of supported commands is returned.
|
||||
Otherwise, on success,
|
||||
.Nm
|
||||
|
@ -27,7 +27,7 @@ vesa_load="NO" # Set this to YES to load the vesa module
|
||||
bitmap_load="NO" # Set this to YES if you want splash screen!
|
||||
bitmap_name="splash.bmp" # Set this to the name of the file
|
||||
bitmap_type="splash_image_data" # and place it on the module_path
|
||||
splash="/boot/images/freebsd-logo-rev.png" # Set boot_mute="YES" to load it
|
||||
splash="/boot/images/freebsd-logo-rev.png" # Set boot_mute=YES to load it
|
||||
|
||||
### Screen saver modules ###################################
|
||||
# This is best done in rc.conf
|
||||
|
@ -623,8 +623,9 @@ vm_thread_stack_back(vm_offset_t ks, vm_page_t ma[], int npages, int req_class,
|
||||
m = vm_page_grab(obj, pindex + n,
|
||||
VM_ALLOC_NOCREAT | VM_ALLOC_WIRED);
|
||||
if (m == NULL) {
|
||||
m = vm_page_alloc_domain(obj, pindex + n, domain,
|
||||
req_class | VM_ALLOC_WIRED);
|
||||
m = n > 0 ? ma[n - 1] : vm_page_mpred(obj, pindex);
|
||||
m = vm_page_alloc_domain_after(obj, pindex + n, domain,
|
||||
req_class | VM_ALLOC_WIRED, m);
|
||||
}
|
||||
if (m == NULL)
|
||||
break;
|
||||
|
@ -2013,6 +2013,18 @@ vm_page_rename(vm_page_t m, vm_object_t new_object, vm_pindex_t new_pindex)
|
||||
return (0);
|
||||
}
|
||||
|
||||
/*
|
||||
* vm_page_mpred:
|
||||
*
|
||||
* Return the greatest page of the object with index <= pindex,
|
||||
* or NULL, if there is none. Assumes object lock is held.
|
||||
*/
|
||||
vm_page_t
|
||||
vm_page_mpred(vm_object_t object, vm_pindex_t pindex)
|
||||
{
|
||||
return (vm_radix_lookup_le(&object->rtree, pindex));
|
||||
}
|
||||
|
||||
/*
|
||||
* vm_page_alloc:
|
||||
*
|
||||
@ -2040,16 +2052,7 @@ vm_page_alloc(vm_object_t object, vm_pindex_t pindex, int req)
|
||||
{
|
||||
|
||||
return (vm_page_alloc_after(object, pindex, req,
|
||||
vm_radix_lookup_le(&object->rtree, pindex)));
|
||||
}
|
||||
|
||||
vm_page_t
|
||||
vm_page_alloc_domain(vm_object_t object, vm_pindex_t pindex, int domain,
|
||||
int req)
|
||||
{
|
||||
|
||||
return (vm_page_alloc_domain_after(object, pindex, domain, req,
|
||||
vm_radix_lookup_le(&object->rtree, pindex)));
|
||||
vm_page_mpred(object, pindex)));
|
||||
}
|
||||
|
||||
/*
|
||||
@ -2390,7 +2393,7 @@ vm_page_alloc_contig_domain(vm_object_t object, vm_pindex_t pindex, int domain,
|
||||
object));
|
||||
KASSERT(npages > 0, ("vm_page_alloc_contig: npages is zero"));
|
||||
|
||||
mpred = vm_radix_lookup_le(&object->rtree, pindex);
|
||||
mpred = vm_page_mpred(object, pindex);
|
||||
KASSERT(mpred == NULL || mpred->pindex != pindex,
|
||||
("vm_page_alloc_contig: pindex already allocated"));
|
||||
for (;;) {
|
||||
@ -5073,7 +5076,7 @@ vm_page_grab_pages(vm_object_t object, vm_pindex_t pindex, int allocflags,
|
||||
pflags = vm_page_grab_pflags(allocflags);
|
||||
i = 0;
|
||||
retrylookup:
|
||||
m = vm_radix_lookup_le(&object->rtree, pindex + i);
|
||||
m = vm_page_mpred(object, pindex + i);
|
||||
if (m == NULL || m->pindex != pindex + i) {
|
||||
mpred = m;
|
||||
m = NULL;
|
||||
|
@ -606,8 +606,8 @@ void vm_page_free_zero(vm_page_t m);
|
||||
|
||||
void vm_page_activate (vm_page_t);
|
||||
void vm_page_advise(vm_page_t m, int advice);
|
||||
vm_page_t vm_page_mpred(vm_object_t, vm_pindex_t);
|
||||
vm_page_t vm_page_alloc(vm_object_t, vm_pindex_t, int);
|
||||
vm_page_t vm_page_alloc_domain(vm_object_t, vm_pindex_t, int, int);
|
||||
vm_page_t vm_page_alloc_after(vm_object_t, vm_pindex_t, int, vm_page_t);
|
||||
vm_page_t vm_page_alloc_domain_after(vm_object_t, vm_pindex_t, int, int,
|
||||
vm_page_t);
|
||||
|
Loading…
Reference in New Issue
Block a user