History log of /src/sys/miscfs/fifofs/fifo_vnops.c |
Revision | | Date | Author | Comments |
1.91 |
| 11-Oct-2021 |
thorpej | Setting EV_EOF requires modifying kn->kn_flags. However, that relies on holding the kq_lock of that note's kq. Rather than exposing this directly, add new knote_set_eof() and knote_clear_eof() functions that handle the necessary locking and don't leak as many implementation details to modules.
NetBSD 9.99.91
|
1.90 |
| 02-Oct-2021 |
thorpej | - Add a new EVFILT_WRITE test case for FIFOs that correctly validates the writability thresholds. - Fix a bug in fifo_kqfilter() exposed by the new test case; in the EVFILT_WRITE case, we were attaching the wrong end of the socket pair to the knote! - In filt_fiforead(), use ">= so->so_rcv.sb_lowat" rather than "> 0" for consistency with fifo_poll(). NFC.
|
1.89 |
| 02-Oct-2021 |
thorpej | ...and correct my terrible spelling.
|
1.88 |
| 02-Oct-2021 |
thorpej | - Strenghen the poll(2) fifo_inout test to ensure that once the reader has read enough that exactly PIPE_BUF space is available that the FIFO becomes writable again. - When creating a FIFO, ensure that the receive low water mark is 1 (a FIFO must be readable when at least 1 byte is available); this was already the case implicitly, but this makes it explicit. - Similarly, set the send low water mark to PIPE_BUF to ensure that the pipe is writable when at least PIPE_BUF bytes of space are available in the send buffer. Without this change, the strengthened test case above does not pass (the default send low water mark is larger than PIPE_BUF; see soreserve()). - Make the same low water mark changes to the PIPE_SOCKETPAIR case.
|
1.87 |
| 02-Oct-2021 |
thorpej | - fifo_poll(): If the last writer has disappeared, detect this and return POLLHUP, per POSIX. - fifo_close(): Use the new fifo_socantrcvmore(), which is like the garden-variety socantrcvmore(), except it specifies POLL_HUP rather than POLL_IN (so the correct code for SIGIO is sent). - sowakeup(): Allow POLL_HUP as a code (notifies poll'ers with POLLHUP). - Add test cases for correct POLLHUP behavior with FIFOs.
Fixes PR kern/56429.
|
1.86 |
| 29-Sep-2021 |
thorpej | The kq filterops that interact with sockets are MPSAFE.
|
1.85 |
| 29-Sep-2021 |
thorpej | - Change selremove_knote() from returning void to bool, and return true if the last knote was removed and there are no more knotes on the selinfo. - Use this new return value in filt_sordetach(), filt_sowdetach(), filt_fifordetach(), and filt_fifowdetach() to know when to clear SB_KOTE without having to know select/kqueue implementation details.
|
1.84 |
| 26-Sep-2021 |
thorpej | Change the kqueue filterops::f_isfd field to filterops::f_flags, and define a flag FILTEROP_ISFD that has the meaning of the prior f_isfd. Field and flag name aligned with OpenBSD.
This does not constitute a functional or ABI change, as the field location and size, and the value placed in that field, are the same as the previous code, but we're bumping __NetBSD_Version__ so 3rd-party module source code can adapt, as needed.
NetBSD 9.99.89
|
1.83 |
| 29-Jun-2021 |
dholland | - Add a new vnode op: VOP_PARSEPATH. - Move namei_getcomponent to genfs_vnops.c and call it genfs_parsepath. - Add a parsepath entry to every vnode ops table.
VOP_PARSEPATH takes a directory vnode to be searched and a complete following path and chooses how much of that path to consume. To begin with, all parsepath calls are genfs_parsepath, which locates the first '/' as always.
Note that the call doesn't take the whole struct componentname, only the string. The other bits of struct componentname should not be needed and there's no reason to cause potential complications by exposing them.
|
1.82 |
| 19-Dec-2020 |
thorpej | branches: 1.82.4; Use sel{record,remove}_knote().
|
1.81 |
| 27-Jun-2020 |
christos | branches: 1.81.2; Introduce genfs_pathconf() and use it for the default case in all filesystems.
|
1.80 |
| 16-May-2020 |
christos | Add ACL support for FFS. From FreeBSD.
|
1.79 |
| 25-Oct-2017 |
maya | branches: 1.79.8; Use C99 initializer for filterops
Mostly done with spatch with touchups for indentation
@@ expression a; identifier b,c,d; identifier p; @@ const struct filterops p = - { a, b, c, d + { + .f_isfd = a, + .f_attach = b, + .f_detach = c, + .f_event = d, };
|
1.78 |
| 11-Apr-2017 |
riastradh | Make VOP_INACTIVE preserve vnode lock on return.
Discussed on tech-kern: https://mail-index.netbsd.org/tech-kern/2017/04/01/msg021751.html
Ride 7.99.68, a bumpy bus of incremental vfs improvements!
|
1.77 |
| 09-Aug-2014 |
rtr | branches: 1.77.4; 1.77.8; 1.77.12; split PRU_CONNECT2 & PRU_PURGEIF function out of pr_generic() usrreq switches and put into separate functions
- always KASSERT(solocked(so)) even if not implemented (for PRU_CONNECT2 only)
- replace calls to pr_generic() with req = PRU_CONNECT2 with calls to pr_connect2()
- replace calls to pr_generic() with req = PRU_PURGEIF with calls to pr_purgeif()
put common code from unp_connect2() (used by unp_connect() into unp_connect1() and call out to it when needed
patch only briefly reviewed by rmind@
|
1.76 |
| 25-Jul-2014 |
dholland | Add VOP_FALLOCATE and VOP_FDISCARD to every vnode ops table I can find.
The filesystem ones all call genfs_eopnotsupp - right now I am only implementing the plumbing and we can implement fallocate and/or fdiscard for files later.
The device ones call spec_fallocate (which is also genfs_eopnotsupp) and spec_fdiscard, which dispatches to the device-level op.
The fifo ones all call vn_fifo_bypass, which also ends up being EOPNOTSUPP.
|
1.75 |
| 17-May-2014 |
rmind | fifo_open: assign v_fifoinfo once initialised; add an assert while here.
|
1.74 |
| 07-Feb-2014 |
hannken | branches: 1.74.2; Change vnode operation lookup to return the resulting vnode *vpp unlocked. Change cache_lookup() to return an unlocked vnode.
Discussed on tech-kern@
Welcome to 6.99.31
|
1.73 |
| 08-Apr-2013 |
skrll | branches: 1.73.4; Remove some set but unused variables
|
1.72 |
| 21-Dec-2011 |
christos | branches: 1.72.6; only set CANTRCVMORE if no error.
|
1.71 |
| 20-Dec-2011 |
christos | - Eliminate so_nbio and turn it into a bit SS_NBIO in so_state. - Introduce MSG_NBIO so that we can turn non blocking i/o on a per call basis - Use MSG_NBIO to fix the XXX: multi-threaded issues on the fifo sockets. - Don't set SO_CANTRCVMORE, if we were interrupted (perhaps do it for all errors?).
|
1.70 |
| 31-Aug-2011 |
plunky | branches: 1.70.2; 1.70.6; NULL does not need a cast
|
1.69 |
| 24-Jun-2010 |
hannken | Clean up vnode lock operations pass 2:
VOP_UNLOCK(vp, flags) -> VOP_UNLOCK(vp): Remove the unneeded flags argument.
Welcome to 5.99.32.
Discussed on tech-kern.
|
1.68 |
| 29-Mar-2010 |
pooka | Stop exposing fifofs internals and leave only fifo_vnodeop_p visible.
|
1.67 |
| 27-Mar-2010 |
pooka | Access fifoinfo only when it's non-NULL.
|
1.66 |
| 28-Apr-2008 |
martin | branches: 1.66.20; 1.66.22; Remove clause 3 and 4 from TNF licenses
|
1.65 |
| 24-Apr-2008 |
ad | branches: 1.65.2; Fix locking in the fifo kqueue routines.
|
1.64 |
| 24-Apr-2008 |
ad | Merge the socket locking patch:
- Socket layer becomes MP safe. - Unix protocols become MP safe. - Allows protocol processing interrupts to safely block on locks. - Fixes a number of race conditions.
With much feedback from matt@ and plunky@.
|
1.63 |
| 21-Mar-2008 |
ad | branches: 1.63.2; Catch up with descriptor handling changes. See kern_descrip.c revision 1.173 for details.
|
1.62 |
| 11-Feb-2008 |
yamt | branches: 1.62.6; sprinkle KERNEL_LOCK for socket. a little different version was tested by Matthias Drochner.
|
1.61 |
| 06-Feb-2008 |
ad | Don't lock the socket to set/clear FNONBLOCK. Just set it atomically.
|
1.60 |
| 25-Jan-2008 |
ad | Remove VOP_LEASE. Discussed on tech-kern.
|
1.59 |
| 05-Dec-2007 |
pooka | Do not "return 1" from kqfilter for errors. That value is passed directly to the userland caller and results in a mysterious EPERM. Instead, return EINVAL or something else sensible depending on the case.
|
1.58 |
| 26-Nov-2007 |
pooka | branches: 1.58.2; Remove the "struct lwp *" argument from all VFS and VOP interfaces. The general trend is to remove it from all kernel interfaces and this is a start. In case the calling lwp is desired, curlwp should be used.
quick consensus on tech-kern
|
1.57 |
| 16-Nov-2006 |
christos | branches: 1.57.22; 1.57.24; 1.57.30; __unused removal on arguments; approved by core.
|
1.56 |
| 12-Oct-2006 |
christos | - sprinkle __unused on function decls. - fix a couple of unused bugs - no more -Wno-unused for i386
|
1.55 |
| 14-May-2006 |
elad | branches: 1.55.8; 1.55.10; integrate kauth.
|
1.54 |
| 11-Dec-2005 |
christos | branches: 1.54.4; 1.54.6; 1.54.8; 1.54.10; 1.54.12; merge ktrace-lwp.
|
1.53 |
| 02-Nov-2005 |
yamt | merge yamt-vop branch. remove following VOPs.
VOP_BLKATOFF VOP_VALLOC VOP_BALLOC VOP_REALLOCBLKS VOP_VFREE VOP_TRUNCATE VOP_UPDATE
|
1.52 |
| 30-Aug-2005 |
xtraeme | branches: 1.52.2; Remove __P()
|
1.51 |
| 26-Feb-2005 |
perry | branches: 1.51.4; nuke trailing whitespace
|
1.50 |
| 17-Jul-2004 |
mycroft | branches: 1.50.4; 1.50.6; Clean up reader/writer counts for the revoke case in fifo_close().
|
1.49 |
| 22-May-2004 |
jonathan | Eliminate several uses of `curproc' from the socket-layer code and from NFS.
Add a new explicit `struct proc *p' argument to socreate(), sosend(). Use that argument instead of curproc. Follow-on changes to pass that argument to socreate(), sosend(), and (*so->so_send)() calls. These changes reviewed and independently recoded by Matt Thomas.
Changes to soreceive() and (*dom->dom_exernalize() from Matt Thomas: pass soreceive()'s struct uio* uio->uio_procp to unp_externalize(). Eliminate curproc from unp_externalize. Also, now soreceive() uses its uio->uio_procp value, pass that same value downward to ((pr->pru_usrreq)() calls for consistency, instead of (struct proc * )0.
Similar changes in sys/nfs to eliminate (most) uses of curproc, either via the req-> r_procp field of a struct nfsreq *req argument, or by passing down new explicit struct proc * arguments.
Reviewed by: Matt Thomas, posted to tech-kern. NB: The (*pr->pru_usrreq)() change should be tested on more (all!) protocols.
|
1.48 |
| 12-May-2004 |
jrf | caddr_t -> void * and removal of some more casts.
|
1.47 |
| 29-Apr-2004 |
jrf | Removed remaining caddr_t casts we do not need in miscfs. Recompiled kernel and ran for a day or so. There are still some caddr_t types in the arguments of some calls, I will do those separately (later) as they touch a lot more of the system. Approved by christos@NetBSD.org.
|
1.46 |
| 06-Mar-2004 |
wrstuden | Handle the case of fifo_close() getting called from vclean(). In that case, we tear down the node-specific storage as if there were no more open users. As vclean() will VT_NON the vnode before anyone else will get access to the vnode, this is our last chance.
Fixes memory leak in revoke(2) path noticed by tedu at openbsd dot org.
|
1.45 |
| 29-Nov-2003 |
matt | Restore a change that made AF_LOCAL sockets block on connect(2) until accepted. However, this time this behavor is not the default. Instead it must enabled by using the LOCAL_CONNWAIT socket option on either the connecting or accepting socket.
|
1.44 |
| 29-Nov-2003 |
perry | Revert a change that altered the semantics of AF_LOCAL sockets. Sadly this made us API incompatible with other Unixes.
|
1.43 |
| 03-Sep-2003 |
matt | Change the behavor of AF_LOCAL connect() to sleep until the server has accepted the connection. This can prevent a client from overwhelming a server.
|
1.42 |
| 07-Aug-2003 |
agc | Move UCB-licensed code from 4-clause to 3-clause licence.
Patches provided by Joel Baker in PR 22364, verified by myself.
|
1.41 |
| 29-Jun-2003 |
fvdl | branches: 1.41.2; Back out the lwp/ktrace changes. They contained a lot of colateral damage, and need to be examined and discussed more.
|
1.40 |
| 28-Jun-2003 |
darrenr | Pass lwp pointers throughtout the kernel, as required, so that the lwpid can be inserted into ktrace records. The general change has been to replace "struct proc *" with "struct lwp *" in various function prototypes, pass the lwp through and use l_proc to get the process pointer when needed.
Bump the kernel rev up to 1.6V
|
1.39 |
| 17-Mar-2003 |
martin | Fix a race condition where a writer could already have closed the fifo before the reader woke up - this made the reader loop again, waiting for another writer, even though there was input available.
Thanks to Jaromir for spotting the real cause and sugesting a solution.
This should fix PR port-sparc64/20283.
|
1.38 |
| 02-Mar-2003 |
jdolecek | use different wmesg for the reader and the writer
|
1.37 |
| 26-Nov-2002 |
christos | si_ -> sel_
|
1.36 |
| 23-Oct-2002 |
jdolecek | merge kqueue branch into -current
kqueue provides a stateful and efficient event notification framework currently supported events include socket, file, directory, fifo, pipe, tty and device changes, and monitoring of processes and signals
kqueue is supported by all writable filesystems in NetBSD tree (with exception of Coda) and all device drivers supporting poll(2)
based on work done by Jonathan Lemon for FreeBSD initial NetBSD port done by Luke Mewburn and Jason Thorpe
|
1.35 |
| 26-Aug-2002 |
thorpej | Fix a signed/unsigned comparison warning from GCC 3.3.
|
1.34 |
| 27-Jul-2002 |
chs | we can't use the vnode's v_usecount to track how many times the vnode has been VOP_OPEN()'d. if the fifo is being accessed via a layered fs, v_usecount is always one (representing the hold by the layered vnode) regardless of how many times the vnode has been opened. instead, keep a separate counter for opens. fixes PR 17195 and probably 17724.
|
1.33 |
| 06-Dec-2001 |
chs | branches: 1.33.8; 1.33.10; add a VOP_PUTPAGES method for all the filesystems that don't have pages, just unlock the interlock.
|
1.32 |
| 10-Nov-2001 |
lukem | add RCSIDs
|
1.31 |
| 22-Sep-2001 |
sommerfeld | branches: 1.31.2; Add fifo_putpages() placebo so that the vnode's uobj is unlocked.
|
1.30 |
| 27-Feb-2001 |
lukem | branches: 1.30.2; 1.30.4; 1.30.6; convert to ansi knf
|
1.29 |
| 22-Jan-2001 |
jdolecek | make filesystem vnodeop, specop, fifoop and vnodeopv_* arrays const
|
1.28 |
| 30-Mar-2000 |
augustss | branches: 1.28.4; Register, begone!
|
1.27 |
| 31-Oct-1998 |
matt | branches: 1.27.12; Use the so_send and so_receive funcptrs in the socket instead of calling sosend/soreceive directly. [I've been meaning to commit these for months.]
|
1.26 |
| 03-Aug-1998 |
kleink | Recognize _PC_SYNC_IO.
|
1.25 |
| 01-Mar-1998 |
fvdl | Merge with Lite2 + local changes
|
1.24 |
| 09-Oct-1997 |
mycroft | Make openstr[] const.
|
1.23 |
| 18-May-1997 |
kleink | branches: 1.23.4; When reading from an empty FIFO no process has opened for writing, and O_NONBLOCK is set, return 0.
|
1.22 |
| 13-Oct-1996 |
christos | backout previous kprintf changes
|
1.21 |
| 10-Oct-1996 |
christos | printf -> kprintf, sprintf -> ksprintf
|
1.20 |
| 07-Sep-1996 |
mycroft | Implement poll(2).
|
1.19 |
| 01-Sep-1996 |
mycroft | Add a set of generic file system operations that most file systems use. Also, fix some time stamp bogosities.
|
1.18 |
| 16-Mar-1996 |
christos | Fix printf format follies.
|
1.17 |
| 09-Feb-1996 |
christos | miscfs prototype changes
|
1.16 |
| 14-Apr-1995 |
mycroft | Allow opening a FIFO with O_RDWR.
|
1.15 |
| 02-Apr-1995 |
mycroft | Emulate SCO behaviour when both FREAD and FWRITE are set, but only for SCO executables.
|
1.14 |
| 14-Dec-1994 |
mycroft | Remove a_fp.
|
1.13 |
| 13-Dec-1994 |
mycroft | Turn lease_check() into a vnode op, per CSRG.
|
1.12 |
| 14-Nov-1994 |
christos | fixed struct comment
|
1.11 |
| 29-Oct-1994 |
cgd | light clean; make sure headers are properly included, types are OK, etc.
|
1.10 |
| 20-Oct-1994 |
cgd | update for new syscall args description mechanism
|
1.9 |
| 29-Jun-1994 |
cgd | New RCS ID's, take two. they're more aesthecially pleasant, and use 'NetBSD'
|
1.8 |
| 08-Jun-1994 |
mycroft | Update to 4.4-Lite fs code, with local changes.
|
1.7 |
| 05-Jan-1994 |
cgd | fix return type for fifo_print
|
1.6 |
| 18-Dec-1993 |
mycroft | Canonicalize all #includes.
|
1.5 |
| 27-Jun-1993 |
andrew | branches: 1.5.4; ANSIfications - removed all implicit function return types and argument definitions. Ensured that all files include "systm.h" to gain access to general prototypes. Casts where necessary.
|
1.4 |
| 27-May-1993 |
cgd | make the sleeps on socket open interruptable.
|
1.3 |
| 20-May-1993 |
cgd | add $Id$ strings, and clean up file headers where necessary
|
1.2 |
| 02-Apr-1993 |
cgd | Jay Fenlason <hack@datacube.com>:
1: the fi_readers and fi_writers fields of the fifoinfo structure were not being initialized to 0. This caused the driver to not sleep the first process to open the fifo--it thought there was already another process to talk to (most of the time.)
2: fifo_open() was calling tsleep() without unlocking the inode of the fifo file. This caused *any* subsequent access to the file (even an ls (!)) to hang forever. Note that this bug was usually masked by bug #1 above.
|
1.1 |
| 21-Mar-1993 |
cgd | branches: 1.1.1; Initial revision
|
1.1.1.3 |
| 01-Mar-1998 |
fvdl | Import 4.4BSD-Lite2
|
1.1.1.2 |
| 01-Mar-1998 |
fvdl | Import 4.4BSD-Lite for reference
|
1.1.1.1 |
| 21-Mar-1993 |
cgd | initial import of 386bsd-0.1 sources
|
1.5.4.2 |
| 14-Nov-1993 |
mycroft | Canonicalize all #includes.
|
1.5.4.1 |
| 10-Nov-1993 |
mycroft | AF_UNIX --> AF_LOCAL
|
1.23.4.1 |
| 14-Oct-1997 |
thorpej | Update marc-pcmcia branch from trunk.
|
1.27.12.3 |
| 12-Mar-2001 |
bouyer | Sync with HEAD.
|
1.27.12.2 |
| 11-Feb-2001 |
bouyer | Sync with HEAD.
|
1.27.12.1 |
| 20-Nov-2000 |
bouyer | Update thorpej_scsipi to -current as of a month ago
|
1.28.4.1 |
| 08-Apr-2004 |
jmc | Pullup patch (requested by wrstuden in ticket #125)
Handle the case of fifo_close() getting called from vclean(). In that case, we tear down the node-specific storage as if there were no more open users. As vclean() will VT_NON the vnode before anyone else will get access o the vnode, this is our last chance.
Fixes memory leak in revoke(2) path.
|
1.30.6.2 |
| 01-Oct-2001 |
fvdl | Catch up with -current.
|
1.30.6.1 |
| 18-Sep-2001 |
fvdl | Various changes to make cloning devices possible:
* Add an extra argument (struct vnode **) to VOP_OPEN. If it is not NULL, specfs will create a cloned (aliased) vnode during the call, and return it there. The caller should release and unlock the original vnode if a new vnode was returned. The new vnode is returned locked.
* Add a flag field to the cdevsw and bdevsw structures. DF_CLONING indicates that it wants a new vnode for each open (XXX is there a better way? devprop?)
* If a device is cloning, always call the close entry point for a VOP_CLOSE.
Also, rewrite cons.c to do the right thing with vnodes. Use VOPs rather then direct device entry calls. Suggested by mycroft@
Light to moderate testing done an i386 system (arch doesn't matter though, these are MI changes).
|
1.30.4.7 |
| 29-Sep-2002 |
jdolecek | don't need cast to (caddr_t) for kn_hook anymore
|
1.30.4.6 |
| 24-Sep-2002 |
jdolecek | shuffle filt_*() to not need forward decls, put all kq related function and structures together
|
1.30.4.5 |
| 22-Sep-2002 |
jdolecek | need to set kn_hook in fifo_kqfilter() (looks like merge botch, this thing is correct in FreeBSD version)
|
1.30.4.4 |
| 06-Sep-2002 |
jdolecek | sync kqueue branch with HEAD
|
1.30.4.3 |
| 10-Jan-2002 |
thorpej | Sync kqueue branch with -current.
|
1.30.4.2 |
| 07-Sep-2001 |
thorpej | More const.
|
1.30.4.1 |
| 10-Jul-2001 |
lukem | add fifo_kqfilter() and filt_fifo*()
|
1.30.2.7 |
| 11-Dec-2002 |
thorpej | Sync with HEAD.
|
1.30.2.6 |
| 11-Nov-2002 |
nathanw | Catch up to -current
|
1.30.2.5 |
| 27-Aug-2002 |
nathanw | Catch up to -current.
|
1.30.2.4 |
| 01-Aug-2002 |
nathanw | Catch up to -current.
|
1.30.2.3 |
| 08-Jan-2002 |
nathanw | Catch up to -current.
|
1.30.2.2 |
| 14-Nov-2001 |
nathanw | Catch up to -current.
|
1.30.2.1 |
| 26-Sep-2001 |
nathanw | Catch up to -current. Again.
|
1.31.2.1 |
| 12-Nov-2001 |
thorpej | Sync the thorpej-mips-cache branch with -current.
|
1.33.10.2 |
| 15-Mar-2004 |
jmc | Pullup rev 1.46 (requested by wrstuden in ticket #1621)
Handle the case of fifo_close() getting called from vclean(). Fixes memory leak in revoke(2) path.
|
1.33.10.1 |
| 29-Jul-2002 |
lukem | Pull up revision 1.34 (requested by chuq in ticket #566): we can't use the vnode's v_usecount to track how many times the vnode has been VOP_OPEN()'d. if the fifo is being accessed via a layered fs, v_usecount is always one (representing the hold by the layered vnode) regardless of how many times the vnode has been opened. instead, keep a separate counter for opens. fixes PR 17195 and probably 17724.
|
1.33.8.1 |
| 29-Aug-2002 |
gehenna | catch up with -current.
|
1.41.2.6 |
| 10-Nov-2005 |
skrll | Sync with HEAD. Here we go again...
|
1.41.2.5 |
| 04-Mar-2005 |
skrll | Sync with HEAD.
Hi Perry!
|
1.41.2.4 |
| 21-Sep-2004 |
skrll | Fix the sync with head I botched.
|
1.41.2.3 |
| 18-Sep-2004 |
skrll | Sync with HEAD.
|
1.41.2.2 |
| 03-Aug-2004 |
skrll | Sync with HEAD
|
1.41.2.1 |
| 02-Jul-2003 |
darrenr | Apply the aborted ktrace-lwp changes to a specific branch. This is just for others to review, I'm concerned that patch fuziness may have resulted in some errant code being generated but I'll look at that later by comparing the diff from the base to the branch with the file I attempt to apply to it. This will, at the very least, put the changes in a better context for others to review them and attempt to tinker with removing passing of 'struct lwp' through the kernel.
|
1.50.6.1 |
| 19-Mar-2005 |
yamt | sync with head. xen and whitespace. xen part is not finished.
|
1.50.4.1 |
| 29-Apr-2005 |
kent | sync with -current
|
1.51.4.6 |
| 24-Mar-2008 |
yamt | sync with head.
|
1.51.4.5 |
| 27-Feb-2008 |
yamt | sync with head.
|
1.51.4.4 |
| 11-Feb-2008 |
yamt | sync with head.
|
1.51.4.3 |
| 04-Feb-2008 |
yamt | sync with head.
|
1.51.4.2 |
| 07-Dec-2007 |
yamt | sync with head
|
1.51.4.1 |
| 21-Jun-2006 |
yamt | sync with head.
|
1.52.2.1 |
| 20-Oct-2005 |
yamt | adapt specfs and fifofs.
|
1.54.12.1 |
| 24-May-2006 |
tron | Merge 2006-05-24 NetBSD-current into the "peter-altq" branch.
|
1.54.10.1 |
| 08-Mar-2006 |
elad | Adapt to kernel authorization KPI.
|
1.54.8.1 |
| 24-May-2006 |
yamt | sync with head.
|
1.54.6.1 |
| 01-Jun-2006 |
kardel | Sync with head.
|
1.54.4.1 |
| 09-Sep-2006 |
rpaulo | sync with head
|
1.55.10.2 |
| 10-Dec-2006 |
yamt | sync with head.
|
1.55.10.1 |
| 22-Oct-2006 |
yamt | sync with head
|
1.55.8.1 |
| 18-Nov-2006 |
ad | Sync with head.
|
1.57.30.2 |
| 18-Feb-2008 |
mjf | Sync with HEAD.
|
1.57.30.1 |
| 08-Dec-2007 |
mjf | Sync with HEAD.
|
1.57.24.2 |
| 23-Mar-2008 |
matt | sync with HEAD
|
1.57.24.1 |
| 09-Jan-2008 |
matt | sync with HEAD
|
1.57.22.2 |
| 09-Dec-2007 |
jmcneill | Sync with HEAD.
|
1.57.22.1 |
| 27-Nov-2007 |
joerg | Sync with HEAD. amd64 Xen support needs testing.
|
1.58.2.1 |
| 08-Dec-2007 |
ad | Sync with head.
|
1.62.6.2 |
| 02-Jun-2008 |
mjf | Sync with HEAD.
|
1.62.6.1 |
| 03-Apr-2008 |
mjf | Sync with HEAD.
|
1.63.2.1 |
| 18-May-2008 |
yamt | sync with head.
|
1.65.2.2 |
| 11-Aug-2010 |
yamt | sync with head.
|
1.65.2.1 |
| 16-May-2008 |
yamt | sync with head.
|
1.66.22.2 |
| 03-Jul-2010 |
rmind | sync with head
|
1.66.22.1 |
| 30-May-2010 |
rmind | sync with head
|
1.66.20.2 |
| 17-Aug-2010 |
uebayasi | Sync with HEAD.
|
1.66.20.1 |
| 30-Apr-2010 |
uebayasi | Sync with HEAD.
|
1.70.6.1 |
| 18-Feb-2012 |
mrg | merge to -current.
|
1.70.2.2 |
| 22-May-2014 |
yamt | sync with head.
for a reference, the tree before this commit was tagged as yamt-pagecache-tag8.
this commit was splitted into small chunks to avoid a limitation of cvs. ("Protocol error: too many arguments")
|
1.70.2.1 |
| 17-Apr-2012 |
yamt | sync with head
|
1.72.6.3 |
| 03-Dec-2017 |
jdolecek | update from HEAD
|
1.72.6.2 |
| 20-Aug-2014 |
tls | Rebase to HEAD as of a few days ago.
|
1.72.6.1 |
| 23-Jun-2013 |
tls | resync from head
|
1.73.4.2 |
| 18-May-2014 |
rmind | sync with head
|
1.73.4.1 |
| 28-Aug-2013 |
rmind | Checkpoint work in progress: - Initial split of the protocol user-request method into the following methods: pr_attach, pr_detach and pr_generic for old the pr_usrreq. - Adjust socreate(9) and sonewconn(9) to call pr_attach without the socket lock held (as a preparation for the locking scheme adjustment). - Adjust all pr_attach routines to assert that PCB is not set. - Sprinkle various comments, document some routines and their locking. - Remove M_PCB, replace with kmem(9). - Fix few bugs spotted on the way.
|
1.74.2.1 |
| 10-Aug-2014 |
tls | Rebase.
|
1.77.12.1 |
| 21-Apr-2017 |
bouyer | Sync with HEAD
|
1.77.8.1 |
| 26-Apr-2017 |
pgoyette | Sync with HEAD
|
1.77.4.1 |
| 28-Aug-2017 |
skrll | Sync with HEAD
|
1.79.8.3 |
| 04-Oct-2021 |
martin | Pull up following revision(s) (requested by thorpej in ticket #1353):
sys/miscfs/fifofs/fifo_vnops.c: revision 1.90 tests/kernel/kqueue/write/t_fifo.c: revision 1.5
- Add a new EVFILT_WRITE test case for FIFOs that correctly validates the writability thresholds. - Fix a bug in fifo_kqfilter() exposed by the new test case; in the EVFILT_WRITE case, we were attaching the wrong end of the socket pair to the knote! - In filt_fiforead(), use ">= so->so_rcv.sb_lowat" rather than "> 0" for consistency with fifo_poll(). NFC.
|
1.79.8.2 |
| 04-Oct-2021 |
martin | Pull up following revision(s) (requested by thorpej in ticket #1351):
sys/miscfs/fifofs/fifo_vnops.c: revision 1.88 sys/kern/uipc_syscalls.c: revision 1.201 tests/lib/libc/sys/t_poll.c: revision 1.6 tests/lib/libc/sys/t_poll.c: revision 1.7 tests/lib/libc/sys/t_poll.c: revision 1.8
- Strenghen the poll(2) fifo_inout test to ensure that once the reader has read enough that exactly PIPE_BUF space is available that the FIFO becomes writable again. - When creating a FIFO, ensure that the receive low water mark is 1 (a FIFO must be readable when at least 1 byte is available); this was already the case implicitly, but this makes it explicit. - Similarly, set the send low water mark to PIPE_BUF to ensure that the pipe is writable when at least PIPE_BUF bytes of space are available in the send buffer. Without this change, the strengthened test case above does not pass (the default send low water mark is larger than PIPE_BUF; see soreserve()). - Make the same low water mark changes to the PIPE_SOCKETPAIR case.
In the fifo_hup1 test, also ensure that POLLHUP is de-asserted when a new writer appears.
Add a fifo_inout test case that validates the expected POLLIN / POLLOUT behavior for FIFOs: - A FIFO is readable so long as at least 1 byte is available. - A FIFO is writable so long as at least PIPE_BUF (obtained with _PC_PIPE_BUF) space is avaiable. This will be cloned for a forthcoming kevent test case.
|
1.79.8.1 |
| 02-Oct-2021 |
martin | Pull up following revision(s) (requested by thorpej in ticket #1350):
sys/kern/uipc_socket2.c: revision 1.140 tests/lib/libc/sys/t_poll.c: revision 1.5 sys/miscfs/fifofs/fifo_vnops.c: revision 1.87
- fifo_poll(): If the last writer has disappeared, detect this and return POLLHUP, per POSIX. - fifo_close(): Use the new fifo_socantrcvmore(), which is like the garden-variety socantrcvmore(), except it specifies POLL_HUP rather than POLL_IN (so the correct code for SIGIO is sent). - sowakeup(): Allow POLL_HUP as a code (notifies poll'ers with POLLHUP). - Add test cases for correct POLLHUP behavior with FIFOs.
Fixes PR kern/56429.
|
1.81.2.1 |
| 03-Jan-2021 |
thorpej | Sync w/ HEAD.
|
1.82.4.1 |
| 01-Aug-2021 |
thorpej | Sync with HEAD.
|