Hello,
I would like to sync the file-system after every invocation to `Genode::Append_file::append()`. However, the `_sync()` interface is private as are the Genode::Append_file's `_io` and `_handle`.
What is the recommended way to sync?
I tried using handles as well:
```cpp Vfs::File_system &fs{root_dir.root_dir()}; Vfs::Vfs_handle *handle {};
fs.open("foo", Vfs::Directory_service::Open_mode::OPEN_MODE_RDWR | Vfs::Directory_service::Open_mode::OPEN_MODE_CREATE, &handle, heap);
// file opens properly
for (long long unsigned i = 0; i < 10; i++) { auto _str = Genode::String<512>(Genode::Hex(i), "\n"); Genode::Const_byte_range_ptr const bufrange { _str.string(), _str.length() }; Genode::size_t out = 0;
auto res = fs.write(handle, bufrange, out); handle->advance_seek(out);
Genode::warning("WROTE: ", out, "B, RES: ", (Genode::uint32_t)res); }
fs.close(handle); ```
However, before I could add syncing to the above example, I noticed that `fs.write()` returns WRITE_ERR_INVALID. I am stuck on what could be wrong, as I based this example off of the internal implementation of `Genode::Writeable_file`.
As always, any help is greatly appreciated :)
Best, Rumen
P.S. This was tested on rump-ext2fs.