Lines Matching full:shadow
195 /* Free additional data for a shadow gmap */ in gmap_free()
243 /* Remove all shadow gmaps linked to this gmap */ in gmap_remove()
471 * Note: Can also be called for shadow gmaps.
479 /* Note: guest_to_host is empty for a shadow gmap */ in __gmap_translate()
505 * gmap_unlink - disconnect a page table from the gmap shadow tables
529 * __gmap_link - set up shadow page tables to connect a host to a guest address
791 * Note: Can also be called for shadow gmaps.
990 /* Shadow GMAP protection needs split PMDs */ in gmap_protect_pmd()
1131 * shadow.
1177 * @sg: pointer to the shadow guest address space structure
1210 * @sg: pointer to the shadow guest address space structure
1211 * @raddr: rmap address in the shadow gmap
1293 * gmap_unshadow_page - remove a page from a shadow page table
1294 * @sg: pointer to the shadow guest address space structure
1295 * @raddr: rmap address in the shadow guest address space
1312 * __gmap_unshadow_pgt - remove all entries from a shadow page table
1313 * @sg: pointer to the shadow guest address space structure
1314 * @raddr: rmap address in the shadow guest address space
1315 * @pgt: pointer to the start of a shadow page table
1330 * gmap_unshadow_pgt - remove a shadow page table from a segment entry
1331 * @sg: pointer to the shadow guest address space structure
1332 * @raddr: address in the shadow guest address space
1358 * __gmap_unshadow_sgt - remove all entries from a shadow segment table
1359 * @sg: pointer to the shadow guest address space structure
1360 * @raddr: rmap address in the shadow guest address space
1361 * @sgt: pointer to the start of a shadow segment table
1387 * gmap_unshadow_sgt - remove a shadow segment table from a region-3 entry
1388 * @sg: pointer to the shadow guest address space structure
1389 * @raddr: rmap address in the shadow guest address space
1391 * Called with the shadow->guest_table_lock
1415 * __gmap_unshadow_r3t - remove all entries from a shadow region-3 table
1416 * @sg: pointer to the shadow guest address space structure
1417 * @raddr: address in the shadow guest address space
1418 * @r3t: pointer to the start of a shadow region-3 table
1444 * gmap_unshadow_r3t - remove a shadow region-3 table from a region-2 entry
1445 * @sg: pointer to the shadow guest address space structure
1446 * @raddr: rmap address in the shadow guest address space
1472 * __gmap_unshadow_r2t - remove all entries from a shadow region-2 table
1473 * @sg: pointer to the shadow guest address space structure
1474 * @raddr: rmap address in the shadow guest address space
1475 * @r2t: pointer to the start of a shadow region-2 table
1501 * gmap_unshadow_r2t - remove a shadow region-2 table from a region-1 entry
1502 * @sg: pointer to the shadow guest address space structure
1503 * @raddr: rmap address in the shadow guest address space
1529 * __gmap_unshadow_r1t - remove all entries from a shadow region-1 table
1530 * @sg: pointer to the shadow guest address space structure
1531 * @raddr: rmap address in the shadow guest address space
1532 * @r1t: pointer to the start of a shadow region-1 table
1534 * Called with the shadow->guest_table_lock
1561 * gmap_unshadow - remove a shadow page table completely
1562 * @sg: pointer to the shadow guest address space structure
1594 * gmap_find_shadow - find a specific asce in the list of shadow tables
1596 * @asce: ASCE for which the shadow table is created
1597 * @edat_level: edat level to be used for the shadow translation
1599 * Returns the pointer to a gmap if a shadow table with the given asce is
1621 * gmap_shadow_valid - check if a shadow guest address space matches the
1623 * @sg: pointer to the shadow guest address space structure
1624 * @asce: ASCE for which the shadow table is requested
1625 * @edat_level: edat level to be used for the shadow translation
1627 * Returns 1 if the gmap shadow is still valid and matches the given
1629 * caller has to request a new shadow gmap in this case.
1641 * gmap_shadow - create/find a shadow guest address space
1643 * @asce: ASCE for which the shadow table is created
1644 * @edat_level: edat level to be used for the shadow translation
1648 * The shadow table will be removed automatically on any change to the
1669 /* Create a new shadow gmap */ in gmap_shadow()
1682 /* Recheck if another CPU created the same shadow */ in gmap_shadow()
1690 /* only allow one real-space gmap shadow */ in gmap_shadow()
1730 * gmap_shadow_r2t - create an empty shadow region 2 table
1731 * @sg: pointer to the shadow guest address space structure
1732 * @saddr: faulting address in the shadow gmap
1739 * remove the shadow r2 table and all of its decendents.
1742 * shadow table structure is incomplete, -ENOMEM if out of memory and
1756 /* Allocate a shadow region second table */ in gmap_shadow_r2t()
1764 /* Install shadow region second table */ in gmap_shadow_r2t()
1775 rc = -EAGAIN; /* Race with shadow */ in gmap_shadow_r2t()
1819 * gmap_shadow_r3t - create a shadow region 3 table
1820 * @sg: pointer to the shadow guest address space structure
1821 * @saddr: faulting address in the shadow gmap
1826 * shadow table structure is incomplete, -ENOMEM if out of memory and
1840 /* Allocate a shadow region second table */ in gmap_shadow_r3t()
1848 /* Install shadow region second table */ in gmap_shadow_r3t()
1859 rc = -EAGAIN; /* Race with shadow */ in gmap_shadow_r3t()
1903 * gmap_shadow_sgt - create a shadow segment table
1904 * @sg: pointer to the shadow guest address space structure
1905 * @saddr: faulting address in the shadow gmap
1910 * shadow table structure is incomplete, -ENOMEM if out of memory and
1924 /* Allocate a shadow segment table */ in gmap_shadow_sgt()
1932 /* Install shadow region second table */ in gmap_shadow_sgt()
1943 rc = -EAGAIN; /* Race with shadow */ in gmap_shadow_sgt()
1987 * gmap_shadow_pgt_lookup - find a shadow page table
1988 * @sg: pointer to the shadow guest address space structure
1989 * @saddr: the address in the shadow aguest address space
1994 * Returns 0 if the shadow page table was found and -EAGAIN if the page
2011 /* Shadow page tables are full pages (pte+pgste) */ in gmap_shadow_pgt_lookup()
2027 * gmap_shadow_pgt - instantiate a shadow page table
2028 * @sg: pointer to the shadow guest address space structure
2029 * @saddr: faulting address in the shadow gmap
2034 * shadow table structure is incomplete, -ENOMEM if out of memory,
2048 /* Allocate a shadow page table */ in gmap_shadow_pgt()
2056 /* Install shadow page table */ in gmap_shadow_pgt()
2067 rc = -EAGAIN; /* Race with shadow */ in gmap_shadow_pgt()
2107 * gmap_shadow_page - create a shadow page mapping
2108 * @sg: pointer to the shadow guest address space structure
2109 * @saddr: faulting address in the shadow gmap
2113 * shadow table structure is incomplete, -ENOMEM if out of memory and
2182 * gmap_shadow_notify - handle notifications for shadow gmap
2204 /* The complete shadow table has to go */ in gmap_shadow_notify()