megasas_make_sgl64(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

πŸ’… 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