+* The tests in tests/ don't apply the grading patches.
+
+* We need better and more example programs.
+
+ - Need an mmap example program as a replacement for the crappy mmap FAQ
+ question.
+
+ - How about `diff' and `cmp' programs?
+
+* Make it clear that the students own their code, because there was some
+ confusion on that point.
+
+* Threads:
+
+ - join-invalid doesn't compile if tid_t is not scalar type.
+
+ - mlfqs tests suck. They aren't even correct, e.g. the amarv
+ submission from win0405 is graded incorrectly.
+
+* Userprog project:
+
+ - Don't emphasize that stuff needs to be copied from user space to
+ kernel space. Instead, emphasize validation and suggest that
+ copying is a common solution and that it will be necessary in
+ project 3 and in real OSes. Also revise the grading criteria to
+ match.
+
+ - Move `join' implementation here, from `threads' project, to help
+ normalize the project difficulties.
+
+ - The semantics of the join system call should change so that it
+ only returns the exit code once.
+
+ - Mark read-only pages as actually read-only in the page table. Or,
+ since this was consistently rated as the easiest project by the
+ students, require them to do it.
+
+ - Don't provide per-process pagedir implementation but only
+ single-process implementation and require students to implement
+ the separation? This project was rated as the easiest after all.
+ Alternately we could just remove the synchronization on pid
+ selection and check that students fix it.