Ben Gras
8d800b3df7
Make VM fix up memory for kernel that crosses region boundaries
...
too.
Add a test to make this happen (triggers a vm panic before this commit).
2009-12-08 13:35:52 +00:00
Erik van der Kouwe
bd0933a19b
Implementation of getrlimit and getdtablesize
2009-12-07 19:56:40 +00:00
Ben Gras
26ba254a4a
Intel Pro/1000 driver written by Niek Linnenbank.
2009-12-07 18:33:41 +00:00
Ben Gras
f0db9bb328
- map in as much memory as is necessary in 4MB chunks to
...
let boot processes run with segments
- allow segment-only processes to fork() by copying them
and giving them an identity page table
2009-12-07 12:10:44 +00:00
Tomas Hruby
51065a1b47
Cooments to warn not to use certains instructions
...
- gas2ack cannot handle all variants of some instructions. Until this issues is
addressed, this patch places a big warning where appropriate. This code is not
supposed to change frequently.
2009-12-07 12:01:05 +00:00
Erik van der Kouwe
45a52f7acc
Give test 43 root privileges to prevent errors when run as non-root
2009-12-04 18:58:57 +00:00
Erik van der Kouwe
91d13ae054
Fixed tests to use the right path when run as root
2009-12-04 17:51:06 +00:00
Erik van der Kouwe
09939b454e
Fix line which was too long
2009-12-04 17:49:20 +00:00
Erik van der Kouwe
5427ab41c8
Add realpath function
2009-12-04 07:52:22 +00:00
Erik van der Kouwe
150dfbe96d
Cleanup getsockopt and add SO_TYPE
2009-12-04 07:26:56 +00:00
Tomas Hruby
ec1fec6c3f
A debug print with no meaning removed from VM.
2009-12-03 10:53:56 +00:00
David van Moolenbroek
fe982ca684
FPU: fix field names, compiler warning, long lines
2009-12-02 23:12:46 +00:00
Ben Gras
38fecc5de1
Part of the FPU changes; forgot to add these files in FPU commit.
2009-12-02 16:35:05 +00:00
Ben Gras
207621b6fb
rtl8169 driver contributed by Jaswinder Singh Rajput.
2009-12-02 15:59:42 +00:00
Ben Gras
b9825f55e0
previous commit premature and not part of FPU changes.
2009-12-02 15:53:20 +00:00
Erik van der Kouwe
9a10c6c620
Specify types for integer MAX constants
2009-12-02 15:35:09 +00:00
Ben Gras
39484601e7
any blocksize.
2009-12-02 15:33:14 +00:00
Ben Gras
bd42705433
FPU context switching support by Evgeniy Ivanov.
2009-12-02 13:01:48 +00:00
David van Moolenbroek
fce9fd4b4e
Add 'getidle' CPU utilization measurement infrastructure
2009-12-02 11:52:26 +00:00
David van Moolenbroek
be2087ecf9
Filter driver by Wu Bingzheng et al
2009-12-02 10:08:58 +00:00
David van Moolenbroek
f197bcb435
Allow servers to run with fewer privileges:
...
- allow non-root processes to get their own endpoint
- make alloc_contig() call sys_umap() only when requested
2009-12-02 10:06:58 +00:00
David van Moolenbroek
30a7fe5fa9
libdriver changes:
...
- remove obsolete non-safecopy support
- merge libdriver and libdriver_asyn
- change standard reply model from sendnb to senda
2009-12-02 09:57:48 +00:00
David van Moolenbroek
4924d1a9b5
RS changes:
...
- add new "control" config directive, to let drivers restart drivers
(by Jorrit Herder)
- fix bug causing system processes to be started twice sometimes
2009-12-02 09:54:50 +00:00
Ben Gras
7c0cdc61bc
fix for race condition - IRQ can happen between clearing the endpoint
...
of the handling process and before removing the hook. The handler function
will panic then.
2009-12-01 16:46:27 +00:00
David van Moolenbroek
ad259e92af
Alternative VirtualBox/Lance driver workaround
2009-11-28 13:28:55 +00:00
David van Moolenbroek
fe7b2f1652
RS fixes:
...
- fix resource leak (PCI ACLs) when child fails right after exec
- fix resource leak (memory) when child exec fails at all
- fix race condition setting VM call privileges for new child
- make dev_execve() return a proper result, and check this result
- remove RS_EXECFAILED, as it should behave exactly like RS_EXITING
- add more clarifying comments about starting servers
2009-11-28 13:23:45 +00:00
David van Moolenbroek
45123f83d3
PM: remove 'boottime' global variable
2009-11-28 13:22:01 +00:00
David van Moolenbroek
6da61b8f05
fix _NSIG usage
2009-11-28 13:20:50 +00:00
David van Moolenbroek
c6cce1823d
Portability: POSIXize some of inet's error codes
2009-11-28 13:18:33 +00:00
David van Moolenbroek
709a739b52
Kernel: unbreak load averages
2009-11-28 13:16:03 +00:00
David van Moolenbroek
6c6e1db676
Kernel: fix faulty trap check
2009-11-28 13:15:07 +00:00
David van Moolenbroek
e06e85b511
Portability: include sys/select.h from sys/time.h
2009-11-22 20:11:06 +00:00
David van Moolenbroek
bdb85248d4
VM: don't send arbitrary status values to kernel
2009-11-22 13:06:18 +00:00
David van Moolenbroek
4d4cb8fa24
Support for read/write on connected UDP sockets
2009-11-19 23:45:46 +00:00
David van Moolenbroek
3926b70b22
Remove dead mini_ds_retrieve_u32 code
2009-11-17 14:10:09 +00:00
Erik van der Kouwe
c85bd7edb9
Patch by Jaswinder Singh Rajput to fix FTP progress display
2009-11-17 08:41:43 +00:00
Tomas Hruby
8a44a44cb9
Local APIC
...
- local APIC timer used as the source of time
- PIC is still used as the hw interrupt controller as we don't have
enough info without ACPI or MPS to set up IO APICs
- remapping of APIC when switching paging on, uses the new mechanism
to tell VM what phys areas to map in kernel's virtual space
- one more step to SMP
based on code by Arun C.
2009-11-16 21:41:44 +00:00
Tomas Hruby
6515c93ecf
New instructions in gas2ack
...
pause
mfence
rdtsc
rdpmc
2009-11-16 21:32:48 +00:00
David van Moolenbroek
2dc9e354f7
ugly double blank line, my fault
2009-11-16 18:22:28 +00:00
Tomas Hruby
9e62bd5241
.align replaced by .balign in mpx386.S
2009-11-13 09:30:45 +00:00
Tomas Hruby
21a5917f3e
gas2ack does not understand .align
...
- as .align is target dependent we for usage of .balign for byte alignment
2009-11-13 09:29:37 +00:00
Tomas Hruby
d653cb457f
gas2ack support for rdmsr and wrmsr
2009-11-12 16:19:01 +00:00
Tomas Hruby
cb9faaebfd
No need for a special idle queue
...
- as the idle task is never placed on any run queue, we don't need any special
idle queue.
- one more queue available for user processes
2009-11-12 08:47:25 +00:00
Tomas Hruby
ad4dcaab71
Idle task never runs
...
- idle task becomes a pseudo task which is never scheduled. It is never put on
any run queue and never enters userspace. An entry for this task still remains
in the process table for time accounting
- Instead of panicing if there is not process to schedule, pick_proc() returns
NULL which is a signal to put the cpu in an idle state and set everything in
such a way that after receiving and interrupt it looks like idle task was
preempted
- idle task is set non-preemptible to avoid handling in the timer interrupt code
which make userspace scheduling simpler as idle task does not need to be
handled as a special case.
2009-11-12 08:42:18 +00:00
Tomas Hruby
37a7e1b76b
Use of isemptyp() macro instead of testing RTS_SLOT_FREE flag
...
- some code used to test if only this flag is set, some if also this flag is
set. This change unifies the test
2009-11-12 08:35:26 +00:00
Tomas Hruby
f98bea8f67
The rest of the r5641 commit
2009-11-11 17:02:45 +00:00
Tomas Hruby
04db2d7184
enable printing of 64-bit ints with gcc.
2009-11-11 12:15:08 +00:00
Tomas Hruby
b3b0a18403
allow kernel to tell VM extra physical addresses it wants mapped in.
...
used in the future for mapping in local APIC memory.
2009-11-11 12:07:06 +00:00
Tomas Hruby
9ba3b53de8
kernel/proc.h can be included in kernel assembky files
...
- the gnu .S are compiled with __ASSEMBLY__ macro set which allows us to
conditionaly remove C stuff from the proc.h file when included in assembly
files
2009-11-10 09:14:50 +00:00
Tomas Hruby
a972f4bacc
All macros defining rts flags are prefixed with RTS_
...
- macros used with RTS_SET group of macros to define struct proc p_rts_flags are
now prefixed with RTS_ to make things clear
2009-11-10 09:11:13 +00:00