Received: by 2002:ad5:474a:0:0:0:0:0 with SMTP id i10csp90509imu; Fri, 14 Dec 2018 15:05:47 -0800 (PST) X-Google-Smtp-Source: AFSGD/VbcsbmeNjelCtP1gOQecnmWs/vBZtK8nb3uT1hvihbWNh2ppkuFNSJYh9wfXXn/c/3ign9 X-Received: by 2002:a17:902:2c03:: with SMTP id m3mr4362497plb.6.1544828747828; Fri, 14 Dec 2018 15:05:47 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1544828747; cv=none; d=google.com; s=arc-20160816; b=pWO2I9enTT9xjagpuKGQ55RnUTccrRee97e+sGQXCR0dUevEXpLLEp3AogyOaVC/9d wRApxn51kHIHRw93+G6YnN6ONrgu7Xx8W1Jys71jbSssTPdMwoTYzsfL/xHu56KTLGYi zdCqsGwezYgTa05TWrogsAcBWGSj38en+Ut/oRp7peJBxOh7niDIXZVTaNTJkauw4h60 9A4dhnORgskWWg4VI+Tc0ICiFhl8KvP76s++jDDz8/yeQfEOR4ym16N/zTfjCSkmZj6O 7zt/2uzoN2WT8st8MLCbO5bZ7LaRTp+rkKi2vqVl8GP3ETA1ubqgbXMhr0rTV2nvztFw LmGw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:user-agent:in-reply-to :content-disposition:mime-version:references:message-id:subject:cc :to:from:date; bh=yPv9HmXe2QGsWthigdtRKQHT7bY+R79HURXiDDMZev8=; b=QgsnOxKiCCD8zE4BkZYfE3zcB5X2rXu4ia90citiY/7AQr9r7bWDmvcs/7UXBFi8o7 bZDgPnQG1l1Hg58TGUgz19UyZgm3Z6+jtgRoAwnFzYt4Iea7DQQ5E85LSdm5+yy02zJW MJteuJjbl5pQk7KrjlRHlHdGg4yWVjfNWSBnvWgqvhZuOvCwEXZGwuJ7mQKI3wi3pOFO IxQzyGPuzkFSn8vTI8UHiyqrFgOAIKpL+G1ocL8yZ+OIk1AMX18ytXWXqew87qplfJBN R7vsop895eGA0LDiaNkln6fiU2p5s5ojDSqvQUxlA0jiFvKgIOfaVOqXXXKrBfxKNxNd 00Gg== 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 l3si4957793pld.229.2018.12.14.15.05.33; Fri, 14 Dec 2018 15:05:47 -0800 (PST) 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 S1730953AbeLNXEO (ORCPT + 99 others); Fri, 14 Dec 2018 18:04:14 -0500 Received: from mx1.redhat.com ([209.132.183.28]:59142 "EHLO mx1.redhat.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1726389AbeLNXEO (ORCPT ); Fri, 14 Dec 2018 18:04:14 -0500 Received: from smtp.corp.redhat.com (int-mx07.intmail.prod.int.phx2.redhat.com [10.5.11.22]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by mx1.redhat.com (Postfix) with ESMTPS id 3C61E3F73C; Fri, 14 Dec 2018 23:04:13 +0000 (UTC) Received: from madcap2.tricolour.ca (ovpn-112-24.phx2.redhat.com [10.3.112.24]) by smtp.corp.redhat.com (Postfix) with ESMTPS id 62CB810021B1; Fri, 14 Dec 2018 23:04:02 +0000 (UTC) Date: Fri, 14 Dec 2018 18:03:59 -0500 From: Richard Guy Briggs To: Paul Moore Cc: linux-fsdevel@vger.kernel.org, viro@zeniv.linux.org.uk, linux-kernel@vger.kernel.org, linux-audit@redhat.com, Eric Paris , sgrubb@redhat.com Subject: Re: [RFC PATCH ghak100 V1 0/2] audit: avoid umount hangs on missing mount Message-ID: <20181214230359.5a6hshxrj6kqu3ev@madcap2.tricolour.ca> References: <20181214162744.23sbfyl3rnwkgoie@madcap2.tricolour.ca> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: User-Agent: NeoMutt/20180716 X-Scanned-By: MIMEDefang 2.84 on 10.5.11.22 X-Greylist: Sender IP whitelisted, not delayed by milter-greylist-4.5.16 (mx1.redhat.com [10.5.110.30]); Fri, 14 Dec 2018 23:04:13 +0000 (UTC) Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On 2018-12-14 17:02, Paul Moore wrote: > On Fri, Dec 14, 2018 at 11:27 AM Richard Guy Briggs wrote: > > On 2018-12-12 08:03, Paul Moore wrote: > > > On Fri, Nov 16, 2018 at 12:34 PM Richard Guy Briggs wrote: > > > > On user and remote filesystems, a forced umount can still hang due to > > > > attemting to fetch the fcaps of a mounted filesystem that is no longer > > > > available. > > > > > > > > These two patches take different approaches to address this, one by > > > > avoiding the lookup when the MNT_FORCE flag is included, the other by > > > > providing a method to filter out auditing specified types of filesystems. > > > > > > > > This can happen on ceph, cifs, 9p, lustre, fuse (gluster) or NFS. > > > > > > > > Arguably the better way to address this issue is to disable auditing > > > > processes that touch removable filesystems. > > > > Please see the github issue tracker > > > > https://github.com/linux-audit/audit-kernel/issues/100 > > > > > > > > Richard Guy Briggs (2): > > > > audit: avoid fcaps on MNT_FORCE > > > > audit: moar filter PATH records keyed on filesystem magic > > > > > > > > fs/namei.c | 2 +- > > > > fs/namespace.c | 3 +++ > > > > include/linux/audit.h | 8 ++++++-- > > > > kernel/audit.c | 5 +++-- > > > > kernel/audit.h | 2 +- > > > > kernel/auditsc.c | 29 ++++++++++++++++++++++++++--- > > > > 6 files changed, 40 insertions(+), 9 deletions(-) > > > > > > Just to get this out of the way, don't use "moar", spell it properly. > > > > > > Beyond that, it's not clear to me from your cover letter if you are > > > proposing these patches as an "or" or as an "and"; assuming the > > > patch(es) are reasonable, do you want us to merge both of these > > > patches, or only the one we like the most? > > > > I would like each one to be considered on its own merits. > > > > The second was discussed back when the logs were flooded with "(null)" > > PATH records due to debugfs and tracefs noise. Do you agree with the > > general concept or not? > > I believe I was in favor of this back then, and I think it is still a > reasonable feature to add independent of the umount hang problem. I wasn't so keen then, but see more use for it now. > One possible enhancement might be to also support filesystem names and > not just magic numbers. This could either be done in userspace or the > kernel via AUDIT_FSNAME, or similar. If you do take the _FSNAME > approach you should have the kernel convert that to a magic number > when it translates the rule (performance reasons). I had looked at filesystem names previously with Steve and I seem to recall that was much better left to userspace to convert. The biggest challenge I see here is that in-kernel filsystems have all their magic numbers listed in the kernel, whereas discovering the magic numbers for fuse and other remote filesystems is a bit harder. This was one of the reasons I wanted to include the magic number in the name= field in patch #1 for ghak8 so it was easy to figure out what type of filesystem was involved. > > The first is being picked apart (rightfully) due to assumptions and > > choices made long ago in the audit system. So while it is still in far > > more flux than the second patch, I think it has the potential to fix the > > problem more correctly and permanently but in the process may challenge > > our rules about the format and invariability of audit records. The > > basic premise is to prevent audit from trying to get information (fcaps) > > from a filesystem that is likely to be far more ephemeral than local > > on-disk kernel filesystems or to fail to do so more gracefully. > > There is one minor nit: use "flags" instead of "lflags" in the > audit_inode parameter list, the local "flags" variable can be changed > to something else; the parameters are what callers see, make them > simple and familiar. Noted. > However, beyond that I think the general approach of not recording > fcaps is reasonable if we can't reliably do it. What do the fcaps > entries look like in this particular case, are they "0" or "?"? I > would suggest "?" is the correct answer here. I'd agree "?" would be the best option to make it clear it is not available rather than just zero. > paul moore - RGB -- Richard Guy Briggs Sr. S/W Engineer, Kernel Security, Base Operating Systems Remote, Ottawa, Red Hat Canada IRC: rgb, SunRaycer Voice: +1.647.777.2635, Internal: (81) 32635