• Ilya Dryomov's avatar
    rbd: introduce obj_req->osd_reqs list · bcbab1db
    Ilya Dryomov authored
    Since the dawn of time it had been assumed that a single object request
    spawns a single OSD request.  This is already impacting copyup: instead
    of sending empty and current snapc copyups together, we wait for empty
    snapc OSD request to complete in order to reassign obj_req->osd_req
    with current snapc OSD request.  Looking further, updating potentially
    hundreds of snapshot object maps serially is a non-starter.
    
    Replace obj_req->osd_req pointer with obj_req->osd_reqs list.  Use
    osd_req->r_private_item for linkage.
    Signed-off-by: default avatarIlya Dryomov <idryomov@gmail.com>
    Reviewed-by: default avatarDongsheng Yang <dongsheng.yang@easystack.cn>
    bcbab1db
rbd.c 162 KB