[Gluster-devel] Current FUSE requirements to support flock()

David Sickmiller david at careerliaison.com
Fri Jan 2 21:10:32 UTC 2009


Hi,

The short version of my question is "What is the minimum kernel FUSE 
version needed for flock() support?"  If that question is unclear or a 
sign that I don't know I'm doing, the long version is below.

I'm new to GlusterFS, and I'm interested in using 1.4 to setup a 
mirrored filesystem on a couple Xen virtual servers.  Among other 
things, I want to store PHP session files on here, which are locked 
using flock(), so I need to pay attention to whether my installation of 
FUSE supports this.  Complicating this, my Xen hosting provider 
recommends using their pre-compiled kernels that have FUSE built-in.  
Currently 2.6.18.8, 2.6.27.4, and 2.6.28 are available (for 64-bit).  
While not impossible, it's difficult to add custom modules or use custom 
kernels.

I know the Technical FAQ says "Custom FUSE release (2.7.3) doesn't 
support flock() calls."  I'm not sure I understand what "custom FUSE" 
is... is this what you call it when you build the kernel module from the 
Sourceforge source instead of the kernel source?  I can see that, prior 
to Dec 08, the Install_GlusterFS_from_Source wiki page said things like 
"Any new kernel (>2.6.25), please use custom fuse only" and "For kernel 
version greater than or equal to 2.6.25, the fuse kernel module won't 
compile."  These two sentences don't make sense to me.  The latest 
version of that page says nothing about the FUSE version.

I looked at fuse-2.7.3glfs10.diff, and there are some obvious 
flock-related changes that are not present in the 2.6.18 kernel driver.  
However, the 2.6.27 kernel FUSE driver seems to include some of this 
flock-related code, so I'm hopeful about it working with no additional 
patching.  I'm plugging forward and will eventually be able to do a 
simple test of my own, but I'm not prepared to do a thorough test of 
FUSE compatibility, so I would much appreciate a knowledgeable opinion 
about how to get flock() support with the kernel FUSE... or any general 
warnings about the road I'm going down.

Thank you,
David

-- 
David Sickmiller
o: 866-636-9605 x 101
c: 517-745-3706
f: 810-632-7275

Career Liaison, LLC -- Applying Done Right
www.careerliaison.com






More information about the Gluster-devel mailing list