media_devnode_remove(9)
π media_devnode_remove β Kernel API Manual β¨
okay so first things first, this whole page lives in the Kernel API Manual and it's about exactly one tiny little function that does one big dramatic thing. it's giving "small but mighty" π let's get into it.
πΈ NAME πΈ
media_devnode_remove β removes a device node interface π«Ά
like. it removes it. that's the whole job. and it does it so well.
β¨ SYNOPSIS β¨
void media_devnode_remove (struct media_intf_devnode *devnode );
yup, that's it. one function, one argument, zero return value (void, bestie β it doesn't hand anything back, it just does) π
π ARGUMENTS π
devnodeβ pointer to themedia_intf_devnodethat's getting freed. that's the one. that's the target. point at it and it's done for π¦
π DESCRIPTION π
so when a device node interface gets removed, all links to it are automatically removed too. no cap. you don't have to go around unlinking stuff yourself, the cleanup is automatic β it's giving main character energy that handles its own business π₯
literally just call it and the links take care of themselves. iconic behavior honestly.
heads up bestie: it's void, so there's nothing to check on the way out β the function takes care of business and dips π
π SEE ALSO π
this is the part where the manpage goes feral and lists the entire extended universe π all of these live in the kernel file ./include/media/media-entity.h:
enum media_gobj_type(9)struct media_gobj(9)struct media_entity_enum(9)struct media_graph(9)struct media_pipeline(9)struct media_pipeline_pad(9)struct media_pipeline_pad_iter(9)struct media_pipeline_entity_iter(9)struct media_link(9)enum media_pad_signal_type(9)struct media_pad(9)struct media_entity_operations(9)enum media_entity_type(9)struct media_entity(9)media_entity_for_each_pad(9)struct media_interface(9)struct media_intf_devnode(9)media_entity_id(9)media_type(9)media_id(9)media_gobj_gen_id(9)is_media_entity_v4l2_video_device(9)is_media_entity_v4l2_subdev(9)media_entity_enum_init(9)media_entity_enum_cleanup(9)media_entity_enum_zero(9)media_entity_enum_set(9)media_entity_enum_clear(9)media_entity_enum_test(9)media_entity_enum_test_and_set(9)media_entity_enum_empty(9)media_entity_enum_intersects(9)gobj_to_entity(9)gobj_to_pad(9)gobj_to_link(9)gobj_to_intf(9)intf_to_devnode(9)media_gobj_create(9)media_gobj_destroy(9)media_entity_pads_init(9)media_entity_cleanup(9)media_get_pad_index(9)media_create_pad_link(9)media_create_pad_links(9)media_entity_remove_links(9)__media_entity_setup_link(9)media_entity_setup_link(9)media_entity_find_link(9)media_pad_remote_pad_first(9)media_pad_remote_pad_unique(9)media_entity_remote_pad_unique(9)media_entity_remote_source_pad_unique(9)media_pad_is_streaming(9)media_entity_is_streaming(9)media_entity_pipeline(9)media_pad_pipeline(9)media_entity_get_fwnode_pad(9)media_graph_walk_init(9)media_graph_walk_cleanup(9)media_graph_walk_start(9)media_graph_walk_next(9)media_pipeline_start(9)__media_pipeline_start(9)media_pipeline_stop(9)__media_pipeline_stop(9)media_pipeline_for_each_pad(9)media_pipeline_entity_iter_init(9)media_pipeline_entity_iter_cleanup(9)media_pipeline_for_each_entity(9)media_pipeline_alloc_start(9)media_devnode_create(9)media_create_intf_link(9)__media_remove_intf_link(9)media_remove_intf_link(9)__media_remove_intf_links(9)media_remove_intf_links(9)media_entity_call(9)media_create_ancillary_link(9)__media_entity_next_link(9)for_each_media_entity_data_link(9)
and that's the whole page bestie!! π this one ships out of the source dir ./include/media, and it's dated October 2026 in the Kernel API Manual β so like, remember it, screenshot it, put it on your fridge π§β iykyk π¦π
π¦ 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