- Jan 10, 2013
-
-
Avi Kivity authored
Start with a simple compiler barrier.
-
Avi Kivity authored
Harmless.
-
Avi Kivity authored
Unlike most glibc data types, FILE is not opaque - it is defined as _IO_FILE in libio.h and some glibc inlines actually use it. So we must use the same structure. Do this by subclassing _IO_FILE. Unbreaks mode=release build.
-
Avi Kivity authored
-
Avi Kivity authored
PT_GNU_EH_FRAME segments are contained within PT_LOAD segments, and so need not be loaded. Moreover, when we load a segment, we align it to page boundaries; this overwrites previous contents. Does serious damage with small objects (like tst-dir.so) - overwriting the main function. Fix by ignoring EH_FRAME segments (libunwind will later re-discover them when iterating over the objects's phdrs).
-
- Jan 09, 2013
-
-
Dor Laor authored
* 'master' of github.com:/avikivity/osv: bootfs: add some jars for the jvm bootfs: switch to more traditional file layout elf: reduce debug noise README: document 'osv syms' mempool: fix corruption with almost-page-sized objects
-
Dor Laor authored
-
Avi Kivity authored
-
Avi Kivity authored
Mirror the jre file layout closely, otherwise it gets confused.
-
Avi Kivity authored
-
Avi Kivity authored
-
Avi Kivity authored
-
Avi Kivity authored
When we free the last object in a page, we free the page itself, removing it from the pool's page list. However, pages with no free objects are not present on the free page list, causing corruption. The only condition this can happen is if there is exactly one object on a page; so it's simultaneously the last allocated and the last freed object.
-
Dor Laor authored
* 'master' of github.com:/avikivity/osv: mkbootfs: remove errant print build: quiet down mkbootfs invocation scripts: support multiple objects in running image elf: store object list in an area easily accessible to the debugger printf: implement zero fill libc: import qsort from freebsd
-
Dor Laor authored
- add git submodule init - use the right flag for autoreconf
-
Avi Kivity authored
-
Avi Kivity authored
-
Avi Kivity authored
-
Avi Kivity authored
Since we're loading multiple objects, we need to load symbol tables for all of them. The base addresses are no longer static (esp. after we started loading mulitple payloads, so we need to read them from the image). A new command is added for this: 'osv syms'. It will try to locate symbol tables for anything that has been loaded at this stage.
-
Avi Kivity authored
Since we're loading many objects, we need to make them accessible to the debugger so it can load symbol tables.
-
Avi Kivity authored
as in "%016lx".
-
Avi Kivity authored
-
Christoph Hellwig authored
-
Avi Kivity authored
-
Avi Kivity authored
-
Avi Kivity authored
-
Avi Kivity authored
-
Avi Kivity authored
Reserves a vma range for later use. Can be useful to implement mmap() hints with a two-step algorithm - reserve a range, then overwrite it with the real mmap.
-
Avi Kivity authored
This is simpler than [addr, addr+size) for splitting and merging.
-
Christoph Hellwig authored
-
Christoph Hellwig authored
-
Christoph Hellwig authored
-
Christoph Hellwig authored
-
Christoph Hellwig authored
-
- Jan 08, 2013
-
-
Avi Kivity authored
-
Avi Kivity authored
Suggested by Christoph.
-
Avi Kivity authored
(gdb) osv heap
-
Avi Kivity authored
-
Avi Kivity authored
The ABI requires that the stack be aligned to 16 bytes, so sse can be used. Make it so. Fixes the jvm assembler faulting.
-
Avi Kivity authored
-