Print this page
remove xhat
The xhat infrastructure was added to support hardware such as the zulu
graphics card - hardware which had on-board MMUs.  The VM used the xhat code
to keep the CPU's and Zulu's page tables in-sync.  Since the only xhat user
was zulu (which is gone), we can safely remove it simplifying the whole VM
subsystem.
Assorted notes:
- AS_BUSY flag was used solely by xhat

@@ -1682,12 +1682,10 @@
         for (sfhmep = pp->p_mapping; sfhmep; sfhmep = tmphme) {
                 tmphme = sfhmep->hme_next;
                 if (IS_PAHME(sfhmep))
                         continue;
                 hmeblkp = sfmmu_hmetohblk(sfhmep);
-                if (hmeblkp->hblk_xhat_bit)
-                        continue;
                 tmphat = hblktosfmmu(hmeblkp);
                 sfmmu_copytte(&sfhmep->hme_tte, &tte);
                 ASSERT(TTE_IS_VALID(&tte));
                 if ((tmphat == ksfmmup) || hmeblkp->hblk_lckcnt) {
                         /*

@@ -1707,12 +1705,10 @@
         for (sfhmep = pp->p_mapping; sfhmep; sfhmep = tmphme) {
                 tmphme = sfhmep->hme_next;
                 if (IS_PAHME(sfhmep))
                         continue;
                 hmeblkp = sfmmu_hmetohblk(sfhmep);
-                if (hmeblkp->hblk_xhat_bit)
-                        continue;
                 (void) sfmmu_pageunload(pp, sfhmep, TTE8K);
         }
 
         /*
          * Unloads only does tlb flushes so we need to flush the