_pmcraid_io_done(9)
π _pmcraid_io_done(9) β the Kernel API Manual, bestie edition π
okay so welcome to the Kernel API Manual page for _pmcraid_io_done(9) β the lowercase-with-a-underscore icon of the pmcraid world, and yes we're stanning a helper function today, deal with it β¨
π NAME π
_pmcraid_io_done β the little helper bestie for the pmcraid_io_done function π«Ά
πΈ SYNOPSIS πΈ
int _pmcraid_io_done (struct pmcraid_cmd *cmd , int reslen , int ioasc
);
π¦ ARGUMENTS π¦
cmdβ pointer to the pmcraid command struct, aka the main character of this whole operation π«reslenβ the residual data length that gets set in the ioasa πioascβ the ioasc, either returned by the IOA or set by the driver itself, no in-between bestie π
β DESCRIPTION β
okay so picture this: pmcraid_io_done calls this function to complete mid-layer scsi ops. that's it, that's the vibe π
Return value: it gives you 0 when the caller is required to return it to free_pool. it gives you 1 when the caller need not worry about freeing the command block, because the error handler β an absolute queen β will take care of that π«Ά
no cap, the whole function is a vibe check on who's responsible for cleanup afterwards π₯
π§ SEE ALSO π§
the kernel file ./drivers/scsi/pmcraid.c plus this entire extended universe of functions, all of them (9), all of them iconic π
pmcraid_sdev_init(9)pmcraid_sdev_configure(9)pmcraid_sdev_destroy(9)pmcraid_change_queue_depth(9)pmcraid_init_cmdblk(9)pmcraid_reinit_cmdblk(9)pmcraid_get_free_cmd(9)pmcraid_return_cmd(9)pmcraid_read_interrupts(9)pmcraid_disable_interrupts(9)pmcraid_enable_interrupts(9)pmcraid_clr_trans_op(9)pmcraid_reset_type(9)pmcraid_bist_done(9)pmcraid_start_bist(9)pmcraid_reset_alert_done(9)pmcraid_reset_alert(9)pmcraid_timeout_handler(9)pmcraid_internal_done(9)pmcraid_reinit_cfgtable_done(9)pmcraid_erp_done(9)_pmcraid_fire_command(9)pmcraid_send_cmd(9)pmcraid_ioa_shutdown_done(9)pmcraid_ioa_shutdown(9)pmcraid_get_fwversion_done(9)pmcraid_get_fwversion(9)pmcraid_identify_hrrq(9)pmcraid_send_hcam_cmd(9)pmcraid_init_hcam(9)pmcraid_send_hcam(9)pmcraid_prepare_cancel_cmd(9)pmcraid_cancel_hcam(9)pmcraid_cancel_ccn(9)pmcraid_cancel_ldn(9)pmcraid_expose_resource(9)pmcraid_netlink_init(9)pmcraid_netlink_release(9)pmcraid_notify_ccn(9)pmcraid_notify_ldn(9)pmcraid_notify_ioastate(9)pmcraid_handle_config_change(9)pmcraid_get_error_info(9)pmcraid_ioasc_logger(9)pmcraid_handle_error_log(9)pmcraid_process_ccn(9)pmcraid_process_ldn(9)pmcraid_register_hcams(9)pmcraid_unregister_hcams(9)pmcraid_reset_enable_ioa(9)pmcraid_soft_reset(9)pmcraid_get_dump(9)pmcraid_fail_outstanding_cmds(9)pmcraid_ioa_reset(9)pmcraid_initiate_reset(9)pmcraid_reset_reload(9)pmcraid_reset_bringdown(9)pmcraid_reset_bringup(9)pmcraid_request_sense(9)pmcraid_cancel_all(9)pmcraid_frame_auto_sense(9)pmcraid_error_handler(9)pmcraid_reset_device(9)pmcraid_io_done(9)pmcraid_abort_cmd(9)pmcraid_abort_complete(9)pmcraid_eh_abort_handler(9)pmcraid_eh_device_reset_handler(9)pmcraid_eh_host_reset_handler(9)pmcraid_init_ioadls(9)pmcraid_build_ioadl(9)pmcraid_queuecommand_lck(9)pmcraid_ioctl_driver(9)pmcraid_check_ioctl_buffer(9)pmcraid_show_log_level(9)pmcraid_store_log_level(9)pmcraid_show_drv_version(9)pmcraid_show_adapter_id(9)pmcraid_isr(9)pmcraid_worker_function(9)pmcraid_tasklet_function(9)pmcraid_unregister_interrupt_handler(9)pmcraid_register_interrupt_handler(9)pmcraid_release_cmd_blocks(9)pmcraid_release_control_blocks(9)pmcraid_allocate_cmd_blocks(9)pmcraid_allocate_control_blocks(9)pmcraid_release_host_rrqs(9)pmcraid_allocate_host_rrqs(9)pmcraid_release_hcams(9)pmcraid_allocate_hcams(9)pmcraid_release_config_buffers(9)pmcraid_allocate_config_buffers(9)pmcraid_init_tasklets(9)pmcraid_kill_tasklets(9)pmcraid_release_buffers(9)pmcraid_init_buffers(9)pmcraid_reinit_buffers(9)pmcraid_init_instance(9)pmcraid_shutdown(9)pmcraid_setup_chrdev(9)pmcraid_release_chrdev(9)pmcraid_remove(9)pmcraid_suspend(9)pmcraid_resume(9)pmcraid_complete_ioa_reset(9)pmcraid_set_supported_devs(9)pmcraid_set_timestamp(9)pmcraid_init_res_table(9)pmcraid_querycfg(9)pmcraid_probe(9)pmcraid_init(9)pmcraid_exit(9)
π real talk: that's the whole list, every single one, don't come for me about the length, i listed them all because i love you π«Ά
and that's the page bestie!! sourced from ./drivers/scsi, dated October 2026, and living forever in the Kernel API Manual under _pmcraid_io_done(9) πβ¨ literally the cutest little helper function in the kernel, 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