Index: /trunk/src/VBox/Additions/x11/vboxvideo/vboxutils.c
===================================================================
--- /trunk/src/VBox/Additions/x11/vboxvideo/vboxutils.c	(revision 35124)
+++ /trunk/src/VBox/Additions/x11/vboxvideo/vboxutils.c	(revision 35125)
@@ -125,5 +125,4 @@
     VBOXPtr pVBox = pScrn->driverPrivate;
 
-    TRACE_ENTRY();
     /* We may want to force the use of a software cursor.  Currently this is
      * needed if the guest uses a large virtual resolution, as in this case
@@ -160,5 +159,4 @@
             rc = FALSE;
     }
-    TRACE_LOG("rc=%s\n", BOOL_STR(rc));
     return rc;
 }
@@ -274,4 +272,7 @@
     pvGuestHeapMemory =   ((uint8_t *)pVBox->base) + offVRAMBaseMapping
                         + offGuestHeapMemory;
+    TRACE_LOG("video RAM: %u KB, guest heap offset: 0x%x, cbGuestHeapMemory: %u\n",
+              pScrn->videoRam, offVRAMBaseMapping + offGuestHeapMemory,
+              cbGuestHeapMemory);
     rc = VBoxHGSMISetupGuestContext(&pVBox->guestCtx, pvGuestHeapMemory,
                                     cbGuestHeapMemory,
@@ -290,16 +291,18 @@
         pVBox->cbFramebuffer -= VBVA_MIN_BUFFER_SIZE;
         pVBox->aoffVBVABuffer[i] = pVBox->cbFramebuffer;
+        TRACE_LOG("VBVA buffer offset for screen %u: 0x%lx\n", i,
+                  (unsigned long) pVBox->cbFramebuffer);
         VBoxVBVASetupBufferContext(&pVBox->aVbvaCtx[i],
                                    pVBox->aoffVBVABuffer[i], 
                                    VBVA_MIN_BUFFER_SIZE);
     }
+    TRACE_LOG("Maximum framebuffer size: %lu (0x%lx)\n",
+              (unsigned long) pVBox->cbFramebuffer,
+              (unsigned long) pVBox->cbFramebuffer);
     rc = VBoxHGSMISendViewInfo(&pVBox->guestCtx, pVBox->cScreens,
                                vboxFillViewInfo, (void *)pVBox);
 
-    /* Set up the dirty rectangle handler.  Since this seems to be a
-       delicate operation, and removing it doubly so, this will
-       remain in place whether it is needed or not, and will simply
-       return if VBVA is not active.  I assume that it will be active
-       most of the time. */
+    /* Set up the dirty rectangle handler.  It will be added into a function
+     * chain and gets removed when the screen is cleaned up. */
     if (ShadowFBInit2(pScreen, NULL, vboxHandleDirtyRect) != TRUE)
     {
@@ -610,5 +613,4 @@
     vboxWriteHostModes(pScrn, pScrn->currentMode);
 #endif
-    TRACE_LOG("rc=%s\n", BOOL_STR(rc));
     return rc;
 }
@@ -632,5 +634,4 @@
     int rc;
 
-    TRACE_ENTRY();
     pVBox = pScrn->driverPrivate;
     bitsp = pCurs->bits;
@@ -694,5 +695,4 @@
     rc = VBoxHGSMIUpdatePointerShape(&pVBox->guestCtx, fFlags, bitsp->xhot,
                                      bitsp->yhot, w, h, p, sizeData);
-    TRACE_LOG(": leaving, returning %d\n", rc);
     free(p);
 }
