Re: Illegal use of reserved word in system.h

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Thu, 2005-05-19 at 15:43 +0100, Maciej W. Rozycki wrote:
> On Thu, 19 May 2005, Steven Rostedt wrote:
> 
> > > See create_elf_tables.  The aux table comes after the environment.
> > 
> > As I stated earlier, the page size passed in there is ELF_EXEC_PAGESIZE
> > which may not be the same as PAGE_SIZE.
> 
>  Well, AT_PAGESZ is specified as "system page size".  If we pass something 
> else, then it's asking for troubles.  What comes from AT_PAGESZ is used by 
> userland for stuff like masking arguments for mmap() and mprotect() so 
> it'd better be the right value.

Well, they probably are the same, but then what's the reason for the
lines in binfmt_elf.c:

#if ELF_EXEC_PAGESIZE > PAGE_SIZE
# define ELF_MIN_ALIGN	ELF_EXEC_PAGESIZE
#else
# define ELF_MIN_ALIGN	PAGE_SIZE
#endif


This looks to me that ELF_EXEC_PAGESIZE and PAGE_SIZE may not be the
same. And what's passed to AT_PAGESZ is ELF_EXEC_PAGESIZE.  In mips (as
your email address shows you are interested in) ELF_EXEC_PAGESIZE is
simply defined as PAGE_SIZE.  But in intel i386, it is defined as 4096,
which coincidentally is the same as PAGE_SIZE but there's no guarantee
that this will be the same, unless who ever changes PAGE_SIZE also
remembers to change ELF_EXEC_PAGESIZE.

In arm26 the PAGE_SIZE is configurable (16k or 32k) but the
ELF_EXEC_PAGESIZE stays as 32k.  So is this a bug?

-- Steve
 

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [email protected]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

[Index of Archives]     [Kernel Newbies]     [Netfilter]     [Bugtraq]     [Photo]     [Stuff]     [Gimp]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Video 4 Linux]     [Linux for the blind]     [Linux Resources]
  Powered by Linux