Received: by 10.192.165.156 with SMTP id m28csp2087562imm; Thu, 12 Apr 2018 08:24:27 -0700 (PDT) X-Google-Smtp-Source: AIpwx499G1CB6T2UFzvZSlZJ9s70wOlFBlnb9TEbPzDGloT7OpzLMDZo+mjRfA5rPnbYZeb8jIGn X-Received: by 10.99.120.138 with SMTP id t132mr1056806pgc.280.1523546666989; Thu, 12 Apr 2018 08:24:26 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1523546666; cv=none; d=google.com; s=arc-20160816; b=heyl9sXDXEN5Lzn+64ALQZNCKSTrKyoB+5ZuewoEC9SdyIwAtJNg0u/KIHNGPk7FIG WEnNCD9SSfJvVuIUW4+bkpviT/aFk64jwtcFRbFObWD10PQ27S+Ry6YhyyPQFDfb0HYj QFpeSHgxpCYYmVDDv5NjgrTMf/G0SIcEY9TvjLe3pfGnWwo6KxOTd9Ld/EoHMw4zzzzm 5RBwUC9EWbJAd7/5VygZXsCyENyUbWot5oJA+lrrmixP4IH8EdJBH2tqhOZQMxlomIJ7 bdLVdKmrR6gDN5d8EPyFBhqLoo2X/re8oazPXGBpmNyztgxzMg989gZMnxUfLEJeXHp8 iyGA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:references:in-reply-to:message-id:date :subject:cc:to:from:arc-authentication-results; bh=XNFA902IJSMjfWeyhYuQpb4XMVGRxtT7zbWhEXz1HFY=; b=luyLO91EcChbaIp7CJlmmEPLGsuvduOPy518ICxMgVj+a2oLF7QUDsyX6KoAi2Ml8k BtdR4OxSED3UdKBvEaPRRYzcUR8uGca6+MK549uZo6nQlhL62Z7fkqMG72VmpEzEuKwL s7y0tGNnL6laBi+vrNYaQCYVjwz5GiB27fnuHnXcFBT3vIf/y1WB6LP36ONUSh9zhnLv DyW0zAVTTCX7p7rKedBgBIEUAdRGWcAKxUn4QKY30sppg7ZjzoI9fs99qF/m179WEufn KNYICV+q5L1o/KF8xWe0pmlLILoVJooFF429OsIMHDvAkV5j16hW+bgY3lsqUUzn6PWo Yo8g== ARC-Authentication-Results: i=1; mx.google.com; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=redhat.com Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id m1-v6si3473383plk.577.2018.04.12.08.23.50; Thu, 12 Apr 2018 08:24:26 -0700 (PDT) Received-SPF: pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) client-ip=209.132.180.67; Authentication-Results: mx.google.com; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=redhat.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1753957AbeDLPTF (ORCPT + 99 others); Thu, 12 Apr 2018 11:19:05 -0400 Received: from mail-wr0-f196.google.com ([209.85.128.196]:41095 "EHLO mail-wr0-f196.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1753468AbeDLPI4 (ORCPT ); Thu, 12 Apr 2018 11:08:56 -0400 Received: by mail-wr0-f196.google.com with SMTP id s12so5460756wrc.8 for ; Thu, 12 Apr 2018 08:08:55 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references; bh=XNFA902IJSMjfWeyhYuQpb4XMVGRxtT7zbWhEXz1HFY=; b=CdEzm+vDWzkaYz7LX9dDXo1KNJt0DzS4TmxKrm68aETZqT4azf0bZV+qhOI1y3hlCc C4qyoSl6aJscj7HLZus48wC7sCEJj1E+JnFMTuXn6Mle6r757X6k+dGJ8iugPghrD49F GcbVyybDsAS3cBrBFrMR4Z77fbQNU6iPYsT/HHdNKI6macrQn/8lweZnsMc2kWNlg2rD h12obw4GaHaWpRb/Pfh5MxuSFEKITCzG+4Rl599cParvQ0PKlFM0QBft26lDJbhhiB73 6vmKlLqbvz0Cm3dFQdS85VsJ0Eq1ocagKXSkME/QJx2LR2sYAepCrVVB5zxtrB/XkEJq qNPA== X-Gm-Message-State: ALQs6tCysSYQiFTikLs0+tHAABEmbbJx7JWXww1EfbEFaDL1BCSI/h/Y xGxr4iD+JWZKSBLVLlWBdUHm0w== X-Received: by 10.223.138.148 with SMTP id y20mr1042755wry.44.1523545734722; Thu, 12 Apr 2018 08:08:54 -0700 (PDT) Received: from veci.piliscsaba.redhat.com (catv-176-63-54-97.catv.broadband.hu. [176.63.54.97]) by smtp.gmail.com with ESMTPSA id p197sm2621783wme.43.2018.04.12.08.08.53 (version=TLS1_2 cipher=ECDHE-RSA-CHACHA20-POLY1305 bits=256/256); Thu, 12 Apr 2018 08:08:54 -0700 (PDT) From: Miklos Szeredi To: linux-unionfs@vger.kernel.org Cc: linux-fsdevel@vger.kernel.org, linux-kernel@vger.kernel.org Subject: [RFC PATCH 20/35] vfs: don't open real Date: Thu, 12 Apr 2018 17:08:11 +0200 Message-Id: <20180412150826.20988-21-mszeredi@redhat.com> X-Mailer: git-send-email 2.14.3 In-Reply-To: <20180412150826.20988-1-mszeredi@redhat.com> References: <20180412150826.20988-1-mszeredi@redhat.com> Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Let overlayfs do its thing when opening a file. This enables stacking and fixes the corner case when a file is opened for read, modified through a writable open, and data is read from the read-only file. After this patch the read-only open will not return stale data even in this case. Signed-off-by: Miklos Szeredi --- fs/open.c | 7 +------ 1 file changed, 1 insertion(+), 6 deletions(-) diff --git a/fs/open.c b/fs/open.c index d509705d5740..1d1a52908b0f 100644 --- a/fs/open.c +++ b/fs/open.c @@ -857,13 +857,8 @@ EXPORT_SYMBOL(file_path); int vfs_open(const struct path *path, struct file *file, const struct cred *cred) { - struct dentry *dentry = d_real(path->dentry, NULL, file->f_flags, 0); - - if (IS_ERR(dentry)) - return PTR_ERR(dentry); - file->f_path = *path; - return do_dentry_open(file, d_backing_inode(dentry), NULL, cred); + return do_dentry_open(file, d_backing_inode(path->dentry), NULL, cred); } struct file *path_open(const struct path *path, int flags, struct inode *inode, -- 2.14.3