Re: [PATCH 23/30] microblaze_mmu_v1: Enable fork syscall for MMU and add fork as vfork for noMMU

John Williams
2009-04-27T11:43:19Z

On Mon, Apr 27, 2009 at 6:32 PM, <monstr@monstr.eu> wrote:
> From: Michal Simek <monstr@monstr.eu>
>
> Signed-off-by: Michal Simek <monstr@monstr.eu>
> ---
>  arch/microblaze/kernel/entry-nommu.S   |    3 ++-
>  arch/microblaze/kernel/syscall_table.S |    2 +-
>  2 files changed, 3 insertions(+), 2 deletions(-)
>
> diff --git a/arch/microblaze/kernel/entry-nommu.S b/arch/microblaze/kernel/entry-nommu.S
> index f24b126..89f978a 100644
> --- a/arch/microblaze/kernel/entry-nommu.S
> +++ b/arch/microblaze/kernel/entry-nommu.S
> @@ -10,7 +10,7 @@
>
>  #include <linux/linkage.h>
>  #include <asm/thread_info.h>
> -#include <asm/errno.h>
> +#include <linux/errno.h>
>  #include <asm/entry.h>
>  #include <asm/asm-offsets.h>
>  #include <asm/registers.h>
> @@ -551,6 +551,7 @@ no_work_pending:
>        rtid    r14, 0
>        nop
>
> +sys_fork_wrapper:
>  sys_vfork_wrapper:
>        brid    sys_vfork
>        addk    r5, r1, r0

NACK! If only it was that easy :)

On noMMU we cannot just silently call vfork() if the application tries
to fork() - you have to return -ENOSYS (or is there a better one?).
This will just require a small sys_fork_wrapper in entry-nommu.S.

John
--
John Williams, PhD, B.Eng, B.IT
PetaLogix - Linux Solutions for a Reconfigurable World
w: www.petalogix.com p: +61-7-30090663 f: +61-7-30090663