13:38:37 #startmeeting 13:38:37 Meeting started Thu Dec 4 13:38:37 2014 UTC. The chair is ndevos. Information about MeetBot at http://wiki.debian.org/MeetBot. 13:38:37 Useful Commands: #action #agreed #halp #info #idea #link #topic. 13:38:46 #chair anoopcs poornimag 13:38:46 Current chairs: anoopcs ndevos poornimag 13:38:52 #topic http://review.gluster.org/#/c/9060/ 13:39:03 anoopcs: yes, partially 13:39:59 What do you think? 13:40:48 I think it is more acceptible that way 13:41:11 still, the mutex+cond in a different structure is a little strange, but that does fure too 13:41:13 okey 13:41:54 ok, the graph->active is not gaurded by fs->mutex, hence it is ok to be in different structures? 13:41:59 s/fure/fuse/ 13:42:32 well, it isnt nice, but yes, it is ok to have in different structures 13:43:02 ok, 13:43:08 as long as graph->active (or should it be 'used' again?) is protected/notified by glfs->mutex/cond 13:43:34 that is where I think there is a bug in fuse, it does not protect graph->used correctly 13:43:44 yes agreed, may be we can use graph->used itself, 13:44:08 yes, I think so 13:44:11 but we don't need a mutex for using that variable as it only one thread that can modify that variable 13:44:13 ? 13:44:40 which will be the poller thread..., 13:45:07 the modification happens in notify() right? 13:45:15 yes 13:45:39 yes, thats poller thread.., 13:46:17 I'd be more happy with having graph->used protected by glfs->mutex 13:46:30 ok..:) 13:46:54 yeah that can be done.., 13:47:27 you never know when something changes, and in case poller behaves differently, it might become a very sporadic and difficult to debug issue 13:48:44 yes, agreed, 13:48:50 so, in glfs-master.c:notify(), use the glfs->mutex and also broadcast the release through glfs->cond 13:49:29 yes, the broadcast is done by glfs_init_done(), so need not add it explicitly again 13:49:37 ah, ok 13:49:41 I was thinking to hold glfs->mutex while calling graph_setup() 13:50:42 but I have not checked completely if that is easily possible 13:52:41 doesn't look straight forward, as graph_setup() calls glfs_subvol_done after unlocking glfs->mutex, 13:53:12 yeah... 13:54:26 ok, so use the variable graph->used gaurded by glfs->mutex, and broadcast glfs->cond is done by glfs_init_done, so no need to do it explicitly..., 13:56:18 yes, but please add a comment in notify() about that, otherwise I'll be wondering again why it is missing 13:56:29 two things are little odd, graph->used gaurded by glfs->mutex, and glfs->cond used to notify when glfs_init_done() and when for ntifying CHILD_DONE.. 13:56:34 yes, agreed 13:57:01 s/ntifying/notifying 13:57:17 yes, it is a little awkward, but I think we can justify that a graph is always related to a glfs structure 13:57:29 ok, 13:57:38 Agreed 13:59:04 so, that settles it? 13:59:30 * ndevos will file a bug and patch for the graph->used usage in fuse-bridge.c 14:00:06 yes, thank you:) 14:00:25 I will make the necessary changes then 14:00:40 cool 14:01:07 anything else that we need discuss about it? 14:01:27 otherwise we'll end the meeting and send the log to Shyam :) 14:03:03 Nothing more, I think. 14:03:31 that is all, thank you.., will send the log to Shyam.. 14:03:33 :) 14:03:48 okay, thanks guys! 14:03:53 #endmeeting