public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
From: "Hans-Peter Jansen" <hpj@urpla.net>
To: linux-kernel@vger.kernel.org
Cc: Aaron Straus <aaron@merfinllc.com>,
	Chuck Lever <chuck.lever@oracle.com>, Neil Brown <neilb@suse.de>,
	Linux NFS Mailing List <linux-nfs@vger.kernel.org>,
	Trond Myklebust <trond.myklebust@fys.uio.no>
Subject: Re: [NFS] blocks of zeros (NULLs) in NFS files in kernels >= 2.6.20
Date: Mon, 22 Sep 2008 18:05:47 +0200	[thread overview]
Message-ID: <200809221805.48463.hpj@urpla.net> (raw)
In-Reply-To: <20080911184951.GB19054@merfinllc.com>

Hi Aaron, hi NFS hackers,

Am Donnerstag, 11. September 2008 schrieb Aaron Straus:
> Hi,
>
> On Sep 11 01:48 PM, Chuck Lever wrote:
> > Were you able to modify your writer to do real fsync system calls?  If
> > so, did it help?  That would be a useful data point.
>
> Yes/Yes.  Please see the attached tarball sync-test.tar.bz2.
>
> Inside you'll find the modified writer:  writer_sync.py
>
> That will call fsync on the file descriptor after each write.
>
> Also I added the strace and wireshark data for the sync and nosync
> cases.
>
> Note these are all tested with latest linus git:
>
>   d1c6d2e547148c5aa0c0a4ff6aac82f7c6da1d8b
>
> > Practically speaking this is often not enough for typical
> > applications, so NFS client implementations go to further (non-
> > standard) efforts to behave like a local file system.  This is simply
> > a question of whether we can address this while not creating
> > performance or correctness issues for other common use cases.
>
> Yep, I agree.  I'm not saying what we do now is "wrong" per the RFC
> (writing the file out of order).  It's just different from what we've
> done in the past (and somewhat unexpected).
>
> I'm still hoping there is a simple fix... but maybe not... :(

For what is worth, this behavior is visible in bog standard writing/reading 
files, (log files in my case, via the python logging package). It obviously 
deviates from local filesystem behavior, and former state of the linux 
nfs-client. Should we add patches to less, tail, and all other instruments 
for watching/analysing log files (just to pick the tip of the ice rock) in 
order to throw away runs of zeros, when reading from nfs mounted files? Or 
should we ask their maintainers to add locking code for the nfs "read 
files, which are written at the same time" case, just to work around 
__some__ of the consequences of this bug? Imagine, how ugly this is going 
to look! 

The whole issue is what I call a major regression, thus I strongly ask for a 
reply from Trond on this matter.

I even vote for sending a revert request for this hunk to the stable team, 
where it is applicable, after Trond sorted it out (for 2.6.27?).

Thanks, Aaron and Chuck for the detailed analysis - it demystified a wired 
behavior, I observed here. When you're in a process to get real work done 
in a fixed timeline, such things could make you mad..

Cheers,
Pete

  reply	other threads:[~2008-09-22 16:06 UTC|newest]

Thread overview: 25+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2008-09-05 19:19 blocks of zeros (NULLs) in NFS files in kernels >= 2.6.20 Aaron Straus
2008-09-05 19:56 ` [NFS] " Chuck Lever
2008-09-05 20:04   ` Aaron Straus
2008-09-05 20:36     ` Bernd Eckenfels
2008-09-05 20:36     ` Chuck Lever
2008-09-05 22:14       ` Aaron Straus
2008-09-06  0:03   ` Aaron Straus
2008-09-08 19:02   ` Aaron Straus
2008-09-08 21:15     ` Chuck Lever
2008-09-08 22:02       ` Aaron Straus
2008-09-09 19:46       ` Aaron Straus
2008-09-11 16:55         ` Chuck Lever
2008-09-11 17:19           ` Aaron Straus
2008-09-11 17:48             ` Chuck Lever
2008-09-11 18:49               ` Aaron Straus
2008-09-22 16:05                 ` Hans-Peter Jansen [this message]
2008-09-22 16:35                   ` Trond Myklebust
2008-09-22 17:04                     ` Aaron Straus
2008-09-22 17:26                       ` Chuck Lever
2008-09-22 17:37                         ` Aaron Straus
2008-09-22 17:29                       ` Trond Myklebust
2008-09-22 17:45                         ` Aaron Straus
2008-09-22 18:43                           ` Aaron Straus
2008-09-22 18:45                           ` Hans-Peter Jansen
2008-09-22 18:45                     ` Hans-Peter Jansen

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=200809221805.48463.hpj@urpla.net \
    --to=hpj@urpla.net \
    --cc=aaron@merfinllc.com \
    --cc=chuck.lever@oracle.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-nfs@vger.kernel.org \
    --cc=neilb@suse.de \
    --cc=trond.myklebust@fys.uio.no \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox