On 3/29/19 8:23 AM, Bob Liu wrote: > diff --git a/include/linux/blk_types.h b/include/linux/blk_types.h > index d66bf5f32610..e9f25f162138 100644 > --- a/include/linux/blk_types.h > +++ b/include/linux/blk_types.h > @@ -18,6 +18,7 @@ struct block_device; > struct io_context; > struct cgroup_subsys_state; > typedef void (bio_end_io_t) (struct bio *); > +typedef int (bio_verifier_t) (struct bio *); > > /* > * Block error status values. See block/blk-core:blk_errors for the details. > @@ -187,6 +188,8 @@ struct bio { > struct bio_integrity_payload *bi_integrity; /* data integrity */ > #endif > }; > + bio_verifier_t *bi_verifier; /* verify callback when endio */ > + struct work_struct bi_work; /* I/O completion */ > > unsigned short bi_vcnt; /* how many bio_vec's */ I told you this for the initial posting, and the objection still stands. Adding 40 bytes to struct bio is a no-go. So that's a big NAK on that series. -- Jens Axboe