yaffs2.git
9 years agoyaffs trying to recreate timothy_tests after I deleated them.
Timothy Manning [Thu, 28 Oct 2010 00:06:41 +0000 (13:06 +1300)]
yaffs trying to recreate timothy_tests after I deleated them.
Signed-off-by: Timothy Manning <tfhmanning@gmail.com>
9 years agoMerge branch 'master' of ssh://www.aleph1.co.uk/home/aleph1/git/yaffs2
Charles Manning [Wed, 3 Nov 2010 03:21:38 +0000 (16:21 +1300)]
Merge branch 'master' of ssh://aleph1.co.uk/home/aleph1/git/yaffs2

9 years agoyaffs: Switch from semaphores to mutexes
Charles Manning [Wed, 3 Nov 2010 03:01:12 +0000 (16:01 +1300)]
yaffs: Switch from semaphores to mutexes

Mutex is faster and init_MUTEX has been deprecated, so we'll just switch
to mutexes.

Signed-off-by: Charles Manning <cdhmanning@gmail.com>
9 years agoyaffs: Redo Lindent
Charles Manning [Wed, 3 Nov 2010 02:02:10 +0000 (15:02 +1300)]
yaffs: Redo Lindent

Only applies to Linux files.

Signed-off-by: Charles Manning <cdhmanning@gmail.com>
9 years agoyaffs: more clean up
Charles Manning [Wed, 3 Nov 2010 01:53:25 +0000 (14:53 +1300)]
yaffs: more clean up

Signed-off-by: Charles Manning <cdhmanning@gmail.com>
9 years agoyaffs: More clean up
Charles Manning [Wed, 3 Nov 2010 01:04:02 +0000 (14:04 +1300)]
yaffs: More clean up

Signed-off-by: Charles Manning <cdhmanning@gmail.com>
9 years agoyaffs: More clean up.
Charles Manning [Tue, 2 Nov 2010 22:45:09 +0000 (11:45 +1300)]
yaffs: More clean up.

Signed-off-by: Charles Manning <cdhmanning@gmail.com>
9 years agoyaffs: More clean up
Charles Manning [Tue, 2 Nov 2010 02:16:48 +0000 (15:16 +1300)]
yaffs: More clean up

Signed-off-by: Charles Manning <cdhmanning@gmail.com>
9 years agoyaffs: More clean up
Charles Manning [Tue, 2 Nov 2010 00:39:42 +0000 (13:39 +1300)]
yaffs: More clean up

Signed-off-by: Charles Manning <cdhmanning@gmail.com>
9 years agoyaffs: More clean up
Charles Manning [Mon, 1 Nov 2010 22:57:35 +0000 (11:57 +1300)]
yaffs: More clean up

Signed-off-by: Charles Manning <cdhmanning@gmail.com>
9 years agoyaffs: Change __uxx types to uxx
Charles Manning [Mon, 1 Nov 2010 19:04:32 +0000 (08:04 +1300)]
yaffs: Change __uxx types to uxx

__u32 -> u32 and such.

Signed-off-by: Charles Manning <cdhmanning@gmail.com>
9 years agoyaffs: More name changes
Charles Manning [Mon, 1 Nov 2010 18:56:43 +0000 (07:56 +1300)]
yaffs: More name changes

Signed-off-by: Charles Manning <cdhmanning@gmail.com>
9 years agoyaffs direct: Make trace access functions public
Charles Manning [Mon, 1 Nov 2010 04:17:37 +0000 (17:17 +1300)]
yaffs direct: Make trace access functions public

Signed-off-by: Charles Manning <cdhmanning@gmail.com>
9 years agoyaffs direct: Handle ENOSPC error on open
Charles Manning [Mon, 1 Nov 2010 00:40:52 +0000 (13:40 +1300)]
yaffs direct: Handle ENOSPC error on open

Fix up handling of ENOSPC  on open creating a file.

