blk_crypto_f...ack_bio_prep(9)
π blk_crypto_fallback_bio_prep(9) π
okay bestie, welcome to the Kernel API Manual β yes this is a real manpage and yes it's about making encrypted block I/O work when the hardware won't do it for you. buckle up π
β¨ NAME β¨
blk_crypto_fallback_bio_prep β prep a bio so it can use fallback en/decryption π¦
πΈ SYNOPSIS πΈ
bool blk_crypto_fallback_bio_prep (struct bio *bio );
π ARGUMENTS π
bioβ the bio you're prepping, that's literally it, that's the whole argument π«Ά
π₯ DESCRIPTION π₯
so here's the tea β β what this function does depends on what your bio is up to:
- if
biois doing a WRITE operation, it allocates one or more bios to contain the encrypted payload and submits them. slay, encrypted, submitted. π - if it's a READ operation, it marks the bio for decryption by using
bi_privateandbi_end_io. that's the whole vibe check.
and in either case β write or read, doesn't matter, main character energy both ways β this function makes the submitted bio(s) look like regular bios for the purposes of the rest of the stack. like, as if no encryption context was ever specified, no cap. the one exception is blk-integrity β and heads up: blk-integrity and blk-crypto are not currently supported together π« so don't try it.
β RETURN β
it returns true if bio should be submitted to the driver by the caller β otherwise false π
and on error? it sets bio->bi_status, calls bio_endio, and returns false. so like, it handles its own drama before handing it back to you π
π¦ SEE ALSO π¦
- Kernel file
./block/blk-crypto-fallback.cβ go read it, iykyk π blk_crypto_fallback_decrypt_endio(9)β the decryption endio bestie, go say hi π
aaaand that's the page, bestie π it lives in ./block and it's dated October 2026 β so it's from the future, iconic behavior honestly, periodt πβ¨
π¦ where this page comes from
- nixpkgs unstable: linux-manual 7.3.1
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash-1017 on : a language model's rewrite of the original, under its terms