yaffs2.git
13 years agoyaffs just fixed the way in which a symlink is opened in the yaffs browser.
Timothy Manning [Mon, 11 Oct 2010 20:43:24 +0000 (09:43 +1300)]
yaffs just fixed the way in which a symlink is opened in the yaffs browser.
Signed-off-by: Timothy Manning <tfhmanning@gmail.com>
13 years agoyaffs more updates on coy_files_into_yaffs_fs
Timothy Manning [Mon, 11 Oct 2010 03:04:24 +0000 (16:04 +1300)]
yaffs more updates on coy_files_into_yaffs_fs
Signed-off-by: Timothy Manning <tfhmanning@gmail.com>
13 years agoyaffs Creating a python file which will read current directories into yaffs file...
Timothy Manning [Mon, 11 Oct 2010 01:51:25 +0000 (14:51 +1300)]
yaffs Creating a python file which will read current directories into yaffs file system
Signed-off-by: Timothy Manning <tfhmanning@gmail.com>
13 years agoyaffs Updates on the python yaffs browser
Timothy Manning [Sun, 10 Oct 2010 21:49:09 +0000 (10:49 +1300)]
yaffs Updates on the python yaffs browser
Signed-off-by: Timothy Manning <tfhmanning@gmail.com>
13 years agoMerge branch 'python_play'
Timothy Manning [Thu, 7 Oct 2010 22:07:38 +0000 (11:07 +1300)]
Merge branch 'python_play'

13 years agoyaffs More debug for yaffs browser.
Timothy Manning [Thu, 7 Oct 2010 22:06:17 +0000 (11:06 +1300)]
yaffs More debug for yaffs browser.

Signed-off-by: Timothy Manning <tfhmanning@gmail.com>
13 years agoyaffs Improve hard link handling in yaffs direct
Charles Manning [Thu, 7 Oct 2010 21:14:50 +0000 (10:14 +1300)]
yaffs Improve hard link handling in yaffs direct

Ensure that hard links are deferenced properly by doing it in
yaffsfs_FindObject.

Signed-off-by: Charles Manning <cdhmanning@gmail.com>
13 years agoyaffs The yaffs browser's st.st_mode bug has now been fixed
Timothy Manning [Thu, 7 Oct 2010 02:10:27 +0000 (15:10 +1300)]
yaffs The yaffs browser's st.st_mode bug has now been fixed

the st.st_mode returning 0 for a symlink was caused by:
result = yaffs_stat(fullname,byref(st))
been used insted of:
            result = yaffs_lstat(fullname,byref(st))
changing to the latter fixed this bug.
Everything works.
Signed-off-by: Timothy Manning <tfhmanning@gmail.com>
13 years agoyaffs Yaffs browser can now create and delete hard links.
Timothy Manning [Thu, 7 Oct 2010 02:01:02 +0000 (15:01 +1300)]
yaffs Yaffs browser can now create and delete hard links.

Defined values such as S_IFMT have now been added to yaffsfs.py

There is a bug with st.st_mode returning 0 if the object scanned is a symlink.
This is currently been worked on.
The ability to open and see symlinks in the browser is not working because of this.

Signed-off-by: Timothy Manning <tfhmanning@gmail.com>
13 years agoyaffs Yaffs browser can now create and delete symlinks.
Timothy Manning [Thu, 7 Oct 2010 01:30:08 +0000 (14:30 +1300)]
yaffs Yaffs browser can now create and delete symlinks.
Signed-off-by: Timothy Manning <tfhmanning@gmail.com>
13 years agoyaffs Can now delete files, folders, and folders with files in them.
Timothy Manning [Wed, 6 Oct 2010 22:22:00 +0000 (11:22 +1300)]
yaffs Can now delete files, folders, and folders with files in them.
Signed-off-by: Timothy Manning <tfhmanning@gmail.com>
13 years agoyaffs Improve yaffs direct link following
Charles Manning [Thu, 7 Oct 2010 03:56:02 +0000 (16:56 +1300)]
yaffs Improve yaffs direct link following

Did not handle hardlinks to symlinks properly.

Signed-off-by: Charles Manning <cdhmanning@gmail.com>
13 years agoMerge branch 'master' of ssh://www.aleph1.co.uk/home/aleph1/git/yaffs2
Charles Manning [Thu, 7 Oct 2010 02:16:02 +0000 (15:16 +1300)]
Merge branch 'master' of ssh://aleph1.co.uk/home/aleph1/git/yaffs2

