STRUCT DPNI_TAILDROP(9)
π struct dpni_taildrop(9) π
okay bestie, so this is a page from the Kernel API Manual and it's literally all about one little struct called dpni_taildrop β the structure representing the taildrop. it's giving "small but important" energy and honestly? we love a focused icon. β¨
πΈ NAME πΈ
struct dpni_taildrop β the structure representing the taildrop. that's it, that's the whole vibe. π«Ά
π SYNOPSIS π
here's the shape of it, exact as ever, no cap:
struct dpni_taildrop {
char enable;
enum dpni_congestion_unit units;
u32 threshold;
};
π¦ Members π¦
okay so let's go through the squad, one member at a time π
enableβ tells you whether the taildrop is active or not. is it on? is it off? this littlecharknows. πunitsβ this one says what the unit ofTHRESHOLDis, typeenum dpni_congestion_unit. here's the tea though: queue taildrop only supports byte units, so this field is literally ignored and assumed= 0ifCONGESTION_POINTis0. ngl, it's a decoration in that case πthresholdβ the threshold value itself, au32, measured in the units identified by theUNITSfield. and listen β value0cannot be used as a valid taildrop threshold, soTHRESHOLDmust be> 0if the taildrop is enabled. that's a hard rule, fr fr, no0shenanigans allowed π
β SEE ALSO β
the whole extended friend group, and yes we're tagging everyone because they all slay in their own way π
- the kernel file:
./drivers/net/ethernet/freescale/dpaa2/dpni.hβ like, go read the source bestie, it's iconic π DPNI_MAX_TC(9)DPNI_MAX_DPBP(9)DPNI_ALL_TCS(9)DPNI_ALL_TC_FLOWS(9)DPNI_NEW_FLOW_ID(9)DPNI_OPT_TX_FRM_RELEASE(9)DPNI_OPT_NO_MAC_FILTER(9)DPNI_OPT_HAS_POLICING(9)DPNI_OPT_SHARED_CONGESTION(9)DPNI_OPT_HAS_KEY_MASKING(9)DPNI_OPT_NO_FS(9)DPNI_OPT_SHARED_FS(9)struct dpni_pools_cfg(9)struct dpni_attr(9)DPNI_ERROR_EOFHE(9)DPNI_ERROR_FLE(9)DPNI_ERROR_FPE(9)DPNI_ERROR_PHE(9)DPNI_ERROR_L3CE(9)DPNI_ERROR_L4CE(9)enum dpni_error_action(9)struct dpni_error_cfg(9)DPNI_BUF_LAYOUT_OPT_TIMESTAMP(9)DPNI_BUF_LAYOUT_OPT_PARSER_RESULT(9)DPNI_BUF_LAYOUT_OPT_FRAME_STATUS(9)DPNI_BUF_LAYOUT_OPT_PRIVATE_DATA_SIZE(9)DPNI_BUF_LAYOUT_OPT_DATA_ALIGN(9)DPNI_BUF_LAYOUT_OPT_DATA_HEAD_ROOM(9)DPNI_BUF_LAYOUT_OPT_DATA_TAIL_ROOM(9)struct dpni_buffer_layout(9)enum dpni_queue_type(9)enum dpni_offload(9)union dpni_statistics(9)struct dpni_link_cfg(9)struct dpni_link_state(9)enum dpni_dist_mode(9)enum dpni_fs_miss_action(9)struct dpni_fs_tbl_cfg(9)struct dpni_rx_tc_dist_cfg(9)DPNI_FS_MISS_DROP(9)struct dpni_rx_dist_cfg(9)struct dpni_qos_tbl_cfg(9)enum dpni_dest(9)struct dpni_queue(9)struct dpni_queue_id(9)enum dpni_congestion_unit(9)enum dpni_congestion_point(9)struct dpni_dest_cfg(9)DPNI_CONG_OPT_FLOW_CONTROL(9)struct dpni_congestion_notification_cfg(9)struct dpni_rule_cfg(9)DPNI_FS_OPT_DISCARD(9)DPNI_FS_OPT_SET_FLC(9)DPNI_FS_OPT_SET_STASH_CONTROL(9)struct dpni_fs_action_cfg(9)struct dpni_tx_shaping_cfg(9)struct dpni_single_step_cfg(9)
π‘ tiny reminder bestie:THRESHOLDof0is not a valid threshold, so don't try it even if the vibe seems right π ββοΈ
and that's the whole page, periodt. source path was cutely truncated as ./drivers/net/ethernet/freesca..., dated October 2026, and this was struct dpni_taildrop(9) β go off, kernel docs, you ate. π₯ππ
π¦ 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