• Dan Williams's avatar
    md: replace STRIPE_OP_COMPUTE_BLK with STRIPE_COMPUTE_RUN · 976ea8d4
    Dan Williams authored
    From: Dan Williams <dan.j.williams@intel.com>
    
    Track the state of compute operations (recalculating a block from all the other
    blocks in a stripe) with a state flag.  Reduces the scope of the
    STRIPE_OP_COMPUTE_BLK flag to only tracking whether a compute operation has
    been requested via the ops_request field of struct stripe_head_state.
    
    Note, the compute operation that is performed in the course of doing a 'repair'
    operation (check the parity block, recalculate it and write it back if the
    check result is not zero) is tracked separately with the 'check_state'
    variable.  Compute operations are held off while a 'check' is in progress, and
    moving this check out to handle_issuing_new_read_requests5 the helper routine
    __handle_issuing_new_read_requests5 can be simplified.
    
    This is another step towards the removal of ops.{pending,ack,complete,count},
    i.e. STRIPE_OP_COMPUTE_BLK only requests an operation and does not track the
    state of the operation.
    Signed-off-by: default avatarDan Williams <dan.j.williams@intel.com>
    Signed-off-by: default avatarNeil Brown <neilb@suse.de>
    976ea8d4
raid5.c 134 KB