bnx2x_queue_state_change(9)
π bnx2x_queue_state_change(9) β like, the Kernel API Manual page, bestie
okay so this is a page from the Kernel API Manual and it's all about bnx2x_queue_state_change β the function that does the Queue state change transition. yes, that's a lot of words that all mean "we're moving this queue from one state to another". let's get into it π
β¨ NAME β¨
bnx2x_queue_state_change β perform Queue state change transition
literally what it says on the tin, no cap. it transitions your queue's state. that's the whole gig π¦
πΈ SYNOPSIS πΈ
int bnx2x_queue_state_change (struct bnx2x *bp , struct
bnx2x_queue_state_params *params );
π ARGUMENTS π
bpβ the device handle. it's giving "your ticket to the actual hardware" energy πparamsβ the parameters that actually perform the transition. everything you need to tell it how to move is in here π«Ά
π₯ DESCRIPTION π₯
bestie, read carefully, because the return value here does a lot of talking:
- returns
0when the transition completed successfully β slay β¨ - returns a negative error code when it failed β π
- returns a positive (
EBUSY) value if there's a completion that's still pending. and listen, that pending case is possible only ifRAMROD_COMP_WAITis not set inparams->ramrod_flagsfor asynchronous commands. so if you set that flag, this situation isn't coming for you π
fr fr, that EBUSY is "not done yet, ask again later" energy, not a hard fail. do not conflate them π
π SEE ALSO π
the kernel file lives at ./drivers/net/ethernet/broadcom/bnx2x/bnx2x_sp.c β go read her π
and here's the whole extended friend group, every single one of them, in order:
bnx2x_exe_queue_init(9)bnx2x_exe_queue_add(9)bnx2x_exe_queue_step(9)bnx2x_state_wait(9)__bnx2x_vlan_mac_h_write_trylock(9)__bnx2x_vlan_mac_h_exec_pending(9)__bnx2x_vlan_mac_h_pend(9)__bnx2x_vlan_mac_h_write_unlock(9)__bnx2x_vlan_mac_h_read_lock(9)bnx2x_vlan_mac_h_read_lock(9)__bnx2x_vlan_mac_h_read_unlock(9)bnx2x_vlan_mac_h_read_unlock(9)bnx2x_vlan_mac_set_cmd_hdr_e2(9)bnx2x_vlan_mac_set_rdata_hdr_e2(9)bnx2x_vlan_mac_set_rdata_hdr_e1x(9)bnx2x_set_one_mac_e1x(9)bnx2x_set_one_vlan_mac_e1h(9)bnx2x_vlan_mac_restore(9)bnx2x_validate_vlan_mac_add(9)bnx2x_validate_vlan_mac_del(9)bnx2x_validate_vlan_mac_move(9)bnx2x_wait_vlan_mac(9)bnx2x_complete_vlan_mac(9)bnx2x_optimize_vlan_mac(9)bnx2x_vlan_mac_get_registry_elem(9)bnx2x_execute_vlan_mac(9)bnx2x_config_vlan_mac(9)bnx2x_vlan_mac_del_all(9)bnx2x_mcast_get_next_bin(9)bnx2x_mcast_clear_first_bin(9)bnx2x_mcast_handle_restore_cmd_e2(9)bnx2x_mcast_handle_current_cmd(9)bnx2x_mcast_set_rdata_hdr_e2(9)bnx2x_mcast_refresh_registry_e2(9)bnx2x_mcast_set_rdata_hdr_e1(9)bnx2x_mcast_handle_restore_cmd_e1(9)bnx2x_get_fw_mac_addr(9)bnx2x_mcast_refresh_registry_e1(9)__atomic_add_ifless(9)__atomic_dec_ifmoe(9)bnx2x_init_credit_pool(9)bnx2x_debug_print_ind_table(9)bnx2x_setup_rss(9)bnx2x_queue_comp_cmd(9)bnx2x_q_init(9)bnx2x_q_send_deactivate(9)bnx2x_q_send_activate(9)bnx2x_queue_chk_transition(9)bnx2x_func_state_change_comp(9)bnx2x_func_comp_cmd(9)bnx2x_func_chk_transition(9)bnx2x_func_init_func(9)bnx2x_func_init_port(9)bnx2x_func_init_cmn_chip(9)bnx2x_func_init_cmn(9)bnx2x_func_reset_func(9)bnx2x_func_reset_port(9)bnx2x_func_reset_cmn(9)bnx2x_func_state_change(9)
like I said. extended friend group. we love a function with community π
and that's the page!! before you go β the source path got truncated down to ./drivers/net/ethernet/broadco... (sad, I know) and the date stamps say October 2026. so: source ./drivers/net/ethernet/broadco..., dated October 2026. mwah, go transition some queues, 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