summaryrefslogtreecommitdiffstats
path: root/sys/kern
Commit message (Collapse)AuthorAgeFilesLines
* Undo a mistaken change from splhigh to splvm. Subr_rlist has beendyson1996-10-121-4/+4
| | | | | | capable of being used for things other than swap space allocation, and splvm would have been appropriate for only swap space allocation and other VM things. My commit broke that (and was actually a mistake.)
* Performance optimizations. One of which was meant to go in before thedyson1996-10-123-7/+11
| | | | | | | | previous snap. Specifically, kern_exit and kern_exec now makes a call into the pmap module to do a very fast removal of pages from the address space. Additionally, the pmap module now updates the PG_MAPPED and PG_WRITABLE flags. This is an optional optimization, but helpful on the X86.
* Fix two bugs I accidently put into the syn code at the last minutepst1996-10-112-18/+22
| | | | | | | | | | (yes I had tested the hell out of this). I've also temporarily disabled the code so that it behaves as it previously did (tail drop's the syns) pending discussion with fenner about some socket state flags that I don't fully understand. Submitted by: fenner
* Mostly some fixes from bde to start support for ASYNC I/O (SIGIO).dyson1996-10-111-11/+19
| | | | Submitted by: bde
* Don't include "opt_cpu.h" in <machine/clock.h>, since this breaks lkm's.bde1996-10-103-3/+9
| | | | | The change breaks kern_clock.c; fix that temporarily by including "opt_cpu.h" there.
* Put I*86_CPU defines in opt_cpu.h.bde1996-10-091-3/+4
|
* Increase robustness of FreeBSD against high-rate connection attemptpst1996-10-073-13/+94
| | | | | | | denial of service attacks. Reviewed by: bde,wollman,olah Inspired by: vjs@sgi.com
* Fix 4 problems:dyson1996-10-062-14/+29
| | | | | | | | | | | Major: When blocking occurs in allocbuf() for VMIO files, excess wire counts could accumulate. Major: Pages are incorrectly accumulated into the physical buffer for clustered reads. This happens when bogus page is needed. Minor: When reclaiming buffers, the async flag on the buffer needs to be zero, or the reclaim is not optimal. Minor: The age flag should be cleared, if a buffer is wanted.
* If we have no console device it is possible to bejulian1996-10-041-2/+2
| | | | | | | | | 1/ session leader 2/ Have a console device vnode (/dev/console) 3/ have NULL pointer for a consoel tty struct. fix the only case where the tty struct is referenced without a prior check for existance.
* Drop an unused param to unmap_pages().peter1996-10-031-7/+7
|
* if we jump the time, we need to check all the process real interval timers.julian1996-09-301-2/+5
|
* Fixed bitrot in the read-only attribute:bde1996-09-281-5/+4
| | | | | | - kern.maxfilesperproc was read-only (and thus essentially useless). Removed unused #includes. Strength-reduced used #includes.
* Oops, read-only is spelled RD here.bde1996-09-281-21/+21
|
* Fixed bitrot in the read-only attribute:bde1996-09-281-26/+23
| | | | | | | | | - kern.maxproc and kern.maxprocperuid were read-only (and thus essentially useless. Apparently no one uses them). - all the user sysctls were read-write (and thus it was possible for them to be inconsistent with the authoritative fixed values in the library). Removed unused #include.
* Correct vget by removing a window where a vnode can potentially go away.dyson1996-09-282-6/+6
|
* I've been meaning to commit this for months. Implement select()peter1996-09-271-1/+30
| | | | | | for /dev/random and /dev/urandom. Both are always writable, urandom is always readable, and /dev/random is readable when >= 8 bits are in the pool.
* call srandom() during the boot to start the sequence with a slightly lesspeter1996-09-231-1/+9
| | | | predictable seed.
* Remove the extra length field from the utrace entries. It's redundant.phk1996-09-221-9/+5
|
* Remove the code that renices +4 a process that has had 10 minutes ofgpalmer1996-09-221-7/+2
| | | | | | CPU time. I find it slightly annoying on one of our servers here. Also disliked by: David Greenman
* Don't include <sys/conf.h> for the kernel in disk-related headers.bde1996-09-204-4/+8
| | | | | | | | | | It is needed for implementation details but very little of it is needed for the interface. Include it in the few places that didn't already include it. Include <sys/ioccom.h> in <sys/disklabel.h> (as already in <sys/diskslice.h>) so that all the disk-related headers are almost self-sufficient.
* Fix an spl window, a page manipulation at interrupt time that wasdyson1996-09-201-28/+84
| | | | | | incorrect, and correct the support for B_ORDERED. The spl window fix was from Peter Wemm, and his questions led me to find the problem with the interrupt time page manipulation.
* Add the utrace(caddr_t addr,size_t len) syscall, that will store thephk1996-09-194-5/+44
| | | | | | | | data pointed at in a ktrace file, if this process is being ktrace'ed. I'm using this to profile malloc usage. The advantage is that there is no context around this call, ie, no open file or socket, so it will work in any process, and you can decide if you want it to collect data or not.
* In sys/time.h, struct timespec is defined as:nate1996-09-194-18/+18
| | | | | | | | | | | | | | /* * Structure defined by POSIX.4 to be like a timeval. */ struct timespec { time_t ts_sec; /* seconds */ long ts_nsec; /* and nanoseconds */ }; The correct names of the fields are tv_sec and tv_nsec. Reminded by: James Drobina <jdrobina@infinet.com>
* Add a new sysctl variable kern.sominqueue to override the MINIMUM queuepst1996-09-192-4/+12
| | | | specified in a listen(2) system call.
* Add needed spl protection, and some minor cleanups in vfs_vmio_release.dyson1996-09-181-8/+14
| | | | Submitted by: Peter Wemm <peter@spinner.dialix.com> and me.
* Attached simple external ddb commands `show rtc', `show pgrpdump'bde1996-09-143-18/+15
| | | | | and `show cbstat'. The pgrpdump code was previously controlled by `#ifdef DEBUG'.
* Clean up some more problems with freeing busy or wired pages. Thedyson1996-09-141-6/+12
| | | | | vfs_bio code was not waiting properly for page state until manipulating it.
* Changed cncheckc() interface so that it is 8-bit clean - return -1bde1996-09-141-2/+3
| | | | instead of 0 if there is no input.
* Changed cncheckc() interface so that it is 8-bit clean - return -1bde1996-09-141-2/+2
| | | | instead of 0 if there is no input.
* Fixed Id.bde1996-09-141-1/+1
|
* Don't use __dead in the kernel. It was an obfuscation for gcc >= 2.5bde1996-09-133-12/+10
| | | | and a no-op for gcc >= 2.6.
* A modification that allows the driver strategy to modify thedyson1996-09-131-2/+3
| | | | | | | B_ASYNC flag broke things pretty bad (freeing buffer already on queue or other wierd buffer queue errors.) The broken code is left in commented out, but this makes the problem go away for now.
* Fix a problem with child inheritance of sysv shm. Problem broughtdyson1996-09-101-0/+4
| | | | to my attention by Brad Lineberger <bil@mpgn.com> and Rob Miracle.
* Updated #includes to 4.4Lite style.bde1996-09-101-3/+3
|
* Make sure that the pager is allocated before it is needed. Hangsdyson1996-09-101-2/+8
| | | | can occur if the pager is not allocated in time.
* Addition of page coloring support. Various levels of coloring are afforded.dyson1996-09-081-3/+3
| | | | | | The default level works with minimal overhead, but one can also enable full, efficient use of a 512K cache. (Parameters can be generated to support arbitrary cache sizes also.)
* Fixed two small leftovers form PHK's mega devconf removal commit..sos1996-09-071-2/+1
|
* Corrected an error where precious kernel virtual space was being allocateddyson1996-09-071-26/+21
| | | | | | for entire SYS5 SHM segments. This is totally unnecessary, and so the correct allocation of VM objects has been substituted. (The vm_mmap was misused -- vm_object_allocate is more appropriate.)
* Remove these three devconf files entirely.phk1996-09-061-0/+0
|
* Remove devconf, it never grew up to be of any use.phk1996-09-062-183/+1
|
* Add bowrite.gibbs1996-09-061-2/+17
| | | | | | | Bowrite guarantees that buffers queued after a call to bowrite will be written after the specified buffer (on a particular device). Bowrite does this either by taking advantage of hardware ordering support (e.g. tagged queueing on SCSI devices) or resorting to a synchronous write.
* `struct linker_set execsw_set' was declared as const and pointers in itbde1996-09-031-3/+3
| | | | | | | were declared as non-const. This is backwards (_lkm_exec() changes the pointers but all the target `struct execsw's are const). Fixed this and poisoned related declarations to match and removed the bogus casts that hid the bug.
* Fixed bogus casts (const on the wrong `*' in `**') in a qsort-comparisionbde1996-09-031-4/+5
| | | | function.
* Eliminated nested include of <sys/unistd.h> in <sys/file.h> in the kernel.bde1996-09-034-6/+8
| | | | | | | Include it directly in the few places where it is used. Reduced some #includes of <sys/file.h> to #includes of <sys/fcntl.h> or nothing.
* Added #include of <unistd.h> so that there is some chance thatbde1996-09-031-1/+2
| | | | | _POSIX_SAVED_IDS is defined. This feature was broken for a day or two.
* Second phase of merge, get rid of more machine-independent-dependencies.asami1996-09-031-2/+1
| | | | | | Get rid of pc98/pc98/pc98_device.h. Submitted by: The FreeBSD(98) Development Team
* Implemented kernel side of MNT_NOATIME mount option. This option disablesdg1996-09-032-6/+6
| | | | | | the file access time update on reads and can be useful in reducing filesystem overhead in cases where the access time is not important (like Usenet news spools).
* Conditionalize POSIX saved ids code on _POSIX_SAVED_IDS defineache1996-09-011-4/+22
|
* Change an splstatclock that should be an splhigh into an splhigh.dg1996-09-011-2/+2
| | | | Reviewed by: bde
* Change an splclock that needs to be an splhigh into an splhigh.dg1996-09-011-2/+2
| | | | Reviewed by: bde
OpenPOWER on IntegriCloud