qla4xxx_queuecommand(9)
okay so bestie, this is qla4xxx_queuecommand(9) from the Kernel API Manual β¨ and it's literally about the SCSI layer handing a command to the driver. Buckle up, it's giving kernel-callback realness π
πΈ NAME πΈ
qla4xxx_queuecommand β the scsi layer issues a scsi command to the driver. periodt π
β¨ SYNOPSIS β¨
enum scsi_qc_status qla4xxx_queuecommand (struct Scsi_Host *host ,
struct scsi_cmnd *cmd );
π ARGUMENTS π
hostβ scsi host π«Άcmdβ Pointer to Linux's SCSI command structure π
π DESCRIPTION π
okay so the remarks are giving: this routine is invoked by Linux to send a SCSI command to the driver. The mid-level driver tries to ensure that queuecommand never gets invoked concurrently with itself or the interrupt handler (although the interrupt handler may call this routine as part of request-completion handling). π
Unfortunately, it sometimes calls the scheduler in interrupt context which is a big NO! NO!. π©π
π₯ SEE ALSO π₯
kernel file ./drivers/scsi/qla4xxx/ql4_os.c is the spot, and the whole function fam is:
qla4xxx_create_chap_list(9)qla4xxx_find_free_chap_index(9)qla4xxx_set_chap_entry(9)qla4xxx_mark_all_devices_missing(9)qla4xxx_mem_free(9)qla4xxx_mem_alloc(9)qla4_8xxx_check_temp(9)qla4_8xxx_check_fw_alive(9)qla4_8xxx_watchdog(9)qla4xxx_timer(9)qla4xxx_cmd_wait(9)qla4xxx_soft_reset(9)qla4xxx_abort_active_cmds(9)qla4xxx_recover_adapter(9)qla4xxx_do_dpc(9)qla4xxx_free_adapter(9)qla4xxx_get_bidi_chap(9)qla4xxx_check_existing_isid(9)qla4xxx_update_isid(9)qla4xxx_should_update_isid(9)qla4xxx_is_flash_ddb_exists(9)qla4xxx_remove_failed_ddb(9)qla4xxx_sysfs_ddb_is_non_persistent(9)qla4xxx_sysfs_ddb_tgt_create(9)qla4xxx_sysfs_ddb_add(9)qla4xxx_sysfs_ddb_apply(9)qla4xxx_sysfs_ddb_login(9)qla4xxx_sysfs_ddb_logout_sid(9)qla4xxx_sysfs_ddb_logout(9)qla4xxx_sysfs_ddb_set_param(9)qla4xxx_sysfs_ddb_delete(9)qla4xxx_sysfs_ddb_export(9)qla4xxx_build_ddb_list(9)qla4xxx_wait_login_resp_boot_tgt(9)qla4xxx_probe_adapter(9)qla4xxx_prevent_other_port_reinit(9)qla4xxx_remove_adapter(9)qla4xxx_config_dma_addressing(9)qla4xxx_del_from_active_array(9)qla4xxx_eh_wait_on_command(9)qla4xxx_wait_for_hba_online(9)qla4xxx_eh_wait_for_commands(9)qla4xxx_eh_abort(9)qla4xxx_eh_device_reset(9)qla4xxx_eh_target_reset(9)qla4xxx_is_eh_active(9)qla4xxx_eh_host_reset(9)qla4xxx_pci_mmio_enabled(9)
xoxo, this page's source/version is ./drivers/scsi/qla4xxx, it's dated October 2026, and the whole thing is literally qla4xxx_queuecommand(9) ππ«Άβ¨
π¦ 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