From e1370b558ee8f44bf2daeb0297d6c64daa841b63 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Josef=20S=C3=B6ntgen?= Date: Wed, 18 Dec 2013 14:36:17 +0100 Subject: [PATCH] add sync implementation to various fs servers Fixes #1007. --- libports/src/server/ffat_fs/main.cc | 3 +++ os/src/server/lx_fs/main.cc | 7 +++++++ os/src/server/ram_fs/main.cc | 2 ++ os/src/server/tar_fs/main.cc | 3 +++ 4 files changed, 15 insertions(+) diff --git a/libports/src/server/ffat_fs/main.cc b/libports/src/server/ffat_fs/main.cc index 0b7d6ad2d..b6de6ca91 100644 --- a/libports/src/server/ffat_fs/main.cc +++ b/libports/src/server/ffat_fs/main.cc @@ -852,6 +852,9 @@ namespace File_system { { PWRN("File_system::Session::sigh not supported"); } + + /* ffat only supports fsync(2) */ + void sync() { } }; diff --git a/os/src/server/lx_fs/main.cc b/os/src/server/lx_fs/main.cc index 6096286c1..16d827256 100644 --- a/os/src/server/lx_fs/main.cc +++ b/os/src/server/lx_fs/main.cc @@ -308,6 +308,13 @@ class File_system::Session_component : public Session_rpc_object { _handle_registry.sigh(node_handle, sigh); } + + /** + * We could call sync(2) here but for now we forward just the + * reminder because besides testing, there is currently no + * use-case. + */ + void sync() { PWRN("sync() not implemented!"); } }; diff --git a/os/src/server/ram_fs/main.cc b/os/src/server/ram_fs/main.cc index def037c16..63a967a76 100644 --- a/os/src/server/ram_fs/main.cc +++ b/os/src/server/ram_fs/main.cc @@ -411,6 +411,8 @@ namespace File_system { { _handle_registry.sigh(node_handle, sigh); } + + void sync() { } }; diff --git a/os/src/server/tar_fs/main.cc b/os/src/server/tar_fs/main.cc index aeb2ad58d..900b67685 100644 --- a/os/src/server/tar_fs/main.cc +++ b/os/src/server/tar_fs/main.cc @@ -424,6 +424,9 @@ namespace File_system { { PWRN("File_system::Session::sigh not supported"); } + + /* merely readonly, no need to sync */ + void sync() { } };