Signed-off-by: Charles Manning <cdhmanning@gmail.com>
9 years agoyaffs direct: Improve error reporting for yaffs_lseek
Charles Manning [Sun, 31 Oct 2010 23:32:29 +0000 (12:32 +1300)]
yaffs direct: Improve error reporting for yaffs_lseek

Some error paths lacked proper error codes.

Signed-off-by: Charles Manning <cdhmanning@gmail.com>
9 years agoyaffs direct: Add proper error handler for too many files open
Charles Manning [Sun, 31 Oct 2010 22:06:56 +0000 (11:06 +1300)]
yaffs direct: Add proper error handler for too many files open

If you open too many files then you get -ENFILE.

Signed-off-by: Charles Manning <cdhmanning@gmail.com>
9 years agoMerge branch 'timothy'
Timothy Manning [Thu, 28 Oct 2010 02:05:47 +0000 (15:05 +1300)]
Merge branch 'timothy'

9 years agoyaffs removed direct/timothy_tests from git and added a convert error_code_str()...
Timothy Manning [Wed, 27 Oct 2010 23:43:52 +0000 (12:43 +1300)]
yaffs removed direct/timothy_tests from git and added a convert error_code_str() function for python and c.

Signed-off-by: Timothy Manning <tfhmanning@gmail.com>
9 years agoyaffs: Fix some 64-bit issues linux-mainline-rc-01
Charles Manning [Wed, 27 Oct 2010 02:15:00 +0000 (15:15 +1300)]
yaffs: Fix some 64-bit issues

Not previously compiling cleanly for 64-bit.

Signed-off-by: Charles Manning <cdhmanning@gmail.com>
9 years agoMerge branch 'master' of ssh://www.aleph1.co.uk/home/aleph1/git/yaffs2
Charles Manning [Wed, 27 Oct 2010 01:44:57 +0000 (14:44 +1300)]
Merge branch 'master' of ssh://aleph1.co.uk/home/aleph1/git/yaffs2

9 years agoyaffs Further name changes and file reorganisation
Charles Manning [Wed, 27 Oct 2010 01:43:12 +0000 (14:43 +1300)]
yaffs Further name changes and file reorganisation

Signed-off-by: Charles Manning <cdhmanning@gmail.com>
9 years agoyaffs improvements on timothy_tests.
Timothy Manning [Wed, 27 Oct 2010 01:27:36 +0000 (14:27 +1300)]
yaffs improvements on timothy_tests.
Signed-off-by: Timothy Manning <tfhmanning@gmail.com>
9 years agoMerge branch 'timothy'
Timothy Manning [Tue, 26 Oct 2010 04:12:06 +0000 (17:12 +1300)]
Merge branch 'timothy'

9 years agoyaffs Commiting some more yaffs tests showing bugs in yaffs.
Timothy Manning [Tue, 26 Oct 2010 04:04:39 +0000 (17:04 +1300)]
yaffs Commiting some more yaffs tests showing bugs in yaffs.
Signed-off-by: Timothy Manning <tfhmanning@gmail.com>
9 years agoyaffs Restructuring timothy_tests folder.
Timothy Manning [Mon, 25 Oct 2010 21:20:42 +0000 (10:20 +1300)]
yaffs Restructuring timothy_tests folder.

Signed-off-by: Timothy Manning <tfhmanning@gmail.com>
9 years agoyaffs fixing some bugs with basic-tests
Timothy Manning [Mon, 25 Oct 2010 20:38:38 +0000 (09:38 +1300)]
yaffs fixing some bugs with basic-tests
Signed-off-by: Timothy Manning <tfhmanning@gmail.com>
9 years agoyaffs Normalise copyright headers
Timothy Manning [Fri, 22 Oct 2010 04:18:24 +0000 (17:18 +1300)]
yaffs Normalise copyright headers

Some of the headers were not the right format.

