netif_stop_subqueue(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

πŸ’… netif_stop_subqueue(9) β€” Kernel API Manual, bestie edition

Okay so real talk, this is netif_stop_subqueue(9) straight out of the Kernel API Manual, and it's literally the "hey bestie, pause that one lane" function. Let's get into it πŸŽ€


✨ NAME ✨

netif_stop_subqueue β€” stop sending packets on a subqueue πŸ›‘


🌸 SYNOPSIS 🌸

void netif_stop_subqueue (struct net_device *dev , u16 queue_index );

πŸ¦‹ ARGUMENTS πŸ¦‹

  • dev β€” the network device, aka the whole vibe. It's a struct net_device * and it's the thing whose subqueue you're about to hush πŸ’–
  • queue_index β€” the sub queue index (u16), i.e. which lane inside that device you're putting on pause. Specificity is the moment πŸ‘‘

πŸ’« DESCRIPTION πŸ’«

So picture a device that has multiple transmit queues β€” a multiqueue legend, main character energy, absolutely ate. This function stops one individual transmit queue of that device. Just the one. Not all of them. Targeted. Deliberate. It's giving surgical πŸ’…


πŸ”₯ SEE ALSO πŸ”₯

The whole extended friend group 🫢 β€” header home base is Kernel file ./include/linux/netdevice.h and everything here is a (9) page:

struct gro_node(9), napi_is_scheduled(9), napi_schedule(9), napi_schedule_irqoff(9), napi_complete_done(9), napi_synchronize(9), napi_if_scheduled_mark_missed(9), enum netdev_priv_flags(9), struct net_device(9), netdev_priv(9), netdev_from_priv(9), netif_napi_add(9), netif_napi_add_config(9), netif_napi_add_tx(9), __netif_napi_del(9), netif_napi_del(9), netif_start_queue(9), netif_wake_queue(9), netif_stop_queue(9), netif_queue_stopped(9), netdev_queue_set_dql_min_limit(9), netdev_txq_bql_enqueue_prefetchw(9), netdev_txq_bql_complete_prefetchw(9), netdev_tx_sent_queue(9), netdev_sent_queue(9), netdev_tx_completed_queue(9), netdev_completed_queue(9), netdev_tx_reset_subqueue(9), netdev_reset_queue(9), netdev_cap_txqueue(9), netif_running(9), netif_start_subqueue(9), __netif_subqueue_stopped(9), netif_subqueue_stopped(9), netif_wake_subqueue(9), netif_attr_test_mask(9), netif_attr_test_online(9), netif_attrmask_next(9), netif_attrmask_next_and(9), netif_is_multiqueue(9), dev_hold(9), dev_put(9), linkwatch_sync_dev(9), netif_carrier_ok(9), netif_dormant_on(9), netif_dormant_off(9), netif_dormant(9), netif_testing_on(9), netif_testing_off(9), netif_testing(9), netif_oper_up(9), netif_device_present(9), netif_tx_lock(9), __dev_uc_sync(9), __dev_uc_unsync(9), __dev_mc_sync(9), __dev_mc_unsync(9)


🧚 Lowkey go read netif_start_subqueue(9) and netif_wake_subqueue(9) after this one, because stopping alone is only half the story, iykyk.

Aaaand scene, that's the whole page πŸ’œ It ships from ./include/linux, dated October 2026, filed under netif_stop_subqueue(9) β€” mwah, slay, no cap 🌈⭐

πŸ“¦ where this page comes from