in concurrent shells. This would avoid duplicated caches, but also reuse the cache across processes.
This could rely on reference counters for each mount point, to avoid duplicated mounts for the same target;
easycatfs unmount only do a full unmount and cleanup, if there is a single reference left when called. In all other cases, it should only decrease the reference count/pointers.
easycatfs mount/unmount protect against race conditions when called concurrently (in any combination). A possible solution might involve file locks (flock) and retries after a random wait time.
Add support for doing:
in concurrent shells. This would avoid duplicated caches, but also reuse the cache across processes.
This could rely on reference counters for each mount point, to avoid duplicated mounts for the same target;
easycatfs unmount
only do a full unmount and cleanup, if there is a single reference left when called. In all other cases, it should only decrease the reference count/pointers.easycatfs mount/unmount
protect against race conditions when called concurrently (in any combination). A possible solution might involve file locks (flock
) and retries after a random wait time.