summaryrefslogtreecommitdiffstats
path: root/net/ceph/messenger.c
diff options
context:
space:
mode:
authorAlex Elder <elder@inktank.com>2013-02-11 19:33:24 +0100
committerSage Weil <sage@inktank.com>2013-05-02 06:19:04 +0200
commitc5b5ef6c51124e61829632251098f8b5efecae8a (patch)
tree344901c39c537f0dd6fe709a6054d48f519da56e /net/ceph/messenger.c
parentrbd: add target object existence flags (diff)
downloadlinux-c5b5ef6c51124e61829632251098f8b5efecae8a.tar.xz
linux-c5b5ef6c51124e61829632251098f8b5efecae8a.zip
rbd: issue stat request before layered write
This is a step toward fully implementing layered writes. Add checks before request submission for the object(s) associated with an image request. For write requests, if we don't know that the target object exists, issue a STAT request to find out. When that request completes, mark the known and exists flags for the original object request accordingly and re-submit the object request. (Note that this still does the existence check only; the copyup operation is not yet done.) A new object request is created to perform the existence check. A pointer to the original request is added to that object request to allow the stat request to re-issue the original request after updating its flags. If there is a failure with the stat request the error code is stored with the original request, which is then completed. This resolves: http://tracker.ceph.com/issues/3418 Signed-off-by: Alex Elder <elder@inktank.com> Reviewed-by: Josh Durgin <josh.durgin@inktank.com>
Diffstat (limited to 'net/ceph/messenger.c')
0 files changed, 0 insertions, 0 deletions