From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from cuda.sgi.com (cuda2.sgi.com [192.48.176.25]) by oss.sgi.com (8.14.3/8.14.3/SuSE Linux 0.8) with ESMTP id n2L4GplD217720 for ; Fri, 20 Mar 2009 23:17:12 -0500 Received: from mx2.redhat.com (localhost [127.0.0.1]) by cuda.sgi.com (Spam Firewall) with ESMTP id C202D1B3AD1 for ; Fri, 20 Mar 2009 21:16:32 -0700 (PDT) Received: from mx2.redhat.com (mx2.redhat.com [66.187.237.31]) by cuda.sgi.com with ESMTP id 4W0T0MMBBg8oFLzS for ; Fri, 20 Mar 2009 21:16:32 -0700 (PDT) Message-ID: <49C4632D.2050901@sandeen.net> Date: Fri, 20 Mar 2009 22:46:53 -0500 From: Eric Sandeen MIME-Version: 1.0 Subject: Re: [PATCH] xfstests: add test 203, xfs_io bmap reallocation References: <20090320072857.GB26571@infradead.org> In-Reply-To: <20090320072857.GB26571@infradead.org> List-Id: XFS Filesystem from SGI List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Sender: xfs-bounces@oss.sgi.com Errors-To: xfs-bounces@oss.sgi.com To: Christoph Hellwig Cc: Tomasz Majkowski , xfs@oss.sgi.com Christoph Hellwig wrote: > Test that we can get all extent/hole information for files with more > than 16 extents and 15 holes which require a reallocation based on > XFS_IOC_FSGETXATTR. > > Based on a testcase from Tomasz Majkowski . > > > Signed-off-by: Christoph Hellwig Looks fine to me (do we need a GPL header on the c file? license on all of xfsqa is hard to sort out, I guess...) -Eric > Index: xfstests-dev/203 > =================================================================== > --- /dev/null 1970-01-01 00:00:00.000000000 +0000 > +++ xfstests-dev/203 2009-03-20 07:28:06.000000000 +0000 > @@ -0,0 +1,71 @@ > +#! /bin/sh > +# FS QA Test No. 203 > +# > +# Test out reallocation of the extent array in xfs_io. > +# Based on a testcase from Tomasz Majkowski . > +# > +#----------------------------------------------------------------------- > +# Copyright (c) 2009 Christoph Hellwig. > +#----------------------------------------------------------------------- > +# > +# creator > +owner=hch@lst.de > + > +seq=`basename $0` > +echo "QA output created by $seq" > + > +here=`pwd` > +tmp=/tmp/$$ > +status=1 # failure is the default! > + > +_write_holes() > +{ > + file=$1 > + holes=$2 > + let writes=$holes+1 > + > + offset=0 > + for i in `seq 0 $writes`; do > + xfs_io -f $file -c "pwrite -q $offset 1" > + let offset=$offset+0x100000 > + done > +} > + > +# 0: [0..7]: 104..111 > +# 1: [8..2047]: hole > +_filter_bmap() > +{ > + awk '$3 ~ /hole/ { print $1, $2, $3; next } > + {print $1, $2; next}' > +} > + > +_cleanup() > +{ > + rm -f $TEST_DIR/hole_file* > + rm -f $TEST_DIR/r?? > +} > +trap "_cleanup; exit \$status" 0 1 2 3 15 > + > +# get standard environment, filters and checks > +. ./common.rc > +. ./common.filter > + > +# real QA test starts here > +_supported_fs xfs > +_supported_os Linux > + > + > +for i in 10 14 15 16 17 28 29 30 31; do > + rm -f $TEST_DIR/hole_file > + _write_holes $TEST_DIR/hole_file${i} ${i} > +done > + > +for i in 10 14 15 16 17 28 29 30 31; do > + xfs_bmap $TEST_DIR/hole_file${i} | _filter_bmap > + echo > +done > + > +# success, all done > +echo "*** done" > +rm -f $seq.full > +status=0 > Index: xfstests-dev/203.out > =================================================================== > --- /dev/null 1970-01-01 00:00:00.000000000 +0000 > +++ xfstests-dev/203.out 2009-03-20 07:09:51.000000000 +0000 > @@ -0,0 +1,427 @@ > +QA output created by 203 > +/mnt/test/hole_file10: > +0: [0..7]: > +1: [8..2047]: hole > +2: [2048..2055]: > +3: [2056..4095]: hole > +4: [4096..4103]: > +5: [4104..6143]: hole > +6: [6144..6151]: > +7: [6152..8191]: hole > +8: [8192..8199]: > +9: [8200..10239]: hole > +10: [10240..10247]: > +11: [10248..12287]: hole > +12: [12288..12295]: > +13: [12296..14335]: hole > +14: [14336..14343]: > +15: [14344..16383]: hole > +16: [16384..16391]: > +17: [16392..18431]: hole > +18: [18432..18439]: > +19: [18440..20479]: hole > +20: [20480..20487]: > +21: [20488..22527]: hole > +22: [22528..22535]: > + > +/mnt/test/hole_file14: > +0: [0..7]: > +1: [8..2047]: hole > +2: [2048..2055]: > +3: [2056..4095]: hole > +4: [4096..4103]: > +5: [4104..6143]: hole > +6: [6144..6151]: > +7: [6152..8191]: hole > +8: [8192..8199]: > +9: [8200..10239]: hole > +10: [10240..10247]: > +11: [10248..12287]: hole > +12: [12288..12295]: > +13: [12296..14335]: hole > +14: [14336..14343]: > +15: [14344..16383]: hole > +16: [16384..16391]: > +17: [16392..18431]: hole > +18: [18432..18439]: > +19: [18440..20479]: hole > +20: [20480..20487]: > +21: [20488..22527]: hole > +22: [22528..22535]: > +23: [22536..24575]: hole > +24: [24576..24583]: > +25: [24584..26623]: hole > +26: [26624..26631]: > +27: [26632..28671]: hole > +28: [28672..28679]: > +29: [28680..30719]: hole > +30: [30720..30727]: > + > +/mnt/test/hole_file15: > +0: [0..7]: > +1: [8..2047]: hole > +2: [2048..2055]: > +3: [2056..4095]: hole > +4: [4096..4103]: > +5: [4104..6143]: hole > +6: [6144..6151]: > +7: [6152..8191]: hole > +8: [8192..8199]: > +9: [8200..10239]: hole > +10: [10240..10247]: > +11: [10248..12287]: hole > +12: [12288..12295]: > +13: [12296..14335]: hole > +14: [14336..14343]: > +15: [14344..16383]: hole > +16: [16384..16391]: > +17: [16392..18431]: hole > +18: [18432..18439]: > +19: [18440..20479]: hole > +20: [20480..20487]: > +21: [20488..22527]: hole > +22: [22528..22535]: > +23: [22536..24575]: hole > +24: [24576..24583]: > +25: [24584..26623]: hole > +26: [26624..26631]: > +27: [26632..28671]: hole > +28: [28672..28679]: > +29: [28680..30719]: hole > +30: [30720..30727]: > +31: [30728..32767]: hole > +32: [32768..32775]: > + > +/mnt/test/hole_file16: > +0: [0..7]: > +1: [8..2047]: hole > +2: [2048..2055]: > +3: [2056..4095]: hole > +4: [4096..4103]: > +5: [4104..6143]: hole > +6: [6144..6151]: > +7: [6152..8191]: hole > +8: [8192..8199]: > +9: [8200..10239]: hole > +10: [10240..10247]: > +11: [10248..12287]: hole > +12: [12288..12295]: > +13: [12296..14335]: hole > +14: [14336..14343]: > +15: [14344..16383]: hole > +16: [16384..16391]: > +17: [16392..18431]: hole > +18: [18432..18439]: > +19: [18440..20479]: hole > +20: [20480..20487]: > +21: [20488..22527]: hole > +22: [22528..22535]: > +23: [22536..24575]: hole > +24: [24576..24583]: > +25: [24584..26623]: hole > +26: [26624..26631]: > +27: [26632..28671]: hole > +28: [28672..28679]: > +29: [28680..30719]: hole > +30: [30720..30727]: > +31: [30728..32767]: hole > +32: [32768..32775]: > +33: [32776..34815]: hole > +34: [34816..34823]: > + > +/mnt/test/hole_file17: > +0: [0..7]: > +1: [8..2047]: hole > +2: [2048..2055]: > +3: [2056..4095]: hole > +4: [4096..4103]: > +5: [4104..6143]: hole > +6: [6144..6151]: > +7: [6152..8191]: hole > +8: [8192..8199]: > +9: [8200..10239]: hole > +10: [10240..10247]: > +11: [10248..12287]: hole > +12: [12288..12295]: > +13: [12296..14335]: hole > +14: [14336..14343]: > +15: [14344..16383]: hole > +16: [16384..16391]: > +17: [16392..18431]: hole > +18: [18432..18439]: > +19: [18440..20479]: hole > +20: [20480..20487]: > +21: [20488..22527]: hole > +22: [22528..22535]: > +23: [22536..24575]: hole > +24: [24576..24583]: > +25: [24584..26623]: hole > +26: [26624..26631]: > +27: [26632..28671]: hole > +28: [28672..28679]: > +29: [28680..30719]: hole > +30: [30720..30727]: > +31: [30728..32767]: hole > +32: [32768..32775]: > +33: [32776..34815]: hole > +34: [34816..34823]: > +35: [34824..36863]: hole > +36: [36864..36871]: > + > +/mnt/test/hole_file28: > +0: [0..7]: > +1: [8..2047]: hole > +2: [2048..2055]: > +3: [2056..4095]: hole > +4: [4096..4103]: > +5: [4104..6143]: hole > +6: [6144..6151]: > +7: [6152..8191]: hole > +8: [8192..8199]: > +9: [8200..10239]: hole > +10: [10240..10247]: > +11: [10248..12287]: hole > +12: [12288..12295]: > +13: [12296..14335]: hole > +14: [14336..14343]: > +15: [14344..16383]: hole > +16: [16384..16391]: > +17: [16392..18431]: hole > +18: [18432..18439]: > +19: [18440..20479]: hole > +20: [20480..20487]: > +21: [20488..22527]: hole > +22: [22528..22535]: > +23: [22536..24575]: hole > +24: [24576..24583]: > +25: [24584..26623]: hole > +26: [26624..26631]: > +27: [26632..28671]: hole > +28: [28672..28679]: > +29: [28680..30719]: hole > +30: [30720..30727]: > +31: [30728..32767]: hole > +32: [32768..32775]: > +33: [32776..34815]: hole > +34: [34816..34823]: > +35: [34824..36863]: hole > +36: [36864..36871]: > +37: [36872..38911]: hole > +38: [38912..38919]: > +39: [38920..40959]: hole > +40: [40960..40967]: > +41: [40968..43007]: hole > +42: [43008..43015]: > +43: [43016..45055]: hole > +44: [45056..45063]: > +45: [45064..47103]: hole > +46: [47104..47111]: > +47: [47112..49151]: hole > +48: [49152..49159]: > +49: [49160..51199]: hole > +50: [51200..51207]: > +51: [51208..53247]: hole > +52: [53248..53255]: > +53: [53256..55295]: hole > +54: [55296..55303]: > +55: [55304..57343]: hole > +56: [57344..57351]: > +57: [57352..59391]: hole > +58: [59392..59399]: > + > +/mnt/test/hole_file29: > +0: [0..7]: > +1: [8..2047]: hole > +2: [2048..2055]: > +3: [2056..4095]: hole > +4: [4096..4103]: > +5: [4104..6143]: hole > +6: [6144..6151]: > +7: [6152..8191]: hole > +8: [8192..8199]: > +9: [8200..10239]: hole > +10: [10240..10247]: > +11: [10248..12287]: hole > +12: [12288..12295]: > +13: [12296..14335]: hole > +14: [14336..14343]: > +15: [14344..16383]: hole > +16: [16384..16391]: > +17: [16392..18431]: hole > +18: [18432..18439]: > +19: [18440..20479]: hole > +20: [20480..20487]: > +21: [20488..22527]: hole > +22: [22528..22535]: > +23: [22536..24575]: hole > +24: [24576..24583]: > +25: [24584..26623]: hole > +26: [26624..26631]: > +27: [26632..28671]: hole > +28: [28672..28679]: > +29: [28680..30719]: hole > +30: [30720..30727]: > +31: [30728..32767]: hole > +32: [32768..32775]: > +33: [32776..34815]: hole > +34: [34816..34823]: > +35: [34824..36863]: hole > +36: [36864..36871]: > +37: [36872..38911]: hole > +38: [38912..38919]: > +39: [38920..40959]: hole > +40: [40960..40967]: > +41: [40968..43007]: hole > +42: [43008..43015]: > +43: [43016..45055]: hole > +44: [45056..45063]: > +45: [45064..47103]: hole > +46: [47104..47111]: > +47: [47112..49151]: hole > +48: [49152..49159]: > +49: [49160..51199]: hole > +50: [51200..51207]: > +51: [51208..53247]: hole > +52: [53248..53255]: > +53: [53256..55295]: hole > +54: [55296..55303]: > +55: [55304..57343]: hole > +56: [57344..57351]: > +57: [57352..59391]: hole > +58: [59392..59399]: > +59: [59400..61439]: hole > +60: [61440..61447]: > + > +/mnt/test/hole_file30: > +0: [0..7]: > +1: [8..2047]: hole > +2: [2048..2055]: > +3: [2056..4095]: hole > +4: [4096..4103]: > +5: [4104..6143]: hole > +6: [6144..6151]: > +7: [6152..8191]: hole > +8: [8192..8199]: > +9: [8200..10239]: hole > +10: [10240..10247]: > +11: [10248..12287]: hole > +12: [12288..12295]: > +13: [12296..14335]: hole > +14: [14336..14343]: > +15: [14344..16383]: hole > +16: [16384..16391]: > +17: [16392..18431]: hole > +18: [18432..18439]: > +19: [18440..20479]: hole > +20: [20480..20487]: > +21: [20488..22527]: hole > +22: [22528..22535]: > +23: [22536..24575]: hole > +24: [24576..24583]: > +25: [24584..26623]: hole > +26: [26624..26631]: > +27: [26632..28671]: hole > +28: [28672..28679]: > +29: [28680..30719]: hole > +30: [30720..30727]: > +31: [30728..32767]: hole > +32: [32768..32775]: > +33: [32776..34815]: hole > +34: [34816..34823]: > +35: [34824..36863]: hole > +36: [36864..36871]: > +37: [36872..38911]: hole > +38: [38912..38919]: > +39: [38920..40959]: hole > +40: [40960..40967]: > +41: [40968..43007]: hole > +42: [43008..43015]: > +43: [43016..45055]: hole > +44: [45056..45063]: > +45: [45064..47103]: hole > +46: [47104..47111]: > +47: [47112..49151]: hole > +48: [49152..49159]: > +49: [49160..51199]: hole > +50: [51200..51207]: > +51: [51208..53247]: hole > +52: [53248..53255]: > +53: [53256..55295]: hole > +54: [55296..55303]: > +55: [55304..57343]: hole > +56: [57344..57351]: > +57: [57352..59391]: hole > +58: [59392..59399]: > +59: [59400..61439]: hole > +60: [61440..61447]: > +61: [61448..63487]: hole > +62: [63488..63495]: > + > +/mnt/test/hole_file31: > +0: [0..7]: > +1: [8..2047]: hole > +2: [2048..2055]: > +3: [2056..4095]: hole > +4: [4096..4103]: > +5: [4104..6143]: hole > +6: [6144..6151]: > +7: [6152..8191]: hole > +8: [8192..8199]: > +9: [8200..10239]: hole > +10: [10240..10247]: > +11: [10248..12287]: hole > +12: [12288..12295]: > +13: [12296..14335]: hole > +14: [14336..14343]: > +15: [14344..16383]: hole > +16: [16384..16391]: > +17: [16392..18431]: hole > +18: [18432..18439]: > +19: [18440..20479]: hole > +20: [20480..20487]: > +21: [20488..22527]: hole > +22: [22528..22535]: > +23: [22536..24575]: hole > +24: [24576..24583]: > +25: [24584..26623]: hole > +26: [26624..26631]: > +27: [26632..28671]: hole > +28: [28672..28679]: > +29: [28680..30719]: hole > +30: [30720..30727]: > +31: [30728..32767]: hole > +32: [32768..32775]: > +33: [32776..34815]: hole > +34: [34816..34823]: > +35: [34824..36863]: hole > +36: [36864..36871]: > +37: [36872..38911]: hole > +38: [38912..38919]: > +39: [38920..40959]: hole > +40: [40960..40967]: > +41: [40968..43007]: hole > +42: [43008..43015]: > +43: [43016..45055]: hole > +44: [45056..45063]: > +45: [45064..47103]: hole > +46: [47104..47111]: > +47: [47112..49151]: hole > +48: [49152..49159]: > +49: [49160..51199]: hole > +50: [51200..51207]: > +51: [51208..53247]: hole > +52: [53248..53255]: > +53: [53256..55295]: hole > +54: [55296..55303]: > +55: [55304..57343]: hole > +56: [57344..57351]: > +57: [57352..59391]: hole > +58: [59392..59399]: > +59: [59400..61439]: hole > +60: [61440..61447]: > +61: [61448..63487]: hole > +62: [63488..63495]: > +63: [63496..65535]: hole > +64: [65536..65543]: > + > +*** done > Index: xfstests-dev/group > =================================================================== > --- xfstests-dev.orig/group 2009-03-20 06:56:23.000000000 +0000 > +++ xfstests-dev/group 2009-03-20 06:57:06.000000000 +0000 > @@ -307,3 +307,4 @@ > 200 mount auto quick > 201 metadata auto quick > 202 repair auto quick > +203 ioctl auto > > _______________________________________________ > xfs mailing list > xfs@oss.sgi.com > http://oss.sgi.com/mailman/listinfo/xfs > _______________________________________________ xfs mailing list xfs@oss.sgi.com http://oss.sgi.com/mailman/listinfo/xfs