1
0
mirror of https://git.FreeBSD.org/src.git synced 2024-12-18 10:35:55 +00:00
freebsd/sys/sparc64
Konstantin Belousov 89b57fcf01 Fix for the panic("vm_thread_new: kstack allocation failed") and
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
2007-11-05 11:36:16 +00:00
..
central Rototill the sparc64 nexus(4) (actually this brings in the code the 2007-03-07 21:13:51 +00:00
compile
conf Use the correct expanded name for SCTP. 2007-09-26 20:05:07 +00:00
ebus Set the rid for any resource obtained from rman_reserve_resource. 2006-04-20 04:20:41 +00:00
fhc o Revamp the sparc64 interrupt code in order to be able to interface 2007-09-06 19:16:30 +00:00
include Change the management of cached pages (PQ_CACHE) in two fundamental 2007-09-25 06:25:06 +00:00
isa - Make failure to route a ISA interrupt non fatal. Apparently the 2007-10-28 22:08:37 +00:00
pci Make the PCI code aware of PCI domains (aka PCI segments) so we can 2007-09-30 11:05:18 +00:00
sbus o Revamp the sparc64 interrupt code in order to be able to interface 2007-09-06 19:16:30 +00:00
sparc64 Fix for the panic("vm_thread_new: kstack allocation failed") and 2007-11-05 11:36:16 +00:00