• Sage Weil's avatar
    ceph: clean up mds reply, error handling · e1518c7c
    Sage Weil authored
    We would occasionally BUG out in the reply handler because r_reply was
    nonzero, due to a race with ceph_mdsc_do_request temporarily setting
    r_reply to an ERR_PTR value.  This is unnecessary, messy, and also wrong
    in the EIO case.
    
    Clean up by consistently using r_err for errors and r_reply for messages.
    Also fix the abort logic to trigger consistently for all errors that return
    to the caller early (e.g., EIO from timeout case).  If an abort races with
    a reply, use the result from the reply.
    
    Also fix locking for r_err, r_reply update in the reply handler.
    Signed-off-by: default avatarSage Weil <sage@newdream.net>
    e1518c7c
mds_client.h 10 KB