ice_wait_for_reset(9)
π ice_wait_for_reset(9) π
okay so bestie, welcome to the ice_wait_for_reset(9) page from the Kernel API Manual β yes, that's the manual section named <purple>9</purple>, we love a niche section number, iykyk. this is the one where the driver needs a lil nap break while it finishes cleaning up after a device reset, and you're the one who has to wait for it. slay. let's get into it π«Ά
β¨ NAME β¨
ice_wait_for_reset β literally wait for the driver to finish reset and rebuild. that's the whole vibe. patience is a virtue and today it's a function π
πΈ SYNOPSIS πΈ
int ice_wait_for_reset (struct ice_pf *pf , unsigned long timeout );
π ARGUMENTS π
pfβ pointer to the PF structure. yes. the whole PF. she's the main character here πtimeoutβ length of time to wait, in jiffies. that's the unit, don't @ me, jiffies are iconic in their own weird way β±οΈ
π¦ DESCRIPTION π¦
so basically: you wait (as in sleep π΄) for a short time until the driver finishes cleaning up from a device reset. that's it, that's the function.
the one thing you cannot skip: the caller must be able to sleep. no cap, if you can't sleep, this isn't the function for you, bestie π
use this to delay operations that could fail while the driver is cleaning up after a device reset. it's giving "hold on, she's not ready yet" energy π
now the returns, and these matter so listen up:
- returns
0on success π - returns
-EBUSYif the reset is not finished within thetimeoutπ - returns
-ERESTARTSYSif the thread was interrupted π
lowkey important: if the caller can't sleep, this whole thing falls apart. sleep-ability is not optional here, fr fr.
π SEE ALSO π
the kernel file lives at ./drivers/net/ethernet/intel/ice/ice_lib.c β go say hi π§
and here's the whole friend group, all of them (9) pages, all of them iconic:
ice_vsi_type_str(9), ice_vsi_ctrl_all_rx_rings(9), ice_vsi_alloc_arrays(9), ice_vsi_set_num_desc(9), ice_vsi_set_num_qs(9), ice_get_free_slot(9), ice_vsi_delete_from_hw(9), ice_vsi_free_arrays(9), ice_vsi_free_stats(9), ice_vsi_alloc_ring_stats(9), ice_vsi_free(9), ice_msix_clean_ctrl_vsi(9), ice_msix_clean_rings(9), ice_vsi_alloc_stat_arrays(9), ice_vsi_alloc_def(9), ice_vsi_alloc(9), ice_alloc_fd_res(9), ice_vsi_get_qs(9), ice_vsi_put_qs(9), ice_is_safe_mode(9), ice_is_rdma_ena(9), ice_vsi_clean_rss_flow_fld(9), ice_rss_clean(9), ice_vsi_set_rss_params(9), ice_set_dflt_vsi_ctx(9), ice_vsi_setup_q_map(9), ice_set_fd_vsi_ctx(9), ice_set_rss_vsi_ctx(9), ice_vsi_is_vlan_pruning_ena(9), ice_vsi_init(9), ice_vsi_clear_rings(9), ice_vsi_alloc_rings(9), ice_vsi_manage_rss_lut(9), ice_vsi_cfg_crc_strip(9), ice_vsi_cfg_rss_lut_key(9), ice_vsi_set_vf_rss_flow_fld(9), ice_vsi_set_rss_flow_fld(9), ice_pf_state_is_nominal(9), ice_update_eth_stats(9), ice_write_qrxflxp_cntxt(9), ice_intrl_usec_to_reg(9), ice_write_intrl(9), __ice_write_itr(9), ice_write_itr(9), ice_set_q_vector_intrl(9), ice_vsi_cfg_msix(9), ice_vsi_start_all_rx_rings(9), ice_vsi_stop_all_rx_rings(9), ice_vsi_stop_tx_rings(9), ice_vsi_stop_lan_tx_rings(9), ice_vsi_stop_xdp_tx_rings(9), ice_vsi_is_rx_queue_active(9), ice_vsi_cfg_sw_lldp(9), ice_cfg_sw_rx_lldp(9), ice_set_agg_vsi(9), ice_vsi_cfg_def(9), ice_vsi_cfg(9), ice_vsi_decfg(9), ice_vsi_setup(9), ice_vsi_release_msix(9), ice_vsi_free_irq(9), ice_vsi_free_tx_rings(9), ice_vsi_free_rx_rings(9), ice_vsi_close(9), ice_ena_vsi(9), ice_dis_vsi(9), ice_vsi_set_napi_queues(9), ice_vsi_clear_napi_queues(9), ice_napi_add(9), ice_vsi_release(9), ice_vsi_rebuild_get_coalesce(9), ice_vsi_rebuild_set_coalesce(9), ice_vsi_realloc_stat_arrays(9), ice_vsi_rebuild(9), ice_is_reset_in_progress(9), ice_vsi_update_q_map(9), ice_vsi_cfg_netdev_tc(9), ice_vsi_setup_q_map_mqprio(9), ice_vsi_cfg_tc(9), ice_update_tx_ring_stats(9), ice_update_rx_ring_stats(9), ice_fetch_tx_ring_stats(9), ice_fetch_rx_ring_stats(9), ice_is_dflt_vsi_in_use(9), ice_is_vsi_dflt_vsi(9), ice_set_dflt_vsi(9), ice_clear_dflt_vsi(9), ice_get_link_speed_mbps(9), ice_get_link_speed_kbps(9), ice_set_min_bw_limit(9), ice_set_max_bw_limit(9), ice_set_link(9), ice_vsi_add_vlan_zero(9), ice_vsi_del_vlan_zero(9), ice_vsi_num_zero_vlans(9), ice_vsi_has_non_zero_vlans(9), ice_vsi_num_non_zero_vlans(9), ice_is_feature_supported(9), ice_set_feature_support(9), ice_clear_feature_support(9), ice_init_feature_support(9), ice_vsi_update_security(9), ice_vsi_ctx_set_antispoof(9), ice_vsi_ctx_clear_antispoof(9), ice_vsi_update_local_lb(9), ice_vsi_update_l2tsel(9)
like. that's the entire extended universe, bestie, no crumbs left π
and that's the page!! π this lil beauty comes from the <cyan>./drivers/net/ethernet/intel/ice</cyan> corner of the kernel, dated <peach>October 2026</peach>, under the Kernel API Manual umbrella. mwah, go forth and wait responsibly ππ
π¦ 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