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)
Showing
- bio.c 23 additions, 22 deletionsbio.c
- buf.h 4 additions, 3 deletionsbuf.h
- defs.h 5 additions, 0 deletionsdefs.h
- file.c 3 additions, 3 deletionsfile.c
- file.h 3 additions, 3 deletionsfile.h
- fs.c 16 additions, 16 deletionsfs.c
- ide.c 1 addition, 1 deletionide.c
- log.c 5 additions, 9 deletionslog.c
- pipe.c 1 addition, 1 deletionpipe.c
- spinlock.c 38 additions, 4 deletionsspinlock.c
- spinlock.h 6 additions, 1 deletionspinlock.h
- sysfile.c 1 addition, 0 deletionssysfile.c
Loading
Please register or sign in to comment