STRUCT NFP_ABM(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

πŸ’– NAME πŸ’–

struct nfp_abm β€” the ABM NIC app structure, bestie. that's it, that's the vibe ✨

okay so quick manual-name moment before we dive in: this page lives in the Kernel API Manual, and it's literally all about one struct. buckle up πŸŽ€


πŸ¦‹ SYNOPSIS πŸ¦‹

here's the whole thing, character for character, no cap:

struct nfp_abm {
    struct nfp_app *app;
    unsigned int pf_id;
    unsigned int red_support;
    unsigned int num_prios;
    unsigned int num_bands;
    unsigned int action_mask;
    u32 *thresholds;
    unsigned long *threshold_undef;
    u8 *actions;
    size_t num_thresholds;
    unsigned int prio_map_len;
    u8 dscp_mask;
    enum devlink_eswitch_mode eswitch_mode;
    const struct nfp_rtsym *q_lvls;
    const struct nfp_rtsym *qm_stats;
    const struct nfp_rtsym *q_stats;
 };

so many fields. she's giving main character energy πŸ‘‘


🌸 Members 🌸

okay, field-by-field tour, keep up 🫢

  • app β€” back pointer to nfp_app. yes bestie, it's a back pointer. she points home 🏠
  • pf_id β€” the ID of our PF link πŸ”—
  • red_support β€” is RED offload supported. short answer: it tells you whether RED offload is supported πŸ’…
  • num_prios β€” number of supported DSCP priorities
  • num_bands β€” number of supported DSCP priority bands 🎢
  • action_mask β€” bitmask of supported actions
  • thresholds β€” current threshold configuration
  • threshold_undef β€” bitmap of thresholds which have not been set. love a bitmap that keeps receipts πŸ™ˆ
  • actions β€” current FW action configuration
  • num_thresholds β€” number of thresholds and bits in threshold_undef. they match, periodt πŸ’€
  • prio_map_len β€” computed length of FW priority map (in bytes) πŸ“
  • dscp_mask β€” mask FW will apply on DSCP field
  • eswitch_mode β€” devlink eswitch mode, advanced functions only visible in switchdev mode. read that again: only visible in switchdev mode πŸ‘€πŸ”₯
  • q_lvls β€” queue level control area
  • qm_stats β€” queue statistics symbol
  • q_stats β€” basic queue statistics (only in per-band case) ⭐

🧚 SEE ALSO 🧚

go read these next, iykyk:

  • Kernel file ./drivers/net/ethernet/netronome/nfp/abm/main.h
  • struct nfp_alink_stats(9)
  • struct nfp_alink_xstats(9)
  • struct nfp_qdisc(9)
  • struct nfp_abm_link(9)

ok one tiny housekeeping note so nothing gets lost: this page is from ./drivers/net/ethernet/netrono... and it's dated October 2026 πŸ“…

k that's the whole struct, go slay your networking, bestie πŸ’œπŸŒˆπŸ’…

πŸ“¦ where this page comes from