gvisor/pkg
Nicolas Lacasse e8a4f2e133 runsc: Change cache policy for root fs and volume mounts.
Previously, gofer filesystems were configured with the default "fscache"
policy, which caches filesystem metadata and contents aggressively.  While this
setting is best for performance, it means that changes from inside the sandbox
may not be immediately propagated outside the sandbox, and vice-versa.

This CL changes volumes and the root fs configuration to use a new
"remote-revalidate" cache policy which tries to retain as much caching as
possible while still making fs changes visible across the sandbox boundary.

This cache policy is enabled by default for the root filesystem. The default
value for the "--file-access" flag is still "proxy", but the behavior is
changed to use the new cache policy.

A new value for the "--file-access" flag is added, called "proxy-exclusive",
which turns on the previous aggressive caching behavior. As the name implies,
this flag should be used when the sandbox has "exclusive" access to the
filesystem.

All volume mounts are configured to use the new cache policy, since it is
safest and most likely to be correct. There is not currently a way to change
this behavior, but it's possible to add such a mechanism in the future. The
configurability is a smaller issue for volumes, since most of the expensive
application fs operations (walking + stating files) will likely served by the
root fs.

PiperOrigin-RevId: 208735037
Change-Id: Ife048fab1948205f6665df8563434dbc6ca8cfc9
2018-08-14 16:25:58 -07:00
..
abi Automated rollback of changelist 208284483 2018-08-14 11:50:49 -07:00
amutex stateify: support explicit annotation mode; convert refs and stack packages. 2018-07-27 10:17:21 -07:00
atomicbitops stateify: support explicit annotation mode; convert refs and stack packages. 2018-07-27 10:17:21 -07:00
binary stateify: support explicit annotation mode; convert refs and stack packages. 2018-07-27 10:17:21 -07:00
bits stateify: support explicit annotation mode; convert refs and stack packages. 2018-07-27 10:17:21 -07:00
bpf Automated rollback of changelist 207037226 2018-08-02 10:42:48 -07:00
compressio stateify: support explicit annotation mode; convert refs and stack packages. 2018-07-27 10:17:21 -07:00
control stateify: support explicit annotation mode; convert refs and stack packages. 2018-07-27 10:17:21 -07:00
cpuid Automated rollback of changelist 207037226 2018-08-02 10:42:48 -07:00
dhcp Move stack clock to options struct 2018-08-01 20:22:02 -07:00
eventchannel stateify: support explicit annotation mode; convert refs and stack packages. 2018-07-27 10:17:21 -07:00
fd stateify: support explicit annotation mode; convert refs and stack packages. 2018-07-27 10:17:21 -07:00
gate stateify: support explicit annotation mode; convert refs and stack packages. 2018-07-27 10:17:21 -07:00
hashio stateify: support explicit annotation mode; convert refs and stack packages. 2018-07-27 10:17:21 -07:00
ilist Automated rollback of changelist 207037226 2018-08-02 10:42:48 -07:00
linewriter stateify: support explicit annotation mode; convert refs and stack packages. 2018-07-27 10:17:21 -07:00
log stateify: support explicit annotation mode; convert refs and stack packages. 2018-07-27 10:17:21 -07:00
metric stateify: support explicit annotation mode; convert refs and stack packages. 2018-07-27 10:17:21 -07:00
p9 Add path sanity checks. 2018-08-13 12:50:29 -07:00
rand stateify: support explicit annotation mode; convert refs and stack packages. 2018-07-27 10:17:21 -07:00
refs stateify: support explicit annotation mode; convert refs and stack packages. 2018-07-27 10:17:21 -07:00
seccomp stateify: support explicit annotation mode; convert refs and stack packages. 2018-07-27 10:17:21 -07:00
secio stateify: support explicit annotation mode; convert refs and stack packages. 2018-07-27 10:17:21 -07:00
segment Automated rollback of changelist 207037226 2018-08-02 10:42:48 -07:00
sentry runsc: Change cache policy for root fs and volume mounts. 2018-08-14 16:25:58 -07:00
sleep stateify: support explicit annotation mode; convert refs and stack packages. 2018-07-27 10:17:21 -07:00
state stateify: support explicit annotation mode; convert refs and stack packages. 2018-07-27 10:17:21 -07:00
sync stateify: support explicit annotation mode; convert refs and stack packages. 2018-07-27 10:17:21 -07:00
syserr stateify: support explicit annotation mode; convert refs and stack packages. 2018-07-27 10:17:21 -07:00
syserror stateify: support explicit annotation mode; convert refs and stack packages. 2018-07-27 10:17:21 -07:00
tcpip Basic support for ip link/addr and ifconfig 2018-08-08 22:39:58 -07:00
tmutex stateify: support explicit annotation mode; convert refs and stack packages. 2018-07-27 10:17:21 -07:00
unet stateify: support explicit annotation mode; convert refs and stack packages. 2018-07-27 10:17:21 -07:00
urpc stateify: support explicit annotation mode; convert refs and stack packages. 2018-07-27 10:17:21 -07:00
waiter Automated rollback of changelist 207037226 2018-08-02 10:42:48 -07:00