ipr_free_irqs(9)
π ipr_free_irqs β Kernel API Manual (section 9) π
okay so bestie, sit down, hydrate, because we're doing kernel cleanup duty today and it's honestly iconic of you to be here π«Ά
πΈ NAME πΈ
ipr_free_irqs β Free all allocated IRQs for the adapter.
like, all of them. every single one. bye bestie β¨
β¨ SYNOPSIS β¨
void ipr_free_irqs (struct ipr_ioa_cfg *ioa_cfg );
no return value, no drama, just vibes and deallocation π
π ARGUMENTS π
ioa_cfgβ the ipr cfg struct. that's the whole argument. one (1) struct, and it's the ipr cfg one. slay π
π DESCRIPTION π
This function frees all allocated IRQs for the specified adapter. that's the entire bit, no cap β you hand it the adapter's cfg struct and it lets go of every IRQ that got allocated for it. it's giving "moving out day, everything goes in the box" energy π
Return value: none. it returns nothing, not even a little guy, not even a status code. it just does the thing and dips π
π¦ SEE ALSO π¦
bestie. brace yourself. the see-also section on this page is enormous and honestly kind of iconic for it. everything below lives in the kernel file ./drivers/scsi/ipr.c, and every single one is a section (9) entry. here we go, in order, no skipping, no summarizing, i promised π«Ά
π§ the command + interrupt crew
ipr_trc_hook(9), ipr_lock_and_done(9), ipr_reinit_ipr_cmnd(9), ipr_init_ipr_cmnd(9), __ipr_get_free_ipr_cmnd(9), ipr_get_free_ipr_cmnd(9), ipr_mask_and_clear_interrupts(9), ipr_save_pcix_cmd_reg(9), ipr_set_pcix_cmd_reg(9), __ipr_scsi_eh_done(9), ipr_scsi_eh_done(9), ipr_fail_all_ops(9), ipr_send_command(9), ipr_do_req(9), ipr_internal_cmd_done(9), ipr_init_ioadl(9), ipr_send_blocking_cmd(9), ipr_send_hcam(9), ipr_init_res_entry(9), ipr_is_same_device(9), __ipr_format_res_path(9), ipr_format_res_path(9), ipr_update_res_entry(9), ipr_clear_res_target(9), ipr_handle_config_change(9), ipr_process_ccn(9), strip_whitespace(9)
π the logging girlies
ipr_log_vpd_compact(9), ipr_log_vpd(9), ipr_log_ext_vpd_compact(9), ipr_log_ext_vpd(9), ipr_log_enhanced_cache_error(9), ipr_log_cache_error(9), ipr_log_enhanced_config_error(9), ipr_log_sis64_config_error(9), ipr_log_config_error(9), ipr_log_enhanced_array_error(9), ipr_log_array_error(9), ipr_log_hex_data(9), ipr_log_enhanced_dual_ioa_error(9), ipr_log_dual_ioa_error(9), ipr_log_fabric_path(9), ipr_log64_fabric_path(9), ipr_log_path_elem(9), ipr_log64_path_elem(9), ipr_log_fabric_error(9), ipr_log_sis64_array_error(9), ipr_log_sis64_fabric_error(9), ipr_log_sis64_service_required_error(9), ipr_log_generic_error(9), ipr_log_sis64_device_error(9)
π§΅ errors, timeouts, and other little guys
ipr_get_error(9), ipr_handle_log_data(9), ipr_process_error(9), ipr_timeout(9), ipr_oper_timeout(9), ipr_find_ses_entry(9), ipr_get_max_scsi_speed(9), ipr_wait_iodbg_ack(9)
π the dump squad (they ate, fr)
ipr_get_sis64_dump_data_section(9), ipr_get_ldump_data_section(9), ipr_sdt_copy(9), ipr_init_dump_entry_hdr(9), ipr_dump_ioa_type_data(9), ipr_dump_version_data(9), ipr_dump_trace_data(9), ipr_dump_location_data(9), ipr_get_ioa_dump(9), ipr_release_dump(9), ipr_worker_thread(9), ipr_read_trace(9)
π sysfs show/store besties
ipr_show_fw_version(9), ipr_show_log_level(9), ipr_store_log_level(9), ipr_store_diagnostics(9), ipr_show_adapter_state(9), ipr_store_adapter_state(9), ipr_store_reset_adapter(9), ipr_store_iopoll_weight(9)
π ucode + firmware glow-up
ipr_alloc_ucode_buffer(9), ipr_free_ucode_buffer(9), ipr_copy_ucode_buffer(9), ipr_build_ucode_ioadl64(9), ipr_build_ucode_ioadl(9), ipr_update_ioa_ucode(9), ipr_store_update_fw(9), ipr_show_fw_type(9)
πΈ dump file plumbing
ipr_read_dump(9), ipr_alloc_dump(9), ipr_free_dump(9), ipr_write_dump(9)
π₯ scsi device era
ipr_change_queue_depth(9), ipr_show_adapter_handle(9), ipr_show_resource_path(9), ipr_show_device_id(9), ipr_show_resource_type(9), ipr_show_raw_mode(9), ipr_store_raw_mode(9), ipr_biosparam(9), ipr_find_starget(9), ipr_target_destroy(9), ipr_find_sdev(9), ipr_sdev_destroy(9), ipr_sdev_configure(9), ipr_sdev_init(9), ipr_match_lun(9), ipr_cmnd_is_free(9), ipr_wait_for_ops(9)
β error handling (eh) gang β be nice to them
ipr_device_reset(9), __ipr_eh_dev_reset(9), ipr_bus_reset_done(9), ipr_abort_timeout(9), ipr_cancel_op(9), ipr_scan_finished(9), ipr_eh_abort(9)
π interrupt handlers, entering the chat
ipr_handle_other_interrupt(9), ipr_isr_eh(9), ipr_isr(9), ipr_isr_mhrrq(9), ipr_build_ioadl64(9), ipr_build_ioadl(9)
π«Ά erp β the whole saga
__ipr_erp_done(9), ipr_erp_done(9), ipr_reinit_ipr_cmnd_for_erp(9), __ipr_erp_request_sense(9), ipr_erp_request_sense(9), ipr_erp_cancel_all(9), ipr_dump_ioasa(9), ipr_gen_sense(9), ipr_get_autosense(9), ipr_erp_start(9), ipr_scsi_done(9), ipr_queuecommand(9)
π bringup / bringdown / mode pages
ipr_ioa_info(9), ipr_ioa_bringdown_done(9), ipr_ioa_reset_done(9), ipr_set_sup_dev_dflt(9), ipr_set_supported_devs(9), ipr_get_mode_page(9), ipr_check_term_power(9), ipr_scsi_bus_speed_limit(9), ipr_modify_ioafp_mode_page_28(9), ipr_build_mode_select(9), ipr_ioafp_mode_select_page28(9), ipr_build_mode_sense(9), ipr_reset_cmd_failed(9), ipr_reset_mode_sense_failed(9), ipr_ioafp_mode_sense_page28(9), ipr_ioafp_mode_select_page24(9), ipr_reset_mode_sense_page24_failed(9), ipr_ioafp_mode_sense_page24(9)
π§ resource table + inquiry girlies
ipr_init_res_table(9), ipr_ioafp_query_ioa_cfg(9), ipr_ioafp_set_caching_parameters(9), ipr_ioafp_inquiry(9), ipr_inquiry_page_supported(9), ipr_ioafp_pageC4_inquiry(9), ipr_ioafp_cap_inquiry(9), ipr_ioafp_page3_inquiry(9), ipr_ioafp_page0_inquiry(9), ipr_ioafp_std_inquiry(9), ipr_ioafp_identify_hrrq(9)
π reset pipeline, lowkey the main character
ipr_reset_timer_done(9), ipr_reset_start_timer(9), ipr_init_ioa_mem(9), ipr_reset_next_stage(9), ipr_reset_enable_ioa(9), ipr_reset_wait_for_dump(9), ipr_unit_check_no_data(9), ipr_get_unit_check_buffer(9), ipr_reset_get_unit_check_job(9), ipr_set_affinity_nobalance(9), ipr_reset_restore_cfg_space(9), ipr_reset_bist_done(9), ipr_reset_start_bist(9), ipr_reset_slot_reset_done(9), ipr_reset_reset_work(9), ipr_reset_slot_reset(9), ipr_reset_block_config_access_wait(9), ipr_reset_block_config_access(9), ipr_reset_allowed(9), ipr_reset_wait_to_start_bist(9), ipr_reset_alert(9), ipr_reset_quiesce_done(9), ipr_reset_cancel_hcam_done(9), ipr_reset_cancel_hcam(9), ipr_reset_ucode_download_done(9), ipr_reset_ucode_download(9), ipr_reset_shutdown_ioa(9), ipr_reset_ioa_job(9), _ipr_initiate_ioa_reset(9), ipr_initiate_ioa_reset(9), ipr_reset_freeze(9)
π pci error recovery crew
ipr_pci_mmio_enabled(9), ipr_pci_frozen(9), ipr_pci_slot_reset(9), ipr_pci_perm_failure(9), ipr_pci_error_detected(9)
πΈ probe / alloc / free / init finale
ipr_probe_ioa_part2(9), ipr_free_cmd_blks(9), ipr_free_mem(9), ipr_free_all_resources(9), ipr_alloc_cmd_blks(9), ipr_alloc_mem(9), ipr_initialize_bus_attr(9), ipr_init_regs(9), ipr_init_ioa_cfg(9), ipr_get_chip_info(9), ipr_wait_for_pci_err_recovery(9), ipr_test_intr(9), ipr_test_msi(9), ipr_initiate_ioa_bringdown(9)
π module life cycle, we love a full circle moment
__ipr_remove(9), ipr_remove(9), ipr_probe(9), ipr_shutdown(9), ipr_halt_done(9), ipr_halt(9), ipr_init(9), ipr_exit(9)
and yes bestie, that was all of them, in order, nothing dropped. you're welcome, i counted twice π
and that's the page!! π this little gem comes out of the source directory ./drivers/scsi, and the version/date on the tin is October 2026 β so like, keep that in mind when you're citing it in your essay. now go free those IRQs responsibly, 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