#
0581c37b |
| 21-Mar-2019 |
Dan Cross <cross@gajendra.net> |
Removed unused `dirlookup` argument in `create`
The `off` argument to `dirlookup` is optional. It was not being used in the `dirlookup` call in `create`, so pass NULL instead and delete the unused
Removed unused `dirlookup` argument in `create`
The `off` argument to `dirlookup` is optional. It was not being used in the `dirlookup` call in `create`, so pass NULL instead and delete the unused local.
Signed-off-by: Dan Cross <cross@gajendra.net>
show more ...
|
Revision tags: xv6-rev11 |
|
#
fbb4c094 |
| 01-Feb-2017 |
Frans Kaashoek <kaashoek@mit.edu> |
Read curproc from cpu structure, but be careful because after a schedule event myproc() points to a different thread.
myproc(); sched(); myproc(); // this proc maybe different than the one
Read curproc from cpu structure, but be careful because after a schedule event myproc() points to a different thread.
myproc(); sched(); myproc(); // this proc maybe different than the one before sched
Thus, in a function that operates on one thread better to retrieve the current process once at the start of the function.
show more ...
|
#
abf847a0 |
| 31-Jan-2017 |
Frans Kaashoek <kaashoek@mit.edu> |
Start of an experiment to remove the use of gs for cpu local variables.
|
#
dec637bc |
| 12-Sep-2016 |
Frans Kaashoek <kaashoek@mit.edu> |
Replace I_BUSY with sleep locks
|
Revision tags: xv6-rev9 |
|
#
1ccb5a6f |
| 27-Sep-2015 |
Peter H. Froehlich <peter.hans.froehlich@gmail.com> |
Remove unused variable, nits.
|
Revision tags: xv6-rev8 |
|
#
71453f72 |
| 27-Aug-2014 |
Robert Morris <rtm@csail.mit.edu> |
a start at concurrent FS system calls
|
#
2c565472 |
| 04-Aug-2014 |
Robert Morris <rtm@csail.mit.edu> |
every iput() and namei() must be inside a transaction
|
Revision tags: xv6-rev7, osdi12-submit |
|
#
9d59eb01 |
| 18-Feb-2012 |
Austin Clements <amdragon@mit.edu> |
Make fetchint and fetchstr use proc instead of taking a struct proc
Previously, these were inconsistent: they used their struct proc argument for bounds checking, but always copied the argument from
Make fetchint and fetchstr use proc instead of taking a struct proc
Previously, these were inconsistent: they used their struct proc argument for bounds checking, but always copied the argument from the current address space (and hence the current process). Drop the struct proc argument and always use the current proc.
Suggested by Carmi Merimovich.
show more ...
|
#
12abb1a5 |
| 14-Oct-2011 |
Robert Morris <rtm@csail.mit.edu> |
don't let dirty blocks be evicted from cache!
|
Revision tags: xv6-rev6 |
|
#
4e015d81 |
| 02-Sep-2011 |
Austin Clements <amdragon@mit.edu> |
Shorten sys_unlink a little; create now fits in column
|
#
1ddfbbb1 |
| 29-Aug-2011 |
Frans Kaashoek <kaashoek@26-4-190.dynamic.csail.mit.edu> |
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 co
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 3a5fa7ed9020eaf8ab843a16d26db7393b2ec072.
Conflicts:
defs.h file.c file.h
show more ...
|
#
3a5fa7ed |
| 26-Aug-2011 |
Frans Kaashoek <kaashoek@Frans-Kaashoeks-MacBook-Pro.local> |
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
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)
show more ...
|
#
5053dd6a |
| 15-Aug-2011 |
Robert Morris <rtm@csail.mit.edu> |
avoid deadlock by calling begin_trans() before locking any inodes
|
#
2e590463 |
| 12-Aug-2011 |
Robert Morris <rtm@csail.mit.edu> |
log write() data usertest for big write()s push begin_trans/commit_trans down into syscalls
|
Revision tags: xv6-rev5 |
|
#
1a81e38b |
| 11-Jan-2011 |
Russ Cox <rsc@swtch.com> |
make new code like old code
Variable declarations at top of function, separate from initialization.
Use == 0 instead of ! for checking pointers.
Consistent spacing around {, *, casts.
Declare 0-p
make new code like old code
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.
show more ...
|
#
4655d42e |
| 27-Sep-2010 |
Robert Morris <rtm@csail.mit.edu> |
copyout() copies data to a va in a pagetable, for exec() &c usertest that passes too many arguments, break exec
|
Revision tags: xv6-2010, xv6-rev4 |
|
#
40889627 |
| 02-Jul-2010 |
Frans Kaashoek <kaashoek@fransk-6.local> |
Initial version of single-cpu xv6 with page tables
|
Revision tags: xv6-rev3 |
|
#
48755214 |
| 31-Aug-2009 |
Russ Cox <rsc@swtch.com> |
assorted fixes: * rename c/cp to cpu/proc * rename cpu.context to cpu.scheduler * fix some comments * formatting for printout
|
#
0aef8914 |
| 08-Aug-2009 |
Russ Cox <rsc@swtch.com> |
shuffle and tweak for formatting. pdf has very good page breaks now. would be a good copy for fall 2009.
|
#
f9a06440 |
| 12-Jul-2009 |
Russ Cox <rsc@swtch.com> |
rearrangements and cleanup for text
|
#
f3685aa3 |
| 31-May-2009 |
rsc <rsc> |
simplify
|
#
15a26936 |
| 17-Oct-2008 |
kolya <kolya> |
try harder to get directory refcounts right
|
#
f3e87bc8 |
| 16-Oct-2008 |
kolya <kolya> |
make mkdir crash-safer, as noticed by many students on midterm
|
Revision tags: xv6-2008 |
|
#
666f58c7 |
| 27-Sep-2007 |
rsc <rsc> |
believe it or not, this was working
the macro expansion of "char *cp;" turned into char *(curproc[cpu()]); which declares a dynamically sized array of char* called curproc.
so then &cp == &(curpro
believe it or not, this was working
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.
show more ...
|
Revision tags: xv6-2007, xv6-rev1 |
|
#
5516be1f |
| 28-Aug-2007 |
rsc <rsc> |
spaces around else for rtm
|