Lines Matching refs:raddr
1194 if (temp->raddr == rmap->raddr) { in gmap_insert_rmap()
1217 static int gmap_protect_rmap(struct gmap *sg, unsigned long raddr, in gmap_protect_rmap() argument
1236 rmap->raddr = raddr; in gmap_protect_rmap()
1298 static void gmap_unshadow_page(struct gmap *sg, unsigned long raddr) in gmap_unshadow_page() argument
1303 table = gmap_table_walk(sg, raddr, 0); /* get page table pointer */ in gmap_unshadow_page()
1306 gmap_call_notifier(sg, raddr, raddr + _PAGE_SIZE - 1); in gmap_unshadow_page()
1307 ptep_unshadow_pte(sg->mm, raddr, (pte_t *) table); in gmap_unshadow_page()
1318 static void __gmap_unshadow_pgt(struct gmap *sg, unsigned long raddr, in __gmap_unshadow_pgt() argument
1324 for (i = 0; i < _PAGE_ENTRIES; i++, raddr += _PAGE_SIZE) in __gmap_unshadow_pgt()
1335 static void gmap_unshadow_pgt(struct gmap *sg, unsigned long raddr) in gmap_unshadow_pgt() argument
1342 ste = gmap_table_walk(sg, raddr, 1); /* get segment pointer */ in gmap_unshadow_pgt()
1345 gmap_call_notifier(sg, raddr, raddr + _SEGMENT_SIZE - 1); in gmap_unshadow_pgt()
1346 sto = __pa(ste - ((raddr & _SEGMENT_INDEX) >> _SEGMENT_SHIFT)); in gmap_unshadow_pgt()
1347 gmap_idte_one(sto | _ASCE_TYPE_SEGMENT, raddr); in gmap_unshadow_pgt()
1350 __gmap_unshadow_pgt(sg, raddr, __va(pgt)); in gmap_unshadow_pgt()
1365 static void __gmap_unshadow_sgt(struct gmap *sg, unsigned long raddr, in __gmap_unshadow_sgt() argument
1373 for (i = 0; i < _CRST_ENTRIES; i++, raddr += _SEGMENT_SIZE) { in __gmap_unshadow_sgt()
1378 __gmap_unshadow_pgt(sg, raddr, __va(pgt)); in __gmap_unshadow_sgt()
1393 static void gmap_unshadow_sgt(struct gmap *sg, unsigned long raddr) in gmap_unshadow_sgt() argument
1400 r3e = gmap_table_walk(sg, raddr, 2); /* get region-3 pointer */ in gmap_unshadow_sgt()
1403 gmap_call_notifier(sg, raddr, raddr + _REGION3_SIZE - 1); in gmap_unshadow_sgt()
1404 r3o = (unsigned long) (r3e - ((raddr & _REGION3_INDEX) >> _REGION3_SHIFT)); in gmap_unshadow_sgt()
1405 gmap_idte_one(__pa(r3o) | _ASCE_TYPE_REGION3, raddr); in gmap_unshadow_sgt()
1408 __gmap_unshadow_sgt(sg, raddr, __va(sgt)); in gmap_unshadow_sgt()
1423 static void __gmap_unshadow_r3t(struct gmap *sg, unsigned long raddr, in __gmap_unshadow_r3t() argument
1431 for (i = 0; i < _CRST_ENTRIES; i++, raddr += _REGION3_SIZE) { in __gmap_unshadow_r3t()
1436 __gmap_unshadow_sgt(sg, raddr, __va(sgt)); in __gmap_unshadow_r3t()
1451 static void gmap_unshadow_r3t(struct gmap *sg, unsigned long raddr) in gmap_unshadow_r3t() argument
1458 r2e = gmap_table_walk(sg, raddr, 3); /* get region-2 pointer */ in gmap_unshadow_r3t()
1461 gmap_call_notifier(sg, raddr, raddr + _REGION2_SIZE - 1); in gmap_unshadow_r3t()
1462 r2o = (unsigned long) (r2e - ((raddr & _REGION2_INDEX) >> _REGION2_SHIFT)); in gmap_unshadow_r3t()
1463 gmap_idte_one(__pa(r2o) | _ASCE_TYPE_REGION2, raddr); in gmap_unshadow_r3t()
1466 __gmap_unshadow_r3t(sg, raddr, __va(r3t)); in gmap_unshadow_r3t()
1481 static void __gmap_unshadow_r2t(struct gmap *sg, unsigned long raddr, in __gmap_unshadow_r2t() argument
1489 for (i = 0; i < _CRST_ENTRIES; i++, raddr += _REGION2_SIZE) { in __gmap_unshadow_r2t()
1494 __gmap_unshadow_r3t(sg, raddr, __va(r3t)); in __gmap_unshadow_r2t()
1509 static void gmap_unshadow_r2t(struct gmap *sg, unsigned long raddr) in gmap_unshadow_r2t() argument
1516 r1e = gmap_table_walk(sg, raddr, 4); /* get region-1 pointer */ in gmap_unshadow_r2t()
1519 gmap_call_notifier(sg, raddr, raddr + _REGION1_SIZE - 1); in gmap_unshadow_r2t()
1520 r1o = (unsigned long) (r1e - ((raddr & _REGION1_INDEX) >> _REGION1_SHIFT)); in gmap_unshadow_r2t()
1521 gmap_idte_one(__pa(r1o) | _ASCE_TYPE_REGION1, raddr); in gmap_unshadow_r2t()
1524 __gmap_unshadow_r2t(sg, raddr, __va(r2t)); in gmap_unshadow_r2t()
1539 static void __gmap_unshadow_r1t(struct gmap *sg, unsigned long raddr, in __gmap_unshadow_r1t() argument
1549 for (i = 0; i < _CRST_ENTRIES; i++, raddr += _REGION1_SIZE) { in __gmap_unshadow_r1t()
1553 __gmap_unshadow_r2t(sg, raddr, __va(r2t)); in __gmap_unshadow_r1t()
1555 gmap_idte_one(asce, raddr); in __gmap_unshadow_r1t()
1754 unsigned long raddr, origin, offset, len; in gmap_shadow_r2t() local
1798 raddr = (saddr & _REGION1_MASK) | _SHADOW_RMAP_REGION1; in gmap_shadow_r2t()
1802 rc = gmap_protect_rmap(sg, raddr, origin + offset, len); in gmap_shadow_r2t()
1811 gmap_unshadow_r2t(sg, raddr); in gmap_shadow_r2t()
1838 unsigned long raddr, origin, offset, len; in gmap_shadow_r3t() local
1882 raddr = (saddr & _REGION2_MASK) | _SHADOW_RMAP_REGION2; in gmap_shadow_r3t()
1886 rc = gmap_protect_rmap(sg, raddr, origin + offset, len); in gmap_shadow_r3t()
1895 gmap_unshadow_r3t(sg, raddr); in gmap_shadow_r3t()
1922 unsigned long raddr, origin, offset, len; in gmap_shadow_sgt() local
1966 raddr = (saddr & _REGION3_MASK) | _SHADOW_RMAP_REGION3; in gmap_shadow_sgt()
1970 rc = gmap_protect_rmap(sg, raddr, origin + offset, len); in gmap_shadow_sgt()
1979 gmap_unshadow_sgt(sg, raddr); in gmap_shadow_sgt()
2046 unsigned long raddr, origin; in gmap_shadow_pgt() local
2087 raddr = (saddr & _SEGMENT_MASK) | _SHADOW_RMAP_SEGMENT; in gmap_shadow_pgt()
2089 rc = gmap_protect_rmap(sg, raddr, origin, PAGE_SIZE); in gmap_shadow_pgt()
2098 gmap_unshadow_pgt(sg, raddr); in gmap_shadow_pgt()
2139 rmap->raddr = (saddr & PAGE_MASK) | _SHADOW_RMAP_PGTABLE; in gmap_shadow_page()
2194 unsigned long start, end, bits, raddr; in gmap_shadow_notify() local
2218 bits = rmap->raddr & _SHADOW_RMAP_MASK; in gmap_shadow_notify()
2219 raddr = rmap->raddr ^ bits; in gmap_shadow_notify()
2222 gmap_unshadow_r2t(sg, raddr); in gmap_shadow_notify()
2225 gmap_unshadow_r3t(sg, raddr); in gmap_shadow_notify()
2228 gmap_unshadow_sgt(sg, raddr); in gmap_shadow_notify()
2231 gmap_unshadow_pgt(sg, raddr); in gmap_shadow_notify()
2234 gmap_unshadow_page(sg, raddr); in gmap_shadow_notify()