On Mon, Sep 29, 2008 at 07:19:06PM -0400, Neil Horman wrote: > On Mon, Sep 29, 2008 at 10:52:53PM +0200, Andi Kleen wrote: > > > The below patch, which modifies the asm in quesition to use a register of the > > > compliers choosing, rather than ebx specifically, corrects the problem for me: > > > > > > The patch is wrong, cpuid has fixed output registers and using an arbitary > > one is not correct. > > > > It sounds like you're compiling numademo as PIC code. Why should you > > do that? It's wrong. > > > Why? I don't see any reason that that numademo can't be built as position > independent. Its never been a problem on previous versions, and I'm not aware > of any philosophical reason why its inherently a bad idea. I need to look > through my history, but IIRC I started using PIC to allow exec-shield to work on > these applications, so theres a benefit, I don't see the downside. It loses an register. And it does not have any benefit because numademo (or anything else in numactl except for libnuma which is already PIC) is not security relevant. It could be worked around, but the easiest fix is to just not do that when it hurts. > > just a bad idea here. > > > Again, what exactly is wrong with using PIC executables in this case? Other than the > obvious build failure? numademo is not a security critical program, but it's performance critical. Losing a register is bad for that. -Andi -- To unsubscribe from this list: send the line "unsubscribe linux-numa" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html