hmm, you never going to believe this but when I do replace all the forks with a vfork (3 times) then it does run So i guess Alex is correct
I did not yet made the changes line by line to find out which one of the 3 forks is the problem but I will as soon I'm back from work /martinb -----Oorspronkelijk bericht----- Van: Alex Landau [mailto:[EMAIL PROTECTED] Verzonden: dinsdag 8 januari 2008 7:33 Aan: Denys Vlasenko CC: [email protected]; Martinb_ARM_NOMMU_KISSDVD Onderwerp: Fw: Hush cant replace lash for my situation Denys, It prints vfork(), but actually executes fork() (a typo in your patch below), so I'd say busybox does not recognize that this is a NOMMU system. Alex ----- Forwarded Message ---- > From: Martinb_ARM_NOMMU_KISSDVD <[EMAIL PROTECTED]> > To: Denys Vlasenko <[EMAIL PROTECTED]> > Cc: [email protected] > Sent: Tuesday, January 8, 2008 12:34:41 AM > Subject: RE: Hush cant replace lash for my situation > > did include the 2 lines and recompile > output is: > > parse_stream_outer: run_list > run_list entered > : run_list_real with 1 members > run_list_real start lvl 1 > : rword=0 if_code=0 next_if_code=0 skip_more=12 > : run_pipe_real with 1 members > run_pipe_real start: single_fg=1 > : pipe member 'ls' '(null)'... > : vfork returned -1 > run_pipe_real return -1 > : checkjobs returned 0 > : setting last_return_code=0 > : rword=0 if_code=0 next_if_code=0 skip_more=12 > run_list_real lvl 1 return 0 > run_list return 0 > > You can give me more debug instructions if you want, i dont have > the > skills > but i do have the time > > /martinb > > > > ================================================ > > It seems it never goes into if (!child->pid) {...} part below: > Can you add debug_printf_exec() as shown wit '+' and test again? > > if (child->argv) > debug_printf_exec(": pipe member > '%s' > '%s'...\n", > child->argv[0], child->argv[1]); > else > debug_printf_exec(": pipe member with > no > argv\n"); > > /* pipes are inserted between pairs of commands */ > if ((i + 1) < pi->num_progs) { > pipe(pipefds); > nextout = pipefds[1]; > } else { > nextout = 1; > pipefds[0] = -1; > } > > /* XXX test for failed fork()? */ > #if BB_MMU > child->pid = fork(); > + debug_printf_exec(": vfork returned %d\n", child->pid); > #else > child->pid = vfork(); > + debug_printf_exec(": fork returned %d\n", child->pid); > #endif > if (!child->pid) { /* child */ > > -- > vda > > _______________________________________________ > busybox mailing list > [email protected] > http://busybox.net/cgi-bin/mailman/listinfo/busybox > ______________________________________________________________________ ______________ Looking for last minute shopping deals? Find them fast with Yahoo! Search. http://tools.search.yahoo.com/newsearch/category.php?category=shopping _______________________________________________ busybox mailing list [email protected] http://busybox.net/cgi-bin/mailman/listinfo/busybox
