Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1753334AbbEAEjp (ORCPT ); Fri, 1 May 2015 00:39:45 -0400 Received: from out02.mta.xmission.com ([166.70.13.232]:52102 "EHLO out02.mta.xmission.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1750728AbbEAEjm (ORCPT ); Fri, 1 May 2015 00:39:42 -0400 From: ebiederm@xmission.com (Eric W. Biederman) To: Hans de Bruin Cc: "linux-kernel\@vger.kernel.org" , linux-nfs@vger.kernel.org References: <543ED24D.4070905@xmsnet.nl> <5443F5A1.1050004@xmsnet.nl> <544A7933.3010702@xmsnet.nl> <544A7D5C.5060804@xmsnet.nl> <871tpx1gcx.fsf@x220.int.ebiederm.org> <544B7D9F.1070403@xmsnet.nl> <87k33ow65k.fsf@x220.int.ebiederm.org> <544C1E40.6070901@xmsnet.nl> Date: Thu, 30 Apr 2015 23:35:18 -0500 In-Reply-To: <544C1E40.6070901@xmsnet.nl> (Hans de Bruin's message of "Sun, 26 Oct 2014 00:03:44 +0200") Message-ID: <87pp6kewzd.fsf@x220.int.ebiederm.org> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/24.3 (gnu/linux) MIME-Version: 1.0 Content-Type: text/plain X-XM-AID: U2FsdGVkX19qCPBqPFl6mbBxhzd8l82TAuvdTBP+XTQ= X-SA-Exim-Connect-IP: 67.3.205.90 X-SA-Exim-Mail-From: ebiederm@xmission.com X-Spam-Report: * -1.0 ALL_TRUSTED Passed through trusted hosts only via SMTP * 0.0 TVD_RCVD_IP Message was received from an IP address * 0.7 XMSubLong Long Subject * 0.0 T_TM2_M_HEADER_IN_MSG BODY: No description available. * 0.8 BAYES_50 BODY: Bayes spam probability is 40 to 60% * [score: 0.5000] * -0.0 DCC_CHECK_NEGATIVE Not listed in DCC * [sa06 1397; Body=1 Fuz1=1 Fuz2=1] * 1.0 T_XMDrugObfuBody_00 obfuscated drug references * 0.1 XMSolicitRefs_0 Weightloss drug * 0.2 T_XMDrugObfuBody_14 obfuscated drug references * 1.0 XMSubMetaSx_00 1+ Sexy Words * 1.2 XMSubMetaSSx_00 1+ SortaSexy Words + 1 Sexy Word X-Spam-DCC: XMission; sa06 1397; Body=1 Fuz1=1 Fuz2=1 X-Spam-Combo: ****;Hans de Bruin X-Spam-Relay-Country: X-Spam-Timing: total 339 ms - load_scoreonly_sql: 0.03 (0.0%), signal_user_changed: 3.4 (1.0%), b_tie_ro: 2.6 (0.8%), parse: 0.75 (0.2%), extract_message_metadata: 20 (5.9%), get_uri_detail_list: 2.3 (0.7%), tests_pri_-1000: 9 (2.6%), tests_pri_-950: 1.26 (0.4%), tests_pri_-900: 1.06 (0.3%), tests_pri_-400: 23 (6.7%), check_bayes: 22 (6.4%), b_tokenize: 7 (1.9%), b_tok_get_all: 7 (2.2%), b_comp_prob: 2.4 (0.7%), b_tok_touch_all: 3.2 (0.9%), b_finish: 0.69 (0.2%), tests_pri_0: 269 (79.4%), tests_pri_500: 9 (2.6%), poll_dns_idle: 0.37 (0.1%), rewrite_mail: 0.00 (0.0%) Subject: Re: 3.17.0+ files disappearing after playing old dos game on nfsroot laptop X-Spam-Flag: No X-SA-Exim-Version: 4.2.1 (built Wed, 24 Sep 2014 11:00:52 -0600) X-SA-Exim-Scanned: Yes (on in02.mta.xmission.com) Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 2755 Lines: 64 Hans de Bruin writes: >> I expect what needs to happen is to confirm that nfs directory entry >> revalidation is buggy, and at least for the short term re-add the nfs >> logic that will avoid dropping a dentry if it is a mount point, or >> path to a mount point, to avoid the nfs bugs. >> > > ok, I will go in waiting mode. I dropped the ball on this but it looks like someone else hit the problem and the following two commits fixed this issue: Can you confirm that things are working again? commit fa9233699cc1dc236f4cf42245d13e40966938c5 Author: Trond Myklebust Date: Mon Feb 23 18:51:32 2015 -0500 NFS: Don't require a filehandle to refresh the inode in nfs_prime_dcache() If the server does not return a valid set of attributes that we can use to either create a file or refresh the inode, then there is no value in calling nfs_prime_dcache(). However if we're just refreshing the inode using the attributes that the server returned, then it shouldn't matter whether or not we have a filehandle, as long as we check the fsid+fileid combination. Signed-off-by: Trond Myklebust commit 6c441c254eea2354d686be7f5544bcd79fb6a61f Author: Trond Myklebust Date: Sun Feb 22 16:35:36 2015 -0500 NFS: Don't invalidate a submounted dentry in nfs_prime_dcache() If we're traversing a directory which contains a submounted filesystem, or one that has a referral, the NFS server that is processing the READDIR request will often return information for the underlying (mounted-on) directory. It may, or may not, also return filehandle information. If this happens, and the lookup in nfs_prime_dcache() returns the dentry for the submounted directory, the filehandle comparison will fail, and we call d_invalidate(). Post-commit 8ed936b5671bf ("vfs: Lazily remove mounts on unlinked files and directories."), this means the entire subtree is unmounted. The following minimal patch addresses this problem by punting on the invalidation if there is a submount. Kudos to Neil Brown for having tracked down this issue (see link). Reported-by: Nix Link: http://lkml.kernel.org/r/87iofju9ht.fsf@spindle.srvr.nix Cc: stable@vger.kernel.org # 3.18+ Signed-off-by: Trond Myklebust -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/