Commit graph

1315 commits

Author SHA1 Message Date
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
Robert Morris 0a4a4230a3 shell nits
fix Regehr complaint
2016-08-08 13:06:38 -04:00
Frans Kaashoek 50edfe1412 nits 2015-11-15 13:40:42 -05:00
Nathaniel Wesley Filardo 5906118897 Remove console input.lock
Use cons.lock for everything.  This eliminates the possibility that two CPUS
independently, simultaneously manipulate the CRTC in cgaputc.
2015-11-15 13:28:43 -05:00
Nathaniel Wesley Filardo 02530a4859 Add sanity check panic for CRTC interactions 2015-11-15 13:28:15 -05:00
kaashoek b019ac4f7d Merge pull request #3 from beordle/master
Fix comments
2015-11-15 12:51:54 -05:00
kaashoek 9cbe056cec Merge pull request #5 from kehao95/master
Update URL for 2014
2015-11-15 12:45:53 -05:00
kehao95 5371a631d7 Update URL for 2014 2015-11-14 00:14:31 +08:00
Jindong Zhang abce9b8140 Fix comments 2015-09-18 23:36:45 +08:00
Ayan Shafqat 4f2d38147f Fixed broken build on Arch Linux 2015-08-12 22:11:39 -04:00
Frans Kaashoek ecb40fb19d coding style (per Jeremías Feltan <jeremias.feltan@gmail.com>) 2015-06-30 16:23:56 -04:00
Frans Kaashoek b67ed0902d Update memide to reflect recent changes to fs and buf 2015-06-27 13:38:03 -04:00
Frans Kaashoek 8320d61be5 Pick up where i left off in april:
- move log into metadata part of disk, so that marking
that the log's blocks are in use falls out for free
- superblock describes the whole disk (sizes and offets)
- sizes and offsets are computed in one place (mkfs) and
the rest of the code refers to the superblock for these values,
instead of recomputing them.
2015-06-27 12:39:13 -04:00
Frans Kaashoek de4af193c8 One ide command for nsector_per_block generates nsector_per_block interrupts,
instead of 1.   ideintr() should wait for nsector_per_block interrupts before
waking up the reader; now it wakes up the reader after 1 interrupt, which
apparently means that the first sector is available of the command instead of all.
For now keep BSIZE to 512.
2015-04-10 20:39:40 -04:00
Frans Kaashoek 895af77fe6 check blockno passed to idestart 2015-04-10 07:15:06 -04:00
Frans Kaashoek c24ac5d763 Disentangle block size from the disk's sector size. Set block size to 1024 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.
2015-04-03 08:22:02 -04:00
Austin Clements 7443b9649a Fix missing NUL-terminator in grep
Currently, grep read()s into a buffer and then uses the buffer as a
string. Since there's no NUL-terminator, this can cause it to falsely
identify line breaks and matches from leftover data on earlier lines
and, if a line fills up the entire buffer, to read past the end of the
buffer.

Fix this by NUL-terminating any data returned by read().

Thanks to Keiichi Watanabe for the report.
2015-03-24 20:54:39 -04:00
Cody Cutler 3d2dedd427 fix buf where concurrent fs syscalls race on log entries 2015-02-19 11:51:47 -05:00
Austin Clements 41f16c2183 Increase VM memory when running qemu-memfs
Presumably because of the pre-loaded file system, the default RAM is
insufficient when running kernelmemfs
2014-10-03 09:44:26 -04:00
Austin Clements 8e54196355 Make kernelmemfs depend on kernel.ld 2014-10-03 09:43:44 -04:00