Jivin Wim Vandamme lays it down ...
> Moin,
> 
> I'm rather new to uclinux, but I'm currently working on a port to a
> custom arm based board.
> uclinux is alread booting, but the /bin/init process fails. I have
> tracked the problem down
> to vfork.

Just for reference (although I probably missed it) which kernel version
are you using ?

Cheers,
Davidm

> If you take a look at the following file:
> 
> file: uClinux-dist/uClibc/libc/sysdeps/linux/arm/vfork.S
> 
> ...
> vfork:
> 
> #ifdef __NR_vfork
>               swi     __NR_vfork
>               cmn     r0, #4096
>               movcc   pc, lr
> 
>               /* Check if vfork even exists.  */
>               ldr     r1, =-ENOSYS
>               teq     r0, r1
>               bne     __syscall_error
> #endif
> ...
> 
> When vfork() is called, I'm still in SVC mode. This means that the
> call to swi, will overwrite "lr"
> and this make the "movcc pc, lr" instruction fail. If I was in USR
> mode, the above code would
> be ok, because "lr" is banked.
> 
> Question: Is this a bug?
> 
> Or should I always call vfork() in USR mode. If this is the case, then
> were would be a good place
> to change from SVC to USR in uclinux bootup. I tried to look at other
> ports, but did not find any
> switch to USR mode during boot. Maybe I overlooked it.
> 
> Kind Regards,
> 
> W.
> 
> PS: I'm using uClinux-dist-20070130.tar.gz
> _______________________________________________
> uClinux-dev mailing list
> [email protected]
> http://mailman.uclinux.org/mailman/listinfo/uclinux-dev
> This message was resent by [email protected]
> To unsubscribe see:
> http://mailman.uclinux.org/mailman/options/uclinux-dev
> 

-- 
David McCullough,  [EMAIL PROTECTED],   Ph:+61 734352815
Secure Computing - SnapGear  http://www.uCdot.org http://www.cyberguard.com
_______________________________________________
uClinux-dev mailing list
[email protected]
http://mailman.uclinux.org/mailman/listinfo/uclinux-dev
This message was resent by [email protected]
To unsubscribe see:
http://mailman.uclinux.org/mailman/options/uclinux-dev

Reply via email to