/* the upper-most page table pointer */
 extern pmd_t *top_pmd;
 
-#define TOP_PTE(x)     pte_offset_kernel(top_pmd, x)
-
 /*
  * 0xffff8000 to 0xffffffff is reserved for any ARM architecture
  * specific hacks for copying pages efficiently, while 0xffff4000
 
 static inline void set_top_pte(unsigned long va, pte_t pte)
 {
-       set_pte_ext(TOP_PTE(va), pte, 0);
+       pte_t *ptep = pte_offset_kernel(top_pmd, va);
+       set_pte_ext(ptep, pte, 0);
        local_flush_tlb_kernel_page(va);
 }
 
 static inline pte_t get_top_pte(unsigned long va)
 {
-       return *TOP_PTE(va);
+       pte_t *ptep = pte_offset_kernel(top_pmd, va);
+       return *ptep;
 }
 
 static inline pmd_t *pmd_off_k(unsigned long virt)