yaffs More tests
[yaffs2.git] / direct / timothy_tests / quick_tests / current_bugs.txt
index be27d784c9e8b04395a30851334c2a8cacad8af5..63b277e242613ea79e992d087bef482abf352c4f 100644 (file)
@@ -3,43 +3,52 @@ Made by Timothy Manning <timothy@yaffs.net> on 08/11/2010
 
 
 Current BUGS 
-       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.
-       The ENODEV is the error which yaffs gives instead of ENOENT.
-       BBut the mount function should just return ENAMETOOLONG.
+       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 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).
+       Bug with lseeking to a very large size (size =100000000000000000000000000000000000000) without causing an error.
+       Should cause the error EINVAL.
 
-       Bug when trying to access a non-existing directory the error ENOENT is 
-       returned. It should be ENOTDIR.
 
-       Bug when trying to truncate a file in a non-existing directory. The error
-       returned is ENOENT it should be ENOTDIR.
+       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
 
-       Bug truncating a file to a size of -1 does not cause an error. 
 
+Current WARNINGS
        
-       Bug with opening a file with bad mode. yaffs_open has two modes which 
-       are passed into it. if the modes are set to 255 the open function 
-       does not report any errors. (Also need to try this with modes set to -1.)  
+       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
 
-       Bug with lseeking to a very large size (size =100000000000000000000000000000000000000) without causing an error.
-       Should cause the error EINVAL.
+       Functions which return ENOENT: access, stat
+       
 
 
-Current WARNINGS
-       
-       WARNING- truncating a file to a size greater than the maximum file size returns
-       EINVAL. In standard linux system the error EFBIG is returned. 
-       
-       WARNING- If yaffs is unmounted then most of yaffs' functions return ENODIR. 
-       some function return EBADF instead.
+       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.