bio_iov_iter_bounce(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

πŸ’– bio_iov_iter_bounce(9) πŸ’–

Okay bestie, this page is bio_iov_iter_bounce(9) from the Kernel API Manual, and it’s lowkey all about bouncing buffer data from an iter into a bio. Let’s get into it. ✨


🌸 NAME 🌸

bio_iov_iter_bounce β€” bounce buffer data from an iter into a bio. That’s the whole name vibe, periodt.


πŸŽ€ SYNOPSIS πŸŽ€

int bio_iov_iter_bounce (struct bio *bio , struct iov_iter *iter ,
size_t maxlen , size_t minsize );

πŸ¦‹ ARGUMENTS πŸ¦‹

  • bio β€” bio to send. This is the bio bestie.
  • iter β€” iter to read from / write into.
  • maxlen β€” maximum size to bounce.
  • minsize β€” minimum folio allocation size.

✨ DESCRIPTION ✨

Okay so picture this: it’s a helper for direct I/O implementations that need to bounce buffer because we need to checksum the data or perform other operations that require consistency. Very β€œwe need things to match” energy. πŸ’…

It allocates folios to back the bounce buffer, and for writes copies the data into it. So writes get their data copied in, no cap.

🫢 It needs to be paired with bio_iov_iter_unbounce called on completion. That pairing is not optional, bestie β€” the original says it needs to be paired, so don’t ghost it.

🌈 SEE ALSO 🌈

Kernel file ./block/bio.c is where the neighborhood starts. Here’s the full friend group, exactly as listed:


And that’s the page, bestie! It’s filed under the Kernel API Manual, source ./block, dated October 2026. Stay iconic, and don’t forget the bio_iov_iter_unbounce pairing πŸŽ€πŸ’œβœ¨

πŸ“¦ where this page comes from