ixgbe_aci_req_res(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

πŸ’… ixgbe_aci_req_res β€” request a common resource

okay so this one lives in the Kernel API Manual, section 9, and it's honestly kind of a whole vibe: it's the function that goes "hey bestie, can I borrow this shared thing for a sec?" ✨


🌸 NAME 🌸

ixgbe_aci_req_res β€” request a common resource 🫢


πŸŽ€ SYNOPSIS πŸŽ€

int ixgbe_aci_req_res (struct ixgbe_hw *hw , enum libie_aq_res_id res ,
enum libie_aq_res_access_type access , u8 sdp_number , u32 *timeout );

like, five args, all of them matter, no skipping πŸ’…


✨ ARGUMENTS ✨

  • hw β€” pointer to the HW struct. the main character, the hardware itself πŸ”₯
  • res β€” resource ID. which resource we're asking about πŸ‘‘
  • access β€” access type. how we wanna touch it, lowkey 🌈
  • sdp_number β€” resource number. a u8, so keep it smol πŸ“
  • timeout β€” the maximum time in ms that the driver may hold the resource. this is a u32 *, so yeah, it's a pointer, we're writing through it 😭

πŸ’– DESCRIPTION πŸ’–

So basically: this requests a common resource using the ACI command (0x0008). iconic number, no notes.

You also specify the maximum time the driver may hold the resource β€” that's the timeout situation.

Now here's the tea 🍡: if the requested resource is currently occupied by some other driver, you get a busy return value back, and the timeout field value tells you the maximum time the current owner has to free it. so it's not a "no forever", it's a "no, but they've got a deadline" β€” very main character energy of the timeout field.

ngl, that busy + timeout-info combo is the whole point of the function, so don't sleep on reading the timeout out-param. πŸ™ˆ

⭐ RETURN ⭐

the exit code of the operation. that's it, that's the return πŸŽ€


πŸ¦‹ SEE ALSO πŸ¦‹

fr fr go read the kernel file: ./drivers/net/ethernet/intel/ixgbe/ixgbe_e610.c

and then the whole friend group, in order, no one left out πŸ’œ:

  1. ixgbe_should_retry_aci_send_cmd_execute(9)
  2. ixgbe_aci_send_cmd_execute(9)
  3. ixgbe_aci_send_cmd(9)
  4. ixgbe_aci_check_event_pending(9)
  5. ixgbe_aci_get_event(9)
  6. ixgbe_fill_dflt_direct_cmd_desc(9)
  7. ixgbe_aci_get_fw_ver(9)
  8. ixgbe_aci_release_res(9)
  9. ixgbe_acquire_res(9)
  10. ixgbe_release_res(9)
  11. ixgbe_parse_e610_caps(9)
  12. ixgbe_parse_valid_functions_cap(9)
  13. ixgbe_parse_vf_dev_caps(9)
  14. ixgbe_parse_vsi_dev_caps(9)
  15. ixgbe_parse_fdir_dev_caps(9)
  16. ixgbe_parse_dev_caps(9)
  17. ixgbe_parse_vf_func_caps(9)
  18. ixgbe_get_num_per_func(9)
  19. ixgbe_parse_vsi_func_caps(9)
  20. ixgbe_parse_func_caps(9)
  21. ixgbe_aci_list_caps(9)
  22. ixgbe_discover_dev_caps(9)
  23. ixgbe_discover_func_caps(9)
  24. ixgbe_get_caps(9)
  25. ixgbe_aci_disable_rxen(9)
  26. ixgbe_aci_get_phy_caps(9)
  27. ixgbe_copy_phy_caps_to_cfg(9)
  28. ixgbe_aci_set_phy_cfg(9)
  29. ixgbe_aci_set_link_restart_an(9)
  30. ixgbe_is_media_cage_present(9)
  31. ixgbe_get_media_type_from_phy_type(9)
  32. ixgbe_update_link_info(9)
  33. ixgbe_get_link_status(9)
  34. ixgbe_aci_get_link_info(9)
  35. ixgbe_aci_set_event_mask(9)
  36. ixgbe_configure_lse(9)
  37. ixgbe_start_hw_e610(9)
  38. ixgbe_aci_set_port_id_led(9)
  39. ixgbe_get_media_type_e610(9)
  40. ixgbe_setup_link_e610(9)
  41. ixgbe_check_link_e610(9)
  42. ixgbe_get_link_capabilities_e610(9)
  43. ixgbe_cfg_phy_fc(9)
  44. ixgbe_setup_fc_e610(9)
  45. ixgbe_fc_autoneg_e610(9)
  46. ixgbe_disable_rx_e610(9)
  47. ixgbe_fw_recovery_mode_e610(9)
  48. ixgbe_fw_rollback_mode_e610(9)
  49. ixgbe_init_phy_ops_e610(9)
  50. ixgbe_identify_phy_e610(9)
  51. ixgbe_setup_eee_e610(9)
  52. ixgbe_identify_module_e610(9)
  53. ixgbe_setup_phy_link_e610(9)
  54. ixgbe_set_phy_power_e610(9)
  55. ixgbe_enter_lplu_e610(9)
  56. ixgbe_init_eeprom_params_e610(9)
  57. ixgbe_aci_get_netlist_node(9)
  58. ixgbe_acquire_nvm(9)
  59. ixgbe_release_nvm(9)
  60. ixgbe_aci_read_nvm(9)
  61. ixgbe_aci_erase_nvm(9)
  62. ixgbe_aci_update_nvm(9)
  63. ixgbe_nvm_write_activate(9)
  64. ixgbe_nvm_validate_checksum(9)
  65. ixgbe_discover_flash_size(9)
  66. ixgbe_read_sr_base_address(9)
  67. ixgbe_read_sr_area_size(9)
  68. ixgbe_determine_active_flash_banks(9)
  69. ixgbe_get_flash_bank_offset(9)
  70. ixgbe_read_flash_module(9)
  71. ixgbe_read_nvm_module(9)
  72. ixgbe_read_netlist_module(9)
  73. ixgbe_read_orom_module(9)
  74. ixgbe_get_nvm_css_hdr_len(9)
  75. ixgbe_read_nvm_sr_copy(9)
  76. ixgbe_get_nvm_srev(9)
  77. ixgbe_get_orom_civd_data(9)
  78. ixgbe_get_orom_srev(9)
  79. ixgbe_get_orom_ver_info(9)
  80. ixgbe_get_inactive_orom_ver(9)
  81. ixgbe_get_nvm_ver_info(9)
  82. ixgbe_get_inactive_nvm_ver(9)
  83. ixgbe_get_active_nvm_ver(9)
  84. ixgbe_get_netlist_info(9)
  85. ixgbe_get_inactive_netlist_ver(9)
  86. ixgbe_get_flash_data(9)
  87. ixgbe_aci_nvm_update_empr(9)
  88. ixgbe_read_sr_word_aci(9)
  89. ixgbe_read_flat_nvm(9)
  90. ixgbe_read_sr_buf_aci(9)
  91. ixgbe_read_ee_aci_e610(9)
  92. ixgbe_read_ee_aci_buffer_e610(9)
  93. ixgbe_validate_eeprom_checksum_e610(9)
  94. ixgbe_reset_hw_e610(9)
  95. ixgbe_get_pfa_module_tlv(9)
  96. ixgbe_read_pba_string_e610(9)

like congrats on the reading list bestie 😭 96 entries and every single one is invited to the party πŸ’…


and that's the page!! 🧚 it came from ./drivers/net/ethernet/intel/i... (the path got a little truncated in the footer, rip) dated October 2026, and the footer name is ixgbe_aci_req_res(9) β€” so that's the whole manpage, mwah, periodt πŸ’–

πŸ“¦ where this page comes from