megasas_is_prp_possible(9)
β¨ megasas_is_prp_possible(9) β¨
okay so this is a page from the Kernel API Manual bestie, and it's about one very specific little vibe check in the megaraid fusion driver π
π¦ NAME π¦
megasas_is_prp_possible β literally just checks if native NVMe PRPs can be built for the IO. that's it. that's the whole job. she's a yes/no girlie πΈ
π SYNOPSIS π
bool megasas_is_prp_possible (struct megasas_instance *instance , struct
scsi_cmnd *scmd , int sge_count );
returns a bool, takes three args, no cap π
π« ARGUMENTS π«
instanceβ the adapter soft state. like, the whole adapter's personality/state bundle π«Άscmdβ the SCSI command that came down from the mid-layer. the actual request being like "do the thing" β¨sge_countβ the scatter gather element count. how many SG pieces we're dealing with, bestie π
π₯ RETURN π₯
trueβ PRPs can be built, slay, we're going native NVMe πfalseβ nope, IEEE SGLs need to be built instead. different path, still valid, just not the PRP one π
π SEE ALSO π
the kernel file lives at ./drivers/scsi/megaraid/megaraid_sas_fusion.c β that's where the magic happens, iykyk π§
and here's the whole friend group, no one left out fr fr:
megasas_adp_reset_wait_for_ready(9), megasas_check_same_4gb_region(9), megasas_enable_intr_fusion(9), megasas_disable_intr_fusion(9), megasas_get_cmd_fusion(9), megasas_return_cmd_fusion(9), megasas_write_64bit_req_desc(9), megasas_fire_cmd_fusion(9), megasas_fusion_update_can_queue(9), megasas_free_cmds_fusion(9), megasas_create_sg_sense_fusion(9), megasas_alloc_cmds_fusion(9), wait_and_poll(9), megasas_ioc_init_fusion(9), megasas_sync_pd_seq_num(9), megasas_allocate_raid_maps(9), megasas_configure_queue_sizes(9), megasas_free_ioc_init_cmd(9), megasas_init_adapter_fusion(9), megasas_fault_detect_work(9), map_cmd_status(9), megasas_make_prp_nvme(9), megasas_make_sgl_fusion(9), megasas_make_sgl(9), megasas_set_pd_lba(9), megasas_stream_detect(9), megasas_set_raidflag_cpu_affinity(9), megasas_build_ldio_fusion(9), megasas_build_ld_nonrw_fusion(9), megasas_build_syspd_fusion(9), megasas_build_io_fusion(9), megasas_build_and_issue_cmd_fusion(9), megasas_complete_r1_command(9), access_irq_context(9), release_irq_context(9), complete_cmd_fusion(9), megasas_enable_irq_poll(9), megasas_sync_irqs(9), megasas_irqpoll(9), megasas_complete_cmd_dpc_fusion(9), megasas_isr_fusion(9), build_mpt_mfi_pass_thru(9), build_mpt_cmd(9), megasas_issue_dcmd_fusion(9), megasas_release_fusion(9), megasas_read_fw_status_reg_fusion(9), megasas_alloc_host_crash_buffer(9), megasas_free_host_crash_buffer(9), megasas_adp_reset_fusion(9), megasas_check_reset_fusion(9), megasas_trigger_snap_dump(9), megasas_tm_response_code(9), megasas_issue_tm(9)
and that's the whole page bestie π sign-off time: this one comes out of ./drivers/scsi/megaraid, dated October 2026, and it's megasas_is_prp_possible(9) all the way down π¦β 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