On Sat, 2007-01-06 at 20:11 +0000, Hugh Dickins wrote: > And I notice that Andi added a personality & ADDR_NO_RANDOMIZE check > into randomize_stack_top: I cannot see why that's necessary there, > but if it is, then should the ET_DYN case add it too?)
While I think of it... it seems that ADDR_NO_RANDOMIZE isn't "inherited" across exec of 32-bit binaries on x86_64 or ppc64. The personality flags get wiped out when we detect a 32-bit ELF executable and set the personality to PER_LINUX32. This causes suboptimal behaviour from userspace code which checks whether it can set ADDR_NO_RANDOMIZE with a sys_personality() call, and if so re-execs itself. Run on x86_64 or ppc64, these go into an endless loop because it always gets cleared in the exec. I've seen such code in two places recently (Macaulay2 and sbcl, iirc). -- dwmw2 - 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/