Re: [Gluster-Maintainers] Patches for supporting lseek() with SEEK_DATA/SEEK_HOLE available for review

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 





On Wed, Jan 27, 2016 at 5:34 PM, Niels de Vos <ndevos@xxxxxxxxxx> wrote:
Hi all,

yesterday I have posted the latest version of a series that implements
support for lseek() with SEEK_DATA/SEEK_HOLE. This functionality can
improve the handling of sparse files immensely.

Please review the changes that involve components if your interest:

  http://review.gluster.org/#/q/status:open+project:glusterfs+branch:master+topic:bug-1220173

Once these changes made it in, we can detect holes with glfs_lseek() and
can improve NFS-Ganesha, QEMU, Samba and glusterfs-coreutils. There are
probably other projects where we should contribute improvements for
SEEK_DATA/SEEK_HOLE (like 'cp' from coreutils?).

Ravi already got his Linux kernel FUSE patch merged, kernel-4.5 will
support lseek() through FUSE as well:

  http://git.kernel.org/cgit/linux/kernel/git/torvalds/linux.git/commit/fs/fuse?id=0b5da8db145bfd44266ac964a2636a0cf8d7c286

Eventhough this is a fairly basic (though relatively new) filesystem
functionality, I want to document it in a feature page in our
glusterfs-specs repository:

  https://github.com/gluster/glusterfs-specs

Once the document is posted in Gerrit, I'll send a reply to this email
to get some more reviews.

Thanks,
Niels


Note to other maintainers:

There is some order of merging changes needed. A new FOP has been
added, and some patches depend on the new GF_FOP_SEEK or other core
bits.

    Change-Id: I4b74fce8b0bad2f45291fd2c2b9e243c4f4a1aa9
           core: add seek() FOP

    Change-Id: I0c15153beb27de73d5844b6f692175750fc28f60
           syncop: add seek() FOP

    Change-Id: I060768a8a4b9b1c80f4a24c0f17d630f7f028690
           protocol: implement seek() FOP

    Change-Id: I100b741d9bfacb799df318bb081f2497c0664927
           afr: add seek() FOP

    Change-Id: Iaa23ba81df4ee78ddaab1f96b3d926a563b4bb3d
           cluster/ec: add seek() FOP

    Change-Id: I5c272855a21501ac31e1a5f4b68ed7245582c17c
           shard: add seek() FOP as not supported

    Change-Id: I5d15533c53fd710497f97c3cb4a8ea29fba47271
           posix: implement seek() FOP

    Change-Id: Ic86919d28cf639b561114dc1440c6ea4bc6f7307
           upcall: add seek() FOP

    Change-Id: I142dde11923244809b03fcca8cd4c2f7d5ff3929
           gfapi: add support for SEEK_HOLE and SEEK_DATA in

    Change-Id: I8d0573ed8b2ea5ce976ad140a24be7974dbad0e3
           gfapi: add test for glfs_lseek() SEEK_DATA/SEEK_HOLE

    Change-Id: I58c74e161638b2d4ce12fc91a206fdc1b96de14d
           fuse: update fuse_kernel.h to version 23

    Change-Id: I12496d788e59461a3023ddd30e0ea3179007f77e
           fuse: add support for SEEK_HOLE and SEEK_DATA through lseek()

    Change-Id: Ifdee3c793e33f9d763940130e8d01a61eae5498a
           tests: add seek program for testing SEEK_DATA/SEEK_HOLE over

    Change-Id: I9cfed795737609120eafe86f9287d79057b14fe2
           stripe: add seek() FOP as not supported


Thanks for the order.

Today, shard patch[1] for seek() had got merged before we could look at this mail.
The revert patch for that is merged now[2]. I request you to send another patch for the same.


[1] http://review.gluster.org/#/c/13290/
[2] http://review.gluster.org/#/c/13301/


 

_______________________________________________
maintainers mailing list
maintainers@xxxxxxxxxxx
http://www.gluster.org/mailman/listinfo/maintainers


_______________________________________________
Gluster-devel mailing list
Gluster-devel@xxxxxxxxxxx
http://www.gluster.org/mailman/listinfo/gluster-devel

[Index of Archives]     [Gluster Users]     [Ceph Users]     [Linux ARM Kernel]     [Linux ARM]     [Linux Omap]     [Fedora ARM]     [IETF Annouce]     [Security]     [Bugtraq]     [Linux]     [Linux OMAP]     [Linux MIPS]     [eCos]     [Asterisk Internet PBX]     [Linux API]

  Powered by Linux