13 years agoyaffs Change stat to lstats in test code
Charles Manning [Thu, 7 Oct 2010 02:13:25 +0000 (15:13 +1300)]
yaffs Change stat to lstats in test code

lstat gives us symlinks.

Signed-off-by: Charles Manning <cdhmanning@gmail.com>
13 years agoyaffs Further mods to python browser. pre-name-change
Timothy Manning [Wed, 6 Oct 2010 21:05:05 +0000 (10:05 +1300)]
yaffs Further mods to python browser.

Fixed the Makefile by adding an extra symlink.
Gave the python browser the ablity to create files and folders.
Signed-off-by: Timothy Manning <tfhmanning@gmail.com>
13 years agoMerge branch 'python_play'
Timothy Manning [Wed, 6 Oct 2010 01:55:37 +0000 (14:55 +1300)]
Merge branch 'python_play'

13 years agoyaffs Use file emulator for python test
Timothy Manning [Wed, 6 Oct 2010 01:52:43 +0000 (14:52 +1300)]
yaffs Use file emulator for python test

Change the python test library to use a file-backed emulator
for the yaffs2 mount rather than use a ram-based emulator.

Signed-off-by: Timothy Manning <tfhmanning@gmail.com>
13 years agoyaffs Add first cut python browser for yaffs direct
Timothy Manning [Wed, 6 Oct 2010 01:42:57 +0000 (14:42 +1300)]
yaffs Add first cut python browser for yaffs direct

A python based browser for working with yaffs direct.

More to follow...

Signed-off-by: Timothy Manning <tfhmanning@gmail.com>
13 years agostarting on python browser
Timothy Manning [Tue, 5 Oct 2010 00:43:23 +0000 (13:43 +1300)]
starting on python browser
Signed-off-by: Timothy Manning <tfhmanning@gmail.com>
13 years agoyaffs: Add more messages to the patch-ker.sh script
Charles Manning [Mon, 4 Oct 2010 03:37:44 +0000 (16:37 +1300)]
yaffs: Add more messages to the patch-ker.sh script

Make it more obvious what the differences are between the multi- and single-
version varints of the yaffs vfs glue code.

Signed-off-by: Charles Manning <cdhmanning@gmail.com>
13 years agoyaffs Add axes to data plotter
Charles Manning [Fri, 1 Oct 2010 02:13:10 +0000 (15:13 +1300)]
yaffs Add axes to data plotter

This is just cosmetics for the script that plots free data.

Signed-off-by: Charles Manning <cdhmanning@gmail.com>
13 years agoyaffs Update README-linux to reflect kernel patching changes
Charles Manning [Wed, 29 Sep 2010 23:53:05 +0000 (12:53 +1300)]
yaffs Update README-linux to reflect kernel patching changes

Signed-off-by: Charles Manning <cdhmanning@gmail.com>
13 years agoyaffs Increase size of test tmpfs area
Charles Manning [Sun, 26 Sep 2010 23:24:58 +0000 (12:24 +1300)]
yaffs Increase size of test tmpfs area

The yaffs direct tests run in a tmpfs mount so that they run faster
and don't hit the disk.

The previous size was not enough to run all the tests in parallel.
Increase  to 2G bytes.

Signed-off-by: Charles Manning <cdhmanning@gmail.com>
13 years agoyaffs Clean up some code
Charles Manning [Sat, 25 Sep 2010 04:13:43 +0000 (16:13 +1200)]
yaffs Clean up some code

Clean up some code. eg remove some conditional compilation
and obsolete code.

Signed-off-by: Charles Manning <cdhmanning@gmail.com>
13 years agoyaffs Remove obsolete list debugging code
Charles Manning [Sat, 25 Sep 2010 02:48:37 +0000 (14:48 +1200)]
yaffs Remove obsolete list debugging code

This code does not work any more so may as well delete it.

Signed-off-by: Charles Manning <cdhmanning@gmail.com>
13 years agoyaffs Tweaks to single and multi-version yaffs
Charles Manning [Sat, 25 Sep 2010 02:21:44 +0000 (14:21 +1200)]
yaffs Tweaks to single and multi-version yaffs

Strip multi-version code out of single version VFS glue.

