ipr_log_path_elem(9)
π
ipr_log_path_elem (9) β Kernel API Manual π
okay bestie, welcome to the Kernel API Manual, and today's main character is ipr_log_path_elem β yes it's a (9) page, yes that means kernel-internal, no you can't call it from your little userland script, sorry bestie π This one's short and sweet (like, actually short β don't get used to it) and it's literally just here to log a fabric path element. iconic lowkey.
β¨ NAME β¨
ipr_log_path_elem β log a fabric path element. that's it. that's the whole job. π¦
π«Ά SYNOPSIS π«Ά
void ipr_log_path_elem (struct ipr_hostrcb *hostrcb , struct
ipr_hostrcb_config_element *cfg );
it returns void, so likeβ¦ nothing comes back. you're not getting a little int to check. it's giving "I did the thing, no notes" π
πΈ ARGUMENTS πΈ
hostrcbβ thehostrcbstruct, bestie. that's the hostrcb struct you're passing in π«Άcfgβ the fabric path element struct. this is the actual fabric path element we're logging β¨
π DESCRIPTION π
so what does it do? it logs a fabric path element. periodt. π
and the return value? none. not "0", not "NULL", not "you'll figure it out" β literally none, because the function's void, bestie. no errors to catch, no status codes to vibe-check, nothing. just go in, log it, walk away like the main character you are π₯
ngl this is one of those pages where the manpage is shorter than the function signature, and honestly? respect. no filler, no yap, just vibes π
π SEE ALSO π
okay so this is where it gets real β the SEE ALSO section on this page is genuinely enormous, like the entire ipr.c extended cinematic universe showed up to the group chat π and no I'm not skipping any of them, bestie, every single one is getting its moment:
- kernel file
./drivers/scsi/ipr.cπ (the source file, iykyk)
and now, the whole crew, in the order they appear:
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_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_initiate_ioa_bringdown(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 roster π genuinely obsessed with how this tiny two-argument logging function links to the entire driver. main character energy by association, fr fr π§
okay that's the page bestie, you're done, go log your fabric path elements π¦π this little love letter lives in ./drivers/scsi, dated October 2026, and it answers to the name ipr_log_path_elem(9) β slay, bye β¨π
π¦ 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