Get rid of unnecessary barrier. Improve comment.
[pintos-anon] / grading / filesys / tests.txt
index 9f5ad130230edc3ccaa74026487fec55a3022a2e..5818cac7891db4ece606e2aa6a3a7ced14d831bf 100644 (file)
@@ -1,57 +1,57 @@
 CORRECTNESS [[total]]
 ---------------------
 
-Small files (< 63 kB)
-  sm-create: create small file, verify initialization to zeros
-  sm-full: write small file in single system call, reread to verify
-  sm-seq-block: write small file one block at a time, reread to verify
-  sm-seq-random: write small file a random amount at a time, reread to verify
-  sm-random: write small file randomly, reread randomly to verify
+Small files (<= 63 kB)
+  -1 sm-create: create small file, verify initialization to zeros
+  -1 sm-full: write small file in single system call, reread to verify
+  -1 sm-seq-block: write small file one block at a time, reread to verify
+  -1 sm-seq-random: write small file a random amount at a time, reread & verify
+  -1 sm-random: write small file randomly, reread randomly to verify
 Score: /5
 
-Large files (>= 63 kB)
-  lg-create: create large file, verify initialization to zeros
-  lg-full: write large file in single system call, reread to verify
-  lg-seq-block: write large file one block at a time, reread to verify
-  lg-seq-random: write large file a random amount at a time, reread to verify
-  lg-random: write large file randomly, reread randomly to verify
-Score: /
+Large files (> 63 kB)
+  -1 lg-create: create large file, verify initialization to zeros
+  -1 lg-full: write large file in single system call, reread to verify
+  -1 lg-seq-block: write large file one block at a time, reread to verify
+  -1 lg-seq-random: write large file a random amount at a time, reread & verify
+  -1 lg-random: write large file randomly, reread randomly to verify
+Score: /5
 
 File growth
-  grow-create: create empty file, verify
-  grow-seq-sm: extend empty file sequentially to small size, verify
-  grow-seq-lg: extend empty file sequentially to large size, verify
-  grow-file-size: filesize must return proper value as file grows
-  grow-tell: tell must return proper value as file grows
-  grow-sparse: create empty file, seek to 128 kB, write byte, verify zeroing
-  grow-root-sm: create 20 small files in root directory
-  grow-root-lg: create 50 small files in root directory
-  grow-dir-lg: create subdirectory, create 50 small files in it
-  grow-two-files: growing two files alternately must work
-Score: /
+  -1 grow-create: create empty file, verify
+  -1 grow-seq-sm: extend empty file sequentially to small size, verify
+  -1 grow-seq-lg: extend empty file sequentially to large size, verify
+  -1 grow-file-size: filesize must return proper value as file grows
+  -1 grow-tell: tell must return proper value as file grows
+  -1 grow-sparse: create empty file, seek past 64 kB, write byte, verify zeros
+  -1 grow-too-big: create empty file, seek past 2 GB, write byte, can't crash
+  -1 grow-root-sm: create 20 small files in root directory
+  -1 grow-root-lg: create 50 small files in root directory
+  -1 grow-dir-lg: create subdirectory, create 50 small files in it
+  -1 grow-two-files: growing two files alternately must work
+Score: /11
 
 Subdirectories and file management
-  dir-mkdir: create directory and chdir into it
-  dir-rmdir: create directory, remove directory, chdir into it must now fail
-  dir-mk-vine: create deep chain of directories
-  dir-rm-vine: create and remove deep chain of directories
-  dir-mk-tree: create wide, deep directory tree
-  dir-rm-tree: create and remove wide, deep directory tree
-  dir-rel-mkdir: mkdir /a, chdir /a, mkdir b, chdir b, create /a/b/c, open c
-  dir-rel-open: mkdir /a, mkdir /a/b, create /a/b/c, chdir /a, open b/c
-  dir-rel-rmdir: mkdir a, mkdir /a/b, chdir a, rmdir b
-  dir-rel-remove: mkdir a, create /a/b, chdir a, remove b
-  dir-abs-mkdir: mkdir /a, chdir /a, mkdir /b, create /b/c, chdir /b, open c
-  dir-lsdir: lsdir must work
-  dir-rm-cwd: removing current directory must not crash
-  dir-rm-cwd-cd: if current directory removed then cd'ing to it must fail
-  dir-rm-parent: removing current directory and then its parent must not crash
-  dir-open: if directories can be opened as file, then writing them must fail
-Score: /
+  -1 dir-mkdir: mkdir a, create a/b, chdir a, open b
+  -1 dir-rmdir: create directory, remove directory, chdir into it must now fail
+  -1 dir-mk-vine: create deep chain of directories, create & check files inside
+  -1 dir-rm-vine: create and remove deep chain of directories
+  -1 dir-mk-tree: create wide, deep directory tree, create & check files in it
+  -1 dir-rm-tree: create and remove wide, deep directory tree
+  -1 dir-lsdir: lsdir must work
+  -1 dir-rm-cwd: removing current directory must not crash
+  -1 dir-rm-cwd-cd: if current directory removable, then cd'ing to it must fail
+  -1 dir-rm-parent: removing current directory and then its parent can't crash
+  -1 dir-rm-root: must not be able to remove root directory
+  -1 dir-over-file: creating a directory named after an existing file must fail
+  -1 dir-under-file: creating file named after existing directory must fail
+  -1 dir-empty-name: creating file named after the empty string must fail
+  -1 dir-open: if directories openable as files, writing them must fail
+Score: /15
 
 Synchronization
-  syn-remove: read and write deleted file
-  syn-read: one process writes file then many read it
-  syn-write: many processes write different parts of file, then verify
-  syn-rw: one process extends file sequentially as many read it sequentially
-Score: /
+  -1 syn-remove: read and write deleted file
+  -1 syn-read: one process writes file then many read it
+  -1 syn-write: many processes write different parts of file, then verify
+  -1 syn-rw: one process extends file sequentially as many read it sequentially
+Score: /4