struct_group_tagged(9)
struct_group_tagged(9) π
okay bestie, you're looking at the struct_group_tagged(9) page from the Kernel API Manual, and it's giving βreusable tag realnessβ β¨ no cap. Let's get into it.
β¨ NAME β¨
struct_group_tagged β create a struct_group with a reusable tag π
πΈ SYNOPSIS πΈ
struct_group_tagged (TAG , NAME , MEMBERS... );
π ARGUMENTS π
TAGβ the tag name for the named sub-struct, periodt π·οΈNAMEβ the identifier name of the mirrored sub-struct, iykyk πMEMBERSβ the member declarations for the mirrored structs π«Ά
π¦ DESCRIPTION π¦
So this one is used to create an anonymous union of two structs with identical layout and size: one anonymous and one named π. The former can be used normally without sub-struct naming, and the latter can be used to reason about the start, end, and size of the group of struct members β literally the whole vibe-check of that member group π .
It includes a struct tag argument for the named copy, so the specified layout can be reused later π₯. Reusable layout? Obsessed.
π₯ SEE ALSO π₯
Kernel file ./include/linux/stddef.h β also go peek at sizeof_field(9), offsetofend(9), struct_group(9), struct_group_attr(9), DECLARE_FLEX_ARRAY(9), __TRAILING_OVERLAP(9), and TRAILING_OVERLAP(9) π
okay that's the whole page, bestie π«Ά source/version: ./include/linux Β· date: October 2026 Β· struct_group_tagged(9) signing off π
β¨
π¦ 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