Use kmem_alloc_nofault() rather than kmem_alloc_pageable() in sf_buf_init().

(See revision 1.140 of kern/sys_pipe.c for a detailed rationale.)

Submitted by:	tegge
This commit is contained in:
alc 2003-08-02 04:18:56 +00:00
parent 120ded5cfe
commit 4d05c167d2

View File

@ -1641,7 +1641,7 @@ sf_buf_init(void *arg)
mtx_init(&sf_freelist.sf_lock, "sf_bufs list lock", NULL, MTX_DEF);
mtx_lock(&sf_freelist.sf_lock);
SLIST_INIT(&sf_freelist.sf_head);
sf_base = kmem_alloc_pageable(kernel_map, nsfbufs * PAGE_SIZE);
sf_base = kmem_alloc_nofault(kernel_map, nsfbufs * PAGE_SIZE);
sf_bufs = malloc(nsfbufs * sizeof(struct sf_buf), M_TEMP,
M_NOWAIT | M_ZERO);
for (i = 0; i < nsfbufs; i++) {