From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-12.8 required=3.0 tests=BAYES_00,DKIM_INVALID, DKIM_SIGNED,INCLUDES_PATCH,MAILING_LIST_MULTI,SIGNED_OFF_BY,SPF_HELO_NONE, SPF_PASS,USER_AGENT_GIT autolearn=ham autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id EA9DEC433E1 for ; Fri, 21 Aug 2020 16:18:08 +0000 (UTC) Received: from kanga.kvack.org (kanga.kvack.org [205.233.56.17]) by mail.kernel.org (Postfix) with ESMTP id AF6342063A for ; Fri, 21 Aug 2020 16:18:08 +0000 (UTC) Authentication-Results: mail.kernel.org; dkim=fail reason="signature verification failed" (1024-bit key) header.d=kernel.org header.i=@kernel.org header.b="0fzsGDqT" DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org AF6342063A Authentication-Results: mail.kernel.org; dmarc=fail (p=none dis=none) header.from=kernel.org Authentication-Results: mail.kernel.org; spf=pass smtp.mailfrom=owner-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix) id 572B88D0066; Fri, 21 Aug 2020 12:18:08 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id 4A88B8D0013; Fri, 21 Aug 2020 12:18:08 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 34A6B8D0066; Fri, 21 Aug 2020 12:18:08 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from forelay.hostedemail.com (smtprelay0033.hostedemail.com [216.40.44.33]) by kanga.kvack.org (Postfix) with ESMTP id 15B928D0013 for ; Fri, 21 Aug 2020 12:18:08 -0400 (EDT) Received: from smtpin12.hostedemail.com (10.5.19.251.rfc1918.com [10.5.19.251]) by forelay05.hostedemail.com (Postfix) with ESMTP id BE7EF181AEF00 for ; Fri, 21 Aug 2020 16:18:07 +0000 (UTC) X-FDA: 77175082614.12.class15_4b0512a2703a Received: from filter.hostedemail.com (10.5.16.251.rfc1918.com [10.5.16.251]) by smtpin12.hostedemail.com (Postfix) with ESMTP id 65278180555D0 for ; Fri, 21 Aug 2020 16:18:07 +0000 (UTC) X-HE-Tag: class15_4b0512a2703a X-Filterd-Recvd-Size: 3702 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by imf26.hostedemail.com (Postfix) with ESMTP for ; Fri, 21 Aug 2020 16:18:06 +0000 (UTC) Received: from sasha-vm.mshome.net (c-73-47-72-35.hsd1.nh.comcast.net [73.47.72.35]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPSA id DAC3422BF5; Fri, 21 Aug 2020 16:18:04 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=default; t=1598026686; bh=Zd9trFmb/P/F9p8nDs9AnkiHR6lVNPcpkIQyVaBL0kg=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=0fzsGDqTZtLE+pvHmcrtpm2bb/41nJqq9ZxAmWGInJB+ch5fv7W6tJ9PQD6EQw7By 4n31ww0vaAic9S8WaABom7/oZFCDsX5wtSFCqVm1zDBEOT5QzMrWFlj9sd01C8CSxA Ce0du8SOSWiyRkoBTmtQUCvsukx6fLehO3hXccKM= From: Sasha Levin To: linux-kernel@vger.kernel.org, stable@vger.kernel.org Cc: Mike Kravetz , syzbot+d6ec23007e951dadf3de@syzkaller.appspotmail.com, Amir Goldstein , Andrew Morton , Miklos Szeredi , Al Viro , Matthew Wilcox , Colin Walters , Linus Torvalds , Sasha Levin , linux-mm@kvack.org Subject: [PATCH AUTOSEL 5.4 48/48] hugetlbfs: prevent filesystem stacking of hugetlbfs Date: Fri, 21 Aug 2020 12:17:04 -0400 Message-Id: <20200821161704.348164-48-sashal@kernel.org> X-Mailer: git-send-email 2.25.1 In-Reply-To: <20200821161704.348164-1-sashal@kernel.org> References: <20200821161704.348164-1-sashal@kernel.org> MIME-Version: 1.0 X-stable: review X-Patchwork-Hint: Ignore X-Rspamd-Queue-Id: 65278180555D0 X-Spamd-Result: default: False [0.00 / 100.00] X-Rspamd-Server: rspam03 Content-Transfer-Encoding: quoted-printable X-Bogosity: Ham, tests=bogofilter, spamicity=0.000000, version=1.2.4 Sender: owner-linux-mm@kvack.org Precedence: bulk X-Loop: owner-majordomo@kvack.org List-ID: From: Mike Kravetz [ Upstream commit 15568299b7d9988063afce60731df605ab236e2a ] syzbot found issues with having hugetlbfs on a union/overlay as reported in [1]. Due to the limitations (no write) and special functionality of hugetlbfs, it does not work well in filesystem stacking. There are no know use cases for hugetlbfs stacking. Rather than making modifications to get hugetlbfs working in such environments, simply prevent stacking. [1] https://lore.kernel.org/linux-mm/000000000000b4684e05a2968ca6@google.= com/ Reported-by: syzbot+d6ec23007e951dadf3de@syzkaller.appspotmail.com Suggested-by: Amir Goldstein Signed-off-by: Mike Kravetz Signed-off-by: Andrew Morton Acked-by: Miklos Szeredi Cc: Al Viro Cc: Matthew Wilcox Cc: Colin Walters Link: http://lkml.kernel.org/r/80f869aa-810d-ef6c-8888-b46cee135907@oracl= e.com Signed-off-by: Linus Torvalds Signed-off-by: Sasha Levin --- fs/hugetlbfs/inode.c | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/fs/hugetlbfs/inode.c b/fs/hugetlbfs/inode.c index 40306c1eab07c..5fff7cb3582f0 100644 --- a/fs/hugetlbfs/inode.c +++ b/fs/hugetlbfs/inode.c @@ -1284,6 +1284,12 @@ hugetlbfs_fill_super(struct super_block *sb, struc= t fs_context *fc) sb->s_magic =3D HUGETLBFS_MAGIC; sb->s_op =3D &hugetlbfs_ops; sb->s_time_gran =3D 1; + + /* + * Due to the special and limited functionality of hugetlbfs, it does + * not work well as a stacking filesystem. + */ + sb->s_stack_depth =3D FILESYSTEM_MAX_STACK_DEPTH; sb->s_root =3D d_make_root(hugetlbfs_get_root(sb, ctx)); if (!sb->s_root) goto out_free; --=20 2.25.1