svm_range_split(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

πŸ’– NAME πŸ’–

svm_range_split(9) from the Kernel API Manual β€” split a range in 2 ranges, and that's literally the whole assignment bestie. πŸ’…

✨ SYNOPSIS ✨

int svm_range_split (struct svm_range *prange , uint64_t start , uint64_t last , struct svm_range **new );

πŸ’… ARGUMENTS πŸ’…

  • prange β€” the svm range you're splitting. main character energy fr. 🌟
  • start β€” the remaining range start address, in pages. πŸ“„
  • last β€” the remaining range last address, in pages. 🧾
  • new β€” the result new range generated, aka the fresh new range. 🐣

πŸ¦‹ DESCRIPTION πŸ¦‹

Okay so there are two cases only, no extras, no secret third case, periodt:

case 1: if start == prange->start prange ==> prange[start, last] new range [last + 1, prange->last]

case 2: if last == prange->last prange ==> prange[start, last] new range [prange->start, start - 1]

That's it. Case 1 is the start == prange->start situation, and case 2 is the last == prange->last situation. The code-shape stays exactly like that, iykyk. 🫢

πŸŽ€ RETURN πŸŽ€

  • 0 β€” OK, slay. βœ…
  • -ENOMEM β€” out of memory. 😭
  • -EINVAL β€” invalid start, last. πŸ’€

🌈 SEE ALSO 🌈


okay that's the page bestie πŸ’– svm_range_split(9) is serving Kernel API Manual energy, straight from ./drivers/gpu/drm/amd/amdkfd, dated October 2026 β€” bye, go split responsibly πŸŽ€βœ¨

πŸ“¦ where this page comes from