diff options
Diffstat (limited to 'sys/kern/uipc_cow.c')
-rw-r--r-- | sys/kern/uipc_cow.c | 11 |
1 files changed, 7 insertions, 4 deletions
diff --git a/sys/kern/uipc_cow.c b/sys/kern/uipc_cow.c index 2258aca..4cded3f 100644 --- a/sys/kern/uipc_cow.c +++ b/sys/kern/uipc_cow.c @@ -129,10 +129,6 @@ socow_setup(struct mbuf *m0, struct uio *uio) } pp = PHYS_TO_VM_PAGE(pa); - sf = sf_buf_alloc(); - sf->m = pp; - pmap_qenter(sf->kva, &pp, 1); - /* * set up COW */ @@ -145,6 +141,13 @@ socow_setup(struct mbuf *m0, struct uio *uio) vm_page_wire(pp); vm_page_unlock_queues(); + /* + * Allocate an sf buf + */ + sf = sf_buf_alloc(); + sf->m = pp; + pmap_qenter(sf->kva, &pp, 1); + /* * attach to mbuf */ |