Received: by 2002:a25:f815:0:0:0:0:0 with SMTP id u21csp2248145ybd; Mon, 24 Jun 2019 03:16:01 -0700 (PDT) X-Google-Smtp-Source: APXvYqxYHb5flFMcE7skP707VCfEfLJfWcS4MNQz2LN+3QvOTvA52E9C3XynvjWMXE4a0y6XQTzU X-Received: by 2002:a17:902:1c9:: with SMTP id b67mr101937445plb.333.1561371361491; Mon, 24 Jun 2019 03:16:01 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1561371361; cv=none; d=google.com; s=arc-20160816; b=hj7K7f4tywKWivaOCnxiz5NMRta1aSeGoPKfvQTwlTJ+uXXzim6stdG2vwcrnA7f64 YqT2VG2N9jWWB8uYL+PGaa11wLuFQaGJ5rYGmk1O5fVROUv+3+zVECZuI6M8qZn4tiD9 2goNLuxKo4pwXQIVls4NFEIMBjhTK3K9Hyed4sbqEa7Dpx2p3z1M4OhEVxE0Jm0n0eel Jk3AVFhqXSZIDJI9+sSqogbKh3EFyGPLvb+t7EhCoqn33+ziqV/JJx7cfajJx5iBPujX QU020Vuaoh//uJPawc1OO4oA7cyT0Vn3JM6ZhKcmGm8vvMIgJvSbZ22ak+33iwGfSALS RCBA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:content-transfer-encoding:mime-version :user-agent:references:in-reply-to:message-id:date:subject:cc:to :from:dkim-signature; bh=h/XJzbou/4JkJxkxeFY/8bEIyklDIVk7lwWGnSv3niA=; b=jc2AzRA6Qq0KvSaCTQ3kdnS4uCLu7kBMEx55iPwJGU5xf5gBBJxPR5fRyqkR56spnb UAjHIr7/SUZDZbaSflND3tph/BsXJ3u24/Jj3b0GdCjMBMfAvqAXaAtdB3rsQyOq8T7i G7JMWxgqD/DStMpWQIF1cgknpNxOmXRz5CpY/xiFU6gMP6MZAFiuQBzhJeA3pfreK6sC oC20Jg0wggUGrRWhN2ucXQX3cXarq95Mfcll5U3cdVdhUHDrRkOzlJey7XqB36u2OWb3 uKgxi2aeMR9x+y2kKIqpXtdaA4vWXWddLpz1ZkIWkhk3MZ4Q8r3D5DFcVBis/uB+ZfWK KzVQ== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@kernel.org header.s=default header.b=Z9wAxgnY; 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 Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id p12si9547247plq.331.2019.06.24.03.15.46; Mon, 24 Jun 2019 03:16:01 -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; dkim=pass header.i=@kernel.org header.s=default header.b=Z9wAxgnY; 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 Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1729352AbfFXKCX (ORCPT + 99 others); Mon, 24 Jun 2019 06:02:23 -0400 Received: from mail.kernel.org ([198.145.29.99]:33472 "EHLO mail.kernel.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1729323AbfFXKCU (ORCPT ); Mon, 24 Jun 2019 06:02:20 -0400 Received: from localhost (f4.8f.5177.ip4.static.sl-reverse.com [119.81.143.244]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPSA id 0D879205ED; Mon, 24 Jun 2019 10:02:18 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=default; t=1561370539; bh=4Zi5ayb+WA2bZIyp+jOi5idTye1Efj6rfvQauYuZFos=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=Z9wAxgnYrYlYuwwM4a+MRGOjMPypfnxzSm5zUTHVvOZKxRN1bq+yIzDuP6gaIVh6E aUbIcsQWvbqTrlKdFaSiSGqPM2kAqoC3NIJYWakjZJJsDTFw0C4leWBkzsCnqTHeeg XWpApT+7hnJvvIhI5O3U6OBj58cd2VGHPPB39Dx8= From: Greg Kroah-Hartman To: linux-kernel@vger.kernel.org Cc: Greg Kroah-Hartman , stable@vger.kernel.org, Dave Chinner , Amir Goldstein , Miklos Szeredi , Sasha Levin Subject: [PATCH 4.19 04/90] ovl: support the FS_IOC_FS[SG]ETXATTR ioctls Date: Mon, 24 Jun 2019 17:55:54 +0800 Message-Id: <20190624092314.225510275@linuxfoundation.org> X-Mailer: git-send-email 2.22.0 In-Reply-To: <20190624092313.788773607@linuxfoundation.org> References: <20190624092313.788773607@linuxfoundation.org> User-Agent: quilt/0.66 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org [ Upstream commit b21d9c435f935014d3e3fa6914f2e4fbabb0e94d ] They are the extended version of FS_IOC_FS[SG]ETFLAGS ioctls. xfs_io -c "chattr " uses the new ioctls for setting flags. This used to work in kernel pre v4.19, before stacked file ops introduced the ovl_ioctl whitelist. Reported-by: Dave Chinner Fixes: d1d04ef8572b ("ovl: stack file ops") Cc: # v4.19 Signed-off-by: Amir Goldstein Signed-off-by: Miklos Szeredi Signed-off-by: Sasha Levin --- fs/overlayfs/file.c | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/fs/overlayfs/file.c b/fs/overlayfs/file.c index 00338b828f76..749532fd51d7 100644 --- a/fs/overlayfs/file.c +++ b/fs/overlayfs/file.c @@ -426,7 +426,8 @@ static unsigned int ovl_get_inode_flags(struct inode *inode) return ovl_iflags; } -static long ovl_ioctl_set_flags(struct file *file, unsigned long arg) +static long ovl_ioctl_set_flags(struct file *file, unsigned int cmd, + unsigned long arg) { long ret; struct inode *inode = file_inode(file); @@ -456,7 +457,7 @@ static long ovl_ioctl_set_flags(struct file *file, unsigned long arg) if (ret) goto unlock; - ret = ovl_real_ioctl(file, FS_IOC_SETFLAGS, arg); + ret = ovl_real_ioctl(file, cmd, arg); ovl_copyflags(ovl_inode_real(inode), inode); unlock: @@ -474,11 +475,13 @@ static long ovl_ioctl(struct file *file, unsigned int cmd, unsigned long arg) switch (cmd) { case FS_IOC_GETFLAGS: + case FS_IOC_FSGETXATTR: ret = ovl_real_ioctl(file, cmd, arg); break; case FS_IOC_SETFLAGS: - ret = ovl_ioctl_set_flags(file, arg); + case FS_IOC_FSSETXATTR: + ret = ovl_ioctl_set_flags(file, cmd, arg); break; default: -- 2.20.1