summaryrefslogtreecommitdiff
path: root/sys/kern
AgeCommit message (Collapse)Author
2005-11-28ansi/deregister.Jonathan Gray
'go for it' deraadt@
2005-11-27Don't set MNT_UPDATE and MNT_RELOAD before acquiring the mount pointPedro Martelletto
lock. Fixes a race as seen on PR kern/4915. Okay miod@ and joris@, tested by krw@ and hshoexer@, thanks.
2005-11-25built files should be checked in after the source fileTed Unangst
2005-11-24Remove kernfs, okay deraadt@.Pedro Martelletto
2005-11-21Move contents of sys/select.h to sys/selinfo.h in preparation for aTodd C. Miller
userland-visible sys/select.h. Consistent with what Net and Free do. OK deraadt@, tested with full ports build by naddy@.
2005-11-21rename the sensor globals to names that are not obvious to avoidDavid Gwynne
collisions with local variable names someone might make. this has bitten me twice now and caused me to lose about 4 hours scratching my head when nsensors just magically corrupts and gets bigger. at least my ram isnt screwed. ok marco@
2005-11-21Fix a crash in ptmioctl() in the error path when the master hasTodd C. Miller
been opened but the slave cannot be. We can't do the FILE_SET_MATURE until we are past all possible error paths since it calls FRELE(), resulting in a reference count of 0, which closef() panics on #ifdef DIAGNOSTIC. OK deraadt@
2005-11-20Use ANSI function declarations and deregister, no binary changePedro Martelletto
2005-11-19Remove unnecessary lockmgr() archaism that was costing too much in termsPedro Martelletto
of panics and bugfixes. Access curproc directly, do not expect a process pointer as an argument. Should fix many "process context required" bugs. Incentive and okay millert@, okay marc@. Various testing, thanks.
2005-11-18Work around yet another race on non-locking file systems: when callingPedro Martelletto
VOP_INACTIVE() in vrele() and vput(), we may sleep. Since there's no locking of any kind, someone can vget() the vnode and vrele() it while we sleep, beating us in getting the vnode on the free list.
2005-11-17style; no binary change.Federico G. Schwindt
2005-11-15Save process context in ktrwrite(), as it may be needed for lockingPedro Martelletto
purposes by the file system specific write routine. Fixes PR 4612. Okay deraadt@.
2005-11-15Match comments with realityPedro Martelletto
2005-11-13shorten this a bit through better use of TAILQ macros.David Gwynne
mostly ok otto@ (ive since fixed the chunk he was worried about)
2005-11-13move kgdb_connect and kgdb_panic into MI. looked by miod@ and kettenis@Federico G. Schwindt
2005-11-12ansi. No binary change.Jonathan Gray
2005-11-11Allow binaries to run if all sections are marked writableDale Rahn
(some unusual linux binaries), ok deraadt.
2005-11-10the tasklist can be modified while the kthread is sleeping, so refetchDavid Gwynne
the first element before iterating through the rest of them. stylistic guidance from angela pascoe. mark all tasks using the same argument as not running anymore, rather than just the first one we bump into.
2005-11-10first go at a generic kthread for sensors to be run out of. its a bitDavid Gwynne
hairy at the moment, but its going into the tree so it can be worked on and used.
2005-11-10split the sensors stuff out into a source file of its own.David Gwynne
tested on GENERIC and RAMDISK_CD to see if the small_kernel stuff stays happy
2005-11-08Missed one use of 'register'Pedro Martelletto
2005-11-08Use ANSI function declarations and deregister, no binary changePedro Martelletto
2005-11-07Use ANSI function declarations and deregister, no binary changePedro Martelletto
2005-11-07nitPedro Martelletto
2005-11-06Make comments match reality, space the code a bit while at itPedro Martelletto
2005-11-06Use ANSI-style function declarations, no binary change, okay jsg@Pedro Martelletto
2005-11-04Add an extra flags argument to uvm_io(), to specify whether we want to fixMiod Vallat
the protection of the memory mapping we're doing I/O on, or if we want to leave them as they are. This should only be necessary for breakpoint insertion in code, so we'll only use it for ptrace requests. Initially from art@ after discussion with kettenis@ millert@ and I, tested by many.
2005-11-02Avoid a theoretical race condition.Aaron Campbell
In fork1(), setup the p_{prof,virt}_to timeouts _before_ putting the process on the runqueue. Since SCHED_UNLOCK() can cause pre-emption, it is possible (with the old code) for the newly created process to run and become curproc before the timeouts were set. If itimers are set early, and you're unlucky, hardclock() might fire at this time and attempt timeout_add() on the unset timeouts, leading to "panic: timeout_add: not initialized". deraadt@, miod@ ok
2005-10-27make sure ppsratecheck() returns 0 if maxpps is 0;Markus Friedl
from alexander bluhm; ok deraadt
2005-10-25dont' -> don't in comments;Jason McIntyre
from ray lai;
2005-10-19Remove v_vnlock from struct vnode, okay krw@ tedu@Pedro Martelletto
2005-10-13In realitexpire(), do not re-add the itimer timeout if the process is inAaron Campbell
the midst of exiting. This solves a race condition that causes freed memory to be left referenced in the master kernel timeout worklist, leading to a uvm_fault. The same race condition was already fixed earlier in r1.53 of kern_clock.c for the process virtual and profile timeout structs. deraadt@ ok, testing by krw@
2005-10-10Avoid arithmetic overflows in computation of adjtime(). Fixes adjusting in theOtto Moerbeek
wrong direction for large offsets as nick@ saw. With tom@ and toby@; ok tdeval@ krw@
2005-10-08Revert revision 1.39. Under heavy load, it could cause severe corruptionPedro Martelletto
in the buffer lists by removing a buffer from the hash twice. Problem identified in discussion with Alexander Bluhm <Alexander_Bluhm@genua.de>.
2005-10-04Make the syncer grab a reference for the vnode to avoid it from beingPedro Martelletto
reclaimed while in this sensitive time frame. That is needed when we don't have locks. Should fix the 'sched_sync: fsync failed' panic some people were seeing. Testing mostly by sturm@ and krw@, okay tedu@ and deraadt@.
2005-10-03In hardclock(), do not setup process virtual and profile timers if the processAaron Campbell
is in the midst of exiting. This solves a race condition that causes freed memory to be left referenced in the master kernel timeout worklist, leading to a uvm_fault (observed on an i386 MP system). tedu@, deraadt@, miod@ ok
2005-09-27typo in comment: sprintf -> snprintf, ok markus@Alexander von Gernler
2005-09-25Turn CPU_INFO_FOREACH into a real construct, like all queue(3) iterators,Miod Vallat
instead of the contents of a for() loop. No functional change. From the m88k SMP tree; ok art@ deraadt@ [complete diff this time]
2005-09-20unbreak tree, how did you do that miodTheo de Raadt
2005-09-20Turn CPU_INFO_FOREACH into a real construct, like all queue(3) iterators,Miod Vallat
instead of the contents of a for() loop. No functional change. From the m88k SMP tree; ok art@ deraadt@
2005-09-16backout until we find a socket state for initTheo de Raadt
2005-09-14ptrace(2) following fork(2)Mark Kettenis
ok miod@
2005-09-12Change the NKMEMPAGES range to 4-64MB for 32bit arches, and 8-128MB for 64bitMiod Vallat
arches; except on sparc where the range is 4-8 for !sun4m and 4-64 for sun4m, selected at runtime.
2005-09-10do not trust user input for sysctl. constrain arguments passed to ktraceTheo de Raadt
to CTL_MAXNAME; ok espie uwe
2005-09-10upon shutdown(), if socket is unconnected return ENOTCONN; ok millertTheo de Raadt
2005-08-14catched->caughtMiod Vallat
2005-08-11Use SHUT_* values directly in soshutdown() instead of convertingTodd C. Miller
to FREAD/FWRITE. OK deraadt@
2005-08-02Reduce stack usage.Mark Kettenis
2005-08-01 - We shouldn't allocate MAXPATHLEN from the stack.Artur Grabowski
- Don't copy the pathbuf into kernel space unless we're systracing. deraadt@ ok
2005-08-01sys_select() used to use 6 local fd_set's in case the width was <= theTheo de Raadt
size of an fd_set (ie. 256 bits), to avoid the malloc. that is a lot of local storage. change the cross-over point to 32-bits, which is more fair. if you select with large widths, you pay the price. tested by dlg, read by millert and pascoe, run on all machines