diff --git a/repos/os/src/server/fs_report/main.cc b/repos/os/src/server/fs_report/main.cc index 26d640d4c5..0dc2098c35 100644 --- a/repos/os/src/server/fs_report/main.cc +++ b/repos/os/src/server/fs_report/main.cc @@ -162,7 +162,9 @@ class Fs_report::Session_component : public Genode::Rpc_object Write_result res = handle->fs().write(handle, src, n); - if (res != Write_result::WRITE_OK) { + if (res == Write_result::WRITE_ERR_WOULD_BLOCK) + _io.commit_and_wait(); + else if (res != Write_result::WRITE_OK) { /* do not spam the log */ if (_success) error("failed to write report to '", _path, "'");