linux-fsdevel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* Re: help with understanding evict inode functionality
@ 2015-10-02 13:57 Leonid Fedorenchik
  2015-10-02 14:38 ` Kornievskaia, Olga
  0 siblings, 1 reply; 7+ messages in thread
From: Leonid Fedorenchik @ 2015-10-02 13:57 UTC (permalink / raw)
  To: Kornievskaia, Olga; +Cc: linux-fsdevel@vger.kernel.org

On Thu, 1 Oct 2015 22:54:08 +0000
"Kornievskaia, Olga" <Olga.Kornievskaia@netapp.com> wrote:

> [...]
>
> In NFS development, we’ve been seeing a race between reopening of the same file and evict inode code and unable figure out how to prevent such race. When file is opened for the first timed and then closed. As the last reference is dropped and iput_final() calls evict() which will call filesystem specific evict_inode() code. As that’s happening a new open for the same file is happening and causes problems.
Recently we encountered similar situation with NFS, that is, after
evict_inode() & iget_locked() we were getting the same inode (same
i->i_ino) and without I_NEW bit set.

>
> Also can somebody suggest how to debug VFS code, as putting printks generates output for the local filesystem code as well.
You can call printk() only if current process is "nfsd" (at least,
that is what we did).

>
> Thank you.
>
> [...]

-- 

Best regards,
Leonid Fedorenchik

Software Engineer
Paragon Software Group
Skype: leonid.fedorenchik
http://www.paragon-software.com

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

^ permalink raw reply	[flat|nested] 7+ messages in thread
* help with understanding evict inode functionality
@ 2015-10-01 22:54 Kornievskaia, Olga
  0 siblings, 0 replies; 7+ messages in thread
From: Kornievskaia, Olga @ 2015-10-01 22:54 UTC (permalink / raw)
  To: linux-fsdevel@vger.kernel.org; +Cc: Kornievskaia, Olga

Hi folks,

Can somebody help explain evict inode functionality? Specifically I’m interested in know how it interacts with the opening of the same file again?

In NFS development, we’ve been seeing a race between reopening of the same file and evict inode code and unable figure out how to prevent such race. When file is opened for the first timed and then closed. As the last reference is dropped and iput_final() calls evict() which will call filesystem specific evict_inode() code. As that’s happening a new open for the same file is happening and causes problems.

Also can somebody suggest how to debug VFS code, as putting printks generates output for the local filesystem code as well. 

Thank you.

(I don’t subscribe to the mailing list please CC in the reply).


^ permalink raw reply	[flat|nested] 7+ messages in thread

end of thread, other threads:[~2015-10-15  9:53 UTC | newest]

Thread overview: 7+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2015-10-02 13:57 help with understanding evict inode functionality Leonid Fedorenchik
2015-10-02 14:38 ` Kornievskaia, Olga
2015-10-04  2:28   ` Theodore Ts'o
2015-10-04  6:01     ` Christoph Hellwig
2015-10-04 22:37       ` Theodore Ts'o
2015-10-15  9:53   ` Jan Kara
  -- strict thread matches above, loose matches on Subject: below --
2015-10-01 22:54 Kornievskaia, Olga

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).