ceph/ceph — pull request #179 by liewegas (2013-04-01 04:45:18+00:00)
Title: client: always remove cond from list after waiting

The signal method removes conds from the list after it signals. That's
not okay if the cond triggers for some other reason; an invalid Cond*
will remain on the list and get signaled later.

Make the wait_on_list() helper remove it; use that in several callers;
explicitly do the removal in the remaining callers.

Backport some form of this: bobtail
Signed-off-by: Sage Weil