Index: xf86-video-openchrome-0.2.903/libxvmc/viaLowLevel.c =================================================================== --- xf86-video-openchrome-0.2.903.orig/libxvmc/viaLowLevel.c +++ xf86-video-openchrome-0.2.903/libxvmc/viaLowLevel.c @@ -277,10 +277,14 @@ viaDMAInitTimeStamp(XvMCLowLevel * xl) xl->tsMem.size = 64; xl->tsMem.type = VIA_MEM_VIDEO; if (drmCommandWriteRead(xl->fd, DRM_VIA_ALLOCMEM, &xl->tsMem, - sizeof(xl->tsMem)) < 0) + sizeof(xl->tsMem)) < 0) { + fprintf(stderr, "DRM_VIA_ALLOCMEM failed size %d\n", sizeof(xl->tsMem)); return ret; - if (xl->tsMem.size != 64) + } + if (xl->tsMem.size != 64) { + fprintf(stderr, "error: tsMem.size is %d\n", tsMem.size); return -1; + } xl->tsOffset = (xl->tsMem.offset + 31) & ~31; xl->tsP = (CARD32 *) xl->fbAddress + (xl->tsOffset >> 2); xl->curTimeStamp = 1; @@ -1014,8 +1018,10 @@ initXvMCLowLevel(int fd, drm_context_t * xl = (XvMCLowLevel *) malloc(sizeof(XvMCLowLevel)); - if (!xl) + if (!xl) { + fprintf(stderr, "malloc failed\n"); return NULL; + } xl->agp_pos = 0; xl->pci_pos = 0; @@ -1031,6 +1037,7 @@ initXvMCLowLevel(int fd, drm_context_t * xl->agpSync = 0; ret = viaDMAInitTimeStamp(xl); if (ret) { + fprintf(stderr, "viaDMAInitTimeStamp failed with code %d\n", ret); free(xl); return NULL; }