All of lore.kernel.org
 help / color / mirror / Atom feed
From: Peter Staubach <staubach@redhat.com>
To: chuck.lever@oracle.com
Cc: nfs@lists.sourceforge.net
Subject: Re: umount fails with device busy
Date: Fri, 24 Aug 2007 09:43:47 -0400	[thread overview]
Message-ID: <46CEE093.5050303@redhat.com> (raw)
In-Reply-To: <46CE03CB.4070300@oracle.com>

Chuck Lever wrote:
>
>
> Peter Staubach wrote:
>> Chuck Lever wrote:
>>>>>> When I run umount during these ops I get an device busy. Any help 
>>>>>> would be very appreciated!
>>>>>
>>>>> This is normal and expected behavior.  One problem may be that 
>>>>> your server is slow, and thus there are RPCs left outstanding for 
>>>>> a bit on your client after your application exits.  The COMMIT 
>>>>> calls from that trace suggest that there is dirty data the client 
>>>>> is writing back to the server. 
>>>>
>>>> It seems to me that this should not be the expected behavior unless
>>>> the file system is mounted "nocto".  Is it?
>>>
>>> I'm a little puzzled myself about what dirty data there might be 
>>> left after the application quits.  However, I'll be there is an 
>>> mmap() lurking somewhere in the background...
>>>
>>> Data that was dirtied via a mapped file is not subject to the 
>>> writeback part of close-to-open.
>>
>> I don't think that I agree with this last statement.  Although
>> it can not be implemented using the normal close system call,
>> something should trigger the flush of any dirty pages and wait
>> for them to complete.
>
> This is the way Linux implements dirty mmaps on NFS because that's the 
> way Linus wants it.  I didn't mean to imply that's the way it *should* 
> work, merely the way it *does* work in Linux.

Yes, I recognize that.  That's the way that it worked in Solaris
too, until I decided that it should work differently and implemented
it.

That said, I don't know how hard it would be to sell the new
semantic to Linus.  This may tie in with some other work that
I am doing, so perhaps I will give it a shot.

    Thanx...

       ps

-------------------------------------------------------------------------
This SF.net email is sponsored by: Splunk Inc.
Still grepping through log files to find problems?  Stop.
Now Search log events and configuration files using AJAX and a browser.
Download your FREE copy of Splunk now >>  http://get.splunk.com/
_______________________________________________
NFS maillist  -  NFS@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/nfs

  reply	other threads:[~2007-08-24 13:43 UTC|newest]

Thread overview: 14+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2007-08-23 18:45 umount fails with device busy z00t
2007-08-23 20:03 ` Chuck Lever
2007-08-23 20:14   ` Zoot
2007-08-23 20:32     ` Chuck Lever
2007-08-24 18:52       ` Zoot
2007-08-23 20:29   ` Peter Staubach
2007-08-23 20:35     ` Chuck Lever
2007-08-23 20:53       ` Peter Staubach
2007-08-23 22:01         ` Chuck Lever
2007-08-24 13:43           ` Peter Staubach [this message]
2007-08-23 21:15       ` Zoot
2007-08-23 20:39     ` Zoot
2007-08-23 20:53       ` Peter Staubach
2007-08-23 21:05         ` Zoot

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=46CEE093.5050303@redhat.com \
    --to=staubach@redhat.com \
    --cc=chuck.lever@oracle.com \
    --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.