> +void bio_truncate(struct bio *bio, unsigned new_size) This function really needs a kerneldoc or similar comment describing what it does in detail. > + if (bio_data_dir(bio) != READ) > + goto exit; This really should check the passed in op for REQ_OP_READ directly instead of just the direction on the potentially not fully set up bio.