ata_mselect_control(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

okay bestie, welcome to ata_mselect_control(9) from the Kernel API Manual πŸ’…βœ¨ β€” this page is all about simulating MODE SELECT for the control page, and it's lowkey iconic.

🌸 NAME 🌸

ata_mselect_control β€” Simulate MODE SELECT for control page. That's the exact name, no notes.

✨ SYNOPSIS ✨

Here's the signature, character-for-character, because we do not play with kernel prototypes:

int ata_mselect_control (struct ata_queued_cmd *qc , u8 spg , const u8
*buf , int len , u16 *fp );

πŸŽ€ ARGUMENTS πŸŽ€

  • qc β€” storage for translated ATA taskfile. This is where the translated ATA taskfile gets stored, periodt.
  • spg β€” target sub-page of the control page. That's the specific sub-page we're aiming at, bestie.
  • buf β€” input buffer. The buffer coming in.
  • len β€” number of valid bytes in the input buffer. Literally how many bytes in that input buffer are valid.
  • fp β€” out parameter for the failed field on error. It's an out parameter, and it's about the failed field when there's an error.

πŸ’… DESCRIPTION πŸ’…

Prepare a taskfile to modify caching information for the device. That's the whole mission: get a taskfile ready so caching info for the device can be modified. No extra side quests.

LOCKING: None. Like, none at all β€” no locks in this function, bestie.

πŸ¦‹ SEE ALSO πŸ¦‹

Kernel file: ./drivers/ata/libata-scsi.c β€” yes, that's the one.

The SEE ALSO squad is huge and we're naming every single one, no skipping:

that's the whole page, bestie 🫢 β€” source ./drivers/ata, date October 2026, signed ata_mselect_control(9) πŸ’–βœ¨

πŸ“¦ where this page comes from