PROBE::SCSI.IOEXEC(3stap)

✨ PROBE::SCSI.IOEXEC ✨

okay bestie, we're in the SCSI Tapset section of the SystemTap Tapset Reference (that's the 3stap manual, iykyk) and this page is literally just about one little probe. let's get into it πŸ’…


πŸ¦‹ NAME πŸ¦‹

probe::scsi.ioexecute β€” the probe that creates a mid-layer SCSI request and then just… waits for the result. it's giving patient queen energy, honestly. πŸ‘‘


🌸 SYNOPSIS 🌸

probe scsi.ioexecute {}

that's it. that's the whole thing. no arguments, no nothing. iconic minimalism. ✨


πŸ’– VALUES πŸ’–

okay so when this probe fires, here's all the tea it hands you. every single one, no skipping:

  • data_direction β€” tells you whether this command is heading from the device or to the device. direction check, bestie. 🧭
  • timeout β€” how long the request is allowed to hang out before it times out. in seconds.
  • device_state β€” the current state of the device. how's she doing? this is how.
  • lun β€” the lun number. yes, that lun number.
  • channel β€” the channel number.
  • retries β€” how many times we're gonna retry this request. (manifesting it works on try one tho πŸ™ˆ)
  • host_no β€” the host number.
  • request_bufflen β€” the length of the data buffer. (the original says "the data buffer buffer length" and honestly same, we all stutter sometimes 😭)
  • request_buffer β€” the address of the data buffer.
  • data_direction_str β€” same data direction as above, but as a string. cute lil string version. πŸŽ€
  • device_state_str β€” the current device state, but as a string. also the string edition.
  • dev_id β€” the scsi device id.

🌈 DESCRIPTION 🌈

so here's the vibe: prefer the modern scsi_execute_cmd. that's the moment. that's the main character. πŸ’…

but β€” and this is the important part β€” you keep __scsi_execute / scsi_execute around anyway, so that RHEL8-era 4.18 still resolves. because back in the day, scsi_execute was often literally just a macro wrapped around __scsi_execute. macro behavior, no cap.

also: commit 994724e6b3f0 is the one that introduced scsi_execute_cmd, and it swapped things up β€” it takes opf / ml_retries instead of data_direction / retries. so like, if you were expecting the old names, that's why you're confused. it's not you, it's the commit. πŸ”₯


πŸ‘‘ SEE ALSO πŸ‘‘


not me writing an entire essay about a probe that takes zero arguments πŸ’€ but she's doing important work and we respect her for it 🫢

and that's the whole page, bestie!! this was the SystemTap Tapset Reference, dated September 2026 β€” stay hydrated, read your tapset docs, and go slay some SCSI requests. mwah πŸ’‹πŸ’–πŸ¦‹

πŸ“¦ where this page comes from