Ok, seems like the patches made it to the lists, while oyu only send the cover letter to my address which is very strange. > diff --git a/include/linux/uio.h b/include/linux/uio.h > index 72d88566694e..af626eb970cf 100644 > --- a/include/linux/uio.h > +++ b/include/linux/uio.h > @@ -18,6 +18,8 @@ struct kvec { > }; > > enum iter_type { > + ITER_BVEC_FLAG_FIXED = 2, > + > /* iter types */ > ITER_IOVEC = 4, > ITER_KVEC = 8, This is making the iter type even more of a mess than it already is. I think we at least need placeholders for 0/1 here and an explicit flags namespace, preferably after the types. Then again I'd much prefer if we didn't even add the flag or at best just add it for a short-term transition and move everyone over to the new scheme. Otherwise the amount of different interfaces and supporting code keeps exploding. > @@ -29,8 +31,9 @@ enum iter_type { > struct iov_iter { > /* > * Bit 0 is the read/write bit, set if we're writing. > - * Bit 1 is the BVEC_FLAG_NO_REF bit, set if type is a bvec and > - * the caller isn't expecting to drop a page reference when done. > + * Bit 1 is the BVEC_FLAG_FIXED bit, set if type is a bvec and the > + * caller ensures that page references and memory baking bvec won't > + * go away until callees finish with them. > */ > unsigned int type; I think the comment needs to move to the enum.