kernel_optimize_test/arch/sh/include/asm
KAMEZAWA Hiroyuki c6830c2260 Fix node_start/end_pfn() definition for mm/page_cgroup.c
commit 21a3c96 uses node_start/end_pfn(nid) for detection start/end
of nodes. But, it's not defined in linux/mmzone.h but defined in
/arch/???/include/mmzone.h which is included only under
CONFIG_NEED_MULTIPLE_NODES=y.

Then, we see
  mm/page_cgroup.c: In function 'page_cgroup_init':
  mm/page_cgroup.c:308: error: implicit declaration of function 'node_start_pfn'
  mm/page_cgroup.c:309: error: implicit declaration of function 'node_end_pfn'

So, fixiing page_cgroup.c is an idea...

But node_start_pfn()/node_end_pfn() is a very generic macro and
should be implemented in the same manner for all archs.
(m32r has different implementation...)

This patch removes definitions of node_start/end_pfn() in each archs
and defines a unified one in linux/mmzone.h. It's not under
CONFIG_NEED_MULTIPLE_NODES, now.

A result of macro expansion is here (mm/page_cgroup.c)

for !NUMA
 start_pfn = ((&contig_page_data)->node_start_pfn);
  end_pfn = ({ pg_data_t *__pgdat = (&contig_page_data); __pgdat->node_start_pfn + __pgdat->node_spanned_pages;});

for NUMA (x86-64)
  start_pfn = ((node_data[nid])->node_start_pfn);
  end_pfn = ({ pg_data_t *__pgdat = (node_data[nid]); __pgdat->node_start_pfn + __pgdat->node_spanned_pages;});

Changelog:
 - fixed to avoid using "nid" twice in node_end_pfn() macro.

