summary refs log tree commit diff
path: root/p9
diff options
context:
space:
mode:
authorChirantan Ekbote <chirantan@chromium.org>2020-03-09 18:46:55 +0900
committerCommit Bot <commit-bot@chromium.org>2020-03-16 15:12:52 +0000
commit752f9c28703e447ab5b127cbac94493a7539eb36 (patch)
tree4dc306620ede4c0aa563e0ce73ad94c378c8fd15 /p9
parentcba39f2fefc7dd1f38ffdae8451e530f16c06038 (diff)
downloadcrosvm-752f9c28703e447ab5b127cbac94493a7539eb36.tar
crosvm-752f9c28703e447ab5b127cbac94493a7539eb36.tar.gz
crosvm-752f9c28703e447ab5b127cbac94493a7539eb36.tar.bz2
crosvm-752f9c28703e447ab5b127cbac94493a7539eb36.tar.lz
crosvm-752f9c28703e447ab5b127cbac94493a7539eb36.tar.xz
crosvm-752f9c28703e447ab5b127cbac94493a7539eb36.tar.zst
crosvm-752f9c28703e447ab5b127cbac94493a7539eb36.zip
devices: Ignore O_DIRECT in 9p and fs devices
Specifying O_DIRECT in the 9p device doesn't actually work correctly and
leads to an error.  O_DIRECT handling in the fs device works correctly
but also makes it look much worse in disk I/O benchmarks because the
block device gets the benefit of the host cache while the fs device
depends on the performance of the actual storage device.

BUG=none
TEST=`tast run vm.Fio.*`

Change-Id: I738e4032081e331ef956c9d4c33616607e403d86
Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/crosvm/+/2093967
Commit-Queue: Chirantan Ekbote <chirantan@chromium.org>
Tested-by: Chirantan Ekbote <chirantan@chromium.org>
Tested-by: kokoro <noreply+kokoro@google.com>
Reviewed-by: Dylan Reid <dgreid@chromium.org>
Reviewed-by: Daniel Verkamp <dverkamp@chromium.org>
Diffstat (limited to 'p9')
-rw-r--r--p9/src/server.rs2
1 files changed, 1 insertions, 1 deletions
diff --git a/p9/src/server.rs b/p9/src/server.rs
index b8a026f..e1ffd16 100644
--- a/p9/src/server.rs
+++ b/p9/src/server.rs
@@ -44,7 +44,7 @@ const MAPPED_FLAGS: [(u32, i32); 10] = [
     (P9_NONBLOCK, libc::O_NONBLOCK),
     (P9_DSYNC, libc::O_DSYNC),
     (P9_FASYNC, 0), // Unsupported
-    (P9_DIRECT, libc::O_DIRECT),
+    (P9_DIRECT, 0), // Unsupported
     (P9_LARGEFILE, libc::O_LARGEFILE),
     (P9_DIRECTORY, libc::O_DIRECTORY),
     (P9_NOFOLLOW, libc::O_NOFOLLOW),