UNIX socket not created in namespace during self-heal

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

 



Hi,

In the version 2.0.0rc1 the code that creates entries in the namespace
during the self heal process (for example when starting unify with
preexisting data) is create_entry() in posix.c.

But that code does not create sockets and so one gets an error like
(and it looks like the socket disapeared for the clients):

2009-01-22 16:15:06 E [posix.c:2949:create_entry] ns: invalid mode
0140755 for /export/ns//boo

The following patch fixes the problem for me.

--- posix.c.old 2009-01-22 13:56:12.240486670 +0100
+++ posix.c     2009-01-22 16:33:57.265113137 +0100
@@ -2924,7 +2924,8 @@

                 } else if (S_ISBLK (entry->buf.st_mode) ||
                            S_ISCHR (entry->buf.st_mode) ||
-                           S_ISFIFO (entry->buf.st_mode)) {
+                           S_ISFIFO (entry->buf.st_mode) ||
+                           S_ISSOCK (entry->buf.st_mode)) {

                         ret = mknod (pathname, entry->buf.st_mode,
                                      entry->buf.st_dev);




Filipe

Attachment: posix.c.diff3
Description: Binary data


[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