lkml.org 
[lkml]   [2008]   [May]   [16]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
From
SubjectRe: [PATCH] binfmt_elf_fdpic: Magical stack pointer index, for NEW_AUX_ENT compat.
Date
Paul Mundt <lethal@linux-sh.org> wrote:

> While implementing binfmt_elf_fdpic on SH it quickly became apparent
> that SH was the first platform to support both binfmt_elf_fdpic and
> binfmt_elf, as well as the only of the FDPIC platforms to make use of the
> auxvt.
>
> Currently binfmt_elf_fdpic uses a special version of NEW_AUX_ENT() where
> the first argument is the entry displacement after csp has been adjusted,
> being reset after each adjustment. As we have no ability to sort this out
> through the platform's ARCH_DLINFO, this index needs to be managed
> entirely in create_elf_fdpic_tables(). Presently none of the platforms
> that set their own auxvt entries are able to do so through their
> respective ARCH_DLINFOs when using binfmt_elf_fdpic.
>
> In addition to this, binfmt_elf_fdpic has been looking at
> DLINFO_ARCH_ITEMS for the number of architecture-specific entries in the
> auxvt. This is legacy cruft, and is not defined by any platforms in-tree,
> even those that make heavy use of the auxvt. AT_VECTOR_SIZE_ARCH is
> always available, and contains the number that is of interest here, so we
> switch to using that unconditionally as well.
>
> As this has direct bearing on how much stack is used, platforms that have
> configurable (or dynamically adjustable) NEW_AUX_ENT calls need to either
> make AT_VECTOR_SIZE_ARCH more fine-grained, or leave it as a worst-case
> and live with some lost stack space if those entries aren't pushed (some
> platforms may also need to purposely sacrifice some space here for
> alignment considerations, as noted in the code -- although not an issue
> for any FDPIC-capable platform today).
>
> Signed-off-by: Paul Mundt <lethal@linux-sh.org>

Acked-by: David Howells <dhowells@redhat.com>


\
 
 \ /
  Last update: 2008-05-16 13:25    [W:0.737 / U:0.352 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site