Signed-off-by: Charles Manning <cdhmanning@gmail.com>
13 years agoyaffs Add multi and single version Linux glue code
Charles Manning [Sat, 25 Sep 2010 01:27:11 +0000 (13:27 +1200)]
yaffs Add multi and single version Linux glue code

First step to single/mutli veriosns of yaffs for mainlining.

Signed-off-by: Charles Manning <cdhmanning@gmail.com>
13 years agoyaffs Sort out some Linux multi-version compilation issues
Charles Manning [Tue, 21 Sep 2010 01:44:16 +0000 (13:44 +1200)]
yaffs Sort out some Linux multi-version compilation issues

Fix problems where some versions were not compiling.

Signed-off-by: Charles Manning <cdhmanning@gmail.com>
13 years agoyaffs Add sharing control to yaffs direct
Charles Manning [Mon, 20 Sep 2010 09:04:16 +0000 (21:04 +1200)]
yaffs Add sharing control to yaffs direct

This is done mainly to support sharing control in WinCE.

Signed-off-by: Charles Manning <cdhmanning@gmail.com>
13 years agoyaffs Modify mkyaffs2image.c
Charles Manning [Fri, 17 Sep 2010 02:31:57 +0000 (14:31 +1200)]
yaffs Modify mkyaffs2image.c

Apply Chuck's patches and some other mods.

Signed-off-by: Charles Manning <cdhmanning@gmail.com>
13 years agoyaffs Add function to get number of open handles
Charles Manning [Fri, 17 Sep 2010 02:28:14 +0000 (14:28 +1200)]
yaffs Add function to get number of open handles

This is not a POSIX function.

Useful for checking if the object is in use.

Signed-off-by: Charles Manning <cdhmanning@gmail.com>
13 years agoyaffs Clean up test scripts a bit
Charles Manning [Thu, 9 Sep 2010 21:38:24 +0000 (09:38 +1200)]
yaffs Clean up test scripts a bit

Remove some bashisms.

Signed-off-by: Charles Manning <cdhmanning@gmail.com>
13 years agoyaffs Compilation clean ups
Charles Manning [Wed, 8 Sep 2010 23:35:09 +0000 (11:35 +1200)]
yaffs Compilation clean ups

Tighten compilation flags and clean up. More to follow...

Signed-off-by: Charles Manning <cdhmanning@gmail.com>
13 years agoyaffs: Cache object xattrib state.
Charles Manning [Wed, 8 Sep 2010 21:20:23 +0000 (09:20 +1200)]
yaffs: Cache object xattrib state.

We cache whether or not an object has xattributes.

This is done to get around the problem of the Linux VFS trying to check security
capabilities on every write. Assuming that most files don't have security
attributes, this code will save on a huge amount of reads and make writing
faster.

Signed-off-by: Charles Manning <cdhmanning@gmail.com>
13 years agoMerge branch 'master' of ssh://www.aleph1.co.uk/home/aleph1/git/yaffs2
Charles Manning [Fri, 3 Sep 2010 04:11:52 +0000 (16:11 +1200)]
Merge branch 'master' of ssh://aleph1.co.uk/home/aleph1/git/yaffs2

13 years agoyaffs Change file Linux vfs truncation to new mechanism
Charles Manning [Fri, 3 Sep 2010 02:12:20 +0000 (14:12 +1200)]
yaffs Change file Linux vfs truncation to new mechanism

This is cleaner for 2.6.36 etc.

Signed-off-by: Charles Manning <cdhmanning@gmail.com>
13 years agoyaffs Add stats tracking and control for background gc instrumentation
Charles Manning [Fri, 3 Sep 2010 02:05:49 +0000 (14:05 +1200)]
yaffs Add stats tracking and control for background gc instrumentation

This allows us to track the impact of background gc.

Signed-off-by: Charles Manning <cdhmanning@gmail.com>
13 years agoyaffs: Better explanation in patch-ker.sh
Charles Manning [Thu, 2 Sep 2010 23:35:45 +0000 (11:35 +1200)]
yaffs: Better explanation in patch-ker.sh

If the tree already contains yaffs then we don't delete it.

We now give a better explanation of what to do.

Signed-off-by: Charles Manning <cdhmanning@gmail.com>
13 years agoyaffs Add a Linux write test
Charles Manning [Tue, 24 Aug 2010 05:08:39 +0000 (17:08 +1200)]
yaffs Add a Linux write test

Signed-off-by: Charles Manning <cdhmanning@gmail.com>
13 years agoyaffs Fix problem trying to mkdir a mountpt in yaffs direct
Charles Manning [Mon, 23 Aug 2010 22:12:15 +0000 (10:12 +1200)]
yaffs Fix problem trying to mkdir a mountpt in yaffs direct

yaffs_mkdir would create a directory if you passed the name of
a mount point. This change fails such attempts with -EEXIST.

tested with:
"yaffs2"
"/yaffs2"
"/yaffs2/"
"/yaffs2///////"
"yaffs2////"

Signed-off-by: Charles Manning <cdhmanning@gmail.com>
13 years agoyaffs: Add yaffs direct code for tracking flash traffic
Charles Manning [Thu, 19 Aug 2010 23:56:12 +0000 (11:56 +1200)]
yaffs: Add yaffs direct code for tracking flash traffic

Helps for accessing gc overheads.

Signed-off-by: Charles Manning <cdhmanning@gmail.com>
13 years agoyaffs Tweak gc parameters
Charles Manning [Thu, 19 Aug 2010 04:00:15 +0000 (16:00 +1200)]
yaffs   Tweak gc parameters

This will reduce unnecessary garbace collection by limiting in-thread garbage
collection to when the garbage > 3/4 of the free space.

This should push more gc into background and make the write path faster.

Signed-off-by: Charles Manning <cdhmanning@gmail.com>
13 years agoyaffs Add gc block counter
Charles Manning [Wed, 18 Aug 2010 00:47:29 +0000 (12:47 +1200)]
yaffs  Add gc block counter

Extra stats for counting how many blocks get selected for gc.

Signed-off-by: Charles Manning <cdhmanning@gmail.com>
13 years agoyaffs Handle init_timer properly for older kernels
Charles Manning [Wed, 18 Aug 2010 00:44:23 +0000 (12:44 +1200)]
yaffs Handle init_timer properly for older kernels

Use init_timer for older kernels and init_timer_on_stack for newer
kernels.

Signed-off-by: Charles Manning <cdhmanning@gmail.com>
13 years agoyaffs: Compile with Linux 2.6.36
Charles Manning [Mon, 16 Aug 2010 05:35:36 +0000 (17:35 +1200)]
yaffs: Compile with Linux 2.6.36

There have been some changes with how setattr works and changing
clear/delete inode to the new evict_inode.

Signed-off-by: Charles Manning <cdhmanning@gmail.com>
13 years agoyaffs Mark superblock dirty on writes
Charles Manning [Sun, 15 Aug 2010 22:25:51 +0000 (10:25 +1200)]
yaffs  Mark superblock dirty on writes

Previosly superblock dirtying only happened on writes to NAND. This was
not sufficient to ensure that small cached writes would be written out
by a sync. This could cause data loss in a loop-mounted device.

We now also mark all Linux writes as dirty.

Signed-off-by: Charles Manning <cdhmanning@gmail.com>
13 years agoyaffs Clean up some yaffs1 related comments and messages
Charles Manning [Sun, 15 Aug 2010 22:07:57 +0000 (10:07 +1200)]
yaffs  Clean up some yaffs1 related comments and messages

Signed-off-by: Charles Manning <cdhmanning@gmail.com>
13 years agoyaffs: Skip checkpoint writing if mounted readonly
Charles Manning [Tue, 10 Aug 2010 00:43:52 +0000 (12:43 +1200)]
yaffs: Skip checkpoint writing if mounted readonly

Signed-off-by: Charles Manning <cdhmanning@gmail.com>
13 years agoyaffs: Batter read-only support handling
Charles Manning [Tue, 10 Aug 2010 00:38:32 +0000 (12:38 +1200)]
yaffs: Batter read-only support handling

Check read only flags in both the mount flags and mtd flags.

If the mount is read only then don't do some clean ups or start the
background gc thread.

Signed-off-by: Charles Manning <cdhmanning@gmail.com>
13 years agoyaffs: Fix return value for yaffs direct sync
Charles Manning [Mon, 9 Aug 2010 22:06:45 +0000 (10:06 +1200)]
yaffs: Fix return value for yaffs direct sync

Yaffs Direct sync was returning -1 regardless of sync result.
Now returns 0 if sync was done.

Signed-off-by: Charles Manning <cdhmanning@gmail.com>
13 years agoyaffs: Add new follow link code for 2.6.34 support
Charles Manning [Mon, 9 Aug 2010 21:49:23 +0000 (09:49 +1200)]
yaffs: Add new follow link code for 2.6.34 support

Fixes problem caused by change in follow link semantics.

Signed-off-by: Charles Manning <cdhmanning@gmail.com>
13 years agoyaffs Fix yaffs1 soft delete issue
Charles Manning [Mon, 9 Aug 2010 21:09:41 +0000 (09:09 +1200)]
yaffs  Fix yaffs1 soft delete issue

In some corner cases soft deletion could cause NAND to leak and show
up in lost and found.

This only impacts yaffs1 mode.

Signed-off-by: Charles Manning <cdhmanning@gmail.com>
13 years agoyaffs Changes to direct tests
Charles Manning [Sat, 7 Aug 2010 04:30:20 +0000 (16:30 +1200)]
yaffs  Changes to direct tests

Add test for lost+found being empty.
Make fuzzer less verbose
Allow changing of iteration count for simulated power fail testing.

Signed-off-by: Charles Manning <cdhmanning@gmail.com>
13 years agoyaffs Get fuzz tester to run further
Charles Manning [Wed, 4 Aug 2010 02:51:06 +0000 (14:51 +1200)]
yaffs Get fuzz tester to run further

During fuzz testing we allow tests to run even if integrity errors happen. This
allows the fuzz test to check for more complex cases.

Signed-off-by: Charles Manning <cdhmanning@gmail.com>
13 years agoyaffs: Fix issues kicked up by fuzz testing
Charles Manning [Wed, 4 Aug 2010 02:04:13 +0000 (14:04 +1200)]
yaffs: Fix issues kicked up by fuzz testing

Some more problems kicked up by fuzz testing:
* Further verification of chunk tags.
* If loading details for root dir or lost+found then don't change the
*  variant type since we know they are directories.

Signed-off-by: Charles Manning <cdhmanning@gmail.com>
13 years agoyaffs Implement phase 1 fuzz testing.
Charles Manning [Fri, 2 Jul 2010 04:46:47 +0000 (16:46 +1200)]
yaffs Implement phase 1 fuzz testing.

Signed-off-by: Charles Manning <cdhmanning@gmail.com>
13 years agoyaffs Update RAM simulator to support start and end blocks
Charles Manning [Wed, 4 Aug 2010 00:09:58 +0000 (12:09 +1200)]
yaffs Update RAM simulator to support start and end blocks

This makes it more versatile for simulation of different usage patterns.

Signed-off-by: Charles Manning <cdhmanning@gmail.com>
13 years agoyaffs: Fix AutoUnicode handling
Charles Manning [Wed, 4 Aug 2010 00:08:28 +0000 (12:08 +1200)]
yaffs: Fix AutoUnicode handling

Call the correct function to process auto unicode.

Signed-off-by: Charles Manning <cdhmanning@gmail.com>
13 years agoyaffs Fix yaffs direct creating opening files with no name
Charles Manning [Fri, 30 Jul 2010 01:53:10 +0000 (13:53 +1200)]
yaffs Fix yaffs direct creating opening files with no name

Opening a file with a name that was a directory would create a
file named "" within that directory.

This is now fixed. The call fails.

Signed-off-by: Charles Manning <cdhmanning@gmail.com>
13 years agoyaffs Add another test to basic tests
Charles Manning [Fri, 30 Jul 2010 01:52:14 +0000 (13:52 +1200)]
yaffs Add another test to basic tests

Signed-off-by: Charles Manning <cdhmanning@gmail.com>
13 years agoyaffs Keep unused linux alloactor code up to date
Charles Manning [Thu, 29 Jul 2010 04:46:26 +0000 (16:46 +1200)]
yaffs Keep unused linux alloactor code up to date

We're not using this, but let's keep it compiling anyway.

Signed-off-by: Charles Manning <cdhmanning@gmail.com>
13 years agoyaffs Fix in-kernel makefile to use correct allocator
Charles Manning [Thu, 29 Jul 2010 00:45:33 +0000 (12:45 +1200)]
yaffs Fix in-kernel makefile to use correct allocator

Signed-off-by: Charles Manning <cdhmanning@gmail.com>
13 years agoyaffs Fix xattrib headers for use with unicode
Charles Manning [Thu, 22 Jul 2010 00:45:52 +0000 (12:45 +1200)]
yaffs Fix xattrib headers for use with unicode

