chsc_async(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

✨ chsc_async ✨

okay so bestie, welcome to chsc_async(9) from the Kernel API Manual β€” this is the one that tries to start a chsc request asynchronously, and honestly? it's giving "I'll get to it when I get to it" energy and I respect it πŸ’…


πŸŽ€ SYNOPSIS πŸŽ€

int chsc_async (struct chsc_async_area *chsc_area , struct chsc_request
*request );

like, that's the whole signature, no cap β€” two pointers in, an int out 🫢


🌸 ARGUMENTS 🌸

  • chsc_area β€” the request you want to be started, fr fr. that's the one that's gonna get launched ✨
  • request β€” the request structure you want to associate with it πŸ¦‹

πŸ’– DESCRIPTION πŸ’–

So here's the vibe: this little icon tries to start a chsc request on one of the existing chsc subchannels. that's it, that's the whole main character moment πŸ‘‘

ngl the word "tries" is doing a lot of heavy lifting there β€” check the return values before you get too comfortable πŸ’€

⭐ RETURN ⭐

  • 0 β€” the request was performed synchronously πŸŽ€ (yes bestie, "async" function, synchronous result β€” I don't make the rules)
  • -EINPROGRESS β€” the request was successfully started, slay πŸ”₯
  • -EBUSY β€” literally every chsc subchannel is busy rn, they're all booked 😭
  • -ENODEV β€” no chsc subchannels are available at all, it's giving empty group chat πŸ™ˆ

πŸ¦‹ CONTEXT πŸ¦‹

this is the important bit, don't skip it:

  • interrupts disabled
  • chsc_lock held
periodt. if you're not in that exact context, that's a you problem πŸ’…

🌈 SEE ALSO 🌈

  • Kernel file ./drivers/s390/cio/chsc_sch.c β€” go read the source, iykyk πŸ“–βœ¨

and that's the page, bestie! 🫢 this little gem lives in ./drivers/s390/cio, and it's dated October 2026 β€” so yes, it's from the future, we stan a timeless classic πŸ‘‘πŸ’œ mwah, go start some requests asynchronously (or don't, -EBUSY happens) πŸŽ€πŸŒΈ

πŸ“¦ where this page comes from