• NeilBrown's avatar
    md/raid10: unify handling of write completion. · 19d5f834
    NeilBrown authored
    A write can complete at two different places:
    1/ when the last member-device write completes, through
       raid10_end_write_request
    2/ in make_request() when we remove the initial bias from ->remaining.
    
    These two should do exactly the same thing and the comment says they
    do, but they don't.
    
    So factor the correct code out into a function and call it in both
    places.  This makes the code much more similar to RAID1.
    
    The difference is only significant if there is an error, and they
    usually take a while, so it is unlikely that there will be an error
    already when make_request is completing, so this is unlikely to cause
    real problems.
    Signed-off-by: default avatarNeilBrown <neilb@suse.de>
    19d5f834
raid10.c 81.4 KB