- Mar 19, 2013
-
-
Avi Kivity authored
Due to the "red zone", stack operations may corrupt local variables. Use ordinary moves and jumps instead.
-
Avi Kivity authored
Causes an early failure for some reason. Disable until root cause is found.
-
Avi Kivity authored
-
Avi Kivity authored
-
Avi Kivity authored
Since that's what we build by default, that's what we should run.
-
Avi Kivity authored
-
Avi Kivity authored
-
Guy Zana authored
-
Avi Kivity authored
fpu preemption
-
Avi Kivity authored
-
Avi Kivity authored
Test that preemption does not corrupt fpu registers.
-
Avi Kivity authored
-
Avi Kivity authored
Normal scheduling does not need to save or restore the fpu when switching threads, since all fpu registers are caller-saved (so calling schedule()) may clobber the fpu). However this does not hold on preemption, so we need to save and restore the fpu state explicitly.
-
Avi Kivity authored
-
Avi Kivity authored
Parse cpuid flag bits relevant to osv.
-
Avi Kivity authored
-
Avi Kivity authored
-
Avi Kivity authored
-
- Mar 18, 2013
-
-
Nadav Har'El authored
-
Nadav Har'El authored
is not currently supported, and PROT_READ is used instead (i.e., instead of inaccessible memory, one gets read-only memory). Inaccessible memory complicates the code because it means using the non-present bit on still-allocated pages, and then unpopulate() can't use the present bit to decide which pages are allocated and need to be freed. To fix this, I'll need to: 1. unpopulate_page() and unpopulate_huge_page() should assume it is only ever called on allocated pages (evacute() actually ensures that!), and not return on non-present ptes. 2. change_perm() should use the read_perm to set the present bit. 3. protect() shouldn't rely on present bit to know when to return 0 or 1, rather it must be wrapped in something like evacute() which knows to find mapped ranges, and only call protect() for actually mapped ranges. I'll try this tomorrow.
-
Nadav Har'El authored
the version at the time of commit. Git is overrated :(
-
Nadav Har'El authored
implementation of both was completely broken - not only did evacuate() never free the physical memory backing the removed mapping, it was sometimes even called with wrong parameters ;-) Added tests to check that some of the mmap/munmap combinations no longer leak memory.
-
Christoph Hellwig authored
-
Christoph Hellwig authored
-
Christoph Hellwig authored
-
Christoph Hellwig authored
-
Christoph Hellwig authored
-
Christoph Hellwig authored
The JVM calls these when running Volanomark. Also improve debugging of unhandled getrlimit cases.
-
Christoph Hellwig authored
just like most libc implementations.
-
Christoph Hellwig authored
-
Christoph Hellwig authored
We don't use syscall except for gettid which is called directly by java. If we are going to implement these they should be direct API functions.
-
Avi Kivity authored
Noticed by Nadav.
-
- Mar 17, 2013
-
-
Nadav Har'El authored
and instructions on how to run bench.jar
-
- Mar 13, 2013
-
-
Nadav Har'El authored
and also to the "osv thread ..." command, you can now use in addition to the thread's address, also its id - e.g., "osv thread 44" will go to the thread with id()==44.
-
- Mar 12, 2013
-
-
Nadav Har'El authored
paper...) but leaving necessary discussion not present in the paper. And also fix various errors.
-
- Mar 11, 2013
-
-
Nadav Har'El authored
-
Nadav Har'El authored
embarrassing errors ;-)
-
Christoph Hellwig authored
-
Christoph Hellwig authored
-
Christoph Hellwig authored
This allows taking BIO_ERROR into the block layer core and remove unsafe bio_flags manipulations in the virtio-blk driver.
-