On Mon, Mar 03, 2014 at 02:29:21PM +0000, Paul Burton wrote: > On Mon, Mar 03, 2014 at 02:06:18PM +0000, Markos Chandras wrote: > > On 02/21/2014 05:38 PM, Ralf Baechle wrote: > > >On Thu, Feb 20, 2014 at 02:00:26PM +0000, Markos Chandras wrote: > > > > > >>From: Paul Burton <paul.burton@xxxxxxxxxx> > > >> > > >>For Malta defconfigs which may run on an SMP configuration without > > >>hardware cache anti-aliasing, a 16KB page size is a safer default. > > >>Most notably at the moment it will avoid cache aliasing issues for > > >>multicore proAptiv systems. > > > > > >You're aware that this may cause binary compatibility issues with old > > >userland? So far the defaults were chosen to maximise compatibility > > >over performance. > > > > > > Ralf > > > > > Hi Ralf, > > > > Are you referring to programs hard coding the page size to 4k instead of > > using the getpagesize()? Well yes this could be a problem. But is that a > > real problem? We are changing the default value so whoever has such an old > > userland can easily switch to the 4k page size. It may also be a good > > opportunity to expose such application and get the fixed properly :) But if > > that's not acceptable, we can drop the patch. Paul what do you think? > > > > -- > > markos > > I think the potential backwards compatibility issue is probably not a > huge issue for Malta, but that it would make sense to dig deeper into > why proAptiv SMP systems don't run correctly with 4KB pages. You don't > actually have to look very far to find userland which depends upon 4KB > pages (*cough* android *cough*). I consider this patch an acceptable > workaround for the proAptiv problem on Malta, but I don't know enough > at the moment to say whether there's a proper fix. The issue I was refering to is that certain older binutils are creating ELF segments of insufficient alignment for large page sizes to work. Hardcoded page size is another problem - one should think that after iterating through every power of two starting with like 512 bytes programmers have sprung a clue. Ralf