raid6_recov_2data(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

🌸 raid6_recov_2data(9) 🌸

okay bestie, so this is a page straight outta the Kernel API Manual and it's genuinely iconic β€” it's the little function that could when two of your data disks ghost you at the same time πŸ˜­πŸ’… no cap, this is the recovery glow-up you didn't know you needed.


✨ NAME ✨

raid6_recov_2data β€” recover two missing data disks 🫢 (yes, two. two entire disks. main character energy fr fr)


✨ SYNOPSIS ✨

void raid6_recov_2data (int disks , size_t bytes , int faila , int failb
, void **ptrs );

like, look at that signature. obsessed. πŸ”₯


✨ ARGUMENTS ✨

  • disks β€” the number of "disks" we're operating on, and yes that count includes the parity ones πŸ’– (it's giving "everyone's invited to the party")
  • bytes β€” how long each vector is, in bytes πŸŽ€
  • faila β€” index of the first failed data disk πŸ™ˆ
  • failb β€” index of the second failed data disk πŸ™ˆπŸ™ˆ
  • ptrs β€” a disks-sized array of memory pointers πŸ¦‹

✨ DESCRIPTION ✨

so here's the vibe: this bad boy rebuilds bytes worth of missing data into ptrs[faila] and ptrs[failb], pulling from the data still chilling in the remaining disks and from the two parities pointed to by the other indices between 0 and disks - 1 in ptrs. 🌈

disks counts both the data disks and the two parities β€” don't forget that part, it's lowkey important πŸ’€

and bestie, listen: faila must be smaller than failb. that's not a suggestion, that's the law πŸ‘‘ (well, it's the spec. same thing.)

🚨 the memory pointed to by each pointer in ptrs must be page aligned and is limited to PAGE_SIZE. no exceptions, no "but just this once". this is a hard vibe check and if you fail it, bad things happen. periodt. πŸ’…βœ¨

✨ SEE ALSO ✨

go read those too, they're the friend group and they all ate πŸ’–πŸ“


and that's the whole page, bestie!! this one lives in ./lib/raid/raid6 and it was blessed upon us in October 2026 β€” truly a moment πŸ§šβ€β™€οΈπŸ’œ so go forth, recover those two disks, and slay βœ¨πŸ‘‘πŸ’…

πŸ“¦ where this page comes from