- May 08, 2013
-
-
Guy Zana authored
-
Christoph Hellwig authored
-
Christoph Hellwig authored
We leave out the taskqueues running in software interrupts (OSv doesn't have this concept and most likely never will), as well as those having timeouts (we can add those once needed)
-
Christoph Hellwig authored
kthread are implemented on top of pthreads for now as they give us a thread identifier easily usable from C code.
-
Guy Zana authored
-
Guy Zana authored
-
Guy Zana authored
-
Guy Zana authored
split cloudius.jar to cloudius.jar an cli.jar the following patch will introduce proper code reusing between the two jars basically, cli.jar will be dependant on cloudius.jar
-
Guy Zana authored
we're about to split cloudius.jar into 2 jars: 1. cloudius.jar - holds various utils and interfacing jni 2. cli.jar - wrappers needed for the cli, commuication of js<->java per Nadav suggestion.
-
- May 07, 2013
-
-
Christoph Hellwig authored
-
Avi Kivity authored
e.g. tst-foo.o when building tst-foo.so
-
Avi Kivity authored
Implement some noisy stubs.
-
Avi Kivity authored
Improved path and RPATH handling.
-
Avi Kivity authored
Record the guard size in the thread attributes, and mprotect() that bit so the user cannot overflow the stack.
-
Avi Kivity authored
Record stack size in pthread_attr_setstacksize(), and use it when creating the thread.
-
Avi Kivity authored
-
Avi Kivity authored
We want the size as well, to be able to munmap() pthread stacks. Pass the entire stack_info so we have this information.
-
Nadav Har'El authored
Clean up the lockfree/mutex.hh code. This introduces no new algorithms or major bug fixes - what was blocking the lockfree mutex from working were mainly preemption bugs and a bug in the lockfree queue implementation. Also introduced a test for the mutex variants (mutex, lockfree::mutex and spinlock) - several threads do a non-atomic increment to a shared variables, and unless a mutex is used, the sum ends up being wrong. The test seems to be working correctly, and also exercising the interesting cases of the code (the "responsibility hand-off" protocol), but does so very rarely, so we'll still need more testing before we can fully trust this new code. The test also begins to do performance testing on the mutex variants. uncontended lockfree::mutex is currently twice slower than uncontended mutex, so some more work is needed in this area.
-
Nadav Har'El authored
Added constructor to the "spinlock" type (#include <osv/mutex.h>) when used from C++. This makes it easier to use this type from C++. Marked constructor as "constexpr" to allow the object to be constructed in compile time (e.g., a global spinlock variable can be initialized in bss). Thanks Avi for this trick!
-
Avi Kivity authored
program::add_object() somehow got 3-byte indents instead of 4-byte. This has no effect on x86, which allows misaligned loads, but could cause exceptions on other architectures.
-
Avi Kivity authored
Fixes "could not load libm.so.6".
-
Avi Kivity authored
If we're looking for a module by its soname (rather than a path), first perform a search in case it's already loaded. Fixes "could not load libjvm.so", as libjvm.so is not on RPATH or the default path, but is already loaded anyway.
-
Avi Kivity authored
Some libraries have an extra search path, use it. Squelches some "could not load libfoo.so" messages.
-
Guy Zana authored
Spotted by Nadav.
-
Guy Zana authored
-
Guy Zana authored
executes external elf files such as the tests note that the communication between js to java is done via global js variables because of a shortcoming in arguments passing, not capable to pass a String [] for example
-
Guy Zana authored
from javascript.
-
Guy Zana authored
it translate the arguments recieved from javascript, invokes the jni method and return the exit code to javascript
-
Guy Zana authored
expects to recieve a String[] array as an argument, invokes run_elf() and communicates the return value by setting a static int of the invoking class
-
Guy Zana authored
-
Avi Kivity authored
Avoid duplicate elf objects by making sure paths are canonical.
-
Avi Kivity authored
This happens to fix a few "could not load libfoo.so", but not all of them.
-
Guy Zana authored
other classes may need to read/write global javascript objects, the run command which is going to be commited in the next patch deals with it
-
Guy Zana authored
-
Avi Kivity authored
-
Avi Kivity authored
-
Avi Kivity authored
Fix error handling by using the error-safe fileref and fdesc utility classes.
-
Avi Kivity authored
The fdesc keeps a file descriptor safe from leaks, automatically closing it unless the release() method is called (usually when the user is ready to commit state).
-
Avi Kivity authored
This falloc_noinstall() works like the C version, except it either returns a fileref (which automatically maintains reference counts) or throws an exception (which means error handling can be consolidated).
-
Avi Kivity authored
The definitions conflict as soon as someone includes <sys/poll.h>. While this is moving in the opposite direction we want to, this is the minimal fix to get things to build.
-