ata_force_xfermask(9)
β¨ ata_force_xfermask(9) β¨
okay so bestie, this one is straight out of the Kernel API Manual and it's giving βforce the transfer mask, then whine about itβ energy. iconic, honestly.
π NAME π
ata_force_xfermask β force xfermask according to libata.force.
π¦ SYNOPSIS π¦
void ata_force_xfermask (struct ata_device *dev );
πΈ ARGUMENTS πΈ
devβ ATA device of interest. That's the one we're doing the thing to, iykyk.
π DESCRIPTION π
So it forces xfer_mask according to libata.force, and then it whines about it. That's literally the behavior, no cap.
For consistency with link selection, device number 15 selects the first device connected to the host link.
π LOCKING
LOCKING: EH context. That's the whole lock situation, bestie β EH context, periodt.
π SEE ALSO π
Kernel file ./drivers/ata/libata-core.c is the main-character file here, and the full guest list is these exact references β don't let the wall of names scare you, it's just the whole libata friend group:
ata_link_next(9), ata_dev_next(9), ata_dev_phys_link(9), ata_force_cbl(9),
ata_force_pflags(9), ata_force_link_limits(9), ata_force_quirks(9),
atapi_cmd_type(9), ata_set_rwcmd_protocol(9), ata_tf_read_block(9),
ata_build_rw_tf(9), ata_pack_xfermask(9), ata_unpack_xfermask(9),
ata_xfer_mask2mode(9), ata_xfer_mode2mask(9), ata_xfer_mode2shift(9),
ata_mode_string(9), ata_dev_classify(9), ata_id_string(9),
ata_id_c_string(9), ata_read_native_max_address(9),
ata_set_max_sectors(9), ata_hpa_resize(9), ata_dump_id(9),
ata_id_xfermask(9), ata_exec_internal(9), ata_pio_need_iordy(9),
ata_pio_mask_no_iordy(9), ata_do_dev_read_id(9), ata_dev_read_id(9),
ata_dev_power_set_standby(9), ata_dev_power_set_active(9),
ata_read_log_page(9), ata_dev_configure(9), ata_cable_40wire(9),
ata_cable_80wire(9), ata_cable_unknown(9), ata_cable_ignore(9),
ata_cable_sata(9), sata_print_link_status(9), ata_dev_pair(9),
ata_timing_cycle2mode(9), ata_down_xfermask_limit(9), ata_set_mode(9),
ata_wait_ready(9), ata_wait_after_reset(9), ata_std_prereset(9),
ata_std_postreset(9), ata_dev_same_device(9), ata_dev_reread_id(9),
ata_dev_revalidate(9), ata_is_40wire(9), cable_is_40wire(9),
ata_dev_xfermask(9), ata_dev_set_xfermode(9), ata_dev_set_feature(9),
ata_dev_init_params(9), atapi_check_dma(9), ata_std_qc_defer(9),
ata_sg_init(9), ata_sg_clean(9), ata_sg_setup(9), swap_buf_le16(9),
ata_qc_free(9), ata_qc_complete(9), ata_qc_get_active(9),
ata_qc_issue(9), ata_phys_link_online(9), ata_phys_link_offline(9),
ata_link_online(9), ata_link_offline(9), ata_host_suspend(9),
ata_host_resume(9), ata_dev_init(9), ata_link_init(9),
sata_link_init_spd(9), ata_port_alloc(9), ata_host_alloc(9),
ata_host_alloc_pinfo(9), ata_finalize_port_ops(9), ata_host_start(9),
ata_host_init(9), ata_host_register(9), ata_host_activate(9),
ata_dev_free_resources(9), ata_port_detach(9), ata_host_detach(9),
ata_pci_remove_one(9), ata_platform_remove_one(9), ata_msleep(9),
ata_wait_register(9)
xoxo, cute footer vibes only: source/version ./drivers/ata, date October 2026, page ata_force_xfermask(9) β slay and goodbye πβ¨
π¦ 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