Re: [PATCH v5 8/9] iov_iter, block: Make bio structs pin pages rather than ref'ing if appropriate

From: David Howells
Date: Thu Jan 12 2023 - 10:12:57 EST


Christoph Hellwig <hch@xxxxxxxxxxxxx> wrote:

> But given that all calls for the same iter type return the same
> cleanup_mode by defintion I'm not even sure we need any of this
> debug checking, and might as well just do:
>
> if (cleanup_mode & FOLL_GET)
> bio_set_flag(bio, BIO_PAGE_REFFED);
> else if (cleanup_mode & FOLL_PIN)
> bio_set_flag(bio, BIO_PAGE_PINNED);

That's kind of what I'm doing - though I've left out the else just in case the
VM decides to indicate back both FOLL_GET and FOLL_PIN. I'm not sure why it
would but...

David