From b2831a2db9e0370c5f797c037c135108025f2522 Mon Sep 17 00:00:00 2001 From: Daisuke Okitsu Date: Mon, 17 Feb 2014 10:33:11 +0100 Subject: [PATCH] Handle FUSE_FSYNCDIR as FUSE_FSYNC There have been issues with sdcard data corruption even after successfully calling fsync for /sdcard. This is caused by the sdcard daemon doing nothing in this case. Change-Id: I48149ceabdac79ac535b35c2598bb1fbb5410883 --- sdcard/sdcard.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/sdcard/sdcard.c b/sdcard/sdcard.c index cb03316f4..6a9c2eb94 100644 --- a/sdcard/sdcard.c +++ b/sdcard/sdcard.c @@ -1503,7 +1503,8 @@ static int handle_fuse_request(struct fuse *fuse, struct fuse_handler* handler, return handle_release(fuse, handler, hdr, req); } - case FUSE_FSYNC: { + case FUSE_FSYNC: + case FUSE_FSYNCDIR: { const struct fuse_fsync_in *req = data; return handle_fsync(fuse, handler, hdr, req); } @@ -1531,7 +1532,6 @@ static int handle_fuse_request(struct fuse *fuse, struct fuse_handler* handler, return handle_releasedir(fuse, handler, hdr, req); } -// case FUSE_FSYNCDIR: case FUSE_INIT: { /* init_in -> init_out */ const struct fuse_init_in *req = data; return handle_init(fuse, handler, hdr, req);