Signed-off-by: Charles Manning <cdhmanning@gmail.com>
13 years agoyaffs Move yaffscfg.h to where it should be
Charles Manning [Thu, 22 Jul 2010 00:26:01 +0000 (12:26 +1200)]
yaffs Move yaffscfg.h to where it should be

Signed-off-by: Charles Manning <cdhmanning@gmail.com>
13 years agoyaffs Clean up WinCE compilation issues
Charles Manning [Thu, 22 Jul 2010 00:13:33 +0000 (12:13 +1200)]
yaffs Clean up WinCE compilation issues

Signed-off-by: Charles Manning <cdhmanning@gmail.com>
13 years agoyaffs Make directory for extracting common wince files
Charles Manning [Wed, 21 Jul 2010 22:40:15 +0000 (10:40 +1200)]
yaffs Make directory for extracting common wince files

This helps to shift files to WinCE portts.

Signed-off-by: Charles Manning <cdhmanning@gmail.com>
13 years agoyaffs Add Makefile to create symlinks
Charles Manning [Wed, 21 Jul 2010 03:31:54 +0000 (15:31 +1200)]
yaffs Add Makefile to create symlinks

This makes it easy to get all the yaffs drect files + symlinks.

Signed-off-by: Charles Manning <cdhmanning@gmail.com>
13 years agoyaffs Refactor yaffs direct device list management, add nand abstraction, divide...
Charles Manning [Wed, 21 Jul 2010 03:23:56 +0000 (15:23 +1200)]
yaffs Refactor yaffs direct device list management, add nand abstraction, divide up test code

This all makes for a far cleaner layout of test code.

The new yaffs direct list management allows partitions to be added synamically rather than
statically. This is better for OSs that install partitions at runtime (eg. WInCE).

The nand abstraction makes it tidier to add a new nand driver to yaffs direct and test code.

The test code has been repartitioned to make porting and file management cleaner.

Signed-off-by: Charles Manning <cdhmanning@gmail.com>
13 years agoyaffs Fix scan problem for corrupted tags
Charles Manning [Thu, 1 Jul 2010 22:33:26 +0000 (10:33 +1200)]
yaffs Fix scan problem for corrupted tags

Check that the tags are within reasonable bounds. Without this, subsequent
checks can fail causing a mount failure.

Signed-off-by: Charles Manning <cdhmanning@gmail.com>
13 years agoyaffs Refactorisation first phase
Charles Manning [Thu, 1 Jul 2010 04:14:01 +0000 (16:14 +1200)]
yaffs Refactorisation first phase

Partitoning code. More to happen.

Signed-off-by: Charles Manning <cdhmanning@gmail.com>
13 years agoyaffs Reactoring WIP
Charles Manning [Wed, 30 Jun 2010 04:06:45 +0000 (16:06 +1200)]
yaffs Reactoring WIP

Signed-off-by: Charles Manning <cdhmanning@gmail.com>
13 years agoyaffs Refactor yaffs1 and yaffs2 specific code. WIP
Charles Manning [Wed, 30 Jun 2010 00:04:01 +0000 (12:04 +1200)]
yaffs Refactor yaffs1 and yaffs2 specific code. WIP

This will keep yaffs1 vs yaffs2 code cleaner and allow unused code to
be left out.

Signed-off-by: Charles Manning <cdhmanning@gmail.com>
13 years agoyaffs Fix xattr error codes
Charles Manning [Thu, 1 Jul 2010 01:41:16 +0000 (13:41 +1200)]
yaffs  Fix xattr error codes

There were some incorrect error codes.
Now returns
ENODATA if an object does not have the requested xattr.
ERANGE if the buffer is too small to accept the requested xattr.

Signed-off-by: Charles Manning <cdhmanning@gmail.com>
13 years agoyaffs Fix readdir locking
Charles Manning [Thu, 1 Jul 2010 00:25:59 +0000 (12:25 +1200)]
yaffs Fix readdir locking

yaffs_EndSearch() should have been called with yaffs locked.

Signed-off-by: Charles Manning <cdhmanning@gmail.com>
13 years agoMerge branch 'master' of ssh://www.aleph1.co.uk/home/aleph1/git/yaffs2
Charles Manning [Wed, 30 Jun 2010 00:07:01 +0000 (12:07 +1200)]
Merge branch 'master' of ssh://aleph1.co.uk/home/aleph1/git/yaffs2

