ata_scsiop_inq_83(9)
π ata_scsiop_inq_83 β aka the Kernel API Manual entry, bestie β¨
okay so real talk, this one's from the Kernel API Manual and it's lowkey a whole vibe. sit down, grab a strawberry π, we're learning about ata_scsiop_inq_83.
π NAME π
ata_scsiop_inq_83 β it literally simulates INQUIRY VPD page 83, which is the device identity page. like, it's the function that tells the SCSI world who this ATA device actually is. main character energy fr fr π
β¨ SYNOPSIS β¨
unsigned int ata_scsiop_inq_83 (struct ata_device *dev , struct
scsi_cmnd *cmd , u8 *rbuf );
no cap, that's the whole signature. look at it. iconic.
π¦ ARGUMENTS π¦
devβ the target device π like, the ATA device we're out here identifying.cmdβ the SCSI command of interest πΈ (the one we're pretending to answer).rbufβ the response buffer, and this is where the simulated SCSIcmdoutput gets sent π so like, this is the lil mailbox the answer goes into.
π DESCRIPTION π
okay so here's what it does: it yields two logical unit device identification designators. two. not one. two. and they are:
- vendor specific ASCII containing the ATA serial number π§
- the SAT defined "t10 vendor id based" one, which contains the ASCII vendor name (
"ATA "), plus the model and serial numbers β¨
that's it, that's the whole thing, and honestly? it ate. π
LOCKING: spin_lock_irqsave(host lock) π β yes bestie that's the locking situation, don't come for me, I just report the facts.
π SEE ALSO π
the kernel file lives at ./drivers/ata/libata-scsi.c π¦ and here's the whole friend group, no one left out, periodt:
ata_scsi_set_passthru_sense_fields(9), ata_std_bios_param(9), ata_scsi_unlock_native_capacity(9), ata_get_identity(9), ata_cmd_ioctl(9), ata_task_ioctl(9), ata_scsi_qc_new(9), ata_to_sense_error(9), ata_gen_ata_sense(9), ata_scsi_dma_need_drain(9), ata_scsi_sdev_init(9), ata_scsi_sdev_configure(9), ata_scsi_sdev_destroy(9), ata_scsi_start_stop_xlat(9), ata_scsi_flush_xlat(9), scsi_6_lba_len(9), scsi_10_lba_len(9), scsi_16_lba_len(9), scsi_dld(9), ata_scsi_verify_xlat(9), ata_scsi_rw_xlat(9), ata_scsi_translate(9), ata_scsi_rbuf_fill(9), ata_scsiop_inq_std(9), ata_scsiop_inq_00(9), ata_scsiop_inq_80(9), ata_scsiop_inq_89(9), ata_dsm_trim_pages(9), ata_scsiop_inq_b0(9), ata_scsiop_inq_b1(9), ata_scsiop_inq_b2(9), ata_scsiop_inq_b6(9), ata_scsiop_inq_b9(9), ata_scsiop_inquiry(9), modecpy(9), ata_msense_caching(9), ata_msense_control(9), ata_msense_rw_recovery(9), ata_scsiop_mode_sense(9), ata_scsiop_read_cap(9), ata_scsiop_report_luns(9), atapi_xlat(9), ata_scsi_find_dev(9), ata_scsi_pass_thru(9), ata_format_dsm_trim_descr(9), ata_scsi_write_same_xlat(9), ata_scsiop_maint_in(9), ata_scsi_report_zones_complete(9), ata_mselect_caching(9), ata_mselect_control(9), ata_scsi_mode_select_xlat(9), ata_scsi_var_len_cdb_xlat(9), ata_get_xlat_func(9), ata_scsi_simulate(9), ata_scsi_queuecmd(9), ata_scsi_offline_dev(9), ata_scsi_remove_dev(9), ata_scsi_media_change_notify(9), ata_scsi_hotplug(9), ata_scsi_user_scan(9), ata_scsi_dev_rescan(9) π
and that's the page!! this lil gem lives under ./drivers/ata and the version stamp says October 2026 on the ata_scsiop_inq_83(9) page β so like, mark your calendar bestie, mwah ππ«Ά
π¦ where this page comes from
- nixpkgs unstable: linux-manual 7.3.1
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash-1017 on : a language model's rewrite of the original, under its terms