ibmvscsis_create_command_q(9)
π ibmvscsis_create_command_q β Create Command Queue
okay so bestie, this is a page from the Kernel API Manual, and it's about ibmvscsis_create_command_q β the little function that literally builds you a command queue from scratch. yes queen, allocation era π
β¨ NAME β¨
ibmvscsis_create_command_q β Create Command Queue
π SYNOPSIS π
long ibmvscsis_create_command_q (struct scsi_info *vscsi , int num_cmds
);
like, it returns a long, takes a struct scsi_info * and an int, and yes the formatting is giving "wrapped by the manpage generator" but we respect it π«Ά
πΈ ARGUMENTS πΈ
vscsiβ Pointer to our adapter structure. that's our adapter, the main character πnum_cmdsβ Currently unused. In the future, may be used to determine the size of the CRQ. so rn it's justβ¦ vibing there π but bestie, someday it'll matter, iykyk
π¦ DESCRIPTION π¦
okay so what does it actually do? three things, and honestly it ate:
- Allocates memory for command queue
- maps remote memory into an ioba
- initializes the command response queue
three-step icon behavior, no cap π
EXECUTION ENVIRONMENT: Process level only β
fr fr, process level only β don't be out here calling this from interrupt context, that's not the vibe π
π SEE ALSO π
Kernel file ./drivers/scsi/ibmvscsi_tgt/ibmvscsi_tgt.c β that's where the lore lives π
and the whole friend group, alphabetically-unhinged as ever:
connection_broken(9)ibmvscsis_unregister_command_q(9)ibmvscsis_delete_client_info(9)ibmvscsis_free_command_q(9)ibmvscsis_cmd_q_dequeue(9)ibmvscsis_send_init_message(9)ibmvscsis_check_init_msg(9)ibmvscsis_disconnect(9)ibmvscsis_post_disconnect(9)ibmvscsis_handle_init_compl_msg(9)ibmvscsis_handle_init_msg(9)ibmvscsis_init_msg(9)ibmvscsis_establish_new_q(9)ibmvscsis_reset_queue(9)ibmvscsis_free_cmd_resources(9)ibmvscsis_ready_for_suspend(9)ibmvscsis_trans_event(9)ibmvscsis_poll_cmd_q(9)ibmvscsis_free_cmd_qs(9)ibmvscsis_get_free_cmd(9)ibmvscsis_adapter_idle(9)ibmvscsis_copy_crq_packet(9)ibmvscsis_adapter_info(9)ibmvscsis_cap_mad(9)ibmvscsis_process_mad(9)srp_snd_msg_failed(9)ibmvscsis_send_messages(9)ibmvscsis_mad(9)ibmvscsis_login_rsp(9)ibmvscsis_srp_login_rej(9)ibmvscsis_srp_login(9)ibmvscsis_srp_i_logout(9)ibmvscsis_ping_response(9)ibmvscsis_parse_command(9)ibmvscsis_parse_cmd(9)ibmvscsis_parse_task(9)ibmvscsis_service_wait_q(9)ibmvscsis_enable_change_state(9)ibmvscsis_destroy_command_q(9)srp_build_response(9)ibmvscsis_handle_crq(9)
like, that's the whole group chat right there π every single one, we don't skip the boring parts, that's not how we do things β¨
okay that's the whole page bestie!! π§ mwah π
this masterpiece lives under ./drivers/scsi/ibmvscsi_tgt, dated October 2026, and it's part of the Kernel API Manual β slay, periodt πππ₯
π¦ 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