ahash_request_set_virt(9)
π ahash_request_set_virt(9) β it's giving "Kernel API Manual" energy
okay so bestie, welcome to the glow-up of ahash_request_set_virt(9). this is a page from the Kernel API Manual and it's literally about pointing an async hash request at a virtual address. short page, but it ATE. let's get into it π
β¨ NAME β¨
ahash_request_set_virt β the little call that sets your virtual address data buffers, no cap π«
π¦ SYNOPSIS π¦
void ahash_request_set_virt (struct ahash_request *req , const u8 *src ,
u8 *result , unsigned int nbytes );
look at her. flawless. four args, returning void, doing exactly what she says on the tin πΈ
π ARGUMENTS π
reqβ theahash_requesthandle you're updating. your main character struct, basically πsrcβ the source virtual address. yes girl, the vibe check happens here πresultβ the buffer that gets filled with the message digest. and listen β the caller has to make sure that buffer has sufficient space, like by callingcrypto_ahash_digestsize. do not skip this step, i'm begging πnbytesβ how many bytes to process from the source virtual address. count 'em, bestie π’
π DESCRIPTION π
so here's the tea β β by using this call, the caller references the source virtual address. and that source virtual address? it points to the data the message digest is to be calculated for. that's it, that's the whole plot π§β¨
lowkey important, highkey simple:reqgets wired up tosrc, and the digest lands inresult. the caller still owns the "does my buffer have room" homework π
π₯ SEE ALSO π₯
the whole friend group showed up, fr fr π«Ά
- Kernel file
./include/crypto/hash.hMessage Digest Algorithm Definitions(9) struct ahash_alg(9)struct shash_alg(9)- Asynchronous Message Digest API(9)
crypto_alloc_ahash(9)crypto_free_ahash(9)crypto_has_ahash(9)crypto_ahash_blocksize(9)crypto_ahash_digestsize(9)crypto_ahash_statesize(9)crypto_ahash_reqtfm(9)crypto_ahash_reqsize(9)crypto_ahash_setkey(9)crypto_ahash_finup(9)crypto_ahash_final(9)crypto_ahash_digest(9)crypto_ahash_export(9)crypto_ahash_import(9)crypto_ahash_init(9)crypto_ahash_update(9)- Asynchronous Hash Request Handle(9)
ahash_request_set_tfm(9)ahash_request_alloc(9)ahash_request_free(9)ahash_request_set_callback(9)ahash_request_set_crypt(9)- Synchronous Message Digest API(9)
crypto_alloc_shash(9)crypto_free_shash(9)crypto_shash_blocksize(9)crypto_shash_digestsize(9)crypto_shash_descsize(9)crypto_shash_setkey(9)crypto_shash_digest(9)crypto_shash_tfm_digest(9)crypto_shash_export(9)crypto_shash_import(9)crypto_shash_init(9)crypto_shash_finup(9)crypto_shash_update(9)crypto_shash_final(9)
like i said. the entire group chat ππ
mwah π that's the page! sourced from ./include/crypto, dated October 2026, and you just read ahash_request_set_virt(9) β go forth and hash async, icon β¨
π¦ 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