2008-09-09 19:46:45

by Aaron Straus

[permalink] [raw]
Subject: Re: [NFS] blocks of zeros (NULLs) in NFS files in kernels >= 2.6.20

Hi,

On Sep 08 05:15 PM, Chuck Lever wrote:
> I think I saw some recent work in Trond's development branch that
> makes some changes in this area. I will wait for him to respond to
> this thread.

One other piece of information.

Of the bisected offending commit:

commit e261f51f25b98c213e0b3d7f2109b117d714f69d
Author: Trond Myklebust <[email protected]>
Date: Tue Dec 5 00:35:41 2006 -0500

NFS: Make nfs_updatepage() mark the page as dirty.

This will ensure that we can call set_page_writeback() from within
nfs_writepage(), which is always called with the page lock set.

Signed-off-by: Trond Myklebust <[email protected]>


It seems to be this hunk which introduces the problem:


@@ -628,7 +667,6 @@ static struct nfs_page * nfs_update_request(struct nfs_open_context* ctx,
return ERR_PTR(error);
}
spin_unlock(&nfsi->req_lock);
- nfs_mark_request_dirty(new);
return new;
}
spin_unlock(&nfsi->req_lock);



If I add that function call back in... the problem disappears. I don't
know if this just papers over the real problem though?


Thanks,
=a=





--
===================
Aaron Straus
aaron-bYFJunmd+ZV8UrSeD/[email protected]


Attachments:
(No filename) (1.20 kB)
signature.asc (191.00 B)
Digital signature
Download all attachments