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: Jiri 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: Ingo Molnar <mingo@elte.hu>
This commit is contained in:
@@ -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)
|
|||||||
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)
|
|||||||
{
|
{
|
||||||
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;
|
|||||||
|
|
||||||
#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
|
||||||
|
Reference in New Issue
Block a user