summaryrefslogtreecommitdiffstats
path: root/sys/kern/sys_pipe.c
Commit message (Collapse)AuthorAgeFilesLines
* Moved some #includes from <sys/param.h> nearer to where they are actuallybde1998-03-281-1/+2
| | | | used.
* Add two new functions, get{micro|nano}time.phk1998-03-261-7/+7
| | | | | | | | | | | | They are atomic, but return in essence what is in the "time" variable. gettime() is now a macro front for getmicrotime(). Various patches to use the two new functions instead of the various hacks used in their absence. Some puntuation and grammer patches from Bruce. A couple of XXX comments.
* Staticize.eivind1998-02-091-3/+3
|
* Back out DIAGNOSTIC changes.eivind1998-02-061-3/+1
|
* Turn DIAGNOSTIC into a new-style option.eivind1998-02-041-1/+3
|
* Remove a bunch of variables which were unused both in GENERIC and LINT.phk1997-11-071-2/+1
| | | | Found by: -Wunused
* Move the "retval" (3rd) parameter from all syscall functions and putphk1997-11-061-6/+5
| | | | | | | | | | | | it in struct proc instead. This fixes a boatload of compiler warning, and removes a lot of cruft from the sources. I have not removed the /*ARGSUSED*/, they will require some looking at. libkvm, ps and other userland struct proc frobbing programs will need recompiled.
* Ack! Fix excessive cut/paste blunder during poll mods. Who had thepeter1997-10-061-3/+3
| | | | | | | | | | | pointy hat last? :-] When one is selecting (or polling) for write, it helps if we use the write side of the pipe when requesting wakeups instead of the read side. This broke ghostview (at least) - I'm suprised it wasn't noticed for so long. Reviewed by: Greg Lehey <grog@lemis.com>
* Implement the poll backend for the pipe file type.peter1997-09-141-39/+38
|
* Removed unused #includes.bde1997-09-021-9/+1
|
* Another attempt at cleaning up the new memory allocator.dyson1997-08-051-3/+2
|
* Fix up come cruft that I left on a previous commit.dyson1997-08-051-10/+1
|
* Get rid of the ad-hoc memory allocator for vm_map_entries, in lieu ofdyson1997-08-051-1/+17
| | | | | a simple, clean zone type allocator. This new allocator will also be used for machine dependent pmap PV entries.
* Removed support for OLD_PIPE. <sys/stat.h> is now missing the hack thatbde1997-04-091-4/+1
| | | | | supported nameless pipes being indistinguishable from fifos. We're not going back.
* Don't include <sys/ioctl.h> in the kernel. Stage 4: includebde1997-03-241-2/+3
| | | | | | | | <sys/ttycom.h> and sometimes <sys/filio.h> instead of <sys/ioctl.h> in miscellaneous files. Most of these files have nothing to do with ttys but need to include <sys/ttycom.h> to get the definitions of TIOC[SG]PGRP which are (ab)used to convert F[SG]ETOWN fcntls into ioctls.
* Don't #include <sys/fcntl.h> in <sys/file.h> if KERNEL is defined.bde1997-03-231-1/+2
| | | | | Fixed everything that depended on getting fcntl.h stuff from the wrong place. Most things don't depend on file.h stuff at all.
* Fixed some invalid (non-atomic) accesses to `time', mostly ones of thebde1997-03-221-16/+9
| | | | | | form `tv = time'. Use a new function gettime(). The current version just forces atomicicity without fixing precision or efficiency bugs. Simplified some related valid accesses by using the central function.
* Back out part 1 of the MCFH that changed $Id$ to $FreeBSD$. We are notpeter1997-02-221-1/+1
| | | | ready for it yet.
* This is the kernel Lite/2 commit. There are some requisite userlanddyson1997-02-101-1/+1
| | | | | | | | | | | | | | | changes, so don't expect to be able to run the kernel as-is (very well) without the appropriate Lite/2 userland changes. The system boots and can mount UFS filesystems. Untested: ext2fs, msdosfs, NFS Known problems: Incorrect Berkeley ID strings in some files. Mount_std mounts will not work until the getfsent library routine is changed. Reviewed by: various people Submitted by: Jeffery Hsu <hsu@freebsd.org>
* Make the long-awaited change from $Id$ to $FreeBSD$jkh1997-01-141-1/+1
| | | | | | | | This will make a number of things easier in the future, as well as (finally!) avoiding the Id-smashing problem which has plagued developers for so long. Boy, I'm glad we're not using sup anymore. This update would have been insane otherwise.
* Mostly some fixes from bde to start support for ASYNC I/O (SIGIO).dyson1996-10-111-11/+19
| | | | Submitted by: bde
* A few minor mods (improvements) to support more efficient pipedyson1996-07-131-32/+73
| | | | | | operations for large transfers. There are essentially no differences for small transfers, but big transfers should perform about 20% better.
* Staticized some variables.bde1996-07-121-5/+12
| | | | | | | | | | | | | | Fixed initialization of pipe_pgid - don't default to pid 0 (swapper) for SIGIO. Added comments about other implicit initializations, mostly for struct stat. Fixed initialization of st_mode. S_IFSOCK was for when pipes were sockets. It is probably safe to fix the bogus S_ISFIFO() now that pipes can be distinguished from sockets in all cases. Don't return ENOSYS for inappropriate ioctls.
* Get rid of PIPE_NBIO, cleaning up the code a bit.dyson1996-07-041-27/+15
| | | | Reviewed by: bde
* Disable direct writes for non-blocking output.dyson1996-06-171-2/+5
|
* Clean up -Wunused warnings.gpalmer1996-06-121-4/+2
| | | | Reviewed by: bde
* Various pipe error return fixes, and a significant typeo fix. Fromdyson1996-03-251-9/+15
| | | | | Bruce Evans (of course :-)). Submitted by: bde
* Yet another fix from BDE for the new pipe code. This fixes a potentialdyson1996-03-171-6/+5
| | | | | | | deadlock due to mismanagement of busy counters. Reviewed by: dyson Submitted by: bde
* Fix a problem that select did not work with direct writes. Makedyson1996-02-221-8/+15
| | | | wakeup channels more consistant also.
* Add missing prototype for pipeselwakeup (a recently added function) - gccpeter1996-02-171-1/+2
| | | | bitches about it..
* Add ifdefs for non-freebsd system usage. Add missing select wakeups,dyson1996-02-111-27/+63
| | | | and make the select wakup code a little neater.
* Add some missing requests for the read-side to wakeup the write-side. Alsodyson1996-02-091-2/+11
| | | | add some missing wakeups by the write side to the read side.
* Apparent fix for a pipe hang problem.dyson1996-02-071-3/+16
|
* More fixes from bde.dyson1996-02-051-14/+24
| | | | | | | | Only modify times on success. splhigh() around time variable usage. Make atomic writes more posix compliant. Spelling errors. Submitted by: bde
* Kva space allocated for direct buffer wasn't quite big enough. Thedyson1996-02-051-7/+11
| | | | system can panic easily without this patch.
* Changed vm_fault_quick in vm_machdep.c to be global. Needed fordyson1996-02-041-1/+8
| | | | new pipe code.
* Improve the performance for pipe(2) again. Also include somedyson1996-02-041-46/+442
| | | | | | | | | | | | | | | | | | | | fixes for previous version of new pipes from Bruce Evans. This new version: Supports more properly the semantics of select (BDE). Supports "OLD_PIPE" correctly (kern_descrip.c, BDE). Eliminates incorrect EPIPE returns (bash 'pipe broken' messages.) Much faster yet, currently tuned relatively conservatively -- but now gives approx 50% more perf than the new pipes code did originally. (That was about 50% more perf than the original BSD pipe code.) Known bugs outstanding: No support for async io (SIGIO). Will be included soon. Next to do: Merge support for FIFOs. Submitted by: bde
* Fix another problem with the new pipe code, pointed out by Bruce Evans.dyson1996-01-311-7/+6
| | | | This one fixes a problem with interactions with signals.
* Fix some problems with return codes on the new pipe stuff. Bruce Evansdyson1996-01-311-4/+8
| | | | found the problems, and this commit will fix the "first batch" :-).
* Fixed an uninitialized variable (argument to vm_map_find) -- problemdyson1996-01-291-5/+8
| | | | | that DG detected, and promptly found a fix. Submitted by: davidg
* Added new files to support the new fast pipes. After the follow-ondyson1996-01-281-0/+573
commits, pipe performance should increase significantly. The pipe(2) system call is currently supported, while fifofs will be added later.
OpenPOWER on IntegriCloud