On Mon, Apr 18, 2011 at 03:47:27PM -0600, Artur Grabowski wrote:
> A repeat of an earlier diff.
>
> Change stack and exec arguments allocation from old allocators to km_alloc(9).
> int
> fork1(struct proc *p1, int exitsig, int flags, void *stack, size_t stacksize,
> void (*func)(void *), void *arg, register_t *retval,
> @@ -204,7 +209,7 @@
> uid_t uid;
> struct vmspace *vm;
> int count;
> - vaddr_t uaddr;
> + struct user *uaddr;
> int s;
> extern void endtsleep(void *);
> extern void realitexpire(void *);
> @@ -251,10 +256,7 @@
> return (EAGAIN);
> }
>
> - uaddr = uvm_km_kmemalloc_pla(kernel_map, uvm.kernel_object, USPACE,
> - USPACE_ALIGN, UVM_KMF_ZERO,
> - dma_constraint.ucr_low, dma_constraint.ucr_high,
> - 0, 0, USPACE/PAGE_SIZE);
> + uaddr = km_alloc(USPACE, &kv_fork, &kp_dma_zero, &kd_waitok);
> if (uaddr == 0) {
I prefer if that compares to NULL instead.
Ok ariane@
--
Ariane