Re: 2.6.2-rc2 nfsd+xfs spins in i_size_read()

Christoph Hellwig
2004-02-04T15:17:01Z

On Tue, Feb 03, 2004 at 08:13:04AM -0600, Steve Lord wrote:
> > ip->i_rdev = rdev;
> > - else if (S_ISDIR(mode))
> > - validate_fields(ip);
> > + validate_fields(ip);
>
> There was some reason this was only necessary on directories, but I
> cannot remember why just now.

Well, it is nessecary now to update i_size. Or rather it was, I think
I can get rid of it again after taking care of initialize_vnode.

> I think this should work, it just leaves the extending O_DIRECT write
> case.

And initialize_vnode. I have a working patch for the latter, but I still
need to take a look at O_DIRECT.

> Keeping the revalidate call out of the path for creating regular
> files would be nice though, why did you deem that necessary?

I thought I need it for i_size udates, but we should be able to take
care of it in initialize_vnode.