async_xor_offs(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

✨ async_xor_offs(9) ✨

okay so bestie, this is the kernel API manual page for async_xor_offs(9) β€” it's giving β€œxor a bunch of blocks with a dma engine” energy, and tbh the details matter fr fr πŸ’…

NAME

  • async_xor_offs β€” attempt to xor a set of blocks with a dma engine.

SYNOPSIS

struct dma_async_tx_descriptor * async_xor_offs (struct page *dest ,
unsigned int offset , struct page **src_list , unsigned int *src_offs ,
int src_cnt , size_t len , struct async_submit_ctl *submit );

ARGUMENTS

  • dest β€” destination page
  • offset β€” dst offset to start transaction
  • src_list β€” array of source pages
  • src_offs β€” array of source pages offset, NULL means common src/dst offset
  • src_cnt β€” number of source pages
  • len β€” length in bytes
  • submit β€” submission / completion modifiers

DESCRIPTION

the honored flags are ASYNC_TX_ACK, ASYNC_TX_XOR_ZERO_DST, and ASYNC_TX_XOR_DROP_DST β€” iconic, no cap ✨

xor_gen always uses the dest as a source, so the ASYNC_TX_XOR_ZERO_DST flag must be set to not include dest data in the calculation. the assumption with dma engines is that they only use the destination buffer as a source when it is explicitly specified in the source list. lowkey important, bestie.

src_list note: if the dest is also a source it must be at index zero. the contents of this array will be overwritten if a scribble region is not specified. periodt.

SEE ALSO


mwah πŸ’‹ β€” source/version: ./crypto/async_tx, date: October 2026.

πŸ“¦ where this page comes from