summaryrefslogtreecommitdiff
path: root/ide.c
AgeCommit message (Collapse)AuthorFilesLines
2016-09-11Straight replacement of B_BUSY with a sleeping lock.Frans Kaashoek1-2/+3
2016-08-25Remove trailing white space with:Frans Kaashoek1-11/+11
for f in *.{h,c}; do sed -i .sed 's/[[:blank:]]*$//' $f; done (Thanks to Nicolás Wolovick)
2016-08-18Small change to support RWMUL and WRMUL. Now xv6 truly works with a block sizeFrans Kaashoek1-3/+7
that is a multiple of the sector size.
2015-04-10check blockno passed to idestartFrans Kaashoek1-1/+3
2015-04-03Disentangle block size from the disk's sector size. Set block size to 1024 ↵Frans Kaashoek1-7/+13
to show that they can be different. Clean up mkfs, simplifying specifying fs parameters, remove some redundancy between fs and mkfs, and fix disk layout bugs. Call blocks in the file system blocks instead of sectors. Passes usertests for different block sizes.
2012-08-28make the book happyRobert Morris1-2/+2
2011-10-11clarify some FS commentsRobert Morris1-4/+3
2011-08-29Revert "Introduce and use sleeplocks instead of BUSY flags"Frans Kaashoek1-1/+1
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-26Introduce and use sleeplocks instead of BUSY flagsFrans Kaashoek1-1/+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-25Make cross reference with text workFrans Kaashoek1-2/+2
2011-07-29Map kernel highFrans Kaashoek1-0/+1
Very important to give qemu memory through PHYSTOP :(
2011-02-19xv6: formatting, cleanup, rev5 (take 2)Russ Cox1-1/+1
2011-01-11make new code like old codeRuss Cox1-2/+2
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-07-02Initial version of single-cpu xv6 with page tablesFrans Kaashoek1-1/+2
2009-08-30assorted fixes:Russ Cox1-1/+1
* rename c/cp to cpu/proc * rename cpu.context to cpu.scheduler * fix some comments * formatting for printout
2009-05-31group locks into structs they protect.rsc1-2/+2
few naming nits.
2009-05-31ide.c: make names more regularrsc1-23/+26
2009-03-08be consistent: no underscores in function namesrsc1-17/+17
2007-08-30make new Homework 8 workrtm1-1/+0
2007-08-28comments; rename irq_ to pic_rsc1-1/+1
2007-08-28spaces around else for rtmrsc1-1/+1
2007-08-28nitsrsc1-3/+3
2007-08-28comment non-check of cp->killedrsc1-0/+1
2007-08-27delete unnecessary #include linesrsc1-1/+1
2007-08-27Another attempt at the bio.c comment.rsc1-6/+11
Rename B_WRITE to B_DIRTY and then let ide.c maintain the B_VALID and B_DIRTY flags.
2007-08-24minor cleanupsrsc1-68/+62
2007-08-24comment nitsrtm1-6/+1
2007-08-24simplify ide queuingrtm1-66/+51
nits in comments
2007-08-14formatting, sleep bug fixrsc1-1/+7
2007-08-14ide_write unused => gonersc1-27/+0
2006-09-08move ide_intr lowerrsc1-9/+9
2006-09-07fix disk bugrsc1-0/+3
2006-09-07fix ide, pit interfacesrsc1-33/+35
2006-09-07commentsrsc1-0/+7
2006-09-07run without lapic and ioapic, if they are not presentkaashoek1-0/+1
if no lapic available, use 8253pit for clock now xv6 runs both on qemu (uniprocessor) and bochs (uniprocessor and MP)
2006-09-06more named constantsrsc1-6/+10
2006-09-06more tabs go awayrsc1-2/+2
2006-09-06no /* */ commentsrsc1-5/+3
2006-09-06standardize various * conventionsrsc1-16/+16
2006-09-06spacing fixes: no tabs, 2-space indents (for rtm)rsc1-4/+5
2006-09-03remove duplicationkaashoek1-0/+1
don't use the same name for two different pieces of code
2006-08-30complain if no disk 1rtm1-20/+8
lots of cleanup
2006-08-13link()rtm1-2/+0
2006-08-10interrupts could be recursive since lapic_eoi() called before rtirtm1-2/+2
so fast interrupts overflow the kernel stack fix: cli() before lapic_eoi()
2006-08-10low-level keyboard input (not hooked up to /dev yet)rtm1-1/+1
fix acquire() to cli() *before* incrementing nlock make T_SYSCALL a trap gate, not an interrupt gate sadly, various crashes if you hold down a keyboard key...
2006-08-09iread for T_DEVkaashoek1-1/+1
O_RDWR, etc. create file
2006-08-08fix race in holding() check in acquire()rtm1-2/+2
give cpu1 a TSS and gdt for when it enters scheduler() and a pseudo proc[] entry for each cpu cpu0 waits for each other cpu to start up read() for files
2006-08-07bwritekaashoek1-8/+10
2006-08-06generalize async read to support write tookaashoek1-8/+13
2006-08-04better interrupt plan---this one appears to workkaashoek1-2/+6
ioapic