Re: [PATCH v2] percpu, x86: don't use PMD_SIZE as embeddedatom_size on 32bit

From: Tejun Heo
Date: Fri Apr 27 2012 - 13:53:06 EST


On Fri, Apr 27, 2012 at 10:51:43AM -0700, H. Peter Anvin wrote:
> On 04/27/2012 10:39 AM, Tejun Heo wrote:
> > With the embed percpu first chunk allocator, x86 uses either PAGE_SIZE
> > or PMD_SIZE for atom_size. PMD_SIZE is used when CPU supports PSE so
> > that percpu areas are aligned to PMD mappings and possibly allow using
> > PMD mappings in vmalloc areas in the future. Using larger atom_size
> > doesn't waste actual memory; however, it does require larger vmalloc
> > space allocation later on for !first chunks.
> >
> > With reasonably sized vmalloc area, PMD_SIZE shouldn't be a problem
> > but x86_32 at this point is anything but reasonable in terms of
> > address space and using larger atom_size reportedly leads to frequent
> > percpu allocation failures on certain setups.
> >
> > As there is no reason to not use PMD_SIZE on x86_64 as vmalloc space
> > is aplenty and most x86_64 configurations support PSE, fix the issue
> > by always using PMD_SIZE on x86_64 and PAGE_SIZE on x86_32.
> >
> > v2: drop cpu_has_pse test and make x86_64 always use PMD_SIZE and
> > x86_32 PAGE_SIZE as suggested by hpa.
> >
> > Signed-off-by: Tejun Heo <tj@xxxxxxxxxx>
> > Reported-by: Yanmin Zhang <yanmin.zhang@xxxxxxxxx>
> > Reported-by: ShuoX Liu <shuox.liu@xxxxxxxxx>
> > Acked-by: H. Peter Anvin <hpa@xxxxxxxxx>
> > LKML-Reference: <4F97BA98.6010001@xxxxxxxxx>
> > Cc: stable@xxxxxxxxxxxxxxx
>
> You're carrying this, or should I?

I have another percpu fix to push so I can carry it.

Thanks.

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