Received: by 2002:a05:6a10:f347:0:0:0:0 with SMTP id d7csp13686pxu; Thu, 3 Dec 2020 17:47:23 -0800 (PST) X-Google-Smtp-Source: ABdhPJzirdkM/efmPZnWAZWu3xT7EH6ULLFbjkem6A3lKDzZS7ZA741lIp0DTR/tuti/CkJPtmqB X-Received: by 2002:a05:6402:22b4:: with SMTP id cx20mr5380824edb.262.1607046442842; Thu, 03 Dec 2020 17:47:22 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1607046442; cv=none; d=google.com; s=arc-20160816; b=d3Gc4MUebT9u094jBFMYMS3hOJ1CwiU6o0VpO8q0Om5Kx4aFCb65H63jb5ouPbsgrN cy6alemTfwG7CLgXm63pGZQN5jr+2/jtu1qyrK5pjMHauWzrrjbVOpd3sL8jImzfzB8o RvaqgMTBOSNKr5PYil8oxKvr1SxJZXWP5fcHcpIcHvsafU9s9V6oNJE4IA1L1sL+Yjgf wbtv0/lx97SdWVldoQtCsL2dfnkNZkB5B9oXqmq7HYJhin7WYIzTcmnDU/eFME66Jf2H /zgKB5aBZayzCnc8KjXai/3njdvantlA7o9j6IyXeoNSgbRn0Ia/VDwlgZms/68ub2JB C10A== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:content-transfer-encoding:mime-version :references:in-reply-to:message-id:date:subject:cc:to:from :ironport-sdr:ironport-sdr; bh=NqTHWI1AE7M6mjn059V9qe/1sDVzSbVVRbMybTH56Co=; b=Jjbjpq2e+uB7hDdLELmTvvP/jbHxOuVTXtjTsEETOAWBf82s+tMKpKgLF8TUNHlnUH r32b8nHM9Yr2Wntuxih4WIalONKsfOpmVrbDWUGW7qCG16RPM4+9HyGQBXZco6Ac9nBW GwX3K8FPDDfs9ATvGNBtEcF3q3fErOk+7LCC28Eqg/HR8cx7zCzbM23YdwZSHlOZrqwr GyKsKMhvyQhignvrIuVm534yFyw4qtFXV+O7Yt96/U4isIChGlU6njEnVSHy4ebpMEK+ 1utlrxW3+ghGakFHrI/MMyYZ5to9LAPgbwXD+Wktd1FoO7DXDJt29Rq5CZdGPHmVly5F yzwQ== ARC-Authentication-Results: i=1; mx.google.com; spf=pass (google.com: domain of linux-ext4-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-ext4-owner@vger.kernel.org; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=intel.com Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id m3si452761ejd.499.2020.12.03.17.46.59; Thu, 03 Dec 2020 17:47:22 -0800 (PST) Received-SPF: pass (google.com: domain of linux-ext4-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) client-ip=23.128.96.18; Authentication-Results: mx.google.com; spf=pass (google.com: domain of linux-ext4-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-ext4-owner@vger.kernel.org; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=intel.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1726137AbgLDBqe (ORCPT + 99 others); Thu, 3 Dec 2020 20:46:34 -0500 Received: from mga01.intel.com ([192.55.52.88]:48195 "EHLO mga01.intel.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1725885AbgLDBqe (ORCPT ); Thu, 3 Dec 2020 20:46:34 -0500 IronPort-SDR: Nr1XHOaXJdH9XjWLkBjyTbWdoKTmf0TNK3z55S8/oD3ZbfvC3djXiDHv9E9SgGYn4yaA+5EVG5 U3TFWdNEZwIw== X-IronPort-AV: E=McAfee;i="6000,8403,9824"; a="191550560" X-IronPort-AV: E=Sophos;i="5.78,390,1599548400"; d="scan'208";a="191550560" X-Amp-Result: SKIPPED(no attachment in message) X-Amp-File-Uploaded: False Received: from orsmga005.jf.intel.com ([10.7.209.41]) by fmsmga101.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 03 Dec 2020 17:45:53 -0800 IronPort-SDR: pdrev79caLf9OpaDWWhlKyXnHidKdPFDKTc5unyM12YRNkHjmdcuieu7P4FJvRsIqmKWdXwZky 1D3asWomwszw== X-IronPort-AV: E=Sophos;i="5.78,390,1599548400"; d="scan'208";a="550753253" Received: from iweiny-desk2.sc.intel.com (HELO localhost) ([10.3.52.147]) by orsmga005-auth.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 03 Dec 2020 17:45:52 -0800 From: ira.weiny@intel.com To: fstests@vger.kernel.org, Christoph Hellwig , Eric Sandeen Cc: Ira Weiny , linux-kernel@vger.kernel.org, "Darrick J. Wong" , Dan Williams , Dave Chinner , "Theodore Y. Ts'o" , Jan Kara , Jeff Moyer , linux-ext4@vger.kernel.org, linux-xfs@vger.kernel.org, linux-fsdevel@vger.kernel.org, David Howells Subject: [PATCH V3] common/rc: Fix _check_s_dax() Date: Thu, 3 Dec 2020 17:45:50 -0800 Message-Id: <20201204014550.1736306-1-ira.weiny@intel.com> X-Mailer: git-send-email 2.28.0.rc0.12.gb6a658bd00c9 In-Reply-To: <20201202214629.1563760-1-ira.weiny@intel.com> References: <20201202214629.1563760-1-ira.weiny@intel.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Precedence: bulk List-ID: X-Mailing-List: linux-ext4@vger.kernel.org From: Ira Weiny There is a conflict with the user visible statx bits 'mount root' and 'dax'. The kernel is changing the dax bit to correct this conflict.[1] Adjust _check_s_dax() to use the new bit. Because DAX tests do not run on root mounts, STATX_ATTR_MOUNT_ROOT should always be 0. Therefore, check for the old flag and fail the test if that occurs. [1] https://lore.kernel.org/lkml/3e28d2c7-fbe5-298a-13ba-dcd8fd504666@redhat.com/ Signed-off-by: Ira Weiny --- Changes from V2: As suggested by Christoph and Eric: Fail the test with a hint as to why the wrong bit may be set. common/rc | 21 +++++++++++++++++++-- 1 file changed, 19 insertions(+), 2 deletions(-) diff --git a/common/rc b/common/rc index b5a504e0dcb4..5911a6c89a78 100644 --- a/common/rc +++ b/common/rc @@ -3221,10 +3221,27 @@ _check_s_dax() local exp_s_dax=$2 local attributes=$($XFS_IO_PROG -c 'statx -r' $target | awk '/stat.attributes / { print $3 }') + + # The original attribute bit value, STATX_ATTR_DAX (0x2000), conflicted + # with STATX_ATTR_MOUNT_ROOT. Therefore, STATX_ATTR_DAX was changed to + # 0x00200000. + # + # Because DAX tests do not run on root mounts, STATX_ATTR_MOUNT_ROOT + # should always be 0. Check for the old flag and fail the test if that + # occurs. + + if [ $(( attributes & 0x2000 )) -ne 0 ]; then + echo "$target has an unexpected STATX_ATTR_MOUNT_ROOT flag set" + echo "which used to be STATX_ATTR_DAX" + echo " This test should not be running on the root inode..." + echo " Does the kernel have the following patch?" + echo " 72d1249e2ffd uapi: fix statx attribute value overlap for DAX & MOUNT_ROOT" + fi + if [ $exp_s_dax -eq 0 ]; then - (( attributes & 0x2000 )) && echo "$target has unexpected S_DAX flag" + (( attributes & 0x00200000 )) && echo "$target has unexpected S_DAX flag" else - (( attributes & 0x2000 )) || echo "$target doesn't have expected S_DAX flag" + (( attributes & 0x00200000 )) || echo "$target doesn't have expected S_DAX flag" fi } -- 2.28.0.rc0.12.gb6a658bd00c9