89b57fcf01
silent NULL pointer dereference in the i386 and sparc64 pmap_pinit() when the kmem_alloc_nofault() failed to allocate address space. Both functions now return error instead of panicing or dereferencing NULL. As consequence, vmspace_exec() and vmspace_unshare() returns the errno int. struct vmspace arg was added to vm_forkproc() to avoid dealing with failed allocation when most of the fork1() job is already done. The kernel stack for the thread is now set up in the thread_alloc(), that itself may return NULL. Also, allocation of the first process thread is performed in the fork1() to properly deal with stack allocation failure. proc_linkup() is separated into proc_linkup() called from fork1(), and proc_linkup0(), that is used to set up the kernel process (was known as swapper). In collaboration with: Peter Holm Reviewed by: jhb |
||
---|---|---|
.. | ||
avila_ata.c | ||
avila_led.c | ||
avila_machdep.c | ||
files.avila | ||
files.ixp425 | ||
if_npe.c | ||
if_npereg.h | ||
ixdp425_pci.c | ||
ixdp425reg.h | ||
ixp425_a4x_io.S | ||
ixp425_a4x_space.c | ||
ixp425_iic.c | ||
ixp425_intr.h | ||
ixp425_mem.c | ||
ixp425_npe.c | ||
ixp425_npereg.h | ||
ixp425_npevar.h | ||
ixp425_pci_asm.S | ||
ixp425_pci_space.c | ||
ixp425_pci.c | ||
ixp425_qmgr.c | ||
ixp425_qmgr.h | ||
ixp425_space.c | ||
ixp425_timer.c | ||
ixp425_wdog.c | ||
ixp425.c | ||
ixp425reg.h | ||
ixp425var.h | ||
std.avila | ||
std.ixp425 | ||
uart_bus_ixp425.c | ||
uart_cpu_ixp425.c |