linux-stable-rt/arch/parisc/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
..
Kbuild
agp.h
asm-offsets.h
asmregs.h
assembly.h
atomic.h
auxvec.h
bitops.h bitops: remove minix bitops from asm/bitops.h 2011-03-23 19:46:22 -07:00
bitsperlong.h
bug.h
bugs.h
byteorder.h
cache.h
cacheflush.h [PARISC] prevent speculative re-read on cache flush 2011-04-15 12:55:56 -05:00
checksum.h
compat.h
compat_rt_sigframe.h
compat_signal.h
compat_ucontext.h
cputime.h
current.h
delay.h
device.h
div64.h
dma-mapping.h
dma.h
eisa_bus.h
eisa_eeprom.h Fix common misspellings 2011-03-31 11:26:23 -03:00
elf.h
emergency-restart.h
errno.h mm: make __get_user_pages return -EHWPOISON for HWPOISON page optionally 2011-03-17 13:08:27 -03:00
fb.h
fcntl.h vfs: add nonconflicting values for O_PATH 2011-03-16 09:54:02 -04:00
fixmap.h
floppy.h
ftrace.h
futex.h futex: Sanitize futex ops argument types 2011-03-11 12:23:31 +01:00
grfioctl.h
hardirq.h
hardware.h
hw_irq.h
ide.h
io.h
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.h [PARISC] Convert to new irq_chip functions 2011-02-10 10:22:14 -06:00
irq_regs.h
irqflags.h
kdebug.h
kmap_types.h
led.h
linkage.h
local.h
local64.h
machdep.h
mc146818rtc.h
mckinley.h
mman.h thp: mm: define MADV_NOHUGEPAGE 2011-01-13 17:32:47 -08:00
mmu.h
mmu_context.h
mmzone.h Fix node_start/end_pfn() definition for mm/page_cgroup.c 2011-06-27 14:13:09 -07:00
module.h
msgbuf.h
mutex.h
page.h
param.h
parisc-device.h
parport.h
pci.h
pdc.h
pdc_chassis.h
pdcpat.h
percpu.h
perf.h
perf_event.h
pgalloc.h
pgtable.h [PARISC] only make executable areas executable 2011-04-15 12:55:18 -05:00
poll.h
posix_types.h
prefetch.h
processor.h
psw.h
ptrace.h
real.h
resource.h
ropes.h
rt_sigframe.h
rtc.h
runway.h
scatterlist.h
sections.h
segment.h
sembuf.h
serial.h
setup.h
shmbuf.h
shmparam.h
sigcontext.h
siginfo.h
signal.h
smp.h Remove unused PROC_CHANGE_PENALTY constant 2011-05-25 08:39:43 -07:00
socket.h
sockios.h
spinlock.h
spinlock_types.h
stat.h
statfs.h
string.h
superio.h
swab.h
syscall.h
system.h
termbits.h
termios.h
thread_info.h
timex.h
tlb.h
tlbflush.h
topology.h
traps.h
types.h remove dma64_addr_t 2011-03-23 19:47:18 -07:00
uaccess.h
ucontext.h
unaligned.h
unistd.h ns: Wire up the setns system call 2011-05-28 10:48:39 -07:00
unwind.h
user.h
vga.h
xor.h