[Bugs] [Bug 1327857] New: fallocate + punch_hole used instead of fallocate + zero_range in glfs_discard()

bugzilla at redhat.com bugzilla at redhat.com
Sat Apr 16 23:54:29 UTC 2016


https://bugzilla.redhat.com/show_bug.cgi?id=1327857

            Bug ID: 1327857
           Summary: fallocate + punch_hole used instead of fallocate +
                    zero_range in glfs_discard()
           Product: GlusterFS
           Version: mainline
         Component: fuse
          Assignee: bugs at gluster.org
          Reporter: socketpair at gmail.com
                CC: bugs at gluster.org



primarily, problem happen with qemu with glusterfs backend. Since underlaying
FS is ext4, when libglusterfs punches holes with FALLOC_FL_PUNCH_HOLE, it makes
files heavy fragmented. Instead of this, FALLOC_FL_ZERO_RANG may be used.
FALLOC_FL_ZERO_RANG must also pass discard requests to underlaying block
device, so, feature used in qemu still be achieved.

1. Does FUSE allows to implement both fallocate cases ?
2. How does these cases handled in GlusterFS ? I mean usage through FUSE.
3. I suggest API change in order to able to handle both cases in libglusterfs.
4. QEMU glusterfs backend should be configurable how to pass discards from
guest fs - using FALLOC_FL_ZERO_RANGE or FALLOC_FL_PUNCH_HOLE.

Please comment all 4 points.

-- 
You are receiving this mail because:
You are on the CC list for the bug.
You are the assignee for the bug.


More information about the Bugs mailing list