lists.openwall.net | lists / announce owl-users owl-dev john-users john-dev passwdqc-users yescrypt popa3d-users / oss-security kernel-hardening musl sabotage tlsify passwords / crypt-dev xvendor / Bugtraq Full-Disclosure linux-kernel linux-netdev linux-ext4 linux-hardening linux-cve-announce PHC | |
Open Source and information security mailing list archives
| ||
|
Date: Sun, 8 Mar 2009 13:01:58 +0800 From: Bryan Wu <cooloney@...nel.org> To: Tejun Heo <tj@...nel.org> Cc: mingo@...e.hu, rusty@...tcorp.com.au, tglx@...utronix.de, x86@...nel.org, linux-kernel@...r.kernel.org, hpa@...or.com, efault@....de, jaswinder@...nel.org Subject: Re: [PATCH 1/8] percpu: clean up percpu constants On Fri, Mar 6, 2009 at 2:46 PM, Tejun Heo <tj@...nel.org> wrote: > Impact: cleaup > > Make the following cleanups. > > * There isn't much arch-specific about PERCPU_MODULE_RESERVE. Always > define it whether arch overrides PERCPU_ENOUGH_ROOM or not. > > * blackfin overrides PERCPU_ENOUGH_ROOM to align static area size. Do > it by default. > Acked-by: Bryan Wu <cooloney@...nel.org> Thanks -Bryan > * percpu allocation sizes doesn't have much to do with the page size. > Don't use PAGE_SHIFT in their definition. > > Signed-off-by: Tejun Heo <tj@...nel.org> > Cc: Bryan Wu <cooloney@...nel.org> > --- > arch/blackfin/include/asm/percpu.h | 10 ---------- > include/linux/percpu.h | 24 +++++++++++++----------- > 2 files changed, 13 insertions(+), 21 deletions(-) > > diff --git a/arch/blackfin/include/asm/percpu.h b/arch/blackfin/include/asm/percpu.h > index 797c0c1..c94c7bc 100644 > --- a/arch/blackfin/include/asm/percpu.h > +++ b/arch/blackfin/include/asm/percpu.h > @@ -3,14 +3,4 @@ > > #include <asm-generic/percpu.h> > > -#ifdef CONFIG_MODULES > -#define PERCPU_MODULE_RESERVE 8192 > -#else > -#define PERCPU_MODULE_RESERVE 0 > -#endif > - > -#define PERCPU_ENOUGH_ROOM \ > - (ALIGN(__per_cpu_end - __per_cpu_start, SMP_CACHE_BYTES) + \ > - PERCPU_MODULE_RESERVE) > - > #endif /* __ARCH_BLACKFIN_PERCPU__ */ > diff --git a/include/linux/percpu.h b/include/linux/percpu.h > index 545b068..2d34b03 100644 > --- a/include/linux/percpu.h > +++ b/include/linux/percpu.h > @@ -5,6 +5,7 @@ > #include <linux/slab.h> /* For kmalloc() */ > #include <linux/smp.h> > #include <linux/cpumask.h> > +#include <linux/pfn.h> > > #include <asm/percpu.h> > > @@ -52,17 +53,18 @@ > #define EXPORT_PER_CPU_SYMBOL(var) EXPORT_SYMBOL(per_cpu__##var) > #define EXPORT_PER_CPU_SYMBOL_GPL(var) EXPORT_SYMBOL_GPL(per_cpu__##var) > > -/* Enough to cover all DEFINE_PER_CPUs in kernel, including modules. */ > -#ifndef PERCPU_ENOUGH_ROOM > +/* enough to cover all DEFINE_PER_CPUs in modules */ > #ifdef CONFIG_MODULES > -#define PERCPU_MODULE_RESERVE 8192 > +#define PERCPU_MODULE_RESERVE (8 << 10) > #else > -#define PERCPU_MODULE_RESERVE 0 > +#define PERCPU_MODULE_RESERVE 0 > #endif > > +#ifndef PERCPU_ENOUGH_ROOM > #define PERCPU_ENOUGH_ROOM \ > - (__per_cpu_end - __per_cpu_start + PERCPU_MODULE_RESERVE) > -#endif /* PERCPU_ENOUGH_ROOM */ > + (ALIGN(__per_cpu_end - __per_cpu_start, SMP_CACHE_BYTES) + \ > + PERCPU_MODULE_RESERVE) > +#endif > > /* > * Must be an lvalue. Since @var must be a simple identifier, > @@ -79,7 +81,7 @@ > #ifdef CONFIG_HAVE_DYNAMIC_PER_CPU_AREA > > /* minimum unit size, also is the maximum supported allocation size */ > -#define PCPU_MIN_UNIT_SIZE (16UL << PAGE_SHIFT) > +#define PCPU_MIN_UNIT_SIZE PFN_ALIGN(64 << 10) > > /* > * PERCPU_DYNAMIC_RESERVE indicates the amount of free area to piggy > @@ -96,15 +98,15 @@ > #ifndef PERCPU_DYNAMIC_RESERVE > # if BITS_PER_LONG > 32 > # ifdef CONFIG_MODULES > -# define PERCPU_DYNAMIC_RESERVE (6 << PAGE_SHIFT) > +# define PERCPU_DYNAMIC_RESERVE (24 << 10) > # else > -# define PERCPU_DYNAMIC_RESERVE (4 << PAGE_SHIFT) > +# define PERCPU_DYNAMIC_RESERVE (16 << 10) > # endif > # else > # ifdef CONFIG_MODULES > -# define PERCPU_DYNAMIC_RESERVE (4 << PAGE_SHIFT) > +# define PERCPU_DYNAMIC_RESERVE (16 << 10) > # else > -# define PERCPU_DYNAMIC_RESERVE (2 << PAGE_SHIFT) > +# define PERCPU_DYNAMIC_RESERVE (8 << 10) > # endif > # endif > #endif /* PERCPU_DYNAMIC_RESERVE */ > -- > 1.6.0.2 > > -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@...r.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists