struct page *pages, u32 page_cnt, u32 max_pkt_size)
 {
        struct page **pages_wraparound;
-       unsigned long *pfns_wraparound;
-       u64 pfn;
        int i;
 
        BUILD_BUG_ON((sizeof(struct hv_ring_buffer) != PAGE_SIZE));
         * First page holds struct hv_ring_buffer, do wraparound mapping for
         * the rest.
         */
-       if (hv_isolation_type_snp()) {
-               pfn = page_to_pfn(pages) +
-                       PFN_DOWN(ms_hyperv.shared_gpa_boundary);
+       pages_wraparound = kcalloc(page_cnt * 2 - 1,
+                                  sizeof(struct page *),
+                                  GFP_KERNEL);
+       if (!pages_wraparound)
+               return -ENOMEM;
 
-               pfns_wraparound = kcalloc(page_cnt * 2 - 1,
-                       sizeof(unsigned long), GFP_KERNEL);
-               if (!pfns_wraparound)
-                       return -ENOMEM;
-
-               pfns_wraparound[0] = pfn;
-               for (i = 0; i < 2 * (page_cnt - 1); i++)
-                       pfns_wraparound[i + 1] = pfn + i % (page_cnt - 1) + 1;
-
-               ring_info->ring_buffer = (struct hv_ring_buffer *)
-                       vmap_pfn(pfns_wraparound, page_cnt * 2 - 1,
-                                pgprot_decrypted(PAGE_KERNEL));
-               kfree(pfns_wraparound);
-
-               if (!ring_info->ring_buffer)
-                       return -ENOMEM;
-
-               /* Zero ring buffer after setting memory host visibility. */
-               memset(ring_info->ring_buffer, 0x00, PAGE_SIZE * page_cnt);
-       } else {
-               pages_wraparound = kcalloc(page_cnt * 2 - 1,
-                                          sizeof(struct page *),
-                                          GFP_KERNEL);
-               if (!pages_wraparound)
-                       return -ENOMEM;
-
-               pages_wraparound[0] = pages;
-               for (i = 0; i < 2 * (page_cnt - 1); i++)
-                       pages_wraparound[i + 1] =
-                               &pages[i % (page_cnt - 1) + 1];
+       pages_wraparound[0] = pages;
+       for (i = 0; i < 2 * (page_cnt - 1); i++)
+               pages_wraparound[i + 1] =
+                       &pages[i % (page_cnt - 1) + 1];
 
-               ring_info->ring_buffer = (struct hv_ring_buffer *)
-                       vmap(pages_wraparound, page_cnt * 2 - 1, VM_MAP,
-                               PAGE_KERNEL);
+       ring_info->ring_buffer = (struct hv_ring_buffer *)
+               vmap(pages_wraparound, page_cnt * 2 - 1, VM_MAP,
+                       pgprot_decrypted(PAGE_KERNEL));
 
-               kfree(pages_wraparound);
-               if (!ring_info->ring_buffer)
-                       return -ENOMEM;
-       }
+       kfree(pages_wraparound);
+       if (!ring_info->ring_buffer)
+               return -ENOMEM;
 
+       /*
+        * Ensure the header page is zero'ed since
+        * encryption status may have changed.
+        */
+       memset(ring_info->ring_buffer, 0, HV_HYP_PAGE_SIZE);
 
        ring_info->ring_buffer->read_index =
                ring_info->ring_buffer->write_index = 0;