genode/repos/os/src/server
Emery Hemingway a635873568 VFS: Replace global response handlers with local handlers
Replace the I/O response handler that is passed to the VFS at
construction with an object that is dynamically attached to handles.
This object shall also accept read-ready notifications, and plugins are
encouraged to keep handles awaiting ready-ready notifications separate
from handles that await I/O progress.

Replace the use of handle lists in plugins with handle queues, this
makes the code easier to understand and the ordering of notifications to
the application more explicit.

These changes replace the use of the Post_signal_hook from all VFS
plugins, applications must assume that read-ready and I/O notifications
occur during I/O signal dispatch and use an Io_progress_handler at its
entrypoints to defer response until after signal dispatching.

Fix #3257
2019-04-09 12:30:34 +02:00
..
block_cache Consistently name block components 2019-01-14 12:34:39 +01:00
cached_fs_rom Serve empty dataspace for empty files at cached_fs_rom 2018-08-28 16:45:25 +02:00
chroot os: avoid using deprecated APIs 2019-01-30 13:49:54 +01:00
clipboard Runtime package of clipboard service 2019-02-19 10:50:51 +01:00
dynamic_rom Add missing override annotations 2019-02-19 11:12:11 +01:00
fs_log Add missing override annotations 2019-02-19 11:12:11 +01:00
fs_report server/fs_report: don't truncate file initially 2018-05-31 12:28:15 +02:00
fs_rom fs_rom: revert workaround for possible livelock 2018-08-28 16:48:46 +02:00
input_filter Chargen description of French keyboard 2019-02-26 14:42:55 +01:00
input_merger os: avoid using deprecated APIs 2019-01-30 13:49:54 +01:00
iso9660 Add missing override annotations 2019-02-19 11:12:11 +01:00
loader Add missing override annotations 2019-02-19 11:12:11 +01:00
log_report os: avoid using deprecated APIs 2019-01-30 13:49:54 +01:00
log_terminal Add missing override annotations 2019-02-19 11:12:11 +01:00
lx_block Add missing override annotations 2019-02-19 11:12:11 +01:00
lx_fs lx_fs: return host inode value for dir entries 2019-02-28 11:34:06 +01:00
mixer Add missing override annotations 2019-02-19 11:12:11 +01:00
nic_bridge nic_router/nic_bridge: free MAC addresses 2019-04-01 19:33:48 +02:00
nic_dump Add missing override annotations 2019-02-19 11:12:11 +01:00
nic_loopback Add missing override annotations 2019-02-19 11:12:11 +01:00
nic_router nic_router: manipulate port-forwarding port 2019-04-01 19:33:48 +02:00
nit_fb nit_fb: defer mode change to client response 2018-05-30 13:36:15 +02:00
nitpicker nitpicker: send mode change on domain update 2019-04-01 19:33:52 +02:00
part_block part_block: properly indent code 2019-03-18 15:56:58 +01:00
ram_block Add missing override annotations 2019-02-19 11:12:11 +01:00
ram_fs ram_fs: increase max file size on 64 bit to 8 GiB 2019-03-18 15:57:00 +01:00
report_rom os: avoid using deprecated APIs 2019-01-30 13:49:54 +01:00
rom_block Add missing override annotations 2019-02-19 11:12:11 +01:00
rom_filter Add missing override annotations 2019-02-19 11:12:11 +01:00
rom_prefetcher Add missing override annotations 2019-02-19 11:12:11 +01:00
tar_rom Add missing override annotations 2019-02-19 11:12:11 +01:00
terminal_crosslink Add missing override annotations 2019-02-19 11:12:11 +01:00
terminal_log Add missing override annotations 2019-02-19 11:12:11 +01:00
trace_fs os: avoid using deprecated APIs 2019-01-30 13:49:54 +01:00
tz_vmm hw: name vm_state header explicitely 2019-04-01 19:33:49 +02:00
vfs VFS: Replace global response handlers with local handlers 2019-04-09 12:30:34 +02:00
vmm hw: name vm_state header explicitely 2019-04-01 19:33:49 +02:00