diff --git a/proc.h b/proc.h
index 192f8ffd1575a82b8618c2699d1dc282aa0c780c..ebf4f2d460cf54dae504aa17182ce528c7f32875 100644
--- a/proc.h
+++ b/proc.h
@@ -15,7 +15,9 @@
 // x86 convention is that the caller has saved them.
 // Contexts are stored at the bottom of the stack they
 // describe; the stack pointer is the address of the context.
-// The layout of the context must match the code in swtch.S.
+// The layout of the context matches the layout of the stack in swtch.S
+// at "Switch stacks" comment. Switch itself doesn't save eip explicitly,
+// but it is on the stack and allocproc() manipulates it.
 struct context {
   uint edi;
   uint esi;