Commit a1bf9631 authored by Jiri Slaby's avatar Jiri Slaby Committed by Ingo Molnar

x86, MM: virtual address debug, v2

I've removed the test from phys_to_nid and made a function from __phys_addr
only when the debugging is enabled (on x86_32).
Signed-off-by: default avatarJiri Slaby <jirislaby@gmail.com>
Cc: tglx@linutronix.de
Cc: hpa@zytor.com
Cc: Mike Travis <travis@sgi.com>
Cc: Nick Piggin <nickpiggin@yahoo.com.au>
Cc: <x86@kernel.org>
Cc: linux-mm@kvack.org
Cc: Jiri Slaby <jirislaby@gmail.com>
Cc: Andi Kleen <andi@firstfloor.org>
Signed-off-by: default avatarIngo Molnar <mingo@elte.hu>
parent 59ea7463
...@@ -51,6 +51,7 @@ static inline int phys_addr_valid(unsigned long addr) ...@@ -51,6 +51,7 @@ static inline int phys_addr_valid(unsigned long addr)
return 1; return 1;
} }
#ifdef CONFIG_DEBUG_VIRTUAL
unsigned long __phys_addr(unsigned long x) unsigned long __phys_addr(unsigned long x)
{ {
/* VMALLOC_* aren't constants; not available at the boot time */ /* VMALLOC_* aren't constants; not available at the boot time */
...@@ -59,6 +60,7 @@ unsigned long __phys_addr(unsigned long x) ...@@ -59,6 +60,7 @@ unsigned long __phys_addr(unsigned long x)
return x - PAGE_OFFSET; return x - PAGE_OFFSET;
} }
EXPORT_SYMBOL(__phys_addr); EXPORT_SYMBOL(__phys_addr);
#endif
#endif #endif
......
...@@ -29,7 +29,6 @@ static inline __attribute__((pure)) int phys_to_nid(unsigned long addr) ...@@ -29,7 +29,6 @@ static inline __attribute__((pure)) int phys_to_nid(unsigned long addr)
{ {
unsigned nid; unsigned nid;
VIRTUAL_BUG_ON(!memnodemap); VIRTUAL_BUG_ON(!memnodemap);
VIRTUAL_BUG_ON((addr >> memnode_shift) >= memnodemapsize);
nid = memnodemap[addr >> memnode_shift]; nid = memnodemap[addr >> memnode_shift];
VIRTUAL_BUG_ON(nid >= MAX_NUMNODES || !node_data[nid]); VIRTUAL_BUG_ON(nid >= MAX_NUMNODES || !node_data[nid]);
return nid; return nid;
......
...@@ -65,7 +65,11 @@ typedef struct page *pgtable_t; ...@@ -65,7 +65,11 @@ typedef struct page *pgtable_t;
#ifndef __ASSEMBLY__ #ifndef __ASSEMBLY__
#define __phys_addr_const(x) ((x) - PAGE_OFFSET) #define __phys_addr_const(x) ((x) - PAGE_OFFSET)
#ifdef CONFIG_DEBUG_VIRTUAL
extern unsigned long __phys_addr(unsigned long); extern unsigned long __phys_addr(unsigned long);
#else
#define __phys_addr(x) ((x) - PAGE_OFFSET)
#endif
#define __phys_reloc_hide(x) RELOC_HIDE((x), 0) #define __phys_reloc_hide(x) RELOC_HIDE((x), 0)
#ifdef CONFIG_FLATMEM #ifdef CONFIG_FLATMEM
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment