• NeilBrown's avatar
    md: make merge_bvec_fn more robust in face of personality changes. · 64590f45
    NeilBrown authored
    There is no locking around calls to merge_bvec_fn(), so
    it is possible that calls which coincide with a level (or personality)
    change could go wrong.
    
    So create a central dispatch point for these functions and use
    rcu_read_lock().
    If the array is suspended, reject any merge that can be rejected.
    If not, we know it is safe to call the function.
    Signed-off-by: default avatarNeilBrown <neilb@suse.de>
    64590f45
md.h 21.6 KB