Re: 2.6.19-rc2-mm2 : empty files on vfat file system

Andrew Morton
2006-10-21T20:24:39Z

On Sat, 21 Oct 2006 13:19:32 -0700
Andrew Morton <akpm@osdl.org> wrote:

> On Sat, 21 Oct 2006 19:38:49 +0200
> Damien Wyart <damien.wyart@free.fr> wrote:
>
> > > --- a/fs/fat/inode.c~fs-prepare_write-fixes
> > > +++ a/fs/fat/inode.c
> > > @@ -150,7 +150,11 @@ static int fat_commit_write(struct file
> > > unsigned from, unsigned to)
> > > {
> > > struct inode *inode = page->mapping->host;
> > > - int err = generic_commit_write(file, page, from, to);
> > > + int err;
> > > + if (to - from > 0)
> > > + return 0;
> > > +
>
> That should have been
>
> if (to - from == 0)
> return 0;

otoh, it's still wrong that we're not updating i_size. We happen to know
that the caller will retry without dropping i_mutex, but it's a bit
incestuous.