All of lore.kernel.org
 help / color / mirror / Atom feed
From: Boaz Harrosh <bharrosh@panasas.com>
To: Benny Halevy <bhalevy@tonian.com>
Cc: NFS list <linux-nfs@vger.kernel.org>
Subject: Re: Does our Kernel PNFSD-Server supports recurring layout_get with open_state_id
Date: Thu, 24 May 2012 16:49:01 +0300	[thread overview]
Message-ID: <4FBE3C4D.7050507@panasas.com> (raw)
In-Reply-To: <4FBE2C8C.9090403@tonian.com>

On 05/24/2012 03:41 PM, Benny Halevy wrote:

> On 2012-05-24 03:16, Boaz Harrosh wrote:
>>
>> Benny hi
>>
>> If I remember/understand correctly, there is a mode in the RFC errata
>> about the layout forgetful-model and a client sending a layout_get with
>> an open_state_id after he already had previous state (layouts) on the file.
>>
>> As I understood this is an indication to the server that client has
>> "forgotten" all it's layouts on a file, and Server can assume their
>> return.
>>
>> Is my understanding correct?
> 
> Yes
> 
>>
>> If Yes:
>> 	Did we implement the internal return of all layouts, if above
>> 	open_state_id is encountered?
>> 	I thought we did but I can't find this code.
> 
> True.  This is not implemented yet.
> 
>>
>> Currently, I always set ROC so there is no leak. But theoretically
>> ROC does not have to be set. I'm doing some heavy lifting of
>> layout_return, and I want to make sure I have not missed a spot.
>>
>> If I'm correct that it is needed, and it's missing:
>> My suggestion for now is that we always set ROC, disregarding FS so not to
>> leak layouts and therefor inode-refs, until such time that we implement it.
> 
> According to the new errata the server will have to simulate layout returns in the ROC
> case on last CLOSE if the (forgetful) client did not explicitly return the layout.
> This is not implemented either :-(
> 


Yes Benny it is implemented. I implemented it and you fix a bug I had. See:
	nfs4pnfsd.c::pnfsd_roc(...) 
and it's call site. It is called on last call and all is working well (except some locking
bugs I'll send a fix to later). Otherwise both exofs and DF would have crapped out for sure.

With ROC set all work well. This is why I say we should set it for now to make sure we do
not have the above bug.

Thanks
Boaz

> Benny
> 
>>
>> Thanks
>> Boaz
>> --
>> To unsubscribe from this list: send the line "unsubscribe linux-nfs" in
>> the body of a message to majordomo@vger.kernel.org
>> More majordomo info at  http://vger.kernel.org/majordomo-info.html



  reply	other threads:[~2012-05-24 13:49 UTC|newest]

Thread overview: 24+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2012-05-24  0:16 Does our Kernel PNFSD-Server supports recurring layout_get with open_state_id Boaz Harrosh
2012-05-24 12:41 ` Benny Halevy
2012-05-24 13:49   ` Boaz Harrosh [this message]
2012-05-24 13:50     ` Boaz Harrosh
2012-05-28 16:05     ` Benny Halevy
2012-05-28 16:09       ` [PATCH 1/5] pnfsd: make return_on_close state layout-global for the file/client Benny Halevy
2012-05-28 16:38         ` Boaz Harrosh
2012-05-28 16:09       ` [PATCH 2/5] SQUASHME: pnfsd: use LR_FLAG_INTERN for pnfsd_roc implicit layout return Benny Halevy
2012-05-28 16:09       ` [PATCH 3/5] pnfsd: add debug printouts to pnfsd_roc Benny Halevy
2012-05-28 16:53         ` Boaz Harrosh
2012-05-28 17:59           ` Benny Halevy
2012-05-28 16:09       ` [PATCH 4/5] pnfsd-lexp: return_on_close config option Benny Halevy
2012-05-28 16:52         ` Boaz Harrosh
2012-05-28 17:58           ` Benny Halevy
2012-05-28 18:01             ` Benny Halevy
2012-05-28 18:08               ` Benny Halevy
2012-05-28 18:05             ` Boaz Harrosh
2012-05-28 16:09       ` [PATCH 5/5] SQUASHME: pnfsd: lrs_present is false by default Benny Halevy
2012-05-28 16:36       ` Does our Kernel PNFSD-Server supports recurring layout_get with open_state_id Boaz Harrosh
2012-05-28 17:55         ` Benny Halevy
2012-05-28 18:09           ` Boaz Harrosh
2012-05-28 18:29             ` Benny Halevy
2012-05-29  7:13               ` Boaz Harrosh
2012-05-31  6:35                 ` Benny Halevy

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=4FBE3C4D.7050507@panasas.com \
    --to=bharrosh@panasas.com \
    --cc=bhalevy@tonian.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 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.