STRUCT RPROC_SUBDEV(9)
π NAME π
okay so welcome to the Kernel API Manual, bestie π β today's main character is struct rproc_subdev, which is literally just a subdevice tied to a remoteproc. that's the whole vibe. iykyk.
β¨ SYNOPSIS β¨
here's the glow-up, character for character, no cap:
struct rproc_subdev {
struct list_head node;
int (*prepare)(struct rproc_subdev *subdev);
int (*start)(struct rproc_subdev *subdev);
void (*stop)(struct rproc_subdev *subdev, bool crashed);
void (*unprepare)(struct rproc_subdev *subdev);
};
like... look at her. five members, all living their truth. π¦
π MEMBERS π
okay bestie let's go through the whole friend group one by one, no skipping, we are NOT summarising:
nodeβ the list node related to the rproc subdevs list. she's literally the link in the group chat that keeps everyone connected πprepareβ the prepare function, called before the rproc is started. so like, she gets ready before the party even begins πstartβ the start function, called after the rproc has been started. she shows up once the party's already going π₯stopβ the stop function, called before the rproc is stopped. and plot twist: thecrashedparameter indicates if this originates from a recovery π so ifcrashedis set, the vibe check failed and we're in recovery modeunprepareβ the unprepare function, called after the rproc has been stopped. the "okay bestie goodnight" of the whole operation π
π«Ά note the order, babes:prepareβ before start,startβ after started,stopβ before stopped,unprepareβ after stopped. the sequencing is the whole point, don't freelance it.
π SEE ALSO π
if you wanna keep reading (and you KNOW you do π), go check out the kernel file ./include/linux/remoteproc.h β she's the source of truth. and then these iconic neighbours:
struct rproc_mem_entry(9)enum rsc_handling_status(9)struct rproc_ops(9)enum rproc_state(9)enum rproc_crash_type(9)enum rproc_dump_mechanism(9)struct rproc_dump_segment(9)enum rproc_features(9)struct rproc(9)struct rproc_vring(9)struct rproc_vdev(9)
like a whole friend group of structs and enums, we love to see it π
and that's the tea β β this page came from ./include/linux, dated October 2026, and yes the title is still struct rproc_subdev(9) because legends never change their name π slay, bye! π
β¨
π¦ 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