Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S965780AbcKXOOc (ORCPT ); Thu, 24 Nov 2016 09:14:32 -0500 Received: from mail-oi0-f68.google.com ([209.85.218.68]:33796 "EHLO mail-oi0-f68.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S965606AbcKXOOa (ORCPT ); Thu, 24 Nov 2016 09:14:30 -0500 MIME-Version: 1.0 X-Originating-IP: [217.173.44.24] In-Reply-To: <1479984944-1017-2-git-send-email-mszeredi@redhat.com> References: <1479984944-1017-1-git-send-email-mszeredi@redhat.com> <1479984944-1017-2-git-send-email-mszeredi@redhat.com> From: Miklos Szeredi Date: Thu, 24 Nov 2016 15:14:03 +0100 Message-ID: Subject: Re: [PATCH 0/7] overlayfs: fix ro/rw fd data inconsistecies To: "linux-unionfs@vger.kernel.org" Cc: linux-fsdevel@vger.kernel.org, linux-kernel@vger.kernel.org, Miklos Szeredi Content-Type: text/plain; charset=UTF-8 Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 1242 Lines: 40 On Thu, Nov 24, 2016 at 11:55 AM, Miklos Szeredi wrote: > A file is opened for read-only, opened read-write (resulting in a copy up) > and modified. The data read back from the the read-only fd will be stale > in this case (the read-only file descriptor still refers to the lower, > unmodified file). > > This patchset fixes issues related to this corner case. > > The VFS impact is minimal and performance in the non-corner cases shouldn't > suffer. Git tree is here: git://git.kernel.org/pub/scm/linux/kernel/git/mszeredi/vfs.git #overlayfs-rorw Thanks, Miklos > --- > Miklos Szeredi (7): > vfs: allow overlayfs to intercept file ops > vfs: export filp_clone_open() > mm: ovl: copy-up on MAP_SHARED > ovl: add infrastructure for intercepting file ops > ovl: intercept read_iter > ovl: intercept mmap > ovl: intercept fsync > > fs/internal.h | 1 - > fs/open.c | 2 +- > fs/overlayfs/inode.c | 225 +++++++++++++++++++++++++++++++++++++++++++++++ > fs/overlayfs/overlayfs.h | 2 + > fs/overlayfs/super.c | 1 + > include/linux/fs.h | 1 + > mm/util.c | 22 +++++ > 7 files changed, 252 insertions(+), 2 deletions(-) > > -- > 2.5.5 >