Age | Commit message (Collapse) | Author |
|
based on feedback and discussions with mickey, henric, fgsch and jakob.
ok art@, mickey@, jakob@, henric@
|
|
o Avoid taking the address of an array when we just want a pointer
o Use &array[1] not array + 1
|
|
userland in return values.
deraadt@ ok.
|
|
|
|
remaining instances of them with appropriate copy(9) usage.
ok art@, tested on all arches unless my memory is non-ECC
|
|
/usr/src/local/TiVo/Linux/Don't allow s{e,h}mmni to be set > 0xffff via sysctl since that could
cause id collisions (the macros in <sys/ipc.h> limit the index to 0xffff).
Prompted by a conversation with weingart@
|
|
NetBSD and allow shmctl() to operate on shm segments that have been
marked for removal like other OSes do.
|
|
|
|
There has not been enough activity and interest towards these platform
to keep them lying in the tree.
|
|
PZERO - 4 == 18 which makes it equivalent to PRIBIO; not what we want.
Discussed with art@ some time ago.
|
|
but then check to see that one with our struct proc was not allocated
in the meantime.
|
|
one where semtot was not getting incremented.
|
|
o Add a DPRINTF macro instead of using debugging #ifdefs all over the place
o KNF says to use "return (foo)" not "return(foo)"
o #define EIDRM and ENOMSG at the top instead of using #ifdefs to work
around the fact that we don't have them later on.
|
|
negative message queue id; Vladimir B.Grebenschikov
|
|
to EWOULDBLOCK it would otherwise not get cleared; Jim Geovedi
|
|
- Allow a pool to be initialized with PR_DEBUG which will cause it to
allocate with malloc_debug.
- sprinkle some splassert.
|
|
If the kernel is compiled with MALLOC_DEBUG, M_DEBUG will force the allocation
to be done through malloc_debug.
|
|
|
|
|
|
|
|
Instead of allocating a static amount of memory for the data
structures via valloc() in allocsys(), allocate things dynamically
using pool(9) when possible and malloc(9) when not. The various
members of struct seminfo and struct shminfo are in kern.seminfo
and kern.shminfo respectively (not all members of kern.seminfo are
changable).
The data structures used still leave something to be desired but
things are not made worse in that respect by this commit.
|
|
|
|
- uvm_km_alloc_poolpage1 has its own spl protection, no need to add
additional layer around it.
|
|
|
|
|
|
- Make sure that extent_register is not called more than once on an extent.
|
|
- show timeout_todo in the ddb command.
|
|
|
|
This can happen when debug_malloc_init calls pool_init which calls
malloc (because the kernel is built with POOL_DIAGNOSTIC) which in turn
calls debug_malloc and debug_malloc just happens to trigger on all memory
allocations.
This allows us to run a kernel debugging _all_ allocations.
|
|
|
|
|
|
(see http://www.freebsd.org/cgi/query-pr.cgi?pr=kern/32827).
itojun@ ok
|
|
should not be required, and may be violated soon. With two fixes art
pointed out. ok art@
|
|
|
|
it to properly init filedescs for proc0.
|
|
|
|
|
|
|
|
The inheritace is implemented by setting the default vnodeop to a
bypass op that repeats the operation on the spec/fifo vnodeop vector.
The overhead of one extra indirect function call is worth the cleanup
and improved correctness.
This actually solves a few bugs where some vnode ops were missing from
some vectors (like kqfilter or revoke). (and even more on the ubc
branch).
Inspired by the same thing done in FreeBSD.
|
|
Also uvm_map returns KERN_* codes that are directly mapped to
errnos, so we can return them instead of doing some attempt to
translation.
drahn@ "I see no problem" pval@ "makes sense"
|
|
been fully initialized. Otherwise the scheduler and other things can
accidentally stumble into semi-initialized processes and strange things
can happen. This also requires us to do systrace attachment a bit later.
Debugging help from fgs@
|
|
|
|
partly on the Linux emul code and FreeBSD versions.
We need these for Linux, FreeBSD, and HP-UX emulation.
Also change sys_setreuid() and sys_setregid() to use uid_t and gid_t
respectively.
|
|
uvm_unmap, uvm_deallocate and a few other functions.
Simplifies some code and reduces diff to the UBC branch.
|
|
That gives us the advantage of not being the active address space when
freeing the mappings in the pmap, which can lead to expensive TLB
flushes on some architectures.
plus some minor cleaning.
|
|
One relevant change: round up pool element size to the alignment.
VS: ----------------------------------------------------------------------
|
|
|
|
|
|
First we check for running out of processes (nprocs variable) before we
continue with the fork, then we do various calls that might sleep (and
allow other forks to start and pass that check), then we increase that
variable. This could allow processes to be created past the limit.
Second is that we don't decrease the the process count for this uid
if the stack allocation fails. So a user could run out of processes
he's allowed to run without actually having them.
miod@ ok
|
|
|