STRUCT CSS_DRIVER(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

🌸 NAME 🌸

okay bestie, welcome to struct css_driver(9) from the Kernel API Manual β€” this is literally the device driver for subchannels, and she's serving main character energy πŸ’…βœ¨


✨ SYNOPSIS ✨

here's the whole struct, no cap:

struct css_driver {
    struct css_device_id *subchannel_type;
    struct device_driver drv;
    void (*irq)(struct subchannel *);
    int (*chp_event)(struct subchannel *, struct chp_link *, int);
    int (*sch_event)(struct subchannel *, int);
    int (*probe)(struct subchannel *);
    void (*remove)(struct subchannel *);
    void (*shutdown)(struct subchannel *);
    int (*settle)(void);
 };

🫢 Members 🫢

okay so every field is doing its own lil job, and honestly? iconic:

  • subchannel_type β€” the subchannel type supported by this driver; it's the vibe this driver signs up for πŸ’–
  • drv β€” the embedded device driver structure, tucked inside like a bestie who's always there 🫢
  • irq β€” called on interrupts; it's giving "wait, something happened" energy 😭
  • chp_event β€” called for events affecting a channel path, periodt
  • sch_event β€” called for events affecting the subchannel, no cap
  • probe β€” the function called on probe; she shows up when it's probe time ✨
  • remove β€” the function called on remove</em></p> Wait, let's fix that tag: the function called on remove; she exits stage left when it's time πŸ’…
  • shutdown β€” called at device shutdown; very "powering down gracefully, slay" πŸ”₯
  • settle β€” wait for asynchronous work to finish; patient queen behavior, fr fr πŸ‘‘

πŸ‘‘ SEE ALSO πŸ‘‘

  • Kernel file ./drivers/s390/cio/css.h β€” go read it, iykyk πŸ¦‹

this page comes straight from source/version ./drivers/s390/cio, dated October 2026, and it's all about struct css_driver(9) β€” bye bestie! πŸ’…βœ¨πŸŒˆ

πŸ“¦ where this page comes from