Re: [Yaffs] Follow up error code 91

Top Page
Attachments:
Message as email
+ (text/plain)
Delete this message
Reply to this message
Author: Charles Manning
Date:  
To: yaffs
Subject: Re: [Yaffs] Follow up error code 91
Hello Marco

You are doing something very interesting...

The stuff in direct/tests runs yaffs in a simulation test harness as an
application. That is designed to run on a host (eg. I run it on a Ubuntu PC)
and not really intended to run on a target. I usually run it from a tmpfs
mount to make it run faster. Of course there is no reason that running the
yaffs simulator on top of a yaffs file system should not work, but that means
you have yaffs on top of yaffs...

I suspect there is a problem due to the very small partition size you are
using. I shall investigate.

If you're trying to test yaffs running on a target then I suggest regular fs
tests such as fsx. There are many versions of fsx out there and I use this
one: http://github.com/cdhmanning/fs-tests

Thanks

Charles

On Wednesday 28 April 2010 10:44:17 wrote:
> Hi,
>
> wrt error 91 (email below), I compiled your tests with a cross compiler
> for mips (the nand's board uses a mips). I use kernel 2.6.28, the size of
> the NAND SLC is 64Mb, hence I changed the parameters of
> direct/yaffs_fileem2k.h, in order to have a emfile-2k that is not too big,
> in this way:
>
> #define SIZE_IN_MB 2
> /* #define SIZE_IN_MB 128 */
>
> #define PAGE_DATA_SIZE (2048)
> #define PAGE_SPARE_SIZE (64)
> #define PAGE_SIZE (PAGE_DATA_SIZE + PAGE_SPARE_SIZE)
> #define PAGES_PER_BLOCK (4)
> #define BLOCK_DATA_SIZE (PAGE_DATA_SIZE * PAGES_PER_BLOCK)
> #define BLOCK_SIZE (PAGES_PER_BLOCK * (PAGE_SIZE))
> #define BLOCKS_PER_MB ((1024*1024)/BLOCK_DATA_SIZE)
> #define SIZE_IN_BLOCKS (BLOCKS_PER_MB * SIZE_IN_MB)
>
> To circumvent the fsx problem, in run_fw_update_test_nand.sh I deleted the
> -f flag from yaffs_test (in order to dont perform fsx test) and this is
> the output:
>
> # ./launch_tests.sh
> ++ pwd
> + LAUNCHDIR=/mnt/nfs/mcesaran/test/yaffs2/direct/tests
> + RUNDIR=/mnt/flash/tmp
> + mkdir /mnt/flash/tmp
> + chmod a+wr /mnt/flash/tmp
> + /mnt/nfs/mcesaran/test/yaffs2/direct/tests/manage_nand_test.sh 0
> rm: cannot remove 'seed-nand-*': No such file or directory
> rm: cannot remove 'emfile-2k-*': No such file or directory
> Running test fw_upgrade initialise seed 0 cycles -1
> yaffs: Mounting yaffs2
> yaffs: yaffs_GutsInitialise()
> yaffs_ScanBackwards starts intstartblk 1 intendblk 256...
> 0 blocks to be sorted...
> ...done
> yaffs_ScanBackwards ends
>
> Block summary
> 0 blocks have illegal states
> Unknown 0 blocks
> Needs scanning 0 blocks
> Scanning 0 blocks
> Empty 256 blocks
> Allocating 0 blocks
> Full 0 blocks
> Dirty 0 blocks
> Checkpoint 0 blocks
> Collecting 0 blocks
> Dead 0 blocks
>
> yaffs: yaffs_GutsInitialise() done.
>
> Mount complete
> yaffs: Tnodes added
> GC none: finder 17 skip 1 threshold 4 dirtiest 0 using 0 oldest 0
> Allocated block 1, seq 4097, 255 left
>
>
>
> *** Writing file yaffs2/tmp-counter inode 257
> About to rename yaffs2/tmp-counter to yaffs2/powerUps
> old stat inode 2146466856
> new stat inode 257
> new fstat inode 257
> GC none: finder 34 skip 2 threshold 4 dirtiest 0 using 0 oldest 0
> ##
> ## Set counter yaffs2/powerUps to 0
> ##
>
>
>
> *** Writing file yaffs2/tmp-counter inode 258
> About to rename yaffs2/tmp-counter to yaffs2/starts
> old stat inode 2146466856
> new stat inode 258
> new fstat inode 258
> GC none: finder 51 skip 3 threshold 4 dirtiest 0 using 0 oldest 0
> ##
> ## Set counter yaffs2/starts to 0
> ##
>
>
>
> *** Writing file yaffs2/tmp-counter inode 259
> GC none: finder 68 skip 4 threshold 4 dirtiest 0 using 0 oldest 0
> About to rename yaffs2/tmp-counter to yaffs2/ends
> old stat inode 2146466856
> new stat inode 259
> new fstat inode 259
> ##
> ## Set counter yaffs2/ends to 0
> ##
>
>
>
> *** Writing file yaffs2/tmp-counter inode 260
> GC none: finder 85 skip 5 threshold 4 dirtiest 0 using 0 oldest 0
> About to rename yaffs2/tmp-counter to yaffs2/powerUps
> old stat inode 257
> new stat inode 260
> new fstat inode 260
> ##
> ## Set counter yaffs2/powerUps to 0
> ##
> GC none: finder 102 skip 6 threshold 4 dirtiest 0 using 0 oldest 0
>
>
>
> **** Open writing file yaffs2/tmp-main inode 261
> GC none: finder 119 skip 7 threshold 4 dirtiest 0 using 0 oldest 0
> GC none: finder 136 skip 8 threshold 4 dirtiest 0 using 0 oldest 0
> GC none: finder 153 skip 9 threshold 4 dirtiest 0 using 0 oldest 0
> GC none: finder 170 skip 10 threshold 4 dirtiest 0 using 0 oldest 0
> GC none: finder 187 skip 11 threshold 4 dirtiest 0 using 0 oldest 0
> GC none: finder 204 skip 12 threshold 4 dirtiest 0 using 0 oldest 0
> Allocated block 2, seq 4098, 254 left
> GC none: finder 221 skip 13 threshold 4 dirtiest 0 using 0 oldest 0
> GC none: finder 238 skip 14 threshold 4 dirtiest 0 using 0 oldest 0
> GC none: finder 255 skip 15 threshold 4 dirtiest 0 using 0 oldest 0
> GC none: finder 16 skip 16 threshold 4 dirtiest 1 using 43 oldest 1
> GC none: finder 33 skip 17 threshold 4 dirtiest 1 using 43 oldest 1
> GC none: finder 50 skip 18 threshold 4 dirtiest 1 using 43 oldest 1
> GC none: finder 67 skip 19 threshold 4 dirtiest 1 using 43 oldest 1
> GC none: finder 84 skip 20 threshold 4 dirtiest 1 using 43 oldest 1
> GC Selected block 1 with 21 free, prioritised:0
> yaffs: GC erasedBlocks 254 aggressive 0
> Collecting block 1, in use 43, shrink 1, wholeBlock 0
> Allocated block 3, seq 4099, 253 left
> yaffs: GC erasedBlocks 253 aggressive 0
> Collecting block 1, in use 38, shrink 0, wholeBlock 0
> yaffs: GC erasedBlocks 253 aggressive 0
> Collecting block 1, in use 33, shrink 0, wholeBlock 0
> yaffs: GC erasedBlocks 253 aggressive 0
> Collecting block 1, in use 28, shrink 0, wholeBlock 0
> yaffs: GC erasedBlocks 253 aggressive 0
> Collecting block 1, in use 23, shrink 0, wholeBlock 0
> yaffs: GC erasedBlocks 253 aggressive 0
> Collecting block 1, in use 18, shrink 0, wholeBlock 0
> yaffs: GC erasedBlocks 253 aggressive 0
> Collecting block 1, in use 13, shrink 0, wholeBlock 0
> Allocated block 4, seq 4100, 252 left
> yaffs: GC erasedBlocks 252 aggressive 0
> Collecting block 1, in use 8, shrink 0, wholeBlock 0
> yaffs: GC erasedBlocks 252 aggressive 0
> Collecting block 1, in use 3, shrink 0, wholeBlock 0
> yaffs_BlockBecameDirty block 1 state 8
> erase block 0
> Erased block 1
> GC none: finder 118 skip 1 threshold 4 dirtiest 0 using 0 oldest 0
> GC none: finder 135 skip 2 threshold 4 dirtiest 0 using 0 oldest 0
> GC none: finder 152 skip 3 threshold 4 dirtiest 0 using 0 oldest 0
> GC none: finder 169 skip 4 threshold 4 dirtiest 0 using 0 oldest 0
> GC none: finder 186 skip 5 threshold 4 dirtiest 0 using 0 oldest 0
> GC none: finder 203 skip 6 threshold 4 dirtiest 0 using 0 oldest 0
> GC none: finder 220 skip 7 threshold 4 dirtiest 0 using 0 oldest 0
> Allocated block 5, seq 4101, 252 left
> GC none: finder 237 skip 8 threshold 4 dirtiest 0 using 0 oldest 0
> GC none: finder 254 skip 9 threshold 4 dirtiest 0 using 0 oldest 0
> GC none: finder 15 skip 10 threshold 4 dirtiest 0 using 0 oldest 0
> GC none: finder 32 skip 11 threshold 4 dirtiest 0 using 0 oldest 0
> GC none: finder 49 skip 12 threshold 4 dirtiest 0 using 0 oldest 0
> GC none: finder 66 skip 13 threshold 4 dirtiest 0 using 0 oldest 0
> GC none: finder 83 skip 14 threshold 4 dirtiest 0 using 0 oldest 0
> GC none: finder 100 skip 15 threshold 4 dirtiest 0 using 0 oldest 0
> GC none: finder 117 skip 16 threshold 4 dirtiest 0 using 0 oldest 0
> GC none: finder 134 skip 17 threshold 4 dirtiest 0 using 0 oldest 0
> GC none: finder 151 skip 18 threshold 4 dirtiest 0 using 0 oldest 0
> Allocated block 6, seq 4102, 251 left
> GC none: finder 168 skip 19 threshold 4 dirtiest 0 using 0 oldest 0
> GC none: finder 185 skip 20 threshold 4 dirtiest 0 using 0 oldest 0
> GC none: finder 202 skip 1 threshold 4 dirtiest 0 using 0 oldest 0
> GC none: finder 219 skip 2 threshold 4 dirtiest 0 using 0 oldest 0
> GC none: finder 236 skip 3 threshold 4 dirtiest 0 using 0 oldest 0
> GC none: finder 253 skip 4 threshold 4 dirtiest 0 using 0 oldest 0
> GC none: finder 14 skip 5 threshold 4 dirtiest 0 using 0 oldest 0
> GC none: finder 31 skip 6 threshold 4 dirtiest 0 using 0 oldest 0
> GC none: finder 48 skip 7 threshold 4 dirtiest 0 using 0 oldest 0
> GC none: finder 65 skip 8 threshold 4 dirtiest 0 using 0 oldest 0
> GC none: finder 82 skip 9 threshold 4 dirtiest 0 using 0 oldest 0
> Allocated block 7, seq 4103, 250 left
> GC none: finder 99 skip 10 threshold 4 dirtiest 0 using 0 oldest 0
> GC none: finder 116 skip 11 threshold 4 dirtiest 0 using 0 oldest 0
> GC none: finder 133 skip 12 threshold 4 dirtiest 0 using 0 oldest 0
> GC none: finder 150 skip 13 threshold 4 dirtiest 0 using 0 oldest 0
> GC none: finder 167 skip 14 threshold 4 dirtiest 0 using 0 oldest 0
> GC none: finder 184 skip 15 threshold 4 dirtiest 0 using 0 oldest 0
> GC none: finder 201 skip 16 threshold 4 dirtiest 0 using 0 oldest 0
> GC none: finder 218 skip 17 threshold 4 dirtiest 0 using 0 oldest 0
> GC none: finder 235 skip 18 threshold 4 dirtiest 0 using 0 oldest 0
> GC none: finder 252 skip 19 threshold 4 dirtiest 0 using 0 oldest 0
> Allocated block 8, seq 4104, 249 left
> GC none: finder 13 skip 20 threshold 4 dirtiest 0 using 0 oldest 0
> GC none: finder 30 skip 1 threshold 4 dirtiest 0 using 0 oldest 0
> GC none: finder 47 skip 2 threshold 4 dirtiest 0 using 0 oldest 0
> GC none: finder 64 skip 3 threshold 4 dirtiest 0 using 0 oldest 0
> GC none: finder 81 skip 4 threshold 4 dirtiest 0 using 0 oldest 0
> GC none: finder 98 skip 5 threshold 4 dirtiest 0 using 0 oldest 0
> GC none: finder 115 skip 6 threshold 4 dirtiest 0 using 0 oldest 0
> GC none: finder 132 skip 7 threshold 4 dirtiest 0 using 0 oldest 0
> GC none: finder 149 skip 8 threshold 4 dirtiest 0 using 0 oldest 0
> GC none: finder 166 skip 9 threshold 4 dirtiest 0 using 0 oldest 0
> GC none: finder 183 skip 10 threshold 4 dirtiest 0 using 0 oldest 0
> Allocated block 9, seq 4105, 248 left
> GC none: finder 200 skip 11 threshold 4 dirtiest 0 using 0 oldest 0
> GC none: finder 217 skip 12 threshold 4 dirtiest 0 using 0 oldest 0
> GC none: finder 234 skip 13 threshold 4 dirtiest 0 using 0 oldest 0
> GC none: finder 251 skip 14 threshold 4 dirtiest 0 using 0 oldest 0
> GC none: finder 12 skip 15 threshold 4 dirtiest 0 using 0 oldest 0
> GC none: finder 29 skip 16 threshold 4 dirtiest 0 using 0 oldest 0
> GC none: finder 46 skip 17 threshold 4 dirtiest 0 using 0 oldest 0
> GC none: finder 63 skip 18 threshold 4 dirtiest 0 using 0 oldest 0
> GC none: finder 80 skip 19 threshold 4 dirtiest 0 using 0 oldest 0
> GC none: finder 97 skip 20 threshold 4 dirtiest 0 using 0 oldest 0
> GC none: finder 114 skip 1 threshold 4 dirtiest 0 using 0 oldest 0
> Allocated block 10, seq 4106, 247 left
> File closed
> Raname file yaffs2/tmp-main to yaffs2/main
> Verifying file yaffs2/main
> verify yaffs2/main: file size is 1034008, recorded size is 1034008
> verified ok
>
> Block summary
> 0 blocks have illegal states
> Unknown 0 blocks
> Needs scanning 0 blocks
> Scanning 0 blocks
> Empty 247 blocks
> Allocating 1 blocks
> Full 8 blocks
> Dirty 0 blocks
> Checkpoint 0 blocks
> Collecting 0 blocks
> Dead 0 blocks
>
> save exit: isCheckpointed 1
> Test run completed!
> rm: cannot remove 'iteration-max-*': No such file or directory
> Running 10 iterations
> cp: write error: No space left on device
> cp: cannot stat 'emfile-2k-1': No such file or directory
> cp: cannot stat 'emfile-2k-2': No such file or directory
> cp: cannot stat 'emfile-2k-3': No such file or directory
> #########
> #########
> #########
> ######### Run 0 of 10 with seed 4291
> #########
> #########
> #########
> Running test fw_upgrade power_fail seed 4291 cycles -1
> yaffs: Mounting yaffs2
> yaffs: restored from checkpoint
> Mount complete
> Running stress on yaffs2 with seed 4291
> yaffs2//main inode 261 261 obj c60624 length 1034008 mode 8180 data file
> yaffs2//powerUps inode 260 260 obj c605a8 length 8 mode 8180 data file
> yaffs2//ends inode 259 259 obj c6052c length 8 mode 8180 data file
> yaffs2//lost+found inode 2 2 obj c60434 length 2048 mode 41B6 directory
> yaffs2//starts inode 258 258 obj c604b0 length 8 mode 8180 data file
>
> Free space in yaffs2/ is 31324160
>
> yaffs2//main inode 261 261 obj c60624 length 1034008 mode 8180 data file
> yaffs2//powerUps inode 260 260 obj c605a8 length 8 mode 8180 data file
> yaffs2//ends inode 259 259 obj c6052c length 8 mode 8180 data file
> yaffs2//lost+found inode 2 2 obj c60434 length 2048 mode 41B6 directory
> yaffs2//starts inode 258 258 obj c604b0 length 8 mode 8180 data file
>
> Free space in yaffs2/ is 31324160
>
> erase block 0
> **>> Block 11 needs retiring
> **>> Block 12 needs retiring
> **>> Block 13 needs retiring
> **>> Block 14 needs retiring
> **>> Block 15 needs retiring
> **>> Block 16 needs retiring
> ... (many of these) ...
> **>> Block 255 needs retiring
> **>> Block 256 needs retiring
> yaffs tragedy: no more erased blocks
> !!!!!!!!! Allocator out !!!!!!!!!!!!!!!!!
> **>> yaffs write required 248 attempts
> yaffs tragedy: no more erased blocks
> !!!!!!!!! Allocator out !!!!!!!!!!!!!!!!!
> yaffs tragedy: no more erased blocks
> !!!!!!!!! Allocator out !!!!!!!!!!!!!!!!!
> yaffs tragedy: no more erased blocks
> !!!!!!!!! Allocator out !!!!!!!!!!!!!!!!!
> yaffs tragedy: no more erased blocks
> !!!!!!!!! Allocator out !!!!!!!!!!!!!!!!!
> yaffs tragedy: no more erased blocks
> !!!!!!!!! Allocator out !!!!!!!!!!!!!!!!!
> yaffs tragedy: no more erased blocks
> !!!!!!!!! Allocator out !!!!!!!!!!!!!!!!!
> yaffs tragedy: no more erased blocks
> !!!!!!!!! Allocator out !!!!!!!!!!!!!!!!!
> yaffs tragedy: no more erased blocks
> !!!!!!!!! Allocator out !!!!!!!!!!!!!!!!!
> yaffs tragedy: no more erased blocks
> !!!!!!!!! Allocator out !!!!!!!!!!!!!!!!!
> yaffs tragedy: no more erased blocks
> !!!!!!!!! Allocator out !!!!!!!!!!!!!!!!!
> Error writing counter yaffs2/powerUps handle 0, x[0] 1 x[1] 2
> Integrity error 145
> fatal yaffs test pid 111 sleeping
>
> then the test stops. this is cat /prof/filesystem if can help you:
>
> Device 0 "rootfs"
> startBlock......... 0
> endBlock........... 3583
> totalBytesPerChunk. 2048
> nDataBytesPerChunk. 2048
> chunkGroupBits..... 0
> chunkGroupSize..... 1
> nErasedBlocks...... 14
> nReservedBlocks.... 5
> blocksInCheckpoint. 0
> nTnodesCreated..... 2200
> nFreeTnodes........ 55
> nObjectsCreated.... 500
> nFreeObjects....... 67
> nFreeChunks........ 120
> nPageWrites........ 26484
> nPageReads......... 14326
> nBlockErasures..... 389
> nGCCopies.......... 1407
> garbageCollections. 307
> passiveGCs......... 8
> nRetriedWrites..... 0
> nShortOpCaches..... 10
> nRetireBlocks...... 0
> eccFixed........... 0
> eccUnfixed......... 0
> tagsEccFixed....... 0
> tagsEccUnfixed..... 0
> cacheHits.......... 2839
> nDeletedFiles...... 0
> nUnlinkedFiles..... 21
> nBackgroudDeletions 0
> useNANDECC......... 1
> noTagsECC.......... 0
> isYaffs2........... 1
> inbandTags......... 0
> emptyLostAndFound.. 0
> disableLazyLoad.... 0
>
> please let me know if you need of more information
>
> thanks
> Marco
>
> > Hi Charles,
> >
> > thanks for your feedback. I mounted the YAFFS on a NAND, and recompiled
>
> the tests, this is the output:
> > # ./launch_tests.sh
> > ++ pwd
> > + LAUNCHDIR=/mnt/nfs/mcesaran/test/yaffs2/direct/tests
> > + RUNDIR=/
> > + mkdir -p /
> > + chmod a+wr /
> > + /mnt/nfs/mcesaran/test/yaffs2/direct/tests/manage_nand_test.sh 0 rm:
>
> cannot remove 'seed-nand-*': No such file or directory
>
> > rm: cannot remove 'emfile-2k-*': No such file or directory
> > Running test fw_upgrade initialise seed 0 cycles -1
> > yaffs: Mounting yaffs2
> > yaffs: yaffs_GutsInitialise()
> > yaffs_ScanBackwards starts intstartblk 1 intendblk 128...
> > 0 blocks to be sorted...
> > ...done
> > yaffs_ScanBackwards ends
> >
> > Block summary
> > 0 blocks have illegal states
> > Unknown 0 blocks
> > Needs scanning 0 blocks
> > Scanning 0 blocks
> > Empty 128 blocks
> > Allocating 0 blocks
> > Full 0 blocks
> > Dirty 0 blocks
> > Checkpoint 0 blocks
> > Collecting 0 blocks
> > Dead 0 blocks
> >
> > yaffs: yaffs_GutsInitialise() done.
> >
> > Mount complete
> > yaffs: Tnodes added
> > GC none: finder 9 skip 1 threshold 4 dirtiest 0 using 0 oldest 0
>
> Allocated block 1, seq 4097, 127 left
>
> > *** Writing file yaffs2/tmp-counter inode 257
> > About to rename yaffs2/tmp-counter to yaffs2/powerUps
> > old stat inode 2140871736
> > new stat inode 257
> > new fstat inode 257
> > GC none: finder 18 skip 2 threshold 4 dirtiest 0 using 0 oldest 0 ##
> > ## Set counter yaffs2/powerUps to 0
> > ##
> >
> >
> >
> > *** Writing file yaffs2/tmp-counter inode 258
> > About to rename yaffs2/tmp-counter to yaffs2/starts
> > old stat inode 2140871736
> > new stat inode 258
> > new fstat inode 258
> > GC none: finder 27 skip 3 threshold 4 dirtiest 0 using 0 oldest 0 ##
> > ## Set counter yaffs2/starts to 0
> > ##
> >
> >
> >
> > *** Writing file yaffs2/tmp-counter inode 259
> > GC none: finder 36 skip 4 threshold 4 dirtiest 0 using 0 oldest 0 About
>
> to rename yaffs2/tmp-counter to yaffs2/ends
>
> > old stat inode 2140871736
> > new stat inode 259
> > new fstat inode 259
> > ##
> > ## Set counter yaffs2/ends to 0
> > ##
> >
> >
> >
> > *** Writing file yaffs2/tmp-counter inode 260
> > GC none: finder 45 skip 5 threshold 4 dirtiest 0 using 0 oldest 0 About
>
> to rename yaffs2/tmp-counter to yaffs2/powerUps
>
> > old stat inode 257
> > new stat inode 260
> > new fstat inode 260
> > ##
> > ## Set counter yaffs2/powerUps to 0
> > ##
> > GC none: finder 54 skip 6 threshold 4 dirtiest 0 using 0 oldest 0
> >
> >
> >
> > **** Open writing file yaffs2/tmp-main inode 261
> > GC none: finder 63 skip 7 threshold 4 dirtiest 0 using 0 oldest 0 GC
>
> none: finder 72 skip 8 threshold 4 dirtiest 0 using 0 oldest 0 GC none:
> finder 81 skip 9 threshold 4 dirtiest 0 using 0 oldest 0 GC none: finder
> 90 skip 10 threshold 4 dirtiest 0 using 0 oldest 0 GC none: finder 99
> skip 11 threshold 4 dirtiest 0 using 0 oldest 0 GC none: finder 108 skip
> 12 threshold 4 dirtiest 0 using 0 oldest 0 Allocated block 2, seq 4098,
> 126 left
>
> > GC none: finder 117 skip 13 threshold 4 dirtiest 0 using 0 oldest 0 GC
>
> none: finder 126 skip 14 threshold 4 dirtiest 0 using 0 oldest 0 GC
> none: finder 7 skip 15 threshold 4 dirtiest 1 using 43 oldest 1 GC none:
> finder 16 skip 16 threshold 4 dirtiest 1 using 43 oldest 1 GC none:
> finder 25 skip 17 threshold 4 dirtiest 1 using 43 oldest 1 GC none:
> finder 34 skip 18 threshold 4 dirtiest 1 using 43 oldest 1 GC none:
> finder 43 skip 19 threshold 4 dirtiest 1 using 43 oldest 1 GC none:
> finder 52 skip 20 threshold 4 dirtiest 1 using 43 oldest 1 GC Selected
> block 1 with 21 free, prioritised:0
>
> > yaffs: GC erasedBlocks 126 aggressive 0
> > Collecting block 1, in use 43, shrink 1, wholeBlock 0
> > Allocated block 3, seq 4099, 125 left
> > yaffs: GC erasedBlocks 125 aggressive 0
> > Collecting block 1, in use 38, shrink 0, wholeBlock 0
> > yaffs: GC erasedBlocks 125 aggressive 0
> > Collecting block 1, in use 33, shrink 0, wholeBlock 0
> > yaffs: GC erasedBlocks 125 aggressive 0
> > Collecting block 1, in use 28, shrink 0, wholeBlock 0
> > yaffs: GC erasedBlocks 125 aggressive 0
> > Collecting block 1, in use 23, shrink 0, wholeBlock 0
> > yaffs: GC erasedBlocks 125 aggressive 0
> > Collecting block 1, in use 18, shrink 0, wholeBlock 0
> > yaffs: GC erasedBlocks 125 aggressive 0
> > Collecting block 1, in use 13, shrink 0, wholeBlock 0
> > Allocated block 4, seq 4100, 124 left
> > yaffs: GC erasedBlocks 124 aggressive 0
> > Collecting block 1, in use 8, shrink 0, wholeBlock 0
> > yaffs: GC erasedBlocks 124 aggressive 0
> > Collecting block 1, in use 3, shrink 0, wholeBlock 0
> > yaffs_BlockBecameDirty block 1 state 8
> > erase block 0
> > Erased block 1
> > GC none: finder 70 skip 1 threshold 4 dirtiest 0 using 0 oldest 0 GC
>
> none: finder 79 skip 2 threshold 4 dirtiest 0 using 0 oldest 0 GC none:
> finder 88 skip 3 threshold 4 dirtiest 0 using 0 oldest 0 GC none: finder
> 97 skip 4 threshold 4 dirtiest 0 using 0 oldest 0 GC none: finder 106
> skip 5 threshold 4 dirtiest 0 using 0 oldest 0 GC none: finder 115 skip
> 6 threshold 4 dirtiest 0 using 0 oldest 0 GC none: finder 124 skip 7
> threshold 4 dirtiest 0 using 0 oldest 0 Allocated block 5, seq 4101,
> 124 left
>
> > GC none: finder 5 skip 8 threshold 4 dirtiest 0 using 0 oldest 0 GC
>
> none: finder 14 skip 9 threshold 4 dirtiest 0 using 0 oldest 0 GC none:
> finder 23 skip 10 threshold 4 dirtiest 0 using 0 oldest 0 GC none:
> finder 32 skip 11 threshold 4 dirtiest 0 using 0 oldest 0 GC none:
> finder 41 skip 12 threshold 4 dirtiest 0 using 0 oldest 0 GC none:
> finder 50 skip 13 threshold 4 dirtiest 0 using 0 oldest 0 GC none:
> finder 59 skip 14 threshold 4 dirtiest 0 using 0 oldest 0 GC none:
> finder 68 skip 15 threshold 4 dirtiest 0 using 0 oldest 0 GC none:
> finder 77 skip 16 threshold 4 dirtiest 0 using 0 oldest 0 GC none:
> finder 86 skip 17 threshold 4 dirtiest 0 using 0 oldest 0 GC none:
> finder 95 skip 18 threshold 4 dirtiest 0 using 0 oldest 0 Allocated
> block 6, seq 4102, 123 left
>
> > GC none: finder 104 skip 19 threshold 4 dirtiest 0 using 0 oldest 0 GC
>
> none: finder 113 skip 20 threshold 4 dirtiest 0 using 0 oldest 0 GC
> none: finder 122 skip 1 threshold 4 dirtiest 0 using 0 oldest 0 GC none:
> finder 3 skip 2 threshold 4 dirtiest 0 using 0 oldest 0 GC none: finder
> 12 skip 3 threshold 4 dirtiest 0 using 0 oldest 0 GC none: finder 21
> skip 4 threshold 4 dirtiest 0 using 0 oldest 0 GC none: finder 30 skip 5
> threshold 4 dirtiest 0 using 0 oldest 0 GC none: finder 39 skip 6
> threshold 4 dirtiest 0 using 0 oldest 0 GC none: finder 48 skip 7
> threshold 4 dirtiest 0 using 0 oldest 0 GC none: finder 57 skip 8
> threshold 4 dirtiest 0 using 0 oldest 0 GC none: finder 66 skip 9
> threshold 4 dirtiest 0 using 0 oldest 0 Allocated block 7, seq 4103,
> 122 left
>
> > GC none: finder 75 skip 10 threshold 4 dirtiest 0 using 0 oldest 0 GC
>
> none: finder 84 skip 11 threshold 4 dirtiest 0 using 0 oldest 0 GC none:
> finder 93 skip 12 threshold 4 dirtiest 0 using 0 oldest 0 GC none:
> finder 102 skip 13 threshold 4 dirtiest 0 using 0 oldest 0 GC none:
> finder 111 skip 14 threshold 4 dirtiest 0 using 0 oldest 0 GC none:
> finder 120 skip 15 threshold 4 dirtiest 0 using 0 oldest 0 GC none:
> finder 1 skip 16 threshold 4 dirtiest 0 using 0 oldest 0 GC none: finder
> 10 skip 17 threshold 4 dirtiest 0 using 0 oldest 0 GC none: finder 19
> skip 18 threshold 4 dirtiest 0 using 0 oldest 0 GC none: finder 28 skip
> 19 threshold 4 dirtiest 0 using 0 oldest 0 Allocated block 8, seq 4104,
> 121 left
>
> > GC none: finder 37 skip 20 threshold 4 dirtiest 0 using 0 oldest 0 GC
>
> none: finder 46 skip 1 threshold 4 dirtiest 0 using 0 oldest 0 GC none:
> finder 55 skip 2 threshold 4 dirtiest 0 using 0 oldest 0 GC none: finder
> 64 skip 3 threshold 4 dirtiest 0 using 0 oldest 0 GC none: finder 73
> skip 4 threshold 4 dirtiest 0 using 0 oldest 0 GC none: finder 82 skip 5
> threshold 4 dirtiest 0 using 0 oldest 0 GC none: finder 91 skip 6
> threshold 4 dirtiest 0 using 0 oldest 0 GC none: finder 100 skip 7
> threshold 4 dirtiest 0 using 0 oldest 0 GC none: finder 109 skip 8
> threshold 4 dirtiest 0 using 0 oldest 0 GC none: finder 118 skip 9
> threshold 4 dirtiest 0 using 0 oldest 0 GC none: finder 127 skip 10
> threshold 4 dirtiest 0 using 0 oldest 0 Allocated block 9, seq 4105,
> 120 left
>
> > GC none: finder 8 skip 11 threshold 4 dirtiest 0 using 0 oldest 0 GC
>
> none: finder 17 skip 12 threshold 4 dirtiest 0 using 0 oldest 0 GC none:
> finder 26 skip 13 threshold 4 dirtiest 0 using 0 oldest 0 GC none:
> finder 35 skip 14 threshold 4 dirtiest 0 using 0 oldest 0 GC none:
> finder 44 skip 15 threshold 4 dirtiest 0 using 0 oldest 0 GC none:
> finder 53 skip 16 threshold 4 dirtiest 0 using 0 oldest 0 GC none:
> finder 62 skip 17 threshold 4 dirtiest 0 using 0 oldest 0 GC none:
> finder 71 skip 18 threshold 4 dirtiest 0 using 0 oldest 0 GC none:
> finder 80 skip 19 threshold 4 dirtiest 0 using 0 oldest 0 GC none:
> finder 89 skip 20 threshold 4 dirtiest 0 using 0 oldest 0 GC none:
> finder 98 skip 1 threshold 4 dirtiest 0 using 0 oldest 0 Allocated block
> 10, seq 4106, 119 left
>
> > File closed
> > Raname file yaffs2/tmp-main to yaffs2/main
> > Verifying file yaffs2/main
> > verify yaffs2/main: file size is 1034008, recorded size is 1034008
>
> verified ok
>
> > Block summary
> > 0 blocks have illegal states
> > Unknown 0 blocks
> > Needs scanning 0 blocks
> > Scanning 0 blocks
> > Empty 119 blocks
> > Allocating 1 blocks
> > Full 8 blocks
> > Dirty 0 blocks
> > Checkpoint 0 blocks
> > Collecting 0 blocks
> > Dead 0 blocks
> >
> > save exit: isCheckpointed 1
> > Test run completed!
> > rm: cannot remove 'iteration-max-*': No such file or directory
> > Running 10 iterations
> > cp: cannot stat 'emfile-2k-1': No such file or directory
> > cp: cannot stat 'emfile-2k-2': No such file or directory
> > cp: cannot stat 'emfile-2k-3': No such file or directory
> > #########
> > #########
> > #########
> > ######### Run 0 of 10 with seed 6906
> > #########
> > #########
> > #########
> > Running test fw_upgrade fsx power_fail seed 6906 cycles -1
> > yaffs: Mounting yaffs2
> > yaffs: restored from checkpoint
> > Mount complete
> > Running stress on yaffs2 with seed 6906
> > yaffs2//main inode 261 261 obj c40e24 length 1034008 mode 8180 data file
>
> yaffs2//powerUps inode 260 260 obj c40da8 length 8 mode 8180 data file
> yaffs2//ends inode 259 259 obj c40d2c length 8 mode 8180 data file
> yaffs2//lost+found inode 2 2 obj c40c34 length 2048 mode 41B6 directory
> yaffs2//starts inode 258 258 obj c40cb0 length 8 mode 8180 data file
>
> > Free space in yaffs2/ is 14546944
> >
> > yaffs2/fsxdata: Success
> > fsx wanted to exit with 91
> >
> >
> > Since I have few space on the NAND, I reduced the size of the
>
> emfile-2k-x
>
> > changing the parameters in yaffs_fileem2k.h, but anyway the test cannot
>
> be
>
> > completed
> >
> > thanks in advance for your help
> >
> > cheers,
> > Marco
> >
> >> On Tuesday 27 April 2010 07:42:58 wrote:
> >>> Hello,
> >>> This is the output that I get when I try to start the tests in
>
> /direct/test:
> >>> # ./launch_tests.sh
> >>> ++ pwd
> >>> + LAUNCHDIR=/mnt/nfs/mcesaran/test/yaffs2/direct/tests
> >>> + RUNDIR=/prova/tmp
> >>> + mkdir /prova/tmp
> >>> + mount -t tmpfs none /prova/tmp
> >>> + chmod a+wr /prova/tmp
> >>> + /mnt/nfs/mcesaran/test/yaffs2/direct/tests/manage_nand_test.sh 0 rm:
>
> cannot remove 'seed-nand-*': No such file or directory
>
> >>> rm: cannot remove 'emfile-2k-*': No such file or directory
> >>> Running test fw_upgrade initialise seed 0 cycles -1
> >>> yaffs: Mounting yaffs2
> >>> yaffs: yaffs_GutsInitialise()
> >>> yaffs: yaffs_GutsInitialise() aborted.
> >>> Mount complete
> >>> Error writing counter yaffs2/powerUps handle -1, x[0] 0 x[1] 1
>
> Integrity error 145
>
> >>> fatal yaffs test pid 88 sleeping
> >>> (then the test stops): how can I do?
> >>
> >> Hello Marco
> >> I just tried this with the latest code in git.
> >> It works fine for me on 3 different Ubuntu boxes.
> >> What environment are you using?
> >> Try also doing a 'make clean'.
> >> -- CHarles
> >> _______________________________________________
> >> yaffs mailing list
> >>
> >> http://lists.aleph1.co.uk/cgi-bin/mailman/listinfo/yaffs
> >
> > _______________________________________________
> > yaffs mailing list
> >
> > http://lists.aleph1.co.uk/cgi-bin/mailman/listinfo/yaffs
>
> _______________________________________________
> yaffs mailing list
>
> http://lists.aleph1.co.uk/cgi-bin/mailman/listinfo/yaffs