Reported-and-acked-by: Randy Dunlap <randy.dunlap@oracle.com>
Reported-and-tested-by: Ingo Molnar <mingo@elte.hu>
Acked-by: Mel Gorman <mgorman@suse.de>
Signed-off-by: KAMEZAWA Hiroyuki <kamezawa.hiroyu@jp.fujitsu.com>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
2011-06-27 14:13:09 -07:00
..
adc.h
addrspace.h sh: nommu: use 32-bit phys mode. 2010-11-04 12:32:24 +09:00
alignment.h sh: Split out the unaligned counters and user bits. 2010-01-12 16:12:25 +09:00
asm-offsets.h kbuild: move asm-offsets.h to include/generated 2009-12-12 13:08:14 +01:00
atomic-grb.h sh: consolidate atomic_cmpxchg()/atomic_add_unless() definitions. 2010-01-08 17:02:17 +09:00
atomic-irq.h
atomic-llsc.h sh: consolidate atomic_cmpxchg()/atomic_add_unless() definitions. 2010-01-08 17:02:17 +09:00
atomic.h atomic_t: Cast to volatile when accessing atomic variables 2010-05-17 07:57:27 -07:00
auxvec.h
bitops-grb.h
bitops-llsc.h
bitops-op32.h
bitops.h bitops: remove minix bitops from asm/bitops.h 2011-03-23 19:46:22 -07:00
bitsperlong.h
bug.h panic: Allow warnings to set different taint flags 2010-05-19 08:36:48 +01:00
bugs.h sh: Idle loop chainsawing for SMP-based light sleep. 2009-10-16 17:20:58 +09:00
byteorder.h
cache.h Merge branch 'for-35' of git://repo.or.cz/linux-kbuild 2010-06-01 08:55:52 -07:00
cachectl.h
cacheflush.h sh: Assume new page cache pages have dirty dcache lines. 2010-12-01 15:39:51 +09:00
checksum_32.h
checksum.h
clkdev.h ARM: 6483/1: arm & sh: factorised duplicated clkdev.c 2010-11-26 10:51:04 +00:00
clock.h sh: move sh clock.c contents to drivers/sh/clk. 2010-05-13 17:39:14 +09:00
cmpxchg-grb.h sh: Fix up xchg/cmpxchg corruption with gUSA RB. 2011-06-08 15:22:39 +09:00
cmpxchg-irq.h
cmpxchg-llsc.h
cpu-features.h
cputime.h
current.h
delay.h
device.h
div64.h
dma-mapping.h dma-mapping: remove dma_is_consistent API 2010-08-11 08:59:21 -07:00
dma-register.h dmaengine: shdma: separate DMA headers. 2010-03-02 11:09:04 +09:00
dma-sh.h dmaengine: shdma: separate DMA headers. 2010-03-02 11:09:04 +09:00
dma.h sh: Fix up MAX_DMA_CHANNELS definition when DMA is disabled. 2009-12-17 14:25:10 +09:00
dmabrg.h
dwarf.h sh: Optimise FDE/CIE lookup by using red-black trees 2010-02-08 11:29:15 +09:00
elf.h sh: update the FDPIC relocations. 2010-06-14 18:02:13 +09:00
emergency-restart.h
entry-macros.S
errno.h
fb.h
fcntl.h
fixmap.h sh: fix up an off-by-1 in the number of early ioremap fixmaps. 2010-06-21 16:23:03 +09:00
flat.h
fpu.h sh: Move over to dynamically allocated FPU context. 2010-01-13 12:51:40 +09:00
freq.h
ftrace.h sh: Provide CALLER_ADDRx definitions even when ftrace is disabled. 2009-10-14 11:49:49 +09:00
futex-irq.h futex: Sanitize futex ops argument types 2011-03-11 12:23:31 +01:00
futex.h futex: Sanitize futex ops argument types 2011-03-11 12:23:31 +01:00
gpio.h sh: Allow GPIO chips to register IRQ mappings. 2010-10-03 03:55:39 +09:00
hardirq.h sh: Count NMIs in irq_cpustat_t. 2009-10-14 16:42:28 +09:00
hd64461.h
heartbeat.h
hugetlb.h
hw_breakpoint.h Merge git://git.kernel.org/pub/scm/linux/kernel/git/lethal/sh-2.6 2010-05-19 11:36:03 -07:00
hw_irq.h
hwblk.h sh: get rid of hwblk clock names 2010-05-11 11:48:47 +09:00
i2c-sh7760.h
io_generic.h sh: machvec IO death. 2010-11-01 09:49:04 -04:00
io_trapped.h
io.h sh: Fix up legacy PTEA space attribute mapping. 2011-01-11 15:02:59 +09:00
ioctl.h
ioctls.h tty: add TIOCVHANGUP to allow clean tty shutdown of all ttys 2011-02-17 14:16:30 -08:00
ipcbuf.h
irq_regs.h
irq.h sh: modify NR_IRQS from 256 to 512 2010-07-06 17:37:32 +09:00
irqflags.h Fix IRQ flag handling naming 2010-10-07 14:08:55 +01:00
Kbuild Merge branch 'master' of git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux-2.6 2010-08-16 13:32:24 +09:00
kdebug.h sh: hw-breakpoints: Add preliminary support for SH-4A UBC. 2009-12-08 15:02:27 +09:00
kexec.h sh: convert kexec crash kernel management to LMB. 2010-05-07 14:54:55 +09:00
kgdb.h kgdbts: unify/generalize gdb breakpoint adjustment 2011-05-26 17:12:36 -07:00
kmap_types.h
kprobes.h sh: Add kprobe-based event tracer. 2010-06-14 15:16:53 +09:00
linkage.h
local64.h arch: Implement local64_t 2010-06-09 11:12:36 +02:00
local.h
machvec.h sh: Add a machvec callback for early memblock reservations. 2011-01-11 13:04:57 +09:00
mc146818rtc.h
memblock.h memblock: Introduce default allocation limit and use it to replace explicit ones 2010-08-05 12:56:07 +10:00
mman.h
mmu_context_32.h sh: Mass ctrl_in/outX to __raw_read/writeX conversion. 2010-01-26 12:58:40 +09:00
mmu_context_64.h
mmu_context.h sh: Mass ctrl_in/outX to __raw_read/writeX conversion. 2010-01-26 12:58:40 +09:00
mmu.h sh: Fix up NUMA build for 29-bit. 2010-03-10 16:29:48 +09:00
mmzone.h Fix node_start/end_pfn() definition for mm/page_cgroup.c 2011-06-27 14:13:09 -07:00
module.h sh: Optimise FDE/CIE lookup by using red-black trees 2010-02-08 11:29:15 +09:00
msgbuf.h
mutex-llsc.h
mutex.h
page.h Fix common misspellings 2011-03-31 11:26:23 -03:00
param.h
parport.h
pci.h sh: pci: Use a generic raw spinlock for PCI config access locking. 2010-09-20 18:56:13 +09:00
percpu.h
perf_event.h irq_work: Add generic hardirq context callbacks 2010-10-18 19:58:50 +02:00
pgalloc.h sh: default to extended TLB support. 2010-01-13 19:11:14 +09:00
pgtable_32.h Fix common misspellings 2011-03-31 11:26:23 -03:00
pgtable_64.h Merge git://git.kernel.org/pub/scm/linux/kernel/git/lethal/sh-2.6 2010-10-28 12:06:51 -07:00
pgtable-2level.h sh: Rename split-level pgtable headers. 2010-01-13 19:18:39 +09:00
pgtable-3level.h sh: Rename split-level pgtable headers. 2010-01-13 19:18:39 +09:00
pgtable.h sh64: asm/pgtable.h needs asm/mmu.h 2011-05-31 14:37:44 +09:00
poll.h
posix_types_32.h
posix_types_64.h
posix_types.h
processor_32.h sh: constify prefetch pointers. 2011-01-11 14:39:35 +09:00
processor_64.h sh, exec: remove redundant set_fs(USER_DS) 2011-06-14 15:15:58 +09:00
processor.h sh: sh7372 SH4AL-DSP probe support 2011-01-13 15:20:40 +09:00
ptrace_32.h sh: correct definitions to access stack pointers 2011-01-05 16:58:19 +09:00
ptrace_64.h sh: correct definitions to access stack pointers 2011-01-05 16:58:19 +09:00
ptrace.h sh: Fix up asm-generic/ptrace.h fallout. 2011-05-31 14:39:49 +09:00
push-switch.h
reboot.h sh: machine_ops based reboot support. 2010-01-20 16:42:52 +09:00
resource.h
romimage-macros.h
rtc.h
rwsem.h rwsem: Move duplicate function prototypes to linux/rwsem.h 2011-01-27 12:30:39 +01:00
scatterlist.h remove needless ISA_DMA_THRESHOLD 2010-08-07 18:15:50 +02:00
seccomp.h
sections.h sh: Change __nosave_XXX symbols to long 2011-02-15 16:24:54 +09:00
segment.h
sembuf.h
serial.h
setup.h sh: bootmem refactoring. 2010-05-11 13:32:19 +09:00
sfp-machine.h
sh7760fb.h
sh_bios.h sh: Kill off more unused sh_bios callbacks. 2010-01-12 15:26:11 +09:00
sh_eth.h net: sh_eth: add set_mdio_gate in bb_info 2011-03-14 14:10:16 -07:00
shmbuf.h
shmparam.h
sigcontext.h
siginfo.h
signal.h
siu.h sh: define DMA slaves per CPU type, remove now redundant header 2010-05-22 16:51:17 +09:00
sizes.h sh: Conver to asm-generic/sizes.h. 2011-03-22 22:43:09 +09:00
smc37c93x.h
smp-ops.h sh: CPU hotplug support. 2010-04-26 19:08:55 +09:00
smp.h sh: CPU hotplug support. 2010-04-26 19:08:55 +09:00
socket.h
sockios.h
sparsemem.h
spi.h
spinlock_types.h locking: Convert raw_rwlock to arch_rwlock 2009-12-14 23:55:32 +01:00
spinlock.h locking: Convert raw_rwlock functions to arch_rwlock 2009-12-14 23:55:32 +01:00
sram.h sh: Provide a generic SRAM pool for tiny memories. 2010-10-15 02:09:00 +09:00
stacktrace.h sh: remove warning and warning_symbol from struct stacktrace_ops 2011-05-23 14:42:15 +09:00
stat.h
statfs.h
string_32.h
string_64.h
string.h
suspend.h PM / Hibernate: Remove arch_prepare_suspend() 2011-05-24 23:35:55 +02:00
swab.h
syscall_32.h
syscall_64.h
syscall.h tracing: Unify arch_syscall_addr() implementations 2010-02-17 13:07:21 +01:00
syscalls_32.h SH: Add missing consts to sys_execve() declaration 2010-10-07 14:08:52 +01:00
syscalls_64.h Mark arguments to certain syscalls as being const 2010-08-13 16:53:13 -07:00
syscalls.h Add generic sys_olduname() 2010-03-12 15:52:32 -08:00
system_32.h sh: nommu: Support building without an uncached mapping. 2010-11-04 12:46:19 +09:00
system_64.h sh: nommu: Support building without an uncached mapping. 2010-11-04 12:46:19 +09:00
system.h sh: nommu: Support building without an uncached mapping. 2010-11-04 12:46:19 +09:00
termbits.h
termios.h
thread_info.h mm: NUMA aware alloc_thread_info_node() 2011-03-22 17:44:01 -07:00
timex.h sh: Only provide a PCLK definition for legacy CPG CPUs. 2009-12-29 11:09:30 +09:00
tlb_64.h
tlb.h sh: asm/tlb.h needs linux/swap.h 2011-05-31 13:27:41 +09:00
tlbflush.h sh: Provide a global TLB flush for U/I-TLB clear. 2010-07-02 15:44:09 +09:00
topology.h sh: Fix up cpumask_of_pcibus() for the NUMA build. 2010-03-02 15:54:47 +09:00
types.h
uaccess_32.h
uaccess_64.h
uaccess.h
ucontext.h
unaligned-sh4a.h Fix common misspellings 2011-03-31 11:26:23 -03:00
unaligned.h
uncached.h sh: nommu: Support building without an uncached mapping. 2010-11-04 12:46:19 +09:00
unistd_32.h ns: Wire up the setns system call 2011-05-28 10:48:39 -07:00
unistd_64.h ns: Wire up the setns system call 2011-05-28 10:48:39 -07:00
unistd.h
unwinder.h
user.h
vga.h
vmlinux.lds.h sh64: fix up memory offset calculation. 2010-02-12 15:41:45 +09:00
watchdog.h sh: Mass ctrl_in/outX to __raw_read/writeX conversion. 2010-01-26 12:58:40 +09:00
xor.h