Age | Commit message (Collapse) | Author | Files | Lines | |
---|---|---|---|---|---|
2011-08-29 | Revert "Introduce and use sleeplocks instead of BUSY flags" | Frans Kaashoek | 1 | -1/+0 | |
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 3a5fa7ed9020eaf8ab843a16d26db7393b2ec072. Conflicts: defs.h file.c file.h | |||||
2011-08-26 | Introduce and use sleeplocks instead of BUSY flags | Frans Kaashoek | 1 | -0/+1 | |
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-15 | avoid deadlock by calling begin_trans() before locking any inodes | Robert Morris | 1 | -4/+10 | |
2011-08-12 | log write() data | Robert Morris | 1 | -3/+27 | |
usertest for big write()s push begin_trans/commit_trans down into syscalls | |||||
2011-01-11 | make new code like old code | Russ Cox | 1 | -1/+1 | |
Variable declarations at top of function, separate from initialization. Use == 0 instead of ! for checking pointers. Consistent spacing around {, *, casts. Declare 0-parameter functions as (void) not (). Integer valued functions return -1 on failure, 0 on success. | |||||
2010-09-27 | copyout() copies data to a va in a pagetable, for exec() &c | Robert Morris | 1 | -1/+1 | |
usertest that passes too many arguments, break exec | |||||
2010-07-02 | Initial version of single-cpu xv6 with page tables | Frans Kaashoek | 1 | -3/+2 | |
2009-08-30 | assorted fixes: | Russ Cox | 1 | -9/+9 | |
* rename c/cp to cpu/proc * rename cpu.context to cpu.scheduler * fix some comments * formatting for printout | |||||
2009-08-08 | shuffle and tweak for formatting. | Russ Cox | 1 | -1/+0 | |
pdf has very good page breaks now. would be a good copy for fall 2009. | |||||
2009-07-11 | rearrangements and cleanup for text | Russ Cox | 1 | -35/+33 | |
2009-05-31 | simplify | rsc | 1 | -22/+13 | |
2008-10-17 | try harder to get directory refcounts right | kolya | 1 | -2/+8 | |
2008-10-16 | make mkdir crash-safer, as noticed by many students on midterm | kolya | 1 | -7/+11 | |
2007-09-27 | believe it or not, this was working | rsc | 1 | -6/+6 | |
the macro expansion of "char *cp;" turned into char *(curproc[cpu()]); which declares a dynamically sized array of char* called curproc. so then &cp == &(curproc[cpu()]) was actually a stack variable as "expected". it was one past the end of the array, but the implicit alloca allocated more than was necessary. do not tell me that making cp a #define was a bad idea. there are worse problems to fix. more on that later. | |||||
2007-08-28 | spaces around else for rtm | rsc | 1 | -1/+1 | |
2007-08-28 | more consistent spacing | rsc | 1 | -1/+1 | |
2007-08-28 | remove _ from pipe; be like file | rsc | 1 | -1/+1 | |
2007-08-27 | make code match comment | rsc | 1 | -1/+1 | |
2007-08-27 | make code match comment | rsc | 1 | -1/+1 | |
2007-08-27 | delete unnecessary #include lines | rsc | 1 | -7/+2 | |
2007-08-27 | oops | rsc | 1 | -0/+1 | |
2007-08-27 | nits | rsc | 1 | -17/+7 | |
2007-08-27 | fileincref -> filedup (consistent with idup) | rsc | 1 | -1/+1 | |
2007-08-24 | shuffle for formatting | rsc | 1 | -18/+19 | |
2007-08-24 | remove unused variable | rsc | 1 | -1/+1 | |
2007-08-24 | Remove struct uinode. | rsc | 1 | -52/+61 | |
Remove type arg to mknod (assume T_DEV). | |||||
2007-08-22 | PDF at http://am.lcs.mit.edu/~rsc/xv6.pdf | rsc | 1 | -103/+211 | |
Various changes made while offline. + bwrite sector argument is redundant; use b->sector. + reformatting of files for nicer PDF page breaks + distinguish between locked, unlocked inodes in type signatures + change FD_FILE to FD_INODE + move userinit (nee proc0init) to proc.c + move ROOTDEV to param.h + always parenthesize sizeof argument | |||||
2007-08-21 | ARGMAX -> MAXARGS | rsc | 1 | -3/+3 | |
2007-08-21 | Various cleanup: | rsc | 1 | -187/+32 | |
- Got rid of dummy proc[0]. Now proc[0] is init. - Added initcode.S to exec /init, so that /init is just a regular binary. - Moved exec out of sysfile to exec.c - Moved code dealing with fs guts (like struct inode) from sysfile.c to fs.c. Code dealing with system call arguments stays in sysfile.c - Refactored directory routines in fs.c; should be simpler. - Changed iget to return *unlocked* inode structure. This solves the lookup-then-use race in namei without introducing deadlocks. It also enabled getting rid of the dummy proc[0]. | |||||
2007-08-20 | checkpoint - simpler namei interface | rsc | 1 | -31/+36 | |
2007-08-10 | avoid assignments in declarations | rsc | 1 | -1/+1 | |
2007-08-10 | Make cp a magic symbol. | rsc | 1 | -6/+1 | |
2007-08-09 | oops | rsc | 1 | -1/+1 | |
2007-08-09 | try to use cp only for curproc[cpu()] | rsc | 1 | -11/+12 | |
2007-08-08 | save process name for debugging | rsc | 1 | -2/+8 | |
2006-09-07 | fix ide, pit interfaces | rsc | 1 | -1/+1 | |
2006-09-07 | fix pipe bug | rsc | 1 | -0/+2 | |
2006-09-07 | refactor syscall code | rsc | 1 | -186/+142 | |
2006-09-06 | wrap long lines | rsc | 1 | -2/+6 | |
2006-09-06 | fd_* => file_* | rsc | 1 | -13/+13 | |
2006-09-06 | fd.* -> file.* | rsc | 1 | -1/+1 | |
2006-09-06 | struct fd -> struct file | rsc | 1 | -19/+19 | |
2006-09-06 | split syscall.c into sysfile.c and sysproc.c | rsc | 1 | -0/+477 | |