STRUCT DP_STATS_PERCPU(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

🌸 NAME 🌸

okay bestie, welcome to the struct dp_stats_percpu(9) page from the Kernel API Manual 🫢. This is the lowdown on per-cpu packet processing statistics for a given datapath β€” yes, it’s giving datapath stats, and yes, it’s iconic πŸ’…βœ¨.

✨ SYNOPSIS ✨

Here’s the struct in all its glory, no cap:

struct dp_stats_percpu {
    u64 n_hit;
    u64 n_missed;
    u64 n_lost;
    u64 n_mask_hit;
    u64 n_cache_hit;
    struct u64_stats_sync syncp;
 };

πŸŽ€ Members πŸŽ€

these are the members, and each one is doing its little job πŸ§šπŸ’–:

  • n_hit β€” the number of received packets for which a matching flow was found in the flow table. successful match vibes, slay πŸ’….
  • n_missed β€” the number of received packets that had no matching flow in the flow table 😭. and listen: the sum of n_hit and n_missed is the number of packets that have been received by the datapath. math bestie, periodt.
  • n_lost β€” the number of received packets that had no matching flow in the flow table and could not be sent to userspace (normally due to an overflow in one of the datapath's queues). tragic, honestly πŸ’€.
  • n_mask_hit β€” the number of masks looked up for flow match. n_mask_hit / (n_hit + n_missed) will be the average masks looked up per packet. formula moment πŸ”₯.
  • n_cache_hit β€” the number of received packets that had their mask found using the mask cache. cache said β€œi got you” 🫢✨.
  • syncp β€” synchronization point for 64bit counters. keeping the counters in check, main character energy πŸ‘‘.

🌈 SEE ALSO 🌈

the whole squad, iykyk πŸ’œ:

  • Kernel file ./net/openvswitch/datapath.h
  • struct dp_nlsk_pids(9)
  • struct datapath(9)
  • struct ovs_skb_cb(9)
  • struct dp_upcall_info(9)
  • struct ovs_net(9)
  • enum ovs_pkt_hash_types(9)

byeee πŸ’– β€” source/version is ./net/openvswitch, dated October 2026, and this page is struct dp_stats_percpu(9) πŸŽ€βœ¨.

πŸ“¦ where this page comes from