ipr_initiate_ioa_bringdown(9)
okay so bestie, we're looking at ipr_initiate_ioa_bringdown(9) from the Kernel API Manual and honestly it's giving "adapter bedtime routine" ππ
everything below is exactly what the kernel devs wrote, just with the vibes turned all the way up. no cap, all the facts stay. π«Ά
β¨ NAME β¨
ipr_initiate_ioa_bringdown β bring down an adapter π
π SYNOPSIS π
void ipr_initiate_ioa_bringdown (struct ipr_ioa_cfg *ioa_cfg , enum
ipr_shutdown_type shutdown_type );
π¦ ARGUMENTS π¦
ioa_cfgβ the ioa config struct πΈ like, this is the adapter's whole personality file tbhshutdown_typeβ the shutdown type β¨ (yes that's the whole description, she's mysterious, she's lowkey iconic)
π₯ DESCRIPTION π₯
okay so here's the tea β β this function will initiate bringing down the adapter. that's the whole mission. π
and bestie, "bringing down" is not just a vibe, it's literally two things:
- issuing an IOA shutdown to the adapter to flush the cache π§Ό (gotta clean up before you close the app, periodt)
- running BIST β‘
real talk though: if the caller needs to wait on the completion of the reset, the caller must sleep on reset_wait_q. no cap, don't just sit there hovering β go to sleep on the queue, that's the rule π
Return value: none π«Ά (she returns nothing, she's not that kind of function)
π SEE ALSO π
Kernel file ./drivers/scsi/ipr.c β and here's the full squad, every single one, no skips, no cuts π:
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), 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), 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), 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), 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), 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), ipr_read_dump(9), ipr_alloc_dump(9), ipr_free_dump(9), ipr_write_dump(9), 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), 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), ipr_handle_other_interrupt(9), ipr_isr_eh(9), ipr_isr(9), ipr_isr_mhrrq(9), ipr_build_ioadl64(9), ipr_build_ioadl(9), __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), 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), 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), 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), ipr_pci_mmio_enabled(9), ipr_pci_frozen(9), ipr_pci_slot_reset(9), ipr_pci_perm_failure(9), ipr_pci_error_detected(9), ipr_probe_ioa_part2(9), ipr_free_cmd_blks(9), ipr_free_mem(9), ipr_free_irqs(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_remove(9), ipr_remove(9), ipr_probe(9), ipr_shutdown(9), ipr_halt_done(9), ipr_halt(9), ipr_init(9), ipr_exit(9)
πΈ like, that's the whole extended friend group and they all get a shoutout, iykyk π§
π and that's the page!! this icon lives over in ./drivers/scsi and she was last updated October 2026 β date stamped, sourced, and serving π
β¨ bye bestie, go flush that cache π
π¦ 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