ENUM EDAC_MC_LAYER_TYPE(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

πŸ’œ 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 is branch πŸ’…
  • 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