summaryrefslogtreecommitdiff
path: root/exec
diff options
context:
space:
mode:
authorThomas Bushnell <thomas@gnu.org>1996-11-18 23:44:07 +0000
committerThomas Bushnell <thomas@gnu.org>1996-11-18 23:44:07 +0000
commit5a49fc0097b833965c8d82900dc5021b9d5b66db (patch)
tree712905728171ddae4502d12012c6222be1919b4b /exec
parent75134b8f36fb816af5b9d783b156dd71224ce9dd (diff)
Mon Nov 18 17:45:48 1996 Thomas Bushnell, n/BSG <thomas@gnu.ai.mit.edu>
* exec.c (load_section): If ANYWHERE, then make sure ADDR starts out at least past the first page, so that we don't take it. Then the library can (if desired) make the page no-access. Fri Nov 15 17:34:23 1996 Thomas Bushnell, n/BSG <thomas@gnu.ai.mit.edu> * exec.c: Don't include <hurd/shared.h> any more. * main.c (S_exec_init): New arg syntax of trivfs_open.
Diffstat (limited to 'exec')
-rw-r--r--exec/ChangeLog12
-rw-r--r--exec/exec.c3
-rw-r--r--exec/main.c4
3 files changed, 17 insertions, 2 deletions
diff --git a/exec/ChangeLog b/exec/ChangeLog
index 5051a17c..c8abbad4 100644
--- a/exec/ChangeLog
+++ b/exec/ChangeLog
@@ -1,3 +1,15 @@
+Mon Nov 18 17:45:48 1996 Thomas Bushnell, n/BSG <thomas@gnu.ai.mit.edu>
+
+ * exec.c (load_section): If ANYWHERE, then make sure ADDR starts
+ out at least past the first page, so that we don't take it. Then
+ the library can (if desired) make the page no-access.
+
+Fri Nov 15 17:34:23 1996 Thomas Bushnell, n/BSG <thomas@gnu.ai.mit.edu>
+
+ * exec.c: Don't include <hurd/shared.h> any more.
+
+ * main.c (S_exec_init): New arg syntax of trivfs_open.
+
Mon Oct 7 21:31:25 1996 Thomas Bushnell, n/BSG <thomas@gnu.ai.mit.edu>
* exec.c (fake_seek): New function.
diff --git a/exec/exec.c b/exec/exec.c
index 12dab482..a3ef9240 100644
--- a/exec/exec.c
+++ b/exec/exec.c
@@ -32,7 +32,6 @@ the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA. */
#include "priv.h"
#include <hurd.h>
#include <hurd/exec.h>
-#include <hurd/shared.h>
#include <sys/stat.h>
#include <unistd.h>
@@ -187,6 +186,8 @@ load_section (void *section, struct execdata *u)
default:
break;
}
+ if (anywhere && addr < vm_page_size)
+ addr = vm_page_size;
}
if (memsz == 0)
diff --git a/exec/main.c b/exec/main.c
index 4148946d..3bee8221 100644
--- a/exec/main.c
+++ b/exec/main.c
@@ -269,7 +269,9 @@ S_exec_init (struct trivfs_protid *protid,
change. */
struct trivfs_protid *cred;
- err = trivfs_open (fsys, 0, 0, 0, 0, 0, MACH_PORT_NULL, &cred);
+ err = trivfs_open (fsys,
+ iohelp_create_iouser (make_idvec (), make_idvec ()),
+ 0, MACH_PORT_NULL, &cred);
assert_perror (err);
proc_execdata_notify (procserver, ports_get_right (cred),