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()
470 * Note: Can also be called for shadow gmaps.
478 /* Note: guest_to_host is empty for a shadow gmap */ in __gmap_translate()
504 * gmap_unlink - disconnect a page table from the gmap shadow tables
528 * __gmap_link - set up shadow page tables to connect a host to a guest address
790 * Note: Can also be called for shadow gmaps.
989 /* Shadow GMAP protection needs split PMDs */ in gmap_protect_pmd()
1130 * shadow.
1176 * @sg: pointer to the shadow guest address space structure
1209 * @sg: pointer to the shadow guest address space structure
1210 * @raddr: rmap address in the shadow gmap
1292 * gmap_unshadow_page - remove a page from a shadow page table
1293 * @sg: pointer to the shadow guest address space structure
1294 * @raddr: rmap address in the shadow guest address space
1311 * __gmap_unshadow_pgt - remove all entries from a shadow page table
1312 * @sg: pointer to the shadow guest address space structure
1313 * @raddr: rmap address in the shadow guest address space
1314 * @pgt: pointer to the start of a shadow page table
1329 * gmap_unshadow_pgt - remove a shadow page table from a segment entry
1330 * @sg: pointer to the shadow guest address space structure
1331 * @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
1416 * __gmap_unshadow_r3t - remove all entries from a shadow region-3 table
1417 * @sg: pointer to the shadow guest address space structure
1418 * @raddr: address in the shadow guest address space
1419 * @r3t: pointer to the start of a shadow region-3 table
1445 * gmap_unshadow_r3t - remove a shadow region-3 table from a region-2 entry
1446 * @sg: pointer to the shadow guest address space structure
1447 * @raddr: rmap address in the shadow guest address space
1474 * __gmap_unshadow_r2t - remove all entries from a shadow region-2 table
1475 * @sg: pointer to the shadow guest address space structure
1476 * @raddr: rmap address in the shadow guest address space
1477 * @r2t: pointer to the start of a shadow region-2 table
1503 * gmap_unshadow_r2t - remove a shadow region-2 table from a region-1 entry
1504 * @sg: pointer to the shadow guest address space structure
1505 * @raddr: rmap address in the shadow guest address space
1532 * __gmap_unshadow_r1t - remove all entries from a shadow region-1 table
1533 * @sg: pointer to the shadow guest address space structure
1534 * @raddr: rmap address in the shadow guest address space
1535 * @r1t: pointer to the start of a shadow region-1 table
1537 * Called with the shadow->guest_table_lock
1565 * gmap_unshadow - remove a shadow page table completely
1566 * @sg: pointer to the shadow guest address space structure
1598 * gmap_find_shadow - find a specific asce in the list of shadow tables
1600 * @asce: ASCE for which the shadow table is created
1601 * @edat_level: edat level to be used for the shadow translation
1603 * Returns the pointer to a gmap if a shadow table with the given asce is
1625 * gmap_shadow_valid - check if a shadow guest address space matches the
1627 * @sg: pointer to the shadow guest address space structure
1628 * @asce: ASCE for which the shadow table is requested
1629 * @edat_level: edat level to be used for the shadow translation
1631 * Returns 1 if the gmap shadow is still valid and matches the given
1633 * caller has to request a new shadow gmap in this case.
1645 * gmap_shadow - create/find a shadow guest address space
1647 * @asce: ASCE for which the shadow table is created
1648 * @edat_level: edat level to be used for the shadow translation
1652 * The shadow table will be removed automatically on any change to the
1673 /* Create a new shadow gmap */ in gmap_shadow()
1686 /* Recheck if another CPU created the same shadow */ in gmap_shadow()
1694 /* only allow one real-space gmap shadow */ in gmap_shadow()
1734 * gmap_shadow_r2t - create an empty shadow region 2 table
1735 * @sg: pointer to the shadow guest address space structure
1736 * @saddr: faulting address in the shadow gmap
1743 * remove the shadow r2 table and all of its descendants.
1746 * shadow table structure is incomplete, -ENOMEM if out of memory and
1761 /* Allocate a shadow region second table */ in gmap_shadow_r2t()
1769 /* Install shadow region second table */ in gmap_shadow_r2t()
1780 rc = -EAGAIN; /* Race with shadow */ in gmap_shadow_r2t()
1823 * gmap_shadow_r3t - create a shadow region 3 table
1824 * @sg: pointer to the shadow guest address space structure
1825 * @saddr: faulting address in the shadow gmap
1830 * shadow table structure is incomplete, -ENOMEM if out of memory and
1845 /* Allocate a shadow region second table */ in gmap_shadow_r3t()
1853 /* Install shadow region second table */ in gmap_shadow_r3t()
1864 rc = -EAGAIN; /* Race with shadow */ in gmap_shadow_r3t()
1907 * gmap_shadow_sgt - create a shadow segment table
1908 * @sg: pointer to the shadow guest address space structure
1909 * @saddr: faulting address in the shadow gmap
1914 * shadow table structure is incomplete, -ENOMEM if out of memory and
1929 /* Allocate a shadow segment table */ in gmap_shadow_sgt()
1937 /* Install shadow region second table */ in gmap_shadow_sgt()
1948 rc = -EAGAIN; /* Race with shadow */ in gmap_shadow_sgt()
1991 * gmap_shadow_pgt_lookup - find a shadow page table
1992 * @sg: pointer to the shadow guest address space structure
1993 * @saddr: the address in the shadow aguest address space
1998 * Returns 0 if the shadow page table was found and -EAGAIN if the page
2015 /* Shadow page tables are full pages (pte+pgste) */ in gmap_shadow_pgt_lookup()
2031 * gmap_shadow_pgt - instantiate a shadow page table
2032 * @sg: pointer to the shadow guest address space structure
2033 * @saddr: faulting address in the shadow gmap
2038 * shadow table structure is incomplete, -ENOMEM if out of memory,
2053 /* Allocate a shadow page table */ in gmap_shadow_pgt()
2061 /* Install shadow page table */ in gmap_shadow_pgt()
2072 rc = -EAGAIN; /* Race with shadow */ in gmap_shadow_pgt()
2111 * gmap_shadow_page - create a shadow page mapping
2112 * @sg: pointer to the shadow guest address space structure
2113 * @saddr: faulting address in the shadow gmap
2117 * shadow table structure is incomplete, -ENOMEM if out of memory and
2186 * gmap_shadow_notify - handle notifications for shadow gmap
2208 /* The complete shadow table has to go */ in gmap_shadow_notify()