Signed-off-by: Timothy Manning <tfhmanning@gmail.com>
9 years agoyaffs commiting changes to timothy_tests
Timothy Manning [Fri, 22 Oct 2010 02:45:59 +0000 (15:45 +1300)]
yaffs commiting changes to timothy_tests
Signed-off-by: Timothy Manning <tfhmanning@gmail.com>
9 years agoyaffs Working on timothy_tests and have updated yaffs_importer.py
Timothy Manning [Thu, 21 Oct 2010 23:38:35 +0000 (12:38 +1300)]
yaffs Working on timothy_tests and have updated yaffs_importer.py

yaffs_importer has had more command line options added.
see README_yaffs_import_py.txt for more infomation.
Signed-off-by: Timothy Manning <tfhmanning@gmail.com>
9 years agoyaffs working on the timothy_tests. just need to save the current state of the program.
Timothy Manning [Thu, 21 Oct 2010 20:26:31 +0000 (09:26 +1300)]
yaffs working on the timothy_tests. just need to save the current state of the program.
Signed-off-by: Timothy Manning <tfhmanning@gmail.com>
9 years agoyaffs: Merge branch 'python_play'
Timothy Manning [Wed, 20 Oct 2010 00:42:58 +0000 (13:42 +1300)]
yaffs: Merge branch 'python_play'

Fix conflict

9 years agoyaffs Commiting changes to yaffs_importer.py yaffs_browser.py and yaffs_tester.c
Timothy Manning [Wed, 20 Oct 2010 00:29:09 +0000 (13:29 +1300)]
yaffs Commiting changes to yaffs_importer.py yaffs_browser.py and yaffs_tester.c
Signed-off-by: Timothy Manning <tfhmanning@gmail.com>
9 years agoyaffs: Enable 64-bit building of python library
Charles Manning [Tue, 19 Oct 2010 23:39:57 +0000 (12:39 +1300)]
yaffs: Enable 64-bit building of python library

Needs the -fPIC flag.

Signed-off-by: Charles Manning <cdhmanning@gmail.com>
9 years agoyaffs Commiting yaffs_tester.c and coresponding files
Timothy Manning [Mon, 18 Oct 2010 03:54:46 +0000 (16:54 +1300)]
yaffs Commiting yaffs_tester.c and coresponding files

This file is located in yaffs2/direct/timothy_tests
This file isnt working yet.
Signed-off-by: Timothy Manning <tfhmanning@gmail.com>
9 years agoyaffs Updated the yaffs_importer README file
Timothy Manning [Mon, 18 Oct 2010 03:51:42 +0000 (16:51 +1300)]
yaffs Updated the yaffs_importer README file
Signed-off-by: Timothy Manning <tfhmanning@gmail.com>
9 years agoyaffs added a README for yaffs_importer.py in yaffs/direct/python
Timothy Manning [Mon, 18 Oct 2010 03:37:58 +0000 (16:37 +1300)]
yaffs added a README for yaffs_importer.py in yaffs/direct/python
Signed-off-by: Timothy Manning <tfhmanning@gmail.com>
9 years agoyaffs some more updates to yaffs_importer.py
Timothy Manning [Mon, 18 Oct 2010 02:59:18 +0000 (15:59 +1300)]
yaffs some more updates to yaffs_importer.py
Signed-off-by: Timothy Manning <tfhmanning@gmail.com>
9 years agoyaffs : Change the way yaffs direct handles permissions for open etc.
Charles Manning [Mon, 18 Oct 2010 00:37:40 +0000 (13:37 +1300)]
yaffs : Change the way yaffs direct handles permissions for open etc.

The previous code was convoluted and hid some obscure problems.

This refactoring is a lot easier to understand and maintain.

Signed-off-by: Charles Manning <cdhmanning@gmail.com>
9 years agoyaffs Made some changes to yaffs_importer.py
Timothy Manning [Sun, 17 Oct 2010 21:20:39 +0000 (10:20 +1300)]
yaffs Made some changes to yaffs_importer.py
Signed-off-by: Timothy Manning <tfhmanning@gmail.com>
9 years agoyaffs found a bug in the yaffs importer.
Timothy Manning [Fri, 15 Oct 2010 04:34:20 +0000 (17:34 +1300)]
yaffs found a bug in the yaffs importer.
Signed-off-by: Timothy Manning <tfhmanning@gmail.com>
9 years agoyaffs Chacing a bug in yaffs
Timothy Manning [Fri, 15 Oct 2010 03:44:15 +0000 (16:44 +1300)]
yaffs Chacing a bug in yaffs
Signed-off-by: Timothy Manning <tfhmanning@gmail.com>
9 years agoyaffs Add error retrieval function for yaffs direct testing
Timothy Manning [Fri, 15 Oct 2010 02:40:53 +0000 (15:40 +1300)]
yaffs Add error retrieval function for yaffs direct testing

