ENUM SCRUB_TYPE(9)
π enum scrub_type(9) π
okay so this is a page straight out of the Kernel API Manual, and honestly? it's a glow-up for memory scrubbing. scrubbing = the thing your RAM does to keep itself from going all crunchy. this enum is basically the personality quiz for "what kind of scrubber does this thing have?" π§β¨
πΈ NAME πΈ
enum scrub_type β scrubbing capabilities. that's it, that's the whole vibe check: what a scrubber can and can't do π
β¨ SYNOPSIS β¨
enum scrub_type {
SCRUB_UNKNOWN ,
SCRUB_NONE ,
SCRUB_SW_PROG ,
SCRUB_SW_SRC ,
SCRUB_SW_PROG_SRC ,
SCRUB_SW_TUNABLE ,
SCRUB_HW_PROG ,
SCRUB_HW_SRC ,
SCRUB_HW_PROG_SRC ,
SCRUB_HW_TUNABLE
};
that's the whole squad, bestie β ten constants, no cap, and every single one is getting its own moment below π
π Constants π
SCRUB_UNKNOWNβ we literally do not know if a scrubber is available. it's giving "no thoughts, head empty" π unknown status, fr fr.SCRUB_NONEβ no scrubber. at all. none. zero. the void. πSCRUB_SW_PROGβ SW progressive (sequential) scrubbing. software is out here doing the scrubbing in order, one after the other, main character energy π¦SCRUB_SW_SRCβ software scrub only errors. it's software, and it's strictly here for the error cleanup β no extras, periodt β¨SCRUB_SW_PROG_SRCβ progressive software scrub from an error. software again, progressive again, but this time it kicks off from an error π«ΆSCRUB_SW_TUNABLEβ the software scrub frequency is tunable. you can literally adjust how often it happens, lowkey iconic ποΈπΈSCRUB_HW_PROGβ HW progressive (sequential) scrubbing. same sequential deal as its software sibling, except the hardware is the one slaying π π₯SCRUB_HW_SRCβ hardware scrub only errors. hardware, errors only β it knows its lane π€SCRUB_HW_PROG_SRCβ progressive hardware scrub from an error. hardware doing the progressive thing, triggered from an error, no notes πSCRUB_HW_TUNABLEβ the hardware scrub frequency is tunable. yes, the hardware one is adjustable too. we love options π
π SEE ALSO π
these live in the kernel file ./include/linux/edac.h, and they're all mutuals bestie π:
enum dev_type(9)enum hw_event_mc_err_type(9)enum mem_type(9)enum edac_type(9)enum edac_mc_layer_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)
okay that's the whole page!! π come find me in ./include/linux β this one's from October 2026, mwah ππ
π¦ 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