L4Re/OLD/libfsserver

Graph

(0) -100 -60 tip
Release invalid flexpages from accessors in the queue when flushing. default tip
Insist on finding valid flexpages, removing invalid ones when flushing them.
Join to the queue thread when finalising an accessor.
Moved AccessMap details into separate files.
Avoid the need to join to created threads by creating them as detached threads.
Prevent flushing of flexpages that are already removed.
Simplified flexpage finding and suitability method signatures.
Removed boolean result from the pop operation.
Handle potential excessive detachment.
Changed the accessor to reuse flexpages, with new flexpage creation being
When purging flexpages, make sure that the positions are also purged. This was
Attach accessors when making them available in the paging coordinator, hopefully
Introduced locking in attach/detach, calling initialise/finalise in accessors.
Expanded the diagnostic output in various operations.
Introduced purging of accessor associations when accessors are closed. Without
Moved the remove_flexpage method.
Fixed counter usage in the page queue, also handling removal concurrency issues.
Moved the pipe accessor implementation into a separate file.
Introduced a separate abstraction for the accessor page mapping.
When removing flexpages, purge them regardless of the number of users.
Moved locking into the PageQueue class.
Removed pending flexpages; retain accessor locks until flexpages are queued.
Introduced a queue abstraction to simplify the code manipulating the queue.
Delete flexpages in their responsible accessors.
Avoid duplication of pending flexpage queue entries.
Acquire the flexpage mapping lock when removing pending flexpages.
Added missing library dependency exposed when linking statically.
Added some debugging code showing the flexpage mappings.
Differentiate map operation debugging output.
Use delete instead of free; added debugging output.
Added locking methods; fixed flushing conditions, avoiding inadvertent
Use an explicit argument with flush_all.
Guard the accessor removal operation with the semaphore.
Introduced an atomic operation for establishing an accessor for a file.
Provide the data extent when obtaining the next pipe region.
Added support for a pipe resource using pager and accessor functionality.
Added virtual destructor for Accessor.
Permit limitless page collections.
Added a clear method and an initial value for _data_start of zero.
Added some comments.
Removed pipe-related resources pending their replacement.
Removed the debugging macro employing pages_for_file.
Made various methods protected, removed pages_for_file.
Introduced a counter semaphore to make accessors wait for available flexpages.
Employed added support for ahead-of-time reply/completion functions to send
Bundled pending set modifications with queue modifications.
Introduced concurrency control measures to ensure that flexpages are made
Added missing semaphore capability allocation.
Added missing semaphore guarding of queue insertion.
Fixed queue item retrieval to obtain a copy of the item before removal.
Introduced critical sections guarding flexpage retrieval and map accesses in
Removed superfluous STL comparison "functor".
Removed storage of a computed l4_fpage_t value.
Attempt to handle various race conditions by guarding removal from the flexpage
Consolidated various methods to simplify the control flow.
Switched to queuing and storing pointers to flexpages. This does not look as
Moved flexpage management for individual files into accessors. This permits
Make sure that generated headers are available when compiling. This becomes much
Reorganised the paging mechanism, moving various operations into the accessor.
Reorganised the paging code into separate sections of functionality.
(0) -100 -60 tip