megasas_make_sgl64(9)
π megasas_make_sgl64 β like, the kernel API manual, bestie π
Okay so picture this: you're deep in the megaraid SAS driver, right, and somebody needs a 64-bit SGL built. That's literally this function. It lives in the Kernel API Manual and honestly it's giving "small but crucial" energy. β¨
πΈ NAME πΈ
megasas_make_sgl64 β prepares a 64-bit SGL. That's it, that's the whole name. Short, iconic, does what it says. π
π¦ SYNOPSIS π¦
int megasas_make_sgl64 (struct megasas_instance *instance , struct
scsi_cmnd *scp , union megasas_sgl *mfi_sgl );
Yes the spacing in that prototype is a little chaotic, no we are not fixing it, it's part of the vibe. π«Ά
π ARGUMENTS π
instanceβ the adapter soft state. Like, the controller's whole personality in one struct. πscpβ the SCSI command, freshly handed down from the mid-layer. She's on her way to get processed, periodt. π¦mfi_sglβ the SGL that's gonna get filled in. This is the one you're here for, the main character of the function. β¨
π₯ DESCRIPTION π₯
So here's the tea: if everything goes well, this function returns the number of SG elements. π
Otherwise? It returns -1. That's the fail state, no cap. (The original page literally spells it "returnes -1" β we love a quirky typo, but the meaning is locked in: -1 means it did not slay. π)
Ngl, that's genuinely the entire description. Short king. But every word of it matters, so don't skip the return value check, bestie. π
π SEE ALSO π
The kernel file in question is ./drivers/scsi/megaraid/megaraid_sas_base.c β that's where the whole family lives. π
And here's the entire extended friend group, in order, no one left behind (iykyk this list is long, but we do not gatekeep):
megasas_set_dma_settings(9), megasas_get_cmd(9), megasas_return_cmd(9), megasas_decode_evt(9), megasas_enable_intr_xscale(9), megasas_disable_intr_xscale(9), megasas_read_fw_status_reg_xscale(9), megasas_clear_intr_xscale(9), megasas_fire_cmd_xscale(9), megasas_adp_reset_xscale(9), megasas_check_reset_xscale(9), megasas_enable_intr_ppc(9), megasas_disable_intr_ppc(9), megasas_read_fw_status_reg_ppc(9), megasas_clear_intr_ppc(9), megasas_fire_cmd_ppc(9), megasas_check_reset_ppc(9), megasas_enable_intr_skinny(9), megasas_disable_intr_skinny(9), megasas_read_fw_status_reg_skinny(9), megasas_clear_intr_skinny(9), megasas_fire_cmd_skinny(9), megasas_check_reset_skinny(9), megasas_enable_intr_gen2(9), megasas_disable_intr_gen2(9), megasas_read_fw_status_reg_gen2(9), megasas_clear_intr_gen2(9), megasas_fire_cmd_gen2(9), megasas_adp_reset_gen2(9), megasas_check_reset_gen2(9), megasas_issue_polled(9), megasas_issue_blocked_cmd(9), megasas_issue_blocked_abort_cmd(9), megasas_make_sgl32(9), megasas_make_sgl_skinny(9), megasas_build_dcdb(9), megasas_build_ldio(9), megasas_cmd_type(9), megasas_queue_command(9), megasas_complete_cmd_dpc(9), megasas_start_timer(9), megasas_wait_for_outstanding(9), megasas_generic_reset(9), megasas_reset_timer(9), megasas_dump(9), megasas_dump_reg_set(9), megasas_dump_fusion_io(9), megasas_reset_bus_host(9), megasas_task_abort(9), megasas_reset_target(9), megasas_bios_param(9), megasas_service_aen(9), megasas_complete_int_cmd(9), megasas_complete_abort(9), megasas_complete_cmd(9), megasas_issue_pending_cmds_again(9), megasas_deplete_reply_queue(9), megasas_isr(9), megasas_transition_to_ready(9), megasas_teardown_frame_pool(9), megasas_create_frame_pool(9), megasas_free_cmds(9), megasas_alloc_cmds(9), megasas_ld_list_query(9), megasas_host_device_list_query(9), megasas_get_ctrl_info(9), megasas_issue_init_mfi(9), megasas_setup_irqs_msix(9), megasas_setup_jbod_map(9), megasas_get_device_list(9), megasas_set_high_iops_queue_affinity_and_hint(9), megasas_alloc_irq_vectors(9), megasas_init_fw(9), megasas_release_mfi(9), megasas_get_seq_num(9), megasas_register_aen(9), megasas_start_aen(9), megasas_io_attach(9), megasas_set_dma_mask(9), megasas_alloc_ctrl_mem(9), megasas_alloc_ctrl_dma_buffers(9), megasas_probe_one(9), megasas_flush_cache(9), megasas_shutdown_controller(9), megasas_suspend(9), megasas_resume(9), megasas_detach_one(9), megasas_shutdown(9), megasas_mgmt_fw_ioctl(9), megasas_mgmt_ioctl(9), megasas_update_device_list(9), megasas_add_remove_devices(9), megasas_init(9), megasas_exit(9).
Like, that's the whole roster. Obsessed. π
Slay, you made it to the end. This page is served up from ./drivers/scsi/megaraid and it's dated October 2026 β so screenshot it, cite it, whatever, just remember the source, bestie. ππ§π«
π¦ 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