napi_if_sch..._mark_missed(9)
π napi_if_sch..._mark_missed(9) β from the Kernel API Manual, bestie
okay so picture this: you're deep in the kernel, the networking girlies are all up in netdevice.h, and you need to know whether a NAPI is already scheduled. That's the whole vibe of this page. It's a <pink>Kernel API Manual</pink> entry, and honestly? She's short, she's sweet, she's doing the most with very little. π
β¨ NAME β¨
napi_if_scheduled_mark_missed β if napi is running, set the NAPIF_STATE_MISSED π«
Like yes, that's the entire name and also the entire personality.
πΈ SYNOPSIS πΈ
bool napi_if_scheduled_mark_missed (struct napi_struct *n );
she's a bool, she takes one pointer, she's an icon. periodt.
π¦ ARGUMENTS π¦
nβ the NAPI context. that's it. that's the argument. give her astruct napi_struct *and let her cook. π₯
π DESCRIPTION π
okay so here's the tea π:
If napi is running, set the NAPIF_STATE_MISSED, and return true if NAPI is scheduled.
that's literally it bestie β no cap. you call her, and if napi is running she flips on NAPIF_STATE_MISSED, and the return value tells you whether NAPI is scheduled. true means scheduled. the whole thing is giving "one job, done flawlessly." π
ngl this is the kind of function that looks tiny and then lives rent-free in the networking code forever. respect.
π SEE ALSO π
strap in, because this list is long and every single one of them is invited to the group chat π«Ά β they all live in the kernel file ./include/linux/netdevice.h:
struct gro_node(9)napi_is_scheduled(9)napi_schedule(9)napi_schedule_irqoff(9)napi_complete_done(9)napi_synchronize(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_stop_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)
no seriously, read them all. iykyk. πβ¨
and that's the page, bestie!! π§π this one came straight outta ./include/linux, dated October 2026, and it's still out here being one of the main characters of the netdevice header. slay, honestly. πππ¦
π¦ 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