Made by Timothy Manning <timothy@yaffs.net> on 08/11/2010
-Current BUGS AND WARNINGS
- bug with opening a file with a name of 1,000,000 char long with no errors.
- bug with unlinking a file with 1,000,000 get the error ENOENT but should be geting ENAMETOOLONG.
- bug with mounting a too long non-existant mount point is returning ENODEV. there are two errors here, ENOENT and ENAMETOOLONG.
- bug with mounting a non-existing mount point get the error ENODEV. should be getting ENOENT.
+Current BUGS
- bug when trying to use yaffs_access on an existing file with mode 255 the error returned is EACCES it should be EINVAL(note there is no quick test file yet).
+
- WARNING- If yaffs is unmounted then most functions return ENODIR.
+ Bug with truncating to a very large size. The yaffs_truncate function truncates the file to a massive size without any errors.
+ The function should return the error EINVAL.
+ Bug with lseeking to a very large size (size =100000000000000000000000000000000000000) without causing an error.
+ Should cause the error EINVAL.
+
+
+ Bug when writing a file. The writing to the file causes the file size to exceed the size of yaffs file system memory.
+ Output of test:
+ test_yaffs_write_big_file
+ AddrToChunk of offset -2147483648 gives chunk -1048576 start 0
+ AddrToChunk of offset -2147481600 gives chunk -1048575 start 0
+ AddrToChunk of offset -2147479552 gives chunk -1048574 start 0
+ AddrToChunk of offset -2147477504 gives chunk -1048573 start 0
+ AddrToChunk of offset -2147475456 gives chunk -1048572 start 0
+ AddrToChunk of offset -2147473408 gives chunk -1048571 start 0
+ AddrToChunk of offset -2147471360 gives chunk -1048570 start 0
+ AddrToChunk of offset -2147469312 gives chunk -1048569 start 0
+ AddrToChunk of offset -2147467264 gives chunk -1048568 start 0
+ AddrToChunk of offset -2147465216 gives chunk -1048567 start 0
+ wrote a large amount of text to a file.(which is a bad thing)
+ test: test_yaffs_write_big_file failed
+ yaffs_error code 0
+ error is : Unknown error code
+
+
+Current WARNINGS
+
+ WARNING- If yaffs is unmounted then most of yaffs' functions return ENODIR.
+ But some function return EBADF instead.
+ Functions which return ENOTDIR: open, close, access, unlink, lseek, write, read
+
+ Functions which return ENOENT: access, stat
+
+
+
+ WARNING-the function yaffs_open does not check the mode passed to it.
+ This means that yaffs open does not return EINVAL if a bad mode is passed to it.
+ However this causes the error EEXIST to happen instead, because both O_CREAT and O_EXCL flags are set.
+
+ WARNING- yaffs_open will work with either of the two mode set to 255.
+ However there are only 4 or 5 flags that can be set for each of the modes.
+ This means that the programmer may not be setting the flags properly.
+
+ WARNING- When mounting a non-existing mount point the error ENODEV is returned.
+ The quick tests have been altered to accommodate this error code.
+ With standard access function in linux the error returned is ENOENT.