ENUM CONS_FLAGS(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

πŸ’… NAME πŸ’…

okay so this is the enum cons_flags(9) page from the Kernel API Manual β€” it’s all about the general console flags, aka the console vibe check. πŸŽ€

✨ SYNOPSIS ✨

enum cons_flags {
    CON_PRINTBUFFER ,
    CON_CONSDEV ,
    CON_ENABLED ,
    CON_BOOT ,
    CON_ANYTIME ,
    CON_BRL ,
    CON_EXTENDED ,
    CON_SUSPENDED ,
    CON_NBCON ,
    CON_NBCON_ATOMIC_UNSAFE

};

πŸŽ€ Constants πŸŽ€

  • CON_PRINTBUFFER β€” newly registered consoles use this to dodge duplicate output of messages that were already shown by boot consoles or read by userspace via the syslog syscall. no double-posting energy πŸ’…
  • CON_CONSDEV β€” says the console driver is backing /dev/console. main character energy for /dev/console πŸ‘‘
  • CON_ENABLED β€” tells you if a console is allowed to print records. if it’s false, the console also will not advance to later records. bestie, it’s literally paused 😭
  • CON_BOOT β€” marks the console driver as an early console driver used during boot before the real driver becomes available. it will be automatically unregistered when the real console driver is registered unless the keep_bootcon parameter is used. temporary era, iconic exit ✨
  • CON_ANYTIME β€” a misnomed historical flag which tells the core code that the legacy console::write callback can be invoked on a CPU which is marked OFFLINE. that is misleading as it suggests that there is no contextual limit for invoking the callback. the original motivation was readiness of the per-CPU areas. historical lore, slightly chaotic 🫢
  • CON_BRL β€” indicates a braille device which is exempt from receiving the printk spam for obvious reasons. deserved exemption, fr fr 🌸
  • CON_EXTENDED β€” the console supports the extended output format of /dev/kmsg, which requires a larger output buffer. bigger buffer, bigger slay πŸ”₯
  • CON_SUSPENDED β€” indicates if a console is suspended. if true, the printing callbacks must not be called. do not call them, periodt πŸ’€
  • CON_NBCON β€” console can operate outside of the legacy style console_lock constraints. unlocked and unbothered πŸ’œ
  • CON_NBCON_ATOMIC_UNSAFE β€” the write_atomic callback is not safe and is therefore only used by nbcon_atomic_flush_unsafe. unsafe label is real, respect it πŸ™ˆ

🌈 SEE ALSO 🌈

Kernel file ./include/linux/console.h β€” go read these besties:

xoxo from ./include/linux, October 2026, enum cons_flags(9) πŸ’–βœ¨πŸ¦‹

πŸ“¦ where this page comes from