13 years agoyaffs Add .gitignore
Charles Manning [Wed, 30 Jun 2010 00:02:21 +0000 (12:02 +1200)]
yaffs Add .gitignore

Add .gitignore

Signed-off-by: Charles Manning <cdhmanning@gmail.com>
13 years agoyaffs direct: Fix yaffs direct offset handling for pwrite
Charles Manning [Thu, 24 Jun 2010 21:45:43 +0000 (09:45 +1200)]
yaffs direct: Fix yaffs direct offset handling for pwrite

Note that if the handle is opened with O_APPEND then the pwrite() offset
is ignored and the write appends.

Signed-off-by: Charles Manning <cdhmanning@gmail.com>
13 years agoyaffs: Change timer init call to init_timer_on_stack
Charles Manning [Thu, 17 Jun 2010 05:51:33 +0000 (17:51 +1200)]
yaffs: Change timer init call to init_timer_on_stack

This call is more debug friendly and does not trigger certain kernel warmings.

Signed-off-by: Charles Manning <cdhmanning@gmail.com>
13 years agoyaffs: Clean up unused variable
Charles Manning [Thu, 17 Jun 2010 03:57:47 +0000 (15:57 +1200)]
yaffs: Clean up unused variable

Remove warning.

Signed-off-by: Charles Manning <cdhmanning@gmail.com>
13 years agoyaffs: Change yaffs_sync_object prototype for new 2.6.35 VFS interface
Charles Manning [Thu, 17 Jun 2010 03:55:13 +0000 (15:55 +1200)]
yaffs: Change yaffs_sync_object prototype for new 2.6.35 VFS interface

The sync interface changed, we change too...

Signed-off-by: Charles Manning <cdhmanning@gmail.com>
13 years agoyaffs: Fix up xattrib flag names
Charles Manning [Mon, 14 Jun 2010 08:38:28 +0000 (20:38 +1200)]
yaffs: Fix up xattrib flag names

Signed-off-by: Charles Manning <cdhmanning@gmail.com>
13 years agoyaffs: Remove own qsort from Linux build
Charles Manning [Fri, 11 Jun 2010 01:54:51 +0000 (13:54 +1200)]
yaffs: Remove own qsort from Linux build

Use Linux's built in sorter.

Signed-off-by: Charles Manning <cdhmanning@gmail.com>
13 years agoyaffs: Refactor allocator
Charles Manning [Tue, 8 Jun 2010 23:04:34 +0000 (11:04 +1200)]
yaffs: Refactor allocator

Refactoring the allocator allows alternate allocators to be switched in more easily

Signed-off-by: Charles Manning <cdhmanning@gmail.com>
13 years agoyaffs: Fix yaffsfs xattr error handling, add yaffs_lsetxattr and friends
Charles Manning [Sun, 13 Jun 2010 23:33:54 +0000 (11:33 +1200)]
yaffs: Fix yaffsfs xattr error handling, add yaffs_lsetxattr and friends

Error codes were not being handled correctly.
yaffs_lsetxattr, yaffs_lgetxattr, yaffs_lremovexattr, yaffs_llistxattr.

Signed-off-by: Charles Manning <cdhmanning@gmail.com>
13 years agoyaffs: Improve xattrib to not modify if there is no space
Charles Manning [Fri, 11 Jun 2010 01:57:10 +0000 (13:57 +1200)]
yaffs: Improve xattrib to not modify if there is no space

Previously replacing an xattrib with a larger one that could not fit
would result in the original xattrib being deleted.

We now only replace an xattrib if there is space to do so.

Signed-off-by: Charles Manning <cdhmanning@gmail.com>
13 years agoyaffs: Add xattrib file to in-kernel Makefile
Charles Manning [Wed, 9 Jun 2010 23:38:25 +0000 (11:38 +1200)]
yaffs: Add xattrib file to in-kernel Makefile

First xattrib checkin missed this change.

Signed-off-by: Charles Manning <cdhmanning@gmail.com>
13 years agoyaffs: Add xattrib support
Charles Manning [Tue, 8 Jun 2010 03:46:58 +0000 (15:46 +1200)]
yaffs: Add xattrib support

