search for: clone_vfork

Displaying 13 results from an estimated 13 matches for "clone_vfork".

2024 Mar 15
1
Using multiple temporary indexes during updates
...at the same time as implementing https://trac.xapian.org/ticket/444 ). Incidentally, for the "fork() on a large process is slow" bit at the end, posix_spawn() may help assuming it's flexible enough to do what you want. The glibc implementation calls "clone(2) with CLONE_VM and CLONE_VFORK flags". Cheers, Olly
2020 Aug 29
0
[klibc:master] ia64: Fix invalid memory access in vfork
...| 6 +----- 1 file changed, 1 insertion(+), 5 deletions(-) diff --git a/usr/klibc/arch/ia64/vfork.S b/usr/klibc/arch/ia64/vfork.S index 7e76a714..e513188b 100644 --- a/usr/klibc/arch/ia64/vfork.S +++ b/usr/klibc/arch/ia64/vfork.S @@ -26,16 +26,12 @@ vfork: mov r15=__NR_clone mov out0=CLONE_VM|CLONE_VFORK|SIGCHLD mov out1=0 - ;; break 0x100000 // Do the syscall - ;; - addl r15=0,r1 cmp.eq p7,p6 = -1,r10 ;; - ld8 r14=[r15] +(p7) movl r14 = errno ;; (p7) st4 [r14]=r8 - ;; (p7) mov r8=-1 br.ret.sptk.many b0 .endp vfork
2024 Mar 15
1
Using multiple temporary indexes during updates
Hi, I have been playing at converting the index update stage of the Recoll indexer to use multiple temporary indexes and a final merge. This yields an improvement factor of almost 3 (on my quad-core CPU), for the total indexing time for "easy" files like HTML pages. This is nice (!) and I wanted to share my admiration for the "compact()" method. If someone is interested in a
2006 Jun 26
0
[klibc 25/43] ia64 support for klibc
...f the clone syscall */ +#include <asm/unistd.h> +#include <asm/signal.h> +#include <klibc/archsys.h> + +/* These are redefined here because linux/sched.h isn't safe for + * inclusion in asm. + */ +#define CLONE_VM 0x00000100 /* set if VM shared between processes */ +#define CLONE_VFORK 0x00004000 /* set if parent wants the child to wake it up on exit */ + +/* pid_t vfork(void) */ +/* Implemented as clone(CLONE_VFORK | CLONE_VM | SIGCHLD, 0) */ + + .align 32 + .proc vfork + .global vfork +vfork: + alloc r2=ar.pfs,0,0,2,0 + mov r15=__NR_clone + mov out0=CLONE_VM|CLONE_VFORK|SIGCHLD...
2013 Oct 09
0
[PATCH 1/1] Porting klibc to AArch64
...- } 1; diff --git a/usr/klibc/arch/aarch64/vfork.S b/usr/klibc/arch/aarch64/vfork.S index 378098c..23869d3 100644 --- a/usr/klibc/arch/aarch64/vfork.S +++ b/usr/klibc/arch/aarch64/vfork.S @@ -13,10 +13,35 @@ .globl vfork .balign 8 vfork: - mov x0, #0x4111 /* CLONE_VM | CLONE_VFORK | SIGCHLD */ - mov x1, sp - cmn x0, #4095 - b.cs 1f - RET + /* Prepare for the system call */ + /* 1. Push the function pointer and argument location + on to the child process stack */ + /* 2. Gather the Flags */ + /* New sp is already in x1...
2014 Mar 11
4
[PATCH] add mips64 support
...; +} + +1; diff --git a/usr/klibc/arch/mips64/vfork.S b/usr/klibc/arch/mips64/vfork.S new file mode 100644 index 0000000..9aa955a --- /dev/null +++ b/usr/klibc/arch/mips64/vfork.S @@ -0,0 +1,15 @@ +#include <machine/asm.h> +#include <asm/unistd.h> + +#define CLONE_VM 0x00000100 +#define CLONE_VFORK 0x00004000 +#define SIGCHLD 18 + + .set noreorder + +LEAF(vfork) + li a0, CLONE_VFORK | CLONE_VM | SIGCHLD + li a1, 0 + j __syscall_common + li v0, __NR_clone + END(vfork) -- 1.8.3.4 (Apple Git-47)
2019 Feb 02
2
[PATCH 1/2] ia64: Fix invalid memory access in vfork
....S | 6 +----- 1 file changed, 1 insertion(+), 5 deletions(-) diff --git a/usr/klibc/arch/ia64/vfork.S b/usr/klibc/arch/ia64/vfork.S index 7e76a71..e513188 100644 --- a/usr/klibc/arch/ia64/vfork.S +++ b/usr/klibc/arch/ia64/vfork.S @@ -26,16 +26,12 @@ vfork: mov r15=__NR_clone mov out0=CLONE_VM|CLONE_VFORK|SIGCHLD mov out1=0 - ;; break 0x100000 // Do the syscall - ;; - addl r15=0,r1 cmp.eq p7,p6 = -1,r10 ;; - ld8 r14=[r15] +(p7) movl r14 = errno ;; (p7) st4 [r14]=r8 - ;; (p7) mov r8=-1 br.ret.sptk.many b0 .endp vfork -- 1.8.5.3
2006 Jun 26
2
[klibc 28/43] mips support for klibc
...a/usr/klibc/arch/mips/vfork.S b/usr/klibc/arch/mips/vfork.S new file mode 100644 index 0000000..f9f035b --- /dev/null +++ b/usr/klibc/arch/mips/vfork.S @@ -0,0 +1,16 @@ +#include <asm/asm.h> +#include <asm/regdef.h> +#include <asm/unistd.h> + +#define CLONE_VM 0x00000100 +#define CLONE_VFORK 0x00004000 +#define SIGCHLD 18 + + .set noreorder + +LEAF(vfork) + li a0, CLONE_VFORK | CLONE_VM | SIGCHLD + li a1, 0 + j __syscall_common + li v0, __NR_clone + END(vfork)
2013 Nov 12
0
[klibc:master] arm64: Add arm64 support
...l vfork + .balign 8 + +vfork: + /* Prepare for the system call */ + /* 1. Push the function pointer and argument location + on to the child process stack */ + /* 2. Gather the Flags */ + /* New sp is already in x1. */ + mov x0, #0x4111 /* CLONE_VM | CLONE_VFORK | SIGCHLD */ + mov x1, sp + mov w8,__NR_clone + svc 0 + cmp x0, #0x0 + b.ge 2f + neg x0, x0 + ldr x8, 1f + str x0, [x8] + mov x0, #-1 +2: + ret +1: + .dword errno + .size vfork...
2013 Nov 08
0
[PATCH 3/3] arm64: Introduce arm64 support
...l vfork + .balign 8 + +vfork: + /* Prepare for the system call */ + /* 1. Push the function pointer and argument location + on to the child process stack */ + /* 2. Gather the Flags */ + /* New sp is already in x1. */ + mov x0, #0x4111 /* CLONE_VM | CLONE_VFORK | SIGCHLD */ + mov x1, sp + mov w8,__NR_clone + svc 0 + cmp x0, #0x0 + b.ge 2f + neg x0, x0 + ldr x8, 1f + str x0, [x8] + mov x0, #-1 +2: + ret +1: + .dword errno + .size vfork...
2013 Nov 11
5
[PATCH V2 0/3] Introduce arm64 support
Hello, Here is V2 of the arm64 support for klibc patch set. Notable changes since the original series: * fp regs dropped from setjmp/longjmp * chmod, lstat and stat re-implemented with *at functions. * open64 merged into open. As with the original, this series is to be applied against the latest klibc, just after 25a66fa README.klibc: update build information V2 has been tested on x86_64
2013 Nov 08
9
[PATCH 0/3] Introduce arm64 support
Hello, This series introduces arm64 support to klibc. I've rebased the work from Neil Williams and Anil Singhar into the following three patches. Most of the code changes are due to new syscall implementations being needed for arm64 as a only a minimal set of syscalls are defined in the arm64 kernel. This series is to be applied against the latest klibc, just after 25a66fa README.klibc:
2006 Jun 28
35
[klibc 00/31] klibc as a historyless patchset (updated and reorganized)
I have updated the klibc patchset based on feedback received. In particular, the patchset has been reorganized so as not to break git-bisect. Additionally, this updates the patch base to 2.6.17-git12 (d38b69689c349f35502b92e20dafb30c62d49d63) and klibc 1.4.8; the main difference on the klibc side is removal of obsolete code. This is also available as a git tree at: