Lines Matching defs:addr
26 void *kasan_mem_to_shadow(const void *addr)
31 unsigned long maddr = (unsigned long)addr;
60 unsigned long addr = (unsigned long)shadow_addr;
62 if (unlikely(addr > KASAN_SHADOW_END) ||
63 unlikely(addr < KASAN_SHADOW_START)) {
68 if (addr >= XKVRANGE_VC_SHADOW_OFFSET)
69 return (void *)(((addr - XKVRANGE_VC_SHADOW_OFFSET) << KASAN_SHADOW_SCALE_SHIFT) + XKVRANGE_VC_START);
70 else if (addr >= XKPRANGE_UC_SHADOW_OFFSET)
71 return (void *)(((addr - XKPRANGE_UC_SHADOW_OFFSET) << KASAN_SHADOW_SCALE_SHIFT) + XKPRANGE_UC_START);
72 else if (addr >= XKPRANGE_CC_SHADOW_OFFSET)
73 return (void *)(((addr - XKPRANGE_CC_SHADOW_OFFSET) << KASAN_SHADOW_SCALE_SHIFT) + XKPRANGE_CC_START);
91 static pte_t *kasan_pte_offset(pmd_t *pmdp, unsigned long addr, int node,
105 return pte_offset_kernel(pmdp, addr);
113 static pmd_t *kasan_pmd_offset(pgd_t *pgdp, unsigned long addr, int node,
126 return (pmd_t *)((pmd_t *)pgd_val(*pgdp) + pmd_index(addr));
129 static void kasan_pte_populate(pmd_t *pmdp, unsigned long addr,
133 pte_t *ptep = kasan_pte_offset(pmdp, addr, node, early);
139 next = addr + PAGE_SIZE;
141 } while (ptep++, addr = next, addr != end && __pte_none(early, READ_ONCE(*ptep)));
144 static void kasan_pmd_populate(pgd_t *pgdp, unsigned long addr,
148 pmd_t *pmdp = kasan_pmd_offset(pgdp, addr, node, early);
151 next = pmd_addr_end(addr, end);
152 kasan_pte_populate(pmdp, addr, next, node, early);
153 } while (pmdp++, addr = next, addr != end && __pmd_none(early, READ_ONCE(*pmdp)));
156 static void __init kasan_pgd_populate(unsigned long addr, unsigned long end,
162 pgdp = pgd_offset_k(addr);
165 next = pgd_addr_end(addr, end);
166 kasan_pmd_populate(pgdp, addr, next, node, early);
167 } while (pgdp++, addr = next, addr != end);