Signed-off-by: Charles Manning <cdhmanning@gmail.com>
13 years agoyaffs: Clean up yaffs direct configuration
Charles Manning [Fri, 28 May 2010 04:30:43 +0000 (16:30 +1200)]
yaffs: Clean up yaffs direct configuration

Clean up some stale comments.

Signed-off-by: Charles Manning <cdhmanning@gmail.com>
13 years agoyaffs: Add python test for O_EXCL
Charles Manning [Wed, 19 May 2010 00:46:51 +0000 (12:46 +1200)]
yaffs: Add python test for O_EXCL

Check that OEXCL really works according to what's on the box.

Signed-off-by: Charles Manning <cdhmanning@gmail.com>
13 years agoyaffs: Clean up comments in direct/yaffsfs.c
Charles Manning [Wed, 19 May 2010 00:31:50 +0000 (12:31 +1200)]
yaffs: Clean up comments in direct/yaffsfs.c

Get rid of C++ style comments

Signed-off-by: Charles Manning <cdhmanning@gmail.com>
13 years agoyaffs Fix the interpretation of O_EXCL
Charles Manning [Tue, 18 May 2010 23:09:42 +0000 (11:09 +1200)]
yaffs Fix the interpretation of O_EXCL

O_EXCL does not mean openinging for exclusive access.

O_EXCL only has meaning with O_CREAT. It means only create file if
it does not exist.

Signed-off-by: Charles Manning <cdhmanning@gmail.com>
13 years agoyaffs Tweaks to stress test
Charles Manning [Tue, 18 May 2010 22:20:14 +0000 (10:20 +1200)]
yaffs Tweaks to stress test

Add/remove  directories to increase coverage.

Signed-off-by: Charles Manning <cdhmanning@gmail.com>
13 years agoyaffs: Tweak tests to use log files
Charles Manning [Sun, 16 May 2010 23:02:42 +0000 (11:02 +1200)]
yaffs: Tweak tests to use log files

This runs faster than spewing onto a terminal.

Signed-off-by: Charles Manning <cdhmanning@gmail.com>
13 years agoyaffs Fix incorrect handling of deletion flag
Charles Manning [Thu, 13 May 2010 02:29:16 +0000 (14:29 +1200)]
yaffs Fix incorrect handling of deletion flag

Move the reading of the deleted flag so that it picks up any changes.

Notw we need a value on the stack because the object might get
freed and we don't want to access a hanging pointer.

Signed-off-by: Charles Manning <cdhmanning@gmail.com>
13 years agoyaffs Add another test script
Charles Manning [Fri, 7 May 2010 03:24:51 +0000 (15:24 +1200)]
yaffs Add another test script

Signed-off-by: Charles Manning <cdhmanning@gmail.com>
13 years agoMerge branch 'master' of ssh://www.aleph1.co.uk/home/aleph1/git/yaffs2
Charles Manning [Thu, 6 May 2010 22:08:22 +0000 (10:08 +1200)]
Merge branch 'master' of ssh://aleph1.co.uk/home/aleph1/git/yaffs2

13 years agoyaffs Move docs to other repository
Charles Manning [Thu, 6 May 2010 22:06:24 +0000 (10:06 +1200)]
yaffs Move docs to other repository

13 years agoyaffs Clean up exit from plot script
Charles Manning [Sun, 2 May 2010 21:56:20 +0000 (09:56 +1200)]
yaffs Clean up exit from plot script

The plot script now cleans up properly after a control-C.

Signed-off-by: Charles Manning <cdhmanning@gmail.com>
13 years agoyaffs: Add yaffs direct pdf
Charles Manning [Thu, 29 Apr 2010 21:10:26 +0000 (09:10 +1200)]
yaffs: Add yaffs direct pdf

Makes it easier for users to access docs.

Signed-off-by: Charles Manning <cdhmanning@gmail.com>
13 years agoyaffs: Improve debug chunk erased checking, change refreshPeriod
Charles Manning [Thu, 29 Apr 2010 01:40:28 +0000 (13:40 +1200)]
yaffs: Improve debug chunk erased checking, change refreshPeriod

Normalise macro to YAFFS_CONFIG_ALWAYS_CHECK_CHUNK_ERASED.
This reduces performance so output kernel message warning this is enabled.

Change refreshPeriod to make it much slower.

Signed-off-by: Charles Manning <cdhmanning@gmail.com>