Allows yaffs direct errors to be read in python.

Signed-off-by: Timothy Manning <tfhmanning@gmail.com>
9 years agoyaffs Yaffs importer is now working with command line arguments.
Timothy Manning [Fri, 15 Oct 2010 02:05:59 +0000 (15:05 +1300)]
yaffs Yaffs importer is now working with command line arguments.
Signed-off-by: Timothy Manning <tfhmanning@gmail.com>
9 years agoyaffs Yaffs importer now works with hardlinks and symlink.
Timothy Manning [Fri, 15 Oct 2010 00:07:34 +0000 (13:07 +1300)]
yaffs Yaffs importer now works with hardlinks and symlink.
Signed-off-by: Timothy Manning <tfhmanning@gmail.com>
9 years agoyaffs Improve layout of proc yaffs stats
Charles Manning [Wed, 13 Oct 2010 21:34:45 +0000 (10:34 +1300)]
yaffs Improve layout of proc yaffs stats

Signed-off-by: Charles Manning <cdhmanning@gmail.com>
9 years agoyaffs Modify Makefile to handle multi or single version variants
Charles Manning [Mon, 11 Oct 2010 22:54:30 +0000 (11:54 +1300)]
yaffs Modify Makefile to handle multi or single version variants

Signed-off-by: Charles Manning <cdhmanning@gmail.com>
9 years agoyaffs Merge branch 'namechange'
Charles Manning [Mon, 11 Oct 2010 22:35:05 +0000 (11:35 +1300)]
yaffs Merge branch 'namechange'

Merge in first set of yaffs name changes

Conflicts:
direct/python/yaffs_python_helper.c
direct/yaffsfs.c

Signed-off-by: Charles Manning <cdhmanning@gmail.com>
9 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>
9 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>
9 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>
9 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>
9 years agoMerge branch 'python_play'
Timothy Manning [Thu, 7 Oct 2010 22:07:38 +0000 (11:07 +1300)]
Merge branch 'python_play'

9 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>
9 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>
9 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>
9 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>
9 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>
9 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>
9 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>
9 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

9 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>
9 years agoyaffs Make more symbol changes
Charles Manning [Wed, 6 Oct 2010 22:10:58 +0000 (11:10 +1300)]
yaffs Make more symbol changes

Signed-off-by: Charles Manning <cdhmanning@gmail.com>
9 years agoyaffs More symbol changes
Charles Manning [Wed, 6 Oct 2010 02:55:06 +0000 (15:55 +1300)]
yaffs More symbol changes

Signed-off-by: Charles Manning <cdhmanning@gmail.com>
9 years agoyaffs First round of name changes
Charles Manning [Mon, 4 Oct 2010 21:13:50 +0000 (10:13 +1300)]
yaffs First round of name changes

Signed-off-by: Charles Manning <cdhmanning@gmail.com>
9 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>
9 years agoMerge branch 'python_play'
Timothy Manning [Wed, 6 Oct 2010 01:55:37 +0000 (14:55 +1300)]
Merge branch 'python_play'

9 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>
9 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>
9 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>
9 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>
9 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>
9 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>
9 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>
9 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>
9 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>
9 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>
9 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>
9 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>
9 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>
9 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>
9 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>
9 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>
9 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>
9 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>
9 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

9 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>
9 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>
9 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>
9 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>
9 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>
9 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>
9 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>
9 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>
9 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>
9 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>
9 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>
9 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>
9 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>
9 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>
9 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>