- 14 Mar, 2017 40 commits
-
-
Dmitry Safonov authored
Dump TLS with the help of SYS_get_thread_area. Primary for 32-bit applications, but this also may be used by mixed 64/32 bit code. I do not enable dumping for 64 bit unless we'll meet such code, but include 3 user_desc entries of TLS as not present in 64-bit images. That's arguable and I may include user_descs only for compat tasks. Cc: Cyrill Gorcunov <gorcunov@openvz.org> Signed-off-by:
Dmitry Safonov <dsafonov@virtuozzo.com> Signed-off-by:
Pavel Emelyanov <xemul@virtuozzo.com> Signed-off-by:
Andrei Vagin <avagin@virtuozzo.com>
-
Dmitry Safonov authored
I prefer this to be done in callee, than in caller for simplicity. Cc: Cyrill Gorcunov <gorcunov@openvz.org> Signed-off-by:
Dmitry Safonov <dsafonov@virtuozzo.com> Signed-off-by:
Pavel Emelyanov <xemul@virtuozzo.com> Signed-off-by:
Andrei Vagin <avagin@virtuozzo.com>
-
Dmitry Safonov authored
I need it to call sigaction from 32-bit code as kernel will set sigframe ABI according to sigaction call ABI. Also I will call {get,set}_thread_area to restore TLS entries. Cc: Cyrill Gorcunov <gorcunov@openvz.org> Signed-off-by:
Dmitry Safonov <dsafonov@virtuozzo.com> Signed-off-by:
Pavel Emelyanov <xemul@virtuozzo.com> Signed-off-by:
Andrei Vagin <avagin@virtuozzo.com>
-
Dmitry Safonov authored
Otherwise, we still have parsed x86_64 vdso symtable. After this: pie: 17917: vdso: Mapping compatible vDSO at 0x25000 pie: 17917: vdso: Parsing at 0x25000 0x29000 pie: 17917: Error (pie/util-vdso-elf32.c:87): vdso: Elf header magic m> pie: 17917: ismatch pie: 17917: vdso: Parsing at 0x26000 0x29000 pie: 17917: Error (pie/util-vdso-elf32.c:87): vdso: Elf header magic m> pie: 17917: ismatch pie: 17917: vdso: Parsing at 0x27000 0x29000 pie: 17917: vdso: PT_LOAD p_vaddr: 0x0 pie: 17917: vdso: DT_HASH: 0xb4 pie: 17917: vdso: DT_STRTAB: 0x1c0 pie: 17917: vdso: DT_SYMTAB: 0x130 pie: 17917: vdso: DT_STRSZ: 0x95 pie: 17917: vdso: DT_SYMENT: 0x10 pie: 17917: vdso: nbucket 0x3 nchain 0x9 bucket 0x270bc chain 0x270c8 Cc: Cyrill Gorcunov <gorcunov@openvz.org> Signed-off-by:
Dmitry Safonov <dsafonov@virtuozzo.com> Signed-off-by:
Pavel Emelyanov <xemul@virtuozzo.com> Signed-off-by:
Andrei Vagin <avagin@virtuozzo.com>
-
Dmitry Safonov authored
While restorering compatible application on x86-64, we need to parse 32-bit vDSO. By that reason I need _three_ compiled object versions for util-vdso: - for native parasite it's util-vdso.o - for compatible parasite it's compat/util-vdso.o - for restorer it's util-vdso.o and util-vdso-elf32.o Note, that I can't link compat/util-vdso.o to restorer, as it's i386 ELF which ld can't link to x86_64 ELF file. TODO: maybe I'll need to refactor and introduce generic CONFIG_COMPAT instead of those defined(CONFIG_X86_32). Fixes: pie: 27504: vdso: Mapping compatible vDSO at 0x25000 pie: 27504: Remap 0x7f3de3efa000->0x8048000 len 0x1000 ... pie: 27504: vdso: Parsing at 0xf7776000 0xf7778000 pie: 27504: Error (pie/util-vdso.c:87): vdso: Elf header magic mismatch pie: 27504: Error (pie/restorer.c:1540): Restorer fail 27504 (00.029188) Error (cr-restore.c:988): 27504 exited, status=1 (00.033072) Error (cr-restore.c:1870): Restoring FAILED. Cc: Cyrill Gorcunov <gorcunov@openvz.org> Signed-off-by:
Dmitry Safonov <dsafonov@virtuozzo.com> Signed-off-by:
Pavel Emelyanov <xemul@virtuozzo.com> Signed-off-by:
Andrei Vagin <avagin@virtuozzo.com>
-
Dmitry Safonov authored
Map here instead of park before unmap. TODO: need to check that mapped size is smaller than x86_64 vDSO. Cc: Cyrill Gorcunov <gorcunov@openvz.org> Signed-off-by:
Dmitry Safonov <dsafonov@virtuozzo.com> Signed-off-by:
Pavel Emelyanov <xemul@virtuozzo.com> Signed-off-by:
Andrei Vagin <avagin@virtuozzo.com>
-
Dmitry Safonov authored
We need to do it in pure ia32 asm. Cc: Cyrill Gorcunov <gorcunov@openvz.org> Signed-off-by:
Dmitry Safonov <dsafonov@virtuozzo.com> Signed-off-by:
Pavel Emelyanov <xemul@virtuozzo.com> Signed-off-by:
Andrei Vagin <avagin@virtuozzo.com>
-
Dmitry Safonov authored
Their vDSO's pfn differ from native tasks. TODO: compute on dump compatible vDSO's pfn. Cc: Cyrill Gorcunov <gorcunov@openvz.org> Signed-off-by:
Dmitry Safonov <dsafonov@virtuozzo.com> Signed-off-by:
Pavel Emelyanov <xemul@virtuozzo.com> Signed-off-by:
Andrei Vagin <avagin@virtuozzo.com>
-
Dmitry Safonov authored
As it has equall size for compat/native tasks. Fixes for compatible tasks: pie: Daemon waits for command (00.009247) Fetched ack: 7 7 0 pie: __fetched msg: 9 0 0 pie: Error (pie/parasite.c:106): sys_sigaction failed (-22) pie: __sent ack msg: 9 9 -22 pie: Error (pie/parasite.c:725): Close the control socket for writing Cc: Cyrill Gorcunov <gorcunov@openvz.org> Signed-off-by:
Dmitry Safonov <dsafonov@virtuozzo.com> Signed-off-by:
Pavel Emelyanov <xemul@virtuozzo.com> Signed-off-by:
Andrei Vagin <avagin@virtuozzo.com>
-
Dmitry Safonov authored
Change page_xfer_dump_pages the way it could handle compatible iovs. Separated hole dumping in page_xfer_dump_hole and introduced iterator function get_iov which will return native iovec, converting compatible iovec if needed. Fixes: (00.009060) Fetched ack: 7 7 0 (00.009061) Transfering pages: (00.009062) buf 16/16 (00.009063) p 0x100008048000 [32841] (00.009101) Error (page-xfer.c:504): Only 65536 of 17592320561152 bytes have been spliced (00.009253) page-pipe: Killing page pipe (00.009263) ---------------------------------------- Cc: Cyrill Gorcunov <gorcunov@openvz.org> Signed-off-by:
Dmitry Safonov <dsafonov@virtuozzo.com> Signed-off-by:
Pavel Emelyanov <xemul@virtuozzo.com> Signed-off-by:
Andrei Vagin <avagin@virtuozzo.com>
-
Dmitry Safonov authored
struct iovec may have different size for dumpee. But that reason, pages dump will fail (with added debug to pie): (00.011440) page-pipe: Page pipe: (00.011441) page-pipe: * 1 pipes 8/523 iovs: (00.011442) page-pipe: buf 16 pages, 8 iovs: (00.011444) page-pipe: 0x8048000 3 (00.011446) page-pipe: 0xf7512000 1 (00.011447) page-pipe: 0xf76ca000 4 (00.011449) page-pipe: 0xf76cf000 1 (00.011450) page-pipe: 0xf76dc000 2 (00.011452) page-pipe: 0xf76e1000 1 (00.011454) page-pipe: 0xf7702000 2 (00.011455) page-pipe: 0xffdad000 2 (00.011470) page-pipe: * 0 holes: (00.011471) PPB: 16 pages 8 segs 16 pipe 0 off (00.011476) Sent msg to daemon 8 0 0 pie: __fetched msg: 8 0 0 (00.011479) Wait for ack 8 on daemon socket pie: sys_vmsplice for 16 pages 8 segs 0 off pie: buf 16 pages, 8 iovs: pie: 0x8048000 0 pie: 0x3000 0 pie: 0xf7512000 0 pie: 0x1000 0 pie: 0xf76ca000 0 pie: 0x4000 0 pie: 0xf76cf000 0 pie: 0x1000 0 pie: Error (pie/parasite.c:93): Can't splice pages to pipe (0/16) pie: __sent ack msg: 8 8 -1 Cc: Cyrill Gorcunov <gorcunov@openvz.org> Signed-off-by:
Dmitry Safonov <dsafonov@virtuozzo.com> Signed-off-by:
Pavel Emelyanov <xemul@virtuozzo.com> Signed-off-by:
Andrei Vagin <avagin@virtuozzo.com>
-
Dmitry Safonov authored
Compatible parasite will use standard types, which are sized as _args_compat structures in "parasite-compat.h". Sometimes I miss high-level overloading in C. Cc: Cyrill Gorcunov <gorcunov@openvz.org> Signed-off-by:
Dmitry Safonov <dsafonov@virtuozzo.com> Signed-off-by:
Pavel Emelyanov <xemul@virtuozzo.com> Signed-off-by:
Andrei Vagin <avagin@virtuozzo.com>
-
Dmitry Safonov authored
Cc: Cyrill Gorcunov <gorcunov@openvz.org> Signed-off-by:
Dmitry Safonov <dsafonov@virtuozzo.com> Signed-off-by:
Pavel Emelyanov <xemul@virtuozzo.com> Signed-off-by:
Andrei Vagin <avagin@virtuozzo.com>
-
Dmitry Safonov authored
Cc: Cyrill Gorcunov <gorcunov@openvz.org> Signed-off-by:
Dmitry Safonov <dsafonov@virtuozzo.com> Signed-off-by:
Pavel Emelyanov <xemul@virtuozzo.com> Signed-off-by:
Andrei Vagin <avagin@virtuozzo.com>
-
Dmitry Safonov authored
Generic code uses raw syscall numbers for: - syscall_seized, to execute through parasite control needed syscall; - parasite_stop_on_syscall, to trap couple of tasks on needed syscall. As syscall numbers may differ (and differ for x86) between native and compatible mode, we need proper syscall wrapper here. Cc: Cyrill Gorcunov <gorcunov@openvz.org> Signed-off-by:
Dmitry Safonov <dsafonov@virtuozzo.com> Signed-off-by:
Pavel Emelyanov <xemul@virtuozzo.com> Signed-off-by:
Andrei Vagin <avagin@virtuozzo.com>
-
Dmitry Safonov authored
Seems like, offset was broken. And it had typo: leal -> movl (according to 64-bit parasite header), as cmd parameter is int (not pointer to int) in parasite_service: int __used __parasite_entry parasite_service(unsigned int cmd, void *args) Fixed - loads good now. Cc: Cyrill Gorcunov <gorcunov@openvz.org> Signed-off-by:
Dmitry Safonov <dsafonov@virtuozzo.com> Signed-off-by:
Pavel Emelyanov <xemul@virtuozzo.com> Signed-off-by:
Andrei Vagin <avagin@virtuozzo.com>
-
Dmitry Safonov authored
Do pure 32-bit sigreturn. Change code selector, do 0x80 rt_sigreturn. We should have here remapped 32-bit vDSO, all should be fine. Cc: Cyrill Gorcunov <gorcunov@openvz.org> Signed-off-by:
Dmitry Safonov <dsafonov@virtuozzo.com> Signed-off-by:
Pavel Emelyanov <xemul@virtuozzo.com> Signed-off-by:
Andrei Vagin <avagin@virtuozzo.com>
-
Dmitry Safonov authored
I tried to split this patch as much as it goes, but still it's quite huge. Mostly it has many compatible structures declarations. Lesser it contains adaptation to new native/compat sigframe duality. The only logic that changed by this patch is the order of creating sigframe in construct_sigframe. Cc: Cyrill Gorcunov <gorcunov@openvz.org> Signed-off-by:
Dmitry Safonov <dsafonov@virtuozzo.com> Signed-off-by:
Pavel Emelyanov <xemul@virtuozzo.com> Signed-off-by:
Andrei Vagin <avagin@virtuozzo.com>
-
Dmitry Safonov authored
Missed has_gpregs_case and on restore it's always native task. Cc: Cyrill Gorcunov <gorcunov@openvz.org> Signed-off-by:
Dmitry Safonov <dsafonov@virtuozzo.com> Signed-off-by:
Pavel Emelyanov <xemul@virtuozzo.com> Signed-off-by:
Andrei Vagin <avagin@virtuozzo.com>
-
Dmitry Safonov authored
Impact: just a bit more info for debugging. Cc: Cyrill Gorcunov <gorcunov@openvz.org> Signed-off-by:
Dmitry Safonov <dsafonov@virtuozzo.com> Acked-by:
Cyrill Gorcunov <gorcunov@openvz.org> Signed-off-by:
Pavel Emelyanov <xemul@virtuozzo.com> Signed-off-by:
Andrei Vagin <avagin@virtuozzo.com>
-
Dmitry Safonov authored
It took a little time on travis (I didn't measure, just starred at build and it added not visible delay for build). But it will help to verify that compel works on all supported arches. Cc: Cyrill Gorcunov <gorcunov@openvz.org> Signed-off-by:
Dmitry Safonov <dsafonov@virtuozzo.com> Reviewed-by:
Cyrill Gorcunov <gorcunov@gmail.com> Signed-off-by:
Pavel Emelyanov <xemul@virtuozzo.com> Signed-off-by:
Andrei Vagin <avagin@virtuozzo.com>
-
Dmitry Safonov authored
Add missing string.h include for memcpy(), add extern __run_tests from handle_binary.o. Fixes: commit 67526eb51ecf ("compel: add tests for compel"). Cc: Cyrill Gorcunov <gorcunov@openvz.org> Signed-off-by:
Dmitry Safonov <dsafonov@virtuozzo.com> Reviewed-by:
Cyrill Gorcunov <gorcunov@gmail.com> Signed-off-by:
Pavel Emelyanov <xemul@virtuozzo.com> Signed-off-by:
Andrei Vagin <avagin@virtuozzo.com>
-
Dmitry Safonov authored
Cc: Cyrill Gorcunov <gorcunov@openvz.org> Signed-off-by:
Dmitry Safonov <dsafonov@virtuozzo.com> Reviewed-by:
Cyrill Gorcunov <gorcunov@gmail.com> Signed-off-by:
Pavel Emelyanov <xemul@virtuozzo.com> Signed-off-by:
Andrei Vagin <avagin@virtuozzo.com>
-
Dmitry Safonov authored
To check test's result in travis. Cc: Cyrill Gorcunov <gorcunov@openvz.org> Signed-off-by:
Dmitry Safonov <dsafonov@virtuozzo.com> Reviewed-by:
Cyrill Gorcunov <gorcunov@gmail.com> Signed-off-by:
Pavel Emelyanov <xemul@virtuozzo.com> Signed-off-by:
Andrei Vagin <avagin@virtuozzo.com>
-
Dmitry Safonov authored
Now it looks prettier. Also deleted unnecessary parameters from test's functions. No functional changes. Cc: Cyrill Gorcunov <gorcunov@openvz.org> Signed-off-by:
Dmitry Safonov <dsafonov@virtuozzo.com> Reviewed-by:
Cyrill Gorcunov <gorcunov@gmail.com> Signed-off-by:
Pavel Emelyanov <xemul@virtuozzo.com> Signed-off-by:
Andrei Vagin <avagin@virtuozzo.com>
-
Dmitry Safonov authored
Now it has 4 new tests: ok 4 - section table start oob (64-bit ELF) ok 5 - too many sections in table (64-bit ELF) ok 6 - strings section's header oob of section table (64-bit ELF) ok 7 - strings section oob (64-bit ELF) I.e, if we forget to test string section's header oob with the next diff: >--- a/compel/handle-elf.c >+++ b/compel/handle-elf.c >@@ -122,7 +122,7 @@ static const char *get_strings_section(Ehdr_t *hdr, uintptr_t mem, > pr_err("String section @%#zx size %#lx is out of [%#zx, %#zx)\n", > addr, (unsigned long)secstrings_hdr->sh_size, > mem, mem + size); >- return NULL; >+ return (void*)addr; > } > > return (void*)addr; It will yell with: ok 1 - zero ELF header (64-bit ELF) ... not ok 6 - strings section's header oob of section table (64-bit ELF), expected -4 but ret is -1 ... not ok 12 - strings section's header oob of section table (32-bit ELF), expected -4 but ret is -1 Should be more useful when I add relocations tests after all. (but this seems for me useful too). Cc: Cyrill Gorcunov <gorcunov@openvz.org> Signed-off-by:
Dmitry Safonov <dsafonov@virtuozzo.com> Reviewed-by:
Cyrill Gorcunov <gorcunov@gmail.com> Signed-off-by:
Pavel Emelyanov <xemul@virtuozzo.com> Signed-off-by:
Andrei Vagin <avagin@virtuozzo.com>
-
Dmitry Safonov authored
Sorry for introducing that, but we need to force-rebuild implicit rules on the level of main Makefile. All the sub-makefiles should decide if the force-rebuilding target really needs a rebuild, because they know it's dependencies. Pattern-specific rules are implicit, so something like: .PHONY: compel/% criu/% #... will not work. .FORCE target seems the simplest way to solve this "going to submake on rebuild" problem. But maybe there is more elegant proposal? FWIW, before this patch: [criu]$ make compel/compel make[1]: Entering directory '~/tools/criu' HOSTDEP compel/handle-elf-32.d ... HOSTLINK compel/compel make[1]: Leaving directory '~/tools/criu' [criu]$ touch compel/main.c [criu]$ make compel/compel make: 'compel/compel' is up to date. [criu]$ touch compel/Makefile [criu]$ make compel/compel make: 'compel/compel' is up to date. After the patch: [criu]$ touch compel/main.c [criu]$ make compel/compel make[1]: Entering directory '~/tools/criu' HOSTDEP compel/main.d HOSTCC compel/main.o HOSTLINK compel/compel make[1]: Leaving directory '~/tools/criu' [criu]$ touch compel/Makefile [criu]$ make compel/compel make[1]: Entering directory '~/tools/criu' HOSTDEP compel/handle-elf-32.d ... HOSTLINK compel/compel make[1]: Leaving directory '~/tools/criu' Cc: Cyrill Gorcunov <gorcunov@openvz.org> Signed-off-by:
Dmitry Safonov <dsafonov@virtuozzo.com> Acked-by:
Cyrill Gorcunov <gorcunov@openvz.org> Signed-off-by:
Pavel Emelyanov <xemul@virtuozzo.com> Signed-off-by:
Andrei Vagin <avagin@virtuozzo.com>
-
Dmitry Safonov authored
Also changed tests messages, before (on x86): ok 1 - check zero ELF header ok 2 - check non-supported ELF header ok 3 - check non-relocatable ELF header ok 4 - check zero ELF header ok 5 - check non-supported ELF header ok 6 - check non-relocatable ELF header After: ok 1 - zero ELF header (64-bit ELF) ok 2 - unsupported ELF header (64-bit ELF) ok 3 - non-relocatable ELF header (64-bit ELF) ok 4 - zero ELF header (32-bit ELF) ok 5 - unsupported ELF header (32-bit ELF) ok 6 - non-relocatable ELF header (32-bit ELF) Cc: Cyrill Gorcunov <gorcunov@openvz.org> Signed-off-by:
Dmitry Safonov <dsafonov@virtuozzo.com> Acked-by:
Cyrill Gorcunov <gorcunov@openvz.org> Signed-off-by:
Pavel Emelyanov <xemul@virtuozzo.com> Signed-off-by:
Andrei Vagin <avagin@virtuozzo.com>
-
Dmitry Safonov authored
Cc: Cyrill Gorcunov <gorcunov@openvz.org> Signed-off-by:
Dmitry Safonov <dsafonov@virtuozzo.com> Acked-by:
Cyrill Gorcunov <gorcunov@openvz.org> Signed-off-by:
Pavel Emelyanov <xemul@virtuozzo.com> Signed-off-by:
Andrei Vagin <avagin@virtuozzo.com>
-
Dmitry Safonov authored
Well, I hope, I will not make integer promotion mistakes anymore: > 6.3.1.1 > If an int can represent all values of the original type, the value > is converted to an int; otherwise, it is converted to an unsigned int. > These are called the integer promotions.48) All other types are > unchanged by the integer promotions. >>> CID 161317: (SIGN_EXTENSION) >>> Suspicious implicit sign extension: "hdr->e_shentsize" with type "unsigned short" (16 bits, unsigned) is promoted in "hdr->e_shentsize * hdr->e_shnum" to type "int" (32 bits, signed), then sign-extended to type "unsigned long" (64 bits, unsigned). If "hdr->e_shentsize * hdr->e_shnum" is greater than 0x7FFFFFFF, the upper bits of the result will all be 1. 96 size_t sec_table_size = hdr->e_shentsize * hdr->e_shnum; >>> CID 161317: (SIGN_EXTENSION) >>> Suspicious implicit sign extension: "hdr->e_shentsize" with type "unsigned short" (16 bits, unsigned) is promoted in "hdr->e_shentsize * hdr->e_shstrndx" to type "int" (32 bits, signed), then sign-extended to type "unsigned long" (64 bits, unsigned). If "hdr->e_shentsize * hdr->e_shstrndx" is greater than 0x7FFFFFFF, the upper bits of the result will all be 1. 111 addr = sec_table + hdr->e_shentsize * hdr->e_shstrndx; Fixes: #157 Fixes: commit 36664a3cabec ("compel: separate get_strings_section from __handle_elf"). Reported-by: Coverity Reported-by:
Andrew Vagin <avagin@virtuozzo.com> Cc: Andrew Vagin <avagin@virtuozzo.com> Cc: Cyrill Gorcunov <gorcunov@openvz.org> Signed-off-by:
Dmitry Safonov <dsafonov@virtuozzo.com> Acked-by:
Cyrill Gorcunov <gorcunov@openvz.org> Signed-off-by:
Pavel Emelyanov <xemul@virtuozzo.com> Signed-off-by:
Andrei Vagin <avagin@virtuozzo.com>
-
Dmitry Safonov authored
Yet they only test for ELF header, but soon I'll add more of them. It's build with $ make test/compel/handle_binary and test output is in TAP format: $ ./test/compel/handle_binary ok 1 - check zero ELF header ok 2 - check non-supported ELF header ok 3 - check non-relocatable ELF header ok 4 - check zero ELF header ok 5 - check non-supported ELF header ok 6 - check non-relocatable ELF header (here two runs for x86_64 and x86_32 ELF binaries) I'm planning to integrate it with Travis, so we will be sure that compel is properly working (as this tests doesn't need any ns and may be run on qemu-static). Cc: Cyrill Gorcunov <gorcunov@openvz.org> Signed-off-by:
Dmitry Safonov <dsafonov@virtuozzo.com> Reviewed-by:
Cyrill Gorcunov <gorcunov@openvz.org> Signed-off-by:
Pavel Emelyanov <xemul@virtuozzo.com> Signed-off-by:
Andrei Vagin <avagin@virtuozzo.com>
-
Dmitry Safonov authored
For tests, we need to know if elf file parsing was interrupted in a proper place (and thus meaningful error numbers). Cc: Cyrill Gorcunov <gorcunov@openvz.org> Signed-off-by:
Dmitry Safonov <dsafonov@virtuozzo.com> Reviewed-by:
Cyrill Gorcunov <gorcunov@openvz.org> Signed-off-by:
Pavel Emelyanov <xemul@virtuozzo.com> Signed-off-by:
Andrei Vagin <avagin@virtuozzo.com>
-
Dmitry Safonov authored
That will help to omit pr_* output on the screen on tests, where one can redefine `opts`. Cc: Cyrill Gorcunov <gorcunov@openvz.org> Signed-off-by:
Dmitry Safonov <dsafonov@virtuozzo.com> Reviewed-by:
Cyrill Gorcunov <gorcunov@openvz.org> Signed-off-by:
Pavel Emelyanov <xemul@virtuozzo.com> Signed-off-by:
Andrei Vagin <avagin@virtuozzo.com>
-
Dmitry Safonov authored
I copied __ptr_oob* checks from util-vdso.c. That will allow to check not only structure begin pointers, but structure end also. Before this patch code checked if strings section's header pointer is OOB, but it did it after dereferencing this pointer, which is meaningless. Now it checks: - OOB of sections table, - strings section's header should be inside sections table, - check strings section with it's length for OOB. In the very next patches I will add tests for this functions and other compel-related changes. Cc: Cyrill Gorcunov <gorcunov@openvz.org> Signed-off-by:
Dmitry Safonov <dsafonov@virtuozzo.com> Reviewed-by:
Cyrill Gorcunov <gorcunov@openvz.org> Signed-off-by:
Pavel Emelyanov <xemul@virtuozzo.com> Signed-off-by:
Andrei Vagin <avagin@virtuozzo.com>
-
Cyrill Gorcunov authored
Signed-off-by:
Cyrill Gorcunov <gorcunov@openvz.org> Reviewed-by:
Dmitry Safonov <dsafonov@virtuozzo.com> Signed-off-by:
Pavel Emelyanov <xemul@virtuozzo.com> Signed-off-by:
Andrei Vagin <avagin@virtuozzo.com>
-
Cyrill Gorcunov authored
There is no longer phony compel target but compel/compel instead. Signed-off-by:
Cyrill Gorcunov <gorcunov@openvz.org> Reviewed-by:
Dmitry Safonov <dsafonov@virtuozzo.com> Signed-off-by:
Pavel Emelyanov <xemul@virtuozzo.com> Signed-off-by:
Andrei Vagin <avagin@virtuozzo.com>
-
Dmitry Safonov authored
I think, it's more pretty to pass -DCONFIG_X86_* instead of all $DEFINES. That simplifies the statement and makes it more readable. Cc: Cyrill Gorcunov <gorcunov@openvz.org> Signed-off-by:
Dmitry Safonov <dsafonov@virtuozzo.com> Acked-by:
Cyrill Gorcunov <gorcunov@openvz.org> Signed-off-by:
Pavel Emelyanov <xemul@virtuozzo.com> Signed-off-by:
Andrei Vagin <avagin@virtuozzo.com>
-
Dmitry Safonov authored
Sorry for this typo, I should be more attentive. Fixes: commit ea523b183326 ("compel: shuffle skeleton a bit"). Cc: Cyrill Gorcunov <gorcunov@openvz.org> Signed-off-by:
Dmitry Safonov <dsafonov@virtuozzo.com> Reviewed-by:
Cyrill Gorcunov <gorcunov@openvz.org> Signed-off-by:
Pavel Emelyanov <xemul@virtuozzo.com> Signed-off-by:
Andrei Vagin <avagin@virtuozzo.com>
-
Dmitry Safonov authored
Check if ELF header complements ELF magic in per-arch way. Cc: Cyrill Gorcunov <gorcunov@openvz.org> Signed-off-by:
Dmitry Safonov <dsafonov@virtuozzo.com> Acked-by:
Cyrill Gorcunov <gorcunov@openvz.org> Signed-off-by:
Pavel Emelyanov <xemul@virtuozzo.com> Signed-off-by:
Andrei Vagin <avagin@virtuozzo.com>
-
Dmitry Safonov authored
Split handle_elf() function from main.c to per-arch. Rename it to handle_binary not to cross-reference. Rename generic handle_elf to __handle_elf as with define not to litter namespace. Cc: Cyrill Gorcunov <gorcunov@openvz.org> Signed-off-by:
Dmitry Safonov <dsafonov@virtuozzo.com> Acked-by:
Cyrill Gorcunov <gorcunov@openvz.org> Signed-off-by:
Pavel Emelyanov <xemul@virtuozzo.com> Signed-off-by:
Andrei Vagin <avagin@virtuozzo.com>
-