As mentioned last time around, this should be a REQ_NOWAIT flag so that it can be easily passed down to the request layer. > +static inline void bio_wouldblock_error(struct bio *bio) > +{ > + bio->bi_error = -EAGAIN; > + bio_endio(bio); > +} Please skip this helper.. > +#define QUEUE_FLAG_NOWAIT 28 /* queue supports BIO_NOWAIT */ Please make the flag name a little more descriptive, this sounds like it will never wait.