STRUCT CSS_DRIVER(9)
πΈ 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, periodtsch_eventβ called for events affecting the subchannel, no capprobeβ 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
- 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