This is hanging pretty consistently on my machines, maybe 80-90% of the time, but not always. Investigating a bit further, I found that it was always hung spinning in glusterd_get_brickinfo (from gluster_pmap_signout) because it had a brick that was a one-item circular list. This seems to be because the per-volume brick list is modified without locking from multiple threads, and this test on my machine just happens to create the timing conditions for the race condition to manifest. Patch forthcoming in a moment.
http://review.gluster.org/#change,4705 This is surely the first in a series, but it seems to solve the immediate problem.
*** This bug has been marked as a duplicate of bug 948686 ***