diff options
author | ben <ben@pkgsrc.org> | 2005-10-13 03:31:06 +0000 |
---|---|---|
committer | ben <ben@pkgsrc.org> | 2005-10-13 03:31:06 +0000 |
commit | c2924a6958b00c72e21cecd4eebd7a8ff682aa27 (patch) | |
tree | 1c46abe3e7a7d59285e30bf9544910a57850b4d8 /benchmarks/bytebench | |
parent | cf621bef23d9aba62966615659c1c216d4bfa895 (diff) | |
download | pkgsrc-c2924a6958b00c72e21cecd4eebd7a8ff682aa27.tar.gz |
Correct execl() so that the argument list is NULL terminated.
Terminating with 0 worked under NetBSD 2.0.2, but it fails with
EFAULT under NetBSD/amd64 3.0_BETA.
Diffstat (limited to 'benchmarks/bytebench')
-rw-r--r-- | benchmarks/bytebench/distinfo | 4 | ||||
-rw-r--r-- | benchmarks/bytebench/patches/patch-af | 19 |
2 files changed, 14 insertions, 9 deletions
diff --git a/benchmarks/bytebench/distinfo b/benchmarks/bytebench/distinfo index 58e3f7f0c7a..20f1717e19c 100644 --- a/benchmarks/bytebench/distinfo +++ b/benchmarks/bytebench/distinfo @@ -1,4 +1,4 @@ -$NetBSD: distinfo,v 1.7 2005/02/22 21:16:36 agc Exp $ +$NetBSD: distinfo,v 1.8 2005/10/13 03:31:06 ben Exp $ SHA1 (unixbench-4.1.0.tgz) = 0a43d9cf08869c0f81bde4647be6bcf76c064248 RMD160 (unixbench-4.1.0.tgz) = 182e8a35574df0cd7984662bf99d47a7e24e7e03 @@ -8,4 +8,4 @@ SHA1 (patch-ab) = 9f4c714b1aa1e389a54465771a48d251fe5165cf SHA1 (patch-ac) = ebfb09da84c96f8c6f48293c65a74dcf8a43cff5 SHA1 (patch-ad) = 3a1b788d9fa51fc168d59d8c87b1f476df2d5f41 SHA1 (patch-ae) = fbbce3deed7f0421034c1d57b66b1967ad8bddf1 -SHA1 (patch-af) = 022a7e668dfca41e2a6f3a825f5bd17af29dc270 +SHA1 (patch-af) = 725a82ecb5f15ec47dda39d53a16027a0e4a7efd diff --git a/benchmarks/bytebench/patches/patch-af b/benchmarks/bytebench/patches/patch-af index 74ca4afb1af..ab9588b52f8 100644 --- a/benchmarks/bytebench/patches/patch-af +++ b/benchmarks/bytebench/patches/patch-af @@ -1,9 +1,7 @@ -$NetBSD: patch-af,v 1.2 2003/04/26 05:18:00 simonb Exp $ +$NetBSD: patch-af,v 1.3 2005/10/13 03:31:06 ben Exp $ -Fix LP64 problem. - ---- src/execl.c.orig 1999-07-29 07:46:58.000000000 +1000 -+++ src/execl.c 2003-04-26 15:10:39.000000000 +1000 +--- src/execl.c.orig 1999-07-28 14:46:58.000000000 -0700 ++++ src/execl.c @@ -22,6 +22,7 @@ */ char SCCSid[] = "@(#) @(#)execl.c:3.3 -- 5/15/91 19:30:19"; @@ -12,7 +10,7 @@ Fix LP64 problem. #include <stdio.h> #include <sys/types.h> -@@ -45,8 +46,9 @@ +@@ -45,8 +46,9 @@ char *argv[]; char *ptr; char *fullpath; int duration; @@ -23,7 +21,7 @@ Fix LP64 problem. #ifdef DEBUG int count; -@@ -77,12 +79,13 @@ +@@ -77,18 +79,19 @@ char *argv[]; duration = atoi(argv[2]); dur_str = argv[2]; iter = (unsigned long)atoi(argv[3]); /* where are we now ? */ @@ -39,3 +37,10 @@ Fix LP64 problem. time(&this_time); if (this_time - start_time >= duration) { /* time has run out */ fprintf(stderr, "%lu loops\n", iter); + exit(0); + } +- execl(fullpath, fullpath, "0", dur_str, count_str, start_str, 0); ++ execl(fullpath, fullpath, "0", dur_str, count_str, start_str, NULL); + printf("Exec failed at iteration %lu\n", iter); + perror("Reason"); + exit(1); |