linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Pete Wyckoff <pw@osc.edu>
To: Bob Smart <smart@hpc.CSIRO.AU>
Cc: trond.myklebust@fys.uio.no, linux-kernel@vger.kernel.org,
	jeroen@trout.hpc.CSIRO.AU, smart@trout.hpc.CSIRO.AU
Subject: Re: handling NFSERR_JUKEBOX
Date: Fri, 13 Jul 2001 10:06:50 -0400	[thread overview]
Message-ID: <20010713100650.D25733@osc.edu> (raw)
In-Reply-To: <200107100023.KAA00261@trout.hpc.CSIRO.AU>
In-Reply-To: <200107100023.KAA00261@trout.hpc.CSIRO.AU>; from smart@hpc.CSIRO.AU on Tue, Jul 10, 2001 at 10:23:40AM +1000

smart@hpc.CSIRO.AU said:
> http://mail-index.netbsd.org/tech-kern/1999/03/16/0002.html
> To save you looking the key point is:
> 
>   >Not sure. Is there a way that the server can say, "I got your request,
>   >but I'm too busy now, try again in a little bit." ??
> 
>   Isn't this what NFSERR_JUKEBOX is for?
> 
>   AFAIK, the protocol goes something like this:
> 
>   Client sends a request.
>   Server starts loading tape/optical disk/whatever.
>   Client resends request.
>   Server notices that this is a repeat of an earlier request which is already
>   in the "slow queue", and replies NFSERR_JUKEBOX (= "be patient, I'll send
>   the response eventually").
>   Client shuts up and waits.
>   Server completes request and sends response to client.
> 
> It seems that what the linux client is doing is returning error 528
> to the user program (cp is giving this error message). From 
> linux/errno.h:
> 
> #define EJUKEBOX  528     /* Request initiated, but will not complete 
>                              before timeout */
> 
> This is wrong because the nfs file system is hard mounted in my case
> - there is no timeout.
> 
> While it would be nice to do a perfect solution, it looks like
> a quick fix is to just ignore NFSERR_JUKEBOX from the server.

The comment is incorrect.  Take a look at the RFC for NFSv3.  There is
no duplicate request sent from the client for a JUKEBOX-supporting
server.  The first request is satisfied by the return of EJUKEBOX, after
which it is up to the client to re-request the file.  Ignoring it is not
an option because the request is terminated; a retry does not make
sense.  A new request must be initiated by the client later.

Take a look at the nfs sourceforge mailing list.  There's a long thread
about this in the context of a Solaris HSM server.  I wrote a patch to
try to do the right thing on a linux client, but it is not perfect for
many reasons: http://devrandom.net/lists/archives/2001/6/NFS/0135.html

		-- Pete

  reply	other threads:[~2001-07-13 14:07 UTC|newest]

Thread overview: 10+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2001-07-10  0:23 handling NFSERR_JUKEBOX Bob Smart
2001-07-13 14:06 ` Pete Wyckoff [this message]
2001-11-06  5:21   ` Red Hat needs this patch (was Re: handling NFSERR_JUKEBOX) Bob Smart
2001-11-06  9:05     ` Trond Myklebust
2001-11-06  9:10       ` Marcelo Tosatti
2001-11-06 10:36       ` Bob Smart
2001-11-06 13:54         ` Trond Myklebust
2001-11-06 23:41           ` handling NFSERR_JUKEBOX Trond Myklebust
2001-11-08 16:20             ` Pete Wyckoff
2001-11-06 10:53       ` Red Hat needs this patch (was Re: handling NFSERR_JUKEBOX) Trond Myklebust

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=20010713100650.D25733@osc.edu \
    --to=pw@osc.edu \
    --cc=jeroen@trout.hpc.CSIRO.AU \
    --cc=linux-kernel@vger.kernel.org \
    --cc=smart@hpc.CSIRO.AU \
    --cc=smart@trout.hpc.CSIRO.AU \
    --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;
as well as URLs for NNTP newsgroup(s).