e1000_io_error_detected(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

πŸ’… e1000_io_error_detected β€” bestie's field guide to the kernel API manual

okay so real talk, this is the e1000_io_error_detected page from the Kernel API Manual, and it's short but mighty β€” it's literally the function that gets pinged when the PCI bus has a whole meltdown near your NIC. let's get into it 🫢


✨ NAME ✨

e1000_io_error_detected β€” the one that gets called when a PCI error is detected πŸ’€ no cap, that's the whole job description.


πŸŽ€ SYNOPSIS πŸŽ€

pci_ers_result_t e1000_io_error_detected (struct pci_dev *pdev ,
pci_channel_state_t state );

she returns a pci_ers_result_t, she takes two args, she's iconic like that πŸ‘‘


🌸 ARGUMENTS 🌸

  • pdev β€” pointer to the PCI device, like, the actual device she's looking at πŸ¦‹
  • state β€” the current pci connection state, aka the vibe check on the link rn

πŸ’– DESCRIPTION πŸ’–

so here's the tea: this function gets called after a PCI bus error affecting this device has been detected. that's it. that's the whole blurb. it's the "something went wrong on the bus, come handle it" hook, and honestly? main character energy. ✨

heads up bestie: the manual doesn't say anything more about what happens inside, so don't go inventing behaviour. we report, we don't speculate πŸ’…

πŸ”₯ SEE ALSO πŸ”₯

first up, the source file itself β€” she lives here:

  • Kernel file ./drivers/net/ethernet/intel/e1000e/netdev.c

and the absolute constellation of sibling functions, all in their original order because we respect the lineup 🫢:

__ew32_prepare(9), e1000_regdump(9), e1000e_dump(9), e1000_desc_unused(9), e1000e_systim_to_hwtstamp(9), e1000e_rx_hwtstamp(9), e1000_receive_skb(9), e1000_rx_checksum(9), e1000_alloc_rx_buffers(9), e1000_alloc_rx_buffers_ps(9), e1000_alloc_jumbo_rx_buffers(9), e1000_clean_rx_irq(9), e1000e_tx_hwtstamp_work(9), e1000_clean_tx_irq(9), e1000_clean_rx_irq_ps(9), e1000_clean_jumbo_rx_irq(9), e1000_clean_rx_ring(9), e1000_intr_msi(9), e1000_intr(9), e1000_configure_msix(9), e1000e_set_interrupt_capability(9), e1000_request_msix(9), e1000_request_irq(9), e1000_irq_disable(9), e1000_irq_enable(9), e1000e_get_hw_control(9), e1000e_release_hw_control(9), e1000_alloc_ring_dma(9), e1000e_setup_tx_resources(9), e1000e_setup_rx_resources(9), e1000_clean_tx_ring(9), e1000e_free_tx_resources(9), e1000e_free_rx_resources(9), e1000_update_itr(9), e1000e_write_itr(9), e1000_alloc_queues(9), e1000e_poll(9), e1000e_vlan_filter_disable(9), e1000e_vlan_filter_enable(9), e1000e_vlan_strip_disable(9), e1000e_vlan_strip_enable(9), e1000_configure_tx(9), e1000_setup_rctl(9), e1000_configure_rx(9), e1000e_write_mc_addr_list(9), e1000e_write_uc_addr_list(9), e1000e_set_rx_mode(9), e1000e_get_base_timinca(9), e1000e_config_hwtstamp(9), e1000_configure(9), e1000e_power_up_phy(9), e1000_power_down_phy(9), e1000_flush_tx_ring(9), e1000_flush_rx_ring(9), e1000_flush_desc_rings(9), e1000e_systim_reset(9), e1000e_reset(9), e1000e_trigger_lsc(9), e1000e_down(9), e1000e_sanitize_systim(9), e1000e_read_systim(9), e1000e_cyclecounter_read(9), e1000_sw_init(9), e1000_intr_msi_test(9), e1000_test_msi_interrupt(9), e1000_test_msi(9), e1000e_open(9), e1000e_close(9), e1000_set_mac(9), e1000e_update_phy_task(9), e1000_update_phy_info(9), e1000e_update_phy_stats(9), e1000e_update_stats(9), e1000_phy_read_status(9), e1000_watchdog(9), e1000_tx_timeout(9), e1000e_get_stats64(9), e1000_change_mtu(9), e1000e_hwtstamp_set(9), __e1000e_disable_aspm(9), e1000e_disable_aspm(9), e1000e_disable_aspm_locked(9), e1000_netpoll(9), e1000_io_slot_reset(9), e1000_io_resume(9), e1000_probe(9), e1000_remove(9), e1000_init_module(9), e1000_exit_module(9)

like, that's the whole e1000e extended fam and she knows every single one πŸ’…βœ¨


kisses bestie, that's the page πŸŽ€ β€” this came out of the kernel API manual source at ./drivers/net/ethernet/intel/e..., dated October 2026, and it's all filed under e1000_io_error_detected(9). go read the netdev.c file, ily, bye πŸ¦‹πŸ’œ

πŸ“¦ where this page comes from