igc_set_mac_filter_hw(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

πŸ’… igc_set_mac_filter_hw(9) β€” like, the Kernel API Manual one, bestie

Ok so picture this: you're deep in the igc driver, right, and you need hardware to actually know about a MAC address filter. That's the whole gig of this function. It's igc_set_mac_filter_hw, it lives in the Kernel API Manual section 9, and it is literally the "make the silicon care" moment. ✨


🌸 NAME 🌸

igc_set_mac_filter_hw β€” Set MAC address filter in hardware πŸŽ€

Like, you're not just writing a filter into some software list and hoping for the best. No no. This one goes into the hardware. Periodt.


πŸ¦‹ SYNOPSIS πŸ¦‹

void igc_set_mac_filter_hw (struct igc_adapter *adapter , int index ,
enum igc_mac_filter_type type , const u8 *addr , int queue );

It returns void, so like... no return value to check, she just does her thing. πŸ’β€β™€οΈ


πŸ‘‘ ARGUMENTS πŸ‘‘

These are the five things you gotta hand her. Every single one. No skipping, bestie. πŸ™ˆ

  • adapter β€” Pointer to the adapter where the filter should be set. This is your main character struct, the whole vibe check of "which NIC are we even talking about".
  • index β€” The filter index. Which slot in the filter lineup we're messing with πŸ”₯
  • type β€” MAC address filter type. And ngl, the options are source or destination, so like, is this address the one sending or the one receiving? You gotta know. πŸ‘€
  • addr β€” The MAC address. The actual address. The star of the show. ⭐
  • queue β€” Okay this one has ✨conditions✨. If it's non-negative, the queue assignment feature is enabled and frames matching the filter get enqueued onto 'queue'. Otherwise β€” meaning if it's negative β€” queue assignment is disabled. That's it, that's the rule. Don't come for me.
πŸ’€ Fr fr, that queue thing is the one people get wrong. Non-negative = queue assignment ON. Anything else = OFF. Write it on your hand.

πŸ’œ SEE ALSO πŸ’œ

Ok so this is the part where the manpage goes absolutely feral and lists every single sibling function. She's got a big family and she wants you to meet all of them. 🫢

First, the file she lives in:

  • Kernel file ./drivers/net/ethernet/intel/igc/igc_main.c

Now the whole entire squad, in the order the manpage gives them, because I am not about to disrespect the ordering:

Like I said. Huge family. But every single one of them is iconic in her own way. πŸ’…


Anyway, mwah, that's the page. This one ships out of ./drivers/net/ethernet/intel/igc and it's dated October 2026, so yeah β€” future energy. 🧚 Go set some hardware filters, bestie. You got this. πŸ“πŸ’–

πŸ“¦ where this page comes from