From patchwork Thu Sep 6 08:39:58 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Chandan Rajendra X-Patchwork-Id: 10590007 Return-Path: Received: from mail.wl.linuxfoundation.org (pdx-wl-mail.web.codeaurora.org [172.30.200.125]) by pdx-korg-patchwork-2.web.codeaurora.org (Postfix) with ESMTP id B47505A4 for ; Thu, 6 Sep 2018 08:38:15 +0000 (UTC) Received: from mail.wl.linuxfoundation.org (localhost [127.0.0.1]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id 946E72A15F for ; Thu, 6 Sep 2018 08:38:15 +0000 (UTC) Received: by mail.wl.linuxfoundation.org (Postfix, from userid 486) id 88BC42A3F7; Thu, 6 Sep 2018 08:38:15 +0000 (UTC) X-Spam-Checker-Version: SpamAssassin 3.3.1 (2010-03-16) on pdx-wl-mail.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-7.9 required=2.0 tests=BAYES_00,MAILING_LIST_MULTI, RCVD_IN_DNSWL_HI autolearn=ham version=3.3.1 Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id E50092A15F for ; Thu, 6 Sep 2018 08:38:14 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1728201AbeIFNMe (ORCPT ); Thu, 6 Sep 2018 09:12:34 -0400 Received: from mx0a-001b2d01.pphosted.com ([148.163.156.1]:34112 "EHLO mx0a-001b2d01.pphosted.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1728156AbeIFNMe (ORCPT ); Thu, 6 Sep 2018 09:12:34 -0400 Received: from pps.filterd (m0098394.ppops.net [127.0.0.1]) by mx0a-001b2d01.pphosted.com (8.16.0.22/8.16.0.22) with SMTP id w868Xw6s123365 for ; Thu, 6 Sep 2018 04:38:13 -0400 Received: from e32.co.us.ibm.com (e32.co.us.ibm.com [32.97.110.150]) by mx0a-001b2d01.pphosted.com with ESMTP id 2maye2v4j3-1 (version=TLSv1.2 cipher=AES256-GCM-SHA384 bits=256 verify=NOT) for ; Thu, 06 Sep 2018 04:38:13 -0400 Received: from localhost by e32.co.us.ibm.com with IBM ESMTP SMTP Gateway: Authorized Use Only! Violators will be prosecuted for from ; Thu, 6 Sep 2018 02:38:12 -0600 Received: from b03cxnp08026.gho.boulder.ibm.com (9.17.130.18) by e32.co.us.ibm.com (192.168.1.132) with IBM ESMTP SMTP Gateway: Authorized Use Only! Violators will be prosecuted; (version=TLSv1/SSLv3 cipher=AES256-GCM-SHA384 bits=256/256) Thu, 6 Sep 2018 02:38:10 -0600 Received: from b03ledav001.gho.boulder.ibm.com (b03ledav001.gho.boulder.ibm.com [9.17.130.232]) by b03cxnp08026.gho.boulder.ibm.com (8.14.9/8.14.9/NCO v10.0) with ESMTP id w868c9Nv42008792 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-GCM-SHA384 bits=256 verify=FAIL); Thu, 6 Sep 2018 01:38:09 -0700 Received: from b03ledav001.gho.boulder.ibm.com (unknown [127.0.0.1]) by IMSVA (Postfix) with ESMTP id 365A36E050; Thu, 6 Sep 2018 02:38:10 -0600 (MDT) Received: from b03ledav001.gho.boulder.ibm.com (unknown [127.0.0.1]) by IMSVA (Postfix) with ESMTP id 87EF06E052; Thu, 6 Sep 2018 02:38:08 -0600 (MDT) Received: from localhost.in.ibm.com (unknown [9.124.35.136]) by b03ledav001.gho.boulder.ibm.com (Postfix) with ESMTP; Thu, 6 Sep 2018 02:38:08 -0600 (MDT) From: Chandan Rajendra To: fstests@vger.kernel.org Cc: Chandan Rajendra , eguan@redhat.com, darrick.wong@oracle.com, linux-xfs@vger.kernel.org Subject: [PATCH V2 01/16] Fix xfs/009 to work with 64k block size Date: Thu, 6 Sep 2018 14:09:58 +0530 X-Mailer: git-send-email 2.9.5 In-Reply-To: <20180906084013.2687-1-chandan@linux.vnet.ibm.com> References: <20180906084013.2687-1-chandan@linux.vnet.ibm.com> X-TM-AS-GCONF: 00 x-cbid: 18090608-0004-0000-0000-00001484F455 X-IBM-SpamModules-Scores: X-IBM-SpamModules-Versions: BY=3.00009676; HX=3.00000242; KW=3.00000007; PH=3.00000004; SC=3.00000266; SDB=6.01084285; UDB=6.00559630; IPR=6.00864284; MB=3.00023141; MTD=3.00000008; XFM=3.00000015; UTC=2018-09-06 08:38:11 X-IBM-AV-DETECTION: SAVI=unused REMOTE=unused XFE=unused x-cbparentid: 18090608-0005-0000-0000-000088B7758E Message-Id: <20180906084013.2687-2-chandan@linux.vnet.ibm.com> X-Proofpoint-Virus-Version: vendor=fsecure engine=2.50.10434:,, definitions=2018-09-06_03:,, signatures=0 X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 priorityscore=1501 malwarescore=0 suspectscore=1 phishscore=0 bulkscore=0 spamscore=0 clxscore=1015 lowpriorityscore=0 mlxscore=0 impostorscore=0 mlxlogscore=999 adultscore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.0.1-1807170000 definitions=main-1809060091 Sender: fstests-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: fstests@vger.kernel.org X-Virus-Scanned: ClamAV using ClamSMTP xfs_alloc_file_space() rounds up allocation requests by the filesystem block size. Hence this commit changes the test to work with block size units rather than with a multiple of 4096 bytes. Signed-off-by: Chandan Rajendra --- tests/xfs/009 | 92 ++++++++++++++++++++++++++++++++++++++++++++++--------- tests/xfs/009.out | 66 +++++++++++++++++++-------------------- 2 files changed, 110 insertions(+), 48 deletions(-) diff --git a/tests/xfs/009 b/tests/xfs/009 index 68f6379..70717eb 100755 --- a/tests/xfs/009 +++ b/tests/xfs/009 @@ -14,9 +14,6 @@ here=`pwd` tmp=/tmp/$$ status=1 # failure is the default! trap "_cleanup; exit \$status" 0 1 2 3 15 -# This isn't really related to fs block size, it's just what -# alloc uses for the "block" unit in it's input parameters... -bsize=4096 _cleanup() { @@ -24,13 +21,6 @@ _cleanup() _scratch_unmount } -_block_filter() -{ - sed \ - -e 's/[0-9][0-9]*\.\.[0-9][0-9]*/BLOCKRANGE/g' \ - -e "s/blocksize $bsize/blocksize BSIZE/g" -} - _init() { echo "*** mkfs" @@ -49,11 +39,6 @@ _init() fi } -_filesize() -{ - ls -l $1 | $AWK_PROG '{print "filesize = " $5}' -} - # get standard environment, filters and checks . ./common/rc . ./common/filter @@ -64,9 +49,86 @@ _supported_os Linux _require_scratch +_filesize() +{ + ls -l $1 | $AWK_PROG -v bsize="$bsize" '{print "filesize = " $5 / bsize}' +} + +_block_filter() +{ + $AWK_PROG -v bsize="$bsize" ' + /blocksize/ { + printf(" blocksize BSIZE\n") + + next + } + + /CMD/ { + split($3, off, "=") + offset = strtonum(off[2]) + if (offset != -1) + offset = offset / bsize + + split($4, len, "=") + nr_blocks = strtonum(len[2]) + if (nr_blocks != -1) + nr_blocks = nr_blocks / bsize + + printf(" %s %s off=%s, len=%d\n", $1, $2, offset, nr_blocks) + + next + } + + /MAP/ { + split($2, off, "=") + offset = strtonum(off[2]) + if (offset != -1) + offset = offset / bsize + + split($3, len, "=") + + nr_blocks = strtonum(len[2]) + + if (nr_blocks != -1) + nr_blocks = nr_blocks / bsize + + printf(" %s off=%s, len=%d %s\n", $1, offset, nr_blocks, $4) + + next + } + + /TRUNCATE/ { + split($2, off, "=") + offset = strtonum(off[2]) / bsize + + printf(" %s off=%s\n", $1, offset) + + next + } + + /\[[0-9]+,[0-9]+\]:/ { + printf(" %s BLOCKRANGE\n", $1) + + next + } + + { + print + + next + } + ' +} + _init out=$SCRATCH_MNT/$$.tmp +# This isn't really related to fs block size, it's just what +# alloc uses for the "block" unit in it's input parameters... +# However, xfs_alloc_file_space() rounds up allocation +# request by the filesystem's block size. +bsize=$(_get_block_size $SCRATCH_MNT) + # since we're using a clean FS here, we make some assumptions # about availability of contiguous blocks diff --git a/tests/xfs/009.out b/tests/xfs/009.out index 7132aca..02b5d82 100644 --- a/tests/xfs/009.out +++ b/tests/xfs/009.out @@ -3,8 +3,8 @@ QA output created by 009 *** mount *** test 1 - reservations cleared on O_TRUNC blocksize BSIZE - CMD resvsp, off=0, len=4096000 - MAP off=0, len=4096000 [0,1000] + CMD resvsp, off=0, len=1000 + MAP off=0, len=1000 [0,1000] [ofs,count]: start..end [0,1000]: BLOCKRANGE MAP off=0, len=-1 [0-] @@ -17,53 +17,53 @@ filesize = 0 filesize = 0 *** test 2 - reserve & filesize blocksize BSIZE - CMD resvsp, off=0, len=4096000 - MAP off=0, len=4096000 [0,1000] + CMD resvsp, off=0, len=1000 + MAP off=0, len=1000 [0,1000] [ofs,count]: start..end [0,1000]: BLOCKRANGE filesize = 0 *** test 3 - alloc & filesize blocksize BSIZE - CMD allocsp, off=4096000, len=-1 - MAP off=4096000, len=-1 [1000-] + CMD allocsp, off=1000, len=-1 + MAP off=1000, len=-1 [1000-] [ofs,count]: start..end -filesize = 4096000 +filesize = 1000 *** test 4 - allocations cleared on O_TRUNC blocksize BSIZE - CMD allocsp, off=4096000, len=-1 - MAP off=4096000, len=-1 [1000-] + CMD allocsp, off=1000, len=-1 + MAP off=1000, len=-1 [1000-] [ofs,count]: start..end -filesize = 4096000 +filesize = 1000 blocksize BSIZE MAP off=0, len=-1 [0-] [ofs,count]: start..end filesize = 0 *** test 5 - reserve / unreserve blocksize BSIZE - CMD resvsp, off=0, len=409600 - MAP off=0, len=409600 [0,100] + CMD resvsp, off=0, len=100 + MAP off=0, len=100 [0,100] [ofs,count]: start..end [0,100]: BLOCKRANGE - CMD unresvsp, off=409600, len=2048000 - MAP off=409600, len=2048000 [100,500] + CMD unresvsp, off=100, len=500 + MAP off=100, len=500 [100,500] [ofs,count]: start..end MAP off=0, len=-1 [0-] [ofs,count]: start..end [0,100]: BLOCKRANGE - CMD unresvsp, off=3686400, len=819200 - MAP off=3686400, len=819200 [900,200] + CMD unresvsp, off=900, len=200 + MAP off=900, len=200 [900,200] [ofs,count]: start..end MAP off=0, len=-1 [0-] [ofs,count]: start..end [0,100]: BLOCKRANGE *** test 6 - reserve adjacent blocksize BSIZE - CMD resvsp, off=0, len=409600 - MAP off=0, len=409600 [0,100] + CMD resvsp, off=0, len=100 + MAP off=0, len=100 [0,100] [ofs,count]: start..end [0,100]: BLOCKRANGE - CMD resvsp, off=409600, len=409600 - MAP off=409600, len=409600 [100,100] + CMD resvsp, off=100, len=100 + MAP off=100, len=100 [100,100] [ofs,count]: start..end [100,100]: BLOCKRANGE MAP off=0, len=-1 [0-] @@ -71,44 +71,44 @@ filesize = 0 [0,200]: BLOCKRANGE *** test 7 - alloc blocksize BSIZE - CMD allocsp, off=4096000, len=-1 - MAP off=4096000, len=-1 [1000-] + CMD allocsp, off=1000, len=-1 + MAP off=1000, len=-1 [1000-] [ofs,count]: start..end MAP off=0, len=-1 [0-] [ofs,count]: start..end [0,1000]: BLOCKRANGE - CMD allocsp, off=8192000, len=-1 - MAP off=8192000, len=-1 [2000-] + CMD allocsp, off=2000, len=-1 + MAP off=2000, len=-1 [2000-] [ofs,count]: start..end MAP off=0, len=-1 [0-] [ofs,count]: start..end [0,2000]: BLOCKRANGE -filesize = 8192000 +filesize = 2000 *** test 8 - alloc & truncate blocksize BSIZE - CMD allocsp, off=4096000, len=-1 - MAP off=4096000, len=-1 [1000-] + CMD allocsp, off=1000, len=-1 + MAP off=1000, len=-1 [1000-] [ofs,count]: start..end MAP off=0, len=-1 [0-] [ofs,count]: start..end [0,1000]: BLOCKRANGE - TRUNCATE off=2048000 + TRUNCATE off=500 MAP off=0, len=-1 [0-] [ofs,count]: start..end [0,500]: BLOCKRANGE -filesize = 2048000 +filesize = 500 *** test 9 - reserve & truncate blocksize BSIZE - CMD resvsp, off=0, len=4096000 - MAP off=0, len=4096000 [0,1000] + CMD resvsp, off=0, len=1000 + MAP off=0, len=1000 [0,1000] [ofs,count]: start..end [0,1000]: BLOCKRANGE MAP off=0, len=-1 [0-] [ofs,count]: start..end [0,1000]: BLOCKRANGE - TRUNCATE off=2048000 + TRUNCATE off=500 MAP off=0, len=-1 [0-] [ofs,count]: start..end [0,1000]: BLOCKRANGE -filesize = 2048000 +filesize = 500 *** unmount From patchwork Thu Sep 6 08:39:59 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Chandan Rajendra X-Patchwork-Id: 10590013 Return-Path: Received: from mail.wl.linuxfoundation.org (pdx-wl-mail.web.codeaurora.org [172.30.200.125]) by pdx-korg-patchwork-2.web.codeaurora.org (Postfix) with ESMTP id 4D5DE6CB for ; Thu, 6 Sep 2018 08:38:20 +0000 (UTC) Received: from mail.wl.linuxfoundation.org (localhost [127.0.0.1]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id 27CA329831 for ; Thu, 6 Sep 2018 08:38:20 +0000 (UTC) Received: by mail.wl.linuxfoundation.org (Postfix, from userid 486) id 1BF7C2A3F7; Thu, 6 Sep 2018 08:38:20 +0000 (UTC) X-Spam-Checker-Version: SpamAssassin 3.3.1 (2010-03-16) on pdx-wl-mail.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-7.9 required=2.0 tests=BAYES_00,MAILING_LIST_MULTI, RCVD_IN_DNSWL_HI autolearn=unavailable version=3.3.1 Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id 909F22A3EF for ; Thu, 6 Sep 2018 08:38:19 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1728211AbeIFNMj (ORCPT ); Thu, 6 Sep 2018 09:12:39 -0400 Received: from mx0a-001b2d01.pphosted.com ([148.163.156.1]:36494 "EHLO mx0a-001b2d01.pphosted.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1728127AbeIFNMi (ORCPT ); Thu, 6 Sep 2018 09:12:38 -0400 Received: from pps.filterd (m0098399.ppops.net [127.0.0.1]) by mx0a-001b2d01.pphosted.com (8.16.0.22/8.16.0.22) with SMTP id w868Xuti083109 for ; Thu, 6 Sep 2018 04:38:17 -0400 Received: from e32.co.us.ibm.com (e32.co.us.ibm.com [32.97.110.150]) by mx0a-001b2d01.pphosted.com with ESMTP id 2maygqbjdh-1 (version=TLSv1.2 cipher=AES256-GCM-SHA384 bits=256 verify=NOT) for ; Thu, 06 Sep 2018 04:38:17 -0400 Received: from localhost by e32.co.us.ibm.com with IBM ESMTP SMTP Gateway: Authorized Use Only! Violators will be prosecuted for from ; Thu, 6 Sep 2018 02:38:17 -0600 Received: from b03cxnp08026.gho.boulder.ibm.com (9.17.130.18) by e32.co.us.ibm.com (192.168.1.132) with IBM ESMTP SMTP Gateway: Authorized Use Only! Violators will be prosecuted; (version=TLSv1/SSLv3 cipher=AES256-GCM-SHA384 bits=256/256) Thu, 6 Sep 2018 02:38:13 -0600 Received: from b03ledav001.gho.boulder.ibm.com (b03ledav001.gho.boulder.ibm.com [9.17.130.232]) by b03cxnp08026.gho.boulder.ibm.com (8.14.9/8.14.9/NCO v10.0) with ESMTP id w868cC7H34930830 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-GCM-SHA384 bits=256 verify=FAIL); Thu, 6 Sep 2018 01:38:13 -0700 Received: from b03ledav001.gho.boulder.ibm.com (unknown [127.0.0.1]) by IMSVA (Postfix) with ESMTP id 5B7796E053; Thu, 6 Sep 2018 02:38:13 -0600 (MDT) Received: from b03ledav001.gho.boulder.ibm.com (unknown [127.0.0.1]) by IMSVA (Postfix) with ESMTP id B82AB6E050; Thu, 6 Sep 2018 02:38:11 -0600 (MDT) Received: from localhost.in.ibm.com (unknown [9.124.35.136]) by b03ledav001.gho.boulder.ibm.com (Postfix) with ESMTP; Thu, 6 Sep 2018 02:38:11 -0600 (MDT) From: Chandan Rajendra To: fstests@vger.kernel.org Cc: Chandan Rajendra , eguan@redhat.com, darrick.wong@oracle.com, linux-xfs@vger.kernel.org Subject: [PATCH V2 02/16] xfs/050: Fix "Push past soft inode limit" case Date: Thu, 6 Sep 2018 14:09:59 +0530 X-Mailer: git-send-email 2.9.5 In-Reply-To: <20180906084013.2687-1-chandan@linux.vnet.ibm.com> References: <20180906084013.2687-1-chandan@linux.vnet.ibm.com> X-TM-AS-GCONF: 00 x-cbid: 18090608-0004-0000-0000-00001484F457 X-IBM-SpamModules-Scores: X-IBM-SpamModules-Versions: BY=3.00009676; HX=3.00000242; KW=3.00000007; PH=3.00000004; SC=3.00000266; SDB=6.01084285; UDB=6.00559630; IPR=6.00864284; MB=3.00023141; MTD=3.00000008; XFM=3.00000015; UTC=2018-09-06 08:38:15 X-IBM-AV-DETECTION: SAVI=unused REMOTE=unused XFE=unused x-cbparentid: 18090608-0005-0000-0000-000088B77595 Message-Id: <20180906084013.2687-3-chandan@linux.vnet.ibm.com> X-Proofpoint-Virus-Version: vendor=fsecure engine=2.50.10434:,, definitions=2018-09-06_03:,, signatures=0 X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 priorityscore=1501 malwarescore=0 suspectscore=1 phishscore=0 bulkscore=0 spamscore=0 clxscore=1015 lowpriorityscore=0 mlxscore=0 impostorscore=0 mlxlogscore=999 adultscore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.0.1-1807170000 definitions=main-1809060091 Sender: fstests-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: fstests@vger.kernel.org X-Virus-Scanned: ClamAV using ClamSMTP The test sets an inode soft limit of four but only three files are created. This commit creates two more files in order to really push past the soft inode limit. Signed-off-by: Chandan Rajendra --- tests/xfs/050 | 2 ++ tests/xfs/050.out | 36 ++++++++++++++++++------------------ 2 files changed, 20 insertions(+), 18 deletions(-) diff --git a/tests/xfs/050 b/tests/xfs/050 index dd77971..8569c2c 100755 --- a/tests/xfs/050 +++ b/tests/xfs/050 @@ -143,6 +143,8 @@ _exercise() echo "*** push past the soft inode limit" | tee -a $seqres.full _file_as_id $SCRATCH_MNT/softie1 $id $type 1024 0 _file_as_id $SCRATCH_MNT/softie2 $id $type 1024 0 + _file_as_id $SCRATCH_MNT/softie3 $id $type 1024 0 + _file_as_id $SCRATCH_MNT/softie4 $id $type 1024 0 _qmount xfs_quota -D $tmp.projects -P $tmp.projid -x \ -c "repquota -birnN -$type" $SCRATCH_DEV | diff --git a/tests/xfs/050.out b/tests/xfs/050.out index 5cb4a10..ff9eb1c 100644 --- a/tests/xfs/050.out +++ b/tests/xfs/050.out @@ -16,11 +16,11 @@ realtime =RDEV extsz=XXX blocks=XXX, rtextents=XXX *** push past the soft inode limit [ROOT] 0 0 0 00 [--------] 3 0 0 00 [--------] 0 0 0 00 [--------] -[NAME] 0 100 500 00 [--------] 3 4 10 00 [--------] 0 0 0 00 [--------] +[NAME] 0 100 500 00 [--------] 5 4 10 00 [7 days] 0 0 0 00 [--------] *** push past the soft block limit [ROOT] 0 0 0 00 [--------] 3 0 0 00 [--------] 0 0 0 00 [--------] -[NAME] 140 100 500 00 [7 days] 4 4 10 00 [--------] 0 0 0 00 [--------] +[NAME] 140 100 500 00 [7 days] 6 4 10 00 [7 days] 0 0 0 00 [--------] *** push past the hard inode limit (expect EDQUOT) [ROOT] 0 0 0 00 [--------] 3 0 0 00 [--------] 0 0 0 00 [--------] @@ -48,11 +48,11 @@ realtime =RDEV extsz=XXX blocks=XXX, rtextents=XXX *** push past the soft inode limit [ROOT] 0 0 0 00 [--------] 3 0 0 00 [--------] 0 0 0 00 [--------] -[NAME] 0 100 500 00 [--------] 3 4 10 00 [--------] 0 0 0 00 [--------] +[NAME] 0 100 500 00 [--------] 5 4 10 00 [7 days] 0 0 0 00 [--------] *** push past the soft block limit [ROOT] 0 0 0 00 [--------] 3 0 0 00 [--------] 0 0 0 00 [--------] -[NAME] 140 100 500 00 [7 days] 4 4 10 00 [--------] 0 0 0 00 [--------] +[NAME] 140 100 500 00 [7 days] 6 4 10 00 [7 days] 0 0 0 00 [--------] *** push past the hard inode limit (expect EDQUOT) [ROOT] 0 0 0 00 [--------] 3 0 0 00 [--------] 0 0 0 00 [--------] @@ -80,19 +80,19 @@ realtime =RDEV extsz=XXX blocks=XXX, rtextents=XXX *** push past the soft inode limit [ROOT] 0 0 0 00 [--------] 3 0 0 00 [--------] 0 0 0 00 [--------] -[NAME] 0 100 500 00 [--------] 3 4 10 00 [--------] 0 0 0 00 [--------] +[NAME] 0 100 500 00 [--------] 5 4 10 00 [--------] 0 0 0 00 [--------] *** push past the soft block limit [ROOT] 0 0 0 00 [--------] 3 0 0 00 [--------] 0 0 0 00 [--------] -[NAME] 140 100 500 00 [--------] 4 4 10 00 [--------] 0 0 0 00 [--------] +[NAME] 140 100 500 00 [--------] 6 4 10 00 [--------] 0 0 0 00 [--------] *** push past the hard inode limit (expect EDQUOT) [ROOT] 0 0 0 00 [--------] 3 0 0 00 [--------] 0 0 0 00 [--------] -[NAME] 140 100 500 00 [--------] 16 4 10 00 [--none--] 0 0 0 00 [--------] +[NAME] 140 100 500 00 [--------] 18 4 10 00 [--none--] 0 0 0 00 [--------] *** push past the hard block limit (expect EDQUOT) [ROOT] 0 0 0 00 [--------] 3 0 0 00 [--------] 0 0 0 00 [--------] -[NAME] 540 100 500 00 [--none--] 16 4 10 00 [--none--] 0 0 0 00 [--------] +[NAME] 540 100 500 00 [--none--] 18 4 10 00 [--none--] 0 0 0 00 [--------] *** unmount *** gqnoenforce @@ -112,19 +112,19 @@ realtime =RDEV extsz=XXX blocks=XXX, rtextents=XXX *** push past the soft inode limit [ROOT] 0 0 0 00 [--------] 3 0 0 00 [--------] 0 0 0 00 [--------] -[NAME] 0 100 500 00 [--------] 3 4 10 00 [--------] 0 0 0 00 [--------] +[NAME] 0 100 500 00 [--------] 5 4 10 00 [--------] 0 0 0 00 [--------] *** push past the soft block limit [ROOT] 0 0 0 00 [--------] 3 0 0 00 [--------] 0 0 0 00 [--------] -[NAME] 140 100 500 00 [--------] 4 4 10 00 [--------] 0 0 0 00 [--------] +[NAME] 140 100 500 00 [--------] 6 4 10 00 [--------] 0 0 0 00 [--------] *** push past the hard inode limit (expect EDQUOT) [ROOT] 0 0 0 00 [--------] 3 0 0 00 [--------] 0 0 0 00 [--------] -[NAME] 140 100 500 00 [--------] 16 4 10 00 [--none--] 0 0 0 00 [--------] +[NAME] 140 100 500 00 [--------] 18 4 10 00 [--none--] 0 0 0 00 [--------] *** push past the hard block limit (expect EDQUOT) [ROOT] 0 0 0 00 [--------] 3 0 0 00 [--------] 0 0 0 00 [--------] -[NAME] 540 100 500 00 [--none--] 16 4 10 00 [--none--] 0 0 0 00 [--------] +[NAME] 540 100 500 00 [--none--] 18 4 10 00 [--none--] 0 0 0 00 [--------] *** unmount *** pquota @@ -144,11 +144,11 @@ realtime =RDEV extsz=XXX blocks=XXX, rtextents=XXX *** push past the soft inode limit [ROOT] 0 0 0 00 [--------] 3 0 0 00 [--------] 0 0 0 00 [--------] -[NAME] 0 100 500 00 [--------] 3 4 10 00 [--------] 0 0 0 00 [--------] +[NAME] 0 100 500 00 [--------] 5 4 10 00 [7 days] 0 0 0 00 [--------] *** push past the soft block limit [ROOT] 0 0 0 00 [--------] 3 0 0 00 [--------] 0 0 0 00 [--------] -[NAME] 140 100 500 00 [7 days] 4 4 10 00 [--------] 0 0 0 00 [--------] +[NAME] 140 100 500 00 [7 days] 6 4 10 00 [7 days] 0 0 0 00 [--------] *** push past the hard inode limit (expect EDQUOT) [ROOT] 0 0 0 00 [--------] 3 0 0 00 [--------] 0 0 0 00 [--------] @@ -176,18 +176,18 @@ realtime =RDEV extsz=XXX blocks=XXX, rtextents=XXX *** push past the soft inode limit [ROOT] 0 0 0 00 [--------] 3 0 0 00 [--------] 0 0 0 00 [--------] -[NAME] 0 100 500 00 [--------] 3 4 10 00 [--------] 0 0 0 00 [--------] +[NAME] 0 100 500 00 [--------] 5 4 10 00 [--------] 0 0 0 00 [--------] *** push past the soft block limit [ROOT] 0 0 0 00 [--------] 3 0 0 00 [--------] 0 0 0 00 [--------] -[NAME] 140 100 500 00 [--------] 4 4 10 00 [--------] 0 0 0 00 [--------] +[NAME] 140 100 500 00 [--------] 6 4 10 00 [--------] 0 0 0 00 [--------] *** push past the hard inode limit (expect EDQUOT) [ROOT] 0 0 0 00 [--------] 3 0 0 00 [--------] 0 0 0 00 [--------] -[NAME] 140 100 500 00 [--------] 16 4 10 00 [--none--] 0 0 0 00 [--------] +[NAME] 140 100 500 00 [--------] 18 4 10 00 [--none--] 0 0 0 00 [--------] *** push past the hard block limit (expect EDQUOT) [ROOT] 0 0 0 00 [--------] 3 0 0 00 [--------] 0 0 0 00 [--------] -[NAME] 540 100 500 00 [--none--] 16 4 10 00 [--none--] 0 0 0 00 [--------] +[NAME] 540 100 500 00 [--none--] 18 4 10 00 [--none--] 0 0 0 00 [--------] *** unmount From patchwork Thu Sep 6 08:40:00 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Chandan Rajendra X-Patchwork-Id: 10590017 Return-Path: Received: from mail.wl.linuxfoundation.org (pdx-wl-mail.web.codeaurora.org [172.30.200.125]) by pdx-korg-patchwork-2.web.codeaurora.org (Postfix) with ESMTP id 854F6180E for ; Thu, 6 Sep 2018 08:38:23 +0000 (UTC) Received: from mail.wl.linuxfoundation.org (localhost [127.0.0.1]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id 670D229831 for ; Thu, 6 Sep 2018 08:38:23 +0000 (UTC) Received: by mail.wl.linuxfoundation.org (Postfix, from userid 486) id 5AC2F2A3F7; Thu, 6 Sep 2018 08:38:23 +0000 (UTC) X-Spam-Checker-Version: SpamAssassin 3.3.1 (2010-03-16) on pdx-wl-mail.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-7.9 required=2.0 tests=BAYES_00,MAILING_LIST_MULTI, RCVD_IN_DNSWL_HI autolearn=unavailable version=3.3.1 Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id 8E9372A3EF for ; Thu, 6 Sep 2018 08:38:22 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1728218AbeIFNMm (ORCPT ); Thu, 6 Sep 2018 09:12:42 -0400 Received: from mx0b-001b2d01.pphosted.com ([148.163.158.5]:54994 "EHLO mx0a-001b2d01.pphosted.com" rhost-flags-OK-OK-OK-FAIL) by vger.kernel.org with ESMTP id S1728216AbeIFNMm (ORCPT ); Thu, 6 Sep 2018 09:12:42 -0400 Received: from pps.filterd (m0098413.ppops.net [127.0.0.1]) by mx0b-001b2d01.pphosted.com (8.16.0.22/8.16.0.22) with SMTP id w868XvVm056926 for ; Thu, 6 Sep 2018 04:38:20 -0400 Received: from e34.co.us.ibm.com (e34.co.us.ibm.com [32.97.110.152]) by mx0b-001b2d01.pphosted.com with ESMTP id 2mayfkbw5r-1 (version=TLSv1.2 cipher=AES256-GCM-SHA384 bits=256 verify=NOT) for ; Thu, 06 Sep 2018 04:38:20 -0400 Received: from localhost by e34.co.us.ibm.com with IBM ESMTP SMTP Gateway: Authorized Use Only! Violators will be prosecuted for from ; Thu, 6 Sep 2018 02:38:19 -0600 Received: from b03cxnp08025.gho.boulder.ibm.com (9.17.130.17) by e34.co.us.ibm.com (192.168.1.134) with IBM ESMTP SMTP Gateway: Authorized Use Only! Violators will be prosecuted; (version=TLSv1/SSLv3 cipher=AES256-GCM-SHA384 bits=256/256) Thu, 6 Sep 2018 02:38:17 -0600 Received: from b03ledav001.gho.boulder.ibm.com (b03ledav001.gho.boulder.ibm.com [9.17.130.232]) by b03cxnp08025.gho.boulder.ibm.com (8.14.9/8.14.9/NCO v10.0) with ESMTP id w868cGAu21102786 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-GCM-SHA384 bits=256 verify=FAIL); Thu, 6 Sep 2018 01:38:16 -0700 Received: from b03ledav001.gho.boulder.ibm.com (unknown [127.0.0.1]) by IMSVA (Postfix) with ESMTP id A05286E052; Thu, 6 Sep 2018 02:38:16 -0600 (MDT) Received: from b03ledav001.gho.boulder.ibm.com (unknown [127.0.0.1]) by IMSVA (Postfix) with ESMTP id F1DD36E050; Thu, 6 Sep 2018 02:38:14 -0600 (MDT) Received: from localhost.in.ibm.com (unknown [9.124.35.136]) by b03ledav001.gho.boulder.ibm.com (Postfix) with ESMTP; Thu, 6 Sep 2018 02:38:14 -0600 (MDT) From: Chandan Rajendra To: fstests@vger.kernel.org Cc: Chandan Rajendra , eguan@redhat.com, darrick.wong@oracle.com, linux-xfs@vger.kernel.org Subject: [PATCH V2 03/16] Fix xfs/050 to work with 64k block size Date: Thu, 6 Sep 2018 14:10:00 +0530 X-Mailer: git-send-email 2.9.5 In-Reply-To: <20180906084013.2687-1-chandan@linux.vnet.ibm.com> References: <20180906084013.2687-1-chandan@linux.vnet.ibm.com> X-TM-AS-GCONF: 00 x-cbid: 18090608-0016-0000-0000-00000928A8A5 X-IBM-SpamModules-Scores: X-IBM-SpamModules-Versions: BY=3.00009676; HX=3.00000242; KW=3.00000007; PH=3.00000004; SC=3.00000266; SDB=6.01084285; UDB=6.00559630; IPR=6.00864284; MB=3.00023141; MTD=3.00000008; XFM=3.00000015; UTC=2018-09-06 08:38:18 X-IBM-AV-DETECTION: SAVI=unused REMOTE=unused XFE=unused x-cbparentid: 18090608-0017-0000-0000-00004041D0EC Message-Id: <20180906084013.2687-4-chandan@linux.vnet.ibm.com> X-Proofpoint-Virus-Version: vendor=fsecure engine=2.50.10434:,, definitions=2018-09-06_03:,, signatures=0 X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 priorityscore=1501 malwarescore=0 suspectscore=1 phishscore=0 bulkscore=0 spamscore=0 clxscore=1015 lowpriorityscore=0 mlxscore=0 impostorscore=0 mlxlogscore=999 adultscore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.0.1-1807170000 definitions=main-1809060091 Sender: fstests-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: fstests@vger.kernel.org X-Virus-Scanned: ClamAV using ClamSMTP This commit changes the test to calculate quota limits based on the block size of the underlying filesystem. Also, the sizes of the test files are now made to be a multiple of the filesystem block size. Signed-off-by: Chandan Rajendra --- tests/xfs/050 | 24 ++++++++++++++-------- tests/xfs/050.out | 60 +++++++++++++++++++++++++++---------------------------- 2 files changed, 46 insertions(+), 38 deletions(-) diff --git a/tests/xfs/050 b/tests/xfs/050 index 8569c2c..01d82cc 100755 --- a/tests/xfs/050 +++ b/tests/xfs/050 @@ -38,8 +38,13 @@ chmod a+rwx $seqres.full # arbitrary users will write here _require_scratch _require_xfs_quota -bsoft=100 -bhard=500 +_scratch_mkfs >/dev/null 2>&1 +_scratch_mount +bsize=$(_get_block_size $SCRATCH_MNT) +_scratch_unmount + +bsoft=$(( 25 * $bsize )) +bhard=$(( 125 * $bsize )) isoft=4 ihard=10 @@ -55,7 +60,9 @@ _filter_report() if ($ENV{'LARGE_SCRATCH_DEV'}) { $val = $ENV{'NUM_SPACE_FILES'}; } - s/(^\[ROOT\] \S+ \S+ \S+ \S+ \[--------\] )(\S+)/$1@{[$2 - $val]}/g' + s/(^\[ROOT\] \S+ \S+ \S+ \S+ \[--------\] )(\S+)/$1@{[$2 - $val]}/g' | + perl -npe ' + s|^(.*?) (\d+) (\d+) (\d+)|$1 @{[$2 * 1024 /'$bsize']} @{[$3 * 1024 /'$bsize']} @{[$4 * 1024 /'$bsize']}|' } # The actual point at which limit enforcement takes place for the @@ -70,9 +77,10 @@ _filter_and_check_blks() if (/^\#'$id'\s+(\d+)/ && '$enforce') { $maximum = '$bhard'; $minimum = '$bhard' * 85/100; - if (($1 < $minimum || $1 > $maximum) && '$noextsz') { + $used = $1 * 1024; + if (($used < $minimum || $used > $maximum) && '$noextsz') { printf(" URK %d: %d is out of range! [%d,%d]\n", - '$id', $1, $minimum, $maximum); + '$id', $used, $minimum, $maximum); } s/^(\#'$id'\s+)(\d+)/\1 =OK=/g; } @@ -132,7 +140,7 @@ _exercise() echo "ls -l $SCRATCH_MNT" >>$seqres.full ls -l $SCRATCH_MNT >>$seqres.full xfs_quota -D $tmp.projects -P $temp.projid -x \ - -c "limit -$type bsoft=${bsoft}k bhard=${bhard}k $id" \ + -c "limit -$type bsoft=${bsoft} bhard=${bhard} $id" \ -c "limit -$type isoft=$isoft ihard=$ihard $id" \ $SCRATCH_DEV xfs_quota -D $tmp.projects -P $tmp.projid -x \ @@ -152,7 +160,7 @@ _exercise() echo echo "*** push past the soft block limit" | tee -a $seqres.full - _file_as_id $SCRATCH_MNT/softie $id $type 1024 140 + _file_as_id $SCRATCH_MNT/softie $id $type $bsize 35 _qmount xfs_quota -D $tmp.projects -P $tmp.projid -x \ -c "repquota -birnN -$type" $SCRATCH_DEV | @@ -173,7 +181,7 @@ _exercise() echo # Note: for quota accounting (not enforcement), EDQUOT is not expected echo "*** push past the hard block limit (expect EDQUOT)" | tee -a $seqres.full - _file_as_id $SCRATCH_MNT/softie $id $type 1024 540 + _file_as_id $SCRATCH_MNT/softie $id $type $bsize 135 echo "ls -l $SCRATCH_MNT" >>$seqres.full ls -l $SCRATCH_MNT >>$seqres.full _qmount diff --git a/tests/xfs/050.out b/tests/xfs/050.out index ff9eb1c..53907a2 100644 --- a/tests/xfs/050.out +++ b/tests/xfs/050.out @@ -12,23 +12,23 @@ realtime =RDEV extsz=XXX blocks=XXX, rtextents=XXX *** report initial settings [ROOT] 0 0 0 00 [--------] 3 0 0 00 [--------] 0 0 0 00 [--------] -[NAME] 0 100 500 00 [--------] 1 4 10 00 [--------] 0 0 0 00 [--------] +[NAME] 0 25 125 00 [--------] 1 4 10 00 [--------] 0 0 0 00 [--------] *** push past the soft inode limit [ROOT] 0 0 0 00 [--------] 3 0 0 00 [--------] 0 0 0 00 [--------] -[NAME] 0 100 500 00 [--------] 5 4 10 00 [7 days] 0 0 0 00 [--------] +[NAME] 0 25 125 00 [--------] 5 4 10 00 [7 days] 0 0 0 00 [--------] *** push past the soft block limit [ROOT] 0 0 0 00 [--------] 3 0 0 00 [--------] 0 0 0 00 [--------] -[NAME] 140 100 500 00 [7 days] 6 4 10 00 [7 days] 0 0 0 00 [--------] +[NAME] 35 25 125 00 [7 days] 6 4 10 00 [7 days] 0 0 0 00 [--------] *** push past the hard inode limit (expect EDQUOT) [ROOT] 0 0 0 00 [--------] 3 0 0 00 [--------] 0 0 0 00 [--------] -[NAME] 140 100 500 00 [7 days] 10 4 10 00 [7 days] 0 0 0 00 [--------] +[NAME] 35 25 125 00 [7 days] 10 4 10 00 [7 days] 0 0 0 00 [--------] *** push past the hard block limit (expect EDQUOT) [ROOT] 0 0 0 00 [--------] 3 0 0 00 [--------] 0 0 0 00 [--------] -[NAME] =OK= 100 500 00 [7 days] 10 4 10 00 [7 days] 0 0 0 00 [--------] +[NAME] =OK= 25 125 0 [7 days] 10 4 10 00 [7 days] 0 0 0 00 [--------] *** unmount *** group @@ -44,23 +44,23 @@ realtime =RDEV extsz=XXX blocks=XXX, rtextents=XXX *** report initial settings [ROOT] 0 0 0 00 [--------] 3 0 0 00 [--------] 0 0 0 00 [--------] -[NAME] 0 100 500 00 [--------] 1 4 10 00 [--------] 0 0 0 00 [--------] +[NAME] 0 25 125 00 [--------] 1 4 10 00 [--------] 0 0 0 00 [--------] *** push past the soft inode limit [ROOT] 0 0 0 00 [--------] 3 0 0 00 [--------] 0 0 0 00 [--------] -[NAME] 0 100 500 00 [--------] 5 4 10 00 [7 days] 0 0 0 00 [--------] +[NAME] 0 25 125 00 [--------] 5 4 10 00 [7 days] 0 0 0 00 [--------] *** push past the soft block limit [ROOT] 0 0 0 00 [--------] 3 0 0 00 [--------] 0 0 0 00 [--------] -[NAME] 140 100 500 00 [7 days] 6 4 10 00 [7 days] 0 0 0 00 [--------] +[NAME] 35 25 125 00 [7 days] 6 4 10 00 [7 days] 0 0 0 00 [--------] *** push past the hard inode limit (expect EDQUOT) [ROOT] 0 0 0 00 [--------] 3 0 0 00 [--------] 0 0 0 00 [--------] -[NAME] 140 100 500 00 [7 days] 10 4 10 00 [7 days] 0 0 0 00 [--------] +[NAME] 35 25 125 00 [7 days] 10 4 10 00 [7 days] 0 0 0 00 [--------] *** push past the hard block limit (expect EDQUOT) [ROOT] 0 0 0 00 [--------] 3 0 0 00 [--------] 0 0 0 00 [--------] -[NAME] =OK= 100 500 00 [7 days] 10 4 10 00 [7 days] 0 0 0 00 [--------] +[NAME] =OK= 25 125 0 [7 days] 10 4 10 00 [7 days] 0 0 0 00 [--------] *** unmount *** uqnoenforce @@ -76,23 +76,23 @@ realtime =RDEV extsz=XXX blocks=XXX, rtextents=XXX *** report initial settings [ROOT] 0 0 0 00 [--------] 3 0 0 00 [--------] 0 0 0 00 [--------] -[NAME] 0 100 500 00 [--------] 1 4 10 00 [--------] 0 0 0 00 [--------] +[NAME] 0 25 125 00 [--------] 1 4 10 00 [--------] 0 0 0 00 [--------] *** push past the soft inode limit [ROOT] 0 0 0 00 [--------] 3 0 0 00 [--------] 0 0 0 00 [--------] -[NAME] 0 100 500 00 [--------] 5 4 10 00 [--------] 0 0 0 00 [--------] +[NAME] 0 25 125 00 [--------] 5 4 10 00 [--------] 0 0 0 00 [--------] *** push past the soft block limit [ROOT] 0 0 0 00 [--------] 3 0 0 00 [--------] 0 0 0 00 [--------] -[NAME] 140 100 500 00 [--------] 6 4 10 00 [--------] 0 0 0 00 [--------] +[NAME] 35 25 125 00 [--------] 6 4 10 00 [--------] 0 0 0 00 [--------] *** push past the hard inode limit (expect EDQUOT) [ROOT] 0 0 0 00 [--------] 3 0 0 00 [--------] 0 0 0 00 [--------] -[NAME] 140 100 500 00 [--------] 18 4 10 00 [--none--] 0 0 0 00 [--------] +[NAME] 35 25 125 00 [--------] 18 4 10 00 [--none--] 0 0 0 00 [--------] *** push past the hard block limit (expect EDQUOT) [ROOT] 0 0 0 00 [--------] 3 0 0 00 [--------] 0 0 0 00 [--------] -[NAME] 540 100 500 00 [--none--] 18 4 10 00 [--none--] 0 0 0 00 [--------] +[NAME] 135 25 125 00 [--none--] 18 4 10 00 [--none--] 0 0 0 00 [--------] *** unmount *** gqnoenforce @@ -108,23 +108,23 @@ realtime =RDEV extsz=XXX blocks=XXX, rtextents=XXX *** report initial settings [ROOT] 0 0 0 00 [--------] 3 0 0 00 [--------] 0 0 0 00 [--------] -[NAME] 0 100 500 00 [--------] 1 4 10 00 [--------] 0 0 0 00 [--------] +[NAME] 0 25 125 00 [--------] 1 4 10 00 [--------] 0 0 0 00 [--------] *** push past the soft inode limit [ROOT] 0 0 0 00 [--------] 3 0 0 00 [--------] 0 0 0 00 [--------] -[NAME] 0 100 500 00 [--------] 5 4 10 00 [--------] 0 0 0 00 [--------] +[NAME] 0 25 125 00 [--------] 5 4 10 00 [--------] 0 0 0 00 [--------] *** push past the soft block limit [ROOT] 0 0 0 00 [--------] 3 0 0 00 [--------] 0 0 0 00 [--------] -[NAME] 140 100 500 00 [--------] 6 4 10 00 [--------] 0 0 0 00 [--------] +[NAME] 35 25 125 00 [--------] 6 4 10 00 [--------] 0 0 0 00 [--------] *** push past the hard inode limit (expect EDQUOT) [ROOT] 0 0 0 00 [--------] 3 0 0 00 [--------] 0 0 0 00 [--------] -[NAME] 140 100 500 00 [--------] 18 4 10 00 [--none--] 0 0 0 00 [--------] +[NAME] 35 25 125 00 [--------] 18 4 10 00 [--none--] 0 0 0 00 [--------] *** push past the hard block limit (expect EDQUOT) [ROOT] 0 0 0 00 [--------] 3 0 0 00 [--------] 0 0 0 00 [--------] -[NAME] 540 100 500 00 [--none--] 18 4 10 00 [--none--] 0 0 0 00 [--------] +[NAME] 135 25 125 00 [--none--] 18 4 10 00 [--none--] 0 0 0 00 [--------] *** unmount *** pquota @@ -140,23 +140,23 @@ realtime =RDEV extsz=XXX blocks=XXX, rtextents=XXX *** report initial settings [ROOT] 0 0 0 00 [--------] 3 0 0 00 [--------] 0 0 0 00 [--------] -[NAME] 0 100 500 00 [--------] 1 4 10 00 [--------] 0 0 0 00 [--------] +[NAME] 0 25 125 00 [--------] 1 4 10 00 [--------] 0 0 0 00 [--------] *** push past the soft inode limit [ROOT] 0 0 0 00 [--------] 3 0 0 00 [--------] 0 0 0 00 [--------] -[NAME] 0 100 500 00 [--------] 5 4 10 00 [7 days] 0 0 0 00 [--------] +[NAME] 0 25 125 00 [--------] 5 4 10 00 [7 days] 0 0 0 00 [--------] *** push past the soft block limit [ROOT] 0 0 0 00 [--------] 3 0 0 00 [--------] 0 0 0 00 [--------] -[NAME] 140 100 500 00 [7 days] 6 4 10 00 [7 days] 0 0 0 00 [--------] +[NAME] 35 25 125 00 [7 days] 6 4 10 00 [7 days] 0 0 0 00 [--------] *** push past the hard inode limit (expect EDQUOT) [ROOT] 0 0 0 00 [--------] 3 0 0 00 [--------] 0 0 0 00 [--------] -[NAME] 140 100 500 00 [7 days] 9 4 10 00 [7 days] 0 0 0 00 [--------] +[NAME] 35 25 125 00 [7 days] 9 4 10 00 [7 days] 0 0 0 00 [--------] *** push past the hard block limit (expect EDQUOT) [ROOT] 0 0 0 00 [--------] 3 0 0 00 [--------] 0 0 0 00 [--------] -[NAME] =OK= 100 500 00 [7 days] 9 4 10 00 [7 days] 0 0 0 00 [--------] +[NAME] =OK= 25 125 0 [7 days] 9 4 10 00 [7 days] 0 0 0 00 [--------] *** unmount *** pqnoenforce @@ -172,22 +172,22 @@ realtime =RDEV extsz=XXX blocks=XXX, rtextents=XXX *** report initial settings [ROOT] 0 0 0 00 [--------] 3 0 0 00 [--------] 0 0 0 00 [--------] -[NAME] 0 100 500 00 [--------] 1 4 10 00 [--------] 0 0 0 00 [--------] +[NAME] 0 25 125 00 [--------] 1 4 10 00 [--------] 0 0 0 00 [--------] *** push past the soft inode limit [ROOT] 0 0 0 00 [--------] 3 0 0 00 [--------] 0 0 0 00 [--------] -[NAME] 0 100 500 00 [--------] 5 4 10 00 [--------] 0 0 0 00 [--------] +[NAME] 0 25 125 00 [--------] 5 4 10 00 [--------] 0 0 0 00 [--------] *** push past the soft block limit [ROOT] 0 0 0 00 [--------] 3 0 0 00 [--------] 0 0 0 00 [--------] -[NAME] 140 100 500 00 [--------] 6 4 10 00 [--------] 0 0 0 00 [--------] +[NAME] 35 25 125 00 [--------] 6 4 10 00 [--------] 0 0 0 00 [--------] *** push past the hard inode limit (expect EDQUOT) [ROOT] 0 0 0 00 [--------] 3 0 0 00 [--------] 0 0 0 00 [--------] -[NAME] 140 100 500 00 [--------] 18 4 10 00 [--none--] 0 0 0 00 [--------] +[NAME] 35 25 125 00 [--------] 18 4 10 00 [--none--] 0 0 0 00 [--------] *** push past the hard block limit (expect EDQUOT) [ROOT] 0 0 0 00 [--------] 3 0 0 00 [--------] 0 0 0 00 [--------] -[NAME] 540 100 500 00 [--none--] 18 4 10 00 [--none--] 0 0 0 00 [--------] +[NAME] 135 25 125 00 [--none--] 18 4 10 00 [--none--] 0 0 0 00 [--------] *** unmount From patchwork Thu Sep 6 08:40:01 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Chandan Rajendra X-Patchwork-Id: 10590019 Return-Path: Received: from mail.wl.linuxfoundation.org (pdx-wl-mail.web.codeaurora.org [172.30.200.125]) by pdx-korg-patchwork-2.web.codeaurora.org (Postfix) with ESMTP id 550AD5A4 for ; Thu, 6 Sep 2018 08:38:26 +0000 (UTC) Received: from mail.wl.linuxfoundation.org (localhost [127.0.0.1]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id 376C12A3EF for ; Thu, 6 Sep 2018 08:38:26 +0000 (UTC) Received: by mail.wl.linuxfoundation.org (Postfix, from userid 486) id 2BF8C2A3FC; Thu, 6 Sep 2018 08:38:26 +0000 (UTC) X-Spam-Checker-Version: SpamAssassin 3.3.1 (2010-03-16) on pdx-wl-mail.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-7.9 required=2.0 tests=BAYES_00,MAILING_LIST_MULTI, RCVD_IN_DNSWL_HI autolearn=ham version=3.3.1 Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id C5FA62A3EF for ; Thu, 6 Sep 2018 08:38:25 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1728215AbeIFNMp (ORCPT ); Thu, 6 Sep 2018 09:12:45 -0400 Received: from mx0b-001b2d01.pphosted.com ([148.163.158.5]:55856 "EHLO mx0a-001b2d01.pphosted.com" rhost-flags-OK-OK-OK-FAIL) by vger.kernel.org with ESMTP id S1728127AbeIFNMp (ORCPT ); Thu, 6 Sep 2018 09:12:45 -0400 Received: from pps.filterd (m0098413.ppops.net [127.0.0.1]) by mx0b-001b2d01.pphosted.com (8.16.0.22/8.16.0.22) with SMTP id w868XvVt056926 for ; Thu, 6 Sep 2018 04:38:23 -0400 Received: from e36.co.us.ibm.com (e36.co.us.ibm.com [32.97.110.154]) by mx0b-001b2d01.pphosted.com with ESMTP id 2mayfkbwac-1 (version=TLSv1.2 cipher=AES256-GCM-SHA384 bits=256 verify=NOT) for ; Thu, 06 Sep 2018 04:38:23 -0400 Received: from localhost by e36.co.us.ibm.com with IBM ESMTP SMTP Gateway: Authorized Use Only! Violators will be prosecuted for from ; Thu, 6 Sep 2018 02:38:22 -0600 Received: from b03cxnp07028.gho.boulder.ibm.com (9.17.130.15) by e36.co.us.ibm.com (192.168.1.136) with IBM ESMTP SMTP Gateway: Authorized Use Only! Violators will be prosecuted; (version=TLSv1/SSLv3 cipher=AES256-GCM-SHA384 bits=256/256) Thu, 6 Sep 2018 02:38:20 -0600 Received: from b03ledav001.gho.boulder.ibm.com (b03ledav001.gho.boulder.ibm.com [9.17.130.232]) by b03cxnp07028.gho.boulder.ibm.com (8.14.9/8.14.9/NCO v10.0) with ESMTP id w868cJKf57278598 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-GCM-SHA384 bits=256 verify=FAIL); Thu, 6 Sep 2018 01:38:19 -0700 Received: from b03ledav001.gho.boulder.ibm.com (unknown [127.0.0.1]) by IMSVA (Postfix) with ESMTP id C36706E053; Thu, 6 Sep 2018 02:38:19 -0600 (MDT) Received: from b03ledav001.gho.boulder.ibm.com (unknown [127.0.0.1]) by IMSVA (Postfix) with ESMTP id 2D6D86E04C; Thu, 6 Sep 2018 02:38:18 -0600 (MDT) Received: from localhost.in.ibm.com (unknown [9.124.35.136]) by b03ledav001.gho.boulder.ibm.com (Postfix) with ESMTP; Thu, 6 Sep 2018 02:38:17 -0600 (MDT) From: Chandan Rajendra To: fstests@vger.kernel.org Cc: Chandan Rajendra , eguan@redhat.com, darrick.wong@oracle.com, linux-xfs@vger.kernel.org Subject: [PATCH V2 04/16] Fix xfs/074 to work with 64k block size Date: Thu, 6 Sep 2018 14:10:01 +0530 X-Mailer: git-send-email 2.9.5 In-Reply-To: <20180906084013.2687-1-chandan@linux.vnet.ibm.com> References: <20180906084013.2687-1-chandan@linux.vnet.ibm.com> X-TM-AS-GCONF: 00 x-cbid: 18090608-0020-0000-0000-00000E5F79D1 X-IBM-SpamModules-Scores: X-IBM-SpamModules-Versions: BY=3.00009676; HX=3.00000242; KW=3.00000007; PH=3.00000004; SC=3.00000266; SDB=6.01084285; UDB=6.00559630; IPR=6.00864284; MB=3.00023141; MTD=3.00000008; XFM=3.00000015; UTC=2018-09-06 08:38:21 X-IBM-AV-DETECTION: SAVI=unused REMOTE=unused XFE=unused x-cbparentid: 18090608-0021-0000-0000-000062EEAAC4 Message-Id: <20180906084013.2687-5-chandan@linux.vnet.ibm.com> X-Proofpoint-Virus-Version: vendor=fsecure engine=2.50.10434:,, definitions=2018-09-06_03:,, signatures=0 X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 priorityscore=1501 malwarescore=0 suspectscore=1 phishscore=0 bulkscore=0 spamscore=0 clxscore=1015 lowpriorityscore=0 mlxscore=0 impostorscore=0 mlxlogscore=999 adultscore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.0.1-1807170000 definitions=main-1809060091 Sender: fstests-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: fstests@vger.kernel.org X-Virus-Scanned: ClamAV using ClamSMTP This commit makes file and extent size calculations to be a function of the filesystem's block size. It also adds a brief description of the bug that is being tested. Signed-off-by: Chandan Rajendra --- tests/xfs/074 | 23 +++++++++++++++++++---- 1 file changed, 19 insertions(+), 4 deletions(-) diff --git a/tests/xfs/074 b/tests/xfs/074 index e5888d5..1e1e16e 100755 --- a/tests/xfs/074 +++ b/tests/xfs/074 @@ -7,6 +7,18 @@ # Check some extent size hint boundary conditions that can result in # MAXEXTLEN overflows. # +# In xfs_bmap_extsize_align(), we had, +# if ((temp = (align_alen % extsz))) { +# align_alen += extsz - temp; +# } +# align_alen had the value of 2097151 (i.e. MAXEXTLEN) blocks. extsz had +# the value of 4096 blocks. +# +# align_alen % extsz will be 4095. so align_alen will end up having +# 2097151 + (4096 - 4095) = 2097152 i.e. (MAXEXTLEN + 1). Thus the length +# of the new extent will be larger than MAXEXTLEN. This will later cause +# the bmbt leaf to have an entry whose length is set to zero block count. +# seq=`basename $0` seqres=$RESULT_DIR/$seq echo "QA output created by $seq" @@ -46,19 +58,22 @@ mkdir -p $LOOP_MNT $XFS_IO_PROG -ft -c "truncate 1t" $LOOP_FILE >> $seqres.full LOOP_DEV=`_create_loop_device $LOOP_FILE` -_mkfs_dev -d size=156452m,agcount=4 -l size=32m $LOOP_DEV +_mkfs_dev -d size=260g,agcount=2 $LOOP_DEV _mount $LOOP_DEV $LOOP_MNT +BLOCK_SIZE=$(_get_block_size $LOOP_MNT) + # Corrupt the BMBT by creating extents larger than MAXEXTLEN +# For 4k blocksize, MAXEXTLEN * 4k = 2097151 * 4k = 8589930496 = ~8GiB $XFS_IO_PROG -ft \ - -c "extsize 16m" \ - -c "falloc 0 30g" \ + -c "extsize $(($BLOCK_SIZE * 4096))" \ + -c "falloc 0 $(($BLOCK_SIZE * 2097152))" \ $LOOP_MNT/foo >> $seqres.full umount $LOOP_MNT _check_xfs_filesystem $LOOP_DEV none none -_mkfs_dev -f -l size=32m $LOOP_DEV +_mkfs_dev -f $LOOP_DEV _mount $LOOP_DEV $LOOP_MNT # check we trim both ends of the extent approproiately; this will fail From patchwork Thu Sep 6 08:40:02 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Chandan Rajendra X-Patchwork-Id: 10590023 Return-Path: Received: from mail.wl.linuxfoundation.org (pdx-wl-mail.web.codeaurora.org [172.30.200.125]) by pdx-korg-patchwork-2.web.codeaurora.org (Postfix) with ESMTP id 0BB056CB for ; Thu, 6 Sep 2018 08:38:28 +0000 (UTC) Received: from mail.wl.linuxfoundation.org (localhost [127.0.0.1]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id E0A042A3EF for ; Thu, 6 Sep 2018 08:38:27 +0000 (UTC) Received: by mail.wl.linuxfoundation.org (Postfix, from userid 486) id D52E92A41A; Thu, 6 Sep 2018 08:38:27 +0000 (UTC) X-Spam-Checker-Version: SpamAssassin 3.3.1 (2010-03-16) on pdx-wl-mail.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-7.9 required=2.0 tests=BAYES_00,MAILING_LIST_MULTI, RCVD_IN_DNSWL_HI autolearn=ham version=3.3.1 Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id C61872A3EF for ; Thu, 6 Sep 2018 08:38:26 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1728221AbeIFNMq (ORCPT ); Thu, 6 Sep 2018 09:12:46 -0400 Received: from mx0a-001b2d01.pphosted.com ([148.163.156.1]:39600 "EHLO mx0a-001b2d01.pphosted.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1728127AbeIFNMq (ORCPT ); Thu, 6 Sep 2018 09:12:46 -0400 Received: from pps.filterd (m0098404.ppops.net [127.0.0.1]) by mx0a-001b2d01.pphosted.com (8.16.0.22/8.16.0.22) with SMTP id w868XvKw029444 for ; Thu, 6 Sep 2018 04:38:25 -0400 Received: from e32.co.us.ibm.com (e32.co.us.ibm.com [32.97.110.150]) by mx0a-001b2d01.pphosted.com with ESMTP id 2may8kcnag-1 (version=TLSv1.2 cipher=AES256-GCM-SHA384 bits=256 verify=NOT) for ; Thu, 06 Sep 2018 04:38:25 -0400 Received: from localhost by e32.co.us.ibm.com with IBM ESMTP SMTP Gateway: Authorized Use Only! Violators will be prosecuted for from ; Thu, 6 Sep 2018 02:38:25 -0600 Received: from b03cxnp08025.gho.boulder.ibm.com (9.17.130.17) by e32.co.us.ibm.com (192.168.1.132) with IBM ESMTP SMTP Gateway: Authorized Use Only! Violators will be prosecuted; (version=TLSv1/SSLv3 cipher=AES256-GCM-SHA384 bits=256/256) Thu, 6 Sep 2018 02:38:23 -0600 Received: from b03ledav001.gho.boulder.ibm.com (b03ledav001.gho.boulder.ibm.com [9.17.130.232]) by b03cxnp08025.gho.boulder.ibm.com (8.14.9/8.14.9/NCO v10.0) with ESMTP id w868cM0q20644032 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-GCM-SHA384 bits=256 verify=FAIL); Thu, 6 Sep 2018 01:38:22 -0700 Received: from b03ledav001.gho.boulder.ibm.com (unknown [127.0.0.1]) by IMSVA (Postfix) with ESMTP id E52B06E054; Thu, 6 Sep 2018 02:38:22 -0600 (MDT) Received: from b03ledav001.gho.boulder.ibm.com (unknown [127.0.0.1]) by IMSVA (Postfix) with ESMTP id 4FAC56E04C; Thu, 6 Sep 2018 02:38:21 -0600 (MDT) Received: from localhost.in.ibm.com (unknown [9.124.35.136]) by b03ledav001.gho.boulder.ibm.com (Postfix) with ESMTP; Thu, 6 Sep 2018 02:38:21 -0600 (MDT) From: Chandan Rajendra To: fstests@vger.kernel.org Cc: Chandan Rajendra , eguan@redhat.com, darrick.wong@oracle.com, linux-xfs@vger.kernel.org Subject: [PATCH V2 05/16] Fix xfs/127 to work with 64k block size Date: Thu, 6 Sep 2018 14:10:02 +0530 X-Mailer: git-send-email 2.9.5 In-Reply-To: <20180906084013.2687-1-chandan@linux.vnet.ibm.com> References: <20180906084013.2687-1-chandan@linux.vnet.ibm.com> X-TM-AS-GCONF: 00 x-cbid: 18090608-0004-0000-0000-00001484F45A X-IBM-SpamModules-Scores: X-IBM-SpamModules-Versions: BY=3.00009676; HX=3.00000242; KW=3.00000007; PH=3.00000004; SC=3.00000266; SDB=6.01084285; UDB=6.00559630; IPR=6.00864284; MB=3.00023141; MTD=3.00000008; XFM=3.00000015; UTC=2018-09-06 08:38:24 X-IBM-AV-DETECTION: SAVI=unused REMOTE=unused XFE=unused x-cbparentid: 18090608-0005-0000-0000-000088B775A9 Message-Id: <20180906084013.2687-6-chandan@linux.vnet.ibm.com> X-Proofpoint-Virus-Version: vendor=fsecure engine=2.50.10434:,, definitions=2018-09-06_03:,, signatures=0 X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 priorityscore=1501 malwarescore=0 suspectscore=1 phishscore=0 bulkscore=0 spamscore=0 clxscore=1015 lowpriorityscore=0 mlxscore=0 impostorscore=0 mlxlogscore=999 adultscore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.0.1-1807170000 definitions=main-1809060091 Sender: fstests-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: fstests@vger.kernel.org X-Virus-Scanned: ClamAV using ClamSMTP With reflink feature enabled, we require atleast 500MiB of disk space to create a filesystem with 64k block size. Hence this commit sets the size of the scratch filesystem to 512MiB. Signed-off-by: Chandan Rajendra --- tests/xfs/127 | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tests/xfs/127 b/tests/xfs/127 index 41dacd7..6a95026 100755 --- a/tests/xfs/127 +++ b/tests/xfs/127 @@ -34,7 +34,7 @@ _require_no_large_scratch_dev _require_cp_reflink echo "Format and mount" -_scratch_mkfs_sized $((2 * 4096 * 4096)) > $seqres.full 2>&1 +_scratch_mkfs_sized $((512 * 1024 * 1024)) > $seqres.full 2>&1 _scratch_mount >> $seqres.full 2>&1 testdir=$SCRATCH_MNT/test-$seq From patchwork Thu Sep 6 08:40:03 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Chandan Rajendra X-Patchwork-Id: 10590027 Return-Path: Received: from mail.wl.linuxfoundation.org (pdx-wl-mail.web.codeaurora.org [172.30.200.125]) by pdx-korg-patchwork-2.web.codeaurora.org (Postfix) with ESMTP id 5BC175A4 for ; Thu, 6 Sep 2018 08:38:31 +0000 (UTC) Received: from mail.wl.linuxfoundation.org (localhost [127.0.0.1]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id 3D4AE2A3EF for ; Thu, 6 Sep 2018 08:38:31 +0000 (UTC) Received: by mail.wl.linuxfoundation.org (Postfix, from userid 486) id 31E6D2A3FC; Thu, 6 Sep 2018 08:38:31 +0000 (UTC) X-Spam-Checker-Version: SpamAssassin 3.3.1 (2010-03-16) on pdx-wl-mail.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-7.9 required=2.0 tests=BAYES_00,MAILING_LIST_MULTI, RCVD_IN_DNSWL_HI autolearn=ham version=3.3.1 Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id CCC972A3EF for ; Thu, 6 Sep 2018 08:38:30 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1728222AbeIFNMu (ORCPT ); Thu, 6 Sep 2018 09:12:50 -0400 Received: from mx0a-001b2d01.pphosted.com ([148.163.156.1]:38014 "EHLO mx0a-001b2d01.pphosted.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1728200AbeIFNMu (ORCPT ); Thu, 6 Sep 2018 09:12:50 -0400 Received: from pps.filterd (m0098399.ppops.net [127.0.0.1]) by mx0a-001b2d01.pphosted.com (8.16.0.22/8.16.0.22) with SMTP id w868XtLt083014 for ; Thu, 6 Sep 2018 04:38:29 -0400 Received: from e36.co.us.ibm.com (e36.co.us.ibm.com [32.97.110.154]) by mx0a-001b2d01.pphosted.com with ESMTP id 2maygqbjp5-1 (version=TLSv1.2 cipher=AES256-GCM-SHA384 bits=256 verify=NOT) for ; Thu, 06 Sep 2018 04:38:29 -0400 Received: from localhost by e36.co.us.ibm.com with IBM ESMTP SMTP Gateway: Authorized Use Only! Violators will be prosecuted for from ; Thu, 6 Sep 2018 02:38:28 -0600 Received: from b03cxnp08025.gho.boulder.ibm.com (9.17.130.17) by e36.co.us.ibm.com (192.168.1.136) with IBM ESMTP SMTP Gateway: Authorized Use Only! Violators will be prosecuted; (version=TLSv1/SSLv3 cipher=AES256-GCM-SHA384 bits=256/256) Thu, 6 Sep 2018 02:38:26 -0600 Received: from b03ledav001.gho.boulder.ibm.com (b03ledav001.gho.boulder.ibm.com [9.17.130.232]) by b03cxnp08025.gho.boulder.ibm.com (8.14.9/8.14.9/NCO v10.0) with ESMTP id w868cPGg21037082 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-GCM-SHA384 bits=256 verify=FAIL); Thu, 6 Sep 2018 01:38:25 -0700 Received: from b03ledav001.gho.boulder.ibm.com (unknown [127.0.0.1]) by IMSVA (Postfix) with ESMTP id 12F316E052; Thu, 6 Sep 2018 02:38:26 -0600 (MDT) Received: from b03ledav001.gho.boulder.ibm.com (unknown [127.0.0.1]) by IMSVA (Postfix) with ESMTP id 71BE16E04C; Thu, 6 Sep 2018 02:38:24 -0600 (MDT) Received: from localhost.in.ibm.com (unknown [9.124.35.136]) by b03ledav001.gho.boulder.ibm.com (Postfix) with ESMTP; Thu, 6 Sep 2018 02:38:24 -0600 (MDT) From: Chandan Rajendra To: fstests@vger.kernel.org Cc: Chandan Rajendra , eguan@redhat.com, darrick.wong@oracle.com, linux-xfs@vger.kernel.org Subject: [PATCH V2 06/16] Fix xfs/139 to work with 64k block size Date: Thu, 6 Sep 2018 14:10:03 +0530 X-Mailer: git-send-email 2.9.5 In-Reply-To: <20180906084013.2687-1-chandan@linux.vnet.ibm.com> References: <20180906084013.2687-1-chandan@linux.vnet.ibm.com> X-TM-AS-GCONF: 00 x-cbid: 18090608-0020-0000-0000-00000E5F79D3 X-IBM-SpamModules-Scores: X-IBM-SpamModules-Versions: BY=3.00009676; HX=3.00000242; KW=3.00000007; PH=3.00000004; SC=3.00000266; SDB=6.01084285; UDB=6.00559630; IPR=6.00864284; MB=3.00023141; MTD=3.00000008; XFM=3.00000015; UTC=2018-09-06 08:38:27 X-IBM-AV-DETECTION: SAVI=unused REMOTE=unused XFE=unused x-cbparentid: 18090608-0021-0000-0000-000062EEAACE Message-Id: <20180906084013.2687-7-chandan@linux.vnet.ibm.com> X-Proofpoint-Virus-Version: vendor=fsecure engine=2.50.10434:,, definitions=2018-09-06_03:,, signatures=0 X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 priorityscore=1501 malwarescore=0 suspectscore=1 phishscore=0 bulkscore=0 spamscore=0 clxscore=1015 lowpriorityscore=0 mlxscore=0 impostorscore=0 mlxlogscore=999 adultscore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.0.1-1807170000 definitions=main-1809060091 Sender: fstests-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: fstests@vger.kernel.org X-Virus-Scanned: ClamAV using ClamSMTP For 64k block size, the agsize provided in the test causes mkfs.xfs to fail due to insufficient log space. Hence this commit computes agsize based on block size of the filesystem. Signed-off-by: Chandan Rajendra --- tests/xfs/139 | 15 +++++++++------ tests/xfs/139.out | 8 ++++++-- 2 files changed, 15 insertions(+), 8 deletions(-) diff --git a/tests/xfs/139 b/tests/xfs/139 index 2a26635..9ab74c8 100755 --- a/tests/xfs/139 +++ b/tests/xfs/139 @@ -34,17 +34,20 @@ _require_cp_reflink rm -f $seqres.full +_scratch_mkfs >/dev/null 2>&1 +_scratch_mount +blksz=$(_get_block_size $SCRATCH_MNT) +_scratch_unmount + echo "Format and mount" -_scratch_mkfs -d agsize=$((32 * 1048576)) > $seqres.full 2>&1 +_scratch_mkfs -d agsize=$((4400 * $blksz)) > $seqres.full 2>&1 _scratch_mount >> $seqres.full 2>&1 testdir=$SCRATCH_MNT/test-$seq mkdir $testdir -blksz="$(_get_block_size $testdir)" echo "Create the original files" -sz=$((48 * 1048576)) -nr=$((sz / blksz)) +sz=$((4800 * $blksz)) _pwrite_byte 0x61 0 $sz $testdir/file1 >> $seqres.full _cp_reflink $testdir/file1 $testdir/file2 >> $seqres.full _scratch_cycle_mount @@ -54,8 +57,8 @@ _pwrite_byte 0x62 0 $sz $testdir/file1 >> $seqres.full _scratch_cycle_mount echo "Compare files" -md5sum $testdir/file1 | _filter_scratch -md5sum $testdir/file2 | _filter_scratch +od -t x1 $testdir/file1 | _filter_od +od -t x1 $testdir/file2 | _filter_od #filefrag -v $testdir/file1 $testdir/file2 # success, all done diff --git a/tests/xfs/139.out b/tests/xfs/139.out index dc6a31e..55e03d6 100644 --- a/tests/xfs/139.out +++ b/tests/xfs/139.out @@ -3,5 +3,9 @@ Format and mount Create the original files CoW every other block Compare files -673c759fb131ccf3336c4f8c549a497e SCRATCH_MNT/test-139/file1 -dc802351f6717547cbf4c951b294f952 SCRATCH_MNT/test-139/file2 +0 62 62 62 62 62 62 62 62 62 62 62 62 62 62 62 62 +* +11300 +0 61 61 61 61 61 61 61 61 61 61 61 61 61 61 61 61 +* +11300 From patchwork Thu Sep 6 08:40:04 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Chandan Rajendra X-Patchwork-Id: 10590031 Return-Path: Received: from mail.wl.linuxfoundation.org (pdx-wl-mail.web.codeaurora.org [172.30.200.125]) by pdx-korg-patchwork-2.web.codeaurora.org (Postfix) with ESMTP id 09C276CB for ; Thu, 6 Sep 2018 08:38:35 +0000 (UTC) Received: from mail.wl.linuxfoundation.org (localhost [127.0.0.1]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id DEA442A3EF for ; Thu, 6 Sep 2018 08:38:34 +0000 (UTC) Received: by mail.wl.linuxfoundation.org (Postfix, from userid 486) id D2FFE2A3F9; Thu, 6 Sep 2018 08:38:34 +0000 (UTC) X-Spam-Checker-Version: SpamAssassin 3.3.1 (2010-03-16) on pdx-wl-mail.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-7.9 required=2.0 tests=BAYES_00,MAILING_LIST_MULTI, RCVD_IN_DNSWL_HI autolearn=ham version=3.3.1 Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id 82C5E2A3EF for ; Thu, 6 Sep 2018 08:38:34 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1728223AbeIFNMy (ORCPT ); Thu, 6 Sep 2018 09:12:54 -0400 Received: from mx0a-001b2d01.pphosted.com ([148.163.156.1]:46954 "EHLO mx0a-001b2d01.pphosted.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1728220AbeIFNMy (ORCPT ); Thu, 6 Sep 2018 09:12:54 -0400 Received: from pps.filterd (m0098410.ppops.net [127.0.0.1]) by mx0a-001b2d01.pphosted.com (8.16.0.22/8.16.0.22) with SMTP id w868Y0tM127064 for ; Thu, 6 Sep 2018 04:38:33 -0400 Received: from e34.co.us.ibm.com (e34.co.us.ibm.com [32.97.110.152]) by mx0a-001b2d01.pphosted.com with ESMTP id 2maypek5b3-1 (version=TLSv1.2 cipher=AES256-GCM-SHA384 bits=256 verify=NOT) for ; Thu, 06 Sep 2018 04:38:33 -0400 Received: from localhost by e34.co.us.ibm.com with IBM ESMTP SMTP Gateway: Authorized Use Only! Violators will be prosecuted for from ; Thu, 6 Sep 2018 02:38:32 -0600 Received: from b03cxnp08026.gho.boulder.ibm.com (9.17.130.18) by e34.co.us.ibm.com (192.168.1.134) with IBM ESMTP SMTP Gateway: Authorized Use Only! Violators will be prosecuted; (version=TLSv1/SSLv3 cipher=AES256-GCM-SHA384 bits=256/256) Thu, 6 Sep 2018 02:38:29 -0600 Received: from b03ledav001.gho.boulder.ibm.com (b03ledav001.gho.boulder.ibm.com [9.17.130.232]) by b03cxnp08026.gho.boulder.ibm.com (8.14.9/8.14.9/NCO v10.0) with ESMTP id w868cSXP42795188 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-GCM-SHA384 bits=256 verify=FAIL); Thu, 6 Sep 2018 01:38:28 -0700 Received: from b03ledav001.gho.boulder.ibm.com (unknown [127.0.0.1]) by IMSVA (Postfix) with ESMTP id 34DA66E052; Thu, 6 Sep 2018 02:38:29 -0600 (MDT) Received: from b03ledav001.gho.boulder.ibm.com (unknown [127.0.0.1]) by IMSVA (Postfix) with ESMTP id 9386B6E053; Thu, 6 Sep 2018 02:38:27 -0600 (MDT) Received: from localhost.in.ibm.com (unknown [9.124.35.136]) by b03ledav001.gho.boulder.ibm.com (Postfix) with ESMTP; Thu, 6 Sep 2018 02:38:27 -0600 (MDT) From: Chandan Rajendra To: fstests@vger.kernel.org Cc: Chandan Rajendra , eguan@redhat.com, darrick.wong@oracle.com, linux-xfs@vger.kernel.org Subject: [PATCH V2 07/16] Fix xfs/140 to work with 64k block size Date: Thu, 6 Sep 2018 14:10:04 +0530 X-Mailer: git-send-email 2.9.5 In-Reply-To: <20180906084013.2687-1-chandan@linux.vnet.ibm.com> References: <20180906084013.2687-1-chandan@linux.vnet.ibm.com> X-TM-AS-GCONF: 00 x-cbid: 18090608-0016-0000-0000-00000928A8A9 X-IBM-SpamModules-Scores: X-IBM-SpamModules-Versions: BY=3.00009676; HX=3.00000242; KW=3.00000007; PH=3.00000004; SC=3.00000266; SDB=6.01084285; UDB=6.00559630; IPR=6.00864284; MB=3.00023141; MTD=3.00000008; XFM=3.00000015; UTC=2018-09-06 08:38:30 X-IBM-AV-DETECTION: SAVI=unused REMOTE=unused XFE=unused x-cbparentid: 18090608-0017-0000-0000-00004041D105 Message-Id: <20180906084013.2687-8-chandan@linux.vnet.ibm.com> X-Proofpoint-Virus-Version: vendor=fsecure engine=2.50.10434:,, definitions=2018-09-06_03:,, signatures=0 X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 priorityscore=1501 malwarescore=0 suspectscore=1 phishscore=0 bulkscore=0 spamscore=0 clxscore=1015 lowpriorityscore=0 mlxscore=0 impostorscore=0 mlxlogscore=999 adultscore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.0.1-1807170000 definitions=main-1809060091 Sender: fstests-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: fstests@vger.kernel.org X-Virus-Scanned: ClamAV using ClamSMTP For 64k block size, the agsize provided in the test causes mkfs.xfs to fail due to insufficient log space. Hence this commit computes agsize based on block size of the filesystem. Signed-off-by: Chandan Rajendra --- tests/xfs/140 | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) diff --git a/tests/xfs/140 b/tests/xfs/140 index 6e89fe3..c13ed65 100755 --- a/tests/xfs/140 +++ b/tests/xfs/140 @@ -34,17 +34,21 @@ _require_cp_reflink rm -f $seqres.full +_scratch_mkfs >/dev/null 2>&1 +_scratch_mount +blksz=$(_get_block_size $SCRATCH_MNT) +_scratch_unmount + echo "Format and mount" -_scratch_mkfs -d agsize=$((32 * 1048576)) > $seqres.full 2>&1 +_scratch_mkfs -d agsize=$((4400 * $blksz)) > $seqres.full 2>&1 _scratch_mount >> $seqres.full 2>&1 testdir=$SCRATCH_MNT/test-$seq mkdir $testdir -blksz=$(_get_block_size $testdir) echo "Create the original files" -sz=$((48 * 1048576)) -nr=$((sz / blksz)) +nr=4800 +sz=$(($nr * $blksz)) _pwrite_byte 0x61 0 $sz $testdir/file1 >> $seqres.full _cp_reflink $testdir/file1 $testdir/file2 >> $seqres.full _pwrite_byte 0x61 0 $sz $testdir/file2.chk >> $seqres.full From patchwork Thu Sep 6 08:40:05 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Chandan Rajendra X-Patchwork-Id: 10590035 Return-Path: Received: from mail.wl.linuxfoundation.org (pdx-wl-mail.web.codeaurora.org [172.30.200.125]) by pdx-korg-patchwork-2.web.codeaurora.org (Postfix) with ESMTP id C84E25A4 for ; Thu, 6 Sep 2018 08:38:39 +0000 (UTC) Received: from mail.wl.linuxfoundation.org (localhost [127.0.0.1]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id A978C2A3F7 for ; Thu, 6 Sep 2018 08:38:39 +0000 (UTC) Received: by mail.wl.linuxfoundation.org (Postfix, from userid 486) id 9D4012A41A; Thu, 6 Sep 2018 08:38:39 +0000 (UTC) X-Spam-Checker-Version: SpamAssassin 3.3.1 (2010-03-16) on pdx-wl-mail.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-7.9 required=2.0 tests=BAYES_00,MAILING_LIST_MULTI, RCVD_IN_DNSWL_HI autolearn=ham version=3.3.1 Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id D52A62A3F7 for ; Thu, 6 Sep 2018 08:38:38 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1728014AbeIFNM6 (ORCPT ); Thu, 6 Sep 2018 09:12:58 -0400 Received: from mx0a-001b2d01.pphosted.com ([148.163.156.1]:53440 "EHLO mx0a-001b2d01.pphosted.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1728224AbeIFNM6 (ORCPT ); Thu, 6 Sep 2018 09:12:58 -0400 Received: from pps.filterd (m0098396.ppops.net [127.0.0.1]) by mx0a-001b2d01.pphosted.com (8.16.0.22/8.16.0.22) with SMTP id w868XtnS126340 for ; Thu, 6 Sep 2018 04:38:37 -0400 Received: from e33.co.us.ibm.com (e33.co.us.ibm.com [32.97.110.151]) by mx0a-001b2d01.pphosted.com with ESMTP id 2mays4ay95-1 (version=TLSv1.2 cipher=AES256-GCM-SHA384 bits=256 verify=NOT) for ; Thu, 06 Sep 2018 04:38:35 -0400 Received: from localhost by e33.co.us.ibm.com with IBM ESMTP SMTP Gateway: Authorized Use Only! Violators will be prosecuted for from ; Thu, 6 Sep 2018 02:38:34 -0600 Received: from b03cxnp07029.gho.boulder.ibm.com (9.17.130.16) by e33.co.us.ibm.com (192.168.1.133) with IBM ESMTP SMTP Gateway: Authorized Use Only! Violators will be prosecuted; (version=TLSv1/SSLv3 cipher=AES256-GCM-SHA384 bits=256/256) Thu, 6 Sep 2018 02:38:32 -0600 Received: from b03ledav001.gho.boulder.ibm.com (b03ledav001.gho.boulder.ibm.com [9.17.130.232]) by b03cxnp07029.gho.boulder.ibm.com (8.14.9/8.14.9/NCO v10.0) with ESMTP id w868cVj643712646 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-GCM-SHA384 bits=256 verify=FAIL); Thu, 6 Sep 2018 01:38:31 -0700 Received: from b03ledav001.gho.boulder.ibm.com (unknown [127.0.0.1]) by IMSVA (Postfix) with ESMTP id 564A76E04C; Thu, 6 Sep 2018 02:38:32 -0600 (MDT) Received: from b03ledav001.gho.boulder.ibm.com (unknown [127.0.0.1]) by IMSVA (Postfix) with ESMTP id B4FAB6E052; Thu, 6 Sep 2018 02:38:30 -0600 (MDT) Received: from localhost.in.ibm.com (unknown [9.124.35.136]) by b03ledav001.gho.boulder.ibm.com (Postfix) with ESMTP; Thu, 6 Sep 2018 02:38:30 -0600 (MDT) From: Chandan Rajendra To: fstests@vger.kernel.org Cc: Chandan Rajendra , eguan@redhat.com, darrick.wong@oracle.com, linux-xfs@vger.kernel.org Subject: [PATCH V2 08/16] Fix xfs/190 to work with 64k block size Date: Thu, 6 Sep 2018 14:10:05 +0530 X-Mailer: git-send-email 2.9.5 In-Reply-To: <20180906084013.2687-1-chandan@linux.vnet.ibm.com> References: <20180906084013.2687-1-chandan@linux.vnet.ibm.com> X-TM-AS-GCONF: 00 x-cbid: 18090608-0036-0000-0000-00000A31F6D1 X-IBM-SpamModules-Scores: X-IBM-SpamModules-Versions: BY=3.00009676; HX=3.00000242; KW=3.00000007; PH=3.00000004; SC=3.00000266; SDB=6.01084285; UDB=6.00559630; IPR=6.00864284; MB=3.00023141; MTD=3.00000008; XFM=3.00000015; UTC=2018-09-06 08:38:34 X-IBM-AV-DETECTION: SAVI=unused REMOTE=unused XFE=unused x-cbparentid: 18090608-0037-0000-0000-000048D82D3B Message-Id: <20180906084013.2687-9-chandan@linux.vnet.ibm.com> X-Proofpoint-Virus-Version: vendor=fsecure engine=2.50.10434:,, definitions=2018-09-06_03:,, signatures=0 X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 priorityscore=1501 malwarescore=0 suspectscore=1 phishscore=0 bulkscore=0 spamscore=0 clxscore=1015 lowpriorityscore=0 mlxscore=0 impostorscore=0 mlxlogscore=999 adultscore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.0.1-1807170000 definitions=main-1809060091 Sender: fstests-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: fstests@vger.kernel.org X-Virus-Scanned: ClamAV using ClamSMTP This commit describes "file hole" ranges in multiples of block sizes rather than using constants. Signed-off-by: Chandan Rajendra --- tests/xfs/190 | 26 +++++++++++++++++--------- 1 file changed, 17 insertions(+), 9 deletions(-) diff --git a/tests/xfs/190 b/tests/xfs/190 index 3275e29..53dad06 100755 --- a/tests/xfs/190 +++ b/tests/xfs/190 @@ -10,13 +10,6 @@ # # PV 985792 # -#This is the list of holes to punch in the file limited to $filesize -#NOTE holes cannot overlap or this script will fail. -holes="4096:4096 303104:4096 1048576:512 1051648:8192 1065984:8192 1085440:7168" -#filesize in MB -filesize=10 -#Name of file to perform the test on -filename=test-190 seq=`basename $0` seqres=$RESULT_DIR/$seq @@ -38,9 +31,24 @@ _supported_os Linux _require_scratch _scratch_mkfs_xfs >/dev/null 2>&1 _scratch_mount -fsblocksize=`$XFS_INFO_PROG $SCRATCH_MNT|sed 's/=/ /g'|awk '/^data / { print $3 }'` -dd if=/dev/zero of=$SCRATCH_MNT/$filename bs=1024k count=10 >> $seqres.full 2>&1 +fsblocksize=$(_get_block_size $SCRATCH_MNT) + +#This is the list of holes to punch in the file limited to $filesize +#NOTE holes cannot overlap or this script will fail. +holes="$fsblocksize:$fsblocksize \ +$(($fsblocksize * 74)):$fsblocksize \ +$(($fsblocksize * 256)):$(($fsblocksize / 8)) \ +$(echo scale=0\;$fsblocksize \* 256 \+ $fsblocksize \* 3 \/ 4 | bc):$(($fsblocksize * 2)) \ +$(echo scale=0\;$fsblocksize \* 260 \+ $fsblocksize \* 1 \/ 4 | bc):$(($fsblocksize * 2)) \ +$(($fsblocksize * 265)):$(echo scale=0\;$fsblocksize \+ $fsblocksize \* 3 \/ 4 | bc)" + +#filesize +filesize=$(($fsblocksize * 2560)) +#Name of file to perform the test on +filename=test-190 + +$XFS_IO_PROG -f -c "pwrite 0 $(($fsblocksize * 2560))" $SCRATCH_MNT/$filename >> $seqres.full 2>&1 # run DMAPI test using verbose output echo Punching holes in file From patchwork Thu Sep 6 08:40:06 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Chandan Rajendra X-Patchwork-Id: 10590039 Return-Path: Received: from mail.wl.linuxfoundation.org (pdx-wl-mail.web.codeaurora.org [172.30.200.125]) by pdx-korg-patchwork-2.web.codeaurora.org (Postfix) with ESMTP id E992A5A4 for ; Thu, 6 Sep 2018 08:38:42 +0000 (UTC) Received: from mail.wl.linuxfoundation.org (localhost [127.0.0.1]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id CA8B92A3EF for ; Thu, 6 Sep 2018 08:38:42 +0000 (UTC) Received: by mail.wl.linuxfoundation.org (Postfix, from userid 486) id BEAF32A3FC; Thu, 6 Sep 2018 08:38:42 +0000 (UTC) X-Spam-Checker-Version: SpamAssassin 3.3.1 (2010-03-16) on pdx-wl-mail.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-7.9 required=2.0 tests=BAYES_00,MAILING_LIST_MULTI, RCVD_IN_DNSWL_HI autolearn=ham version=3.3.1 Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id D07932A3EF for ; Thu, 6 Sep 2018 08:38:41 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1728227AbeIFNNB (ORCPT ); Thu, 6 Sep 2018 09:13:01 -0400 Received: from mx0a-001b2d01.pphosted.com ([148.163.156.1]:47692 "EHLO mx0a-001b2d01.pphosted.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1728201AbeIFNNB (ORCPT ); Thu, 6 Sep 2018 09:13:01 -0400 Received: from pps.filterd (m0098410.ppops.net [127.0.0.1]) by mx0a-001b2d01.pphosted.com (8.16.0.22/8.16.0.22) with SMTP id w868Xxqn126983 for ; Thu, 6 Sep 2018 04:38:39 -0400 Received: from e33.co.us.ibm.com (e33.co.us.ibm.com [32.97.110.151]) by mx0a-001b2d01.pphosted.com with ESMTP id 2maypek5f3-1 (version=TLSv1.2 cipher=AES256-GCM-SHA384 bits=256 verify=NOT) for ; Thu, 06 Sep 2018 04:38:39 -0400 Received: from localhost by e33.co.us.ibm.com with IBM ESMTP SMTP Gateway: Authorized Use Only! Violators will be prosecuted for from ; Thu, 6 Sep 2018 02:38:38 -0600 Received: from b03cxnp08027.gho.boulder.ibm.com (9.17.130.19) by e33.co.us.ibm.com (192.168.1.133) with IBM ESMTP SMTP Gateway: Authorized Use Only! Violators will be prosecuted; (version=TLSv1/SSLv3 cipher=AES256-GCM-SHA384 bits=256/256) Thu, 6 Sep 2018 02:38:36 -0600 Received: from b03ledav001.gho.boulder.ibm.com (b03ledav001.gho.boulder.ibm.com [9.17.130.232]) by b03cxnp08027.gho.boulder.ibm.com (8.14.9/8.14.9/NCO v10.0) with ESMTP id w868cZle46727376 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-GCM-SHA384 bits=256 verify=FAIL); Thu, 6 Sep 2018 01:38:35 -0700 Received: from b03ledav001.gho.boulder.ibm.com (unknown [127.0.0.1]) by IMSVA (Postfix) with ESMTP id 843116E050; Thu, 6 Sep 2018 02:38:35 -0600 (MDT) Received: from b03ledav001.gho.boulder.ibm.com (unknown [127.0.0.1]) by IMSVA (Postfix) with ESMTP id D6E3E6E04E; Thu, 6 Sep 2018 02:38:33 -0600 (MDT) Received: from localhost.in.ibm.com (unknown [9.124.35.136]) by b03ledav001.gho.boulder.ibm.com (Postfix) with ESMTP; Thu, 6 Sep 2018 02:38:33 -0600 (MDT) From: Chandan Rajendra To: fstests@vger.kernel.org Cc: Chandan Rajendra , eguan@redhat.com, darrick.wong@oracle.com, linux-xfs@vger.kernel.org Subject: [PATCH V2 09/16] Fix xfs/299 to work with 64k block size Date: Thu, 6 Sep 2018 14:10:06 +0530 X-Mailer: git-send-email 2.9.5 In-Reply-To: <20180906084013.2687-1-chandan@linux.vnet.ibm.com> References: <20180906084013.2687-1-chandan@linux.vnet.ibm.com> X-TM-AS-GCONF: 00 x-cbid: 18090608-0036-0000-0000-00000A31F6D3 X-IBM-SpamModules-Scores: X-IBM-SpamModules-Versions: BY=3.00009676; HX=3.00000242; KW=3.00000007; PH=3.00000004; SC=3.00000266; SDB=6.01084285; UDB=6.00559630; IPR=6.00864284; MB=3.00023141; MTD=3.00000008; XFM=3.00000015; UTC=2018-09-06 08:38:37 X-IBM-AV-DETECTION: SAVI=unused REMOTE=unused XFE=unused x-cbparentid: 18090608-0037-0000-0000-000048D82D45 Message-Id: <20180906084013.2687-10-chandan@linux.vnet.ibm.com> X-Proofpoint-Virus-Version: vendor=fsecure engine=2.50.10434:,, definitions=2018-09-06_03:,, signatures=0 X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 priorityscore=1501 malwarescore=0 suspectscore=1 phishscore=0 bulkscore=0 spamscore=0 clxscore=1015 lowpriorityscore=0 mlxscore=0 impostorscore=0 mlxlogscore=999 adultscore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.0.1-1807170000 definitions=main-1809060091 Sender: fstests-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: fstests@vger.kernel.org X-Virus-Scanned: ClamAV using ClamSMTP This commit changes the test to calculate quota limits based on the block size of the underlying filesystem. Also, the sizes of the test files are now made to be a multiple of the filesystem block size. Signed-off-by: Chandan Rajendra --- tests/xfs/299 | 29 +++++++++++++++++---------- tests/xfs/299.out | 60 +++++++++++++++++++++++++++---------------------------- 2 files changed, 48 insertions(+), 41 deletions(-) diff --git a/tests/xfs/299 b/tests/xfs/299 index f0012ff..5a0e693 100755 --- a/tests/xfs/299 +++ b/tests/xfs/299 @@ -41,11 +41,6 @@ _require_xfs_quota _require_xfs_mkfs_crc _require_xfs_crc -bsoft=100 -bhard=500 -isoft=4 -ihard=10 - _filter_report() { tr -s '[:space:]' | \ @@ -58,7 +53,9 @@ _filter_report() if ($ENV{'LARGE_SCRATCH_DEV'}) { $val = $ENV{'NUM_SPACE_FILES'}; } - s/(^\[ROOT\] \S+ \S+ \S+ \S+ \[--------\] )(\S+)/$1@{[$2 - $val]}/g' + s/(^\[ROOT\] \S+ \S+ \S+ \S+ \[--------\] )(\S+)/$1@{[$2 - $val]}/g' | + perl -npe ' + s|^(.*?) (\d+) (\d+) (\d+)|$1 @{[$2 * 1024 /'$bsize']} @{[$3 * 1024 /'$bsize']} @{[$4 * 1024 /'$bsize']}|' } # The actual point at which limit enforcement takes place for the @@ -73,9 +70,10 @@ _filter_and_check_blks() if (/^\#'$id'\s+(\d+)/ && '$enforce') { $maximum = '$bhard'; $minimum = '$bhard' * 85/100; - if (($1 < $minimum || $1 > $maximum) && '$noextsz') { + $used = $1 * 1024; + if (($used < $minimum || $used > $maximum) && '$noextsz') { printf(" URK %d: %d is out of range! [%d,%d]\n", - '$id', $1, $minimum, $maximum); + '$id', $used, $minimum, $maximum); } s/^(\#'$id'\s+)(\d+)/\1 =OK=/g; } @@ -128,7 +126,7 @@ _exercise() echo "ls -l $SCRATCH_MNT" >>$seqres.full ls -l $SCRATCH_MNT >>$seqres.full xfs_quota -D $tmp.projects -P $tmp.projid -x \ - -c "limit -$type bsoft=${bsoft}k bhard=${bhard}k $id" \ + -c "limit -$type bsoft=${bsoft} bhard=${bhard} $id" \ -c "limit -$type isoft=$isoft ihard=$ihard $id" \ $SCRATCH_DEV xfs_quota -D $tmp.projects -P $tmp.projid -x \ @@ -139,6 +137,8 @@ _exercise() echo "*** push past the soft inode limit" | tee -a $seqres.full _file_as_id $SCRATCH_MNT/softie1 $id $type 1024 0 _file_as_id $SCRATCH_MNT/softie2 $id $type 1024 0 + _file_as_id $SCRATCH_MNT/softie3 $id $type 1024 0 + _file_as_id $SCRATCH_MNT/softie4 $id $type 1024 0 _qmount xfs_quota -D $tmp.projects -P $tmp.projid -x \ -c "repquota -birnN -$type" $SCRATCH_DEV | @@ -146,7 +146,7 @@ _exercise() echo echo "*** push past the soft block limit" | tee -a $seqres.full - _file_as_id $SCRATCH_MNT/softie $id $type 1024 140 + _file_as_id $SCRATCH_MNT/softie $id $type $bsize 35 _qmount xfs_quota -D $tmp.projects -P $tmp.projid -x \ -c "repquota -birnN -$type" $SCRATCH_DEV | @@ -167,7 +167,7 @@ _exercise() echo # Note: for quota accounting (not enforcement), EDQUOT is not expected echo "*** push past the hard block limit (expect EDQUOT)" | tee -a $seqres.full - _file_as_id $SCRATCH_MNT/softie $id $type 1024 540 + _file_as_id $SCRATCH_MNT/softie $id $type $bsize 135 echo "ls -l $SCRATCH_MNT" >>$seqres.full ls -l $SCRATCH_MNT >>$seqres.full _qmount @@ -202,6 +202,13 @@ echo "*** user, group, and project" _qmount_option "uquota,gquota,pquota" _qmount +bsize=$(_get_block_size $SCRATCH_MNT) + +bsoft=$(( 25 * $bsize )) +bhard=$(( 125 * $bsize )) +isoft=4 +ihard=10 + # non-root users need to be able to write to this filesystem chmod 777 $SCRATCH_MNT diff --git a/tests/xfs/299.out b/tests/xfs/299.out index d13c7da..93e89a9 100644 --- a/tests/xfs/299.out +++ b/tests/xfs/299.out @@ -12,23 +12,23 @@ realtime =RDEV extsz=XXX blocks=XXX, rtextents=XXX *** report initial settings [ROOT] 0 0 0 00 [--------] 3 0 0 00 [--------] 0 0 0 00 [--------] -[NAME] 0 100 500 00 [--------] 1 4 10 00 [--------] 0 0 0 00 [--------] +[NAME] 0 25 125 00 [--------] 1 4 10 00 [--------] 0 0 0 00 [--------] *** push past the soft inode limit [ROOT] 0 0 0 00 [--------] 3 0 0 00 [--------] 0 0 0 00 [--------] -[NAME] 0 100 500 00 [--------] 3 4 10 00 [--------] 0 0 0 00 [--------] +[NAME] 0 25 125 00 [--------] 5 4 10 00 [7 days] 0 0 0 00 [--------] *** push past the soft block limit [ROOT] 0 0 0 00 [--------] 3 0 0 00 [--------] 0 0 0 00 [--------] -[NAME] 140 100 500 00 [7 days] 4 4 10 00 [--------] 0 0 0 00 [--------] +[NAME] 35 25 125 00 [7 days] 6 4 10 00 [7 days] 0 0 0 00 [--------] *** push past the hard inode limit (expect EDQUOT) [ROOT] 0 0 0 00 [--------] 3 0 0 00 [--------] 0 0 0 00 [--------] -[NAME] 140 100 500 00 [7 days] 9 4 10 00 [7 days] 0 0 0 00 [--------] +[NAME] 35 25 125 00 [7 days] 9 4 10 00 [7 days] 0 0 0 00 [--------] *** push past the hard block limit (expect EDQUOT) [ROOT] 0 0 0 00 [--------] 3 0 0 00 [--------] 0 0 0 00 [--------] -[NAME] =OK= 100 500 00 [7 days] 9 4 10 00 [7 days] 0 0 0 00 [--------] +[NAME] =OK= 25 125 0 [7 days] 9 4 10 00 [7 days] 0 0 0 00 [--------] *** report no quota settings @@ -36,23 +36,23 @@ realtime =RDEV extsz=XXX blocks=XXX, rtextents=XXX *** report initial settings [ROOT] 0 0 0 00 [--------] 3 0 0 00 [--------] 0 0 0 00 [--------] -[NAME] 0 100 500 00 [--------] 1 4 10 00 [--------] 0 0 0 00 [--------] +[NAME] 0 25 125 00 [--------] 1 4 10 00 [--------] 0 0 0 00 [--------] *** push past the soft inode limit [ROOT] 0 0 0 00 [--------] 3 0 0 00 [--------] 0 0 0 00 [--------] -[NAME] 0 100 500 00 [--------] 3 4 10 00 [--------] 0 0 0 00 [--------] +[NAME] 0 25 125 00 [--------] 5 4 10 00 [7 days] 0 0 0 00 [--------] *** push past the soft block limit [ROOT] 0 0 0 00 [--------] 3 0 0 00 [--------] 0 0 0 00 [--------] -[NAME] 140 100 500 00 [7 days] 4 4 10 00 [--------] 0 0 0 00 [--------] +[NAME] 35 25 125 00 [7 days] 6 4 10 00 [7 days] 0 0 0 00 [--------] *** push past the hard inode limit (expect EDQUOT) [ROOT] 0 0 0 00 [--------] 3 0 0 00 [--------] 0 0 0 00 [--------] -[NAME] 140 100 500 00 [7 days] 10 4 10 00 [7 days] 0 0 0 00 [--------] +[NAME] 35 25 125 00 [7 days] 10 4 10 00 [7 days] 0 0 0 00 [--------] *** push past the hard block limit (expect EDQUOT) [ROOT] 0 0 0 00 [--------] 3 0 0 00 [--------] 0 0 0 00 [--------] -[NAME] =OK= 100 500 00 [7 days] 10 4 10 00 [7 days] 0 0 0 00 [--------] +[NAME] =OK= 25 125 0 [7 days] 10 4 10 00 [7 days] 0 0 0 00 [--------] *** report no quota settings @@ -60,23 +60,23 @@ realtime =RDEV extsz=XXX blocks=XXX, rtextents=XXX *** report initial settings [ROOT] 0 0 0 00 [--------] 3 0 0 00 [--------] 0 0 0 00 [--------] -[NAME] 0 100 500 00 [--------] 1 4 10 00 [--------] 0 0 0 00 [--------] +[NAME] 0 25 125 00 [--------] 1 4 10 00 [--------] 0 0 0 00 [--------] *** push past the soft inode limit [ROOT] 0 0 0 00 [--------] 3 0 0 00 [--------] 0 0 0 00 [--------] -[NAME] 0 100 500 00 [--------] 3 4 10 00 [--------] 0 0 0 00 [--------] +[NAME] 0 25 125 00 [--------] 5 4 10 00 [7 days] 0 0 0 00 [--------] *** push past the soft block limit [ROOT] 0 0 0 00 [--------] 3 0 0 00 [--------] 0 0 0 00 [--------] -[NAME] 140 100 500 00 [7 days] 4 4 10 00 [--------] 0 0 0 00 [--------] +[NAME] 35 25 125 00 [7 days] 6 4 10 00 [7 days] 0 0 0 00 [--------] *** push past the hard inode limit (expect EDQUOT) [ROOT] 0 0 0 00 [--------] 3 0 0 00 [--------] 0 0 0 00 [--------] -[NAME] 140 100 500 00 [7 days] 10 4 10 00 [7 days] 0 0 0 00 [--------] +[NAME] 35 25 125 00 [7 days] 10 4 10 00 [7 days] 0 0 0 00 [--------] *** push past the hard block limit (expect EDQUOT) [ROOT] 0 0 0 00 [--------] 3 0 0 00 [--------] 0 0 0 00 [--------] -[NAME] =OK= 100 500 00 [7 days] 10 4 10 00 [7 days] 0 0 0 00 [--------] +[NAME] =OK= 25 125 0 [7 days] 10 4 10 00 [7 days] 0 0 0 00 [--------] *** unmount meta-data=DDEV isize=XXX agcount=N, agsize=XXX blks @@ -92,23 +92,23 @@ realtime =RDEV extsz=XXX blocks=XXX, rtextents=XXX *** report initial settings [ROOT] 0 0 0 00 [--------] 3 0 0 00 [--------] 0 0 0 00 [--------] -[NAME] 0 100 500 00 [--------] 1 4 10 00 [--------] 0 0 0 00 [--------] +[NAME] 0 25 125 00 [--------] 1 4 10 00 [--------] 0 0 0 00 [--------] *** push past the soft inode limit [ROOT] 0 0 0 00 [--------] 3 0 0 00 [--------] 0 0 0 00 [--------] -[NAME] 0 100 500 00 [--------] 3 4 10 00 [--------] 0 0 0 00 [--------] +[NAME] 0 25 125 00 [--------] 5 4 10 00 [--------] 0 0 0 00 [--------] *** push past the soft block limit [ROOT] 0 0 0 00 [--------] 3 0 0 00 [--------] 0 0 0 00 [--------] -[NAME] 140 100 500 00 [--------] 4 4 10 00 [--------] 0 0 0 00 [--------] +[NAME] 35 25 125 00 [--------] 6 4 10 00 [--------] 0 0 0 00 [--------] *** push past the hard inode limit (expect EDQUOT) [ROOT] 0 0 0 00 [--------] 3 0 0 00 [--------] 0 0 0 00 [--------] -[NAME] 140 100 500 00 [--------] 16 4 10 00 [--none--] 0 0 0 00 [--------] +[NAME] 35 25 125 00 [--------] 18 4 10 00 [--none--] 0 0 0 00 [--------] *** push past the hard block limit (expect EDQUOT) [ROOT] 0 0 0 00 [--------] 3 0 0 00 [--------] 0 0 0 00 [--------] -[NAME] 540 100 500 00 [--none--] 16 4 10 00 [--none--] 0 0 0 00 [--------] +[NAME] 135 25 125 00 [--none--] 18 4 10 00 [--none--] 0 0 0 00 [--------] *** report no quota settings @@ -116,23 +116,23 @@ realtime =RDEV extsz=XXX blocks=XXX, rtextents=XXX *** report initial settings [ROOT] 0 0 0 00 [--------] 3 0 0 00 [--------] 0 0 0 00 [--------] -[NAME] 0 100 500 00 [--------] 1 4 10 00 [--------] 0 0 0 00 [--------] +[NAME] 0 25 125 00 [--------] 1 4 10 00 [--------] 0 0 0 00 [--------] *** push past the soft inode limit [ROOT] 0 0 0 00 [--------] 3 0 0 00 [--------] 0 0 0 00 [--------] -[NAME] 0 100 500 00 [--------] 3 4 10 00 [--------] 0 0 0 00 [--------] +[NAME] 0 25 125 00 [--------] 5 4 10 00 [--------] 0 0 0 00 [--------] *** push past the soft block limit [ROOT] 0 0 0 00 [--------] 3 0 0 00 [--------] 0 0 0 00 [--------] -[NAME] 140 100 500 00 [--------] 4 4 10 00 [--------] 0 0 0 00 [--------] +[NAME] 35 25 125 00 [--------] 6 4 10 00 [--------] 0 0 0 00 [--------] *** push past the hard inode limit (expect EDQUOT) [ROOT] 0 0 0 00 [--------] 3 0 0 00 [--------] 0 0 0 00 [--------] -[NAME] 140 100 500 00 [--------] 16 4 10 00 [--none--] 0 0 0 00 [--------] +[NAME] 35 25 125 00 [--------] 18 4 10 00 [--none--] 0 0 0 00 [--------] *** push past the hard block limit (expect EDQUOT) [ROOT] 0 0 0 00 [--------] 3 0 0 00 [--------] 0 0 0 00 [--------] -[NAME] 540 100 500 00 [--none--] 16 4 10 00 [--none--] 0 0 0 00 [--------] +[NAME] 135 25 125 00 [--none--] 18 4 10 00 [--none--] 0 0 0 00 [--------] *** report no quota settings @@ -140,22 +140,22 @@ realtime =RDEV extsz=XXX blocks=XXX, rtextents=XXX *** report initial settings [ROOT] 0 0 0 00 [--------] 3 0 0 00 [--------] 0 0 0 00 [--------] -[NAME] 0 100 500 00 [--------] 1 4 10 00 [--------] 0 0 0 00 [--------] +[NAME] 0 25 125 00 [--------] 1 4 10 00 [--------] 0 0 0 00 [--------] *** push past the soft inode limit [ROOT] 0 0 0 00 [--------] 3 0 0 00 [--------] 0 0 0 00 [--------] -[NAME] 0 100 500 00 [--------] 3 4 10 00 [--------] 0 0 0 00 [--------] +[NAME] 0 25 125 00 [--------] 5 4 10 00 [--------] 0 0 0 00 [--------] *** push past the soft block limit [ROOT] 0 0 0 00 [--------] 3 0 0 00 [--------] 0 0 0 00 [--------] -[NAME] 140 100 500 00 [--------] 4 4 10 00 [--------] 0 0 0 00 [--------] +[NAME] 35 25 125 00 [--------] 6 4 10 00 [--------] 0 0 0 00 [--------] *** push past the hard inode limit (expect EDQUOT) [ROOT] 0 0 0 00 [--------] 3 0 0 00 [--------] 0 0 0 00 [--------] -[NAME] 140 100 500 00 [--------] 16 4 10 00 [--none--] 0 0 0 00 [--------] +[NAME] 35 25 125 00 [--------] 18 4 10 00 [--none--] 0 0 0 00 [--------] *** push past the hard block limit (expect EDQUOT) [ROOT] 0 0 0 00 [--------] 3 0 0 00 [--------] 0 0 0 00 [--------] -[NAME] 540 100 500 00 [--none--] 16 4 10 00 [--none--] 0 0 0 00 [--------] +[NAME] 135 25 125 00 [--none--] 18 4 10 00 [--none--] 0 0 0 00 [--------] *** unmount From patchwork Thu Sep 6 08:40:07 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Chandan Rajendra X-Patchwork-Id: 10590043 Return-Path: Received: from mail.wl.linuxfoundation.org (pdx-wl-mail.web.codeaurora.org [172.30.200.125]) by pdx-korg-patchwork-2.web.codeaurora.org (Postfix) with ESMTP id 23F445A4 for ; Thu, 6 Sep 2018 08:38:47 +0000 (UTC) Received: from mail.wl.linuxfoundation.org (localhost [127.0.0.1]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id 04A472A3EF for ; Thu, 6 Sep 2018 08:38:47 +0000 (UTC) Received: by mail.wl.linuxfoundation.org (Postfix, from userid 486) id ED51F2A3F9; Thu, 6 Sep 2018 08:38:46 +0000 (UTC) X-Spam-Checker-Version: SpamAssassin 3.3.1 (2010-03-16) on pdx-wl-mail.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-7.9 required=2.0 tests=BAYES_00,MAILING_LIST_MULTI, RCVD_IN_DNSWL_HI autolearn=ham version=3.3.1 Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id 8B4EA2A3EF for ; Thu, 6 Sep 2018 08:38:46 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1728252AbeIFNNF (ORCPT ); Thu, 6 Sep 2018 09:13:05 -0400 Received: from mx0a-001b2d01.pphosted.com ([148.163.156.1]:47758 "EHLO mx0a-001b2d01.pphosted.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1728104AbeIFNNF (ORCPT ); Thu, 6 Sep 2018 09:13:05 -0400 Received: from pps.filterd (m0098409.ppops.net [127.0.0.1]) by mx0a-001b2d01.pphosted.com (8.16.0.22/8.16.0.22) with SMTP id w868Xu6P025985 for ; Thu, 6 Sep 2018 04:38:43 -0400 Received: from e33.co.us.ibm.com (e33.co.us.ibm.com [32.97.110.151]) by mx0a-001b2d01.pphosted.com with ESMTP id 2maymd3c2k-1 (version=TLSv1.2 cipher=AES256-GCM-SHA384 bits=256 verify=NOT) for ; Thu, 06 Sep 2018 04:38:43 -0400 Received: from localhost by e33.co.us.ibm.com with IBM ESMTP SMTP Gateway: Authorized Use Only! Violators will be prosecuted for from ; Thu, 6 Sep 2018 02:38:42 -0600 Received: from b03cxnp08025.gho.boulder.ibm.com (9.17.130.17) by e33.co.us.ibm.com (192.168.1.133) with IBM ESMTP SMTP Gateway: Authorized Use Only! Violators will be prosecuted; (version=TLSv1/SSLv3 cipher=AES256-GCM-SHA384 bits=256/256) Thu, 6 Sep 2018 02:38:39 -0600 Received: from b03ledav001.gho.boulder.ibm.com (b03ledav001.gho.boulder.ibm.com [9.17.130.232]) by b03cxnp08025.gho.boulder.ibm.com (8.14.9/8.14.9/NCO v10.0) with ESMTP id w868cc9l16122062 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-GCM-SHA384 bits=256 verify=FAIL); Thu, 6 Sep 2018 01:38:38 -0700 Received: from b03ledav001.gho.boulder.ibm.com (unknown [127.0.0.1]) by IMSVA (Postfix) with ESMTP id A63846E050; Thu, 6 Sep 2018 02:38:38 -0600 (MDT) Received: from b03ledav001.gho.boulder.ibm.com (unknown [127.0.0.1]) by IMSVA (Postfix) with ESMTP id 105FB6E052; Thu, 6 Sep 2018 02:38:37 -0600 (MDT) Received: from localhost.in.ibm.com (unknown [9.124.35.136]) by b03ledav001.gho.boulder.ibm.com (Postfix) with ESMTP; Thu, 6 Sep 2018 02:38:36 -0600 (MDT) From: Chandan Rajendra To: fstests@vger.kernel.org Cc: Chandan Rajendra , eguan@redhat.com, darrick.wong@oracle.com, linux-xfs@vger.kernel.org Subject: [PATCH V2 10/16] xfs/325: Inject free_extent error after CoW operation Date: Thu, 6 Sep 2018 14:10:07 +0530 X-Mailer: git-send-email 2.9.5 In-Reply-To: <20180906084013.2687-1-chandan@linux.vnet.ibm.com> References: <20180906084013.2687-1-chandan@linux.vnet.ibm.com> X-TM-AS-GCONF: 00 x-cbid: 18090608-0036-0000-0000-00000A31F6D5 X-IBM-SpamModules-Scores: X-IBM-SpamModules-Versions: BY=3.00009676; HX=3.00000242; KW=3.00000007; PH=3.00000004; SC=3.00000266; SDB=6.01084285; UDB=6.00559630; IPR=6.00864284; MB=3.00023141; MTD=3.00000008; XFM=3.00000015; UTC=2018-09-06 08:38:41 X-IBM-AV-DETECTION: SAVI=unused REMOTE=unused XFE=unused x-cbparentid: 18090608-0037-0000-0000-000048D82D4C Message-Id: <20180906084013.2687-11-chandan@linux.vnet.ibm.com> X-Proofpoint-Virus-Version: vendor=fsecure engine=2.50.10434:,, definitions=2018-09-06_03:,, signatures=0 X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 priorityscore=1501 malwarescore=0 suspectscore=3 phishscore=0 bulkscore=0 spamscore=0 clxscore=1015 lowpriorityscore=0 mlxscore=0 impostorscore=0 mlxlogscore=999 adultscore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.0.1-1807170000 definitions=main-1809060091 Sender: fstests-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: fstests@vger.kernel.org X-Virus-Scanned: ClamAV using ClamSMTP On a 64k blocksized filesystem, when the test CoWs the file2's offset range [10 * 64k, 19 * 64k], the call to xfs_bmapi_reserve_delalloc() allocates 32 64k blocks. This is because XFS_DEFAULT_COWEXTSZ_HINT has the value of 32 and xfs_get_cowextsz_hint() uses this to compute the extent alignment. This leads to xfs_bmapi_reserve_delalloc() to reserve space corresponding to the file range [0, 32 * 64k] in the inode's cow fork area. On completion of write I/O corresponding to file2's range [10 * 64k, 19 * 64k], xfs_end_io() moves 10 out of the originally allocated 32 64k blocks to the data fork area. The remaining 22 64k blocks linger on in cow fork area of the inode. Later, when servicing the exit() syscall for the xfs_io process, xfs_free_eofblocks() ends up invoking xfs_reflink_cancel_cow_blocks() since i_delayed_blks has the value 22. xfs_reflink_cancel_cow_blocks() indirectly invokes __xfs_free_extent() which returns EIO since XFS_ERRTAG_FREE_EXTENT has been set. This leads to the filesystem to be shutdown. The "rm" command invoked later ends up returning an error and hence the test fails. The test actually requires that the filesystem gets shutdown when executing the "rm" command. To fix the problem, this commit injects the free_extent error after we CoW file2's [10 * 64k, 19 * 64k] range. Signed-off-by: Chandan Rajendra --- tests/xfs/325 | 5 +++-- tests/xfs/325.out | 2 +- 2 files changed, 4 insertions(+), 3 deletions(-) diff --git a/tests/xfs/325 b/tests/xfs/325 index b156de9..6795901 100755 --- a/tests/xfs/325 +++ b/tests/xfs/325 @@ -54,11 +54,12 @@ echo "Check files" md5sum $SCRATCH_MNT/file1 | _filter_scratch md5sum $SCRATCH_MNT/file2 | _filter_scratch +echo "CoW a few blocks" +$XFS_IO_PROG -c "pwrite -W -S 0x67 $((10 * blksz)) $((10 * blksz))" $SCRATCH_MNT/file2 >> $seqres.full + echo "Inject error" _scratch_inject_error "free_extent" -echo "CoW a few blocks" -$XFS_IO_PROG -c "pwrite -W -S 0x67 $((10 * blksz)) $((10 * blksz))" $SCRATCH_MNT/file2 >> $seqres.full rm $SCRATCH_MNT/file1 sync diff --git a/tests/xfs/325.out b/tests/xfs/325.out index 4e25d2b..92027cd 100644 --- a/tests/xfs/325.out +++ b/tests/xfs/325.out @@ -4,8 +4,8 @@ Create files Check files d5a0ed0305c8df4180cb2bf975ecffe8 SCRATCH_MNT/file1 d5a0ed0305c8df4180cb2bf975ecffe8 SCRATCH_MNT/file2 -Inject error CoW a few blocks +Inject error FS should be shut down, touch will fail touch: cannot touch 'SCRATCH_MNT/badfs': Input/output error Remount to replay log From patchwork Thu Sep 6 08:40:08 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Chandan Rajendra X-Patchwork-Id: 10590049 Return-Path: Received: from mail.wl.linuxfoundation.org (pdx-wl-mail.web.codeaurora.org [172.30.200.125]) by pdx-korg-patchwork-2.web.codeaurora.org (Postfix) with ESMTP id 0F9D369B3 for ; Thu, 6 Sep 2018 08:38:49 +0000 (UTC) Received: from mail.wl.linuxfoundation.org (localhost [127.0.0.1]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id E60452A3EF for ; Thu, 6 Sep 2018 08:38:48 +0000 (UTC) Received: by mail.wl.linuxfoundation.org (Postfix, from userid 486) id DAAD42A3F9; Thu, 6 Sep 2018 08:38:48 +0000 (UTC) X-Spam-Checker-Version: SpamAssassin 3.3.1 (2010-03-16) on pdx-wl-mail.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-7.9 required=2.0 tests=BAYES_00,MAILING_LIST_MULTI, RCVD_IN_DNSWL_HI autolearn=unavailable version=3.3.1 Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id 82E8B2A3EF for ; Thu, 6 Sep 2018 08:38:48 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1728229AbeIFNNI (ORCPT ); Thu, 6 Sep 2018 09:13:08 -0400 Received: from mx0b-001b2d01.pphosted.com ([148.163.158.5]:43074 "EHLO mx0a-001b2d01.pphosted.com" rhost-flags-OK-OK-OK-FAIL) by vger.kernel.org with ESMTP id S1728104AbeIFNNH (ORCPT ); Thu, 6 Sep 2018 09:13:07 -0400 Received: from pps.filterd (m0098419.ppops.net [127.0.0.1]) by mx0b-001b2d01.pphosted.com (8.16.0.22/8.16.0.22) with SMTP id w868XxuG088834 for ; Thu, 6 Sep 2018 04:38:46 -0400 Received: from e32.co.us.ibm.com (e32.co.us.ibm.com [32.97.110.150]) by mx0b-001b2d01.pphosted.com with ESMTP id 2maxm76f3w-1 (version=TLSv1.2 cipher=AES256-GCM-SHA384 bits=256 verify=NOT) for ; Thu, 06 Sep 2018 04:38:45 -0400 Received: from localhost by e32.co.us.ibm.com with IBM ESMTP SMTP Gateway: Authorized Use Only! Violators will be prosecuted for from ; Thu, 6 Sep 2018 02:38:45 -0600 Received: from b03cxnp08027.gho.boulder.ibm.com (9.17.130.19) by e32.co.us.ibm.com (192.168.1.132) with IBM ESMTP SMTP Gateway: Authorized Use Only! Violators will be prosecuted; (version=TLSv1/SSLv3 cipher=AES256-GCM-SHA384 bits=256/256) Thu, 6 Sep 2018 02:38:42 -0600 Received: from b03ledav001.gho.boulder.ibm.com (b03ledav001.gho.boulder.ibm.com [9.17.130.232]) by b03cxnp08027.gho.boulder.ibm.com (8.14.9/8.14.9/NCO v10.0) with ESMTP id w868cfKf46465202 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-GCM-SHA384 bits=256 verify=FAIL); Thu, 6 Sep 2018 01:38:41 -0700 Received: from b03ledav001.gho.boulder.ibm.com (unknown [127.0.0.1]) by IMSVA (Postfix) with ESMTP id C89AF6E053; Thu, 6 Sep 2018 02:38:41 -0600 (MDT) Received: from b03ledav001.gho.boulder.ibm.com (unknown [127.0.0.1]) by IMSVA (Postfix) with ESMTP id 325696E04E; Thu, 6 Sep 2018 02:38:40 -0600 (MDT) Received: from localhost.in.ibm.com (unknown [9.124.35.136]) by b03ledav001.gho.boulder.ibm.com (Postfix) with ESMTP; Thu, 6 Sep 2018 02:38:39 -0600 (MDT) From: Chandan Rajendra To: fstests@vger.kernel.org Cc: Chandan Rajendra , eguan@redhat.com, darrick.wong@oracle.com, linux-xfs@vger.kernel.org Subject: [PATCH V2 11/16] Fix generic/102 to work with 64k block size Date: Thu, 6 Sep 2018 14:10:08 +0530 X-Mailer: git-send-email 2.9.5 In-Reply-To: <20180906084013.2687-1-chandan@linux.vnet.ibm.com> References: <20180906084013.2687-1-chandan@linux.vnet.ibm.com> X-TM-AS-GCONF: 00 x-cbid: 18090608-0004-0000-0000-00001484F464 X-IBM-SpamModules-Scores: X-IBM-SpamModules-Versions: BY=3.00009676; HX=3.00000242; KW=3.00000007; PH=3.00000004; SC=3.00000266; SDB=6.01084285; UDB=6.00559630; IPR=6.00864284; MB=3.00023141; MTD=3.00000008; XFM=3.00000015; UTC=2018-09-06 08:38:43 X-IBM-AV-DETECTION: SAVI=unused REMOTE=unused XFE=unused x-cbparentid: 18090608-0005-0000-0000-000088B775D1 Message-Id: <20180906084013.2687-12-chandan@linux.vnet.ibm.com> X-Proofpoint-Virus-Version: vendor=fsecure engine=2.50.10434:,, definitions=2018-09-06_03:,, signatures=0 X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 priorityscore=1501 malwarescore=0 suspectscore=1 phishscore=0 bulkscore=0 spamscore=0 clxscore=1015 lowpriorityscore=0 mlxscore=0 impostorscore=0 mlxlogscore=999 adultscore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.0.1-1807170000 definitions=main-1809060091 Sender: fstests-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: fstests@vger.kernel.org X-Virus-Scanned: ClamAV using ClamSMTP With 64k block size, mkfs.xfs fails with the following message when the filesystem size is 512MiB in size, "log size 2037 blocks too small, minimum size is 2473 blocks" Hence this commit increases the test filesystem size to 1GiB. Also, the size of the test file is increased to 800MiB which is ~80% of the test filesystem size. This is in proportion to the 400MiB test file used with the original 512MiB test filesystem. Signed-off-by: Chandan Rajendra --- tests/generic/102 | 4 ++-- tests/generic/102.out | 20 ++++++++++---------- 2 files changed, 12 insertions(+), 12 deletions(-) diff --git a/tests/generic/102 b/tests/generic/102 index faf940a..29abd89 100755 --- a/tests/generic/102 +++ b/tests/generic/102 @@ -31,14 +31,14 @@ _require_scratch rm -f $seqres.full -dev_size=$((512 * 1024 * 1024)) # 512MB filesystem +dev_size=$((1024 * 1024 * 1024)) # 1GB filesystem _scratch_mkfs_sized $dev_size >>$seqres.full 2>&1 _scratch_mount for ((i = 0; i < 10; i++)); do echo "loop $i" >>$seqres.full - $XFS_IO_PROG -f -c "pwrite -b 1m 0 400m" "$SCRATCH_MNT"/file | \ + $XFS_IO_PROG -f -c "pwrite -b 1m 0 800m" "$SCRATCH_MNT"/file | \ _filter_xfs_io | _filter_scratch rm -f "$SCRATCH_MNT"/file diff --git a/tests/generic/102.out b/tests/generic/102.out index fc9275d..b58aa5c 100644 --- a/tests/generic/102.out +++ b/tests/generic/102.out @@ -1,21 +1,21 @@ QA output created by 102 -wrote 419430400/419430400 bytes at offset 0 +wrote 838860800/838860800 bytes at offset 0 XXX Bytes, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec) -wrote 419430400/419430400 bytes at offset 0 +wrote 838860800/838860800 bytes at offset 0 XXX Bytes, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec) -wrote 419430400/419430400 bytes at offset 0 +wrote 838860800/838860800 bytes at offset 0 XXX Bytes, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec) -wrote 419430400/419430400 bytes at offset 0 +wrote 838860800/838860800 bytes at offset 0 XXX Bytes, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec) -wrote 419430400/419430400 bytes at offset 0 +wrote 838860800/838860800 bytes at offset 0 XXX Bytes, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec) -wrote 419430400/419430400 bytes at offset 0 +wrote 838860800/838860800 bytes at offset 0 XXX Bytes, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec) -wrote 419430400/419430400 bytes at offset 0 +wrote 838860800/838860800 bytes at offset 0 XXX Bytes, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec) -wrote 419430400/419430400 bytes at offset 0 +wrote 838860800/838860800 bytes at offset 0 XXX Bytes, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec) -wrote 419430400/419430400 bytes at offset 0 +wrote 838860800/838860800 bytes at offset 0 XXX Bytes, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec) -wrote 419430400/419430400 bytes at offset 0 +wrote 838860800/838860800 bytes at offset 0 XXX Bytes, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec) From patchwork Thu Sep 6 08:40:09 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Chandan Rajendra X-Patchwork-Id: 10590051 Return-Path: Received: from mail.wl.linuxfoundation.org (pdx-wl-mail.web.codeaurora.org [172.30.200.125]) by pdx-korg-patchwork-2.web.codeaurora.org (Postfix) with ESMTP id 5F47F5A4 for ; Thu, 6 Sep 2018 08:38:51 +0000 (UTC) Received: from mail.wl.linuxfoundation.org (localhost [127.0.0.1]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id 3D0FC2A3EF for ; Thu, 6 Sep 2018 08:38:51 +0000 (UTC) Received: by mail.wl.linuxfoundation.org (Postfix, from userid 486) id 318E32A3F9; Thu, 6 Sep 2018 08:38:51 +0000 (UTC) X-Spam-Checker-Version: SpamAssassin 3.3.1 (2010-03-16) on pdx-wl-mail.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-7.9 required=2.0 tests=BAYES_00,MAILING_LIST_MULTI, RCVD_IN_DNSWL_HI autolearn=ham version=3.3.1 Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id DA15B2A3EF for ; Thu, 6 Sep 2018 08:38:50 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1728259AbeIFNNK (ORCPT ); Thu, 6 Sep 2018 09:13:10 -0400 Received: from mx0a-001b2d01.pphosted.com ([148.163.156.1]:48794 "EHLO mx0a-001b2d01.pphosted.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1728255AbeIFNNK (ORCPT ); Thu, 6 Sep 2018 09:13:10 -0400 Received: from pps.filterd (m0098410.ppops.net [127.0.0.1]) by mx0a-001b2d01.pphosted.com (8.16.0.22/8.16.0.22) with SMTP id w868Xxmx126999 for ; Thu, 6 Sep 2018 04:38:49 -0400 Received: from e34.co.us.ibm.com (e34.co.us.ibm.com [32.97.110.152]) by mx0a-001b2d01.pphosted.com with ESMTP id 2maypek5nc-1 (version=TLSv1.2 cipher=AES256-GCM-SHA384 bits=256 verify=NOT) for ; Thu, 06 Sep 2018 04:38:49 -0400 Received: from localhost by e34.co.us.ibm.com with IBM ESMTP SMTP Gateway: Authorized Use Only! Violators will be prosecuted for from ; Thu, 6 Sep 2018 02:38:48 -0600 Received: from b03cxnp07029.gho.boulder.ibm.com (9.17.130.16) by e34.co.us.ibm.com (192.168.1.134) with IBM ESMTP SMTP Gateway: Authorized Use Only! Violators will be prosecuted; (version=TLSv1/SSLv3 cipher=AES256-GCM-SHA384 bits=256/256) Thu, 6 Sep 2018 02:38:45 -0600 Received: from b03ledav001.gho.boulder.ibm.com (b03ledav001.gho.boulder.ibm.com [9.17.130.232]) by b03cxnp07029.gho.boulder.ibm.com (8.14.9/8.14.9/NCO v10.0) with ESMTP id w868cigu47710274 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-GCM-SHA384 bits=256 verify=FAIL); Thu, 6 Sep 2018 01:38:44 -0700 Received: from b03ledav001.gho.boulder.ibm.com (unknown [127.0.0.1]) by IMSVA (Postfix) with ESMTP id E2BF76E059; Thu, 6 Sep 2018 02:38:44 -0600 (MDT) Received: from b03ledav001.gho.boulder.ibm.com (unknown [127.0.0.1]) by IMSVA (Postfix) with ESMTP id 561986E050; Thu, 6 Sep 2018 02:38:43 -0600 (MDT) Received: from localhost.in.ibm.com (unknown [9.124.35.136]) by b03ledav001.gho.boulder.ibm.com (Postfix) with ESMTP; Thu, 6 Sep 2018 02:38:43 -0600 (MDT) From: Chandan Rajendra To: fstests@vger.kernel.org Cc: Chandan Rajendra , eguan@redhat.com, darrick.wong@oracle.com, linux-xfs@vger.kernel.org Subject: [PATCH V2 12/16] Fix generic/172 to work with 64k block size Date: Thu, 6 Sep 2018 14:10:09 +0530 X-Mailer: git-send-email 2.9.5 In-Reply-To: <20180906084013.2687-1-chandan@linux.vnet.ibm.com> References: <20180906084013.2687-1-chandan@linux.vnet.ibm.com> X-TM-AS-GCONF: 00 x-cbid: 18090608-0016-0000-0000-00000928A8B5 X-IBM-SpamModules-Scores: X-IBM-SpamModules-Versions: BY=3.00009676; HX=3.00000242; KW=3.00000007; PH=3.00000004; SC=3.00000266; SDB=6.01084285; UDB=6.00559630; IPR=6.00864284; MB=3.00023141; MTD=3.00000008; XFM=3.00000015; UTC=2018-09-06 08:38:46 X-IBM-AV-DETECTION: SAVI=unused REMOTE=unused XFE=unused x-cbparentid: 18090608-0017-0000-0000-00004041D127 Message-Id: <20180906084013.2687-13-chandan@linux.vnet.ibm.com> X-Proofpoint-Virus-Version: vendor=fsecure engine=2.50.10434:,, definitions=2018-09-06_03:,, signatures=0 X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 priorityscore=1501 malwarescore=0 suspectscore=1 phishscore=0 bulkscore=0 spamscore=0 clxscore=1015 lowpriorityscore=0 mlxscore=0 impostorscore=0 mlxlogscore=999 adultscore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.0.1-1807170000 definitions=main-1809060091 Sender: fstests-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: fstests@vger.kernel.org X-Virus-Scanned: ClamAV using ClamSMTP For 64k block size, With 256MiB as the XFS filesystem size and 168 MiB as the size of the clone source file, we end up hitting ENOSPC when cloning the source file. This happens due to lack of space for housing the corresponding metadata. This scenario also occurs when using a 512MiB XFS filesystem and 300MiB clone source file. Hence this commit increases the size of the test filesystem to 1 GiB and the size of the clone source file to 768MiB. Signed-off-by: Chandan Rajendra --- tests/generic/172 | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/tests/generic/172 b/tests/generic/172 index 5d6f295..08d2789 100755 --- a/tests/generic/172 +++ b/tests/generic/172 @@ -47,8 +47,8 @@ echo "Reformat with appropriate size" blksz="$(_get_block_size $testdir)" umount $SCRATCH_MNT -file_size=$((168 * 1024 * 1024)) -fs_size=$((256 * 1024 * 1024)) +file_size=$((768 * 1024 * 1024)) +fs_size=$((1024 * 1024 * 1024)) _scratch_mkfs_sized $fs_size >> $seqres.full 2>&1 _scratch_mount >> $seqres.full 2>&1 rm -rf $testdir From patchwork Thu Sep 6 08:40:10 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Chandan Rajendra X-Patchwork-Id: 10590055 Return-Path: Received: from mail.wl.linuxfoundation.org (pdx-wl-mail.web.codeaurora.org [172.30.200.125]) by pdx-korg-patchwork-2.web.codeaurora.org (Postfix) with ESMTP id 494C75A4 for ; Thu, 6 Sep 2018 08:38:53 +0000 (UTC) Received: from mail.wl.linuxfoundation.org (localhost [127.0.0.1]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id 2B03B2A3EF for ; Thu, 6 Sep 2018 08:38:53 +0000 (UTC) Received: by mail.wl.linuxfoundation.org (Postfix, from userid 486) id 1F8422A3F9; Thu, 6 Sep 2018 08:38:53 +0000 (UTC) X-Spam-Checker-Version: SpamAssassin 3.3.1 (2010-03-16) on pdx-wl-mail.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-7.9 required=2.0 tests=BAYES_00,MAILING_LIST_MULTI, RCVD_IN_DNSWL_HI autolearn=ham version=3.3.1 Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id C81002A3EF for ; Thu, 6 Sep 2018 08:38:52 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1728211AbeIFNNM (ORCPT ); Thu, 6 Sep 2018 09:13:12 -0400 Received: from mx0a-001b2d01.pphosted.com ([148.163.156.1]:54458 "EHLO mx0a-001b2d01.pphosted.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1728261AbeIFNNM (ORCPT ); Thu, 6 Sep 2018 09:13:12 -0400 Received: from pps.filterd (m0098396.ppops.net [127.0.0.1]) by mx0a-001b2d01.pphosted.com (8.16.0.22/8.16.0.22) with SMTP id w868XtgV126392 for ; Thu, 6 Sep 2018 04:38:51 -0400 Received: from e32.co.us.ibm.com (e32.co.us.ibm.com [32.97.110.150]) by mx0a-001b2d01.pphosted.com with ESMTP id 2mays4ayg9-1 (version=TLSv1.2 cipher=AES256-GCM-SHA384 bits=256 verify=NOT) for ; Thu, 06 Sep 2018 04:38:51 -0400 Received: from localhost by e32.co.us.ibm.com with IBM ESMTP SMTP Gateway: Authorized Use Only! Violators will be prosecuted for from ; Thu, 6 Sep 2018 02:38:50 -0600 Received: from b03cxnp08027.gho.boulder.ibm.com (9.17.130.19) by e32.co.us.ibm.com (192.168.1.132) with IBM ESMTP SMTP Gateway: Authorized Use Only! Violators will be prosecuted; (version=TLSv1/SSLv3 cipher=AES256-GCM-SHA384 bits=256/256) Thu, 6 Sep 2018 02:38:48 -0600 Received: from b03ledav001.gho.boulder.ibm.com (b03ledav001.gho.boulder.ibm.com [9.17.130.232]) by b03cxnp08027.gho.boulder.ibm.com (8.14.9/8.14.9/NCO v10.0) with ESMTP id w868cleF51314850 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-GCM-SHA384 bits=256 verify=FAIL); Thu, 6 Sep 2018 01:38:47 -0700 Received: from b03ledav001.gho.boulder.ibm.com (unknown [127.0.0.1]) by IMSVA (Postfix) with ESMTP id 1B01F6E04C; Thu, 6 Sep 2018 02:38:48 -0600 (MDT) Received: from b03ledav001.gho.boulder.ibm.com (unknown [127.0.0.1]) by IMSVA (Postfix) with ESMTP id 78E166E050; Thu, 6 Sep 2018 02:38:46 -0600 (MDT) Received: from localhost.in.ibm.com (unknown [9.124.35.136]) by b03ledav001.gho.boulder.ibm.com (Postfix) with ESMTP; Thu, 6 Sep 2018 02:38:46 -0600 (MDT) From: Chandan Rajendra To: fstests@vger.kernel.org Cc: Chandan Rajendra , eguan@redhat.com, darrick.wong@oracle.com, linux-xfs@vger.kernel.org Subject: [PATCH V2 13/16] Filter fiemap output by FS block size Date: Thu, 6 Sep 2018 14:10:10 +0530 X-Mailer: git-send-email 2.9.5 In-Reply-To: <20180906084013.2687-1-chandan@linux.vnet.ibm.com> References: <20180906084013.2687-1-chandan@linux.vnet.ibm.com> X-TM-AS-GCONF: 00 x-cbid: 18090608-0004-0000-0000-00001484F468 X-IBM-SpamModules-Scores: X-IBM-SpamModules-Versions: BY=3.00009676; HX=3.00000242; KW=3.00000007; PH=3.00000004; SC=3.00000266; SDB=6.01084285; UDB=6.00559630; IPR=6.00864284; MB=3.00023141; MTD=3.00000008; XFM=3.00000015; UTC=2018-09-06 08:38:49 X-IBM-AV-DETECTION: SAVI=unused REMOTE=unused XFE=unused x-cbparentid: 18090608-0005-0000-0000-000088B775E4 Message-Id: <20180906084013.2687-14-chandan@linux.vnet.ibm.com> X-Proofpoint-Virus-Version: vendor=fsecure engine=2.50.10434:,, definitions=2018-09-06_03:,, signatures=0 X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 priorityscore=1501 malwarescore=0 suspectscore=1 phishscore=0 bulkscore=0 spamscore=0 clxscore=1015 lowpriorityscore=0 mlxscore=0 impostorscore=0 mlxlogscore=999 adultscore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.0.1-1807170000 definitions=main-1809060091 Sender: fstests-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: fstests@vger.kernel.org X-Virus-Scanned: ClamAV using ClamSMTP When testing FS instances of block size other than 4k, the output of fiemap command will not match those in *.out files. This commit adds an optional "block size" argument to _filter_fiemap() which prints fiemap output in units of block size. Signed-off-by: Chandan Rajendra --- common/punch | 19 ++++++++++++++----- 1 file changed, 14 insertions(+), 5 deletions(-) diff --git a/common/punch b/common/punch index 8088b01..0fc7729 100644 --- a/common/punch +++ b/common/punch @@ -165,7 +165,11 @@ _test_punch() { _coalesce_extents() { - awk -F: ' + block_size=$1 + + [[ -z $block_size ]] && block_size=512 + + awk -v block_size="$block_size" -F: ' { range = $2; type = $3; @@ -176,19 +180,24 @@ _coalesce_extents() if (type != prev_type) { if (prev_type != "") - printf("%u]:%s\n", low - 1, prev_type); - printf("%u: [%u..", out_count++, low); + printf("%u]:%s\n", (low * 512 / block_size) - 1, + prev_type); + printf("%u: [%u..", out_count++, + (low * 512) / block_size); prev_type = type; } } END { if (prev_type != "") - printf("%u]:%s\n", high, prev_type); + printf("%u]:%s\n", ((high + 1) * 512 / block_size) - 1, + prev_type); }' } _filter_fiemap() { + block_size=$1 + $AWK_PROG ' $3 ~ /hole/ { print $1, $2, $3; @@ -201,7 +210,7 @@ _filter_fiemap() $5 ~ /0x[[:xdigit:]]+/ { print $1, $2, "data"; }' | - _coalesce_extents + _coalesce_extents $block_size } _filter_fiemap_flags() From patchwork Thu Sep 6 08:40:11 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Chandan Rajendra X-Patchwork-Id: 10590059 Return-Path: Received: from mail.wl.linuxfoundation.org (pdx-wl-mail.web.codeaurora.org [172.30.200.125]) by pdx-korg-patchwork-2.web.codeaurora.org (Postfix) with ESMTP id D7CEE5A4 for ; Thu, 6 Sep 2018 08:38:58 +0000 (UTC) Received: from mail.wl.linuxfoundation.org (localhost [127.0.0.1]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id B5E952A3F7 for ; Thu, 6 Sep 2018 08:38:58 +0000 (UTC) Received: by mail.wl.linuxfoundation.org (Postfix, from userid 486) id A9E742A431; Thu, 6 Sep 2018 08:38:58 +0000 (UTC) X-Spam-Checker-Version: SpamAssassin 3.3.1 (2010-03-16) on pdx-wl-mail.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-7.9 required=2.0 tests=BAYES_00,MAILING_LIST_MULTI, RCVD_IN_DNSWL_HI autolearn=ham version=3.3.1 Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id 318882A3F7 for ; Thu, 6 Sep 2018 08:38:58 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1728215AbeIFNNR (ORCPT ); Thu, 6 Sep 2018 09:13:17 -0400 Received: from mx0a-001b2d01.pphosted.com ([148.163.156.1]:40028 "EHLO mx0a-001b2d01.pphosted.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1728221AbeIFNNQ (ORCPT ); Thu, 6 Sep 2018 09:13:16 -0400 Received: from pps.filterd (m0098399.ppops.net [127.0.0.1]) by mx0a-001b2d01.pphosted.com (8.16.0.22/8.16.0.22) with SMTP id w868XtKh082992 for ; Thu, 6 Sep 2018 04:38:55 -0400 Received: from e36.co.us.ibm.com (e36.co.us.ibm.com [32.97.110.154]) by mx0a-001b2d01.pphosted.com with ESMTP id 2maygqbk2e-1 (version=TLSv1.2 cipher=AES256-GCM-SHA384 bits=256 verify=NOT) for ; Thu, 06 Sep 2018 04:38:55 -0400 Received: from localhost by e36.co.us.ibm.com with IBM ESMTP SMTP Gateway: Authorized Use Only! Violators will be prosecuted for from ; Thu, 6 Sep 2018 02:38:54 -0600 Received: from b03cxnp08027.gho.boulder.ibm.com (9.17.130.19) by e36.co.us.ibm.com (192.168.1.136) with IBM ESMTP SMTP Gateway: Authorized Use Only! Violators will be prosecuted; (version=TLSv1/SSLv3 cipher=AES256-GCM-SHA384 bits=256/256) Thu, 6 Sep 2018 02:38:51 -0600 Received: from b03ledav001.gho.boulder.ibm.com (b03ledav001.gho.boulder.ibm.com [9.17.130.232]) by b03cxnp08027.gho.boulder.ibm.com (8.14.9/8.14.9/NCO v10.0) with ESMTP id w868cov252166910 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-GCM-SHA384 bits=256 verify=FAIL); Thu, 6 Sep 2018 01:38:50 -0700 Received: from b03ledav001.gho.boulder.ibm.com (unknown [127.0.0.1]) by IMSVA (Postfix) with ESMTP id 3E1B76E052; Thu, 6 Sep 2018 02:38:51 -0600 (MDT) Received: from b03ledav001.gho.boulder.ibm.com (unknown [127.0.0.1]) by IMSVA (Postfix) with ESMTP id 9B8386E04C; Thu, 6 Sep 2018 02:38:49 -0600 (MDT) Received: from localhost.in.ibm.com (unknown [9.124.35.136]) by b03ledav001.gho.boulder.ibm.com (Postfix) with ESMTP; Thu, 6 Sep 2018 02:38:49 -0600 (MDT) From: Chandan Rajendra To: fstests@vger.kernel.org Cc: Chandan Rajendra , eguan@redhat.com, darrick.wong@oracle.com, linux-xfs@vger.kernel.org Subject: [PATCH V2 14/16] Fix generic/177 to work with 64k block size Date: Thu, 6 Sep 2018 14:10:11 +0530 X-Mailer: git-send-email 2.9.5 In-Reply-To: <20180906084013.2687-1-chandan@linux.vnet.ibm.com> References: <20180906084013.2687-1-chandan@linux.vnet.ibm.com> X-TM-AS-GCONF: 00 x-cbid: 18090608-0020-0000-0000-00000E5F79E7 X-IBM-SpamModules-Scores: X-IBM-SpamModules-Versions: BY=3.00009676; HX=3.00000242; KW=3.00000007; PH=3.00000004; SC=3.00000266; SDB=6.01084285; UDB=6.00559630; IPR=6.00864284; MB=3.00023141; MTD=3.00000008; XFM=3.00000015; UTC=2018-09-06 08:38:53 X-IBM-AV-DETECTION: SAVI=unused REMOTE=unused XFE=unused x-cbparentid: 18090608-0021-0000-0000-000062EEAB05 Message-Id: <20180906084013.2687-15-chandan@linux.vnet.ibm.com> X-Proofpoint-Virus-Version: vendor=fsecure engine=2.50.10434:,, definitions=2018-09-06_03:,, signatures=0 X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 priorityscore=1501 malwarescore=0 suspectscore=1 phishscore=0 bulkscore=0 spamscore=0 clxscore=1015 lowpriorityscore=0 mlxscore=0 impostorscore=0 mlxlogscore=999 adultscore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.0.1-1807170000 definitions=main-1809060091 Sender: fstests-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: fstests@vger.kernel.org X-Virus-Scanned: ClamAV using ClamSMTP This commit changes the test to work on file offsets that are aligned with the block size of the underlying filesystem. Signed-off-by: Chandan Rajendra --- tests/generic/177 | 20 +++++++++++--------- tests/generic/177.out | 23 +++++++++++++++-------- 2 files changed, 26 insertions(+), 17 deletions(-) diff --git a/tests/generic/177 b/tests/generic/177 index 36577b1..069bb81 100755 --- a/tests/generic/177 +++ b/tests/generic/177 @@ -45,44 +45,46 @@ _require_metadata_journaling $SCRATCH_DEV _init_flakey _mount_flakey +BLOCK_SIZE=$(_get_block_size $SCRATCH_MNT) + # Create out test file with some data and then fsync it. # We do the fsync only to make sure the last fsync we do in this test triggers # the fast code path of btrfs' fsync implementation, a condition necessary to # trigger the bug btrfs had. -$XFS_IO_PROG -f -c "pwrite -S 0xaa 0K 128K" \ +$XFS_IO_PROG -f -c "pwrite -S 0xaa 0K $(($BLOCK_SIZE * 32))" \ -c "fsync" \ - $SCRATCH_MNT/foobar | _filter_xfs_io + $SCRATCH_MNT/foobar | _filter_xfs_io_blocks_modified # Now punch a hole against the range [96K, 128K[. -$XFS_IO_PROG -c "fpunch 96K 32K" $SCRATCH_MNT/foobar +$XFS_IO_PROG -c "fpunch $(($BLOCK_SIZE * 24)) $(($BLOCK_SIZE * 8))" $SCRATCH_MNT/foobar # Punch another hole against a range that overlaps the previous range and ends # beyond eof. -$XFS_IO_PROG -c "fpunch 64K 128K" $SCRATCH_MNT/foobar +$XFS_IO_PROG -c "fpunch $(($BLOCK_SIZE * 16)) $(($BLOCK_SIZE * 32))" $SCRATCH_MNT/foobar # Punch another hole against a range that overlaps the first range ([96K, 128K[) # and ends at eof. -$XFS_IO_PROG -c "fpunch 32K 96K" $SCRATCH_MNT/foobar +$XFS_IO_PROG -c "fpunch $(($BLOCK_SIZE * 8)) $(($BLOCK_SIZE * 24))" $SCRATCH_MNT/foobar # Fsync our file. We want to verify that, after a power failure and mounting the # filesystem again, the file content reflects all the hole punch operations. $XFS_IO_PROG -c "fsync" $SCRATCH_MNT/foobar echo "File digest before power failure:" -md5sum $SCRATCH_MNT/foobar | _filter_scratch +od -t x1 $SCRATCH_MNT/foobar | _filter_od echo "Fiemap before power failure:" -$XFS_IO_PROG -c "fiemap -v" $SCRATCH_MNT/foobar | _filter_fiemap +$XFS_IO_PROG -c "fiemap -v" $SCRATCH_MNT/foobar | _filter_fiemap $BLOCK_SIZE _flakey_drop_and_remount echo "File digest after log replay:" # Must match the same digest we got before the power failure. -md5sum $SCRATCH_MNT/foobar | _filter_scratch +od -t x1 $SCRATCH_MNT/foobar | _filter_od echo "Fiemap after log replay:" # Must match the same extent listing we got before the power failure. -$XFS_IO_PROG -c "fiemap -v" $SCRATCH_MNT/foobar | _filter_fiemap +$XFS_IO_PROG -c "fiemap -v" $SCRATCH_MNT/foobar | _filter_fiemap $BLOCK_SIZE _unmount_flakey diff --git a/tests/generic/177.out b/tests/generic/177.out index cc10768..b47e136 100644 --- a/tests/generic/177.out +++ b/tests/generic/177.out @@ -1,13 +1,20 @@ QA output created by 177 -wrote 131072/131072 bytes at offset 0 -XXX Bytes, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec) +Blocks modified: [0 - 31] File digest before power failure: -d26bbb9a8396a9c0dd76423471b72b15 SCRATCH_MNT/foobar +0 aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa +* +10 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 +* +40 Fiemap before power failure: -0: [0..63]: data -1: [64..255]: hole +0: [0..7]: data +1: [8..31]: hole File digest after log replay: -d26bbb9a8396a9c0dd76423471b72b15 SCRATCH_MNT/foobar +0 aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa +* +10 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 +* +40 Fiemap after log replay: -0: [0..63]: data -1: [64..255]: hole +0: [0..7]: data +1: [8..31]: hole From patchwork Thu Sep 6 08:40:12 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Chandan Rajendra X-Patchwork-Id: 10590065 Return-Path: Received: from mail.wl.linuxfoundation.org (pdx-wl-mail.web.codeaurora.org [172.30.200.125]) by pdx-korg-patchwork-2.web.codeaurora.org (Postfix) with ESMTP id 5F034180E for ; Thu, 6 Sep 2018 08:39:01 +0000 (UTC) Received: from mail.wl.linuxfoundation.org (localhost [127.0.0.1]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id 4034A2A3FC for ; Thu, 6 Sep 2018 08:39:01 +0000 (UTC) Received: by mail.wl.linuxfoundation.org (Postfix, from userid 486) id 34D762A455; Thu, 6 Sep 2018 08:39:01 +0000 (UTC) X-Spam-Checker-Version: SpamAssassin 3.3.1 (2010-03-16) on pdx-wl-mail.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-7.9 required=2.0 tests=BAYES_00,LOTS_OF_MONEY, MAILING_LIST_MULTI,RCVD_IN_DNSWL_HI autolearn=unavailable version=3.3.1 Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id C5BDA2A41A for ; Thu, 6 Sep 2018 08:39:00 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1728156AbeIFNNU (ORCPT ); Thu, 6 Sep 2018 09:13:20 -0400 Received: from mx0b-001b2d01.pphosted.com ([148.163.158.5]:38988 "EHLO mx0a-001b2d01.pphosted.com" rhost-flags-OK-OK-OK-FAIL) by vger.kernel.org with ESMTP id S1728223AbeIFNNU (ORCPT ); Thu, 6 Sep 2018 09:13:20 -0400 Received: from pps.filterd (m0098416.ppops.net [127.0.0.1]) by mx0b-001b2d01.pphosted.com (8.16.0.22/8.16.0.22) with SMTP id w868YCQV081530 for ; Thu, 6 Sep 2018 04:38:58 -0400 Received: from e32.co.us.ibm.com (e32.co.us.ibm.com [32.97.110.150]) by mx0b-001b2d01.pphosted.com with ESMTP id 2may61n1xw-1 (version=TLSv1.2 cipher=AES256-GCM-SHA384 bits=256 verify=NOT) for ; Thu, 06 Sep 2018 04:38:58 -0400 Received: from localhost by e32.co.us.ibm.com with IBM ESMTP SMTP Gateway: Authorized Use Only! Violators will be prosecuted for from ; Thu, 6 Sep 2018 02:38:57 -0600 Received: from b03cxnp08027.gho.boulder.ibm.com (9.17.130.19) by e32.co.us.ibm.com (192.168.1.132) with IBM ESMTP SMTP Gateway: Authorized Use Only! Violators will be prosecuted; (version=TLSv1/SSLv3 cipher=AES256-GCM-SHA384 bits=256/256) Thu, 6 Sep 2018 02:38:54 -0600 Received: from b03ledav001.gho.boulder.ibm.com (b03ledav001.gho.boulder.ibm.com [9.17.130.232]) by b03cxnp08027.gho.boulder.ibm.com (8.14.9/8.14.9/NCO v10.0) with ESMTP id w868creg52101164 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-GCM-SHA384 bits=256 verify=FAIL); Thu, 6 Sep 2018 01:38:54 -0700 Received: from b03ledav001.gho.boulder.ibm.com (unknown [127.0.0.1]) by IMSVA (Postfix) with ESMTP id 5FD856E053; Thu, 6 Sep 2018 02:38:54 -0600 (MDT) Received: from b03ledav001.gho.boulder.ibm.com (unknown [127.0.0.1]) by IMSVA (Postfix) with ESMTP id BEC9F6E04C; Thu, 6 Sep 2018 02:38:52 -0600 (MDT) Received: from localhost.in.ibm.com (unknown [9.124.35.136]) by b03ledav001.gho.boulder.ibm.com (Postfix) with ESMTP; Thu, 6 Sep 2018 02:38:52 -0600 (MDT) From: Chandan Rajendra To: fstests@vger.kernel.org Cc: Chandan Rajendra , eguan@redhat.com, darrick.wong@oracle.com, linux-xfs@vger.kernel.org Subject: [PATCH V2 15/16] Fix generic/230 to work with 64k block size Date: Thu, 6 Sep 2018 14:10:12 +0530 X-Mailer: git-send-email 2.9.5 In-Reply-To: <20180906084013.2687-1-chandan@linux.vnet.ibm.com> References: <20180906084013.2687-1-chandan@linux.vnet.ibm.com> X-TM-AS-GCONF: 00 x-cbid: 18090608-0004-0000-0000-00001484F46A X-IBM-SpamModules-Scores: X-IBM-SpamModules-Versions: BY=3.00009676; HX=3.00000242; KW=3.00000007; PH=3.00000004; SC=3.00000266; SDB=6.01084285; UDB=6.00559630; IPR=6.00864284; MB=3.00023141; MTD=3.00000008; XFM=3.00000015; UTC=2018-09-06 08:38:55 X-IBM-AV-DETECTION: SAVI=unused REMOTE=unused XFE=unused x-cbparentid: 18090608-0005-0000-0000-000088B775F2 Message-Id: <20180906084013.2687-16-chandan@linux.vnet.ibm.com> X-Proofpoint-Virus-Version: vendor=fsecure engine=2.50.10434:,, definitions=2018-09-06_03:,, signatures=0 X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 priorityscore=1501 malwarescore=0 suspectscore=1 phishscore=0 bulkscore=0 spamscore=0 clxscore=1015 lowpriorityscore=0 mlxscore=0 impostorscore=0 mlxlogscore=999 adultscore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.0.1-1807170000 definitions=main-1809060091 Sender: fstests-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: fstests@vger.kernel.org X-Virus-Scanned: ClamAV using ClamSMTP This commit changes the test to work on file offsets that are aligned with the block size of the underlying filesystem. Signed-off-by: Chandan Rajendra --- tests/generic/230 | 23 +++++++++++++---------- tests/generic/230.out | 16 ++++++++-------- 2 files changed, 21 insertions(+), 18 deletions(-) diff --git a/tests/generic/230 b/tests/generic/230 index bc8c1ad..fc09391 100755 --- a/tests/generic/230 +++ b/tests/generic/230 @@ -42,27 +42,27 @@ test_enforcement() echo "### some buffered IO (type=$type)" echo "--- initiating IO..." >>$seqres.full # Firstly fit below block soft limit - echo "Write 900k..." - su $qa_user -c "$XFS_IO_PROG -c 'pwrite 0 900k' -c fsync \ + echo "Write 225 blocks..." + su $qa_user -c "$XFS_IO_PROG -c 'pwrite 0 $((225 * $BLOCK_SIZE))' -c fsync \ $SCRATCH_MNT/file1" 2>&1 >>$seqres.full | \ _filter_xfs_io_error | tee -a $seqres.full repquota -$type $SCRATCH_MNT | grep -v "^root" >>$seqres.full 2>&1 # Secondly overcome block soft limit - echo "Rewrite 1001k..." - su $qa_user -c "$XFS_IO_PROG -c 'pwrite 0 1001k' -c fsync \ + echo "Rewrite 250 blocks plus 1 byte..." + su $qa_user -c "$XFS_IO_PROG -c 'pwrite 0 $((250 * $BLOCK_SIZE + 1))' -c fsync \ $SCRATCH_MNT/file1" 2>&1 >>$seqres.full | \ _filter_xfs_io_error | tee -a $seqres.full repquota -$type $SCRATCH_MNT | grep -v "^root" >>$seqres.full 2>&1 # Now try to overcome block hardlimit - echo "Write 1000k..." - su $qa_user -c "$XFS_IO_PROG -c 'pwrite 0 1000k' -c fsync \ + echo "Write 250 blocks..." + su $qa_user -c "$XFS_IO_PROG -c 'pwrite 0 $((250 * $BLOCK_SIZE))' -c fsync \ $SCRATCH_MNT/file2" 2>&1 >>$seqres.full | \ _filter_xfs_io_error | tee -a $seqres.full repquota -$type $SCRATCH_MNT | grep -v "^root" >>$seqres.full 2>&1 # Now sleep for grace time and check that softlimit got enforced sleep $((grace+1)) - echo "Write 4096..." - su $qa_user -c "$XFS_IO_PROG -c 'truncate 0' -c 'pwrite 0 4096' \ + echo "Write 1 block..." + su $qa_user -c "$XFS_IO_PROG -c 'truncate 0' -c 'pwrite 0 $BLOCK_SIZE' \ $SCRATCH_MNT/file2" 2>&1 >>$seqres.full | \ _filter_xfs_io_error | tee -a $seqres.full repquota -$type $SCRATCH_MNT | grep -v "^root" >>$seqres.full 2>&1 @@ -101,11 +101,14 @@ grace=2 _scratch_mkfs >> $seqres.full 2>&1 _scratch_mount "-o usrquota,grpquota" +BLOCK_SIZE=$(_get_block_size $SCRATCH_MNT) quotacheck -u -g $SCRATCH_MNT 2>/dev/null quotaon $SCRATCH_MNT 2>/dev/null -setquota -u $qa_user 1000 2000 3 5 $SCRATCH_MNT +setquota -u $qa_user $((250 * $BLOCK_SIZE / 1024)) \ + $((500 * $BLOCK_SIZE / 1024)) 3 5 $SCRATCH_MNT setquota -u -t $grace $grace $SCRATCH_MNT -setquota -g $qa_user 1000 2000 3 5 $SCRATCH_MNT +setquota -g $qa_user $((250 * $BLOCK_SIZE / 1024)) \ + $((500 * $BLOCK_SIZE / 1024)) 3 5 $SCRATCH_MNT setquota -g -t $grace $grace $SCRATCH_MNT _scratch_unmount diff --git a/tests/generic/230.out b/tests/generic/230.out index fcbacf2..9e89a47 100644 --- a/tests/generic/230.out +++ b/tests/generic/230.out @@ -4,11 +4,11 @@ QA output created by 230 ### create files, setting up ownership (type=u) ### some buffered IO (type=u) -Write 900k... -Rewrite 1001k... -Write 1000k... +Write 225 blocks... +Rewrite 250 blocks plus 1 byte... +Write 250 blocks... pwrite: Disk quota exceeded -Write 4096... +Write 1 block... pwrite: Disk quota exceeded Touch 3+4 Touch 5+6 @@ -20,11 +20,11 @@ touch: cannot touch 'SCRATCH_MNT/file5': Disk quota exceeded ### create files, setting up ownership (type=g) ### some buffered IO (type=g) -Write 900k... -Rewrite 1001k... -Write 1000k... +Write 225 blocks... +Rewrite 250 blocks plus 1 byte... +Write 250 blocks... pwrite: Disk quota exceeded -Write 4096... +Write 1 block... pwrite: Disk quota exceeded Touch 3+4 Touch 5+6 From patchwork Thu Sep 6 08:40:13 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Chandan Rajendra X-Patchwork-Id: 10590067 Return-Path: Received: from mail.wl.linuxfoundation.org (pdx-wl-mail.web.codeaurora.org [172.30.200.125]) by pdx-korg-patchwork-2.web.codeaurora.org (Postfix) with ESMTP id F1E205A4 for ; Thu, 6 Sep 2018 08:39:03 +0000 (UTC) Received: from mail.wl.linuxfoundation.org (localhost [127.0.0.1]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id D29CA2A499 for ; Thu, 6 Sep 2018 08:39:03 +0000 (UTC) Received: by mail.wl.linuxfoundation.org (Postfix, from userid 486) id C71742A41A; Thu, 6 Sep 2018 08:39:03 +0000 (UTC) X-Spam-Checker-Version: SpamAssassin 3.3.1 (2010-03-16) on pdx-wl-mail.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-7.9 required=2.0 tests=BAYES_00,MAILING_LIST_MULTI, RCVD_IN_DNSWL_HI autolearn=ham version=3.3.1 Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id 7096C2A3FC for ; Thu, 6 Sep 2018 08:39:03 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1728223AbeIFNNX (ORCPT ); Thu, 6 Sep 2018 09:13:23 -0400 Received: from mx0a-001b2d01.pphosted.com ([148.163.156.1]:38954 "EHLO mx0a-001b2d01.pphosted.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1728221AbeIFNNX (ORCPT ); Thu, 6 Sep 2018 09:13:23 -0400 Received: from pps.filterd (m0098394.ppops.net [127.0.0.1]) by mx0a-001b2d01.pphosted.com (8.16.0.22/8.16.0.22) with SMTP id w868Xx6P123547 for ; Thu, 6 Sep 2018 04:39:02 -0400 Received: from e34.co.us.ibm.com (e34.co.us.ibm.com [32.97.110.152]) by mx0a-001b2d01.pphosted.com with ESMTP id 2maye2v5ew-1 (version=TLSv1.2 cipher=AES256-GCM-SHA384 bits=256 verify=NOT) for ; Thu, 06 Sep 2018 04:39:02 -0400 Received: from localhost by e34.co.us.ibm.com with IBM ESMTP SMTP Gateway: Authorized Use Only! Violators will be prosecuted for from ; Thu, 6 Sep 2018 02:39:01 -0600 Received: from b03cxnp08028.gho.boulder.ibm.com (9.17.130.20) by e34.co.us.ibm.com (192.168.1.134) with IBM ESMTP SMTP Gateway: Authorized Use Only! Violators will be prosecuted; (version=TLSv1/SSLv3 cipher=AES256-GCM-SHA384 bits=256/256) Thu, 6 Sep 2018 02:38:58 -0600 Received: from b03ledav001.gho.boulder.ibm.com (b03ledav001.gho.boulder.ibm.com [9.17.130.232]) by b03cxnp08028.gho.boulder.ibm.com (8.14.9/8.14.9/NCO v10.0) with ESMTP id w868cvYX23134340 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-GCM-SHA384 bits=256 verify=FAIL); Thu, 6 Sep 2018 01:38:57 -0700 Received: from b03ledav001.gho.boulder.ibm.com (unknown [127.0.0.1]) by IMSVA (Postfix) with ESMTP id 827BB6E056; Thu, 6 Sep 2018 02:38:57 -0600 (MDT) Received: from b03ledav001.gho.boulder.ibm.com (unknown [127.0.0.1]) by IMSVA (Postfix) with ESMTP id E03CA6E04C; Thu, 6 Sep 2018 02:38:55 -0600 (MDT) Received: from localhost.in.ibm.com (unknown [9.124.35.136]) by b03ledav001.gho.boulder.ibm.com (Postfix) with ESMTP; Thu, 6 Sep 2018 02:38:55 -0600 (MDT) From: Chandan Rajendra To: fstests@vger.kernel.org Cc: Chandan Rajendra , eguan@redhat.com, darrick.wong@oracle.com, linux-xfs@vger.kernel.org Subject: [PATCH V2 16/16] Fix generic/235 to work with 64k block size Date: Thu, 6 Sep 2018 14:10:13 +0530 X-Mailer: git-send-email 2.9.5 In-Reply-To: <20180906084013.2687-1-chandan@linux.vnet.ibm.com> References: <20180906084013.2687-1-chandan@linux.vnet.ibm.com> X-TM-AS-GCONF: 00 x-cbid: 18090608-0016-0000-0000-00000928A8BA X-IBM-SpamModules-Scores: X-IBM-SpamModules-Versions: BY=3.00009676; HX=3.00000242; KW=3.00000007; PH=3.00000004; SC=3.00000266; SDB=6.01084285; UDB=6.00559630; IPR=6.00864284; MB=3.00023141; MTD=3.00000008; XFM=3.00000015; UTC=2018-09-06 08:38:59 X-IBM-AV-DETECTION: SAVI=unused REMOTE=unused XFE=unused x-cbparentid: 18090608-0017-0000-0000-00004041D148 Message-Id: <20180906084013.2687-17-chandan@linux.vnet.ibm.com> X-Proofpoint-Virus-Version: vendor=fsecure engine=2.50.10434:,, definitions=2018-09-06_03:,, signatures=0 X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 priorityscore=1501 malwarescore=0 suspectscore=1 phishscore=0 bulkscore=0 spamscore=0 clxscore=1015 lowpriorityscore=0 mlxscore=0 impostorscore=0 mlxlogscore=999 adultscore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.0.1-1807170000 definitions=main-1809060091 Sender: fstests-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: fstests@vger.kernel.org X-Virus-Scanned: ClamAV using ClamSMTP With 64k blocksized filesystem, this test fails since a single 8k write will actually end up consuming 64k. Hence this commit writes 64k data into the test file. Signed-off-by: Chandan Rajendra --- tests/generic/235 | 2 +- tests/generic/235.out | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/tests/generic/235 b/tests/generic/235 index 902e9ad..6adc803 100755 --- a/tests/generic/235 +++ b/tests/generic/235 @@ -55,7 +55,7 @@ _try_scratch_mount "-o remount,ro" 2>&1 | tee -a $seqres.full | _filter_scratch touch $SCRATCH_MNT/failed 2>&1 | tee -a $seqres.full | _filter_scratch _try_scratch_mount "-o remount,rw" 2>&1 | tee -a $seqres.full | _filter_scratch -$XFS_IO_PROG -c 'pwrite 0 8k' -c 'fsync' \ +$XFS_IO_PROG -c 'pwrite 0 64k' -c 'fsync' \ $SCRATCH_MNT/testfile >>$seqres.full 2>&1 do_repquota diff --git a/tests/generic/235.out b/tests/generic/235.out index 601fa2f..abcb47a 100644 --- a/tests/generic/235.out +++ b/tests/generic/235.out @@ -17,10 +17,10 @@ Block grace time: 7days; Inode grace time: 7days Block limits File limits User used soft hard grace used soft hard grace ---------------------------------------------------------------------- -fsgqa -- 8 0 0 1 0 0 +fsgqa -- 64 0 0 1 0 0 *** Report for group quotas on device SCRATCH_DEV Block grace time: 7days; Inode grace time: 7days Block limits File limits Group used soft hard grace used soft hard grace ---------------------------------------------------------------------- -fsgqa -- 8 0 0 1 0 0 +fsgqa -- 64 0 0 1 0 0