STRUCT RSEQ_IDS(9)
struct rseq_ids(9) π
Okay bestie, welcome to the Kernel API Manual page for struct rseq_ids β it's literally the cache for ids that need to be updated. Lowkey iconic little struct behavior. π
β¨ NAME β¨
struct rseq_ids β Cache for ids, which need to be updated π
π¦ SYNOPSIS π¦
struct rseq_ids {
union {
u64 cpu_cid;
struct {
u32 cpu_id;
u32 mm_cid;
};
};
u32 node_id;
};
πΈ Members πΈ
{unnamed_union}β anonymous. The manpage literally saysanonymous, and honestly? Same. πcpu_cidβ compound ofcpu_idandmm_cidto make the compiler emit a single compare on 64-bit. Not me being obsessed with one compare, it's just efficient queen behavior. β‘{unnamed_struct}β anonymous.cpu_idβ the CPU ID which was written last to user space. π»mm_cidβ the MM CID which was written last to user space. π§node_idβ the node ID which was written last to user space. π
π Description π
So the whole vibe is: cpu_id, mm_cid and node_id are updated when the data is written to user space. That's it, that's the plot. β¨
π SEE ALSO π
Kernel file ./include/linux/rseq_types.h and the whole friend group:
struct rseq_event(9)union rseq_slice_state(9)struct rseq_slice(9)struct rseq_data(9)struct sched_mm_cid(9)struct mm_cid_pcpu(9)struct mm_mm_cid(9)
Source: ./include/linux, dated October 2026, page struct rseq_ids(9). Periodt. ππ«Ά
π¦ 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