Re: [YAFFS] re: Object (file) creation fix seems to have pro…

Top Page
Attachments:
Message as email
+ (text/plain)
Delete this message
Reply to this message
Author: Charles Manning
Date:  
To: bbosch
CC: yaffs
Old-Topics: [YAFFS] re: Object (file) creation fix seems to have problems
Subject: Re: [YAFFS] re: Object (file) creation fix seems to have problems -->fixed
Hi YAFFSers

I was able to reproduce the problem consistently with yaffsram and have made
a change that seems to have fixed this. Fix is in CVS (yaffs_guts.c).

I have also changed the tracing a bit in yaffs_fs.c to make all the tracing
consistent.

To fix the original problem (over-zealous reuse of inode numbers causing
inconsistencies between VFS and YAFFS), I defered the deletion of the objects
in YAFFS until the VFS said that it had forgotten all out them. Part of this
also meant unhooking the yaffs objects from the VFS dentries and inodes so
that the objects would not be visible to the VFS. There are 4 "hooks" between
the VFS and YAFFS, but I'd only unhooked 3. This meant that the VFS was still
seeing a half-deleted object in some cases.

To fix this, the fourth "unhook" has now been done.

Hope we're all sweet.

-- Charles


On Friday 07 January 2005 08:35, wrote:
> Charles Manning writes:
> > Hmmm
> >
> > OK it looks like the entry is staying "alive" in the dentry which means
> > that the directory is not becoming empty. This causes problems because
> > when a look-up is attempted the dentry no longer has an associated inode
> > - this would be a BadThing. The defered deletion might be causing this
> > problem.
> >
> > I'll do some tests here, but if you have a system all set up amd
> > faulting, it would be interesting to see a trace of yaffs messages as
> > well as doing "ls -ial" on a broken directory. The -i option then gives
> > inode info which helps to tie up the faulting file
> >
> >
> > -- Charles
>
> Charles,
>
> Thanks for the quick response and hints.
>
> Here is the full console log including ls and dmesg output from
> another test run. I don't have a log daemon configured when the root
> is not YAFFS so I don't think I captured the earliest trace info but
> hopefully there is something useful here. The response from tar was
> slightly different this time.
>
> I haven't attempted to boil this down or analyze it yet and,
> unfortunately, I will be home entertaining visiting out-of-country
> family until Tuesday. I will have access to my email, target and host
> from home, so if there are any other quick tests or debug info that
> would be of use before I return, I will be happy to oblige, I just
> won't have much time for deep thought until next week...
>
> Thanks!
>
> --Brad
>
> BusyBox v1.00-rc3 (2004.11.23-17:20+0000) Built-in shell (ash)
> Enter 'help' for a list of built-in commands.
>
> ~ # mount /dev/mtdblock18 /mnt
> cramfs: wrong magic
> yaffs: dev is 7954 name is "1f:12"
> yaffs_read_super: MTD block size 4096
> yaffs_read_super: guts initialised
> yaffs_read_super: got root inode
> yaffs_read_super: d_alloc_root done
> yaffs_read_super: done
> ~ # cat /proc/yaffs
> YAFFS built:Jan 6 2005 12:19:15
> $Id: yaffs_fs.c,v 1.35 2004/10/20 20:12:43 charles Exp $
> $Id: yaffs_guts.c,v 1.37 2004/10/20 20:12:43 charles Exp $
>
> Device yaffs
> startBlock......... 1
> endBlock........... 127
> chunkGroupBits..... 0
> chunkGroupSize..... 1
> nErasedBlocks...... 126
> nTnodesCreated..... 0
> nFreeTnodes........ 0
> nObjectsCreated.... 100
> nFreeObjects....... 97
> nFreeChunks........ 4032
> nPageWrites........ 0
> nPageReads......... 0
> nBlockErasures..... 0
> nGCCopies.......... 0
> garbageCollections. 0
> passiveGCs......... 0
> nRetriedWrites..... 0
> nRetireBlocks...... 0
> eccFixed........... 0
> eccUnfixed......... 0
> tagsEccFixed....... 0
> tagsEccUnfixed..... 126
> cacheHits.......... 0
> nDeletedFiles...... 0
> nUnlinkedFiles..... 0
> nBackgroudDeletions 0
> useNANDECC......... 0
> ~ # tar cf - bin | tar -C /mnt -xvf -
> binyaffs_mknod: making oject for bin, mode 41ed dev 0
>
> bin/[
> bin/ash
> bin/awk
> bin/basenameyaffs_mknod: making oject for board_config, mode 81ed dev 0
>
> bin/board_config
> bin/bootselyaffs_mknod: making oject for bootsel, mode 81ed dev 0
>
> bin/bunzip2yaffs_mknod: making oject for busybox, mode 81ed dev 0
>
> bin/busybox
> bin/bzcat
> bin/cat
> bin/checkbootyaffs_mknod: making oject for checkboot, mode 81ed dev 0
>
> bin/chgrp
> bin/chmod
> bin/chown
> bin/clear
> bin/cmp
> bin/conserveryaffs_mknod: making oject for conserver, mode 81ed dev 0
>
> bin/cp
> bin/cut
> bin/date
> bin/dd
> bin/dev
> bin/deviceyaffs_mknod: making oject for device, mode 81ed dev 0
>
> bin/df
> bin/dirname
> bin/dmesg
> bin/du
> bin/echo
> bin/egrep
> bin/einfoyaffs_mknod: making oject for einfo, mode 81ed dev 0
>
> bin/env
> bin/eraseyaffs_mknod: making oject for erase, mode 81ed dev 0
>
> bin/eraseallyaffs_mknod: making oject for eraseall, mode 81ed dev 0
>
> bin/expr
> bin/false
> bin/fcpyaffs_mknod: making oject for fcp, mode 81ed dev 0
>
> bin/fgrep
> bin/find
> bin/firmware_insyaffs_mknod: making oject for firmware_install, mode 81ed
> dev 0 tall
> bin/free
> bin/ftpget
> bin/ftpput
> bin/fw_printenvyaffs_mknod: making oject for fw_printenv, mode 81ed dev 0
>
> bin/fw_setenv
> bin/grep
> bin/gunzip
> bin/gzip
> bin/head
> bin/healthMgryaffs_mknod: making oject for healthMgr, mode 81ed dev 0
>
> bin/hexdump
> bin/hostname
> bin/id
> bin/install
> bin/ipmiMgryaffs_mknod: making oject for ipmiMgr, mode 81ed dev 0
>
> bin/ipmiUpgradeyaffs_mknod: making oject for ipmiUpgrade, mode 81ed dev 0
>
> bin/kill
> bin/killall
> bin/ln
> bin/lockyaffs_mknod: making oject for lock, mode 81ed dev 0
>
> bin/logger
> bin/loginyaffs_mknod: making oject for login, mode 81ed dev 0
>
> bin/ls
> bin/md5sum
> bin/mkdir
> bin/mknod
> bin/mktemp
> bin/more
> bin/mount
> bin/mtd_debugyaffs_mknod: making oject for mtd_debug, mode 81ed dev 0
>
> bin/mv
> bin/nanddumpyaffs_mknod: making oject for nanddump, mode 81ed dev 0
>
> bin/nandwriteyaffs_mknod: making oject for nandwrite, mode 81ed dev 0
>
> bin/nfsyaffs_mknod: making oject for nfs, mode 81ed dev 0
>
> bin/pidof
> bin/ping
> bin/populateyaffs_mknod: making oject for populate, mode 81ed dev 0
>
> bin/ps
> bin/pwd
> bin/readlink
> bin/reset
> bin/rm
> bin/rmdir
> bin/sed
> bin/sh
> bin/sleep
> bin/sort
> bin/strings
> bin/stty
> bin/sync
> bin/tail
> bin/tar
> bin/tee
> bin/telnet
> bin/test
> bin/tftp
> bin/time
> bin/top
> bin/touch
> bin/tr
> bin/traceroute
> bin/true
> bin/tty
> bin/umount
> bin/uname
> bin/uniq
> bin/unlockyaffs_mknod: making oject for unlock, mode 81ed dev 0
>
> bin/unzip
> bin/uptime
> bin/usleep
> bin/vi
> bin/wc
> bin/wget
> bin/which
> bin/whoami
> bin/xargs
> bin/xinetdyaffs_mknod: making oject for xinetd, mode 81ed dev 0
>
> bin/yes
> bin/zcat
> ~ # tar cf - bin | tar -C /mnt -xvf -
> bin
> bin/[yaffs_put_inode: ino 261, count 1
>
> yaffs_delete_inode: ino 261, count 0 object exists
> yaffs_clear_inode: ino 261, count 0 object exists
> bin/ashyaffs_put_inode: ino 262, count 1
>
> yaffs_delete_inode: ino 262, count 0 object exists
> yaffs_clear_inode: ino 262, count 0 object exists
> bin/awkyaffs_put_inode: ino 263, count 1
>
> yaffs_delete_inode: ino 263, count 0 object exists
> yaffs_clear_inode: ino 263, count 0 object exists
> bin/basenameyaffs_put_inode: ino 264, count 1
>
> yaffs_delete_inode: ino 264, count 0 object exists
> yaffs_clear_inode: ino 264, count 0 object exists
> bin/board_configyaffs_put_inode: ino 265, count 1
>
> yaffs_delete_inode: ino 265, count 0 object exists
> yaffs_clear_inode: ino 265, count 0 object exists
> yaffs_mknod: making oject for board_config, mode 81ed dev 0
> bin/bootselyaffs_put_inode: ino 266, count 1
>
> yaffs_delete_inode: ino 266, count 0 object exists
> yaffs_clear_inode: ino 266, count 0 object exists
> yaffs_mknod: making oject for bootsel, mode 81ed dev 0
> bin/bunzip2yaffs_put_inode: ino 267, count 1
>
> yaffs_delete_inode: ino 267, count 0 object exists
> yaffs_clear_inode: ino 267, count 0 object exists
> bin/busyboxyaffs_put_inode: ino 268, count 1
>
> yaffs_delete_inode: ino 268, count 0 object exists
> yaffs_clear_inode: ino 268, count 0 object exists
> yaffs_mknod: making oject for busybox, mode 81ed dev 0
> bin/bzcatyaffs_put_inode: ino 269, count 1
>
> yaffs_delete_inode: ino 269, count 0 object exists
> yaffs_clear_inode: ino 269, count 0 object exists
> bin/catyaffs_put_inode: ino 270, count 1
>
> yaffs_delete_inode: ino 270, count 0 object exists
> yaffs_clear_inode: ino 270, count 0 object exists
> bin/checkbootyaffs_put_inode: ino 271, count 1
>
> yaffs_delete_inode: ino 271, count 0 object exists
> yaffs_clear_inode: ino 271, count 0 object exists
> yaffs_mknod: making oject for checkboot, mode 81ed dev 0
> bin/chgrpyaffs_put_inode: ino 272, count 1
>
> yaffs_delete_inode: ino 272, count 0 object exists
> yaffs_clear_inode: ino 272, count 0 object exists
> bin/chmodyaffs_put_inode: ino 273, count 1
>
> yaffs_delete_inode: ino 273, count 0 object exists
> yaffs_clear_inode: ino 273, count 0 object exists
> bin/chownyaffs_put_inode: ino 274, count 1
>
> yaffs_delete_inode: ino 274, count 0 object exists
> yaffs_clear_inode: ino 274, count 0 object exists
> bin/clearyaffs_put_inode: ino 275, count 1
>
> yaffs_delete_inode: ino 275, count 0 object exists
> yaffs_clear_inode: ino 275, count 0 object exists
> bin/cmp
> tar: Couldnt remove old file: Directory not empty
> tar: Write Error: Broken pipe
> tar: bin/cp: input/output error -- Broken pipe
> tar: bin/cut: input/output error -- Broken pipe
> tar: bin/date: input/output error -- Broken pipe
> tar: bin/dd: input/output error -- Broken pipe
> tar: bin/dev: input/output error -- Broken pipe
> tar: bin/device: input/output error -- Broken pipe
> tar: bin/df: input/output error -- Broken pipe
> tar: bin/dirname: input/output error -- Broken pipe
> tar: bin/dmesg: input/output error -- Broken pipe
> tar: bin/du: input/output error -- Broken pipe
> tar: bin/echo: input/output error -- Broken pipe
> tar: bin/egrep: input/output error -- Broken pipe
> tar: bin/einfo: input/output error -- Broken pipe
> tar: bin/env: input/output error -- Broken pipe
> tar: bin/erase: input/output error -- Broken pipe
> tar: bin/eraseall: input/output error -- Broken pipe
> tar: bin/expr: input/output error -- Broken pipe
> tar: bin/false: input/output error -- Broken pipe
> tar: bin/fcp: input/output error -- Broken pipe
> tar: bin/fgrep: input/output error -- Broken pipe
> tar: bin/find: input/output error -- Broken pipe
> tar: bin/firmware_install: input/output error -- Broken pipe
> tar: bin/free: input/output error -- Broken pipe
> tar: bin/ftpget: input/output error -- Broken pipe
> tar: bin/ftpput: input/output error -- Broken pipe
> tar: bin/fw_printenv: input/output error -- Broken pipe
> tar: bin/fw_setenv: input/output error -- Broken pipe
> tar: bin/grep: input/output error -- Broken pipe
> tar: bin/gunzip: input/output error -- Broken pipe
> tar: bin/gzip: input/output error -- Broken pipe
> tar: bin/head: input/output error -- Broken pipe
> tar: bin/healthMgr: input/output error -- Broken pipe
> tar: bin/hexdump: input/output error -- Broken pipe
> tar: bin/hostname: input/output error -- Broken pipe
> tar: bin/id: input/output error -- Broken pipe
> tar: bin/install: input/output error -- Broken pipe
> tar: bin/ipmiMgr: input/output error -- Broken pipe
> tar: bin/ipmiUpgrade: input/output error -- Broken pipe
> tar: bin/kill: input/output error -- Broken pipe
> tar: bin/killall: input/output error -- Broken pipe
> tar: bin/ln: input/output error -- Broken pipe
> tar: bin/lock: input/output error -- Broken pipe
> tar: bin/logger: input/output error -- Broken pipe
> tar: bin/login: input/output error -- Broken pipe
> tar: bin/ls: input/output error -- Broken pipe
> tar: bin/md5sum: input/output error -- Broken pipe
> tar: bin/mkdir: input/output error -- Broken pipe
> tar: bin/mknod: input/output error -- Broken pipe
> tar: bin/mktemp: input/output error -- Broken pipe
> tar: bin/more: input/output error -- Broken pipe
> tar: bin/mount: input/output error -- Broken pipe
> tar: bin/mtd_debug: input/output error -- Broken pipe
> tar: bin/mv: input/output error -- Broken pipe
> tar: bin/nanddump: input/output error -- Broken pipe
> tar: bin/nandwrite: input/output error -- Broken pipe
> tar: bin/nfs: input/output error -- Broken pipe
> tar: bin/pidof: input/output error -- Broken pipe
> tar: bin/ping: input/output error -- Broken pipe
> tar: bin/populate: input/output error -- Broken pipe
> tar: bin/ps: input/output error -- Broken pipe
> tar: bin/pwd: input/output error -- Broken pipe
> tar: bin/readlink: input/output error -- Broken pipe
> tar: bin/reset: input/output error -- Broken pipe
> tar: bin/rm: input/output error -- Broken pipe
> tar: bin/rmdir: input/output error -- Broken pipe
> tar: bin/sed: input/output error -- Broken pipe
> tar: bin/sh: input/output error -- Broken pipe
> tar: bin/sleep: input/output error -- Broken pipe
> tar: bin/sort: input/output error -- Broken pipe
> tar: bin/strings: input/output error -- Broken pipe
> tar: bin/stty: input/output error -- Broken pipe
> tar: bin/sync: input/output error -- Broken pipe
> tar: bin/tail: input/output error -- Broken pipe
> tar: bin/tar: input/output error -- Broken pipe
> tar: bin/tee: input/output error -- Broken pipe
> tar: bin/telnet: input/output error -- Broken pipe
> tar: bin/test: input/output error -- Broken pipe
> tar: bin/tftp: input/output error -- Broken pipe
> tar: bin/time: input/output error -- Broken pipe
> tar: bin/top: input/output error -- Broken pipe
> tar: bin/touch: input/output error -- Broken pipe
> tar: bin/tr: input/output error -- Broken pipe
> tar: bin/traceroute: input/output error -- Broken pipe
> tar: bin/true: input/output error -- Broken pipe
> tar: bin/tty: input/output error -- Broken pipe
> tar: bin/umount: input/output error -- Broken pipe
> tar: bin/uname: input/output error -- Broken pipe
> tar: bin/uniq: input/output error -- Broken pipe
> tar: bin/unlock: input/output error -- Broken pipe
> tar: bin/unzip: input/output error -- Broken pipe
> tar: bin/uptime: input/output error -- Broken pipe
> tar: bin/usleep: input/output error -- Broken pipe
> tar: bin/vi: input/output error -- Broken pipe
> tar: bin/wc: input/output error -- Broken pipe
> tar: bin/wget: input/output error -- Broken pipe
> tar: bin/which: input/output error -- Broken pipe
> tar: bin/whoami: input/output error -- Broken pipe
> tar: bin/xargs: input/output error -- Broken pipe
> tar: bin/xinetd: input/output error -- Broken pipe
> tar: bin/yes: input/output error -- Broken pipe
> tar: bin/zcat: input/output error -- Broken pipe
> tar: Error exit delayed from previous errors
> ~ # dmesg
> file_write about to write writing 4096 bytes to object 386 at 389120
> yaffs_file_write writing 4096 bytes, 4096 written at 389120
> yaffs_file_write size updated to 393216 bytes, 768 blocks
> yaffs unlocking
> yaffs_commit_write returning 4096
> yaffs_prepair_write
> yaffs_commit_write addr c23e0000 pos 60000 nBytes 4096
> yaffs locking
> yaffs_file_write about to write writing 4096 bytes to object 386 at 393216
> yaffs_file_write writing 4096 bytes, 4096 written at 393216
> yaffs_file_write size updated to 397312 bytes, 776 blocks
> yaffs unlocking
> yaffs_commit_write returning 4096
> yaffs_prepair_write
> yaffs_commit_write addr c241f000 pos 61000 nBytes 4096
> yaffs locking
> yaffs_file_write about to write writing 4096 bytes to object 386 at 397312
> yaffs_file_write writing 4096 bytes, 4096 written at 397312
> yaffs_file_write size updated to 401408 bytes, 784 blocks
> yaffs unlocking
> yaffs_commit_write returning 4096
> yaffs_prepair_write
> yaffs_commit_write addr c241e000 pos 62000 nBytes 4096
> yaffs locking
> yaffs_file_write about to write writing 4096 bytes to object 386 at 401408
> yaffs_file_write writing 4096 bytes, 4096 written at 401408
> yaffs_file_write size updated to 405504 bytes, 792 blocks
> yaffs unlocking
> yaffs_commit_write returning 4096
> yaffs_prepair_write
> yaffs_commit_write addr c241d000 pos 63000 nBytes 4096
> yaffs locking
> yaffs_file_write about to write writing 4096 bytes to object 386 at 405504
> yaffs_file_write writing 4096 bytes, 4096 written at 405504
> yaffs_file_write size updated to 409600 bytes, 800 blocks
> yaffs unlocking
> yaffs_commit_write returning 4096
> yaffs_prepair_write
> yaffs_commit_write addr c241c000 pos 64000 nBytes 4096
> yaffs locking
> yaffs_file_write about to write writing 4096 bytes to object 386 at 409600
> yaffs_file_write writing 4096 bytes, 4096 written at 409600
> yaffs_file_write size updated to 413696 bytes, 808 blocks
> yaffs unlocking
> yaffs_commit_write returning 4096
> yaffs_prepair_write
> yaffs_readpage at 00065000, size 00001000
> yaffs locking
> yaffs unlocking
> yaffs_readpage done
> yaffs_commit_write addr c241b000 pos 65000 nBytes 3548
> yaffs locking
> yaffs_file_write about to write writing 3548 bytes to object 386 at 413696
> yaffs_file_write writing 3548 bytes, 3548 written at 413696
> yaffs_file_write size updated to 417244 bytes, 815 blocks
> yaffs unlocking
> yaffs_commit_write returning 3548
> yaffs_file_flush object 386 (dirty)
> yaffs locking
> yaffs unlocking
> yaffs_setattr of object 386
> yaffs locking
> yaffs unlocking
> yaffs_setattr of object 386
> yaffs locking
> yaffs unlocking
> yaffs_setattr of object 386
> yaffs locking
> yaffs unlocking
> yaffs_unlink 260:bzcat
> yaffs locking
> yaffs unlocking
> yaffs_put_inode: ino 269, count 1
> yaffs_delete_inode: ino 269, count 0 object exists
> yaffs locking
> yaffs unlocking
> yaffs_clear_inode: ino 269, count 0 object exists
> yaffs locking
> yaffs unlocking
> yaffs_symlink
> yaffs locking
> yaffs unlocking
> yaffs_get_inode for object 387
> yaffs_read_inode for 387
> yaffs_FillInode mode a1ff uid 0 gid 0 size 14 count 1
> symlink created OK
> yaffs_setattr of object 387
> yaffs locking
> yaffs unlocking
> yaffs locking
> yaffs unlocking
> yaffs_setattr of object 386
> yaffs locking
> yaffs unlocking
> yaffs_unlink 260:cat
> yaffs locking
> yaffs unlocking
> yaffs_put_inode: ino 270, count 1
> yaffs_delete_inode: ino 270, count 0 object exists
> yaffs locking
> yaffs unlocking
> yaffs_clear_inode: ino 270, count 0 object exists
> yaffs locking
> yaffs unlocking
> yaffs_symlink
> yaffs locking
> yaffs unlocking
> yaffs_get_inode for object 388
> yaffs_read_inode for 388
> yaffs_FillInode mode a1ff uid 0 gid 0 size 14 count 1
> symlink created OK
> yaffs_setattr of object 388
> yaffs locking
> yaffs unlocking
> yaffs locking
> yaffs unlocking
> yaffs_setattr of object 386
> yaffs locking
> yaffs unlocking
> yaffs_unlink 260:checkboot
> yaffs locking
> yaffs unlocking
> yaffs_put_inode: ino 271, count 1
> yaffs_delete_inode: ino 271, count 0 object exists
> yaffs locking
> soft delete tch 903 cgb 0 chunk 903
> soft delete tch 902 cgb 0 chunk 902
> yaffs unlocking
> yaffs_clear_inode: ino 271, count 0 object exists
> yaffs locking
> yaffs unlocking
> yaffs_create
> yaffs_mknod: parent object 260 type 3
> yaffs_mknod: making oject for checkboot, mode 81ed dev 0
> yaffs locking
> yaffs_mknod: making file
> yaffs_get_inode for object 389
> yaffs_read_inode for 389
> yaffs_FillInode mode 81ed uid 0 gid 0 size 0 count 1
> yaffs_mknod created object 389 count = 1
> yaffs unlocking
> yaffs_prepair_write
> yaffs_readpage at 00000000, size 00001000
> yaffs locking
> yaffs unlocking
> yaffs_readpage done
> yaffs_commit_write addr c2461000 pos 0 nBytes 737
> yaffs locking
> yaffs_file_write about to write writing 737 bytes to object 389 at 0
> yaffs_file_write writing 737 bytes, 737 written at 0
> yaffs_file_write size updated to 737 bytes, 2 blocks
> yaffs unlocking
> yaffs_commit_write returning 737
> yaffs_file_flush object 389 (dirty)
> yaffs locking
> yaffs unlocking
> yaffs_setattr of object 389
> yaffs locking
> yaffs unlocking
> yaffs_setattr of object 389
> yaffs locking
> yaffs unlocking
> yaffs_setattr of object 389
> yaffs locking
> yaffs unlocking
> yaffs_unlink 260:chgrp
> yaffs locking
> yaffs unlocking
> yaffs_put_inode: ino 272, count 1
> yaffs_delete_inode: ino 272, count 0 object exists
> yaffs locking
> yaffs unlocking
> yaffs_clear_inode: ino 272, count 0 object exists
> yaffs locking
> yaffs unlocking
> yaffs_symlink
> yaffs locking
> yaffs unlocking
> yaffs_get_inode for object 390
> yaffs_read_inode for 390
> yaffs_FillInode mode a1ff uid 0 gid 0 size 14 count 1
> symlink created OK
> yaffs_setattr of object 390
> yaffs locking
> yaffs unlocking
> yaffs locking
> yaffs unlocking
> yaffs_setattr of object 386
> yaffs locking
> yaffs unlocking
> yaffs_unlink 260:chmod
> yaffs locking
> yaffs unlocking
> yaffs_put_inode: ino 273, count 1
> yaffs_delete_inode: ino 273, count 0 object exists
> yaffs locking
> yaffs unlocking
> yaffs_clear_inode: ino 273, count 0 object exists
> yaffs locking
> yaffs unlocking
> yaffs_symlink
> yaffs locking
> yaffs unlocking
> yaffs_get_inode for object 391
> yaffs_read_inode for 391
> yaffs_FillInode mode a1ff uid 0 gid 0 size 14 count 1
> symlink created OK
> yaffs_setattr of object 391
> yaffs locking
> yaffs unlocking
> yaffs locking
> yaffs unlocking
> yaffs_setattr of object 386
> yaffs locking
> yaffs unlocking
> yaffs_unlink 260:chown
> yaffs locking
> yaffs unlocking
> yaffs_put_inode: ino 274, count 1
> yaffs_delete_inode: ino 274, count 0 object exists
> yaffs locking
> yaffs unlocking
> yaffs_clear_inode: ino 274, count 0 object exists
> yaffs locking
> yaffs unlocking
> yaffs_symlink
> yaffs locking
> yaffs: GC erasedBlocks 56 aggressive 0
> yaffs: About to finally delete object 271
> Erased block 28
> yaffs unlocking
> yaffs_get_inode for object 392
> yaffs_read_inode for 392
> yaffs_FillInode mode a1ff uid 0 gid 0 size 14 count 1
> symlink created OK
> yaffs_setattr of object 392
> yaffs locking
> yaffs unlocking
> yaffs locking
> yaffs unlocking
> yaffs_setattr of object 386
> yaffs locking
> yaffs unlocking
> yaffs_unlink 260:clear
> yaffs locking
> yaffs unlocking
> yaffs_put_inode: ino 275, count 1
> yaffs_delete_inode: ino 275, count 0 object exists
> yaffs locking
> yaffs unlocking
> yaffs_clear_inode: ino 275, count 0 object exists
> yaffs locking
> yaffs unlocking
> yaffs_symlink
> yaffs locking
> yaffs unlocking
> yaffs_get_inode for object 393
> yaffs_read_inode for 393
> yaffs_FillInode mode a1ff uid 0 gid 0 size 14 count 1
> symlink created OK
> yaffs_setattr of object 393
> yaffs locking
> yaffs unlocking
> yaffs locking
> yaffs unlocking
> yaffs_setattr of object 386
> yaffs locking
> yaffs unlocking
> yaffs_unlink 260:cmp
> yaffs locking
> yaffs unlocking
> ~ # ls -ial /mnt
> yaffs_readdir: starting at 0
> yaffs_readdir: starting at 4
>       1 drw-rw-rw-    1 root     root          512 Dec  9 05:52 .
>      76 drwxr-sr-x    1 root     root          248 Jan  1  1970 ..
>     260 drwxr-sr-x    1 root     root          512 Jan  1  1970 bin
>       2 drw-rw-rw-    1 root     root          512 Dec  9 05:52 lost+found
> ~ # ls -ial /mnt/bin
> yaffs_readdir: starting at 0
> ls: yaffs_readdir: starting at 120
> /mnt/bin/ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ
>ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ
>ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ
>ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ: No such file or directory 260
> drwxr-sr-x    1 root     root          512 Jan  1  1970 .
>       1 drw-rw-rw-    1 root     root          512 Dec  9 05:52 ..
>     379 lrwxrwxrwx    1 root     root           14 Dec  9 05:54 [ ->
> ../bin/busybox 380 lrwxrwxrwx    1 root     root           14 Dec  9 05:54
> ash -> ../bin/busybox 381 lrwxrwxrwx    1 root     root           14 Dec  9
> 05:54 awk -> ../bin/busybox 382 lrwxrwxrwx    1 root     root           14
> Dec  9 05:54 basename -> ../bin/busybox 383 -rwxr-xr-x    1 root     root  
>        682 Jan  1  1970 board_config 384 -rwxr-xr-x    1 root     root     
>    8492 Jan 19  2038 bootsel 385 lrwxrwxrwx    1 root     root           14
> Dec  9 05:54 bunzip2 -> ../bin/busybox 386 -rwxr-xr-x    1 root     root   
>    417244 Jan  1  1970 busybox 387 lrwxrwxrwx    1 root     root          
> 14 Dec  9 05:54 bzcat -> ../bin/busybox 388 lrwxrwxrwx    1 root     root  
>         14 Dec  9 05:54 cat -> ../bin/busybox 389 -rwxr-xr-x    1 root    
> root          737 Jan  1  1970 checkboot 390 lrwxrwxrwx    1 root     root 
>          14 Dec  9 05:54 chgrp -> ../bin/busybox 391 lrwxrwxrwx    1 root  
>   root           14 Dec  9 05:54 chmod -> ../bin/busybox 392 lrwxrwxrwx   
> 1 root     root           14 Dec  9 05:54 chown -> ../bin/busybox 393
> lrwxrwxrwx    1 root     root           14 Dec  9 05:54 clear ->
> ../bin/busybox 277 -rwxr-xr-x    1 root     root        74668 Jan  1  1970
> conserver 278 lrwxrwxrwx    1 root     root           14 Dec  9 05:53 cp ->
> ../bin/busybox 279 lrwxrwxrwx    1 root     root           14 Dec  9 05:53
> cut -> ../bin/busybox 280 lrwxrwxrwx    1 root     root           14 Dec  9
> 05:53 date -> ../bin/busybox 281 lrwxrwxrwx    1 root     root           14
> Dec  9 05:53 dd -> ../bin/busybox 282 lrwxrwxrwx    1 root     root        
>    6 Dec  9 05:53 dev -> device 283 -rwxr-xr-x    1 root     root       
> 11848 Jan  1  1970 device 284 lrwxrwxrwx    1 root     root           14
> Dec  9 05:53 df -> ../bin/busybox 285 lrwxrwxrwx    1 root     root        
>   14 Dec  9 05:53 dirname -> ../bin/busybox 286 lrwxrwxrwx    1 root    
> root           14 Dec  9 05:53 dmesg -> ../bin/busybox 287 lrwxrwxrwx    1
> root     root           14 Dec  9 05:53 du -> ../bin/busybox 288 lrwxrwxrwx
>    1 root     root           14 Dec  9 05:53 echo -> ../bin/busybox 289
> lrwxrwxrwx    1 root     root           14 Dec  9 05:53 egrep ->
> ../bin/busybox 290 -rwxr-xr-x    1 root     root         4732 Jan  1  1970
> einfo 291 lrwxrwxrwx    1 root     root           14 Dec  9 05:53 env ->
> ../bin/busybox 292 -rwxr-xr-x    1 root     root         6352 Jan  1  1970
> erase 293 -rwxr-xr-x    1 root     root        10984 Jan  1  1970 eraseall
> 294 lrwxrwxrwx    1 root     root           14 Dec  9 05:53 expr ->
> ../bin/busybox 295 lrwxrwxrwx    1 root     root           14 Dec  9 05:53
> false -> ../bin/busybox 296 -rwxr-xr-x    1 root     root         8544 Jan 
> 1  1970 fcp 297 lrwxrwxrwx    1 root     root           14 Dec  9 05:53
> fgrep -> ../bin/busybox 298 lrwxrwxrwx    1 root     root           14 Dec 
> 9 05:53 find -> ../bin/busybox 299 -rwxr-xr-x    1 root     root         
> 547 Jan  1  1970 firmware_install 300 lrwxrwxrwx    1 root     root        
>   14 Dec  9 05:53 free -> ../bin/busybox 301 lrwxrwxrwx    1 root     root 
>          14 Dec  9 05:53 ftpget -> ../bin/busybox 302 lrwxrwxrwx    1 root 
>    root           14 Dec  9 05:53 ftpput -> ../bin/busybox 303 -rwxr-xr-x  
>  1 root     root        81820 Jan  1  1970 fw_printenv 304 lrwxrwxrwx    1
> root     root           11 Dec  9 05:53 fw_setenv -> fw_printenv 305
> lrwxrwxrwx    1 root     root           14 Dec  9 05:53 grep ->
> ../bin/busybox 306 lrwxrwxrwx    1 root     root           14 Dec  9 05:53
> gunzip -> ../bin/busybox 307 lrwxrwxrwx    1 root     root           14 Dec
>  9 05:53 gzip -> ../bin/busybox 308 lrwxrwxrwx    1 root     root          
> 14 Dec  9 05:53 head -> ../bin/busybox 309 -rwxr-xr-x    1 root     root   
>     18444 Jan 19  2038 healthMgr 310 lrwxrwxrwx    1 root     root         
>  14 Dec  9 05:53 hexdump -> ../bin/busybox 311 lrwxrwxrwx    1 root    
> root           14 Dec  9 05:53 hostname -> ../bin/busybox 312 lrwxrwxrwx   
> 1 root     root           14 Dec  9 05:53 id -> ../bin/busybox 313
> lrwxrwxrwx    1 root     root           14 Dec  9 05:53 install ->
> ../bin/busybox 314 -rwxr-xr-x    1 root     root        30524 Jan  1  1970
> ipmiMgr 315 -rwxr-xr-x    1 root     root        20248 Jan  1  1970
> ipmiUpgrade 316 lrwxrwxrwx    1 root     root           14 Dec  9 05:53
> kill -> ../bin/busybox 317 lrwxrwxrwx    1 root     root           14 Dec 
> 9 05:53 killall -> ../bin/busybox 318 lrwxrwxrwx    1 root     root        
>   14 Dec  9 05:53 ln -> ../bin/busybox 319 -rwxr-xr-x    1 root     root   
>      5148 Jan  1  1970 lock 320 lrwxrwxrwx    1 root     root           14
> Dec  9 05:53 logger -> ../bin/busybox 321 -rwxr-xr-x    1 root     root    
>    33315 Jan  1  1970 login 322 lrwxrwxrwx    1 root     root           14
> Dec  9 05:53 ls -> ../bin/busybox 323 lrwxrwxrwx    1 root     root        
>   14 Dec  9 05:53 md5sum -> ../bin/busybox 324 lrwxrwxrwx    1 root    
> root           14 Dec  9 05:53 mkdir -> ../bin/busybox 325 lrwxrwxrwx    1
> root     root           14 Dec  9 05:53 mknod -> ../bin/busybox 326
> lrwxrwxrwx    1 root     root           14 Dec  9 05:53 mktemp ->
> ../bin/busybox 327 lrwxrwxrwx    1 root     root           14 Dec  9 05:53
> more -> ../bin/busybox 328 lrwxrwxrwx    1 root     root           14 Dec 
> 9 05:53 mount -> ../bin/busybox 329 -rwxr-xr-x    1 root     root        
> 9868 Jan  1  1970 mtd_debug 330 lrwxrwxrwx    1 root     root           14
> Dec  9 05:53 mv -> ../bin/busybox 331 -rwxr-xr-x    1 root     root        
> 6608 Jan  1  1970 nanddump 332 -rwxr-xr-x    1 root     root         7304
> Jan  1  1970 nandwrite 333 -rwxr-xr-x    1 root     root          166 Jan 
> 1  1970 nfs 334 lrwxrwxrwx    1 root     root           14 Dec  9 05:53
> pidof -> ../bin/busybox 335 lrwxrwxrwx    1 root     root           14 Dec 
> 9 05:53 ping -> ../bin/busybox 336 -rwxr-xr-x    1 root     root        
> 1398 Jan  1  1970 populate 337 lrwxrwxrwx    1 root     root           14
> Dec  9 05:53 ps -> ../bin/busybox 338 lrwxrwxrwx    1 root     root        
>   14 Dec  9 05:53 pwd -> ../bin/busybox 339 lrwxrwxrwx    1 root     root  
>         14 Dec  9 05:53 readlink -> ../bin/busybox 340 lrwxrwxrwx    1 root
>     root           14 Dec  9 05:53 reset -> ../bin/busybox 341 lrwxrwxrwx  
>  1 root     root           14 Dec  9 05:53 rm -> ../bin/busybox 342
> lrwxrwxrwx    1 root     root           14 Dec  9 05:53 rmdir ->
> ../bin/busybox 343 lrwxrwxrwx    1 root     root           14 Dec  9 05:53
> sed -> ../bin/busybox 344 lrwxrwxrwx    1 root     root           14 Dec  9
> 05:53 sh -> ../bin/busybox 345 lrwxrwxrwx    1 root     root           14
> Dec  9 05:53 sleep -> ../bin/busybox 346 lrwxrwxrwx    1 root     root     
>      14 Dec  9 05:53 sort -> ../bin/busybox 347 lrwxrwxrwx    1 root    
> root           14 Dec  9 05:53 strings -> ../bin/busybox 348 lrwxrwxrwx   
> 1 root     root           14 Dec  9 05:53 stty -> ../bin/busybox 349
> lrwxrwxrwx    1 root     root           14 Dec  9 05:53 sync ->
> ../bin/busybox 350 lrwxrwxrwx    1 root     root           14 Dec  9 05:53
> tail -> ../bin/busybox 351 lrwxrwxrwx    1 root     root           14 Dec 
> 9 05:53 tar -> ../bin/busybox 352 lrwxrwxrwx    1 root     root          
> 14 Dec  9 05:53 tee -> ../bin/busybox 353 lrwxrwxrwx    1 root     root    
>       14 Dec  9 05:53 telnet -> ../bin/busybox 354 lrwxrwxrwx    1 root    
> root           14 Dec  9 05:53 test -> ../bin/busybox 355 lrwxrwxrwx    1
> root     root           14 Dec  9 05:53 tftp -> ../bin/busybox 356
> lrwxrwxrwx    1 root     root           14 Dec  9 05:53 time ->
> ../bin/busybox 357 lrwxrwxrwx    1 root     root           14 Dec  9 05:53
> top -> ../bin/busybox 358 lrwxrwxrwx    1 root     root           14 Dec  9
> 05:53 touch -> ../bin/busybox 359 lrwxrwxrwx    1 root     root          
> 14 Dec  9 05:53 tr -> ../bin/busybox 360 lrwxrwxrwx    1 root     root     
>      14 Dec  9 05:53 traceroute -> ../bin/busybox 361 lrwxrwxrwx    1 root 
>    root           14 Dec  9 05:53 true -> ../bin/busybox 362 lrwxrwxrwx   
> 1 root     root           14 Dec  9 05:53 tty -> ../bin/busybox 363
> lrwxrwxrwx    1 root     root           14 Dec  9 05:53 umount ->
> ../bin/busybox 364 lrwxrwxrwx    1 root     root           14 Dec  9 05:53
> uname -> ../bin/busybox 365 lrwxrwxrwx    1 root     root           14 Dec 
> 9 05:53 uniq -> ../bin/busybox 366 -rwxr-xr-x    1 root     root        
> 4800 Jan  1  1970 unlock 367 lrwxrwxrwx    1 root     root           14 Dec
>  9 05:53 unzip -> ../bin/busybox 368 lrwxrwxrwx    1 root     root         
>  14 Dec  9 05:53 uptime -> ../bin/busybox 369 lrwxrwxrwx    1 root     root
>           14 Dec  9 05:53 usleep -> ../bin/busybox 370 lrwxrwxrwx    1 root
>     root           14 Dec  9 05:53 vi -> ../bin/busybox 371 lrwxrwxrwx    1
> root     root           14 Dec  9 05:53 wc -> ../bin/busybox 372 lrwxrwxrwx
>    1 root     root           14 Dec  9 05:53 wget -> ../bin/busybox 373
> lrwxrwxrwx    1 root     root           14 Dec  9 05:53 which ->
> ../bin/busybox 374 lrwxrwxrwx    1 root     root           14 Dec  9 05:53
> whoami -> ../bin/busybox 375 lrwxrwxrwx    1 root     root           14 Dec
>  9 05:53 xargs -> ../bin/busybox 376 -rwxr-xr-x    1 root     root      
> 149848 Jan  1  1970 xinetd 377 lrwxrwxrwx    1 root     root           14
> Dec  9 05:53 yes -> ../bin/busybox 378 lrwxrwxrwx    1 root     root       
>    14 Dec  9 05:53 zcat -> ../bin/busybox ~ # cat /proc/yaffs
> YAFFS built:Jan  6 2005 12:19:15
> $Id: yaffs_fs.c,v 1.35 2004/10/20 20:12:43 charles Exp $
> $Id: yaffs_guts.c,v 1.37 2004/10/20 20:12:43 charles Exp $

>
> Device yaffs
> startBlock......... 1
> endBlock........... 127
> chunkGroupBits..... 0
> chunkGroupSize..... 1
> nErasedBlocks...... 57
> nTnodesCreated..... 200
> nFreeTnodes........ 44
> nObjectsCreated.... 200
> nFreeObjects....... 76
> nFreeChunks........ 2118
> nPageWrites........ 3447
> nPageReads......... 4411
> nBlockErasures..... 28
> nGCCopies.......... 1
> garbageCollections. 28
> passiveGCs......... 28
> nRetriedWrites..... 0
> nRetireBlocks...... 0
> eccFixed........... 0
> eccUnfixed......... 0
> tagsEccFixed....... 0
> tagsEccUnfixed..... 126
> cacheHits.......... 0
> nDeletedFiles...... 4
> nUnlinkedFiles..... 4
> nBackgroudDeletions 0
> useNANDECC......... 0
> ~ # umount /mnt
> yaffs_put_inode: ino 379, count 1
> yaffs_put_inode: ino 386, count 1
> yaffs_put_inode: ino 380, count 1
> yaffs_put_inode: ino 381, count 1
> yaffs_put_inode: ino 382, count 1
> yaffs_put_inode: ino 383, count 1
> yaffs_put_inode: ino 384, count 1
> yaffs_put_inode: ino 385, count 1
> yaffs_put_inode: ino 387, count 1
> yaffs_put_inode: ino 388, count 1
> yaffs_put_inode: ino 389, count 1
> yaffs_put_inode: ino 390, count 1
> yaffs_put_inode: ino 391, count 1
> yaffs_put_inode: ino 392, count 1
> yaffs_put_inode: ino 393, count 1
> yaffs_put_inode: ino 276, count 1
> yaffs_put_inode: ino 277, count 1
> yaffs_put_inode: ino 278, count 1
> yaffs_put_inode: ino 279, count 1
> yaffs_put_inode: ino 280, count 1
> yaffs_put_inode: ino 281, count 1
> yaffs_put_inode: ino 282, count 1
> yaffs_put_inode: ino 283, count 1
> yaffs_put_inode: ino 284, count 1
> yaffs_put_inode: ino 285, count 1
> yaffs_put_inode: ino 286, count 1
> yaffs_put_inode: ino 287, count 1
> yaffs_put_inode: ino 288, count 1
> yaffs_put_inode: ino 289, count 1
> yaffs_put_inode: ino 290, count 1
> yaffs_put_inode: ino 291, count 1
> yaffs_put_inode: ino 292, count 1
> yaffs_put_inode: ino 293, count 1
> yaffs_put_inode: ino 294, count 1
> yaffs_put_inode: ino 295, count 1
> yaffs_put_inode: ino 296, count 1
> yaffs_put_inode: ino 297, count 1
> yaffs_put_inode: ino 298, count 1
> yaffs_put_inode: ino 299, count 1
> yaffs_put_inode: ino 300, count 1
> yaffs_put_inode: ino 301, count 1
> yaffs_put_inode: ino 302, count 1
> yaffs_put_inode: ino 303, count 1
> yaffs_put_inode: ino 304, count 1
> yaffs_put_inode: ino 305, count 1
> yaffs_put_inode: ino 306, count 1
> yaffs_put_inode: ino 307, count 1
> yaffs_put_inode: ino 308, count 1
> yaffs_put_inode: ino 309, count 1
> yaffs_put_inode: ino 310, count 1
> yaffs_put_inode: ino 311, count 1
> yaffs_put_inode: ino 312, count 1
> yaffs_put_inode: ino 313, count 1
> yaffs_put_inode: ino 314, count 1
> yaffs_put_inode: ino 315, count 1
> yaffs_put_inode: ino 316, count 1
> yaffs_put_inode: ino 317, count 1
> yaffs_put_inode: ino 318, count 1
> yaffs_put_inode: ino 319, count 1
> yaffs_put_inode: ino 320, count 1
> yaffs_put_inode: ino 321, count 1
> yaffs_put_inode: ino 322, count 1
> yaffs_put_inode: ino 323, count 1
> yaffs_put_inode: ino 324, count 1
> yaffs_put_inode: ino 325, count 1
> yaffs_put_inode: ino 326, count 1
> yaffs_put_inode: ino 327, count 1
> yaffs_put_inode: ino 328, count 1
> yaffs_put_inode: ino 329, count 1
> yaffs_put_inode: ino 330, count 1
> yaffs_put_inode: ino 331, count 1
> yaffs_put_inode: ino 332, count 1
> yaffs_put_inode: ino 333, count 1
> yaffs_put_inode: ino 334, count 1
> yaffs_put_inode: ino 335, count 1
> yaffs_put_inode: ino 336, count 1
> yaffs_put_inode: ino 337, count 1
> yaffs_put_inode: ino 338, count 1
> yaffs_put_inode: ino 339, count 1
> yaffs_put_inode: ino 340, count 1
> yaffs_put_inode: ino 341, count 1
> yaffs_put_inode: ino 342, count 1
> yaffs_put_inode: ino 343, count 1
> yaffs_put_inode: ino 344, count 1
> yaffs_put_inode: ino 345, count 1
> yaffs_put_inode: ino 346, count 1
> yaffs_put_inode: ino 347, count 1
> yaffs_put_inode: ino 348, count 1
> yaffs_put_inode: ino 349, count 1
> yaffs_put_inode: ino 350, count 1
> yaffs_put_inode: ino 351, count 1
> yaffs_put_inode: ino 352, count 1
> yaffs_put_inode: ino 353, count 1
> yaffs_put_inode: ino 354, count 1
> yaffs_put_inode: ino 355, count 1
> yaffs_put_inode: ino 356, count 1
> yaffs_put_inode: ino 357, count 1
> yaffs_put_inode: ino 358, count 1
> yaffs_put_inode: ino 359, count 1
> yaffs_put_inode: ino 360, count 1
> yaffs_put_inode: ino 361, count 1
> yaffs_put_inode: ino 362, count 1
> yaffs_put_inode: ino 363, count 1
> yaffs_put_inode: ino 364, count 1
> yaffs_put_inode: ino 365, count 1
> yaffs_put_inode: ino 366, count 1
> yaffs_put_inode: ino 367, count 1
> yaffs_put_inode: ino 368, count 1
> yaffs_put_inode: ino 369, count 1
> yaffs_put_inode: ino 370, count 1
> yaffs_put_inode: ino 371, count 1
> yaffs_put_inode: ino 372, count 1
> yaffs_put_inode: ino 373, count 1
> yaffs_put_inode: ino 374, count 1
> yaffs_put_inode: ino 375, count 1
> yaffs_put_inode: ino 376, count 1
> yaffs_put_inode: ino 377, count 1
> yaffs_put_inode: ino 378, count 1
> yaffs_put_inode: ino 2, count 1
> yaffs_put_inode: ino 260, count 1
> yaffs_put_inode: ino 1, count 1
> yaffs_clear_inode: ino 386, count 0 object exists
> yaffs_clear_inode: ino 383, count 0 object exists
> yaffs_clear_inode: ino 384, count 0 object exists
> yaffs_clear_inode: ino 389, count 0 object exists
> yaffs_clear_inode: ino 277, count 0 object exists
> yaffs_clear_inode: ino 283, count 0 object exists
> yaffs_clear_inode: ino 290, count 0 object exists
> yaffs_clear_inode: ino 292, count 0 object exists
> yaffs_clear_inode: ino 293, count 0 object exists
> yaffs_clear_inode: ino 296, count 0 object exists
> yaffs_clear_inode: ino 299, count 0 object exists
> yaffs_clear_inode: ino 303, count 0 object exists
> yaffs_clear_inode: ino 309, count 0 object exists
> yaffs_clear_inode: ino 314, count 0 object exists
> yaffs_clear_inode: ino 315, count 0 object exists
> yaffs_clear_inode: ino 319, count 0 object exists
> yaffs_clear_inode: ino 321, count 0 object exists
> yaffs_clear_inode: ino 329, count 0 object exists
> yaffs_clear_inode: ino 331, count 0 object exists
> yaffs_clear_inode: ino 332, count 0 object exists
> yaffs_clear_inode: ino 333, count 0 object exists
> yaffs_clear_inode: ino 336, count 0 object exists
> yaffs_clear_inode: ino 366, count 0 object exists
> yaffs_clear_inode: ino 376, count 0 object exists
> yaffs_clear_inode: ino 379, count 0 object exists
> yaffs_clear_inode: ino 380, count 0 object exists
> yaffs_clear_inode: ino 381, count 0 object exists
> yaffs_clear_inode: ino 382, count 0 object exists
> yaffs_clear_inode: ino 385, count 0 object exists
> yaffs_clear_inode: ino 387, count 0 object exists
> yaffs_clear_inode: ino 388, count 0 object exists
> yaffs_clear_inode: ino 390, count 0 object exists
> yaffs_clear_inode: ino 391, count 0 object exists
> yaffs_clear_inode: ino 392, count 0 object exists
> yaffs_clear_inode: ino 393, count 0 object exists
> yaffs_clear_inode: ino 276, count 0 object exists
> yaffs_clear_inode: ino 278, count 0 object exists
> yaffs_clear_inode: ino 279, count 0 object exists
> yaffs_clear_inode: ino 280, count 0 object exists
> yaffs_clear_inode: ino 281, count 0 object exists
> yaffs_clear_inode: ino 282, count 0 object exists
> yaffs_clear_inode: ino 284, count 0 object exists
> yaffs_clear_inode: ino 285, count 0 object exists
> yaffs_clear_inode: ino 286, count 0 object exists
> yaffs_clear_inode: ino 287, count 0 object exists
> yaffs_clear_inode: ino 288, count 0 object exists
> yaffs_clear_inode: ino 289, count 0 object exists
> yaffs_clear_inode: ino 291, count 0 object exists
> yaffs_clear_inode: ino 294, count 0 object exists
> yaffs_clear_inode: ino 295, count 0 object exists
> yaffs_clear_inode: ino 297, count 0 object exists
> yaffs_clear_inode: ino 298, count 0 object exists
> yaffs_clear_inode: ino 300, count 0 object exists
> yaffs_clear_inode: ino 301, count 0 object exists
> yaffs_clear_inode: ino 302, count 0 object exists
> yaffs_clear_inode: ino 304, count 0 object exists
> yaffs_clear_inode: ino 305, count 0 object exists
> yaffs_clear_inode: ino 306, count 0 object exists
> yaffs_clear_inode: ino 307, count 0 object exists
> yaffs_clear_inode: ino 308, count 0 object exists
> yaffs_clear_inode: ino 310, count 0 object exists
> yaffs_clear_inode: ino 311, count 0 object exists
> yaffs_clear_inode: ino 312, count 0 object exists
> yaffs_clear_inode: ino 313, count 0 object exists
> yaffs_clear_inode: ino 316, count 0 object exists
> yaffs_clear_inode: ino 317, count 0 object exists
> yaffs_clear_inode: ino 318, count 0 object exists
> yaffs_clear_inode: ino 320, count 0 object exists
> yaffs_clear_inode: ino 322, count 0 object exists
> yaffs_clear_inode: ino 323, count 0 object exists
> yaffs_clear_inode: ino 324, count 0 object exists
> yaffs_clear_inode: ino 325, count 0 object exists
> yaffs_clear_inode: ino 326, count 0 object exists
> yaffs_clear_inode: ino 327, count 0 object exists
> yaffs_clear_inode: ino 328, count 0 object exists
> yaffs_clear_inode: ino 330, count 0 object exists
> yaffs_clear_inode: ino 334, count 0 object exists
> yaffs_clear_inode: ino 335, count 0 object exists
> yaffs_clear_inode: ino 337, count 0 object exists
> yaffs_clear_inode: ino 338, count 0 object exists
> yaffs_clear_inode: ino 339, count 0 object exists
> yaffs_clear_inode: ino 340, count 0 object exists
> yaffs_clear_inode: ino 341, count 0 object exists
> yaffs_clear_inode: ino 342, count 0 object exists
> yaffs_clear_inode: ino 343, count 0 object exists
> yaffs_clear_inode: ino 344, count 0 object exists
> yaffs_clear_inode: ino 345, count 0 object exists
> yaffs_clear_inode: ino 346, count 0 object exists
> yaffs_clear_inode: ino 347, count 0 object exists
> yaffs_clear_inode: ino 348, count 0 object exists
> yaffs_clear_inode: ino 349, count 0 object exists
> yaffs_clear_inode: ino 350, count 0 object exists
> yaffs_clear_inode: ino 351, count 0 object exists
> yaffs_clear_inode: ino 352, count 0 object exists
> yaffs_clear_inode: ino 353, count 0 object exists
> yaffs_clear_inode: ino 354, count 0 object exists
> yaffs_clear_inode: ino 355, count 0 object exists
> yaffs_clear_inode: ino 356, count 0 object exists
> yaffs_clear_inode: ino 357, count 0 object exists
> yaffs_clear_inode: ino 358, count 0 object exists
> yaffs_clear_inode: ino 359, count 0 object exists
> yaffs_clear_inode: ino 360, count 0 object exists
> yaffs_clear_inode: ino 361, count 0 object exists
> yaffs_clear_inode: ino 362, count 0 object exists
> yaffs_clear_inode: ino 363, count 0 object exists
> yaffs_clear_inode: ino 364, count 0 object exists
> yaffs_clear_inode: ino 365, count 0 object exists
> yaffs_clear_inode: ino 367, count 0 object exists
> yaffs_clear_inode: ino 368, count 0 object exists
> yaffs_clear_inode: ino 369, count 0 object exists
> yaffs_clear_inode: ino 370, count 0 object exists
> yaffs_clear_inode: ino 371, count 0 object exists
> yaffs_clear_inode: ino 372, count 0 object exists
> yaffs_clear_inode: ino 373, count 0 object exists
> yaffs_clear_inode: ino 374, count 0 object exists
> yaffs_clear_inode: ino 375, count 0 object exists
> yaffs_clear_inode: ino 377, count 0 object exists
> yaffs_clear_inode: ino 378, count 0 object exists
> yaffs_clear_inode: ino 2, count 0 object exists
> yaffs_clear_inode: ino 260, count 0 object exists
> yaffs_clear_inode: ino 1, count 0 object exists
> ~ #
> ~ # mount /dev/mtdblock18 /mnt
> cramfs: wrong magic
> yaffs: dev is 7954 name is "1f:12"
> yaffs_read_super: MTD block size 4096
> yaffs_read_super: guts initialised
> yaffs_read_super: got root inode
> yaffs_read_super: d_alloc_root done
> yaffs_read_super: done
> ~ # ls -ial /mnt/bin
> yaffs_readdir: starting at 0
> yaffs_readdir: starting at 119
>     260 drwxr-sr-x    1 root     root          512 Jan  1  1970 .
>       1 drw-rw-rw-    1 root     root          512 Dec  9 05:57 ..
>     379 lrwxrwxrwx    1 root     root           14 Dec  9 05:54 [ ->
> ../bin/busybox 380 lrwxrwxrwx    1 root     root           14 Dec  9 05:54
> ash -> ../bin/busybox 381 lrwxrwxrwx    1 root     root           14 Dec  9
> 05:54 awk -> ../bin/busybox 382 lrwxrwxrwx    1 root     root           14
> Dec  9 05:54 basename -> ../bin/busybox 383 -rwxr-xr-x    1 root     root  
>        682 Jan  1  1970 board_config 384 -rwxr-xr-x    1 root     root     
>    8492 Jan 19  2038 bootsel 385 lrwxrwxrwx    1 root     root           14
> Dec  9 05:54 bunzip2 -> ../bin/busybox 386 -rwxr-xr-x    1 root     root   
>    417244 Jan  1  1970 busybox 387 lrwxrwxrwx    1 root     root          
> 14 Dec  9 05:54 bzcat -> ../bin/busybox 388 lrwxrwxrwx    1 root     root  
>         14 Dec  9 05:54 cat -> ../bin/busybox 389 -rwxr-xr-x    1 root    
> root          737 Jan  1  1970 checkboot 390 lrwxrwxrwx    1 root     root 
>          14 Dec  9 05:54 chgrp -> ../bin/busybox 391 lrwxrwxrwx    1 root  
>   root           14 Dec  9 05:54 chmod -> ../bin/busybox 392 lrwxrwxrwx   
> 1 root     root           14 Dec  9 05:54 chown -> ../bin/busybox 393
> lrwxrwxrwx    1 root     root           14 Dec  9 05:54 clear ->
> ../bin/busybox 277 -rwxr-xr-x    1 root     root        74668 Jan  1  1970
> conserver 278 lrwxrwxrwx    1 root     root           14 Dec  9 05:53 cp ->
> ../bin/busybox 279 lrwxrwxrwx    1 root     root           14 Dec  9 05:53
> cut -> ../bin/busybox 280 lrwxrwxrwx    1 root     root           14 Dec  9
> 05:53 date -> ../bin/busybox 281 lrwxrwxrwx    1 root     root           14
> Dec  9 05:53 dd -> ../bin/busybox 282 lrwxrwxrwx    1 root     root        
>    6 Dec  9 05:53 dev -> device 283 -rwxr-xr-x    1 root     root       
> 11848 Jan  1  1970 device 284 lrwxrwxrwx    1 root     root           14
> Dec  9 05:53 df -> ../bin/busybox 285 lrwxrwxrwx    1 root     root        
>   14 Dec  9 05:53 dirname -> ../bin/busybox 286 lrwxrwxrwx    1 root    
> root           14 Dec  9 05:53 dmesg -> ../bin/busybox 287 lrwxrwxrwx    1
> root     root           14 Dec  9 05:53 du -> ../bin/busybox 288 lrwxrwxrwx
>    1 root     root           14 Dec  9 05:53 echo -> ../bin/busybox 289
> lrwxrwxrwx    1 root     root           14 Dec  9 05:53 egrep ->
> ../bin/busybox 290 -rwxr-xr-x    1 root     root         4732 Jan  1  1970
> einfo 291 lrwxrwxrwx    1 root     root           14 Dec  9 05:53 env ->
> ../bin/busybox 292 -rwxr-xr-x    1 root     root         6352 Jan  1  1970
> erase 293 -rwxr-xr-x    1 root     root        10984 Jan  1  1970 eraseall
> 294 lrwxrwxrwx    1 root     root           14 Dec  9 05:53 expr ->
> ../bin/busybox 295 lrwxrwxrwx    1 root     root           14 Dec  9 05:53
> false -> ../bin/busybox 296 -rwxr-xr-x    1 root     root         8544 Jan 
> 1  1970 fcp 297 lrwxrwxrwx    1 root     root           14 Dec  9 05:53
> fgrep -> ../bin/busybox 298 lrwxrwxrwx    1 root     root           14 Dec 
> 9 05:53 find -> ../bin/busybox 299 -rwxr-xr-x    1 root     root         
> 547 Jan  1  1970 firmware_install 300 lrwxrwxrwx    1 root     root        
>   14 Dec  9 05:53 free -> ../bin/busybox 301 lrwxrwxrwx    1 root     root 
>          14 Dec  9 05:53 ftpget -> ../bin/busybox 302 lrwxrwxrwx    1 root 
>    root           14 Dec  9 05:53 ftpput -> ../bin/busybox 303 -rwxr-xr-x  
>  1 root     root        81820 Jan  1  1970 fw_printenv 304 lrwxrwxrwx    1
> root     root           11 Dec  9 05:53 fw_setenv -> fw_printenv 305
> lrwxrwxrwx    1 root     root           14 Dec  9 05:53 grep ->
> ../bin/busybox 306 lrwxrwxrwx    1 root     root           14 Dec  9 05:53
> gunzip -> ../bin/busybox 307 lrwxrwxrwx    1 root     root           14 Dec
>  9 05:53 gzip -> ../bin/busybox 308 lrwxrwxrwx    1 root     root          
> 14 Dec  9 05:53 head -> ../bin/busybox 309 -rwxr-xr-x    1 root     root   
>     18444 Jan 19  2038 healthMgr 310 lrwxrwxrwx    1 root     root         
>  14 Dec  9 05:53 hexdump -> ../bin/busybox 311 lrwxrwxrwx    1 root    
> root           14 Dec  9 05:53 hostname -> ../bin/busybox 312 lrwxrwxrwx   
> 1 root     root           14 Dec  9 05:53 id -> ../bin/busybox 313
> lrwxrwxrwx    1 root     root           14 Dec  9 05:53 install ->
> ../bin/busybox 314 -rwxr-xr-x    1 root     root        30524 Jan  1  1970
> ipmiMgr 315 -rwxr-xr-x    1 root     root        20248 Jan  1  1970
> ipmiUpgrade 316 lrwxrwxrwx    1 root     root           14 Dec  9 05:53
> kill -> ../bin/busybox 317 lrwxrwxrwx    1 root     root           14 Dec 
> 9 05:53 killall -> ../bin/busybox 318 lrwxrwxrwx    1 root     root        
>   14 Dec  9 05:53 ln -> ../bin/busybox 319 -rwxr-xr-x    1 root     root   
>      5148 Jan  1  1970 lock 320 lrwxrwxrwx    1 root     root           14
> Dec  9 05:53 logger -> ../bin/busybox 321 -rwxr-xr-x    1 root     root    
>    33315 Jan  1  1970 login 322 lrwxrwxrwx    1 root     root           14
> Dec  9 05:53 ls -> ../bin/busybox 323 lrwxrwxrwx    1 root     root        
>   14 Dec  9 05:53 md5sum -> ../bin/busybox 324 lrwxrwxrwx    1 root    
> root           14 Dec  9 05:53 mkdir -> ../bin/busybox 325 lrwxrwxrwx    1
> root     root           14 Dec  9 05:53 mknod -> ../bin/busybox 326
> lrwxrwxrwx    1 root     root           14 Dec  9 05:53 mktemp ->
> ../bin/busybox 327 lrwxrwxrwx    1 root     root           14 Dec  9 05:53
> more -> ../bin/busybox 328 lrwxrwxrwx    1 root     root           14 Dec 
> 9 05:53 mount -> ../bin/busybox 329 -rwxr-xr-x    1 root     root        
> 9868 Jan  1  1970 mtd_debug 330 lrwxrwxrwx    1 root     root           14
> Dec  9 05:53 mv -> ../bin/busybox 331 -rwxr-xr-x    1 root     root        
> 6608 Jan  1  1970 nanddump 332 -rwxr-xr-x    1 root     root         7304
> Jan  1  1970 nandwrite 333 -rwxr-xr-x    1 root     root          166 Jan 
> 1  1970 nfs 334 lrwxrwxrwx    1 root     root           14 Dec  9 05:53
> pidof -> ../bin/busybox 335 lrwxrwxrwx    1 root     root           14 Dec 
> 9 05:53 ping -> ../bin/busybox 336 -rwxr-xr-x    1 root     root        
> 1398 Jan  1  1970 populate 337 lrwxrwxrwx    1 root     root           14
> Dec  9 05:53 ps -> ../bin/busybox 338 lrwxrwxrwx    1 root     root        
>   14 Dec  9 05:53 pwd -> ../bin/busybox 339 lrwxrwxrwx    1 root     root  
>         14 Dec  9 05:53 readlink -> ../bin/busybox 340 lrwxrwxrwx    1 root
>     root           14 Dec  9 05:53 reset -> ../bin/busybox 341 lrwxrwxrwx  
>  1 root     root           14 Dec  9 05:53 rm -> ../bin/busybox 342
> lrwxrwxrwx    1 root     root           14 Dec  9 05:53 rmdir ->
> ../bin/busybox 343 lrwxrwxrwx    1 root     root           14 Dec  9 05:53
> sed -> ../bin/busybox 344 lrwxrwxrwx    1 root     root           14 Dec  9
> 05:53 sh -> ../bin/busybox 345 lrwxrwxrwx    1 root     root           14
> Dec  9 05:53 sleep -> ../bin/busybox 346 lrwxrwxrwx    1 root     root     
>      14 Dec  9 05:53 sort -> ../bin/busybox 347 lrwxrwxrwx    1 root    
> root           14 Dec  9 05:53 strings -> ../bin/busybox 348 lrwxrwxrwx   
> 1 root     root           14 Dec  9 05:53 stty -> ../bin/busybox 349
> lrwxrwxrwx    1 root     root           14 Dec  9 05:53 sync ->
> ../bin/busybox 350 lrwxrwxrwx    1 root     root           14 Dec  9 05:53
> tail -> ../bin/busybox 351 lrwxrwxrwx    1 root     root           14 Dec 
> 9 05:53 tar -> ../bin/busybox 352 lrwxrwxrwx    1 root     root          
> 14 Dec  9 05:53 tee -> ../bin/busybox 353 lrwxrwxrwx    1 root     root    
>       14 Dec  9 05:53 telnet -> ../bin/busybox 354 lrwxrwxrwx    1 root    
> root           14 Dec  9 05:53 test -> ../bin/busybox 355 lrwxrwxrwx    1
> root     root           14 Dec  9 05:53 tftp -> ../bin/busybox 356
> lrwxrwxrwx    1 root     root           14 Dec  9 05:53 time ->
> ../bin/busybox 357 lrwxrwxrwx    1 root     root           14 Dec  9 05:53
> top -> ../bin/busybox 358 lrwxrwxrwx    1 root     root           14 Dec  9
> 05:53 touch -> ../bin/busybox 359 lrwxrwxrwx    1 root     root          
> 14 Dec  9 05:53 tr -> ../bin/busybox 360 lrwxrwxrwx    1 root     root     
>      14 Dec  9 05:53 traceroute -> ../bin/busybox 361 lrwxrwxrwx    1 root 
>    root           14 Dec  9 05:53 true -> ../bin/busybox 362 lrwxrwxrwx   
> 1 root     root           14 Dec  9 05:53 tty -> ../bin/busybox 363
> lrwxrwxrwx    1 root     root           14 Dec  9 05:53 umount ->
> ../bin/busybox 364 lrwxrwxrwx    1 root     root           14 Dec  9 05:53
> uname -> ../bin/busybox 365 lrwxrwxrwx    1 root     root           14 Dec 
> 9 05:53 uniq -> ../bin/busybox 366 -rwxr-xr-x    1 root     root        
> 4800 Jan  1  1970 unlock 367 lrwxrwxrwx    1 root     root           14 Dec
>  9 05:53 unzip -> ../bin/busybox 368 lrwxrwxrwx    1 root     root         
>  14 Dec  9 05:53 uptime -> ../bin/busybox 369 lrwxrwxrwx    1 root     root
>           14 Dec  9 05:53 usleep -> ../bin/busybox 370 lrwxrwxrwx    1 root
>     root           14 Dec  9 05:53 vi -> ../bin/busybox 371 lrwxrwxrwx    1
> root     root           14 Dec  9 05:53 wc -> ../bin/busybox 372 lrwxrwxrwx
>    1 root     root           14 Dec  9 05:53 wget -> ../bin/busybox 373
> lrwxrwxrwx    1 root     root           14 Dec  9 05:53 which ->
> ../bin/busybox 374 lrwxrwxrwx    1 root     root           14 Dec  9 05:53
> whoami -> ../bin/busybox 375 lrwxrwxrwx    1 root     root           14 Dec
>  9 05:53 xargs -> ../bin/busybox 376 -rwxr-xr-x    1 root     root      
> 149848 Jan  1  1970 xinetd 377 lrwxrwxrwx    1 root     root           14
> Dec  9 05:53 yes -> ../bin/busybox 378 lrwxrwxrwx    1 root     root       
>    14 Dec  9 05:53 zcat -> ../bin/busybox ~ # dmesg
> yaffs unlocking
> yaffs locking
> yaffs_lookup for 260:dev
> yaffs_lookup found 282
> yaffs_get_inode for object 282
> yaffs_read_inode for 282
> yaffs_FillInode mode a1ff uid 0 gid 0 size 6 count 1
> yaffs_loookup dentry
> yaffs unlocking
> yaffs locking
> yaffs_lookup for 260:dd
> yaffs_lookup found 281
> yaffs_get_inode for object 281
> yaffs_read_inode for 281
> yaffs_FillInode mode a1ff uid 0 gid 0 size 14 count 1
> yaffs_loookup dentry
> yaffs unlocking
> yaffs locking
> yaffs_lookup for 260:date
> yaffs_lookup found 280
> yaffs_get_inode for object 280
> yaffs_read_inode for 280
> yaffs_FillInode mode a1ff uid 0 gid 0 size 14 count 1
> yaffs_loookup dentry
> yaffs unlocking
> yaffs locking
> yaffs_lookup for 260:cut
> yaffs_lookup found 279
> yaffs_get_inode for object 279
> yaffs_read_inode for 279
> yaffs_FillInode mode a1ff uid 0 gid 0 size 14 count 1
> yaffs_loookup dentry
> yaffs unlocking
> yaffs locking
> yaffs_lookup for 260:cp
> yaffs_lookup found 278
> yaffs_get_inode for object 278
> yaffs_read_inode for 278
> yaffs_FillInode mode a1ff uid 0 gid 0 size 14 count 1
> yaffs_loookup dentry
> yaffs unlocking
> yaffs locking
> yaffs_lookup for 260:conserver
> yaffs_lookup found 277
> yaffs_get_inode for object 277
> yaffs_read_inode for 277
> yaffs_FillInode mode 81ed uid 0 gid 0 size 74668 count 1
> yaffs_loookup dentry
> yaffs unlocking
> yaffs locking
> yaffs_readdir: starting at 119
> yaffs unlocking
> yaffs locking
> yaffs unlocking
> yaffs locking
> yaffs unlocking
> yaffs locking
> yaffs unlocking
> yaffs locking
> yaffs unlocking
> yaffs locking
> yaffs unlocking
> yaffs locking
> yaffs unlocking
> yaffs locking
> yaffs unlocking
> yaffs locking
> yaffs unlocking
> yaffs locking
> yaffs unlocking
> yaffs locking
> yaffs unlocking
> yaffs locking
> yaffs unlocking
> yaffs locking
> yaffs unlocking
> yaffs locking
> yaffs unlocking
> yaffs locking
> yaffs unlocking
> yaffs locking
> yaffs unlocking
> yaffs locking
> yaffs unlocking
> yaffs locking
> yaffs unlocking
> yaffs locking
> yaffs unlocking
> yaffs locking
> yaffs unlocking
> yaffs locking
> yaffs unlocking
> yaffs locking
> yaffs unlocking
> yaffs locking
> yaffs unlocking
> yaffs locking
> yaffs unlocking
> yaffs locking
> yaffs unlocking
> yaffs locking
> yaffs unlocking
> yaffs locking
> yaffs unlocking
> yaffs locking
> yaffs unlocking
> yaffs locking
> yaffs unlocking
> yaffs locking
> yaffs unlocking
> yaffs locking
> yaffs unlocking
> yaffs locking
> yaffs unlocking
> yaffs locking
> yaffs unlocking
> yaffs locking
> yaffs unlocking
> yaffs locking
> yaffs unlocking
> yaffs locking
> yaffs unlocking
> yaffs locking
> yaffs unlocking
> yaffs locking
> yaffs unlocking
> yaffs locking
> yaffs unlocking
> yaffs locking
> yaffs unlocking
> yaffs locking
> yaffs unlocking
> yaffs locking
> yaffs unlocking
> yaffs locking
> yaffs unlocking
> yaffs locking
> yaffs unlocking
> yaffs locking
> yaffs unlocking
> yaffs locking
> yaffs unlocking
> yaffs locking
> yaffs unlocking
> yaffs locking
> yaffs unlocking
> yaffs locking
> yaffs unlocking
> yaffs locking
> yaffs unlocking
> yaffs locking
> yaffs unlocking
> yaffs locking
> yaffs unlocking
> yaffs locking
> yaffs unlocking
> yaffs locking
> yaffs unlocking
> yaffs locking
> yaffs unlocking
> yaffs locking
> yaffs unlocking
> yaffs locking
> yaffs unlocking
> yaffs locking
> yaffs unlocking
> yaffs locking
> yaffs unlocking
> yaffs locking
> yaffs unlocking
> yaffs locking
> yaffs unlocking
> yaffs locking
> yaffs unlocking
> yaffs locking
> yaffs unlocking
> yaffs locking
> yaffs unlocking
> yaffs locking
> yaffs unlocking
> yaffs locking
> yaffs unlocking
> yaffs locking
> yaffs unlocking
> yaffs locking
> yaffs unlocking
> yaffs locking
> yaffs unlocking
> yaffs locking
> yaffs unlocking
> yaffs locking
> yaffs unlocking
> yaffs locking
> yaffs unlocking
> yaffs locking
> yaffs unlocking
> yaffs locking
> yaffs unlocking
> yaffs locking
> yaffs unlocking
> yaffs locking
> yaffs unlocking
> yaffs locking
> yaffs unlocking
> yaffs locking
> yaffs unlocking
> yaffs locking
> yaffs unlocking
> yaffs locking
> yaffs unlocking
> yaffs locking
> yaffs unlocking
> yaffs locking
> yaffs unlocking
> yaffs locking
> yaffs unlocking
> yaffs locking
> yaffs unlocking
> yaffs locking
> yaffs unlocking
> yaffs locking
> yaffs unlocking
> yaffs locking
> yaffs unlocking
> yaffs locking
> yaffs unlocking
> yaffs locking
> yaffs unlocking
> yaffs locking
> yaffs unlocking
> yaffs locking
> yaffs unlocking
> yaffs locking
> yaffs unlocking
> yaffs locking
> yaffs unlocking
> yaffs locking
> yaffs unlocking
> yaffs locking
> yaffs unlocking
> yaffs locking
> yaffs unlocking
> yaffs locking
> yaffs unlocking
> yaffs locking
> yaffs unlocking
> yaffs locking
> yaffs unlocking
> yaffs locking
> yaffs unlocking
> yaffs locking
> yaffs unlocking
> yaffs locking
> yaffs unlocking
> yaffs locking
> yaffs unlocking
> yaffs locking
> yaffs unlocking
> yaffs locking
> yaffs unlocking
> yaffs locking
> yaffs unlocking
> yaffs locking
> yaffs unlocking
> yaffs locking
> yaffs unlocking
> yaffs locking
> yaffs unlocking
> yaffs locking
> yaffs unlocking
> yaffs locking
> yaffs unlocking
> yaffs locking
> yaffs unlocking
> yaffs locking
> yaffs unlocking
> yaffs locking
> yaffs unlocking
> yaffs locking
> yaffs unlocking
> yaffs locking
> yaffs unlocking
> yaffs locking
> yaffs unlocking
> yaffs locking
> yaffs unlocking
> yaffs locking
> yaffs unlocking
> yaffs locking
> yaffs unlocking
> yaffs locking
> yaffs unlocking
> yaffs locking
> yaffs unlocking
> yaffs locking
> yaffs unlocking
> yaffs locking
> yaffs unlocking
> yaffs locking
> yaffs unlocking
> yaffs locking
> yaffs unlocking
> yaffs locking
> yaffs unlocking
> yaffs locking
> yaffs unlocking
> yaffs locking
> yaffs unlocking
> yaffs locking
> yaffs unlocking
> yaffs locking
> yaffs unlocking
> yaffs locking
> yaffs unlocking
> yaffs locking
> yaffs unlocking
> yaffs locking
> yaffs unlocking
> yaffs locking
> yaffs unlocking
> yaffs locking
> yaffs unlocking
> yaffs locking
> yaffs unlocking
> yaffs locking
> yaffs unlocking
> yaffs locking
> yaffs unlocking
> yaffs locking
> yaffs unlocking
> yaffs locking
> yaffs unlocking
> yaffs locking
> yaffs unlocking
> yaffs locking
> yaffs unlocking
> yaffs locking
> yaffs unlocking
> yaffs locking
> yaffs unlocking
> yaffs locking
> yaffs unlocking
> yaffs locking
> yaffs unlocking
> yaffs locking
> yaffs unlocking
> yaffs locking
> yaffs unlocking
> yaffs locking
> yaffs unlocking
> yaffs locking
> yaffs unlocking
> yaffs locking
> yaffs unlocking
> yaffs locking
> yaffs unlocking
> yaffs locking
> yaffs unlocking
> yaffs locking
> yaffs unlocking
> yaffs locking
> yaffs unlocking
> yaffs locking
> yaffs unlocking
> yaffs locking
> yaffs unlocking
> yaffs locking
> yaffs unlocking
> yaffs locking
> yaffs unlocking
> yaffs locking
> yaffs unlocking
> yaffs locking
> yaffs unlocking
> yaffs locking
> yaffs unlocking
> yaffs locking
> yaffs unlocking
> yaffs locking
> yaffs unlocking
> yaffs locking
> yaffs unlocking
> yaffs locking
> yaffs unlocking
> yaffs locking
> yaffs unlocking
> yaffs locking
> yaffs unlocking
> yaffs locking
> yaffs unlocking
> yaffs locking
> yaffs unlocking
> yaffs locking
> yaffs unlocking
> yaffs locking
> yaffs unlocking
> yaffs locking
> yaffs unlocking
> yaffs locking
> yaffs unlocking
> yaffs locking
> yaffs unlocking
> yaffs locking
> yaffs unlocking
> yaffs locking
> yaffs unlocking
> yaffs locking
> yaffs unlocking
> yaffs locking
> yaffs unlocking
> yaffs locking
> yaffs unlocking
> yaffs locking
> yaffs unlocking
> yaffs locking
> yaffs unlocking
> yaffs locking
> yaffs unlocking
> yaffs locking
> yaffs unlocking
> yaffs locking
> yaffs unlocking
> yaffs locking
> yaffs unlocking
> ~ # umount /mnt
> yaffs_put_inode: ino 386, count 1
> yaffs_put_inode: ino 393, count 1
> yaffs_put_inode: ino 392, count 1
> yaffs_put_inode: ino 391, count 1
> yaffs_put_inode: ino 390, count 1
> yaffs_put_inode: ino 389, count 1
> yaffs_put_inode: ino 388, count 1
> yaffs_put_inode: ino 387, count 1
> yaffs_put_inode: ino 385, count 1
> yaffs_put_inode: ino 384, count 1
> yaffs_put_inode: ino 383, count 1
> yaffs_put_inode: ino 382, count 1
> yaffs_put_inode: ino 381, count 1
> yaffs_put_inode: ino 380, count 1
> yaffs_put_inode: ino 379, count 1
> yaffs_put_inode: ino 378, count 1
> yaffs_put_inode: ino 377, count 1
> yaffs_put_inode: ino 376, count 1
> yaffs_put_inode: ino 375, count 1
> yaffs_put_inode: ino 374, count 1
> yaffs_put_inode: ino 373, count 1
> yaffs_put_inode: ino 372, count 1
> yaffs_put_inode: ino 371, count 1
> yaffs_put_inode: ino 370, count 1
> yaffs_put_inode: ino 369, count 1
> yaffs_put_inode: ino 368, count 1
> yaffs_put_inode: ino 367, count 1
> yaffs_put_inode: ino 366, count 1
> yaffs_put_inode: ino 365, count 1
> yaffs_put_inode: ino 364, count 1
> yaffs_put_inode: ino 363, count 1
> yaffs_put_inode: ino 362, count 1
> yaffs_put_inode: ino 361, count 1
> yaffs_put_inode: ino 360, count 1
> yaffs_put_inode: ino 359, count 1
> yaffs_put_inode: ino 358, count 1
> yaffs_put_inode: ino 357, count 1
> yaffs_put_inode: ino 356, count 1
> yaffs_put_inode: ino 355, count 1
> yaffs_put_inode: ino 354, count 1
> yaffs_put_inode: ino 353, count 1
> yaffs_put_inode: ino 352, count 1
> yaffs_put_inode: ino 351, count 1
> yaffs_put_inode: ino 350, count 1
> yaffs_put_inode: ino 349, count 1
> yaffs_put_inode: ino 348, count 1
> yaffs_put_inode: ino 347, count 1
> yaffs_put_inode: ino 346, count 1
> yaffs_put_inode: ino 345, count 1
> yaffs_put_inode: ino 344, count 1
> yaffs_put_inode: ino 343, count 1
> yaffs_put_inode: ino 342, count 1
> yaffs_put_inode: ino 341, count 1
> yaffs_put_inode: ino 340, count 1
> yaffs_put_inode: ino 339, count 1
> yaffs_put_inode: ino 338, count 1
> yaffs_put_inode: ino 337, count 1
> yaffs_put_inode: ino 336, count 1
> yaffs_put_inode: ino 335, count 1
> yaffs_put_inode: ino 334, count 1
> yaffs_put_inode: ino 333, count 1
> yaffs_put_inode: ino 332, count 1
> yaffs_put_inode: ino 331, count 1
> yaffs_put_inode: ino 330, count 1
> yaffs_put_inode: ino 329, count 1
> yaffs_put_inode: ino 328, count 1
> yaffs_put_inode: ino 327, count 1
> yaffs_put_inode: ino 326, count 1
> yaffs_put_inode: ino 325, count 1
> yaffs_put_inode: ino 324, count 1
> yaffs_put_inode: ino 323, count 1
> yaffs_put_inode: ino 322, count 1
> yaffs_put_inode: ino 321, count 1
> yaffs_put_inode: ino 320, count 1
> yaffs_put_inode: ino 319, count 1
> yaffs_put_inode: ino 318, count 1
> yaffs_put_inode: ino 317, count 1
> yaffs_put_inode: ino 316, count 1
> yaffs_put_inode: ino 315, count 1
> yaffs_put_inode: ino 314, count 1
> yaffs_put_inode: ino 313, count 1
> yaffs_put_inode: ino 312, count 1
> yaffs_put_inode: ino 311, count 1
> yaffs_put_inode: ino 310, count 1
> yaffs_put_inode: ino 309, count 1
> yaffs_put_inode: ino 308, count 1
> yaffs_put_inode: ino 307, count 1
> yaffs_put_inode: ino 306, count 1
> yaffs_put_inode: ino 305, count 1
> yaffs_put_inode: ino 303, count 1
> yaffs_put_inode: ino 304, count 1
> yaffs_put_inode: ino 302, count 1
> yaffs_put_inode: ino 301, count 1
> yaffs_put_inode: ino 300, count 1
> yaffs_put_inode: ino 299, count 1
> yaffs_put_inode: ino 298, count 1
> yaffs_put_inode: ino 297, count 1
> yaffs_put_inode: ino 296, count 1
> yaffs_put_inode: ino 295, count 1
> yaffs_put_inode: ino 294, count 1
> yaffs_put_inode: ino 293, count 1
> yaffs_put_inode: ino 292, count 1
> yaffs_put_inode: ino 291, count 1
> yaffs_put_inode: ino 290, count 1
> yaffs_put_inode: ino 289, count 1
> yaffs_put_inode: ino 288, count 1
> yaffs_put_inode: ino 287, count 1
> yaffs_put_inode: ino 286, count 1
> yaffs_put_inode: ino 285, count 1
> yaffs_put_inode: ino 284, count 1
> yaffs_put_inode: ino 283, count 1
> yaffs_put_inode: ino 282, count 1
> yaffs_put_inode: ino 281, count 1
> yaffs_put_inode: ino 280, count 1
> yaffs_put_inode: ino 279, count 1
> yaffs_put_inode: ino 278, count 1
> yaffs_put_inode: ino 277, count 1
> yaffs_put_inode: ino 260, count 1
> yaffs_put_inode: ino 1, count 1
> yaffs_clear_inode: ino 386, count 0 object exists
> yaffs_clear_inode: ino 393, count 0 object exists
> yaffs_clear_inode: ino 392, count 0 object exists
> yaffs_clear_inode: ino 391, count 0 object exists
> yaffs_clear_inode: ino 390, count 0 object exists
> yaffs_clear_inode: ino 389, count 0 object exists
> yaffs_clear_inode: ino 388, count 0 object exists
> yaffs_clear_inode: ino 387, count 0 object exists
> yaffs_clear_inode: ino 385, count 0 object exists
> yaffs_clear_inode: ino 384, count 0 object exists
> yaffs_clear_inode: ino 383, count 0 object exists
> yaffs_clear_inode: ino 382, count 0 object exists
> yaffs_clear_inode: ino 381, count 0 object exists
> yaffs_clear_inode: ino 380, count 0 object exists
> yaffs_clear_inode: ino 379, count 0 object exists
> yaffs_clear_inode: ino 378, count 0 object exists
> yaffs_clear_inode: ino 377, count 0 object exists
> yaffs_clear_inode: ino 376, count 0 object exists
> yaffs_clear_inode: ino 375, count 0 object exists
> yaffs_clear_inode: ino 374, count 0 object exists
> yaffs_clear_inode: ino 373, count 0 object exists
> yaffs_clear_inode: ino 372, count 0 object exists
> yaffs_clear_inode: ino 371, count 0 object exists
> yaffs_clear_inode: ino 370, count 0 object exists
> yaffs_clear_inode: ino 369, count 0 object exists
> yaffs_clear_inode: ino 368, count 0 object exists
> yaffs_clear_inode: ino 367, count 0 object exists
> yaffs_clear_inode: ino 366, count 0 object exists
> yaffs_clear_inode: ino 365, count 0 object exists
> yaffs_clear_inode: ino 364, count 0 object exists
> yaffs_clear_inode: ino 363, count 0 object exists
> yaffs_clear_inode: ino 362, count 0 object exists
> yaffs_clear_inode: ino 361, count 0 object exists
> yaffs_clear_inode: ino 360, count 0 object exists
> yaffs_clear_inode: ino 359, count 0 object exists
> yaffs_clear_inode: ino 358, count 0 object exists
> yaffs_clear_inode: ino 357, count 0 object exists
> yaffs_clear_inode: ino 356, count 0 object exists
> yaffs_clear_inode: ino 355, count 0 object exists
> yaffs_clear_inode: ino 354, count 0 object exists
> yaffs_clear_inode: ino 353, count 0 object exists
> yaffs_clear_inode: ino 352, count 0 object exists
> yaffs_clear_inode: ino 351, count 0 object exists
> yaffs_clear_inode: ino 350, count 0 object exists
> yaffs_clear_inode: ino 349, count 0 object exists
> yaffs_clear_inode: ino 348, count 0 object exists
> yaffs_clear_inode: ino 347, count 0 object exists
> yaffs_clear_inode: ino 346, count 0 object exists
> yaffs_clear_inode: ino 345, count 0 object exists
> yaffs_clear_inode: ino 344, count 0 object exists
> yaffs_clear_inode: ino 343, count 0 object exists
> yaffs_clear_inode: ino 342, count 0 object exists
> yaffs_clear_inode: ino 341, count 0 object exists
> yaffs_clear_inode: ino 340, count 0 object exists
> yaffs_clear_inode: ino 339, count 0 object exists
> yaffs_clear_inode: ino 338, count 0 object exists
> yaffs_clear_inode: ino 337, count 0 object exists
> yaffs_clear_inode: ino 336, count 0 object exists
> yaffs_clear_inode: ino 335, count 0 object exists
> yaffs_clear_inode: ino 334, count 0 object exists
> yaffs_clear_inode: ino 333, count 0 object exists
> yaffs_clear_inode: ino 332, count 0 object exists
> yaffs_clear_inode: ino 331, count 0 object exists
> yaffs_clear_inode: ino 330, count 0 object exists
> yaffs_clear_inode: ino 329, count 0 object exists
> yaffs_clear_inode: ino 328, count 0 object exists
> yaffs_clear_inode: ino 327, count 0 object exists
> yaffs_clear_inode: ino 326, count 0 object exists
> yaffs_clear_inode: ino 325, count 0 object exists
> yaffs_clear_inode: ino 324, count 0 object exists
> yaffs_clear_inode: ino 323, count 0 object exists
> yaffs_clear_inode: ino 322, count 0 object exists
> yaffs_clear_inode: ino 321, count 0 object exists
> yaffs_clear_inode: ino 320, count 0 object exists
> yaffs_clear_inode: ino 319, count 0 object exists
> yaffs_clear_inode: ino 318, count 0 object exists
> yaffs_clear_inode: ino 317, count 0 object exists
> yaffs_clear_inode: ino 316, count 0 object exists
> yaffs_clear_inode: ino 315, count 0 object exists
> yaffs_clear_inode: ino 314, count 0 object exists
> yaffs_clear_inode: ino 313, count 0 object exists
> yaffs_clear_inode: ino 312, count 0 object exists
> yaffs_clear_inode: ino 311, count 0 object exists
> yaffs_clear_inode: ino 310, count 0 object exists
> yaffs_clear_inode: ino 309, count 0 object exists
> yaffs_clear_inode: ino 308, count 0 object exists
> yaffs_clear_inode: ino 307, count 0 object exists
> yaffs_clear_inode: ino 306, count 0 object exists
> yaffs_clear_inode: ino 305, count 0 object exists
> yaffs_clear_inode: ino 303, count 0 object exists
> yaffs_clear_inode: ino 304, count 0 object exists
> yaffs_clear_inode: ino 302, count 0 object exists
> yaffs_clear_inode: ino 301, count 0 object exists
> yaffs_clear_inode: ino 300, count 0 object exists
> yaffs_clear_inode: ino 299, count 0 object exists
> yaffs_clear_inode: ino 298, count 0 object exists
> yaffs_clear_inode: ino 297, count 0 object exists
> yaffs_clear_inode: ino 296, count 0 object exists
> yaffs_clear_inode: ino 295, count 0 object exists
> yaffs_clear_inode: ino 294, count 0 object exists
> yaffs_clear_inode: ino 293, count 0 object exists
> yaffs_clear_inode: ino 292, count 0 object exists
> yaffs_clear_inode: ino 291, count 0 object exists
> yaffs_clear_inode: ino 290, count 0 object exists
> yaffs_clear_inode: ino 289, count 0 object exists
> yaffs_clear_inode: ino 288, count 0 object exists
> yaffs_clear_inode: ino 287, count 0 object exists
> yaffs_clear_inode: ino 286, count 0 object exists
> yaffs_clear_inode: ino 285, count 0 object exists
> yaffs_clear_inode: ino 284, count 0 object exists
> yaffs_clear_inode: ino 283, count 0 object exists
> yaffs_clear_inode: ino 282, count 0 object exists
> yaffs_clear_inode: ino 281, count 0 object exists
> yaffs_clear_inode: ino 280, count 0 object exists
> yaffs_clear_inode: ino 279, count 0 object exists
> yaffs_clear_inode: ino 278, count 0 object exists
> yaffs_clear_inode: ino 277, count 0 object exists
> yaffs_clear_inode: ino 260, count 0 object exists
> yaffs_clear_inode: ino 1, count 0 object exists
> ~ #