freebsd-dev/tests/sys
Alan Somers 723c776829 fusefs: WIP making FUSE operations interruptible
The fuse protocol includes a FUSE_INTERRUPT operation that the client can
send to the server to indicate that it wants to abort an in-progress
operation.  It's required to interrupt any syscall that is blocking on a
fuse operation.

This commit adds basic FUSE_INTERRUPT support.  If a process receives any
signal while it's blocking on a FUSE operation, it will send a
FUSE_INTERRUPT and wait for the original operation to complete.  But there
is still much to do:

* The current code will leak memory if the server ignores FUSE_INTERRUPT,
  which many do.  It will also leak memory if the server completes the
  original operation before it receives the FUSE_INTERRUPT.
* An interrupted read(2) will incorrectly appear to be successful.
* fusefs should return immediately for fatal signals.
* Operations that haven't been sent to the server yet should be aborted
  without sending FUSE_INTERRUPT.
* Test coverage should be better.
* It would be great if write operations could be made restartable.
  That would require delaying uiomove until the last possible moment, which
  would be sometime during fuse_device_read.

PR:		236530
Sponsored by:	The FreeBSD Foundation
2019-04-17 23:32:38 +00:00
..
acl Add a very basic regression test for setfacl -R with NFSv4 ACLs. 2018-10-26 21:20:04 +00:00
aio Revert r337929 2018-08-16 22:04:00 +00:00
audit Fix and simplify code by using ATF_REQUIRE_FEATURE macro 2019-04-01 14:21:32 +00:00
auditpipe Introduce test program for auditpipe(4) 2018-07-26 00:16:41 +00:00
capsicum Integrate capsicum-test into the FreeBSD test suite 2019-04-01 21:24:50 +00:00
cddl Remove duplicate ${PACKAGE}FILES+= cleanup.ksh line 2019-03-16 03:37:47 +00:00
common tests: Move common (vnet) test functions into a common file 2019-03-04 18:15:06 +00:00
fifo other: Fix several typos and minor errors 2017-12-27 03:23:58 +00:00
file Revert r337929 2018-08-16 22:04:00 +00:00
fs fusefs: WIP making FUSE operations interruptible 2019-04-17 23:32:38 +00:00
geom Implement tests for online expansion: 2019-04-04 00:05:36 +00:00
kern Drop "All rights reserved" from the files I own 2019-03-11 22:23:56 +00:00
kqueue Temporarily skip flakey test cases 2018-12-06 09:22:35 +00:00
mac DIRDEPS_BUILD: Update dependencies. 2017-10-31 00:07:04 +00:00
mqueue DIRDEPS_BUILD: Update dependencies. 2017-10-31 00:07:04 +00:00
net tun tests: Test renaming and destroying a tun interface in a vnet jail 2019-03-05 15:49:30 +00:00
netinet Plug a trivial memory leak. 2018-11-20 18:13:18 +00:00
netipsec tests: Move common (vnet) test functions into a common file 2019-03-04 18:15:06 +00:00
netmap Skip this test if if_tap module is not available 2019-03-28 16:17:33 +00:00
netpfil pf tests: Fix accidental duplication of content 2019-03-23 01:07:51 +00:00
opencrypto Add test cases for Poly1305 from RFC 7539 2018-08-17 00:32:00 +00:00
pjdfstest DIRDEPS_BUILD: Update dependencies. 2017-10-31 00:07:04 +00:00
posixshm Revert r337929 2018-08-16 22:04:00 +00:00
sys DIRDEPS_BUILD: Update dependencies. 2017-10-31 00:07:04 +00:00
vfs vfs_lookup: Allow PATH_MAX-1 symlinks 2017-11-17 19:25:39 +00:00
vm DIRDEPS_BUILD: Update dependencies. 2017-10-31 00:07:04 +00:00
Makefile tests: Move common (vnet) test functions into a common file 2019-03-04 18:15:06 +00:00
Makefile.depend DIRDEPS_BUILD: Connect MK_TESTS. 2016-03-09 22:46:01 +00:00
Makefile.inc Use MK_CHECK_USE_SANDBOX in tests/..., to deal with the fact that 2017-08-02 22:24:08 +00:00