Commit graph

1409 commits

Author SHA1 Message Date
Robert Morris 5e08357827 enterpgdir -> entrypgdir 2011-08-30 20:50:19 -04:00
Frans Kaashoek 1ddfbbb194 Revert "Introduce and use sleeplocks instead of BUSY flags"
My changes have a race with re-used bufs and the code doesn't seem to get shorter
Keep the changes that fixed ip->off race

This reverts commit 3a5fa7ed90.

Conflicts:

	defs.h
	file.c
	file.h
2011-08-29 17:18:40 -04:00
Austin Clements 22f7db5336 Renumber I_VALID since I_BUSY is gone 2011-08-29 16:14:44 -04:00
Austin Clements 920b7b44b5 dir-locals.el to set style in Emacs 2011-08-29 16:12:17 -04:00
Austin Clements a7061b4f97 Style nits; indentation and tabs 2011-08-29 16:12:01 -04:00
Frans Kaashoek 16f205b5c9 Merge branch 'master' of git+ssh://amsterdam.csail.mit.edu/home/am0/6.828/xv6 2011-08-26 10:10:37 -04:00
Frans Kaashoek 3a5fa7ed90 Introduce and use sleeplocks instead of BUSY flags
Remove I_BUSY, B_BUSY, and intrans defs and usages
One spinlock per buf to avoid ugly loop in bget
fix race in filewrite (don't update f->off after releasing lock)
2011-08-26 10:08:29 -04:00
Robert Morris 41911afa45 segment register -> segment descriptor 2011-08-26 06:47:13 -04:00
Frans Kaashoek 8a9b6dbd44 Make cross reference with text work 2011-08-25 14:39:09 -04:00
Frans Kaashoek 6f2327580f Eliminate USERTOP; no use for it. 2011-08-24 10:24:40 -04:00
Frans Kaashoek 194f8bf739 A comment 2011-08-22 20:07:18 -04:00
Frans Kaashoek d10d324e79 Remove sys_init syscall
Invoke initlog from forkret on first user process
2011-08-22 20:05:15 -04:00
Frans Kaashoek 39f8cc56d3 Merge branch 'master' of git+ssh://amsterdam.csail.mit.edu/home/am0/6.828/xv6 2011-08-21 21:14:42 -04:00
Frans Kaashoek 3682474f77 delete dead code 2011-08-21 21:14:29 -04:00
Robert Morris 327cc21fba make dirlookup and dirlink more similar 2011-08-19 13:30:57 -04:00
Frans Kaashoek cd3d739e6f bootloader reads into a physical address (not a virtual address) 2011-08-17 20:52:28 -04:00
Frans Kaashoek fa81545f1c Make elf proghdr fields match what objdump prints 2011-08-17 20:23:36 -04:00
Frans Kaashoek 5f069dcf2f Switch back to #define for PHYSTOP. Using the E820 to retrieve the memory map is too complicated (must be done in 16-bit real-mode, probably enlarged bootblock beyond 512 bytes, and a #define requires less explanation). 2011-08-16 20:23:17 -04:00
Frans Kaashoek c3dcf47966 Clean up memlayout.h
Get rid of last instances of linear address and "la"
Get ready for detecting physical memory dynamically
2011-08-16 15:47:22 -04:00
Frans Kaashoek 427958cb71 Update make clean 2011-08-15 20:32:04 -04:00
Frans Kaashoek eeea49e8d5 Update list of files to include in printout 2011-08-15 20:28:28 -04:00
Frans Kaashoek d9818bdd7d Make Austin happier
2011
2011-08-15 20:21:14 -04:00
Frans Kaashoek a4b213cf49 Avoid "boot" in xv6 2011-08-15 20:11:13 -04:00
Frans Kaashoek 9449646853 Use 4Mbyte pages during boot 2011-08-15 17:41:58 -04:00
Austin Clements 843eecfcd0 Only commit log to disk if something was written in to it.
Without this, every write to the console results in log writes.
2011-08-15 14:12:35 -04:00
Robert Morris 7f1718ca33 Merge branch 'master' of git+ssh://amsterdam.csail.mit.edu/home/am0/6.828/xv6 2011-08-15 12:44:41 -04:00
Robert Morris 5053dd6a6d avoid deadlock by calling begin_trans() before locking any inodes 2011-08-15 12:44:20 -04:00
Frans Kaashoek c60a3551c2 Separate more clearly bootloader from xv6 by renaming multiboot.S to entry.S etc.
Maybe the string boot shouldn't appear in xv6 code?
2011-08-15 12:02:59 -04:00
Frans Kaashoek c95ce31c59 Oops 2011-08-12 12:02:17 -04:00
Robert Morris e0d1ba0d74 Merge branch 'master' of git+ssh://amsterdam.csail.mit.edu/home/am0/6.828/xv6 2011-08-12 09:26:23 -04:00
Robert Morris 2e59046362 log write() data
usertest for big write()s
push begin_trans/commit_trans down into syscalls
2011-08-12 09:25:39 -04:00
Frans Kaashoek e577a62f0d Some comments 2011-08-12 07:31:52 -04:00
Frans Kaashoek bd71a45046 Make AP processors boot using bootpgdir
Remove device mapping from bootpgdir
Remove unnecessary vmenable
Set CPUS back to 2 in Makefile
Passes all usertests
2011-08-11 12:25:10 -04:00
Frans Kaashoek 673b739d31 One more low address 2011-08-09 23:22:48 -04:00
Frans Kaashoek 8a9933a200 Tiny bit of cleanup 2011-08-09 21:56:43 -04:00
Frans Kaashoek 22c73411ca Shorten boot assembly 2011-08-09 21:51:17 -04:00
Frans Kaashoek 5460667c9c x 2011-08-09 21:49:13 -04:00
Frans Kaashoek 832af025a3 Remove jmpkstack 2011-08-09 21:47:40 -04:00
Frans Kaashoek 66ba8079c7 Use static page table for boot, mapping first 4Mbyte; no more segment trick
Allocate proper kernel page table immediately in main using boot allocator
Remove pginit
Simplify address space layout a tiny bit
More to come (e.g., superpages to simplify static table)
2011-08-09 21:37:35 -04:00
Frans Kaashoek 3a03810643 Use kernel virtual addresses for BIOS memory, etc. 2011-08-09 21:33:59 -04:00
Frans Kaashoek b23d8329e7 Allow gas to use / as divide (instead of comment)
Maybe not necessary, but don't want to waste time figuring this out again
2011-08-09 16:09:15 -04:00
Frans Kaashoek a56c8d609b One definition of several macros and constants 2011-08-08 13:30:08 -04:00
Frans Kaashoek 11b7438b10 Speedup sbrk tst a bit (forking 100Mbyte processes is slow) 2011-08-08 09:20:29 -04:00
Frans Kaashoek 6479766334 Adjust sbrk test for large user address spaces
All tests pass
2011-08-07 23:03:48 -04:00
Frans Kaashoek 67d4254d15 oops 2011-08-07 12:30:34 -04:00
Frans Kaashoek 547c28fc1e Don't map IO space in the user part of the address space
Passes all tests now (but need to update usertests to allow for more than 640k)
2011-07-31 21:27:02 -04:00
Frans Kaashoek 9aa0337dc1 Map kernel high
Very important to give qemu memory through PHYSTOP :(
2011-07-29 07:31:27 -04:00
Frans Kaashoek dccb915282 Merge commit 'origin/master' into page 2011-07-27 20:49:45 -04:00
Frans Kaashoek 13a96baefc Dirt simple logging
Passes usertests and stressfs
Seems to recover correctly in a number of simple cases
2011-07-27 20:35:46 -04:00
Austin Clements 97657d703f Add -fno-omit-frame-pointer to compile flags.
At some point between gcc 4.4 and 4.6, omitting the frame pointer
became default if any -O is specified.  getcallerpcs relies on the
frame pointer, so bring it back.
2011-06-24 14:22:19 -04:00