• Mike Snitzer's avatar
    dm bio prison v1: add dm_cell_key_has_valid_range · 3f8d3f54
    Mike Snitzer authored
    Don't have bio_detain() BUG_ON if a dm_cell_key is beyond
    BIO_PRISON_MAX_RANGE or spans a boundary.
    
    Update dm-thin.c:build_key() to use dm_cell_key_has_valid_range() which
    will do this checking without using BUG_ON. Also update
    process_discard_bio() to check the discard bio that DM core passes in
    (having first imposed max_discard_granularity based splitting).
    
    dm_cell_key_has_valid_range() will merely WARN_ON_ONCE if it returns
    false because if it does: it is programmer error that should be caught
    with proper testing. So relax the BUG_ONs to be WARN_ON_ONCE.
    Signed-off-by: default avatarMike Snitzer <snitzer@kernel.org>
    3f8d3f54
dm-thin.c 113 KB