init_overlay_changeset(9)
π NAME
init_overlay_changeset β bestie, this is the one that initializes an overlay changeset from an overlay tree β¨
(this is from the Kernel API Manual, page init_overlay_changeset(9), obviously π)
π SYNOPSIS
int init_overlay_changeset (struct overlay_changeset *ovcs , const
struct device_node *target_base );
π«Ά ARGUMENTS
ovcsβ the overlay changeset you're about to build, bestie. this is the thing getting set up πtarget_baseβ points at the target node where the overlay gets applied π―
β¨ DESCRIPTION
okay so first thing: initialize ovcs. then you populate ovcs->fragments with node info taken from the top level of overlay_root πΈ
the relevant top level nodes? literally just the fragment nodes and the __symbols__ node. any other top level node gets ignored β not me, that's just how it is π
after that you populate the other ovcs fields, and that's the whole vibe β¨
π₯ RETURN
0on success β slay π-ENOMEMif memory allocation fails π-EINVALif an error is detected inoverlay_rootπ
π¨ real talk though: if this returns an error, whoever calledinit_overlay_changesetmust callfree_overlay_changeset. no cap, don't forget it.
π SEE ALSO
Kernel file ./drivers/of/overlay.c, and all these icons: struct target(9), struct fragment(9), struct overlay_changeset(9), of_overlay_notifier_register(9), of_overlay_notifier_unregister(9), add_changeset_property(9), add_changeset_node(9), build_changeset_next_level(9), changeset_dup_entry_check(9), build_changeset(9), of_overlay_fdt_apply(9), of_overlay_remove(9), of_overlay_remove_all(9) π¦
mwah, that's the whole page π«Ά it lives in ./drivers/of, dated October 2026, and it's init_overlay_changeset(9) β go forth and overlay, 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