Commit Graph

1334 Commits (60b63b9d077f2c9d722e8572e5e78379cfaef796)

Author SHA1 Message Date
Robert Morris aeaa308943 change allocproc() back to acquiring the ptable.lock.
fix bugs where caller incorrectly released lock on error return path.
2016-09-15 12:12:05 -04:00
Robert Morris 469aa8b9b3 xx 2016-09-15 12:01:52 -04:00
Frans Kaashoek 33188666da Delete two left-over print statements 2016-09-14 21:13:09 -04:00
Frans Kaashoek 6cec0211d8 Update comment a bit. 2016-09-14 13:01:53 -04:00
Frans Kaashoek da91a3a408 Add sleeplock.[ch] to listing 2016-09-14 08:43:57 -04:00
Frans Kaashoek e85cb90cbf one more BUSY 2016-09-13 14:51:44 -04:00
Frans Kaashoek 564a1cf0cb sleeplock files 2016-09-11 21:01:24 -04:00
Frans Kaashoek dec637bc59 Replace I_BUSY with sleep locks 2016-09-11 20:59:57 -04:00
Frans Kaashoek 2adb7c21dc Move retry loop/sleep/wakeup in bio.c into sleeping locks 2016-09-11 20:17:22 -04:00
Frans Kaashoek 6670d3b5e0 Straight replacement of B_BUSY with a sleeping lock. 2016-09-11 17:24:04 -04:00
Frans Kaashoek 551c2f3576 Merge branch 'master' of g.csail.mit.edu:xv6-dev 2016-09-08 21:20:26 -04:00
Frans Kaashoek 1b8ccf9482 x 2016-09-08 21:20:17 -04:00
Robert Morris 34c2efc1d0 use asm() for lock release, not a C assignment 2016-09-08 14:45:20 -04:00
Robert Morris d63ac118e8 this might fix the reported deadlock, though I can't reproduce it. 2016-09-08 14:22:38 -04:00
Frans Kaashoek 761ea5471f Be a bit more explicit what kind of suggestions are are interested. 2016-09-08 13:09:09 -04:00
Frans Kaashoek 5bf3fbee00 Make runoff happy 2016-09-02 15:27:28 -04:00
Frans Kaashoek b7fed77b7b Fix a few lines that runoff is complaining about that they are too long 2016-09-02 14:59:00 -04:00
Frans Kaashoek 5f03799f84 ack xi 2016-09-02 08:43:33 -04:00
Frans Kaashoek b8fd4cba13 Merge branch 'master' of g.csail.mit.edu:xv6-dev 2016-09-02 08:36:14 -04:00
Frans Kaashoek ae15515d80 APIC IDs may not be consecutive and start from zero, so we cannot really use it
as a direct index into cpus.  Record apicid in struct cpu and have cpunum() look
for it. Replace cpu->id with cpunum() everywhere, and replace cpu->id with cpu->apicid.
Thanks to Xi Wang.
2016-09-02 08:31:13 -04:00
Robert Morris bc8221a59c comment about sched() saving/restoring cpu->intena 2016-09-02 05:40:54 -04:00
Robert Morris 4b2152cc2d curproc -> proc in a comment 2016-09-01 17:21:37 -04:00
Frans Kaashoek 37939f24c2 better comment 2016-08-26 08:46:13 -04:00
Frans Kaashoek 27ff70dc08 ack 2016-08-26 08:22:24 -04:00
Frans Kaashoek aff0c8d5c7 set iomb to forbid i/o instructions from user space
add to test that they indeed trap in user space
thanks to pablogventura@gmail.com and nwolovick@gmail.com
2016-08-26 08:20:11 -04:00
Frans Kaashoek 745a4d31a6 x 2016-08-25 09:14:52 -04:00
Frans Kaashoek 7894fcd217 Remove trailing white space with:
for f in *.{h,c}; do sed -i .sed 's/[[:blank:]]*$//' $f; done
(Thanks to Nicolás Wolovick)
2016-08-25 09:13:00 -04:00
Frans Kaashoek 6de6a3c952 ack mikecat 2016-08-25 07:12:33 -04:00
MikeCAT 5625ae4973 add check for wrapping of address + size in exec() 2016-08-25 07:09:46 -04:00
MikeCAT 67a7f9597e add alignment check of virtual address to exec() 2016-08-25 07:09:10 -04:00
Robert Morris a7c03bd914 p2v -> P2V 2016-08-24 13:40:06 -04:00
Frans Kaashoek 7a77375d64 x 2016-08-19 07:20:08 -04:00
Frans Kaashoek 1fc87f367c Coding style (thanks to phf). 2016-08-18 21:02:05 -04:00
Peter H. Froehlich 5faed8ba64 Fixed QEMU command line avoids raw image warning. 2016-08-18 14:30:30 -04:00
Frans Kaashoek 0f3d9d9d68 It will be for 2016 2016-08-18 14:00:48 -04:00
Frans Kaashoek 987064cb12 Update based on a scan of my 6828 folder 2016-08-18 13:37:32 -04:00
Peter H. Froehlich 2a117310b5 Removed useless variable. 2016-08-18 11:25:44 -04:00
Peter H. Froehlich 216fdf846f Again, QEMU command line to avoid image warning. 2016-08-18 11:20:43 -04:00
Peter H. Froehlich 1ccb5a6fca Remove unused variable, nits. 2016-08-18 11:15:56 -04:00
Peter H. Froehlich 2c60b7f31f Removed useless function and prototypes. 2016-08-18 11:09:04 -04:00
Frans Kaashoek 09396a801a Thanks to Warren Toomey for RDMUL and WRMUL. 2016-08-18 07:42:13 -04:00
Frans Kaashoek 4a3576b810 Small change to support RWMUL and WRMUL. Now xv6 truly works with a block size
that is a multiple of the sector size.
2016-08-18 07:39:03 -04:00
Robert Morris 19f65413bd hold ptable.lock for the entire process creation
however, processes still modify their own p->* without locking
2016-08-13 03:44:13 -04:00
Robert Morris 20d05d4411 separate atomic test-and-set from memory barrier.
* use xchg only for its atomicness.
* use __sync_synchronize() for both CPU and compiler barrier.
2016-08-12 07:03:35 -04:00
Robert Morris 9c65b32d9e nothing much 2016-08-11 15:41:53 -04:00
Robert Morris c779cc2be1 main comments 2016-08-11 13:55:13 -04:00
Robert Morris 241188276c nits 2016-08-10 12:06:02 -04:00
Robert Morris 3431cd4927 more comments in entryother.S 2016-08-10 11:35:28 -04:00
Robert Morris 0a69dc9b17 even more explicit that entry.S is linked into kernel, unlike bootasm.S. 2016-08-10 11:22:36 -04:00
Robert Morris 858475e4df tiny clarifications to some gdt code. 2016-08-10 10:51:14 -04:00