OSDN Git Service

fuse: update mtime on open(O_TRUNC) in atomic_o_trunc mode
authorMaxim Patlasov <MPatlasov@parallels.com>
Mon, 28 Apr 2014 12:19:22 +0000 (14:19 +0200)
committerMiklos Szeredi <mszeredi@suse.cz>
Mon, 28 Apr 2014 12:19:22 +0000 (14:19 +0200)
commit75caeecdf9c7151af5f7d972e2dabbff1bef30a7
tree0f03f7edbb32c1a923c72cfc38d2eecb1317d312
parent009dd694e82098a703b8b5c8dd9f54c131dbb9b3
fuse: update mtime on open(O_TRUNC) in atomic_o_trunc mode

In case of fc->atomic_o_trunc is set, fuse does nothing in
fuse_do_setattr() while handling open(O_TRUNC). Hence, i_mtime must be
updated explicitly in fuse_finish_open(). The patch also adds extra locking
encompassing open(O_TRUNC) operation to avoid races between the truncation
and updating i_mtime.

Signed-off-by: Maxim Patlasov <MPatlasov@parallels.com>
Signed-off-by: Miklos Szeredi <mszeredi@suse.cz>
fs/fuse/file.c