From: Bas van der Vlies <basv@sara.nl>
To: nfs@lists.sourceforge.net
Subject: Re: NFSD/gfs crashes with oops
Date: Thu, 09 Mar 2006 08:39:23 +0100 [thread overview]
Message-ID: <440FDBAB.3000603@sara.nl> (raw)
In-Reply-To: <1141832193.8214.27.camel@lade.trondhjem.org>
Just for the recorde. The GFS guys have made a patch for the crash in
CVS stable:
CVSROOT: /cvs/cluster
Module name: cluster
Branch: STABLE
Changes by: bmarzins@sourceware.org 2006-03-08 20:47:09
Modified files:
gfs-kernel/src/gfs: ops_inode.c
Log message:
Really gross hack!!!
This is a workaround for one of the bugs the got lumped into 166701. It
breaks POSIX behavior in a corner case to avoid crashing... It's icky.
when NFS opens a file with O_CREAT, the kernel nfs daemon checks to see
if the file exists. If it does, nfsd does the *right thing* (either
opens the file, or if the file was opened with O_EXCL, returns an
error). If the file doesn't exist, it passes the request down to the
underlying file system. Unfortunately, since nfs *knows* that the file
doesn't exist, it doesn't bother to pass a nameidata structure, which
would include the intent information. However since gfs is a cluster
file system, the file could have been created on another node after nfs
checks for it. If this is the case, gfs needs the intent information to
do the *right thing*. It panics when it finds a NULL pointer, instead
of the nameidata. Now, instead of panicing, if gfs finds a NULL
nameidata pointer. It assumes that the file was not created with _EXCL.
This assumption could be wrong, with the result that an application
could thing that it has created a new file, when in fact, it has opened
an existing one.
--
--
********************************************************************
* *
* Bas van der Vlies e-mail: basv@sara.nl *
* SARA - Academic Computing Services phone: +31 20 592 8012 *
* Kruislaan 415 fax: +31 20 6683167 *
* 1098 SJ Amsterdam *
* *
********************************************************************
-------------------------------------------------------
This SF.Net email is sponsored by xPML, a groundbreaking scripting language
that extends applications into web and mobile media. Attend the live webcast
and join the prime developer group breaking into this new coding territory!
http://sel.as-us.falkag.net/sel?cmd=lnk&kid=110944&bid=241720&dat=121642
_______________________________________________
NFS maillist - NFS@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/nfs
prev parent reply other threads:[~2006-03-09 7:39 UTC|newest]
Thread overview: 7+ messages / expand[flat|nested] mbox.gz Atom feed top
2006-03-08 8:00 NFSD crashes with oops Bas van der Vlies
2006-03-08 14:08 ` Bas van der Vlies
2006-03-08 15:01 ` Bas van der Vlies
2006-03-08 15:05 ` Trond Myklebust
2006-03-08 15:23 ` Bas van der Vlies
2006-03-08 15:36 ` Trond Myklebust
2006-03-09 7:39 ` Bas van der Vlies [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=440FDBAB.3000603@sara.nl \
--to=basv@sara.nl \
--cc=nfs@lists.sourceforge.net \
/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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.