Page MenuHomeFreeBSD

D27507.id80447.diff
No OneTemporary

D27507.id80447.diff

Index: sys/vm/vm_kern.c
===================================================================
--- sys/vm/vm_kern.c
+++ sys/vm/vm_kern.c
@@ -264,9 +264,11 @@
{
struct vm_domainset_iter di;
vm_offset_t addr;
- int domain;
+ int domain, iflags;
- vm_domainset_iter_policy_init(&di, ds, &domain, &flags);
+ /* Don't let the iterator handle M_WAITOK for contig allocs. */
+ iflags = (flags & ~M_WAITOK) | M_NOWAIT;
+ vm_domainset_iter_policy_init(&di, ds, &domain, &iflags);
do {
addr = kmem_alloc_attr_domain(domain, size, flags, low, high,
memattr);
@@ -346,9 +348,11 @@
{
struct vm_domainset_iter di;
vm_offset_t addr;
- int domain;
+ int domain, iflags;
- vm_domainset_iter_policy_init(&di, ds, &domain, &flags);
+ /* Don't let the iterator handle M_WAITOK for contig allocs. */
+ iflags = (flags & ~M_WAITOK) | M_NOWAIT;
+ vm_domainset_iter_policy_init(&di, ds, &domain, &iflags);
do {
addr = kmem_alloc_contig_domain(domain, size, flags, low, high,
alignment, boundary, memattr);

File Metadata

Mime Type
text/plain
Expires
Wed, Apr 22, 2:43 AM (15 h, 44 m)
Storage Engine
blob
Storage Format
Raw Data
Storage Handle
31948243
Default Alt Text
D27507.id80447.diff (1017 B)

Event Timeline