linux-nfs.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Malahal Naineni <malahal@us.ibm.com>
To: NFS list <linux-nfs@vger.kernel.org>
Subject: Re: How does the client manage NFS3ERR_NOSPC ?
Date: Mon, 5 Mar 2012 15:42:35 -0600	[thread overview]
Message-ID: <20120305214235.GC21904@us.ibm.com> (raw)
In-Reply-To: <1330981266.2509.18.camel@lade.trondhjem.org>

Myklebust, Trond [Trond.Myklebust@netapp.com] wrote:
> On Mon, 2012-03-05 at 18:16 +0100, DENIEL Philippe wrote:
> > Hi List,
> > 
> > I ran a stupid test (using the kernel's knfsd) : I filled up completely 
> > a filesystem with a few big file. When it was 100% full (no free block 
> > at all), I ran a dd on it.
> > The dd said it could write 793 blocks of size 1mb  and failed on IO 
> > error. At the end, I could see an empty file in the NFS exported tree.
> > Question is :
> >     - why did I get EIO and not ENOSPC ?
> 
> Did the server actually return NFS3ERR_NOSPC, or did it return something
> else? If the server returns NFS3ERR_NOSPC, then I'd expect the client to
> translate that as ENOSPC.

AFAIR, the server returns ENOSPC but the Linux client has a bug under
certain cases that returns it as EIO. Filed a bug and Neil sent a patch
but I have not tested it yet.

I tried with various versions and they gave some differing results. I
think in one case fsync() got ENOSPC but close() got EIO (or the other
way around?)

Regards, Malahal.
PS: Easy way to reproduce the problem, just run the following:
dd if=/dev/zero of=./testfile conv=fdatasync


      reply	other threads:[~2012-03-05 21:42 UTC|newest]

Thread overview: 3+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2012-03-05 17:16 How does the client manage NFS3ERR_NOSPC ? DENIEL Philippe
2012-03-05 21:01 ` Myklebust, Trond
2012-03-05 21:42   ` Malahal Naineni [this message]

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=20120305214235.GC21904@us.ibm.com \
    --to=malahal@us.ibm.com \
    --cc=linux-nfs@vger.kernel.org \
    /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;
as well as URLs for NNTP newsgroup(s).