]> git-server-git.apps.pok.os.sepia.ceph.com Git - ceph-client.git/commit
libceph: complete lingering requests only once
authorAlex Elder <elder@inktank.com>
Wed, 27 Feb 2013 16:26:25 +0000 (10:26 -0600)
committerAlex Elder <elder@inktank.com>
Tue, 5 Mar 2013 21:22:56 +0000 (15:22 -0600)
commit4ada29ffe0a331dc1134e06903cb92ac40cad85a
tree1ad8e862e9c5e47b081230195d5d434cfdb65039
parent6a451cf623c55fc0ed3ad3aff85ba635ffdcc231
libceph: complete lingering requests only once

An osd request marked to linger will be re-submitted in the event
a connection to the target osd gets dropped.  Currently, if there
is a callback function associated with a request it will be called
each time a request is submitted--which for lingering requests can
be more than once.

Change it so a request--including lingering ones--will get completed
(from the perspective of the user of the osd client) exactly once.

This resolves:
    http://tracker.ceph.com/issues/3967

Signed-off-by: Alex Elder <elder@inktank.com>
Reviewed-by: Josh Durgin <josh.durgin@inktank.com>
include/linux/ceph/osd_client.h
net/ceph/osd_client.c