Tejun Heo
9a4f8a878b
x86: make embedding percpu allocator return excessive free space
...
Impact: reduce unnecessary memory usage on certain configurations
Embedding percpu allocator allocates unit_size *
smp_num_possible_cpus() bytes consecutively and use it for the first
chunk. However, if the static area is small, this can result in
excessive prellocated free space in the first chunk due to
PCPU_MIN_UNIT_SIZE restriction.
This patch makes embedding percpu allocator preallocate only what's
necessary as described by PERPCU_DYNAMIC_RESERVE and return the
leftover to the bootmem allocator.
Signed-off-by: Tejun Heo <tj@kernel.org>
2009-03-06 14:33:59 +09:00
..
2009-02-24 21:50:43 +01:00
2009-03-02 12:00:25 +01:00
2009-03-04 02:29:19 +01:00
2009-02-25 16:38:34 +01:00
2009-01-03 12:03:52 -08:00
2009-01-03 16:44:15 +01:00
2008-11-28 15:24:39 +01:00
2009-02-22 20:05:19 +01:00
2009-02-10 00:42:00 +01:00
2009-01-20 12:29:20 +09:00
2008-12-29 22:08:28 -08:00
2008-10-27 18:09:45 +01:00
2009-01-03 12:04:39 -08:00
2008-10-20 08:52:39 -07:00
2008-10-20 08:52:39 -07:00
2009-02-17 17:52:44 +01:00
2008-10-13 10:33:15 +02:00
2009-01-22 14:35:00 +01:00
2008-12-03 08:56:25 +01:00
2009-01-19 00:38:58 +09:00
2009-02-09 09:45:29 +01:00
2008-12-03 08:56:25 +01:00
2009-02-24 22:43:15 +01:00
2009-02-09 11:32:17 +01:00
2009-01-09 12:46:22 -08:00
2009-01-23 11:03:29 +09:00
2009-02-25 08:27:46 +01:00
2009-02-24 18:08:40 +01:00
2009-01-21 13:00:42 +01:00
2009-02-23 11:34:04 -08:00
2009-02-25 08:27:46 +01:00
2009-02-11 10:06:13 +01:00
2008-12-08 13:49:45 +01:00
2009-01-20 12:29:19 +09:00
2009-02-13 11:35:01 -08:00
2009-02-24 18:08:38 +01:00
2008-12-12 11:08:42 +01:00
2009-02-17 14:27:39 -08:00
2008-10-20 18:27:03 +02:00
2008-11-20 16:43:41 +01:00
2009-02-10 13:13:23 +01:00
2008-12-13 21:20:26 +10:30
2009-02-23 00:08:11 +01:00
2008-12-31 18:07:42 -05:00
2009-03-02 12:07:48 +01:00
2009-02-24 21:52:45 +01:00
2009-02-09 12:16:05 +01:00
2009-02-17 17:52:44 +01:00
2009-02-23 00:08:11 +01:00
2009-01-04 18:19:41 +01:00
2008-10-28 17:10:27 +01:00
2009-02-17 17:52:44 +01:00
2009-01-16 14:32:17 -05:00
2009-02-23 00:08:11 +01:00
2009-01-02 17:46:24 +01:00
2009-02-22 09:27:11 +01:00
2009-02-03 18:29:18 -08:00
2009-02-26 06:40:06 +01:00
2009-02-23 00:08:11 +01:00
2009-01-06 11:28:06 +01:00
2008-12-19 01:31:54 +01:00
Merge branches 'x86/apic', 'x86/cleanups', 'x86/cpufeature', 'x86/crashdump', 'x86/debug', 'x86/defconfig', 'x86/detect-hyper', 'x86/doc', 'x86/dumpstack', 'x86/early-printk', 'x86/fpu', 'x86/idle', 'x86/io', 'x86/memory-corruption-check', 'x86/microcode', 'x86/mm', 'x86/mtrr', 'x86/nmi-watchdog', 'x86/pat2', 'x86/pci-ioapic-boot-irq-quirks', 'x86/ptrace', 'x86/quirks', 'x86/reboot', 'x86/setup-memory', 'x86/signal', 'x86/sparse-fixes', 'x86/time', 'x86/uv' and 'x86/xen' into x86/core
2008-12-23 16:27:23 +01:00
2009-01-12 11:22:40 +01:00
2008-12-29 18:17:36 +01:00
2009-01-12 11:22:55 +01:00
2009-01-12 11:23:01 +01:00
2009-02-23 07:41:31 +01:00
2009-01-12 11:22:50 +01:00
2009-02-14 23:05:25 +01:00
2009-01-30 14:51:44 -08:00
2009-01-30 14:51:44 -08:00
2009-01-20 17:14:28 +01:00
2009-02-23 00:08:11 +01:00
2008-11-25 15:56:03 +01:00
2009-01-07 11:12:23 -08:00
2009-01-29 18:19:29 -08:00
2009-01-05 14:17:24 +01:00
2009-01-29 14:16:51 +01:00
2009-03-02 12:07:48 +01:00
2009-03-02 12:07:48 +01:00
2009-03-02 12:07:48 +01:00
2009-03-04 02:22:31 +01:00
2008-10-15 14:25:14 +02:00
2008-12-16 20:36:44 +01:00
2009-02-17 17:52:44 +01:00
2009-02-13 11:35:01 -08:00
2009-02-13 11:35:01 -08:00
2008-10-20 08:52:41 -07:00
2009-03-06 14:33:59 +09:00
2009-02-26 06:40:06 +01:00
2009-03-03 09:03:12 +01:00
2009-02-17 17:52:44 +01:00
2009-02-26 13:58:26 +01:00
2009-01-31 04:21:18 +01:00
Merge branches 'x86/alternatives', 'x86/cleanups', 'x86/commandline', 'x86/crashdump', 'x86/debug', 'x86/defconfig', 'x86/doc', 'x86/exports', 'x86/fpu', 'x86/gart', 'x86/idle', 'x86/mm', 'x86/mtrr', 'x86/nmi-watchdog', 'x86/oprofile', 'x86/paravirt', 'x86/reboot', 'x86/sparse-fixes', 'x86/tsc', 'x86/urgent' and 'x86/vmalloc' into x86-v28-for-linus-phase1
2008-10-06 18:17:07 +02:00
2008-10-22 22:55:23 -07:00
2009-02-11 12:40:45 +01:00
2009-02-23 00:08:11 +01:00
2009-02-22 10:27:49 -08:00
2009-02-17 17:52:44 +01:00
2009-02-13 11:35:01 -08:00
2009-02-13 11:35:01 -08:00
2008-12-08 13:49:45 +01:00
2009-03-02 12:07:48 +01:00
Merge branches 'x86/apic', 'x86/cleanups', 'x86/cpufeature', 'x86/crashdump', 'x86/debug', 'x86/defconfig', 'x86/detect-hyper', 'x86/doc', 'x86/dumpstack', 'x86/early-printk', 'x86/fpu', 'x86/idle', 'x86/io', 'x86/memory-corruption-check', 'x86/microcode', 'x86/mm', 'x86/mtrr', 'x86/nmi-watchdog', 'x86/pat2', 'x86/pci-ioapic-boot-irq-quirks', 'x86/ptrace', 'x86/quirks', 'x86/reboot', 'x86/setup-memory', 'x86/signal', 'x86/sparse-fixes', 'x86/time', 'x86/uv' and 'x86/xen' into x86/core
2008-12-23 16:27:23 +01:00
2009-01-29 14:17:00 +01:00
2009-02-17 17:52:44 +01:00
2008-10-16 16:53:13 +02:00
2009-02-23 00:08:11 +01:00
2009-02-11 14:00:56 -08:00
2009-02-17 17:52:44 +01:00
2009-02-24 21:50:43 +01:00
2009-02-13 11:35:01 -08:00
2009-02-13 11:35:01 -08:00
2009-02-26 06:40:06 +01:00
2008-12-28 12:21:10 -08:00
2009-01-16 14:20:22 +01:00
2008-12-30 13:31:41 -08:00