summaryrefslogtreecommitdiffstats
path: root/sys/miscfs (follow)
Commit message (Collapse)AuthorAgeFilesLines
...
* Change unp_scan() and its callbacks to pass the array of struct file **guenther2015-07-181-2/+2
| | | | | | | | and a count instead of calling the callback on each one, while also renders the 'dispose' argument superfluous. Move unp_*() prototypes from <sys/un.h> to <sys/unpcb.h> ok claudio@ mpi@
* Set POLLHUP even if no valid events were specified as per POSIX.millert2015-05-101-5/+5
| | | | | | | | Since we use the poll backend for select(2), care must be taken not to set the fd's bit in writefds in this case. A kernel-only flag, POLLNOHUP, is used by selscan() to tell the poll backend not to return POLLHUP on EOF. This is currently only used by fifo_poll(). The fifofs regress now passes. OK guenther@
* Now that we have a_fflag in struct vop_poll_args we can handlemillert2015-05-051-13/+34
| | | | | | | | things like POLLOUT on a read-only fd more sensibly. Previously, any poll events could be used regardless of the actual file flags of the descriptor. The new fifo_poll() is effectively a pared down soo_poll() with slightly different semantics to batter match FIFOs. OK and feedback from guenther@
* Tweaks utimensat/futimens handling to always update ctime, even when bothguenther2015-04-171-3/+4
| | | | | | | atime and mtime are UTIME_OMIT (at least for ufs, tmpfs, and ext2fs), and to correctly handle a timestamp of -1. ok millert@
* Remove some includes include-what-you-use claims don'tjsg2015-03-142-4/+2
| | | | | | | have any direct symbols used. Tested for indirect use by compiling amd64/i386/sparc64 kernels. ok tedu@ deraadt@
* set the eofflag in readdir like we're supposed to.tedu2015-02-191-3/+7
| | | | from Martin Natano
* Fix a bug introduced in the last commit that broke EOF handlingmillert2015-02-121-10/+11
| | | | | in the normal, blocking case. No longer passes regress but that will be fixed later. OK jca@
* Convert uiomovei() with a constant size argument to uiomove().miod2015-02-101-2/+2
|
* Switch uiomovei(..., sizeof whatever, ...) to uiomove().miod2015-02-101-2/+2
|
* First step towards making uiomove() take a size_t size argument:miod2015-02-102-9/+9
| | | | | | | - rename uiomove() to uiomovei() and update all its users. - introduce uiomove(), which is similar to uiomovei() but with a size_t. - rewrite uiomovei() as an uiomove() wrapper. ok kettenis@
* knftedu2014-12-231-10/+19
|
* convert from nointr to waitoktedu2014-12-231-3/+3
|
* primary change: move uvm_vnode out of vnode, keeping only a pointer.tedu2014-12-165-5/+10
| | | | | | objective: vnode.h doesn't include uvm_extern.h anymore. followup changes: include uvm_extern.h or lock.h where necessary. ok and help from deraadt
* use arc4random_buf() instead of (r << 32) | r; discussed with matthewderaadt2014-12-031-2/+2
|
* move arc4random prototype to systm.h. more appropriate for most codetedu2014-11-181-3/+1
| | | | to include that than rdnvar.h. ok deraadt dlg
* include sys/unistd.h where needed instead of indirect reliance. ok jsgtedu2014-11-031-1/+3
|
* Instead of trying to emulate select/poll semantics with respect to EOFmillert2014-10-091-16/+10
| | | | | | | | | | by mutating so_state before calling soo_poll(), call soo_poll() normally but avoid setting SS_CANTRCVMORE in the reader's so_state on first open. This fixes EOF detection in select/poll on the reader side when the write side is closed. Also set SS_ISDISCONNECTED when the writer count reaches zero so POLLHUP is set in revents. Unlike Unix domain sockets, we need to clear the EOF indicator after it has been read so that subsequent reads will block waiting for a new writer. This now passes regress.
* EOPNOTSUPP for quotactl. from Martin Natanotedu2014-10-031-2/+2
|
* remove uneeded proc.h includesjsg2014-09-143-6/+3
| | | | ok mpi@ kspillner@
* Actually remove the procfs filesguenther2014-09-087-2121/+0
|
* fix kqueue read/write filters for msdosfs and fusefsjsg2014-08-101-7/+36
| | | | ok tedu@
* add a size argument to free. will be used soon, but for now default to 0.tedu2014-07-129-26/+26
| | | | after discussions with beck deraadt kettenis.
* decouple struct uvmexp into a new file, so that uvm_extern.h and sysctl.hderaadt2014-07-084-11/+4
| | | | | don't need to be married. ok guenther miod beck jsing kettenis
* Track whether a process is a zombie or not yet fully built via flagsguenther2014-07-041-4/+5
| | | | | | | | | | | PS_{ZOMBIE,EMBRYO} on the process instead of peeking into the process's thread data. This eliminates the need for the thread-level SDEAD state. Change kvm_getprocs() (both the sysctl() and kvm backends) to report the "most active" scheduler state for the process's threads. tweaks kettenis@ feedback and ok matthew@
* In fusefs_unmount() we need to send the FBT_DESTROY fusebuf only ifsyl2014-06-041-12/+12
| | | | | | | vflush(9) succeed. Problem reported by Helg Bredow. OK sthen@
* Add -o max_read=XXX support in fuse. This is needed by usmb to have asyl2014-05-203-8/+12
| | | | | | working read() and write(). ok tedu@
* Add some consistency in fuse error handling. We need to return ENXIOsyl2014-05-191-34/+80
| | | | | | | | when the fuse communication channel is broken and ENOSYS when the libfuse callback does not exist. Reported by Helg Bredow, thanks! ok tedu@
* Include <sys/vmmeter.h> directly instead of relying on it beingmpi2014-05-061-6/+3
| | | | | | | | | | | | | | pulled by <uvm/uvm_extern.h> and turn uvm_total() into a private function. The preferred way to get memory stats is through the VM_UVMEXP sysctl(3) since VM_METER is just a wrapper on top of it. In the kernel, use `uvmexp' directly instead of uvm_total(). This change does not remove <sys/vmmeter.h> from <uvm/uvm_extern.h> to give some more time to port maintainers to fix their ports. ok guenther@ as part of a larger diff.
* Do not rely on the fact that sys/vnode.h includes all the worldmpi2014-03-184-4/+8
| | | | | | through uvm/uvm.h and add proper includes for function definitions. ok syl@
* Replace the vnode struct vattr cache by VOP_GETATTR() calls.syl2014-02-013-12/+17
| | | | ok tedu@
* Add fuse support for IO_APPEND.syl2014-01-291-1/+12
| | | | ok beck@
* naughty guenther didn't compiletedu2014-01-211-3/+1
|
* Threads can't be zombies, only processes, so change zombproc to zombprocess,guenther2014-01-201-21/+10
| | | | | | | | make it a list of processes, and change P_NOZOMBIE and P_STOPPED from thread flags to process flags. Add allprocess list for the code that just wants to see processes. ok tedu@
* Do not complain if release is not implemented in fuse client.syl2014-01-201-2/+2
| | | | ok millert@.
* Move p_textvp from struct proc to struct process so that the exit codeguenther2014-01-201-3/+3
| | | | | | can be further simplified. ok kettenis@
* Remove an infinite loop in fuse_device_cleanup().syl2014-01-161-6/+25
| | | | | | Spotted by pelikan@ Some input from stsp@ OK stsp@, pelikan@
* Add support for mknod in fuse.syl2014-01-162-3/+66
| | | | | OK tedu@ "it looks good to me" from guenther@
* Add support for truncate in fuse.syl2013-12-201-2/+4
| | | | | | Input from millert@. Ok millert@, tedu@.
* Unset fuse_mnt in fusefs_unmount after vflushing and freeing fbufs in use.pelikan2013-12-103-10/+10
| | | | | | | | This way, if fuse unmounts a FS without FBT_DESTROY, the fuse_mnt pointer is already invalidated. Also, on weird unmount situations with vnodes in use, vflush() them before doing fuse_device_cleanup(). Tested with ntfs-3g, ok syl@.
* Add support for FBT_RECLAIM that allow us to free the representationsyl2013-12-031-1/+13
| | | | | | of vnode in userspace. "I think it's right" from tedu@.
* Unmount the fuse filesystem if the communication end withsyl2013-12-031-2/+9
| | | | | | the fuse device. ok sthen@
* Add some missing check to know if the communication channel withsyl2013-12-033-11/+24
| | | | | | libfuse is still open before sending fusebufs. ok sthen@
* Remove some double free on fusebuf datas.syl2013-11-281-1/+3
| | | | Found the hard way and ok mpk@
* use printf(9) consistently in FUSEsyl2013-10-074-10/+10
|
* Add kqueue's support for FUSE.syl2013-10-071-3/+80
| | | | tested with ajacoutot@ on gvfs+nautilus.
* Introduce fb_delete() helper and use it in FUSE code.syl2013-10-076-71/+68
|
* Use full 64-bit UUIDs in FUSE.syl2013-10-071-2/+2
| | | | Thanks to Pedro Martelletto.
* Allocate fb_dat in fb_setup(9)syl2013-10-071-1/+6
|
* Add new ioctl for handling FUSE bufferssyl2013-10-072-3/+117
|
* Rework fuseread() and fusewrite().syl2013-10-075-121/+86
|