Commit Graph
12 Commits
Author SHA1 Message Date
Isaku Yamahata b7907fa83d [LibOS] Make clone ABI match kernel and update glibc patch
glibc: remove unnecessary pushq/popq so that shim_clone can run without segv.
This is a preparation for later patch to clean up shim_clone() to
remove glibc modification.
libos: Currently child thread ret ip is taken from new child stack.
But it can be retrieved from parent's thread context, so such a hack
isn't needed.
Now the modification to clone.S is not needed anymore. So remove it.
2019-05-08 02:04:33 +02:00
Isaku Yamahata 8975d87338 [LibOS] glibc-2.19.patch: Remove _dl_debug_state renaming
_dl_debug_state has hidden visibility, so there is no risk in using it
with Pal. We can remove the modification to glibc and rename
__libc_dl_debug_state back to _dl_debug_state.
2019-04-25 12:22:49 +02:00
Isaku Yamahata d8ee4eabe5 [LibOS/glibc] glibc-2.19.patch: reduce __libc_r_debug hack
This patch reduces glibc modification of __libc_r_debug rename.

Signed-off-by: Isaku Yamahata <isaku.yamahata@gmail.com>
2019-04-01 13:21:10 -04:00
Chia-Che Tsai 84f81d8f13 Lots of bugfixes (#145)
- Fix a severe bug caused by merging #87. The patch does not check the return values from get_config_entries_size(), while the return values can easily be negative (-PAL_ERROR_INVAL). Any usage of this function should carefully check the return values and also pass the size into get_config_entries() to prevent buffer overflow.
- Fix a minor bug in handling IPC disconnection. The callback ipc_child_exit() never receives a "term_signal" parameter. The callback is called when thepipe to a child process unexpectedly terminates, which can only mean the child process has crashed. I believe the proper signal to send is SIGKILL.
- Remove a compilation warning caused by type mismatch of __malloc().
- Allow binding TCP socket to ANY address
- enable LD_PRELOAD in glibc
- disable output buffering in LTP tests to reveal omitted passes
- Remove a double-unlock in shim_async.c
- Replace all int with size_t or ssize_t in Graphene configuration API
- Add new passed LTP tests
2017-12-18 16:03:36 -08:00
Don Porter e6b3821471 Try to correct incomplete fix for kernel vs. userspace calling convention. Seems like the current plan is to fix the calling convention in the libos, not libc. Also, fix some cases where timeouts were being cast down to 32-bit integers 2017-08-17 15:40:52 -04:00
Chia-Che Tsai f2c36a1268 minor fixes 2017-01-30 03:57:47 -05:00
Chia-Che Tsai 27ed3b2f6b - Fix calling convention issues in the glibc 2.19 patch
- Port gipc module to Linux kernel 4.3
- Simplify PAL signal handling
- Fix bug #4 (epoll-related syscalls)
- Fix bug #10
- Fix bug #14
- Merge pull request #18
2016-12-02 00:24:05 -05:00
Chia-Che Tsai e2e01667c2 Bugfixes:
- Printing unsupported system calls to stdout (when DEBUG=1)
- Implementing ioctl code FIONCLEX and FIOCLEX
- Rewriting nested functions in libsysdb. GCC 5 causes segmentation fault when passing
  nested functions as callbacks.
- Fixing Bash manifest template
2016-10-13 16:45:32 -04:00
Chia-Che Tsai 1708e4af96 Bugfixes
'make install' to create a Runtime directory
2016-02-14 22:13:33 -05:00
Chia-Che Tsai 2f872ab753 Disable a malloc arena behavior that causes segfaults in openjdk 2016-02-12 21:41:31 -05:00
Chia-Che Tsai cfa620e24a Trivial changes 2016-02-10 21:59:05 -05:00
Chia-Che Tsai b5586bbfc6 release v0.3
- Bugfixes in PAL and SHIM
- Improvement of migration scheme in SHIM, which largely speed up
  forking
- Upgrade glibc to 2.19
- FreeBSD port
- Support OpenJDK, python and R
2015-11-30 08:38:50 -05:00