[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-Id: <20100429000808.CFFBD7154@magilla.sf.frob.com>
Date: Wed, 28 Apr 2010 17:08:08 -0700 (PDT)
From: Roland McGrath <roland@...hat.com>
To: Christoffer Dall <christofferdall@...istofferdall.dk>
Cc: containers <containers@...ts.linux-foundation.org>,
linux-arm-kernel <linux-arm-kernel@...ts.infradead.org>,
linux-kernel <linux-kernel@...r.kernel.org>
Subject: Re: [C/R ARM v2][PATCH 1/3] ARM: Rudimentary syscall interfaces
> + * syscalls.h - Linux syscall interfaces for ARM
s/syscalls/syscall/
> +static inline int get_swi_instruction(struct task_struct *task,
> + struct pt_regs *regs,
> + unsigned long *instr)
> +{
Why doesn't this just use access_process_vm?
> +/*
> + * This function essentially duplicates the logic from vector_swi in
> + * arch/arm/kernel/entry-common.S. However, that code is in the
> + * critical path for system calls and is hard to factor out without
> + * compromising performance.
> + */
No clue about the ARM details, not reviewing that. I think this is too big
to be an inline and should be in some arch/arm/kernel/*.c place instead.
Of course, if (config_aeabi && !config_oabi) is true at compile time, it's
not large at all. So perhaps just move the compelx cases to a function
and leave the "Pure EABI" fork in the inline.
Thanks,
Roland
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists