Finalize arg, env, aux migration (3/3) (CXX) (BB)
authorKevin Klues <klueska@cs.berkeley.edu>
Mon, 13 Jul 2015 06:41:52 +0000 (23:41 -0700)
committerBarret Rhoden <brho@cs.berkeley.edu>
Tue, 14 Jul 2015 14:33:16 +0000 (10:33 -0400)
Remove all traces of procinfo->argp and procinfo->argbuf from the kernel
and the cooresponding procinfo.h header file.

kern/include/ros/procinfo.h
kern/src/process.c
kern/src/syscall.c

index ea9cf69..306a2a5 100644 (file)
@@ -53,9 +53,6 @@ typedef struct procinfo {
        uint64_t tsc_freq;
        uint64_t timing_overhead;
        void *heap_bottom;
-       /* for traditional forks, these two need to be memcpy'd over: */
-       char *argp[PROCINFO_MAX_ARGP];
-       char argbuf[PROCINFO_ARGBUF_SIZE];
        /* glibc relies on stuff above this point.  if you change it, you need to
         * rebuild glibc. */
        bool is_mcp;                    /* is in multi mode */
index d73e913..4465740 100644 (file)
@@ -272,8 +272,6 @@ static void proc_init_procinfo(struct proc* p)
        p->procinfo->timing_overhead = system_timing.timing_overhead;
        p->procinfo->heap_bottom = 0;
        /* 0'ing the arguments.  Some higher function will need to set them */
-       memset(p->procinfo->argp, 0, sizeof(p->procinfo->argp));
-       memset(p->procinfo->argbuf, 0, sizeof(p->procinfo->argbuf));
        memset(p->procinfo->res_grant, 0, sizeof(p->procinfo->res_grant));
        /* 0'ing the vcore/pcore map.  Will link the vcores later. */
        memset(&p->procinfo->vcoremap, 0, sizeof(p->procinfo->vcoremap));
index fc96fde..cf2ed0f 100644 (file)
@@ -727,10 +727,6 @@ static ssize_t sys_fork(env_t* e)
 
        /* In general, a forked process should be a fresh process, and we copy over
         * whatever stuff is needed between procinfo/procdata. */
-       /* Copy over the procinfo argument stuff in case they don't exec */
-       memcpy(env->procinfo->argp, e->procinfo->argp, sizeof(e->procinfo->argp));
-       memcpy(env->procinfo->argbuf, e->procinfo->argbuf,
-              sizeof(e->procinfo->argbuf));
        #ifdef CONFIG_X86
        /* new guy needs to know about ldt (everything else in procdata is fresh */
        env->procdata->ldt = e->procdata->ldt;