STRUCT OF_CHANGESET_ENTRY(9)
π struct of_changeset_entry(9)
okay so this is the struct of_changeset_entry(9) page from the Kernel API Manual, and honestly? it's a little baddie of a struct that quietly holds everything together. let's get into it π«Ά
β¨ NAME β¨
struct of_changeset_entry β holds a changeset entry. that's it, that's the whole name, no notes π
πΈ SYNOPSIS πΈ
struct of_changeset_entry {
struct list_head node;
unsigned long action;
struct device_node *np;
struct property *prop;
struct property *old_prop;
};
π Members π
nodeβ thelist_headfor the log list. it's the little link that keeps this entry chained up with all its siblings.actionβ the notifier action. this is what went down, recorded as anunsigned long.npβ pointer to the device node that got affected. main character node, honestly.propβ pointer to the property that got affected.old_propβ holds a pointer to the original property. yes bestie, we keep the receipt π
π¦ Description π¦
so every single modification of the device tree that happens during a changeset gets held in a list of of_changeset_entry structures. literally every one, no skipping.
and why do we do this? because that way we can recover from a partial application, or we can revert the changeset. it's giving "undo button but make it kernel-level" πβ¨
ngl this is the safety net of the whole operation β if the changeset goes sideways mid-apply, these entries are your way back.
π₯ SEE ALSO π₯
Kernel file ./include/linux/of.h and friends β the whole squad, no cap:
of_node_init(9)of_machine_is_compatible(9)of_parse_phandle(9)of_parse_phandle_with_args(9)of_parse_phandle_with_fixed_args(9)of_parse_phandle_with_optional_args(9)of_phandle_args_equal(9)of_property_count_u8_elems(9)of_property_count_u16_elems(9)of_property_count_u32_elems(9)of_property_count_u64_elems(9)of_property_read_string_array(9)of_property_count_strings(9)of_property_read_string_index(9)of_property_present(9)of_property_read_u8_array(9)of_property_read_u16_array(9)of_property_read_u32_array(9)of_property_read_u64_array(9)struct of_changeset(9)of_device_is_system_power_controller(9)of_have_populated_dt(9)
and that's the whole page, bestie β stay iconic, keep your entries linked, and remember: always hold onto old_prop π
this cutie lives in ./include/linux, dated October 2026, and it goes by struct of_changeset_entry(9). mwah π
π¦ 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