zfs/tests/zfs-tests/tests/functional
LOLi f763c3d1df Fix range locking in ZIL commit codepath
Since OpenZFS 7578 (1b7c1e5) if we have a ZVOL with logbias=throughput
we will force WR_INDIRECT itxs in zvol_log_write() setting itx->itx_lr
offset and length to the offset and length of the BIO from
zvol_write()->zvol_log_write(): these offset and length are later used
to take a range lock in zillog->zl_get_data function: zvol_get_data().

Now suppose we have a ZVOL with blocksize=8K and push 4K writes to
offset 0: we will only be range-locking 0-4096. This means the
ASSERTion we make in dbuf_unoverride() is no longer valid because now
dmu_sync() is called from zilog's get_data functions holding a partial
lock on the dbuf.

Fix this by taking a range lock on the whole block in zvol_get_data().

Reviewed-by: Chunwei Chen <tuxoko@gmail.com>
Reviewed-by: Brian Behlendorf <behlendorf1@llnl.gov>
Signed-off-by: loli10K <ezomori.nozomu@gmail.com>
Closes #6238 
Closes #6315 
Closes #6356 
Closes #6477
2017-08-21 08:59:48 -07:00
..
acl ZTS: replace su commands by run_user function 2017-07-05 10:46:52 -07:00
atime OpenZFS 7290 - ZFS test suite needs to control what utilities it can run 2017-04-06 09:25:36 -07:00
bootfs OpenZFS 7404 - rootpool_007_neg, bootfs_006_pos and bootfs_008_neg tests fail with the loader project bits 2017-04-07 14:18:19 -07:00
cache Enable remaining tests 2017-05-22 12:34:32 -04:00
cachefile Enable remaining tests 2017-05-22 12:34:32 -04:00
casenorm OpenZFS 7290 - ZFS test suite needs to control what utilities it can run 2017-04-06 09:25:36 -07:00
chattr Fix chattr_001_pos 2017-07-07 15:45:29 -07:00
checksum OpenZFS 7290 - ZFS test suite needs to control what utilities it can run 2017-04-06 09:25:36 -07:00
clean_mirror Implemented zpool sync command 2017-05-19 12:33:11 -07:00
cli_root Fix remounting snapshots read-write 2017-08-17 14:28:17 -07:00
cli_user Implemented zpool scrub pause/resume 2017-07-06 22:16:13 -07:00
compression OpenZFS 7290 - ZFS test suite needs to control what utilities it can run 2017-04-06 09:25:36 -07:00
ctime Fix coverity defects: CID 147643, 152204, 49339 2016-10-18 10:43:22 -07:00
delegate Enable remaining tests 2017-05-22 12:34:32 -04:00
devices Enable remaining tests 2017-05-22 12:34:32 -04:00
events Increase delay for zed log in events tests 2017-07-24 13:02:42 -07:00
exec Enable remaining tests 2017-05-22 12:34:32 -04:00
fault Enable remaining tests 2017-05-22 12:34:32 -04:00
features Fix dnode allocation race 2017-08-08 08:38:53 -07:00
grow_pool Fix ZTS grow_pool/setup 2017-08-15 16:40:04 -07:00
grow_replicas Enable remaining tests 2017-05-22 12:34:32 -04:00
history ZTS: replace su commands by run_user function 2017-07-05 10:46:52 -07:00
inheritance OpenZFS 7290 - ZFS test suite needs to control what utilities it can run 2017-04-06 09:25:36 -07:00
inuse Enable remaining tests 2017-05-22 12:34:32 -04:00
large_files Enable remaining tests 2017-05-22 12:34:32 -04:00
largest_pool Enable remaining tests 2017-05-22 12:34:32 -04:00
libzfs Add libtpool (thread pools) 2017-08-09 15:31:08 -07:00
link_count Enable remaining tests 2017-05-22 12:34:32 -04:00
migration OpenZFS 7290 - ZFS test suite needs to control what utilities it can run 2017-04-06 09:25:36 -07:00
mmap Enable remaining tests 2017-05-22 12:34:32 -04:00
mmp mmp_on_uberblocks: Use kstat for uberblock counts 2017-07-31 16:54:34 -07:00
mount Enable remaining tests 2017-05-22 12:34:32 -04:00
mv_files OpenZFS 7629 - Fix for 7290 neglected to remove some escape sequences 2017-04-07 09:30:05 -07:00
nestedfs OpenZFS 7290 - ZFS test suite needs to control what utilities it can run 2017-04-06 09:25:36 -07:00
no_space Fix size inflation in spa_get_worst_case_asize() 2017-04-10 15:28:21 -07:00
nopwrite Enable remaining tests 2017-05-22 12:34:32 -04:00
online_offline Enable remaining tests 2017-05-22 12:34:32 -04:00
pool_names OpenZFS 7290 - ZFS test suite needs to control what utilities it can run 2017-04-06 09:25:36 -07:00
poolversion OpenZFS 7290 - ZFS test suite needs to control what utilities it can run 2017-04-06 09:25:36 -07:00
privilege ZTS: replace su commands by run_user function 2017-07-05 10:46:52 -07:00
quota OpenZFS 7290 - ZFS test suite needs to control what utilities it can run 2017-04-06 09:25:36 -07:00
raidz OpenZFS 7290 - ZFS test suite needs to control what utilities it can run 2017-04-06 09:25:36 -07:00
redundancy Enable remaining tests 2017-05-22 12:34:32 -04:00
refquota OpenZFS 7290 - ZFS test suite needs to control what utilities it can run 2017-04-06 09:25:36 -07:00
refreserv OpenZFS 7290 - ZFS test suite needs to control what utilities it can run 2017-04-06 09:25:36 -07:00
rename_dirs Enable remaining tests 2017-05-22 12:34:32 -04:00
replacement OpenZFS 7290 - ZFS test suite needs to control what utilities it can run 2017-04-06 09:25:36 -07:00
reservation Retry zfs destroy when busy in rsend tests 2017-08-03 08:57:43 -07:00
rootpool OpenZFS 8076 - zfs-tests suite fails rootpool_002_neg 2017-05-25 17:29:08 -07:00
rsend Native Encryption for ZFS on Linux 2017-08-14 10:36:48 -07:00
scrub_mirror OpenZFS 7290 - ZFS test suite needs to control what utilities it can run 2017-04-06 09:25:36 -07:00
slog Enable remaining tests 2017-05-22 12:34:32 -04:00
snapshot Enable remaining tests 2017-05-22 12:34:32 -04:00
snapused OpenZFS 7290 - ZFS test suite needs to control what utilities it can run 2017-04-06 09:25:36 -07:00
sparse OpenZFS 7290 - ZFS test suite needs to control what utilities it can run 2017-04-06 09:25:36 -07:00
threadsappend Enable remaining tests 2017-05-22 12:34:32 -04:00
tmpfile Add tmpfile_003_pos to .gitignore 2017-02-03 13:42:49 -08:00
truncate OpenZFS 7290 - ZFS test suite needs to control what utilities it can run 2017-04-06 09:25:36 -07:00
upgrade Implemented zpool sync command 2017-05-19 12:33:11 -07:00
userquota Add zfs_nicebytes() to print human-readable sizes 2017-05-02 13:43:53 -07:00
vdev_zaps OpenZFS 7290 - ZFS test suite needs to control what utilities it can run 2017-04-06 09:25:36 -07:00
write_dirs Skip tests that are slow on 32-bit builders 2017-06-06 19:04:01 -07:00
xattr OpenZFS 8071 - zfs-tests: 7290 missed some cases 2017-05-25 17:22:55 -07:00
zvol Fix range locking in ZIL commit codepath 2017-08-21 08:59:48 -07:00
Makefile.am Multi-modifier protection (MMP) 2017-07-13 13:54:00 -04:00