Frans Kaashoek 
								
							 
						 
						
							
							
							
							
								
							
							
								49db5119e9 
								
							 
						 
						
							
							
								
								x  
							
							
							
						 
						
							2019-07-24 09:06:49 -04:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									Frans Kaashoek 
								
							 
						 
						
							
							
							
							
								
							
							
								26ce97fc76 
								
							 
						 
						
							
							
								
								One more  
							
							
							
						 
						
							2019-07-24 09:06:30 -04:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									Frans Kaashoek 
								
							 
						 
						
							
							
							
							
								
							
							
								e627608810 
								
							 
						 
						
							
							
								
								Delete a few other no-longer relevant files  
							
							
							
						 
						
							2019-07-24 09:05:05 -04:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									Frans Kaashoek 
								
							 
						 
						
							
							
							
							
								
							
							
								6f3a441c10 
								
							 
						 
						
							
							
								
								Remove a few no longer relevant files  
							
							
							
						 
						
							2019-07-24 08:59:47 -04:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									Frans Kaashoek 
								
							 
						 
						
							
							
							
							
								
							
							
								dfc2cf9123 
								
							 
						 
						
							
							
								
								add rtm's cow lab  
							
							
							
						 
						
							2019-07-24 08:55:41 -04:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									Frans Kaashoek 
								
							 
						 
						
							
							
							
							
								
							
							
								a41365faa3 
								
							 
						 
						
							
							
								
								Add relevant docs to repo  
							
							
							
						 
						
							2019-07-24 08:38:41 -04:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									Frans Kaashoek 
								
							 
						 
						
							
							
							
							
								
							
							
								0387e2156f 
								
							 
						 
						
							
							
								
								Add a few sbrktest for lazy allocatioin lab  
							
							
							
						 
						
							2019-07-24 08:37:43 -04:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									Robert Morris 
								
							 
						 
						
							
							
							
							
								
							
							
								936afc6e1a 
								
							 
						 
						
							
							
								
								mstart -> start  
							
							
							
						 
						
							2019-07-23 14:31:12 -04:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									Robert Morris 
								
							 
						 
						
							
							
							
							
								
							
							
								54178ad94d 
								
							 
						 
						
							
							
								
								simplify kernel mapping calls  
							
							
							
						 
						
							2019-07-23 12:17:17 -04:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									Robert Morris 
								
							 
						 
						
							
							
							
							
								
							
							
								55bc96d419 
								
							 
						 
						
							
							
								
								a few core -> CPU  
							
							... 
							
							
							
							get rid of PDF generating support 
							
						 
						
							2019-07-23 11:14:10 -04:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									Frans Kaashoek 
								
							 
						 
						
							
							
							
							
								
							
							
								b8a31c494c 
								
							 
						 
						
							
							
								
								one more TRAMPOLINE  
							
							
							
						 
						
							2019-07-23 07:30:23 -04:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									Frans Kaashoek 
								
							 
						 
						
							
							
							
							
								
							
							
								6c78af4a57 
								
							 
						 
						
							
							
								
								fix mapkstack  
							
							
							
						 
						
							2019-07-22 20:58:15 -04:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									Frans Kaashoek 
								
							 
						 
						
							
							
							
							
								
							
							
								62091abae9 
								
							 
						 
						
							
							
								
								Test whether writing below stack fails  
							
							
							
						 
						
							2019-07-22 18:08:52 -04:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									Frans Kaashoek 
								
							 
						 
						
							
							
							
							
								
							
							
								b2e9c8eea5 
								
							 
						 
						
							
							
								
								Clear U bit for second stack page so that it functions as a guard page  
							
							
							
						 
						
							2019-07-22 15:38:08 -04:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									Robert Morris 
								
							 
						 
						
							
							
							
							
								
							
							
								38b430687c 
								
							 
						 
						
							
							
								
								nit  
							
							
							
						 
						
							2019-07-22 15:04:07 -04:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									Robert Morris 
								
							 
						 
						
							
							
							
							
								
							
							
								6b379e4707 
								
							 
						 
						
							
							
								
								-MD and TRAPFRAME  
							
							
							
						 
						
							2019-07-22 14:54:40 -04:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									Frans Kaashoek 
								
							 
						 
						
							
							
							
							
								
							
							
								5eab649255 
								
							 
						 
						
							
							
								
								Allocate 2 pages per proc, with the top one unmapped.  
							
							... 
							
							
							
							The page below the last proc is unmapped by default (because the
kernel doesn't map anything right below the kernel stacks). 
							
						 
						
							2019-07-22 14:30:45 -04:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									Frans Kaashoek 
								
							 
						 
						
							
							
							
							
								
							
							
								c5d48db045 
								
							 
						 
						
							
							
								
								Merge branch 'riscv-kstack' into riscv  
							
							
							
						 
						
							2019-07-22 13:32:33 -04:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									Robert Morris 
								
							 
						 
						
							
							
							
							
								
							
							
								328204d9cc 
								
							 
						 
						
							
							
								
								not much  
							
							
							
						 
						
							2019-07-20 18:51:31 -04:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									Robert Morris 
								
							 
						 
						
							
							
							
							
								
							
							
								06e49a58dc 
								
							 
						 
						
							
							
								
								pi for pipe, rather than p, to avoid confusion with proc's p->lock  
							
							
							
						 
						
							2019-07-20 17:07:20 -04:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									Robert Morris 
								
							 
						 
						
							
							
							
							
								
							
							
								3333665ab6 
								
							 
						 
						
							
							
								
								not much  
							
							
							
						 
						
							2019-07-20 10:17:26 -04:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									Robert Morris 
								
							 
						 
						
							
							
							
							
								
							
							
								2418ac380c 
								
							 
						 
						
							
							
								
								it's not clear that the release will always enable interrupts  
							
							
							
						 
						
							2019-07-19 13:27:48 -04:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									Frans Kaashoek 
								
							 
						 
						
							
							
							
							
								
							
							
								06109901c9 
								
							 
						 
						
							
							
								
								x  
							
							
							
						 
						
							2019-07-19 11:27:02 -04:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									Robert Morris 
								
							 
						 
						
							
							
							
							
								
							
							
								dbd729b32d 
								
							 
						 
						
							
							
								
								with per-proc locks, we don't need the intr_on() inside the loop.  
							
							
							
						 
						
							2019-07-19 10:20:02 -04:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									Robert Morris 
								
							 
						 
						
							
							
							
							
								
							
							
								32168df609 
								
							 
						 
						
							
							
								
								no need to save/restore 14  
							
							
							
						 
						
							2019-07-19 09:02:15 -04:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									Frans Kaashoek 
								
							 
						 
						
							
							
							
							
								
							
							
								9156632701 
								
							 
						 
						
							
							
								
								One way of supporting a guard page below kstack: allocate kstacks in  
							
							... 
							
							
							
							procinit() and map them high up (below TRAMPOLNE) with an empty
mapping below each stack.  Never free a kernel stack.
Another way would be to allocate and map them dynamically, but then we
need to reload page table when switching processes in scheduler()
and/or have a kernel pagetable per proc (if we want k->stack to be the
same virtual address in each process).
One gotcha: kernel addresses are not equal to physical addresses for
stack addresses.  A stack address must be translated if we need its
physical address (e.g., virtio passes a stack address to the disk). 
							
						 
						
							2019-07-19 08:38:51 -04:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									Frans Kaashoek 
								
							 
						 
						
							
							
							
							
								
							
							
								b924e44f06 
								
							 
						 
						
							
							
								
								Merge branch 'riscv' of g.csail.mit.edu:xv6-dev into riscv  
							
							
							
						 
						
							2019-07-17 05:53:47 -04:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									Frans Kaashoek 
								
							 
						 
						
							
							
							
							
								
							
							
								ce53416f49 
								
							 
						 
						
							
							
								
								Delete x86 comment  
							
							
							
						 
						
							2019-07-17 05:53:34 -04:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									Robert Morris 
								
							 
						 
						
							
							
							
							
								
							
							
								ebc3937209 
								
							 
						 
						
							
							
								
								conservatively call sfence.vma before every satp load.  
							
							
							
						 
						
							2019-07-16 17:02:21 -04:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									Robert Morris 
								
							 
						 
						
							
							
							
							
								
							
							
								6bbc2b2245 
								
							 
						 
						
							
							
								
								cosmetic changes  
							
							
							
						 
						
							2019-07-11 10:38:56 -04:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									Robert Morris 
								
							 
						 
						
							
							
							
							
								
							
							
								7797a38423 
								
							 
						 
						
							
							
								
								another test, to help with locking exercises  
							
							
							
						 
						
							2019-07-11 05:41:59 -04:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									Robert Morris 
								
							 
						 
						
							
							
							
							
								
							
							
								4bc900e78b 
								
							 
						 
						
							
							
								
								nits  
							
							
							
						 
						
							2019-07-10 14:54:34 -04:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									Robert Morris 
								
							 
						 
						
							
							
							
							
								
							
							
								e6addf25bb 
								
							 
						 
						
							
							
								
								feeble attempt at build instructions  
							
							
							
						 
						
							2019-07-10 10:30:33 -04:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									Robert Morris 
								
							 
						 
						
							
							
							
							
								
							
							
								061e3be6f8 
								
							 
						 
						
							
							
								
								more comment cleanup  
							
							
							
						 
						
							2019-07-10 10:13:08 -04:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									Robert Morris 
								
							 
						 
						
							
							
							
							
								
							
							
								c0266a877a 
								
							 
						 
						
							
							
								
								document which proc fields are protected by p->lock  
							
							
							
						 
						
							2019-07-10 09:28:00 -04:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									Robert Morris 
								
							 
						 
						
							
							
							
							
								
							
							
								5eb1685700 
								
							 
						 
						
							
							
								
								have kill() lock before looking at p->pid  
							
							... 
							
							
							
							document wait()'s use of np->parent w/o holding lock. 
							
						 
						
							2019-07-10 09:24:50 -04:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									Robert Morris 
								
							 
						 
						
							
							
							
							
								
							
							
								9981bb2270 
								
							 
						 
						
							
							
								
								tweak some comments.  
							
							
							
						 
						
							2019-07-10 08:57:51 -04:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									Frans Kaashoek 
								
							 
						 
						
							
							
							
							
								
							
							
								2f22a3ed6a 
								
							 
						 
						
							
							
								
								Merge branch 'riscv-proc' into riscv  
							
							
							
						 
						
							2019-07-08 15:50:06 -04:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									Robert Morris 
								
							 
						 
						
							
							
							
							
								
							
							
								60ed537427 
								
							 
						 
						
							
							
								
								Merge branch 'riscv-proc' of g.csail.mit.edu:xv6-dev into riscv-proc  
							
							
							
						 
						
							2019-07-08 11:11:29 -04:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									Robert Morris 
								
							 
						 
						
							
							
							
							
								
							
							
								9d34838b4f 
								
							 
						 
						
							
							
								
								holding p->lock all the way through state=RUNNABLE means we don't need EMBRYO  
							
							
							
						 
						
							2019-07-08 11:11:00 -04:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									Frans Kaashoek 
								
							 
						 
						
							
							
							
							
								
							
							
								adcc612901 
								
							 
						 
						
							
							
								
								Update runoff list for producing xv6.pdf  
							
							
							
						 
						
							2019-07-08 08:50:55 -04:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									Robert Morris 
								
							 
						 
						
							
							
							
							
								
							
							
								db72f3108f 
								
							 
						 
						
							
							
								
								eliminate ptable. ptable.lock -> pid_lock.  
							
							
							
						 
						
							2019-07-07 15:20:13 -04:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									Robert Morris 
								
							 
						 
						
							
							
							
							
								
							
							
								4ce3a5fa21 
								
							 
						 
						
							
							
								
								nits  
							
							
							
						 
						
							2019-07-07 14:57:16 -04:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									Robert Morris 
								
							 
						 
						
							
							
							
							
								
							
							
								c4f6a241cd 
								
							 
						 
						
							
							
								
								avoid a double-lock of initproc->lock if child of init is reparenting  
							
							
							
						 
						
							2019-07-07 07:03:28 -04:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									Robert Morris 
								
							 
						 
						
							
							
							
							
								
							
							
								7114bf43ed 
								
							 
						 
						
							
							
								
								Merge branch 'riscv-proc' of g.csail.mit.edu:xv6-dev into riscv-proc  
							
							
							
						 
						
							2019-07-07 06:39:58 -04:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									Robert Morris 
								
							 
						 
						
							
							
							
							
								
							
							
								62313be582 
								
							 
						 
						
							
							
								
								another fork test  
							
							
							
						 
						
							2019-07-07 06:39:31 -04:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									Frans Kaashoek 
								
							 
						 
						
							
							
							
							
								
							
							
								dabbc348bc 
								
							 
						 
						
							
							
								
								Maybe fix two races identified by rtm (thx!):  
							
							... 
							
							
							
							- during exit(), hold p's parent lock and p's lock across all changes
to p and its parent (e.g., reparenting and wakeup1).  the lock
ordering between concurrent exits of children, parent, and great
parent might work out because processes form a tree.
- in wakeup1() test and set p->state atomically by asking caller to
have p locked.
a correctness proof would be desirable. 
							
						 
						
							2019-07-06 16:38:41 -04:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									Robert Morris 
								
							 
						 
						
							
							
							
							
								
							
							
								75b0c6fc91 
								
							 
						 
						
							
							
								
								back-port fork/exit/exit tests to xv6-riscv  
							
							
							
						 
						
							2019-07-05 12:33:26 -04:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									Robert Morris 
								
							 
						 
						
							
							
							
							
								
							
							
								be88befed7 
								
							 
						 
						
							
							
								
								two exit/exit tests  
							
							
							
						 
						
							2019-07-05 11:44:51 -04:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									Frans Kaashoek 
								
							 
						 
						
							
							
							
							
								
							
							
								fab5e7c1de 
								
							 
						 
						
							
							
								
								Make size in stat.h be a uint64  
							
							... 
							
							
							
							Supporting print long using %l (a bit of cheat)
Modify ls to print size using %l
We should probably update size in inode too. 
							
						 
						
							2019-07-04 08:57:23 -04:00