ENUM EDAC_MC_LAYER_TYPE(9)
π enum edac_mc_layer_type(9) β the memory controller hierarchy layer, bestie
okay so this is a page from the Kernel API Manual and it's genuinely so niche but like, kind of iconic? It's the enum edac_mc_layer_type manpage from ./include/linux and it's here to explain how memory hierarchy layers get their names. slay. let's get into it β¨
πΈ NAME πΈ
enum edac_mc_layer_type β the memory controller hierarchy layer, literally the thing that tells everyone what to call each layer of memory. no cap.
β¨ SYNOPSIS β¨
bestie this is the whole enum, exactly as it is, don't touch:
enum edac_mc_layer_type {
EDAC_MC_LAYER_BRANCH ,
EDAC_MC_LAYER_CHANNEL ,
EDAC_MC_LAYER_SLOT ,
EDAC_MC_LAYER_CHIP_SELECT ,
EDAC_MC_LAYER_ALL_MEM
};
π Constants π
these are the five values, each one has a job and honestly they all ate:
EDAC_MC_LAYER_BRANCHβ this memory layer is named "branch". yes, that's literally it, the name isbranchπEDAC_MC_LAYER_CHANNELβ this memory layer is named "channel". cute, iconic, on brand π¦EDAC_MC_LAYER_SLOTβ this memory layer is named "slot". honestly same energy πΈEDAC_MC_LAYER_CHIP_SELECTβ this memory layer is named "chip select". two words, very distinguished πEDAC_MC_LAYER_ALL_MEMβ okay so this one's different: the memory layout is unknown. All memory is mapped as a single memory area. This is the one used when retrieving errors from a firmware driven driver. so it's like the "we don't know the shape of it, it's just One Big Memory" option π«Ά
π Description π
So the vibe here is: drivers use this enum to tell edac_mc_sysfs what name should be used when describing a memory stick location. that's the whole tea. it's basically the driver saying "hey bestie, when you describe where this memory stick lives, use these words" and then memory stick locations actually make sense. main character energy fr fr π
π₯ SEE ALSO π₯
all the related lore, living in the Kernel file ./include/linux/edac.h:
enum dev_type(9)enum hw_event_mc_err_type(9)enum mem_type(9)enum edac_type(9)enum scrub_type(9)struct edac_mc_layer(9)struct rank_info(9)struct edac_raw_error_desc(9)edac_get_dimm(9)struct edac_scrub_ops(9)struct edac_ecs_ops(9)struct edac_mem_repair_ops(9)
ngl if you're actually digging through ECC memory error reporting at the layer level, you're a different breed of unix gremlin and I respect it ππ
and that's the page!! sign-off time: this one lives in ./include/linux, dated October 2026, and it's filed under enum edac_mc_layer_type(9) in the Kernel API Manual. go read your memory hierarchies bestie, ily, bye πβ¨
π¦ 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