qla4xxx_sysf...b_tgt_create(9)
β¨ NAME β¨
qla4xxx_sysfs_ddb_tgt_create β bestie, this one literally creates the sysfs entry for a target π
This is a Kernel API Manual page, and the star of the show is a function called qla4xxx_sysfs_ddb_tgt_create. Yeah, the name is a whole paragraph, we don't make the rules π
π SYNOPSIS π
okay so here's the signature, copy it exactly, no cap:
int qla4xxx_sysfs_ddb_tgt_create (struct scsi_qla_host *ha , struct dev_db_entry *fw_ddb_entry , uint16_t *idx , int user );
πΈ ARGUMENTS πΈ
haβ pointer to host π«Άfw_ddb_entryβ flash ddb data β¨idxβ target index π―userβ if set then this call is made from userland else from kernel π
π RETURN π
On success it hands you back QLA_SUCCESS. On failure it's a QLA_ERROR, and honestly? π iconic either way.
π¦ DESCRIPTION π¦
So what this baddie does is create separate sysfs entries for the session and connection attributes of the given fw ddb entry π¦ like it's splitting the vibes into their own lil folders.
And there's a plot twist π β if this gets invoked as a result of a userspace call, then the entry gets marked as nonpersistent using the flash_state field. so yeah, userland called, userland energy, not sticking around in flash. periodt π
π SEE ALSO π
Kernel file: ./drivers/scsi/qla4xxx/ql4_os.c β go read it, iykyk π
qla4xxx_create_chap_list(9)qla4xxx_find_free_chap_index(9)qla4xxx_set_chap_entry(9)qla4xxx_mark_all_devices_missing(9)qla4xxx_queuecommand(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_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)
okay that's the whole page bestie, you ate that π β¨
sign-off szn π β this one came out of the kernel source tree at ./drivers/scsi/qla4xxx, dated October 2026, and it belongs to qla4xxx_sysf...b_tgt_create(9). love that for us. 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