Re: IS_ERR Threshold Value

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

 



Jan Engelhardt <[email protected]> wrote:

>>> +#define IS_ERR_VALUE(x) unlikely((x) >= (unsigned long)-MAX_ERRNO)
> 
> There seems to be a slight problem with doing that. Running
> `ldd /bin/bash` prints out
> 
> linux-gate.so.1 =>  (0xffffe000)
> 
> and the topmost address a kernel function can return is 0xFFFFf000 when
> MAX_ERRNO=4095, but that is going to be tight with the vdso mapped at
> 0xffffE000.

http://www.trilithium.com/johan/2005/08/linux-gate/

"... an x86 box where processes live in plain old 32-bit address spaces
divided into pages of 4096 bytes, making ffffe000 the penultimate page.
The very last page is reserved to catch accesses through invalid pointers,
e.g. dereferencing a decremented NULL pointer or a MAP_FAILED pointer
returned from mmap."

Therefore, MAX_ERRNO < PAGE_SIZE is safe.
-- 
Ich danke GMX dafür, die Verwendung meiner Adressen mittels per SPF
verbreiteten Lügen zu sabotieren.

http://david.woodhou.se/why-not-spf.html
-
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