gvisor/pkg/sentry
Nicolas Lacasse a38f41b464 fs: Add new cache policy "remote_revalidate".
This CL adds a new cache-policy for gofer filesystems that uses the host page
cache, but causes dirents to be reloaded on each Walk, and does not cache
readdir results.

This policy is useful when the remote filesystem may change out from underneath
us, as any remote changes will be reflected on the next Walk.

Importantly, this cache policy is only consistent if we do not use gVisor's
internal page cache, since that page cache is tied to the Inode and may be
thrown away upon Revalidation.

This cache policy should only be used when the gofer supports donating host
FDs, since then gVisor will make use of the host kernel page cache, which will
be consistent for all open files in the gofer. In fact, a panic will be raised
if a file is opened without a donated FD.

PiperOrigin-RevId: 207752937
Change-Id: I233cb78b4695bbe00a4605ae64080a47629329b8
2018-08-07 11:43:41 -07:00
..
arch Automated rollback of changelist 207037226 2018-08-02 10:42:48 -07:00
context Automated rollback of changelist 207037226 2018-08-02 10:42:48 -07:00
control stateify: support explicit annotation mode; convert refs and stack packages. 2018-07-27 10:17:21 -07:00
device New conditional for adding key/value pairs to maps. 2018-08-01 09:44:57 -07:00
fs fs: Add new cache policy "remote_revalidate". 2018-08-07 11:43:41 -07:00
hostcpu stateify: support explicit annotation mode; convert refs and stack packages. 2018-07-27 10:17:21 -07:00
inet Automated rollback of changelist 207037226 2018-08-02 10:42:48 -07:00
kernel sentry: make epoll.pollEntry wait for the file operation in restore. 2018-08-07 10:27:37 -07:00
limits Automated rollback of changelist 207037226 2018-08-02 10:42:48 -07:00
loader Automated rollback of changelist 207037226 2018-08-02 10:42:48 -07:00
memmap Automated rollback of changelist 207037226 2018-08-02 10:42:48 -07:00
memutil stateify: support explicit annotation mode; convert refs and stack packages. 2018-07-27 10:17:21 -07:00
mm Automated rollback of changelist 207037226 2018-08-02 10:42:48 -07:00
platform Fix a bug in PCIDs.Assign 2018-08-06 10:11:56 -07:00
safemem stateify: support explicit annotation mode; convert refs and stack packages. 2018-07-27 10:17:21 -07:00
sighandling stateify: support explicit annotation mode; convert refs and stack packages. 2018-07-27 10:17:21 -07:00
socket Automated rollback of changelist 207037226 2018-08-02 10:42:48 -07:00
state stateify: support explicit annotation mode; convert refs and stack packages. 2018-07-27 10:17:21 -07:00
strace stateify: support explicit annotation mode; convert refs and stack packages. 2018-07-27 10:17:21 -07:00
syscalls Copy creds in access 2018-08-02 16:01:31 -07:00
time stateify: support explicit annotation mode; convert refs and stack packages. 2018-07-27 10:17:21 -07:00
uniqueid stateify: support explicit annotation mode; convert refs and stack packages. 2018-07-27 10:17:21 -07:00
usage Automated rollback of changelist 207037226 2018-08-02 10:42:48 -07:00
usermem Automated rollback of changelist 207037226 2018-08-02 10:42:48 -07:00
watchdog stateify: support explicit annotation mode; convert refs and stack packages. 2018-07-27 10:17:21 -07:00
BUILD Check in gVisor. 2018-04-28 01:44:26 -04:00