CVS commit: xsrc/external/mit/xorg-server/dist/hw/xfree86/drivers/modesetting
Module Name:xsrc Committed By: maya Date: Thu Jan 10 14:33:11 UTC 2019 Modified Files: xsrc/external/mit/xorg-server/dist/hw/xfree86/drivers/modesetting: driver.c Log Message: pEnt isn't initialized at this point, don't free it Undo diff to upstream. There's a good chance we aren't using this code at all. To generate a diff of this commit: cvs rdiff -u -r1.3 -r1.4 \ xsrc/external/mit/xorg-server/dist/hw/xfree86/drivers/modesetting/driver.c Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: xsrc/external/mit/xorg-server/dist/hw/xfree86/drivers/modesetting/driver.c diff -u xsrc/external/mit/xorg-server/dist/hw/xfree86/drivers/modesetting/driver.c:1.3 xsrc/external/mit/xorg-server/dist/hw/xfree86/drivers/modesetting/driver.c:1.4 --- xsrc/external/mit/xorg-server/dist/hw/xfree86/drivers/modesetting/driver.c:1.3 Mon Dec 31 09:50:00 2018 +++ xsrc/external/mit/xorg-server/dist/hw/xfree86/drivers/modesetting/driver.c Thu Jan 10 14:33:11 2019 @@ -901,15 +901,12 @@ PreInit(ScrnInfoPtr pScrn, int flags) return FALSE; if (flags & PROBE_DETECT) { - free(pEnt); return FALSE; } /* Allocate driverPrivate */ -if (!GetRec(pScrn)) { - free(pEnt); +if (!GetRec(pScrn)) return FALSE; -} pEnt = xf86GetEntityInfo(pScrn->entityList[0]);
CVS commit: xsrc/external/mit/xorg-server/dist/hw/xfree86/drivers/modesetting
Module Name:xsrc Committed By: ryo Date: Tue Apr 3 19:53:57 UTC 2018 Modified Files: xsrc/external/mit/xorg-server/dist/hw/xfree86/drivers/modesetting: driver.h present.c vblank.c Log Message: Fix compile error on evbarm-aarch64. (incompatible pointer types initializing 'present_get_ust_msc_ptr') To generate a diff of this commit: cvs rdiff -u -r1.1.1.1 -r1.2 \ xsrc/external/mit/xorg-server/dist/hw/xfree86/drivers/modesetting/driver.h \ xsrc/external/mit/xorg-server/dist/hw/xfree86/drivers/modesetting/present.c cvs rdiff -u -r1.2 -r1.3 \ xsrc/external/mit/xorg-server/dist/hw/xfree86/drivers/modesetting/vblank.c Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: xsrc/external/mit/xorg-server/dist/hw/xfree86/drivers/modesetting/driver.h diff -u xsrc/external/mit/xorg-server/dist/hw/xfree86/drivers/modesetting/driver.h:1.1.1.1 xsrc/external/mit/xorg-server/dist/hw/xfree86/drivers/modesetting/driver.h:1.2 --- xsrc/external/mit/xorg-server/dist/hw/xfree86/drivers/modesetting/driver.h:1.1.1.1 Wed Aug 10 07:44:34 2016 +++ xsrc/external/mit/xorg-server/dist/hw/xfree86/drivers/modesetting/driver.h Tue Apr 3 19:53:57 2018 @@ -139,7 +139,7 @@ xf86CrtcPtr ms_dri2_crtc_covering_drawab xf86CrtcPtr ms_covering_crtc(ScrnInfoPtr scrn, BoxPtr box, xf86CrtcPtr desired, BoxPtr crtc_box_ret); -int ms_get_crtc_ust_msc(xf86CrtcPtr crtc, CARD64 *ust, CARD64 *msc); +int ms_get_crtc_ust_msc(xf86CrtcPtr crtc, uint64_t *ust, uint64_t *msc); uint32_t ms_crtc_msc_to_kernel_msc(xf86CrtcPtr crtc, uint64_t expect); uint64_t ms_kernel_msc_to_crtc_msc(xf86CrtcPtr crtc, uint32_t sequence); Index: xsrc/external/mit/xorg-server/dist/hw/xfree86/drivers/modesetting/present.c diff -u xsrc/external/mit/xorg-server/dist/hw/xfree86/drivers/modesetting/present.c:1.1.1.1 xsrc/external/mit/xorg-server/dist/hw/xfree86/drivers/modesetting/present.c:1.2 --- xsrc/external/mit/xorg-server/dist/hw/xfree86/drivers/modesetting/present.c:1.1.1.1 Wed Aug 10 07:44:34 2016 +++ xsrc/external/mit/xorg-server/dist/hw/xfree86/drivers/modesetting/present.c Tue Apr 3 19:53:57 2018 @@ -64,7 +64,7 @@ ms_present_get_crtc(WindowPtr window) } static int -ms_present_get_ust_msc(RRCrtcPtr crtc, CARD64 *ust, CARD64 *msc) +ms_present_get_ust_msc(RRCrtcPtr crtc, uint64_t *ust, uint64_t *msc) { xf86CrtcPtr xf86_crtc = crtc->devPrivate; Index: xsrc/external/mit/xorg-server/dist/hw/xfree86/drivers/modesetting/vblank.c diff -u xsrc/external/mit/xorg-server/dist/hw/xfree86/drivers/modesetting/vblank.c:1.2 xsrc/external/mit/xorg-server/dist/hw/xfree86/drivers/modesetting/vblank.c:1.3 --- xsrc/external/mit/xorg-server/dist/hw/xfree86/drivers/modesetting/vblank.c:1.2 Fri Oct 7 16:08:48 2016 +++ xsrc/external/mit/xorg-server/dist/hw/xfree86/drivers/modesetting/vblank.c Tue Apr 3 19:53:57 2018 @@ -196,7 +196,7 @@ ms_kernel_msc_to_crtc_msc(xf86CrtcPtr cr } int -ms_get_crtc_ust_msc(xf86CrtcPtr crtc, CARD64 *ust, CARD64 *msc) +ms_get_crtc_ust_msc(xf86CrtcPtr crtc, uint64_t *ust, uint64_t *msc) { uint32_t kernel_msc;
CVS commit: xsrc/external/mit/xorg-server/dist/hw/xfree86/drivers/modesetting
Module Name:xsrc Committed By: christos Date: Fri Oct 7 16:08:48 UTC 2016 Modified Files: xsrc/external/mit/xorg-server/dist/hw/xfree86/drivers/modesetting: vblank.c Log Message: CID 1373525: Checking for NULL after deref is kind of late. To generate a diff of this commit: cvs rdiff -u -r1.1.1.1 -r1.2 \ xsrc/external/mit/xorg-server/dist/hw/xfree86/drivers/modesetting/vblank.c Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: xsrc/external/mit/xorg-server/dist/hw/xfree86/drivers/modesetting/vblank.c diff -u xsrc/external/mit/xorg-server/dist/hw/xfree86/drivers/modesetting/vblank.c:1.1.1.1 xsrc/external/mit/xorg-server/dist/hw/xfree86/drivers/modesetting/vblank.c:1.2 --- xsrc/external/mit/xorg-server/dist/hw/xfree86/drivers/modesetting/vblank.c:1.1.1.1 Wed Aug 10 03:44:34 2016 +++ xsrc/external/mit/xorg-server/dist/hw/xfree86/drivers/modesetting/vblank.c Fri Oct 7 12:08:48 2016 @@ -246,14 +246,19 @@ ms_crtc_msc_to_kernel_msc(xf86CrtcPtr cr static void ms_drm_wakeup_handler(void *data, int err, void *mask) { -ScreenPtr screen = data; -ScrnInfoPtr scrn = xf86ScreenToScrn(screen); -modesettingPtr ms = modesettingPTR(scrn); -fd_set *read_mask = mask; +ScreenPtr screen; +ScrnInfoPtr scrn; +modesettingPtr ms; +fd_set *read_mask; if (data == NULL || err < 0) return; +screen = data; +scrn = xf86ScreenToScrn(screen); +ms = modesettingPTR(scrn); +read_mask = mask; + if (FD_ISSET(ms->fd, read_mask)) drmHandleEvent(ms->fd, >event_context); }
CVS commit: xsrc/external/mit/xorg-server/dist/hw/xfree86/drivers/modesetting
Module Name:xsrc Committed By: christos Date: Fri Oct 7 16:01:50 UTC 2016 Modified Files: xsrc/external/mit/xorg-server/dist/hw/xfree86/drivers/modesetting: driver.c Log Message: CID 1373520: Fix memory leak, don't allocate needlessly. CID 1373521: Fix memory leak. To generate a diff of this commit: cvs rdiff -u -r1.1.1.1 -r1.2 \ xsrc/external/mit/xorg-server/dist/hw/xfree86/drivers/modesetting/driver.c Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: xsrc/external/mit/xorg-server/dist/hw/xfree86/drivers/modesetting/driver.c diff -u xsrc/external/mit/xorg-server/dist/hw/xfree86/drivers/modesetting/driver.c:1.1.1.1 xsrc/external/mit/xorg-server/dist/hw/xfree86/drivers/modesetting/driver.c:1.2 --- xsrc/external/mit/xorg-server/dist/hw/xfree86/drivers/modesetting/driver.c:1.1.1.1 Wed Aug 10 03:44:34 2016 +++ xsrc/external/mit/xorg-server/dist/hw/xfree86/drivers/modesetting/driver.c Fri Oct 7 12:01:50 2016 @@ -752,8 +752,8 @@ ms_get_drm_master_fd(ScrnInfoPtr pScrn) if (pEnt->location.type == BUS_PCI) { ms->PciInfo = xf86GetPciInfoForEntity(ms->pEnt->index); if (ms->PciInfo) { -BusID = malloc(64); -sprintf(BusID, "PCI:%d:%d:%d", +char BusID[256]; +snprintf(BusID, sizeof(BusID), "PCI:%d:%d:%d", #if XSERVER_LIBPCIACCESS ((ms->PciInfo->domain << 8) | ms->PciInfo->bus), ms->PciInfo->dev, ms->PciInfo->func @@ -796,12 +796,15 @@ PreInit(ScrnInfoPtr pScrn, int flags) pEnt = xf86GetEntityInfo(pScrn->entityList[0]); if (flags & PROBE_DETECT) { + free(pEnt); return FALSE; } /* Allocate driverPrivate */ -if (!GetRec(pScrn)) +if (!GetRec(pScrn)) { + free(pEnt); return FALSE; +} ms = modesettingPTR(pScrn); ms->SaveGeneration = -1;
CVS commit: xsrc/external/mit/xorg-server/dist/hw/xfree86/drivers/modesetting
Module Name:xsrc Committed By: christos Date: Fri Oct 7 15:55:36 UTC 2016 Modified Files: xsrc/external/mit/xorg-server/dist/hw/xfree86/drivers/modesetting: drmmode_display.c Log Message: CID 1373518: Memory corruption (off-by-one) To generate a diff of this commit: cvs rdiff -u -r1.2 -r1.3 \ xsrc/external/mit/xorg-server/dist/hw/xfree86/drivers/modesetting/drmmode_display.c Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: xsrc/external/mit/xorg-server/dist/hw/xfree86/drivers/modesetting/drmmode_display.c diff -u xsrc/external/mit/xorg-server/dist/hw/xfree86/drivers/modesetting/drmmode_display.c:1.2 xsrc/external/mit/xorg-server/dist/hw/xfree86/drivers/modesetting/drmmode_display.c:1.3 --- xsrc/external/mit/xorg-server/dist/hw/xfree86/drivers/modesetting/drmmode_display.c:1.2 Fri Oct 7 11:43:38 2016 +++ xsrc/external/mit/xorg-server/dist/hw/xfree86/drivers/modesetting/drmmode_display.c Fri Oct 7 11:55:36 2016 @@ -1370,7 +1370,7 @@ static int parse_path_blob(drmModeProper if (!conn) return -1; len = conn - (blob_data + 4); -if (len + 1> 5) +if (len + 1 >= sizeof(conn_id)) return -1; memcpy(conn_id, blob_data + 4, len); conn_id[len + 1] = '\0';
CVS commit: xsrc/external/mit/xorg-server/dist/hw/xfree86/drivers/modesetting
Module Name:xsrc Committed By: christos Date: Fri Oct 7 15:43:38 UTC 2016 Modified Files: xsrc/external/mit/xorg-server/dist/hw/xfree86/drivers/modesetting: drmmode_display.c Log Message: CID 1373515: check return value. To generate a diff of this commit: cvs rdiff -u -r1.1.1.1 -r1.2 \ xsrc/external/mit/xorg-server/dist/hw/xfree86/drivers/modesetting/drmmode_display.c Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: xsrc/external/mit/xorg-server/dist/hw/xfree86/drivers/modesetting/drmmode_display.c diff -u xsrc/external/mit/xorg-server/dist/hw/xfree86/drivers/modesetting/drmmode_display.c:1.1.1.1 xsrc/external/mit/xorg-server/dist/hw/xfree86/drivers/modesetting/drmmode_display.c:1.2 --- xsrc/external/mit/xorg-server/dist/hw/xfree86/drivers/modesetting/drmmode_display.c:1.1.1.1 Wed Aug 10 03:44:34 2016 +++ xsrc/external/mit/xorg-server/dist/hw/xfree86/drivers/modesetting/drmmode_display.c Fri Oct 7 11:43:38 2016 @@ -674,11 +674,15 @@ drmmode_set_scanout_pixmap_cpu(xf86CrtcP DamageRegister(>drawable, drmmode_crtc->slave_damage); if (ppriv->fb_id == 0) { -drmModeAddFB(drmmode->fd, ppix->drawable.width, +int ret = drmModeAddFB(drmmode->fd, ppix->drawable.width, ppix->drawable.height, ppix->drawable.depth, ppix->drawable.bitsPerPixel, ppix->devKind, ppriv->backing_bo->handle, >fb_id); + if (ret) { + ErrorF("failed to set scanout pixmap cpu\n"); + return FALSE; + } } return TRUE; }