igc_del_nfc_rule(9)
β¨ igc_del_nfc_rule(9) β the Kernel API Manual, but make it cute β¨
Okay bestie, so you're reading a manpage from the Kernel API Manual and it's about igc_del_nfc_rule(9) β literally the "Delete NFC rule" function. Let's get into it π
πΈ NAME πΈ
igc_del_nfc_rule β Delete NFC rule. That's it. That's the whole vibe. It deletes a rule. Ngl, the name is giving exactly what it needs to give π
π¦ SYNOPSIS π¦
void igc_del_nfc_rule (struct igc_adapter *adapter , struct igc_nfc_rule
*rule );
So the way this works is β void return type (it doesn't hand anything back to you), a pointer to an struct igc_adapter named adapter, and a pointer to a struct igc_nfc_rule named rule. Both are pointers, both are your problem now π«Ά
π ARGUMENTS π
Okay so these are the two things you're passing in, and honestly they're not complicated:
adapterβ Pointer to adapter. That's your whole network adapter struct, the main character energy of the operation. Everything happens through it, periodt.ruleβ Pointer to rule to be deleted. This is the actual NFC rule you're yeeting out of existence. It's the one getting deleted, iykyk.
β DESCRIPTION β
So here's the actual tea: this function disables the NFC rule in hardware and deletes it from the adapter. That's the whole thing. Hardware gets the "we're done here" message, and the adapter cleans up its records. Both halves matter β it's not just a software forget-me-not, the hardware actually gets told too, no cap π₯
π CONTEXT π
Bestie, pay attention to this one β it's a real caveat. This function expects adapter->nfc_rule_lock to be held by caller. Like, you, the caller, need to be holding that lock already. It's not going to grab it for you. If you're not holding it, that's a you problem, and the kernel will absolutely notice π Don't skip this, fr fr.
π SEE ALSO π
Okay so there are a lot of friends here, and I mean a lot. The kernel file to peep is ./drivers/net/ethernet/intel/igc/igc_main.c, and then it's basically the entire igc crew:
igc_power_up_link(9),igc_release_hw_control(9),igc_get_hw_control(9),igc_clean_tx_ring(9),igc_free_tx_resources(9),igc_free_all_tx_resources(9),igc_clean_all_tx_rings(9),igc_disable_all_tx_rings_hw(9),igc_setup_tx_resources(9),igc_setup_all_tx_resources(9),igc_clean_rx_ring(9),igc_clean_all_rx_rings(9),igc_free_rx_resources(9),igc_free_all_rx_resources(9),igc_setup_rx_resources(9),igc_setup_all_rx_resources(9),igc_configure_rx_ring(9),igc_configure_rx(9),igc_configure_tx_ring(9),igc_configure_tx(9),igc_setup_mrqc(9),igc_setup_rctl(9),igc_setup_tctl(9),igc_set_mac_filter_hw(9),igc_clear_mac_filter_hw(9),igc_set_mac(9),igc_write_mc_addr_list(9),igc_process_skb_fields(9),igc_add_rx_frag(9),igc_reuse_rx_page(9),igc_is_non_eop(9),igc_cleanup_headers(9),igc_alloc_rx_buffers(9),igc_clean_tx_irq(9),igc_add_mac_filter(9),igc_del_mac_filter(9),igc_add_vlan_prio_filter(9),igc_del_vlan_prio_filter(9),igc_add_etype_filter(9),igc_del_etype_filter(9),igc_get_nfc_rule(9),igc_add_nfc_rule(9),igc_enable_empty_addr_recv(9),igc_set_rx_mode(9),igc_configure(9),igc_write_ivar(9),igc_configure_msix(9),igc_irq_enable(9),igc_irq_disable(9),igc_reset_q_vector(9),igc_free_q_vector(9),igc_free_q_vectors(9),igc_update_itr(9),igc_set_interrupt_capability(9),igc_update_ring_itr(9),igc_cache_ring_register(9),igc_poll(9),igc_alloc_q_vector(9),igc_alloc_q_vectors(9),igc_init_interrupt_scheme(9),igc_sw_init(9),igc_up(9),igc_update_stats(9),igc_down(9),igc_change_mtu(9),igc_tx_timeout(9),igc_get_stats64(9),igc_msix_other(9),igc_request_msix(9),igc_clear_interrupt_scheme(9),igc_has_link(9),igc_watchdog(9),igc_intr_msi(9),igc_intr(9),igc_request_irq(9),__igc_open(9),__igc_close(9),igc_probe(9),igc_remove(9),igc_io_error_detected(9),igc_io_slot_reset(9),igc_io_resume(9),igc_reinit_queues(9),igc_get_hw_dev(9),igc_init_module(9),igc_exit_module(9)
Like I said β literally the whole group chat showed up π
π And that's a wrap, bestie! This iconic little page lives at ./drivers/net/ethernet/intel/igc, and it's dated October 2026. Slay. π§π Go forth and delete those NFC rules, and don't forget the lock, okay? π«Ά
π¦ 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