Get rid of unnecessary barrier. Improve comment.
[pintos-anon] / grading / vm / page-merge-seq.c
index b451306d4f64be6631f303ad35d61208b2e6ea8a..34d14f66cb49238cd03aaad21731fce9a66a727c 100644 (file)
@@ -5,9 +5,12 @@
 #else
 #include "posix-compat.h"
 #endif
-#include "arc4.h"
+#include "../lib/arc4.h"
 
-#define CHUNK_SIZE (63 * 1024)                  /* Max file size. */
+/* This is the max file size for an older version of the Pintos
+   file system that had 126 direct blocks each pointing to a
+   single disk sector.  We could raise it now. */
+#define CHUNK_SIZE (126 * 512)
 #define CHUNK_CNT 16                            /* Number of chunks. */
 #define DATA_SIZE (CHUNK_CNT * CHUNK_SIZE)      /* Buffer size. */
 
@@ -32,7 +35,7 @@ init (void)
 
 /* Sort each chunk of buf1 using a subprocess. */
 static void
-sort (void)
+sort_chunks (void)
 {
   size_t i;
 
@@ -55,15 +58,15 @@ sort (void)
       close (fd);
 
       /* Sort with subprocess. */
-      pid_t child = exec ("child-sort");
+      pid_t child = exec ("child-sort buffer");
       if (child == -1) 
         {
           printf ("(page-merge-seq) exec() failed\n");
           exit (1);
         }
-      if (join (child) != 123) 
+      if (wait (child) != 123) 
         {
-          printf ("(page-merge-seq) join(exec()) returned bad value\n");
+          printf ("(page-merge-seq) wait(exec()) returned bad value\n");
           exit (1);
         }
 
@@ -147,7 +150,7 @@ main (void)
 {
   printf ("(page-merge-seq) begin\n");
   init ();
-  sort ();
+  sort_chunks ();
   merge ();
   verify ();
   printf ("(page-merge-seq) end\n");