Index: /trunk/src/VBox/Devices/Graphics/DevVGA-SVGA.cpp
===================================================================
--- /trunk/src/VBox/Devices/Graphics/DevVGA-SVGA.cpp	(revision 82408)
+++ /trunk/src/VBox/Devices/Graphics/DevVGA-SVGA.cpp	(revision 82409)
@@ -10,4 +10,7 @@
  *  - Log4 for hex dumps of 3D data.
  *  - Log5 for info about GMR pages.
+ *  - LogRel for the usual important stuff.
+ *  - LogRel2 for cursor.
+ *  - LogRel3 for 3D performance data.
  */
 
@@ -4416,4 +4419,7 @@
                         STAM_REL_COUNTER_INC(&pSVGAState->StatR3Cmd3dSurfaceDma);
 
+                        uint64_t u64NanoTS = 0;
+                        if (LogRelIs3Enabled())
+                            u64NanoTS = RTTimeNanoTS();
                         cCopyBoxes = (pHdr->size - sizeof(*pCmd)) / sizeof(SVGA3dCopyBox);
                         STAM_PROFILE_START(&pSVGAState->StatR3Cmd3dSurfaceDmaProf, a);
@@ -4421,4 +4427,15 @@
                                                 cCopyBoxes, (SVGA3dCopyBox *)(pCmd + 1));
                         STAM_PROFILE_STOP(&pSVGAState->StatR3Cmd3dSurfaceDmaProf, a);
+                        if (LogRelIs3Enabled())
+                        {
+                            if (cCopyBoxes)
+                            {
+                                SVGA3dCopyBox *pFirstBox = (SVGA3dCopyBox *)(pCmd + 1);
+                                LogRel3(("VMSVGA: SURFACE_DMA: %d us %d boxes %d,%d %dx%d%s\n",
+                                    (RTTimeNanoTS() - u64NanoTS) / 1000ULL, cCopyBoxes,
+                                    pFirstBox->x, pFirstBox->y, pFirstBox->w, pFirstBox->h,
+                                    pCmd->transfer == SVGA3D_READ_HOST_VRAM ? " readback!!!" : ""));
+                            }
+                        }
                         break;
                     }
@@ -4431,4 +4448,7 @@
                         STAM_REL_COUNTER_INC(&pSVGAState->StatR3Cmd3dSurfaceScreen);
 
+                        uint64_t u64NanoTS = 0;
+                        if (LogRelIs3Enabled())
+                            u64NanoTS = RTTimeNanoTS();
                         cRects = (pHdr->size - sizeof(*pCmd)) / sizeof(SVGASignedRect);
                         STAM_REL_PROFILE_START(&pSVGAState->StatR3Cmd3dBlitSurfaceToScreenProf, a);
@@ -4436,4 +4456,12 @@
                                                          pCmd->srcRect, cRects, (SVGASignedRect *)(pCmd + 1));
                         STAM_REL_PROFILE_STOP(&pSVGAState->StatR3Cmd3dBlitSurfaceToScreenProf, a);
+                        if (LogRelIs3Enabled())
+                        {
+                            SVGASignedRect *pFirstRect = cRects ? (SVGASignedRect *)(pCmd + 1) : &pCmd->destRect;
+                            LogRel3(("VMSVGA: SURFACE_TO_SCREEN: %d us %d rects %d,%d %dx%d\n",
+                                (RTTimeNanoTS() - u64NanoTS) / 1000ULL, cRects,
+                                pFirstRect->left, pFirstRect->top,
+                                pFirstRect->right - pFirstRect->left, pFirstRect->bottom - pFirstRect->top));
+                        }
                         break;
                     }
