Lines Matching refs:raddr
1206 static int gmap_protect_rmap(struct gmap *sg, unsigned long raddr, in gmap_protect_rmap() argument
1225 rmap->raddr = raddr; in gmap_protect_rmap()
1287 static void gmap_unshadow_page(struct gmap *sg, unsigned long raddr) in gmap_unshadow_page() argument
1292 table = gmap_table_walk(sg, raddr, 0); /* get page table pointer */ in gmap_unshadow_page()
1295 gmap_call_notifier(sg, raddr, raddr + _PAGE_SIZE - 1); in gmap_unshadow_page()
1296 ptep_unshadow_pte(sg->mm, raddr, (pte_t *) table); in gmap_unshadow_page()
1307 static void __gmap_unshadow_pgt(struct gmap *sg, unsigned long raddr, in __gmap_unshadow_pgt() argument
1313 for (i = 0; i < _PAGE_ENTRIES; i++, raddr += _PAGE_SIZE) in __gmap_unshadow_pgt()
1324 static void gmap_unshadow_pgt(struct gmap *sg, unsigned long raddr) in gmap_unshadow_pgt() argument
1330 ste = gmap_table_walk(sg, raddr, 1); /* get segment pointer */ in gmap_unshadow_pgt()
1333 gmap_call_notifier(sg, raddr, raddr + _SEGMENT_SIZE - 1); in gmap_unshadow_pgt()
1334 sto = (unsigned long) (ste - ((raddr & _SEGMENT_INDEX) >> _SEGMENT_SHIFT)); in gmap_unshadow_pgt()
1335 gmap_idte_one(sto | _ASCE_TYPE_SEGMENT, raddr); in gmap_unshadow_pgt()
1338 __gmap_unshadow_pgt(sg, raddr, pgt); in gmap_unshadow_pgt()
1353 static void __gmap_unshadow_sgt(struct gmap *sg, unsigned long raddr, in __gmap_unshadow_sgt() argument
1361 for (i = 0; i < _CRST_ENTRIES; i++, raddr += _SEGMENT_SIZE) { in __gmap_unshadow_sgt()
1366 __gmap_unshadow_pgt(sg, raddr, pgt); in __gmap_unshadow_sgt()
1381 static void gmap_unshadow_sgt(struct gmap *sg, unsigned long raddr) in gmap_unshadow_sgt() argument
1387 r3e = gmap_table_walk(sg, raddr, 2); /* get region-3 pointer */ in gmap_unshadow_sgt()
1390 gmap_call_notifier(sg, raddr, raddr + _REGION3_SIZE - 1); in gmap_unshadow_sgt()
1391 r3o = (unsigned long) (r3e - ((raddr & _REGION3_INDEX) >> _REGION3_SHIFT)); in gmap_unshadow_sgt()
1392 gmap_idte_one(r3o | _ASCE_TYPE_REGION3, raddr); in gmap_unshadow_sgt()
1395 __gmap_unshadow_sgt(sg, raddr, sgt); in gmap_unshadow_sgt()
1410 static void __gmap_unshadow_r3t(struct gmap *sg, unsigned long raddr, in __gmap_unshadow_r3t() argument
1418 for (i = 0; i < _CRST_ENTRIES; i++, raddr += _REGION3_SIZE) { in __gmap_unshadow_r3t()
1423 __gmap_unshadow_sgt(sg, raddr, sgt); in __gmap_unshadow_r3t()
1438 static void gmap_unshadow_r3t(struct gmap *sg, unsigned long raddr) in gmap_unshadow_r3t() argument
1444 r2e = gmap_table_walk(sg, raddr, 3); /* get region-2 pointer */ in gmap_unshadow_r3t()
1447 gmap_call_notifier(sg, raddr, raddr + _REGION2_SIZE - 1); in gmap_unshadow_r3t()
1448 r2o = (unsigned long) (r2e - ((raddr & _REGION2_INDEX) >> _REGION2_SHIFT)); in gmap_unshadow_r3t()
1449 gmap_idte_one(r2o | _ASCE_TYPE_REGION2, raddr); in gmap_unshadow_r3t()
1452 __gmap_unshadow_r3t(sg, raddr, r3t); in gmap_unshadow_r3t()
1467 static void __gmap_unshadow_r2t(struct gmap *sg, unsigned long raddr, in __gmap_unshadow_r2t() argument
1475 for (i = 0; i < _CRST_ENTRIES; i++, raddr += _REGION2_SIZE) { in __gmap_unshadow_r2t()
1480 __gmap_unshadow_r3t(sg, raddr, r3t); in __gmap_unshadow_r2t()
1495 static void gmap_unshadow_r2t(struct gmap *sg, unsigned long raddr) in gmap_unshadow_r2t() argument
1501 r1e = gmap_table_walk(sg, raddr, 4); /* get region-1 pointer */ in gmap_unshadow_r2t()
1504 gmap_call_notifier(sg, raddr, raddr + _REGION1_SIZE - 1); in gmap_unshadow_r2t()
1505 r1o = (unsigned long) (r1e - ((raddr & _REGION1_INDEX) >> _REGION1_SHIFT)); in gmap_unshadow_r2t()
1506 gmap_idte_one(r1o | _ASCE_TYPE_REGION1, raddr); in gmap_unshadow_r2t()
1509 __gmap_unshadow_r2t(sg, raddr, r2t); in gmap_unshadow_r2t()
1524 static void __gmap_unshadow_r1t(struct gmap *sg, unsigned long raddr, in __gmap_unshadow_r1t() argument
1533 for (i = 0; i < _CRST_ENTRIES; i++, raddr += _REGION1_SIZE) { in __gmap_unshadow_r1t()
1537 __gmap_unshadow_r2t(sg, raddr, r2t); in __gmap_unshadow_r1t()
1539 gmap_idte_one(asce, raddr); in __gmap_unshadow_r1t()
1738 unsigned long raddr, origin, offset, len; in gmap_shadow_r2t() local
1781 raddr = (saddr & _REGION1_MASK) | _SHADOW_RMAP_REGION1; in gmap_shadow_r2t()
1785 rc = gmap_protect_rmap(sg, raddr, origin + offset, len); in gmap_shadow_r2t()
1795 gmap_unshadow_r2t(sg, raddr); in gmap_shadow_r2t()
1822 unsigned long raddr, origin, offset, len; in gmap_shadow_r3t() local
1865 raddr = (saddr & _REGION2_MASK) | _SHADOW_RMAP_REGION2; in gmap_shadow_r3t()
1869 rc = gmap_protect_rmap(sg, raddr, origin + offset, len); in gmap_shadow_r3t()
1879 gmap_unshadow_r3t(sg, raddr); in gmap_shadow_r3t()
1906 unsigned long raddr, origin, offset, len; in gmap_shadow_sgt() local
1949 raddr = (saddr & _REGION3_MASK) | _SHADOW_RMAP_REGION3; in gmap_shadow_sgt()
1953 rc = gmap_protect_rmap(sg, raddr, origin + offset, len); in gmap_shadow_sgt()
1963 gmap_unshadow_sgt(sg, raddr); in gmap_shadow_sgt()
2030 unsigned long raddr, origin; in gmap_shadow_pgt() local
2070 raddr = (saddr & _SEGMENT_MASK) | _SHADOW_RMAP_SEGMENT; in gmap_shadow_pgt()
2072 rc = gmap_protect_rmap(sg, raddr, origin, PAGE_SIZE); in gmap_shadow_pgt()
2082 gmap_unshadow_pgt(sg, raddr); in gmap_shadow_pgt()
2123 rmap->raddr = (saddr & PAGE_MASK) | _SHADOW_RMAP_PGTABLE; in gmap_shadow_page()
2178 unsigned long start, end, bits, raddr; in gmap_shadow_notify() local
2202 bits = rmap->raddr & _SHADOW_RMAP_MASK; in gmap_shadow_notify()
2203 raddr = rmap->raddr ^ bits; in gmap_shadow_notify()
2206 gmap_unshadow_r2t(sg, raddr); in gmap_shadow_notify()
2209 gmap_unshadow_r3t(sg, raddr); in gmap_shadow_notify()
2212 gmap_unshadow_sgt(sg, raddr); in gmap_shadow_notify()
2215 gmap_unshadow_pgt(sg, raddr); in gmap_shadow_notify()
2218 gmap_unshadow_page(sg, raddr); in gmap_shadow_notify()