Daniel reported that dpkg(1) dies if the root filesystem is a hostfs because it does not expect fsync(2) to fail with EINVAL on directories. While fsync(2) is allowed to fail with EINVAL if the filesystem does not support it we can do better and use noop_fsync() to not confuse userspace further.
Cc: sta...@vger.kernel.org Reported-and-tested-by: Daniel Gröber <d...@darkboxed.org> Signed-off-by: Richard Weinberger <rich...@nod.at> --- fs/hostfs/hostfs_kern.c | 1 + 1 file changed, 1 insertion(+) diff --git a/fs/hostfs/hostfs_kern.c b/fs/hostfs/hostfs_kern.c index fd62cae..a7ac856 100644 --- a/fs/hostfs/hostfs_kern.c +++ b/fs/hostfs/hostfs_kern.c @@ -393,6 +393,7 @@ static const struct file_operations hostfs_dir_fops = { .llseek = generic_file_llseek, .iterate = hostfs_readdir, .read = generic_read_dir, + .fsync = noop_fsync, }; static int hostfs_writepage(struct page *page, struct writeback_control *wbc) -- 1.8.4.5 ------------------------------------------------------------------------------ New Year. New Location. New Benefits. New Data Center in Ashburn, VA. GigeNET is offering a free month of service with a new server in Ashburn. Choose from 2 high performing configs, both with 100TB of bandwidth. Higher redundancy.Lower latency.Increased capacity.Completely compliant. http://p.sf.net/sfu/gigenet _______________________________________________ User-mode-linux-devel mailing list User-mode-linux-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/user-mode-linux-devel