summaryrefslogtreecommitdiffstats
path: root/drivers/mtd/mtdchar.c
diff options
context:
space:
mode:
authorJoakim Tjernlund <Joakim.Tjernlund@transmode.se>2007-06-27 00:56:40 +0200
committerDavid Woodhouse <dwmw2@infradead.org>2007-06-28 19:40:32 +0200
commit7eafaed55f4b8599cfe55449a6ed88d3693954de (patch)
treee18c5c5f660c1d3cdbaf31e731231e829638aa0b /drivers/mtd/mtdchar.c
parent[JFFS2] Fix hanging close for /dev/mtd character device. (diff)
downloadlinux-7eafaed55f4b8599cfe55449a6ed88d3693954de.tar.xz
linux-7eafaed55f4b8599cfe55449a6ed88d3693954de.zip
[MTD] Only call mtd->sync() method in mtdchar close if opened for write.
Signed-off-by: Joakim Tjernlund <Joakim.Tjernlund@transmode.se> Signed-off-by: David Woodhouse <dwmw2@infradead.org>
Diffstat (limited to 'drivers/mtd/mtdchar.c')
-rw-r--r--drivers/mtd/mtdchar.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/drivers/mtd/mtdchar.c b/drivers/mtd/mtdchar.c
index 8c86b802f212..942c88ec5b6a 100644
--- a/drivers/mtd/mtdchar.c
+++ b/drivers/mtd/mtdchar.c
@@ -135,7 +135,8 @@ static int mtd_close(struct inode *inode, struct file *file)
DEBUG(MTD_DEBUG_LEVEL0, "MTD_close\n");
- if (mtd->sync)
+ /* Only sync if opened RW */
+ if ((file->f_mode & 2) && mtd->sync)
mtd->sync(mtd);
put_mtd_device(mtd);