[Bug 212245] ZFS volume (zvol) does not honor fsync()
bugzilla-noreply at freebsd.org
bugzilla-noreply at freebsd.org
Mon Aug 29 18:24:19 UTC 2016
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=212245
Bug ID: 212245
Summary: ZFS volume (zvol) does not honor fsync()
Product: Base System
Version: 10.3-RELEASE
Hardware: amd64
OS: Any
Status: New
Severity: Affects Some People
Priority: ---
Component: kern
Assignee: freebsd-bugs at FreeBSD.org
Reporter: lordcrc at gmail.com
CC: freebsd-amd64 at FreeBSD.org
CC: freebsd-amd64 at FreeBSD.org
Created attachment 174200
--> https://bugs.freebsd.org/bugzilla/attachment.cgi?id=174200&action=edit
Program used to reproduce the issue
It seems that ZFS does not honor fsync() done on zvols.
This issue affects iSCSI targets backed by ZFS volumes, which are forced to run
with sync=always to ensure consistency. Running sync=always has a drastic
performance impact.
To reproduce:
- Log in via remote SSH console (important).
- Create a ZFS pool and a zvol.
- Format zvol with UFS.
- Mount zvol UFS partition.
- Cd into mount point.
- Compile and run the attached program.
- Physically remove power to the computer.
- Write down the last number shown in the SSH console window.
- Reboot computer and log in.
- Mount zvol partition if needed.
- Cd into mount point.
- Display contents of "output.txt"
- Compare last line of "output.txt" with last line shown in SSH console.
Expected output:
If the SSH console's last number was 11291, the last number in "output.txt"
should be 11291 or 11292.
Actual output:
The last line in "output.txt" is a lot further behind the output in the SSH
console.
Here's the commands I used to set up the UFS partition:
History for 'tank0':
2016-08-29.19:39:35 zpool create tank0 /dev/ada0s2
2016-08-29.19:43:57 zpool import tank0
2016-08-29.19:44:50 zfs create -V 500M tank0/testvol
gpart add -t freebsd-ufs -a 1M /dev/zvol/tank0/testvol
newfs -U /dev/zvol/tank0/testvolp1
mkdir test
mount /dev/zvol/tank0/testvolp1 test
The supplied program shows the expected output if run directly on a "native"
UFS partition, as well as when run on a zvol using ZFS-on-Linux (on a Debian
machine).
--
You are receiving this mail because:
You are on the CC list for the bug.
More information about the freebsd-amd64
mailing list