[Gluster-devel] 3.4.0beta2 crash in conservative merge?
Emmanuel Dreyfus
manu at netbsd.org
Sun May 26 07:35:26 UTC 2013
Emmanuel Dreyfus <manu at netbsd.org> wrote:
> See my other post: it crashes on line 818, because local->fd is NULL..
> Since it was used at line 804 without crashing, it must be a race
> conditon.
I do not really know what I am doing, but I am trying this:
--- xlators/cluster/dht/src/dht-helper.c.orig 2013-05-26 09:29:52.000000000 +0200
+++ xlators/cluster/dht/src/dht-helper.c 2013-05-26 09:30:47.000000000 +0200
@@ -798,17 +798,8 @@
local->cached_subvol = dst_node;
ret = 0;
- /* once we detect the migration complete, the fd-ctx is no more
- required.. delete the ctx, and do one extra 'fd_unref' for open fd */
- ret = fd_ctx_del (local->fd, this, NULL);
- if (!ret) {
- fd_unref (local->fd);
- ret = 0;
- goto out;
- }
-
/* perform open as root:root. There is window between linkfile
* creation(root:root) and setattr with the correct uid/gid
*/
SYNCTASK_SETID(0, 0);
@@ -834,8 +825,17 @@
local->loc.path, dst_node->name);
goto out;
}
+ /* once we detect the migration complete, the fd-ctx is no more
+ required.. delete the ctx, and do one extra 'fd_unref' for open fd */
+ ret = fd_ctx_del (local->fd, this, NULL);
+ if (!ret) {
+ fd_unref (local->fd);
+ ret = 0;
+ goto out;
+ }
+
ret = 0;
out:
return ret;
--
Emmanuel Dreyfus
http://hcpnet.free.fr/pubz
manu at netbsd.org
More information about the Gluster-devel
mailing list