fc_block_scsi_eh(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

✨ fc_block_scsi_eh(9) ✨

okay bestie, welcome to the Kernel API Manual β€” today's main character is fc_block_scsi_eh, and honestly? she's the friend who holds the door so nobody gets left behind πŸšͺπŸ’–


🌸 NAME 🌸

fc_block_scsi_eh β€” blocks the SCSI eh thread for a blocked fc_rport, no cap 🫢


πŸŽ€ SYNOPSIS πŸŽ€

int fc_block_scsi_eh (struct scsi_cmnd *cmnd );

πŸ¦‹ ARGUMENTS πŸ¦‹

  • cmnd β€” the SCSI command that scsi_eh is trying to recover. that's the one, that's the patient 🩺✨

πŸ’… DESCRIPTION πŸ’…

so here's the vibe: this routine can be called from a FC LLD scsi_eh callback. what it does is it blocks the scsi_eh thread until the fc_rport leaves FC_PORTSTATE_BLOCKED, or until the fast_io_fail_tmo fires β€” whichever comes first ⏳πŸ”₯

and why do we even need this? because otherwise scsi_eh would be out here failing recovery actions for blocked rports, which β€” and this is the important bit β€” would lead to offlined SCSI devices 😭 so yeah, this little block is lowkey doing the lord's work. no cap.


⭐ RETURN ⭐

  • 0 β€” the fc_rport left the state FC_PORTSTATE_BLOCKED πŸŽ‰ slay, we're so back.
  • FAST_IO_FAIL β€” fast_io_fail_tmo fired. this one should be passed back to scsi_eh, so don't just pocket it, bestie πŸ™ˆ

🌈 SEE ALSO 🌈

Kernel file ./drivers/scsi/scsi_transport_fc.c


that's the whole roster, bestie β€” every single one of them, i counted, we don't skip entries in this house πŸ’…

okay that's the page!! this lil icon lives in ./drivers/scsi and the version tag says October 2026 β€” so like, very much future-proofed aesthetic πŸ’œβœ¨ go forth and block those eh threads responsibly, mwah πŸŽ€

πŸ“¦ where this page comes from