vfs: propagate I/O activity via 'wakeup_vfs_user'

This commit supplements the various I/O signal handlers of the VFS
plugins with calls of the new 'Vfs::Env::User::wakeup_vfs_user'
interface, which will subsequently replace the old 'Io_progress_handler'
(issue #4697).

Issue #4706
This commit is contained in:
Norman Feske
2022-12-21 14:51:48 +01:00
committed by Christian Helmuth
parent 767632e1af
commit bb904b9166
8 changed files with 45 additions and 13 deletions

View File

@ -29,6 +29,8 @@ class Vfs::Rom_file_system : public Single_file_system
Genode::Env &_env;
Vfs::Env::User &_vfs_user;
typedef String<64> Label;
Label const _label;
@ -125,6 +127,8 @@ class Vfs::Rom_file_system : public Single_file_system
{
_handle_registry.for_each([] (Registered_watch_handle &handle) {
handle.watch_response(); });
_vfs_user.wakeup_vfs_user();
}
Genode::Constructible<Genode::Io_signal_handler<Rom_file_system>>
@ -137,7 +141,7 @@ class Vfs::Rom_file_system : public Single_file_system
:
Single_file_system(Node_type::CONTINUOUS_FILE, name(),
Node_rwx::ro(), config),
_env(env.env()),
_env(env.env()), _vfs_user(env.user()),
/* use 'label' attribute if present, fall back to 'name' if not */
_label(config.attribute_value("label",