int executable_stack;
        int retval, i;
 
+       kdebug("____ LOAD %d ____", current->pid);
+
        memset(&exec_params, 0, sizeof(exec_params));
        memset(&interp_params, 0, sizeof(interp_params));
 
 
                if (mm) {
                        if (phdr->p_flags & PF_X) {
-                               mm->start_code = seg->addr;
-                               mm->end_code = seg->addr + phdr->p_memsz;
+                               if (!mm->start_code) {
+                                       mm->start_code = seg->addr;
+                                       mm->end_code = seg->addr +
+                                               phdr->p_memsz;
+                               }
                        } else if (!mm->start_data) {
                                mm->start_data = seg->addr;
 #ifndef CONFIG_MMU
 
                if (mm) {
                        if (phdr->p_flags & PF_X) {
-                               mm->start_code = maddr;
-                               mm->end_code = maddr + phdr->p_memsz;
+                               if (!mm->start_code) {
+                                       mm->start_code = maddr;
+                                       mm->end_code = maddr + phdr->p_memsz;
+                               }
                        } else if (!mm->start_data) {
                                mm->start_data = maddr;
                                mm->end_data = maddr + phdr->p_memsz;