[fsfdt] Skip addition of existing subnodes

While appending FDT, it is possible that the traversed subnode is
already present. In those cases, skip those instead of failing.

Test: atest libfsfdt_test
Bug: 324983012
Change-Id: I8b9e881f3b7a212cdf3ae69c5e3f3fd130dd7b96
diff --git a/virtualizationmanager/src/reference_dt.rs b/virtualizationmanager/src/reference_dt.rs
index 797ee3c..39b8db8 100644
--- a/virtualizationmanager/src/reference_dt.rs
+++ b/virtualizationmanager/src/reference_dt.rs
@@ -55,7 +55,7 @@
         .add_subnode(cstr!("__overlay__"))
         .map_err(|e| anyhow!("Failed to create the __overlay__, {e:?}"))?;
 
-    fdt.append(cstr!("/fragment@0/__overlay__"), dir_path)?;
+    fdt.overlay_onto(cstr!("/fragment@0/__overlay__"), dir_path)?;
 
     fdt.pack().map_err(|e| anyhow!("Failed to pack VM reference DT, {e:?}"))?;
     fs::write(fdt_path, fdt.as_slice())?;