On Thu, Dec 19, 2013 at 08:07:57AM +0000, Emmanuel Dreyfus wrote:
> This is an expected result: the backend filesystem is FFS, which does not
> support hard linking to a directory (POSIX says that operation *may* be
> supported). I have to look at the sources, but I guess a link(2) has
> to be turned into a linkat(2), so that the hard link is done on the 
> symlink and not on the symlink target (BSD and Linux link(2) behaviors
> differ here, and POSIX does not explicit what is right).

Indeed, that was my bug. Please review my fix:
http://review.gluster.org/#/c/6539/

Perhaps we could add a trap in the build environment so that people
do not commit this bug again? Something like this in a header file:
#ifdef HAVE_LINKAT
#define link(a,b) please_use_linkat_instead_of_link(a,b)
#endif

-- 
Emmanuel Dreyfus
m...@netbsd.org

_______________________________________________
Gluster-devel mailing list
Gluster-devel@nongnu.org
https://lists.nongnu.org/mailman/listinfo/gluster-devel

Reply via email to