CVS commit: xsrc/external/mit/libdrm
Module Name:xsrc Committed By: mrg Date: Sun Jul 11 00:41:13 UTC 2021 Modified Files: xsrc/external/mit/libdrm/dist/amdgpu: amdgpu_vamgr.c Added Files: xsrc/external/mit/libdrm/include: generated_static_table_fourcc.h Log Message: avoid 'visibility' attribute on static functions. To generate a diff of this commit: cvs rdiff -u -r1.3 -r1.4 xsrc/external/mit/libdrm/dist/amdgpu/amdgpu_vamgr.c cvs rdiff -u -r0 -r1.1 \ xsrc/external/mit/libdrm/include/generated_static_table_fourcc.h 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/libdrm/dist/amdgpu/amdgpu_vamgr.c diff -u xsrc/external/mit/libdrm/dist/amdgpu/amdgpu_vamgr.c:1.3 xsrc/external/mit/libdrm/dist/amdgpu/amdgpu_vamgr.c:1.4 --- xsrc/external/mit/libdrm/dist/amdgpu/amdgpu_vamgr.c:1.3 Sun Jul 11 00:31:54 2021 +++ xsrc/external/mit/libdrm/dist/amdgpu/amdgpu_vamgr.c Sun Jul 11 00:41:13 2021 @@ -69,7 +69,7 @@ drm_private void amdgpu_vamgr_deinit(str pthread_mutex_destroy(>bo_va_mutex); } -static drm_private int +static int amdgpu_vamgr_subtract_hole(struct amdgpu_bo_va_hole *hole, uint64_t start_va, uint64_t end_va) { @@ -97,7 +97,7 @@ amdgpu_vamgr_subtract_hole(struct amdgpu return 0; } -static drm_private int +static int amdgpu_vamgr_find_va(struct amdgpu_bo_va_mgr *mgr, uint64_t size, uint64_t alignment, uint64_t base_required, bool search_from_top, uint64_t *va_out) Added files: Index: xsrc/external/mit/libdrm/include/generated_static_table_fourcc.h diff -u /dev/null xsrc/external/mit/libdrm/include/generated_static_table_fourcc.h:1.1 --- /dev/null Sun Jul 11 00:41:13 2021 +++ xsrc/external/mit/libdrm/include/generated_static_table_fourcc.h Sun Jul 11 00:41:13 2021 @@ -0,0 +1,48 @@ +/* AUTOMATICALLY GENERATED by gen_table_fourcc.py. You should modify + that script instead of adding here entries manually! */ +static const struct drmFormatModifierInfo drm_format_modifier_table[] = { +{ DRM_MODIFIER_INVALID(NONE, INVALID_MODIFIER) }, +{ DRM_MODIFIER_LINEAR(NONE, LINEAR) }, +{ DRM_MODIFIER_INTEL(X_TILED, X_TILED) }, +{ DRM_MODIFIER_INTEL(Y_TILED, Y_TILED) }, +{ DRM_MODIFIER_INTEL(Yf_TILED, Yf_TILED) }, +{ DRM_MODIFIER_INTEL(Y_TILED_CCS, Y_TILED_CCS) }, +{ DRM_MODIFIER_INTEL(Yf_TILED_CCS, Yf_TILED_CCS) }, +{ DRM_MODIFIER_INTEL(Y_TILED_GEN12_RC_CCS, Y_TILED_GEN12_RC_CCS) }, +{ DRM_MODIFIER_INTEL(Y_TILED_GEN12_MC_CCS, Y_TILED_GEN12_MC_CCS) }, +{ DRM_MODIFIER(SAMSUNG, 64_32_TILE, 64_32_TILE) }, +{ DRM_MODIFIER(SAMSUNG, 16_16_TILE, 16_16_TILE) }, +{ DRM_MODIFIER(QCOM, COMPRESSED, COMPRESSED) }, +{ DRM_MODIFIER(VIVANTE, TILED, TILED) }, +{ DRM_MODIFIER(VIVANTE, SUPER_TILED, SUPER_TILED) }, +{ DRM_MODIFIER(VIVANTE, SPLIT_TILED, SPLIT_TILED) }, +{ DRM_MODIFIER(VIVANTE, SPLIT_SUPER_TILED, SPLIT_SUPER_TILED) }, +{ DRM_MODIFIER(NVIDIA, TEGRA_TILED, TEGRA_TILED) }, +{ DRM_MODIFIER(NVIDIA, 16BX2_BLOCK_ONE_GOB, 16BX2_BLOCK_ONE_GOB) }, +{ DRM_MODIFIER(NVIDIA, 16BX2_BLOCK_TWO_GOB, 16BX2_BLOCK_TWO_GOB) }, +{ DRM_MODIFIER(NVIDIA, 16BX2_BLOCK_FOUR_GOB, 16BX2_BLOCK_FOUR_GOB) }, +{ DRM_MODIFIER(NVIDIA, 16BX2_BLOCK_EIGHT_GOB, 16BX2_BLOCK_EIGHT_GOB) }, +{ DRM_MODIFIER(NVIDIA, 16BX2_BLOCK_SIXTEEN_GOB, 16BX2_BLOCK_SIXTEEN_GOB) }, +{ DRM_MODIFIER(NVIDIA, 16BX2_BLOCK_THIRTYTWO_GOB, 16BX2_BLOCK_THIRTYTWO_GOB) }, +{ DRM_MODIFIER(BROADCOM, VC4_T_TILED, VC4_T_TILED) }, +{ DRM_MODIFIER(BROADCOM, SAND32, SAND32) }, +{ DRM_MODIFIER(BROADCOM, SAND64, SAND64) }, +{ DRM_MODIFIER(BROADCOM, SAND128, SAND128) }, +{ DRM_MODIFIER(BROADCOM, SAND256, SAND256) }, +{ DRM_MODIFIER(BROADCOM, UIF, UIF) }, +{ DRM_MODIFIER(ARM, 16X16_BLOCK_U_INTERLEAVED, 16X16_BLOCK_U_INTERLEAVED) }, +{ DRM_MODIFIER(ALLWINNER, TILED, TILED) }, +}; +static const struct drmFormatModifierVendorInfo drm_format_modifier_vendor_table[] = { +{ DRM_FORMAT_MOD_VENDOR_NONE, "NONE" }, +{ DRM_FORMAT_MOD_VENDOR_INTEL, "INTEL" }, +{ DRM_FORMAT_MOD_VENDOR_AMD, "AMD" }, +{ DRM_FORMAT_MOD_VENDOR_NVIDIA, "NVIDIA" }, +{ DRM_FORMAT_MOD_VENDOR_SAMSUNG, "SAMSUNG" }, +{ DRM_FORMAT_MOD_VENDOR_QCOM, "QCOM" }, +{ DRM_FORMAT_MOD_VENDOR_VIVANTE, "VIVANTE" }, +{ DRM_FORMAT_MOD_VENDOR_BROADCOM, "BROADCOM" }, +{ DRM_FORMAT_MOD_VENDOR_ARM, "ARM" }, +{ DRM_FORMAT_MOD_VENDOR_ALLWINNER, "ALLWINNER" }, +{ DRM_FORMAT_MOD_VENDOR_AMLOGIC, "AMLOGIC" }, +};
CVS commit: xsrc/external/mit/libdrm/dist
Module Name:xsrc Committed By: mrg Date: Tue Apr 27 03:02:37 UTC 2021 Modified Files: xsrc/external/mit/libdrm/dist: xf86drm.c xf86drm.h xf86drmMode.c xf86drmMode.h xsrc/external/mit/libdrm/dist/intel: intel_bufmgr_gem.c xsrc/external/mit/libdrm/dist/tests/modetest: modetest.c Removed Files: xsrc/external/mit/libdrm/dist/man: drm-kms.xml drm-memory.xml drm.xml drmAvailable.xml drmHandleEvent.xml drmModeGetResources.xml Log Message: merge libdrm 2.4.105. To generate a diff of this commit: cvs rdiff -u -r1.27 -r1.28 xsrc/external/mit/libdrm/dist/xf86drm.c cvs rdiff -u -r1.12 -r1.13 xsrc/external/mit/libdrm/dist/xf86drm.h cvs rdiff -u -r1.16 -r1.17 xsrc/external/mit/libdrm/dist/xf86drmMode.c cvs rdiff -u -r1.10 -r1.11 xsrc/external/mit/libdrm/dist/xf86drmMode.h cvs rdiff -u -r1.19 -r1.20 \ xsrc/external/mit/libdrm/dist/intel/intel_bufmgr_gem.c cvs rdiff -u -r1.1.1.3 -r0 xsrc/external/mit/libdrm/dist/man/drm-kms.xml \ xsrc/external/mit/libdrm/dist/man/drm.xml cvs rdiff -u -r1.1.1.2 -r0 xsrc/external/mit/libdrm/dist/man/drm-memory.xml \ xsrc/external/mit/libdrm/dist/man/drmAvailable.xml \ xsrc/external/mit/libdrm/dist/man/drmHandleEvent.xml \ xsrc/external/mit/libdrm/dist/man/drmModeGetResources.xml cvs rdiff -u -r1.14 -r1.15 \ xsrc/external/mit/libdrm/dist/tests/modetest/modetest.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/libdrm/dist/xf86drm.c diff -u xsrc/external/mit/libdrm/dist/xf86drm.c:1.27 xsrc/external/mit/libdrm/dist/xf86drm.c:1.28 --- xsrc/external/mit/libdrm/dist/xf86drm.c:1.27 Sun Nov 1 10:01:30 2020 +++ xsrc/external/mit/libdrm/dist/xf86drm.c Tue Apr 27 03:02:37 2021 @@ -128,6 +128,22 @@ static drmServerInfoPtr drm_server_info; static bool drmNodeIsDRM(int maj, int min); static char *drmGetMinorNameForFD(int fd, int type); +static unsigned log2_int(unsigned x) +{ +unsigned l; + +if (x < 2) { +return 0; +} +for (l = 2; ; l++) { +if ((unsigned)(1 << l) > x) { +return l - 1; +} +} +return 0; +} + + drm_public void drmSetServerInfo(drmServerInfoPtr info) { drm_server_info = info; @@ -700,7 +716,7 @@ static int drmOpenByName(const char *nam int retcode; sprintf(proc_name, "/proc/dri/%d/name", i); -if ((fd = open(proc_name, 0, 0)) >= 0) { +if ((fd = open(proc_name, O_RDONLY, 0)) >= 0) { retcode = read(fd, buf, sizeof(buf)-1); close(fd); if (retcode) { @@ -1339,7 +1355,12 @@ drm_public drmBufInfoPtr drmGetBufInfo(i retval = drmMalloc(sizeof(*retval)); retval->count = info.count; -retval->list = drmMalloc(info.count * sizeof(*retval->list)); +if (!(retval->list = drmMalloc(info.count * sizeof(*retval->list { +drmFree(retval); +drmFree(info.list); +return NULL; +} + for (i = 0; i < info.count; i++) { retval->list[i].count = info.list[i].count; retval->list[i].size = info.list[i].size; @@ -2826,7 +2847,7 @@ static bool drmNodeIsDRM(int maj, int mi snprintf(path, sizeof(path), "/sys/dev/char/%d:%d/device/drm", maj, min); return stat(path, ) == 0; -#elif __FreeBSD__ +#elif defined(__FreeBSD__) char name[SPECNAMELEN]; if (!devname_r(makedev(maj, min), S_IFCHR, name, sizeof(name))) @@ -2939,7 +2960,7 @@ static char *drmGetMinorNameForFD(int fd closedir(sysdir); return NULL; -#elif __FreeBSD__ +#elif defined(__FreeBSD__) struct stat sbuf; char dname[SPECNAMELEN]; const char *mname; @@ -3384,7 +3405,7 @@ static int drmParsePciBusInfo(int maj, i info->func = pinfo.func; return 0; -#elif __FreeBSD__ +#elif defined(__FreeBSD__) return get_sysctl_pci_bus_info(maj, min, info); #else #warning "Missing implementation of drmParsePciBusInfo" @@ -3595,7 +3616,7 @@ out: device->subdevice_id = pinfo.subdevice_id; return 0; -#elif __FreeBSD__ +#elif defined(__FreeBSD__) drmPciBusInfo info; struct pci_conf_io pc; struct pci_match_conf patterns[1]; @@ -4172,7 +4193,7 @@ static void drmFoldDuplicatedDevices(drm for (j = i + 1; j < count; j++) { if (drmDevicesEqual(local_devices[i], local_devices[j])) { local_devices[i]->available_nodes |= local_devices[j]->available_nodes; -node_type = log2(local_devices[j]->available_nodes); +node_type = log2_int(local_devices[j]->available_nodes); memcpy(local_devices[i]->nodes[node_type], local_devices[j]->nodes[node_type], drmGetMaxNodeName()); drmFreeDevice(_devices[j]); @@ -4427,6 +4448,10 @@ drm_public int drmGetDevices2(uint32_t f }
CVS commit: xsrc/external/mit/libdrm/dist
Module Name:xsrc Committed By: mrg Date: Sat Nov 7 21:20:46 UTC 2020 Added Files: xsrc/external/mit/libdrm/dist: configure Log Message: add minimal 'configure' script that finds the versions, and doesn't end up with an empty version in the .pc file. pointed out by Michael Scholz in private email. To generate a diff of this commit: cvs rdiff -u -r0 -r1.3 xsrc/external/mit/libdrm/dist/configure Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Added files: Index: xsrc/external/mit/libdrm/dist/configure diff -u /dev/null xsrc/external/mit/libdrm/dist/configure:1.3 --- /dev/null Sat Nov 7 21:20:46 2020 +++ xsrc/external/mit/libdrm/dist/configure Sat Nov 7 21:20:46 2020 @@ -0,0 +1,8 @@ +# XXX hack for netbsd pkgconfig processing. + +# Identity of this package. +PACKAGE_NAME='libdrm' +PACKAGE_TARNAME='libdrm' +PACKAGE_VERSION='2.4.102' +PACKAGE_STRING='libdrm 2.4.102' +PACKAGE_URL=''
CVS commit: xsrc/external/mit/libdrm/dist
Module Name:xsrc Committed By: mrg Date: Sun Nov 1 10:01:30 UTC 2020 Modified Files: xsrc/external/mit/libdrm/dist: util_math.h xf86drm.c Log Message: fix build cornflakes from libdrm 2.4.102. To generate a diff of this commit: cvs rdiff -u -r1.2 -r1.3 xsrc/external/mit/libdrm/dist/util_math.h cvs rdiff -u -r1.26 -r1.27 xsrc/external/mit/libdrm/dist/xf86drm.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/libdrm/dist/util_math.h diff -u xsrc/external/mit/libdrm/dist/util_math.h:1.2 xsrc/external/mit/libdrm/dist/util_math.h:1.3 --- xsrc/external/mit/libdrm/dist/util_math.h:1.2 Sun Jan 21 21:49:51 2018 +++ xsrc/external/mit/libdrm/dist/util_math.h Sun Nov 1 10:01:30 2020 @@ -29,6 +29,7 @@ #define MAX3( A, B, C ) ((A) > (B) ? MAX2(A, C) : MAX2(B, C)) #define __align_mask(value, mask) (((value) + (mask)) & ~(mask)) +#undef ALIGN #define ALIGN(value, alignment)__align_mask(value, (__typeof__(value))((alignment) - 1)) #endif /*_UTIL_MATH_H_*/ Index: xsrc/external/mit/libdrm/dist/xf86drm.c diff -u xsrc/external/mit/libdrm/dist/xf86drm.c:1.26 xsrc/external/mit/libdrm/dist/xf86drm.c:1.27 --- xsrc/external/mit/libdrm/dist/xf86drm.c:1.26 Sun Nov 1 09:57:37 2020 +++ xsrc/external/mit/libdrm/dist/xf86drm.c Sun Nov 1 10:01:30 2020 @@ -3132,7 +3132,7 @@ static int drmParseSubsystemType(int maj int ret; /* Get the type of device we're looking for to pick the right pathname. */ -type = drmGetMinorType(min); +type = drmGetMinorType(maj, min); if (type == -1) return -ENODEV; @@ -3302,7 +3302,7 @@ static int drmParsePciBusInfo(int maj, i int ret; /* Get the type of device we're looking for to pick the right pathname. */ -type = drmGetMinorType(min); +type = drmGetMinorType(maj, min); if (type == -1) return -ENODEV;
CVS commit: xsrc/external/mit/libdrm/dist
Module Name:xsrc Committed By: mrg Date: Sun Nov 1 09:57:41 UTC 2020 Modified Files: xsrc/external/mit/libdrm/dist: xf86atomic.h xf86drm.c xf86drm.h xf86drmMode.c xf86drmMode.h xsrc/external/mit/libdrm/dist/include/drm: drm.h xsrc/external/mit/libdrm/dist/intel: intel_bufmgr_gem.c xsrc/external/mit/libdrm/dist/tests/modetest: modetest.c Added Files: xsrc/external/mit/libdrm/dist: Android.mk xsrc/external/mit/libdrm/dist/freedreno: Android.mk xsrc/external/mit/libdrm/dist/intel: Android.mk xsrc/external/mit/libdrm/dist/libkms: Android.mk xsrc/external/mit/libdrm/dist/nouveau: Android.mk xsrc/external/mit/libdrm/dist/radeon: Android.mk xsrc/external/mit/libdrm/dist/tests/modetest: Android.mk Removed Files: xsrc/external/mit/libdrm/dist: Makefile.am Makefile.in aclocal.m4 config.h.in configure configure.ac xsrc/external/mit/libdrm/dist/amdgpu: Makefile.am Makefile.in amdgpu-symbol-check xsrc/external/mit/libdrm/dist/build-aux: compile config.guess config.sub depcomp install-sh ltmain.sh missing test-driver xsrc/external/mit/libdrm/dist/data: Makefile.am Makefile.in xsrc/external/mit/libdrm/dist/etnaviv: Makefile.am Makefile.in etnaviv-symbol-check xsrc/external/mit/libdrm/dist/exynos: Makefile.am Makefile.in exynos-symbol-check xsrc/external/mit/libdrm/dist/freedreno: Makefile.am Makefile.in freedreno-symbol-check xsrc/external/mit/libdrm/dist/intel: Makefile.am Makefile.in intel-symbol-check xsrc/external/mit/libdrm/dist/intel/tests: gen4-3d.batch.sh gen5-3d.batch.sh gen6-3d.batch.sh gen7-2d-copy.batch.sh gen7-3d.batch.sh gm45-3d.batch.sh xsrc/external/mit/libdrm/dist/libkms: Makefile.am Makefile.in kms-symbol-check xsrc/external/mit/libdrm/dist/m4: libtool.m4 ltoptions.m4 ltsugar.m4 ltversion.m4 lt~obsolete.m4 xsrc/external/mit/libdrm/dist/man: Makefile.am Makefile.in xsrc/external/mit/libdrm/dist/nouveau: Makefile.am Makefile.in nouveau-symbol-check xsrc/external/mit/libdrm/dist/omap: Makefile.am Makefile.in omap-symbol-check xsrc/external/mit/libdrm/dist/radeon: Makefile.am Makefile.in radeon-symbol-check xsrc/external/mit/libdrm/dist/tegra: Makefile.am Makefile.in tegra-symbol-check xsrc/external/mit/libdrm/dist/tests: Makefile.am Makefile.in random.c xsrc/external/mit/libdrm/dist/tests/amdgpu: Makefile.am Makefile.in xsrc/external/mit/libdrm/dist/tests/etnaviv: Makefile.am Makefile.in xsrc/external/mit/libdrm/dist/tests/exynos: Makefile.am Makefile.in xsrc/external/mit/libdrm/dist/tests/kms: Makefile.am Makefile.in xsrc/external/mit/libdrm/dist/tests/kmstest: Makefile.am Makefile.in xsrc/external/mit/libdrm/dist/tests/modeprint: Makefile.am Makefile.in xsrc/external/mit/libdrm/dist/tests/modetest: Makefile.am Makefile.in xsrc/external/mit/libdrm/dist/tests/nouveau: Makefile.am Makefile.in xsrc/external/mit/libdrm/dist/tests/proptest: Makefile.am Makefile.in xsrc/external/mit/libdrm/dist/tests/radeon: Makefile.am Makefile.in xsrc/external/mit/libdrm/dist/tests/tegra: Makefile.am Makefile.in xsrc/external/mit/libdrm/dist/tests/util: Makefile.am Makefile.in xsrc/external/mit/libdrm/dist/tests/vbltest: Makefile.am Makefile.in xsrc/external/mit/libdrm/dist/vc4: Makefile.am Makefile.in Log Message: merge libdrm 2.4.102. To generate a diff of this commit: cvs rdiff -u -r0 -r1.3 xsrc/external/mit/libdrm/dist/Android.mk cvs rdiff -u -r1.1.1.12 -r0 xsrc/external/mit/libdrm/dist/Makefile.am cvs rdiff -u -r1.1.1.15 -r0 xsrc/external/mit/libdrm/dist/Makefile.in cvs rdiff -u -r1.1.1.16 -r0 xsrc/external/mit/libdrm/dist/aclocal.m4 cvs rdiff -u -r1.1.1.10 -r0 xsrc/external/mit/libdrm/dist/config.h.in cvs rdiff -u -r1.1.1.19 -r0 xsrc/external/mit/libdrm/dist/configure \ xsrc/external/mit/libdrm/dist/configure.ac cvs rdiff -u -r1.13 -r1.14 xsrc/external/mit/libdrm/dist/xf86atomic.h cvs rdiff -u -r1.25 -r1.26 xsrc/external/mit/libdrm/dist/xf86drm.c cvs rdiff -u -r1.11 -r1.12 xsrc/external/mit/libdrm/dist/xf86drm.h cvs rdiff -u -r1.15 -r1.16 xsrc/external/mit/libdrm/dist/xf86drmMode.c cvs rdiff -u -r1.9 -r1.10 xsrc/external/mit/libdrm/dist/xf86drmMode.h cvs rdiff -u -r1.1.1.4 -r0 xsrc/external/mit/libdrm/dist/amdgpu/Makefile.am cvs rdiff -u -r1.1.1.6 -r0 xsrc/external/mit/libdrm/dist/amdgpu/Makefile.in cvs rdiff -u -r1.1.1.8 -r0 \ xsrc/external/mit/libdrm/dist/amdgpu/amdgpu-symbol-check cvs rdiff -u -r1.1.1.5 -r0 xsrc/external/mit/libdrm/dist/build-aux/compile \ xsrc/external/mit/libdrm/dist/build-aux/depcomp \ xsrc/external/mit/libdrm/dist/build-aux/ltmain.sh cvs
CVS commit: xsrc/external/mit/libdrm/dist
Module Name:xsrc Committed By: mrg Date: Sun Feb 23 09:59:00 UTC 2020 Modified Files: xsrc/external/mit/libdrm/dist: xf86drm.c xf86drm.h Log Message: merge libdrm 2.4.100 and libpciaccess 0.16. To generate a diff of this commit: cvs rdiff -u -r1.24 -r1.25 xsrc/external/mit/libdrm/dist/xf86drm.c cvs rdiff -u -r1.10 -r1.11 xsrc/external/mit/libdrm/dist/xf86drm.h 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/libdrm/dist/xf86drm.c diff -u xsrc/external/mit/libdrm/dist/xf86drm.c:1.24 xsrc/external/mit/libdrm/dist/xf86drm.c:1.25 --- xsrc/external/mit/libdrm/dist/xf86drm.c:1.24 Mon Jul 15 05:42:34 2019 +++ xsrc/external/mit/libdrm/dist/xf86drm.c Sun Feb 23 09:59:00 2020 @@ -71,16 +71,6 @@ #include "util_math.h" -#ifdef __OpenBSD__ -#define DRM_PRIMARY_MINOR_NAME "drm" -#define DRM_CONTROL_MINOR_NAME "drmC" -#define DRM_RENDER_MINOR_NAME "drmR" -#else -#define DRM_PRIMARY_MINOR_NAME "card" -#define DRM_CONTROL_MINOR_NAME "controlD" -#define DRM_RENDER_MINOR_NAME "renderD" -#endif - #if defined(__FreeBSD__) || defined(__FreeBSD_kernel__) || defined(__DragonFly__) #define DRM_MAJOR 145 #endif @@ -314,6 +304,19 @@ static int chown_check_return(const char } #endif +static const char *drmGetDeviceName(int type) +{ +switch (type) { +case DRM_NODE_PRIMARY: +return DRM_DEV_NAME; +case DRM_NODE_CONTROL: +return DRM_CONTROL_DEV_NAME; +case DRM_NODE_RENDER: +return DRM_RENDER_DEV_NAME; +} +return NULL; +} + /** * Open the DRM device, creating it if necessary. * @@ -330,8 +333,8 @@ static int chown_check_return(const char static int drmOpenDevice(dev_t dev, int minor, int type) { stat_t st; -const char *dev_name; -charbuf[64]; +const char *dev_name = drmGetDeviceName(type); +charbuf[DRM_NODE_NAME_MAX]; int fd; mode_t devmode = DRM_DEV_MODE, serv_mode; gid_t serv_group; @@ -341,19 +344,8 @@ static int drmOpenDevice(dev_t dev, int gid_t group = DRM_DEV_GID; #endif -switch (type) { -case DRM_NODE_PRIMARY: -dev_name = DRM_DEV_NAME; -break; -case DRM_NODE_CONTROL: -dev_name = DRM_CONTROL_DEV_NAME; -break; -case DRM_NODE_RENDER: -dev_name = DRM_RENDER_DEV_NAME; -break; -default: +if (!dev_name) return -EINVAL; -}; sprintf(buf, dev_name, DRM_DIR_NAME, minor); drmMsg("drmOpenDevice: node name is %s\n", buf); @@ -459,25 +451,14 @@ wait_for_udev: static int drmOpenMinor(int minor, int create, int type) { int fd; -char buf[64]; -const char *dev_name; +char buf[DRM_NODE_NAME_MAX]; +const char *dev_name = drmGetDeviceName(type); if (create) return drmOpenDevice(makedev(DRM_MAJOR, minor), minor, type); -switch (type) { -case DRM_NODE_PRIMARY: -dev_name = DRM_DEV_NAME; -break; -case DRM_NODE_CONTROL: -dev_name = DRM_CONTROL_DEV_NAME; -break; -case DRM_NODE_RENDER: -dev_name = DRM_RENDER_DEV_NAME; -break; -default: +if (!dev_name) return -EINVAL; -}; sprintf(buf, dev_name, DRM_DIR_NAME, minor); if ((fd = open(buf, O_RDWR | O_CLOEXEC, 0)) >= 0) @@ -2906,9 +2887,9 @@ static char *drmGetMinorNameForFD(int fd #else struct stat sbuf; char buf[PATH_MAX + 1]; -const char *dev_name; +const char *dev_name = drmGetDeviceName(type); unsigned int maj, min; -int n, base; +int n; if (fstat(fd, )) return NULL; @@ -2919,25 +2900,10 @@ static char *drmGetMinorNameForFD(int fd if (!drmNodeIsDRM(maj, min) || !S_ISCHR(sbuf.st_mode)) return NULL; -switch (type) { -case DRM_NODE_PRIMARY: -dev_name = DRM_DEV_NAME; -break; -case DRM_NODE_CONTROL: -dev_name = DRM_CONTROL_DEV_NAME; -break; -case DRM_NODE_RENDER: -dev_name = DRM_RENDER_DEV_NAME; -break; -default: -return NULL; -}; - -base = drmGetMinorBase(type); -if (base < 0) +if (!dev_name) return NULL; -n = snprintf(buf, sizeof(buf), dev_name, DRM_DIR_NAME, min - base); +n = snprintf(buf, sizeof(buf), dev_name, DRM_DIR_NAME, min); if (n == -1 || n >= sizeof(buf)) return NULL; @@ -3271,10 +3237,6 @@ drm_public int drmDevicesEqual(drmDevice static int drmGetNodeType(const char *name) { -if (strncmp(name, DRM_PRIMARY_MINOR_NAME, -sizeof(DRM_PRIMARY_MINOR_NAME) - 1) == 0) -return DRM_NODE_PRIMARY; - if (strncmp(name, DRM_CONTROL_MINOR_NAME, sizeof(DRM_CONTROL_MINOR_NAME ) - 1) == 0) return DRM_NODE_CONTROL; @@ -3283,6 +3245,10 @@ static int drmGetNodeType(const char *na sizeof(DRM_RENDER_MINOR_NAME) - 1) ==
CVS commit: xsrc/external/mit/libdrm/dist
Module Name:xsrc Committed By: tnn Date: Sat Jan 19 11:50:05 UTC 2019 Modified Files: xsrc/external/mit/libdrm/dist/intel: intel_bufmgr_gem.c xsrc/external/mit/libdrm/dist/radeon: radeon_bo_gem.c Log Message: reduce diff to upstream To generate a diff of this commit: cvs rdiff -u -r1.16 -r1.17 \ xsrc/external/mit/libdrm/dist/intel/intel_bufmgr_gem.c cvs rdiff -u -r1.8 -r1.9 xsrc/external/mit/libdrm/dist/radeon/radeon_bo_gem.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/libdrm/dist/intel/intel_bufmgr_gem.c diff -u xsrc/external/mit/libdrm/dist/intel/intel_bufmgr_gem.c:1.16 xsrc/external/mit/libdrm/dist/intel/intel_bufmgr_gem.c:1.17 --- xsrc/external/mit/libdrm/dist/intel/intel_bufmgr_gem.c:1.16 Thu Jan 10 08:59:43 2019 +++ xsrc/external/mit/libdrm/dist/intel/intel_bufmgr_gem.c Sat Jan 19 11:50:05 2019 @@ -1539,10 +1539,12 @@ map_gtt(drm_intel_bo *bo) } /* and mmap it */ - ret = drmMap(bufmgr_gem->fd, mmap_arg.offset, bo->size, - _gem->gtt_virtual); - if (ret) { + bo_gem->gtt_virtual = drm_mmap(0, bo->size, PROT_READ | PROT_WRITE, + MAP_SHARED, bufmgr_gem->fd, + mmap_arg.offset); + if (bo_gem->gtt_virtual == MAP_FAILED) { bo_gem->gtt_virtual = NULL; + ret = -errno; DBG("%s:%d: Error mapping buffer %d (%s): %s .\n", __FILE__, __LINE__, bo_gem->gem_handle, bo_gem->name, Index: xsrc/external/mit/libdrm/dist/radeon/radeon_bo_gem.c diff -u xsrc/external/mit/libdrm/dist/radeon/radeon_bo_gem.c:1.8 xsrc/external/mit/libdrm/dist/radeon/radeon_bo_gem.c:1.9 --- xsrc/external/mit/libdrm/dist/radeon/radeon_bo_gem.c:1.8 Thu Jan 10 08:59:43 2019 +++ xsrc/external/mit/libdrm/dist/radeon/radeon_bo_gem.c Sat Jan 19 11:50:05 2019 @@ -175,8 +175,8 @@ static int bo_map(struct radeon_bo_int * boi, boi->handle, r); return r; } -r = drmMap(boi->bom->fd, args.addr_ptr, args.size, ); -if (r) +ptr = drm_mmap(0, args.size, PROT_READ|PROT_WRITE, MAP_SHARED, boi->bom->fd, args.addr_ptr); +if (ptr == MAP_FAILED) return -errno; bo_gem->priv_ptr = ptr; wait:
CVS commit: xsrc/external/mit/libdrm/dist/amdgpu
Module Name:xsrc Committed By: christos Date: Fri Jan 11 02:34:53 UTC 2019 Modified Files: xsrc/external/mit/libdrm/dist/amdgpu: amdgpu_bo.c Log Message: fix compilation To generate a diff of this commit: cvs rdiff -u -r1.1.1.3 -r1.2 xsrc/external/mit/libdrm/dist/amdgpu/amdgpu_bo.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/libdrm/dist/amdgpu/amdgpu_bo.c diff -u xsrc/external/mit/libdrm/dist/amdgpu/amdgpu_bo.c:1.1.1.3 xsrc/external/mit/libdrm/dist/amdgpu/amdgpu_bo.c:1.2 --- xsrc/external/mit/libdrm/dist/amdgpu/amdgpu_bo.c:1.1.1.3 Thu Jan 10 03:49:54 2019 +++ xsrc/external/mit/libdrm/dist/amdgpu/amdgpu_bo.c Thu Jan 10 21:34:53 2019 @@ -567,7 +567,7 @@ drm_public int amdgpu_find_bo_by_cpu_map if (!bo || !bo->cpu_ptr || size > bo->alloc_size) continue; if (cpu >= bo->cpu_ptr && - cpu < (void*)((uintptr_t)bo->cpu_ptr + bo->alloc_size)) + cpu < (void*)((char *)bo->cpu_ptr + bo->alloc_size)) break; }
CVS commit: xsrc/external/mit/libdrm/dist/amdgpu
Module Name:xsrc Committed By: mrg Date: Thu Jan 10 09:13:52 UTC 2019 Modified Files: xsrc/external/mit/libdrm/dist/amdgpu: amdgpu_vamgr.c Log Message: don't mark a static function with default visibility. (avoids warnings.) To generate a diff of this commit: cvs rdiff -u -r1.1.1.4 -r1.2 \ xsrc/external/mit/libdrm/dist/amdgpu/amdgpu_vamgr.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/libdrm/dist/amdgpu/amdgpu_vamgr.c diff -u xsrc/external/mit/libdrm/dist/amdgpu/amdgpu_vamgr.c:1.1.1.4 xsrc/external/mit/libdrm/dist/amdgpu/amdgpu_vamgr.c:1.2 --- xsrc/external/mit/libdrm/dist/amdgpu/amdgpu_vamgr.c:1.1.1.4 Thu Jan 10 08:49:54 2019 +++ xsrc/external/mit/libdrm/dist/amdgpu/amdgpu_vamgr.c Thu Jan 10 09:13:52 2019 @@ -69,7 +69,7 @@ drm_private void amdgpu_vamgr_deinit(str pthread_mutex_destroy(>bo_va_mutex); } -static drm_private uint64_t +static uint64_t amdgpu_vamgr_find_va(struct amdgpu_bo_va_mgr *mgr, uint64_t size, uint64_t alignment, uint64_t base_required) { @@ -130,7 +130,7 @@ amdgpu_vamgr_find_va(struct amdgpu_bo_va return AMDGPU_INVALID_VA_ADDRESS; } -static drm_private void +static void amdgpu_vamgr_free_va(struct amdgpu_bo_va_mgr *mgr, uint64_t va, uint64_t size) { struct amdgpu_bo_va_hole *hole, *next;
CVS commit: xsrc/external/mit/libdrm/dist
Module Name:xsrc Committed By: mrg Date: Thu Jan 10 08:59:43 UTC 2019 Modified Files: xsrc/external/mit/libdrm/dist: xf86atomic.h xf86drm.c xf86drmMode.c xsrc/external/mit/libdrm/dist/include/drm: drm.h i915_drm.h xsrc/external/mit/libdrm/dist/intel: intel_bufmgr_gem.c xsrc/external/mit/libdrm/dist/radeon: radeon_bo_gem.c radeon_cs_gem.c radeon_surface.c xsrc/external/mit/libdrm/dist/tests/modetest: modetest.c Removed Files: xsrc/external/mit/libdrm/dist/amdgpu: util_hash.c util_hash.h util_hash_table.c util_hash_table.h xsrc/external/mit/libdrm/dist/freedreno/msm: msm_drm.h Log Message: merge libdrm 2.4.96. To generate a diff of this commit: cvs rdiff -u -r1.10 -r1.11 xsrc/external/mit/libdrm/dist/xf86atomic.h cvs rdiff -u -r1.21 -r1.22 xsrc/external/mit/libdrm/dist/xf86drm.c cvs rdiff -u -r1.13 -r1.14 xsrc/external/mit/libdrm/dist/xf86drmMode.c cvs rdiff -u -r1.1.1.1 -r0 xsrc/external/mit/libdrm/dist/amdgpu/util_hash.c \ xsrc/external/mit/libdrm/dist/amdgpu/util_hash.h \ xsrc/external/mit/libdrm/dist/amdgpu/util_hash_table.c \ xsrc/external/mit/libdrm/dist/amdgpu/util_hash_table.h cvs rdiff -u -r1.1.1.6 -r0 \ xsrc/external/mit/libdrm/dist/freedreno/msm/msm_drm.h cvs rdiff -u -r1.10 -r1.11 xsrc/external/mit/libdrm/dist/include/drm/drm.h cvs rdiff -u -r1.5 -r1.6 xsrc/external/mit/libdrm/dist/include/drm/i915_drm.h cvs rdiff -u -r1.15 -r1.16 \ xsrc/external/mit/libdrm/dist/intel/intel_bufmgr_gem.c cvs rdiff -u -r1.7 -r1.8 xsrc/external/mit/libdrm/dist/radeon/radeon_bo_gem.c \ xsrc/external/mit/libdrm/dist/radeon/radeon_cs_gem.c cvs rdiff -u -r1.10 -r1.11 \ xsrc/external/mit/libdrm/dist/radeon/radeon_surface.c cvs rdiff -u -r1.11 -r1.12 \ xsrc/external/mit/libdrm/dist/tests/modetest/modetest.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/libdrm/dist/xf86atomic.h diff -u xsrc/external/mit/libdrm/dist/xf86atomic.h:1.10 xsrc/external/mit/libdrm/dist/xf86atomic.h:1.11 --- xsrc/external/mit/libdrm/dist/xf86atomic.h:1.10 Wed Mar 14 07:19:26 2018 +++ xsrc/external/mit/libdrm/dist/xf86atomic.h Thu Jan 10 08:59:43 2019 @@ -34,10 +34,6 @@ #ifndef LIBDRM_ATOMICS_H #define LIBDRM_ATOMICS_H -#ifdef HAVE_CONFIG_H -#include "config.h" -#endif - #if HAVE_LIBDRM_ATOMIC_PRIMITIVES #define HAS_ATOMIC_OPS 1 Index: xsrc/external/mit/libdrm/dist/xf86drm.c diff -u xsrc/external/mit/libdrm/dist/xf86drm.c:1.21 xsrc/external/mit/libdrm/dist/xf86drm.c:1.22 --- xsrc/external/mit/libdrm/dist/xf86drm.c:1.21 Fri Sep 21 18:33:08 2018 +++ xsrc/external/mit/libdrm/dist/xf86drm.c Thu Jan 10 08:59:43 2019 @@ -31,9 +31,6 @@ * DEALINGS IN THE SOFTWARE. */ -#ifdef HAVE_CONFIG_H -# include -#endif #include #include #include @@ -128,7 +125,7 @@ struct drm_pciinfo { static drmServerInfoPtr drm_server_info; -void drmSetServerInfo(drmServerInfoPtr info) +drm_public void drmSetServerInfo(drmServerInfoPtr info) { drm_server_info = info; } @@ -148,7 +145,7 @@ drmDebugPrint(const char *format, va_lis return vfprintf(stderr, format, ap); } -void +drm_public void drmMsg(const char *format, ...) { va_list ap; @@ -168,17 +165,17 @@ drmMsg(const char *format, ...) static void *drmHashTable = NULL; /* Context switch callbacks */ -void *drmGetHashTable(void) +drm_public void *drmGetHashTable(void) { return drmHashTable; } -void *drmMalloc(int size) +drm_public void *drmMalloc(int size) { return calloc(1, size); } -void drmFree(void *pt) +drm_public void drmFree(void *pt) { free(pt); } @@ -186,7 +183,7 @@ void drmFree(void *pt) /** * Call ioctl, restarting if it is interupted */ -int +drm_public int drmIoctl(int fd, unsigned long request, void *arg) { int ret; @@ -206,7 +203,7 @@ static unsigned long drmGetKeyFromFd(int return st.st_rdev; } -drmHashEntry *drmGetEntry(int fd) +drm_public drmHashEntry *drmGetEntry(int fd) { unsigned long key = drmGetKeyFromFd(fd); void *value; @@ -297,7 +294,7 @@ static int drmMatchBusID(const char *id1 * If any other failure happened then it will output error mesage using * drmMsg() call. */ -#if !defined(UDEV) +#if !UDEV static int chown_check_return(const char *path, uid_t owner, gid_t group) { int rv; @@ -336,7 +333,7 @@ static int drmOpenDevice(dev_t dev, int int fd; mode_t devmode = DRM_DEV_MODE, serv_mode; gid_t serv_group; -#if !defined(UDEV) +#if !UDEV int isroot = !geteuid(); uid_t user= DRM_DEV_UID; gid_t group = DRM_DEV_GID; @@ -365,7 +362,7 @@ static int drmOpenDevice(dev_t dev, int devmode &= ~(S_IXUSR|S_IXGRP|S_IXOTH); } -#if !defined(UDEV) +#if !UDEV if (stat(DRM_DIR_NAME, )) { if (!isroot) return
CVS commit: xsrc/external/mit/libdrm/dist/include/drm
Module Name:xsrc Committed By: christos Date: Sun Dec 2 00:42:04 UTC 2018 Modified Files: xsrc/external/mit/libdrm/dist/include/drm: drm.h Log Message: protect from redefinition To generate a diff of this commit: cvs rdiff -u -r1.9 -r1.10 xsrc/external/mit/libdrm/dist/include/drm/drm.h 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/libdrm/dist/include/drm/drm.h diff -u xsrc/external/mit/libdrm/dist/include/drm/drm.h:1.9 xsrc/external/mit/libdrm/dist/include/drm/drm.h:1.10 --- xsrc/external/mit/libdrm/dist/include/drm/drm.h:1.9 Wed Mar 14 03:19:26 2018 +++ xsrc/external/mit/libdrm/dist/include/drm/drm.h Sat Dec 1 19:42:04 2018 @@ -46,6 +46,8 @@ typedef unsigned int drm_handle_t; #include #include +#ifndef __linux_sized_types__ +#define __linux_sized_types__ typedef int8_t __s8; typedef uint8_t __u8; typedef int16_t __s16; @@ -54,6 +56,7 @@ typedef int32_t __s32; typedef uint32_t __u32; typedef int64_t __s64; typedef uint64_t __u64; +#endif /* __linux_sized_types__ */ typedef size_t __kernel_size_t; typedef unsigned long drm_handle_t;
CVS commit: xsrc/external/mit/libdrm/dist
Module Name:xsrc Committed By: christos Date: Fri Sep 21 18:33:08 UTC 2018 Modified Files: xsrc/external/mit/libdrm/dist: xf86drm.c Log Message: - don't return random values to the caller - don't leak fd's. To generate a diff of this commit: cvs rdiff -u -r1.20 -r1.21 xsrc/external/mit/libdrm/dist/xf86drm.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/libdrm/dist/xf86drm.c diff -u xsrc/external/mit/libdrm/dist/xf86drm.c:1.20 xsrc/external/mit/libdrm/dist/xf86drm.c:1.21 --- xsrc/external/mit/libdrm/dist/xf86drm.c:1.20 Sat Sep 8 23:58:37 2018 +++ xsrc/external/mit/libdrm/dist/xf86drm.c Fri Sep 21 14:33:08 2018 @@ -3347,22 +3347,29 @@ static int drmParsePciDeviceInfo(int maj if ((pcifd = open(fname, O_RDONLY)) == -1) return -errno; +ret = -1; /* Read the id and class pci config registers. */ if (pcibus_conf_read(pcifd, businfo.bus, businfo.dev, businfo.func, PCI_ID_REG, ) == -1) - return -errno; + goto out; if (pcibus_conf_read(pcifd, businfo.bus, businfo.dev, businfo.func, PCI_CLASS_REG, ) == -1) - return -errno; + goto out; if (pcibus_conf_read(pcifd, businfo.bus, businfo.dev, businfo.func, PCI_SUBSYS_ID_REG, ) == -1) - return -errno; + goto out; +ret = 0; device->vendor_id = PCI_VENDOR(id); device->device_id = PCI_PRODUCT(id); device->subvendor_id = PCI_SUBSYS_VENDOR(subsys); device->subdevice_id = PCI_SUBSYS_ID(subsys); device->revision_id = PCI_REVISION(class); +out: +if (ret == -1) + ret = -errno; +close(pcifd); +return ret; #elif defined(__OpenBSD__) struct drm_pciinfo pinfo; int fd, type;
CVS commit: xsrc/external/mit/libdrm/dist
Module Name:xsrc Committed By: maya Date: Sun Sep 9 03:58:37 UTC 2018 Modified Files: xsrc/external/mit/libdrm/dist: xf86drm.c Log Message: include sys/param.h for MIN/MAX, needed when building in pkgsrc tolerate set version failing in another location too. this now works well enough for mesa 18.2.0 to display glxgears followed soon by X crashing and refusing to start again until the machine is rebooted, at least in my case. PR pkg/51795, pkg/51786 To generate a diff of this commit: cvs rdiff -u -r1.19 -r1.20 xsrc/external/mit/libdrm/dist/xf86drm.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/libdrm/dist/xf86drm.c diff -u xsrc/external/mit/libdrm/dist/xf86drm.c:1.19 xsrc/external/mit/libdrm/dist/xf86drm.c:1.20 --- xsrc/external/mit/libdrm/dist/xf86drm.c:1.19 Sun Sep 9 03:24:46 2018 +++ xsrc/external/mit/libdrm/dist/xf86drm.c Sun Sep 9 03:58:37 2018 @@ -89,6 +89,7 @@ #ifdef __NetBSD__ #undef DRM_MAJOR #define DRM_MAJOR 180 +#include #include #include #endif @@ -3128,8 +3129,10 @@ static int drmParsePciBusInfo(int maj, i sv.drm_dd_major = -1; sv.drm_dd_minor = -1; if (drmSetInterfaceVersion(fd, )) { - (void)close(fd); - return -ENODEV; +/* + * We're probably not the master. Hope the master already + * set the version to >=1.1 so that we can get the busid. + */ } }
CVS commit: xsrc/external/mit/libdrm/dist
Module Name:xsrc Committed By: riastradh Date: Sun Sep 9 03:24:46 UTC 2018 Modified Files: xsrc/external/mit/libdrm/dist: xf86drm.c Log Message: Let's get the sense of strncmp correct, shall we? PR pkg/51795 PR kern/51786 XXX pullup-7 XXX pullup-8 To generate a diff of this commit: cvs rdiff -u -r1.18 -r1.19 xsrc/external/mit/libdrm/dist/xf86drm.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/libdrm/dist/xf86drm.c diff -u xsrc/external/mit/libdrm/dist/xf86drm.c:1.18 xsrc/external/mit/libdrm/dist/xf86drm.c:1.19 --- xsrc/external/mit/libdrm/dist/xf86drm.c:1.18 Sun Sep 9 03:05:36 2018 +++ xsrc/external/mit/libdrm/dist/xf86drm.c Sun Sep 9 03:24:46 2018 @@ -3055,7 +3055,7 @@ static int drmParseSubsystemType(int maj /* Find a string we know about; otherwise -EINVAL. */ ret = -EINVAL; -if (strncmp(buf, "pci:", 4) != 0) +if (strncmp(buf, "pci:", 4) == 0) ret = DRM_BUS_PCI; /* We're done with the bus id. */
CVS commit: xsrc/external/mit/libdrm/dist
Module Name:xsrc Committed By: riastradh Date: Sun Sep 9 03:05:37 UTC 2018 Modified Files: xsrc/external/mit/libdrm/dist: xf86drm.c Log Message: Don't make setversion failure fatal -- only master can set it. PR pkg/51795 PR kern/51786 XXX pullup-7 XXX pullup-8 To generate a diff of this commit: cvs rdiff -u -r1.17 -r1.18 xsrc/external/mit/libdrm/dist/xf86drm.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/libdrm/dist/xf86drm.c diff -u xsrc/external/mit/libdrm/dist/xf86drm.c:1.17 xsrc/external/mit/libdrm/dist/xf86drm.c:1.18 --- xsrc/external/mit/libdrm/dist/xf86drm.c:1.17 Sun Sep 9 02:00:29 2018 +++ xsrc/external/mit/libdrm/dist/xf86drm.c Sun Sep 9 03:05:36 2018 @@ -3036,8 +3036,10 @@ static int drmParseSubsystemType(int maj sv.drm_dd_major = -1; sv.drm_dd_minor = -1; if (drmSetInterfaceVersion(fd, )) { - (void)close(fd); - return -ENODEV; + /* + * We're probably not the master. Hope the master already + * set the version to >=1.1 so that we can get the busid. + */ } }
CVS commit: xsrc/external/mit/libdrm/dist
Module Name:xsrc Committed By: riastradh Date: Sun Sep 9 02:00:29 UTC 2018 Modified Files: xsrc/external/mit/libdrm/dist: xf86drm.c Log Message: Implement drmParsePciBusInfo and drmParsePciDeviceInfo. Uses drmGetBusid for bus info, and pciN with libpci for device info. Aims to address PR pkg/51795 without needing the kernel changes suggested in PR kern/51786. Compile-tested only sofar -- should confirm before closing any PRs. (Sorry it took so long for me to find a round tuit!) XXX pullup-7 XXX pullup-8 ...along with src/external/mit/xorg/lib/libdrm/Makefile r1.16 for libpci. To generate a diff of this commit: cvs rdiff -u -r1.16 -r1.17 xsrc/external/mit/libdrm/dist/xf86drm.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/libdrm/dist/xf86drm.c diff -u xsrc/external/mit/libdrm/dist/xf86drm.c:1.16 xsrc/external/mit/libdrm/dist/xf86drm.c:1.17 --- xsrc/external/mit/libdrm/dist/xf86drm.c:1.16 Wed Mar 14 07:19:26 2018 +++ xsrc/external/mit/libdrm/dist/xf86drm.c Sun Sep 9 02:00:29 2018 @@ -89,6 +89,8 @@ #ifdef __NetBSD__ #undef DRM_MAJOR #define DRM_MAJOR 180 +#include +#include #endif #ifdef __OpenBSD__ @@ -3002,6 +3004,63 @@ static int drmParseSubsystemType(int maj return DRM_BUS_HOST1X; return -EINVAL; +#elif defined(__NetBSD__) +int type, fd; +drmSetVersion sv; +char *buf; +unsigned domain, bus, dev; +int func; +int ret; + +/* Get the type of device we're looking for to pick the right pathname. */ +type = drmGetMinorType(min); +if (type == -1) + return -ENODEV; + +/* Open the device. Don't try to create it if it's not there. */ +fd = drmOpenMinor(min, 0, type); +if (fd < 0) + return -errno; + +/* + * Set the interface version to 1.4 or 1.1, which has the effect of + * populating the bus id for us. + */ +sv.drm_di_major = 1; +sv.drm_di_minor = 4; +sv.drm_dd_major = -1; +sv.drm_dd_minor = -1; +if (drmSetInterfaceVersion(fd, )) { + sv.drm_di_major = 1; + sv.drm_di_minor = 1; + sv.drm_dd_major = -1; + sv.drm_dd_minor = -1; + if (drmSetInterfaceVersion(fd, )) { + (void)close(fd); + return -ENODEV; + } +} + +/* Get the bus id. */ +buf = drmGetBusid(fd); + +/* We're done with the device now. */ +(void)close(fd); + +/* If there is no bus id, fail. */ +if (buf == NULL) + return -ENODEV; + +/* Find a string we know about; otherwise -EINVAL. */ +ret = -EINVAL; +if (strncmp(buf, "pci:", 4) != 0) + ret = DRM_BUS_PCI; + +/* We're done with the bus id. */ +free(buf); + +/* Success or not, we're done. */ +return ret; #elif defined(__OpenBSD__) return DRM_BUS_PCI; #else @@ -3035,6 +3094,71 @@ static int drmParsePciBusInfo(int maj, i info->func = func; return 0; +#elif defined(__NetBSD__) +int type, fd; +drmSetVersion sv; +char *buf; +unsigned domain, bus, dev; +int func; +int ret; + +/* Get the type of device we're looking for to pick the right pathname. */ +type = drmGetMinorType(min); +if (type == -1) + return -ENODEV; + +/* Open the device. Don't try to create it if it's not there. */ +fd = drmOpenMinor(min, 0, type); +if (fd < 0) + return -errno; + +/* + * Set the interface version to 1.4 or 1.1, which has the effect of + * populating the bus id for us. + */ +sv.drm_di_major = 1; +sv.drm_di_minor = 4; +sv.drm_dd_major = -1; +sv.drm_dd_minor = -1; +if (drmSetInterfaceVersion(fd, )) { + sv.drm_di_major = 1; + sv.drm_di_minor = 1; + sv.drm_dd_major = -1; + sv.drm_dd_minor = -1; + if (drmSetInterfaceVersion(fd, )) { + (void)close(fd); + return -ENODEV; + } +} + +/* Get the bus id. */ +buf = drmGetBusid(fd); + +/* We're done with the device now. */ +(void)close(fd); + +/* If there is no bus id, fail. */ +if (buf == NULL) + return -ENODEV; + +/* Parse the bus id. */ +ret = sscanf(buf, "pci:%04x:%02x:%02x.%d", , , , ); + +/* We're done with the bus id. */ +free(buf); + +/* If scanf didn't return 4 -- domain, bus, dev, func -- then fail. */ +if (ret != 4) + return -ENODEV; + +/* Populate the results. */ +info->domain = domain; +info->bus = bus; +info->dev = dev; +info->func = func; + +/* Success! */ +return 0; #elif defined(__OpenBSD__) struct drm_pciinfo pinfo; int fd, type; @@ -3199,6 +3323,41 @@ static int drmParsePciDeviceInfo(int maj return parse_config_sysfs_file(maj, min, device); return 0; +#elif defined(__NetBSD__) +drmPciBusInfo businfo; +char fname[PATH_MAX]; +int pcifd; +pcireg_t id, class, subsys; +int ret; + +/* Find where on the bus the device lives. */ +ret = drmParsePciBusInfo(maj, min, ); +if (ret) + return ret; + +/* Open the
CVS commit: xsrc/external/mit/libdrm/dist
Module Name:xsrc Committed By: mrg Date: Wed Mar 14 07:19:26 UTC 2018 Modified Files: xsrc/external/mit/libdrm/dist: xf86atomic.h xf86drm.c xf86drm.h xf86drmMode.c xf86drmMode.h xsrc/external/mit/libdrm/dist/include/drm: drm.h xsrc/external/mit/libdrm/dist/intel: intel_bufmgr_gem.c xsrc/external/mit/libdrm/dist/tests/modetest: modetest.c Log Message: merge libdrm 2.4.91 To generate a diff of this commit: cvs rdiff -u -r1.9 -r1.10 xsrc/external/mit/libdrm/dist/xf86atomic.h cvs rdiff -u -r1.15 -r1.16 xsrc/external/mit/libdrm/dist/xf86drm.c cvs rdiff -u -r1.8 -r1.9 xsrc/external/mit/libdrm/dist/xf86drm.h cvs rdiff -u -r1.12 -r1.13 xsrc/external/mit/libdrm/dist/xf86drmMode.c cvs rdiff -u -r1.7 -r1.8 xsrc/external/mit/libdrm/dist/xf86drmMode.h cvs rdiff -u -r1.8 -r1.9 xsrc/external/mit/libdrm/dist/include/drm/drm.h cvs rdiff -u -r1.14 -r1.15 \ xsrc/external/mit/libdrm/dist/intel/intel_bufmgr_gem.c cvs rdiff -u -r1.10 -r1.11 \ xsrc/external/mit/libdrm/dist/tests/modetest/modetest.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/libdrm/dist/xf86atomic.h diff -u xsrc/external/mit/libdrm/dist/xf86atomic.h:1.9 xsrc/external/mit/libdrm/dist/xf86atomic.h:1.10 --- xsrc/external/mit/libdrm/dist/xf86atomic.h:1.9 Thu Feb 25 05:01:21 2016 +++ xsrc/external/mit/libdrm/dist/xf86atomic.h Wed Mar 14 07:19:26 2018 @@ -101,7 +101,7 @@ typedef struct { volatile LIBDRM_ATOMIC_ #endif -#if ! HAS_ATOMIC_OPS +#if !defined(HAS_ATOMIC_OPS) #error libdrm requires atomic operations, please define them for your CPU/compiler. #endif Index: xsrc/external/mit/libdrm/dist/xf86drm.c diff -u xsrc/external/mit/libdrm/dist/xf86drm.c:1.15 xsrc/external/mit/libdrm/dist/xf86drm.c:1.16 --- xsrc/external/mit/libdrm/dist/xf86drm.c:1.15 Tue Aug 29 06:31:24 2017 +++ xsrc/external/mit/libdrm/dist/xf86drm.c Wed Mar 14 07:19:26 2018 @@ -1696,6 +1696,43 @@ int drmUpdateDrawableInfo(int fd, drm_dr return 0; } +int drmCrtcGetSequence(int fd, uint32_t crtcId, uint64_t *sequence, uint64_t *ns) +{ +struct drm_crtc_get_sequence get_seq; +int ret; + +memclear(get_seq); +get_seq.crtc_id = crtcId; +ret = drmIoctl(fd, DRM_IOCTL_CRTC_GET_SEQUENCE, _seq); +if (ret) +return ret; + +if (sequence) +*sequence = get_seq.sequence; +if (ns) +*ns = get_seq.sequence_ns; +return 0; +} + +int drmCrtcQueueSequence(int fd, uint32_t crtcId, uint32_t flags, uint64_t sequence, + uint64_t *sequence_queued, uint64_t user_data) +{ +struct drm_crtc_queue_sequence queue_seq; +int ret; + +memclear(queue_seq); +queue_seq.crtc_id = crtcId; +queue_seq.flags = flags; +queue_seq.sequence = sequence; +queue_seq.user_data = user_data; + +ret = drmIoctl(fd, DRM_IOCTL_CRTC_QUEUE_SEQUENCE, _seq); +if (ret == 0 && sequence_queued) +*sequence_queued = queue_seq.sequence; + +return ret; +} + /** * Acquire the AGP device. * @@ -4156,7 +4193,7 @@ int drmSyncobjCreate(int fd, uint32_t fl args.handle = 0; ret = drmIoctl(fd, DRM_IOCTL_SYNCOBJ_CREATE, ); if (ret) - return ret; +return ret; *handle = args.handle; return 0; } @@ -4180,7 +4217,7 @@ int drmSyncobjHandleToFD(int fd, uint32_ args.handle = handle; ret = drmIoctl(fd, DRM_IOCTL_SYNCOBJ_HANDLE_TO_FD, ); if (ret) - return ret; +return ret; *obj_fd = args.fd; return 0; } @@ -4195,7 +4232,7 @@ int drmSyncobjFDToHandle(int fd, int obj args.handle = 0; ret = drmIoctl(fd, DRM_IOCTL_SYNCOBJ_FD_TO_HANDLE, ); if (ret) - return ret; +return ret; *handle = args.handle; return 0; } @@ -4222,7 +4259,55 @@ int drmSyncobjExportSyncFile(int fd, uin args.flags = DRM_SYNCOBJ_HANDLE_TO_FD_FLAGS_EXPORT_SYNC_FILE; ret = drmIoctl(fd, DRM_IOCTL_SYNCOBJ_HANDLE_TO_FD, ); if (ret) - return ret; +return ret; *sync_file_fd = args.fd; return 0; } + +int drmSyncobjWait(int fd, uint32_t *handles, unsigned num_handles, + int64_t timeout_nsec, unsigned flags, + uint32_t *first_signaled) +{ +struct drm_syncobj_wait args; +int ret; + +memclear(args); +args.handles = (uintptr_t)handles; +args.timeout_nsec = timeout_nsec; +args.count_handles = num_handles; +args.flags = flags; + +ret = drmIoctl(fd, DRM_IOCTL_SYNCOBJ_WAIT, ); +if (ret < 0) +return -errno; + +if (first_signaled) +*first_signaled = args.first_signaled; +return ret; +} + +int drmSyncobjReset(int fd, const uint32_t *handles, uint32_t handle_count) +{ +struct drm_syncobj_array args; +int ret; + +memclear(args); +args.handles = (uintptr_t)handles; +args.count_handles = handle_count; + +ret = drmIoctl(fd, DRM_IOCTL_SYNCOBJ_RESET, ); +return ret;
CVS commit: xsrc/external/mit/libdrm/dist
Module Name:xsrc Committed By: christos Date: Sun Jan 21 21:49:51 UTC 2018 Modified Files: xsrc/external/mit/libdrm/dist: util_double_list.h util_math.h Log Message: use __typeof__ instead of typeof To generate a diff of this commit: cvs rdiff -u -r1.1.1.2 -r1.2 xsrc/external/mit/libdrm/dist/util_double_list.h cvs rdiff -u -r1.1.1.1 -r1.2 xsrc/external/mit/libdrm/dist/util_math.h 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/libdrm/dist/util_double_list.h diff -u xsrc/external/mit/libdrm/dist/util_double_list.h:1.1.1.2 xsrc/external/mit/libdrm/dist/util_double_list.h:1.2 --- xsrc/external/mit/libdrm/dist/util_double_list.h:1.1.1.2 Sat Mar 4 18:15:50 2017 +++ xsrc/external/mit/libdrm/dist/util_double_list.h Sun Jan 21 16:49:51 2018 @@ -110,7 +110,7 @@ static inline void list_delinit(struct l #ifndef container_of #define container_of(ptr, sample, member)\ (void *)((char *)(ptr) \ - - ((char *)&((typeof(sample))0)->member)) + - ((char *)&((__typeof__(sample))0)->member)) #endif #define LIST_FOR_EACH_ENTRY(pos, head, member)\ Index: xsrc/external/mit/libdrm/dist/util_math.h diff -u xsrc/external/mit/libdrm/dist/util_math.h:1.1.1.1 xsrc/external/mit/libdrm/dist/util_math.h:1.2 --- xsrc/external/mit/libdrm/dist/util_math.h:1.1.1.1 Tue Aug 16 22:14:49 2016 +++ xsrc/external/mit/libdrm/dist/util_math.h Sun Jan 21 16:49:51 2018 @@ -29,6 +29,6 @@ #define MAX3( A, B, C ) ((A) > (B) ? MAX2(A, C) : MAX2(B, C)) #define __align_mask(value, mask) (((value) + (mask)) & ~(mask)) -#define ALIGN(value, alignment)__align_mask(value, (typeof(value))((alignment) - 1)) +#define ALIGN(value, alignment)__align_mask(value, (__typeof__(value))((alignment) - 1)) #endif /*_UTIL_MATH_H_*/
CVS commit: xsrc/external/mit/libdrm/dist
Module Name:xsrc Committed By: christos Date: Sun Jan 21 21:48:54 UTC 2018 Modified Files: xsrc/external/mit/libdrm/dist: libdrm_lists.h Log Message: use __typeof__ instead of typeof. To generate a diff of this commit: cvs rdiff -u -r1.1.1.2 -r1.2 xsrc/external/mit/libdrm/dist/libdrm_lists.h 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/libdrm/dist/libdrm_lists.h diff -u xsrc/external/mit/libdrm/dist/libdrm_lists.h:1.1.1.2 xsrc/external/mit/libdrm/dist/libdrm_lists.h:1.2 --- xsrc/external/mit/libdrm/dist/libdrm_lists.h:1.1.1.2 Mon Mar 17 03:51:42 2014 +++ xsrc/external/mit/libdrm/dist/libdrm_lists.h Sun Jan 21 16:48:54 2018 @@ -96,18 +96,18 @@ typedef struct _drmMMListHead (__item) = (__temp), (__temp) = (__item)->prev) #define DRMLISTFOREACHENTRY(__item, __list, __head)\ - for ((__item) = DRMLISTENTRY(typeof(*__item), (__list)->next, __head); \ + for ((__item) = DRMLISTENTRY(__typeof__(*__item), (__list)->next, __head); \ &(__item)->__head != (__list);\ - (__item) = DRMLISTENTRY(typeof(*__item), \ + (__item) = DRMLISTENTRY(__typeof__(*__item), \ (__item)->__head.next, __head)) #define DRMLISTFOREACHENTRYSAFE(__item, __temp, __list, __head)\ - for ((__item) = DRMLISTENTRY(typeof(*__item), (__list)->next, __head), \ - (__temp) = DRMLISTENTRY(typeof(*__item), \ + for ((__item) = DRMLISTENTRY(__typeof__(*__item), (__list)->next, __head), \ + (__temp) = DRMLISTENTRY(__typeof__(*__item), \ (__item)->__head.next, __head); \ &(__item)->__head != (__list);\ (__item) = (__temp), \ - (__temp) = DRMLISTENTRY(typeof(*__item), \ + (__temp) = DRMLISTENTRY(__typeof__(*__item), \ (__temp)->__head.next, __head)) #define DRMLISTJOIN(__list, __join) if (!DRMLISTEMPTY(__list)) { \
CVS commit: xsrc/external/mit/libdrm/dist
Module Name:xsrc Committed By: mrg Date: Tue Aug 29 06:31:24 UTC 2017 Modified Files: xsrc/external/mit/libdrm/dist: xf86drm.c xf86drm.h xf86drmMode.c xsrc/external/mit/libdrm/dist/include/drm: drm.h xsrc/external/mit/libdrm/dist/intel: intel_bufmgr_gem.c xsrc/external/mit/libdrm/dist/radeon: radeon_surface.c xsrc/external/mit/libdrm/dist/tests/modetest: modetest.c Removed Files: xsrc/external/mit/libdrm/dist/amdgpu: amdgpu_asic_id.h xsrc/external/mit/libdrm/dist/tests/amdgpu: uvd_messages.h Log Message: merge libdrm-2.4.83. To generate a diff of this commit: cvs rdiff -u -r1.14 -r1.15 xsrc/external/mit/libdrm/dist/xf86drm.c cvs rdiff -u -r1.7 -r1.8 xsrc/external/mit/libdrm/dist/xf86drm.h cvs rdiff -u -r1.11 -r1.12 xsrc/external/mit/libdrm/dist/xf86drmMode.c cvs rdiff -u -r1.1.1.1 -r0 \ xsrc/external/mit/libdrm/dist/amdgpu/amdgpu_asic_id.h cvs rdiff -u -r1.7 -r1.8 xsrc/external/mit/libdrm/dist/include/drm/drm.h cvs rdiff -u -r1.13 -r1.14 \ xsrc/external/mit/libdrm/dist/intel/intel_bufmgr_gem.c cvs rdiff -u -r1.9 -r1.10 \ xsrc/external/mit/libdrm/dist/radeon/radeon_surface.c cvs rdiff -u -r1.1.1.1 -r0 \ xsrc/external/mit/libdrm/dist/tests/amdgpu/uvd_messages.h cvs rdiff -u -r1.9 -r1.10 \ xsrc/external/mit/libdrm/dist/tests/modetest/modetest.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/libdrm/dist/xf86drm.c diff -u xsrc/external/mit/libdrm/dist/xf86drm.c:1.14 xsrc/external/mit/libdrm/dist/xf86drm.c:1.15 --- xsrc/external/mit/libdrm/dist/xf86drm.c:1.14 Sat Mar 4 23:22:48 2017 +++ xsrc/external/mit/libdrm/dist/xf86drm.c Tue Aug 29 06:31:24 2017 @@ -867,8 +867,6 @@ drmVersionPtr drmGetVersion(int fd) drmVersionPtr retval; drm_version_t *version = drmMalloc(sizeof(*version)); -memclear(*version); - if (drmIoctl(fd, DRM_IOCTL_VERSION, version)) { drmFreeKernelVersion(version); return NULL; @@ -995,8 +993,10 @@ char *drmGetBusid(int fd) if (drmIoctl(fd, DRM_IOCTL_GET_UNIQUE, )) return NULL; u.unique = drmMalloc(u.unique_len + 1); -if (drmIoctl(fd, DRM_IOCTL_GET_UNIQUE, )) +if (drmIoctl(fd, DRM_IOCTL_GET_UNIQUE, )) { +drmFree(u.unique); return NULL; +} u.unique[u.unique_len] = '\0'; return u.unique; @@ -1524,14 +1524,12 @@ drm_context_t *drmGetReservedContextList if (!(list = drmMalloc(res.count * sizeof(*list return NULL; -if (!(retval = drmMalloc(res.count * sizeof(*retval { -drmFree(list); -return NULL; -} +if (!(retval = drmMalloc(res.count * sizeof(*retval +goto err_free_list; res.contexts = list; if (drmIoctl(fd, DRM_IOCTL_RES_CTX, )) -return NULL; +goto err_free_context; for (i = 0; i < res.count; i++) retval[i] = list[i].handle; @@ -1539,6 +1537,12 @@ drm_context_t *drmGetReservedContextList *count = res.count; return retval; + +err_free_list: +drmFree(list); +err_free_context: +drmFree(retval); +return NULL; } void drmFreeReservedContextList(drm_context_t *pt) @@ -3024,32 +3028,32 @@ static int drmParsePciBusInfo(int maj, i #endif } -static int drmCompareBusInfo(drmDevicePtr a, drmDevicePtr b) +int drmDevicesEqual(drmDevicePtr a, drmDevicePtr b) { if (a == NULL || b == NULL) -return -1; +return 0; if (a->bustype != b->bustype) -return -1; +return 0; switch (a->bustype) { case DRM_BUS_PCI: -return memcmp(a->businfo.pci, b->businfo.pci, sizeof(drmPciBusInfo)); +return memcmp(a->businfo.pci, b->businfo.pci, sizeof(drmPciBusInfo)) == 0; case DRM_BUS_USB: -return memcmp(a->businfo.usb, b->businfo.usb, sizeof(drmUsbBusInfo)); +return memcmp(a->businfo.usb, b->businfo.usb, sizeof(drmUsbBusInfo)) == 0; case DRM_BUS_PLATFORM: -return memcmp(a->businfo.platform, b->businfo.platform, sizeof(drmPlatformBusInfo)); +return memcmp(a->businfo.platform, b->businfo.platform, sizeof(drmPlatformBusInfo)) == 0; case DRM_BUS_HOST1X: -return memcmp(a->businfo.host1x, b->businfo.host1x, sizeof(drmHost1xBusInfo)); +return memcmp(a->businfo.host1x, b->businfo.host1x, sizeof(drmHost1xBusInfo)) == 0; default: break; } -return -1; +return 0; } static int drmGetNodeType(const char *name) @@ -3664,7 +3668,7 @@ static void drmFoldDuplicatedDevices(drm for (i = 0; i < count; i++) { for (j = i + 1; j < count; j++) { -if (drmCompareBusInfo(local_devices[i], local_devices[j]) == 0) { +if (drmDevicesEqual(local_devices[i], local_devices[j])) { local_devices[i]->available_nodes |= local_devices[j]->available_nodes; node_type =
CVS commit: xsrc/external/mit/libdrm/dist
Module Name:xsrc Committed By: christos Date: Tue Mar 7 16:28:42 UTC 2017 Modified Files: xsrc/external/mit/libdrm/dist: libsync.h Log Message: we don't need both memset and 0 To generate a diff of this commit: cvs rdiff -u -r1.2 -r1.3 xsrc/external/mit/libdrm/dist/libsync.h 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/libdrm/dist/libsync.h diff -u xsrc/external/mit/libdrm/dist/libsync.h:1.2 xsrc/external/mit/libdrm/dist/libsync.h:1.3 --- xsrc/external/mit/libdrm/dist/libsync.h:1.2 Tue Mar 7 11:23:20 2017 +++ xsrc/external/mit/libdrm/dist/libsync.h Tue Mar 7 11:28:42 2017 @@ -63,7 +63,6 @@ static inline int sync_wait(int fd, int struct pollfd fds; int ret; - memset(, 0, sizeof(fds)); fds.fd = fd; fds.events = POLLIN; fds.revents = 0;
CVS commit: xsrc/external/mit/libdrm/dist
Module Name:xsrc Committed By: christos Date: Tue Mar 7 16:23:20 UTC 2017 Modified Files: xsrc/external/mit/libdrm/dist: libsync.h Log Message: fix incomplete initializers for clang. To generate a diff of this commit: cvs rdiff -u -r1.1.1.1 -r1.2 xsrc/external/mit/libdrm/dist/libsync.h 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/libdrm/dist/libsync.h diff -u xsrc/external/mit/libdrm/dist/libsync.h:1.1.1.1 xsrc/external/mit/libdrm/dist/libsync.h:1.2 --- xsrc/external/mit/libdrm/dist/libsync.h:1.1.1.1 Sat Mar 4 18:15:50 2017 +++ xsrc/external/mit/libdrm/dist/libsync.h Tue Mar 7 11:23:20 2017 @@ -60,11 +60,13 @@ struct sync_merge_data { static inline int sync_wait(int fd, int timeout) { - struct pollfd fds = {0}; + struct pollfd fds; int ret; + memset(, 0, sizeof(fds)); fds.fd = fd; fds.events = POLLIN; + fds.revents = 0; do { ret = poll(, 1, timeout); @@ -85,11 +87,14 @@ static inline int sync_wait(int fd, int static inline int sync_merge(const char *name, int fd1, int fd2) { - struct sync_merge_data data = {0}; + struct sync_merge_data data; int ret; data.fd2 = fd2; strncpy(data.name, name, sizeof(data.name)); + data.fence = 0; + data.flags = 0; + data.pad = 0; do { ret = ioctl(fd1, SYNC_IOC_MERGE, );
CVS commit: xsrc/external/mit/libdrm/dist/intel
Module Name:xsrc Committed By: christos Date: Mon Mar 6 23:11:39 UTC 2017 Modified Files: xsrc/external/mit/libdrm/dist/intel: uthash.h Log Message: add lint to the bogus test for To generate a diff of this commit: cvs rdiff -u -r1.1.1.1 -r1.2 xsrc/external/mit/libdrm/dist/intel/uthash.h 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/libdrm/dist/intel/uthash.h diff -u xsrc/external/mit/libdrm/dist/intel/uthash.h:1.1.1.1 xsrc/external/mit/libdrm/dist/intel/uthash.h:1.2 --- xsrc/external/mit/libdrm/dist/intel/uthash.h:1.1.1.1 Sat Mar 4 18:15:51 2017 +++ xsrc/external/mit/libdrm/dist/intel/uthash.h Mon Mar 6 18:11:39 2017 @@ -71,7 +71,7 @@ do { typedef unsigned int uint32_t; typedef unsigned char uint8_t; #endif -#elif defined(__GNUC__) && !defined(__VXWORKS__) +#elif (defined(__lint__) || defined(__GNUC__)) && !defined(__VXWORKS__) #include #else typedef unsigned int uint32_t;
CVS commit: xsrc/external/mit/libdrm/dist
Module Name:xsrc Committed By: christos Date: Fri Jan 13 04:24:01 UTC 2017 Modified Files: xsrc/external/mit/libdrm/dist: xf86drm.c Log Message: Reorder so we don't redefine MAP_FAILED. To generate a diff of this commit: cvs rdiff -u -r1.12 -r1.13 xsrc/external/mit/libdrm/dist/xf86drm.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/libdrm/dist/xf86drm.c diff -u xsrc/external/mit/libdrm/dist/xf86drm.c:1.12 xsrc/external/mit/libdrm/dist/xf86drm.c:1.13 --- xsrc/external/mit/libdrm/dist/xf86drm.c:1.12 Tue Aug 16 22:16:16 2016 +++ xsrc/external/mit/libdrm/dist/xf86drm.c Thu Jan 12 23:24:01 2017 @@ -62,10 +62,6 @@ #endif #include -/* Not all systems have MAP_FAILED defined */ -#ifndef MAP_FAILED -#define MAP_FAILED ((void *)-1) -#endif #include "xf86drm.h" #include "libdrm_macros.h" @@ -103,6 +99,11 @@ #define DRM_MAJOR 226 /* Linux */ #endif +/* Not all systems have MAP_FAILED defined */ +#ifndef MAP_FAILED +#define MAP_FAILED ((void *)-1) +#endif + #define DRM_MSG_VERBOSITY 3 #define memclear(s) memset(, 0, sizeof(s))
CVS commit: xsrc/external/mit/libdrm/dist
Module Name:xsrc Committed By: riastradh Date: Thu Feb 25 05:01:21 UTC 2016 Modified Files: xsrc/external/mit/libdrm/dist: xf86atomic.h Log Message: The unsigned int object must be volatile-qualified too. To generate a diff of this commit: cvs rdiff -u -r1.8 -r1.9 xsrc/external/mit/libdrm/dist/xf86atomic.h 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/libdrm/dist/xf86atomic.h diff -u xsrc/external/mit/libdrm/dist/xf86atomic.h:1.8 xsrc/external/mit/libdrm/dist/xf86atomic.h:1.9 --- xsrc/external/mit/libdrm/dist/xf86atomic.h:1.8 Thu Feb 25 04:48:24 2016 +++ xsrc/external/mit/libdrm/dist/xf86atomic.h Thu Feb 25 05:01:21 2016 @@ -88,7 +88,7 @@ typedef struct { #define LIBDRM_ATOMIC_TYPE uint_t #endif -typedef struct { LIBDRM_ATOMIC_TYPE atomic; } atomic_t; +typedef struct { volatile LIBDRM_ATOMIC_TYPE atomic; } atomic_t; # define atomic_read(x) (int) ((x)->atomic) # define atomic_set(x, val) ((x)->atomic = (LIBDRM_ATOMIC_TYPE)(val))
CVS commit: xsrc/external/mit/libdrm/dist
Module Name:xsrc Committed By: riastradh Date: Thu Feb 25 04:48:24 UTC 2016 Modified Files: xsrc/external/mit/libdrm/dist: xf86atomic.h Log Message: Use unsigned int, not int, for LIBDRM_ATOMIC_TYPE. Otherwise we pass int * to atomic_..._uint operations that expect unsigned int *. (Not clear to me why GCC doesn't warn about a pointer signedness issue here but Clang does.) To generate a diff of this commit: cvs rdiff -u -r1.7 -r1.8 xsrc/external/mit/libdrm/dist/xf86atomic.h 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/libdrm/dist/xf86atomic.h diff -u xsrc/external/mit/libdrm/dist/xf86atomic.h:1.7 xsrc/external/mit/libdrm/dist/xf86atomic.h:1.8 --- xsrc/external/mit/libdrm/dist/xf86atomic.h:1.7 Tue Oct 13 02:59:39 2015 +++ xsrc/external/mit/libdrm/dist/xf86atomic.h Thu Feb 25 04:48:24 2016 @@ -83,7 +83,7 @@ typedef struct { #define HAS_ATOMIC_OPS 1 #if defined(__NetBSD__) -#define LIBDRM_ATOMIC_TYPE int +#define LIBDRM_ATOMIC_TYPE unsigned int #else #define LIBDRM_ATOMIC_TYPE uint_t #endif
CVS commit: xsrc/external/mit/libdrm/dist
Module Name:xsrc Committed By: mrg Date: Tue Oct 13 02:59:39 UTC 2015 Modified Files: xsrc/external/mit/libdrm/dist: xf86atomic.h Log Message: fix atomic_inc_return() macro that takes an argument. i made this fix but an identical one is commited upstream. To generate a diff of this commit: cvs rdiff -u -r1.6 -r1.7 xsrc/external/mit/libdrm/dist/xf86atomic.h 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/libdrm/dist/xf86atomic.h diff -u xsrc/external/mit/libdrm/dist/xf86atomic.h:1.6 xsrc/external/mit/libdrm/dist/xf86atomic.h:1.7 --- xsrc/external/mit/libdrm/dist/xf86atomic.h:1.6 Mon Jul 20 02:27:05 2015 +++ xsrc/external/mit/libdrm/dist/xf86atomic.h Tue Oct 13 02:59:39 2015 @@ -93,7 +93,7 @@ typedef struct { LIBDRM_ATOMIC_TYPE atom # define atomic_read(x) (int) ((x)->atomic) # define atomic_set(x, val) ((x)->atomic = (LIBDRM_ATOMIC_TYPE)(val)) # define atomic_inc(x) (atomic_inc_uint (&(x)->atomic)) -# define atomic_inc_return (atomic_inc_uint_nv(&(x)->atomic)) +# define atomic_inc_return(x) (atomic_inc_uint_nv(&(x)->atomic)) # define atomic_dec_and_test(x) (atomic_dec_uint_nv(&(x)->atomic) == 0) # define atomic_add(x, v) (atomic_add_int(&(x)->atomic, (v))) # define atomic_dec(x, v) (atomic_add_int(&(x)->atomic, -(v)))
CVS commit: xsrc/external/mit/libdrm/dist
Module Name:xsrc Committed By: mrg Date: Mon Jul 20 02:27:06 UTC 2015 Modified Files: xsrc/external/mit/libdrm/dist: xf86atomic.h xf86drm.c xf86drm.h xf86drmMode.c xf86drmMode.h xsrc/external/mit/libdrm/dist/include/drm: drm.h i915_drm.h xsrc/external/mit/libdrm/dist/intel: intel_bufmgr_gem.c xsrc/external/mit/libdrm/dist/radeon: radeon_bo_gem.c radeon_cs_gem.c radeon_surface.c xsrc/external/mit/libdrm/dist/tests/modetest: modetest.c Removed Files: xsrc/external/mit/libdrm/dist: libdrm.h xsrc/external/mit/libdrm/dist/exynos: fimg2d.h xsrc/external/mit/libdrm/dist/tests: gem_basic.c gem_flink.c gem_mmap.c gem_readwrite.c Log Message: merge libdrm 2.4.62. To generate a diff of this commit: cvs rdiff -u -r1.1.1.1 -r0 xsrc/external/mit/libdrm/dist/libdrm.h cvs rdiff -u -r1.5 -r1.6 xsrc/external/mit/libdrm/dist/xf86atomic.h cvs rdiff -u -r1.10 -r1.11 xsrc/external/mit/libdrm/dist/xf86drm.c cvs rdiff -u -r1.4 -r1.5 xsrc/external/mit/libdrm/dist/xf86drm.h \ xsrc/external/mit/libdrm/dist/xf86drmMode.h cvs rdiff -u -r1.8 -r1.9 xsrc/external/mit/libdrm/dist/xf86drmMode.c cvs rdiff -u -r1.1.1.2 -r0 xsrc/external/mit/libdrm/dist/exynos/fimg2d.h cvs rdiff -u -r1.4 -r1.5 xsrc/external/mit/libdrm/dist/include/drm/drm.h cvs rdiff -u -r1.2 -r1.3 xsrc/external/mit/libdrm/dist/include/drm/i915_drm.h cvs rdiff -u -r1.10 -r1.11 \ xsrc/external/mit/libdrm/dist/intel/intel_bufmgr_gem.c cvs rdiff -u -r1.5 -r1.6 xsrc/external/mit/libdrm/dist/radeon/radeon_bo_gem.c cvs rdiff -u -r1.4 -r1.5 xsrc/external/mit/libdrm/dist/radeon/radeon_cs_gem.c cvs rdiff -u -r1.6 -r1.7 \ xsrc/external/mit/libdrm/dist/radeon/radeon_surface.c cvs rdiff -u -r1.1.1.1 -r0 xsrc/external/mit/libdrm/dist/tests/gem_basic.c cvs rdiff -u -r1.1.1.3 -r0 xsrc/external/mit/libdrm/dist/tests/gem_flink.c cvs rdiff -u -r1.1.1.2 -r0 xsrc/external/mit/libdrm/dist/tests/gem_mmap.c \ xsrc/external/mit/libdrm/dist/tests/gem_readwrite.c cvs rdiff -u -r1.6 -r1.7 \ xsrc/external/mit/libdrm/dist/tests/modetest/modetest.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/libdrm/dist/xf86atomic.h diff -u xsrc/external/mit/libdrm/dist/xf86atomic.h:1.5 xsrc/external/mit/libdrm/dist/xf86atomic.h:1.6 --- xsrc/external/mit/libdrm/dist/xf86atomic.h:1.5 Sat Dec 13 21:39:07 2014 +++ xsrc/external/mit/libdrm/dist/xf86atomic.h Mon Jul 20 02:27:05 2015 @@ -49,7 +49,8 @@ typedef struct { # define atomic_read(x) ((x)-atomic) # define atomic_set(x, val) ((x)-atomic = (val)) # define atomic_inc(x) ((void) __sync_fetch_and_add ((x)-atomic, 1)) -# define atomic_dec_and_test(x) (__sync_fetch_and_add ((x)-atomic, -1) == 1) +# define atomic_inc_return(x) (__sync_add_and_fetch ((x)-atomic, 1)) +# define atomic_dec_and_test(x) (__sync_add_and_fetch ((x)-atomic, -1) == 0) # define atomic_add(x, v) ((void) __sync_add_and_fetch((x)-atomic, (v))) # define atomic_dec(x, v) ((void) __sync_sub_and_fetch((x)-atomic, (v))) # define atomic_cmpxchg(x, oldv, newv) __sync_val_compare_and_swap ((x)-atomic, oldv, newv) @@ -68,6 +69,7 @@ typedef struct { # define atomic_read(x) AO_load_full((x)-atomic) # define atomic_set(x, val) AO_store_full((x)-atomic, (val)) # define atomic_inc(x) ((void) AO_fetch_and_add1_full((x)-atomic)) +# define atomic_inc_return(x) (AO_fetch_and_add1_full((x)-atomic) + 1) # define atomic_add(x, v) ((void) AO_fetch_and_add_full((x)-atomic, (v))) # define atomic_dec(x, v) ((void) AO_fetch_and_add_full((x)-atomic, -(v))) # define atomic_dec_and_test(x) (AO_fetch_and_sub1_full((x)-atomic) == 1) @@ -75,33 +77,23 @@ typedef struct { #endif -#if defined(__sun) !defined(HAS_ATOMIC_OPS) /* Solaris OpenSolaris */ +#if (defined(__sun) || defined(__NetBSD__)) !defined(HAS_ATOMIC_OPS) /* Solaris OpenSolaris NetBSD */ #include sys/atomic.h #define HAS_ATOMIC_OPS 1 -typedef struct { uint_t atomic; } atomic_t; - -# define atomic_read(x) (int) ((x)-atomic) -# define atomic_set(x, val) ((x)-atomic = (uint_t)(val)) -# define atomic_inc(x) (atomic_inc_uint ((x)-atomic)) -# define atomic_dec_and_test(x) (atomic_dec_uint_nv((x)-atomic) == 0) -# define atomic_add(x, v) (atomic_add_int((x)-atomic, (v))) -# define atomic_dec(x, v) (atomic_add_int((x)-atomic, -(v))) -# define atomic_cmpxchg(x, oldv, newv) atomic_cas_uint ((x)-atomic, oldv, newv) - +#if defined(__NetBSD__) +#define LIBDRM_ATOMIC_TYPE int +#else +#define LIBDRM_ATOMIC_TYPE uint_t #endif -#if defined(__NetBSD__) !defined(HAS_ATOMIC_OPS) /* NetBSD */ - -#include sys/atomic.h -#define HAS_ATOMIC_OPS 1 - -typedef struct { int atomic; } atomic_t; +typedef struct { LIBDRM_ATOMIC_TYPE atomic; } atomic_t; # define atomic_read(x) (int) ((x)-atomic) -# define atomic_set(x, val) ((x)-atomic = (val)) +# define atomic_set(x, val) ((x)-atomic = (LIBDRM_ATOMIC_TYPE)(val)) # define
CVS commit: xsrc/external/mit/libdrm/dist/include/drm
Module Name:xsrc Committed By: christos Date: Fri Feb 6 19:26:09 UTC 2015 Modified Files: xsrc/external/mit/libdrm/dist/include/drm: i915_drm.h Log Message: fix cut-n-paste error To generate a diff of this commit: cvs rdiff -u -r1.1.1.6 -r1.2 \ xsrc/external/mit/libdrm/dist/include/drm/i915_drm.h 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/libdrm/dist/include/drm/i915_drm.h diff -u xsrc/external/mit/libdrm/dist/include/drm/i915_drm.h:1.1.1.6 xsrc/external/mit/libdrm/dist/include/drm/i915_drm.h:1.2 --- xsrc/external/mit/libdrm/dist/include/drm/i915_drm.h:1.1.1.6 Sat Dec 13 16:33:25 2014 +++ xsrc/external/mit/libdrm/dist/include/drm/i915_drm.h Fri Feb 6 14:26:09 2015 @@ -268,7 +268,7 @@ typedef struct _drm_i915_sarea { #define DRM_IOCTL_I915_OVERLAY_PUT_IMAGE DRM_IOW(DRM_COMMAND_BASE + DRM_I915_OVERLAY_PUT_IMAGE, struct drm_intel_overlay_put_image) #define DRM_IOCTL_I915_OVERLAY_ATTRS DRM_IOWR(DRM_COMMAND_BASE + DRM_I915_OVERLAY_ATTRS, struct drm_intel_overlay_attrs) #define DRM_IOCTL_I915_SET_SPRITE_COLORKEY DRM_IOWR(DRM_COMMAND_BASE + DRM_I915_SET_SPRITE_COLORKEY, struct drm_intel_sprite_colorkey) -#define DRM_IOCTL_I915_GET_SPRITE_COLORKEY DRM_IOWR(DRM_COMMAND_BASE + DRM_I915_SET_SPRITE_COLORKEY, struct drm_intel_sprite_colorkey) +#define DRM_IOCTL_I915_GET_SPRITE_COLORKEY DRM_IOWR(DRM_COMMAND_BASE + DRM_I915_GET_SPRITE_COLORKEY, struct drm_intel_sprite_colorkey) #define DRM_IOCTL_I915_GEM_WAIT DRM_IOWR(DRM_COMMAND_BASE + DRM_I915_GEM_WAIT, struct drm_i915_gem_wait) #define DRM_IOCTL_I915_GEM_CONTEXT_CREATE DRM_IOWR (DRM_COMMAND_BASE + DRM_I915_GEM_CONTEXT_CREATE, struct drm_i915_gem_context_create) #define DRM_IOCTL_I915_GEM_CONTEXT_DESTROY DRM_IOW (DRM_COMMAND_BASE + DRM_I915_GEM_CONTEXT_DESTROY, struct drm_i915_gem_context_destroy)
CVS commit: xsrc/external/mit/libdrm/dist
Module Name:xsrc Committed By: snj Date: Fri Jan 23 08:25:08 UTC 2015 Modified Files: xsrc/external/mit/libdrm/dist: xf86drmMode.h xsrc/external/mit/libdrm/dist/intel: intel_bufmgr_gem.c xsrc/external/mit/libdrm/dist/radeon: radeon_surface.c xsrc/external/mit/libdrm/dist/tests/modetest: modetest.c Log Message: merge libdrm-2.4.59 To generate a diff of this commit: cvs rdiff -u -r1.3 -r1.4 xsrc/external/mit/libdrm/dist/xf86drmMode.h cvs rdiff -u -r1.9 -r1.10 \ xsrc/external/mit/libdrm/dist/intel/intel_bufmgr_gem.c cvs rdiff -u -r1.5 -r1.6 \ xsrc/external/mit/libdrm/dist/radeon/radeon_surface.c cvs rdiff -u -r1.5 -r1.6 \ xsrc/external/mit/libdrm/dist/tests/modetest/modetest.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/libdrm/dist/xf86drmMode.h diff -u xsrc/external/mit/libdrm/dist/xf86drmMode.h:1.3 xsrc/external/mit/libdrm/dist/xf86drmMode.h:1.4 --- xsrc/external/mit/libdrm/dist/xf86drmMode.h:1.3 Sat Dec 13 21:39:07 2014 +++ xsrc/external/mit/libdrm/dist/xf86drmMode.h Fri Jan 23 08:25:08 2015 @@ -240,6 +240,15 @@ typedef struct _drmModeProperty { uint32_t *blob_ids; /* store the blob IDs */ } drmModePropertyRes, *drmModePropertyPtr; +static inline int drm_property_type_is(drmModePropertyPtr property, + uint32_t type) +{ + /* instanceof for props.. handles extended type vs original types: */ + if (property-flags DRM_MODE_PROP_EXTENDED_TYPE) + return (property-flags DRM_MODE_PROP_EXTENDED_TYPE) == type; + return property-flags type; +} + typedef struct _drmModeCrtc { uint32_t crtc_id; uint32_t buffer_id; /** FB id to connect to 0 = disconnect */ Index: xsrc/external/mit/libdrm/dist/intel/intel_bufmgr_gem.c diff -u xsrc/external/mit/libdrm/dist/intel/intel_bufmgr_gem.c:1.9 xsrc/external/mit/libdrm/dist/intel/intel_bufmgr_gem.c:1.10 --- xsrc/external/mit/libdrm/dist/intel/intel_bufmgr_gem.c:1.9 Sat Dec 13 21:39:07 2014 +++ xsrc/external/mit/libdrm/dist/intel/intel_bufmgr_gem.c Fri Jan 23 08:25:08 2015 @@ -760,15 +760,16 @@ retry: bo_gem-swizzle_mode = I915_BIT_6_SWIZZLE_NONE; bo_gem-stride = 0; + /* drm_intel_gem_bo_free calls DRMLISTDEL() for an uninitialized + list (vma_list), so better set the list head here */ + DRMINITLISTHEAD(bo_gem-name_list); + DRMINITLISTHEAD(bo_gem-vma_list); if (drm_intel_gem_bo_set_tiling_internal(bo_gem-bo, tiling_mode, stride)) { drm_intel_gem_bo_free(bo_gem-bo); return NULL; } - - DRMINITLISTHEAD(bo_gem-name_list); - DRMINITLISTHEAD(bo_gem-vma_list); } bo_gem-name = name; @@ -1810,6 +1811,14 @@ do_bo_emit_reloc(drm_intel_bo *bo, uint3 assert(offset = bo-size - 4); assert((write_domain (write_domain - 1)) == 0); + /* An object needing a fence is a tiled buffer, so it won't have + * relocs to other buffers. + */ + if (need_fence) { + assert(target_bo_gem-reloc_count == 0); + target_bo_gem-reloc_tree_fences = 1; + } + /* Make sure that we're not adding a reloc to something whose size has * already been accounted for. */ @@ -1817,13 +1826,8 @@ do_bo_emit_reloc(drm_intel_bo *bo, uint3 if (target_bo_gem != bo_gem) { target_bo_gem-used_as_reloc_target = true; bo_gem-reloc_tree_size += target_bo_gem-reloc_tree_size; + bo_gem-reloc_tree_fences += target_bo_gem-reloc_tree_fences; } - /* An object needing a fence is a tiled buffer, so it won't have - * relocs to other buffers. - */ - if (need_fence) - target_bo_gem-reloc_tree_fences = 1; - bo_gem-reloc_tree_fences += target_bo_gem-reloc_tree_fences; bo_gem-relocs[bo_gem-reloc_count].offset = offset; bo_gem-relocs[bo_gem-reloc_count].delta = target_offset; @@ -3177,7 +3181,8 @@ drm_intel_bufmgr_gem_set_aub_dump(drm_in /* Set up the GTT. The max we can handle is 256M */ aub_out(bufmgr_gem, CMD_AUB_TRACE_HEADER_BLOCK | ((bufmgr_gem-gen = 8 ? 6 : 5) - 2)); - aub_out(bufmgr_gem, AUB_TRACE_MEMTYPE_NONLOCAL | 0 | AUB_TRACE_OP_DATA_WRITE); + /* Need to use GTT_ENTRY type for recent emulator */ + aub_out(bufmgr_gem, AUB_TRACE_MEMTYPE_GTT_ENTRY | 0 | AUB_TRACE_OP_DATA_WRITE); aub_out(bufmgr_gem, 0); /* subtype */ aub_out(bufmgr_gem, 0); /* offset */ aub_out(bufmgr_gem, gtt_size); /* size */ @@ -3479,6 +3484,8 @@ drm_intel_bufmgr_gem_init(int fd, int ba bufmgr_gem-gen = 7; else if (IS_GEN8(bufmgr_gem-pci_device)) bufmgr_gem-gen = 8; + else if (IS_GEN9(bufmgr_gem-pci_device)) + bufmgr_gem-gen = 9; else { free(bufmgr_gem); bufmgr_gem = NULL; Index: xsrc/external/mit/libdrm/dist/radeon/radeon_surface.c diff -u xsrc/external/mit/libdrm/dist/radeon/radeon_surface.c:1.5 xsrc/external/mit/libdrm/dist/radeon/radeon_surface.c:1.6 --- xsrc/external/mit/libdrm/dist/radeon/radeon_surface.c:1.5 Sat Dec 13 21:39:07 2014 +++ xsrc/external/mit/libdrm/dist/radeon/radeon_surface.c Fri Jan 23 08:25:08 2015 @@ -366,6 +366,8 @@ static int
CVS commit: xsrc/external/mit/libdrm/dist
Module Name:xsrc Committed By: chs Date: Sun Dec 14 23:52:45 UTC 2014 Modified Files: xsrc/external/mit/libdrm/dist: xf86drm.c xsrc/external/mit/libdrm/dist/include/drm: drm.h Log Message: remove the interim code to create mappings via ioctl(), mmap() works fine now. To generate a diff of this commit: cvs rdiff -u -r1.9 -r1.10 xsrc/external/mit/libdrm/dist/xf86drm.c cvs rdiff -u -r1.3 -r1.4 xsrc/external/mit/libdrm/dist/include/drm/drm.h 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/libdrm/dist/xf86drm.c diff -u xsrc/external/mit/libdrm/dist/xf86drm.c:1.9 xsrc/external/mit/libdrm/dist/xf86drm.c:1.10 --- xsrc/external/mit/libdrm/dist/xf86drm.c:1.9 Sat Dec 13 21:39:07 2014 +++ xsrc/external/mit/libdrm/dist/xf86drm.c Sun Dec 14 23:52:45 2014 @@ -1129,9 +1129,6 @@ int drmClose(int fd) int drmMap(int fd, drm_handle_t handle, drmSize size, drmAddressPtr address) { static unsigned long pagesize_mask = 0; -#ifdef DRM_IOCTL_MMAP -struct drm_mmap mmap_req = {0}; -#endif if (fd 0) return -EINVAL; @@ -1141,17 +1138,6 @@ int drmMap(int fd, drm_handle_t handle, size = (size + pagesize_mask) ~pagesize_mask; -#ifdef DRM_IOCTL_MMAP -mmap_req.dnm_addr = NULL; -mmap_req.dnm_size = size; -mmap_req.dnm_prot = (PROT_READ | PROT_WRITE); -mmap_req.dnm_flags = MAP_SHARED; -mmap_req.dnm_offset = handle; -if (drmIoctl(fd, DRM_IOCTL_MMAP, mmap_req) == 0) { - *address = mmap_req.dnm_addr; - return 0; -} -#endif *address = drm_mmap(0, size, PROT_READ|PROT_WRITE, MAP_SHARED, fd, handle); if (*address == MAP_FAILED) return -errno; @@ -2585,4 +2571,3 @@ int drmPrimeFDToHandle(int fd, int prime *handle = args.handle; return 0; } - Index: xsrc/external/mit/libdrm/dist/include/drm/drm.h diff -u xsrc/external/mit/libdrm/dist/include/drm/drm.h:1.3 xsrc/external/mit/libdrm/dist/include/drm/drm.h:1.4 --- xsrc/external/mit/libdrm/dist/include/drm/drm.h:1.3 Sat Dec 13 21:39:07 2014 +++ xsrc/external/mit/libdrm/dist/include/drm/drm.h Sun Dec 14 23:52:45 2014 @@ -759,20 +759,6 @@ struct drm_prime_handle { #define DRM_IOCTL_MODE_OBJ_SETPROPERTY DRM_IOWR(0xBA, struct drm_mode_obj_set_property) #define DRM_IOCTL_MODE_CURSOR2 DRM_IOWR(0xBB, struct drm_mode_cursor2) -#ifdef __NetBSD__ -/* - * Instrumenting mmap is trickier than just making an ioctl to do it. - */ -struct drm_mmap { - void *dnm_addr; /* in/out */ - size_t dnm_size; /* in */ - int dnm_prot; /* in */ - int dnm_flags; /* in */ - off_t dnm_offset; /* in */ -}; -#define DRM_IOCTL_MMAP DRM_IOWR(0xff, struct drm_mmap) -#endif - /** * Device specific ioctls should only be in their respective headers * The device specific ioctl range is from 0x40 to 0x99.
CVS commit: xsrc/external/mit/libdrm/dist
Module Name:xsrc Committed By: mrg Date: Sat Dec 13 21:39:07 UTC 2014 Modified Files: xsrc/external/mit/libdrm/dist: xf86atomic.h xf86drm.c xf86drmMode.c xf86drmMode.h xsrc/external/mit/libdrm/dist/include/drm: drm.h xsrc/external/mit/libdrm/dist/intel: intel_bufmgr_gem.c xsrc/external/mit/libdrm/dist/radeon: radeon_bo_gem.c radeon_cs_gem.c radeon_surface.c xsrc/external/mit/libdrm/dist/tests/modetest: modetest.c Removed Files: xsrc/external/mit/libdrm/dist: config.guess config.sub depcomp install-sh ltmain.sh missing xsrc/external/mit/libdrm/dist/include: Makefile.am Makefile.in xsrc/external/mit/libdrm/dist/include/drm: Makefile Makefile.am Makefile.in i810_drm.h i830_drm.h Log Message: merge libdrm 2.4.58. To generate a diff of this commit: cvs rdiff -u -r1.3 -r0 xsrc/external/mit/libdrm/dist/config.guess \ xsrc/external/mit/libdrm/dist/config.sub \ xsrc/external/mit/libdrm/dist/depcomp \ xsrc/external/mit/libdrm/dist/install-sh \ xsrc/external/mit/libdrm/dist/ltmain.sh \ xsrc/external/mit/libdrm/dist/missing cvs rdiff -u -r1.4 -r1.5 xsrc/external/mit/libdrm/dist/xf86atomic.h cvs rdiff -u -r1.8 -r1.9 xsrc/external/mit/libdrm/dist/xf86drm.c cvs rdiff -u -r1.6 -r1.7 xsrc/external/mit/libdrm/dist/xf86drmMode.c cvs rdiff -u -r1.2 -r1.3 xsrc/external/mit/libdrm/dist/xf86drmMode.h cvs rdiff -u -r1.1.1.1 -r0 xsrc/external/mit/libdrm/dist/include/Makefile.am cvs rdiff -u -r1.1.1.5 -r0 xsrc/external/mit/libdrm/dist/include/Makefile.in cvs rdiff -u -r1.1.1.6 -r0 xsrc/external/mit/libdrm/dist/include/drm/Makefile cvs rdiff -u -r1.1.1.2 -r0 \ xsrc/external/mit/libdrm/dist/include/drm/Makefile.am cvs rdiff -u -r1.1.1.5 -r0 \ xsrc/external/mit/libdrm/dist/include/drm/Makefile.in cvs rdiff -u -r1.2 -r1.3 xsrc/external/mit/libdrm/dist/include/drm/drm.h cvs rdiff -u -r1.1.1.1 -r0 \ xsrc/external/mit/libdrm/dist/include/drm/i810_drm.h \ xsrc/external/mit/libdrm/dist/include/drm/i830_drm.h cvs rdiff -u -r1.8 -r1.9 \ xsrc/external/mit/libdrm/dist/intel/intel_bufmgr_gem.c cvs rdiff -u -r1.4 -r1.5 xsrc/external/mit/libdrm/dist/radeon/radeon_bo_gem.c \ xsrc/external/mit/libdrm/dist/radeon/radeon_surface.c cvs rdiff -u -r1.3 -r1.4 xsrc/external/mit/libdrm/dist/radeon/radeon_cs_gem.c cvs rdiff -u -r1.4 -r1.5 \ xsrc/external/mit/libdrm/dist/tests/modetest/modetest.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/libdrm/dist/xf86atomic.h diff -u xsrc/external/mit/libdrm/dist/xf86atomic.h:1.4 xsrc/external/mit/libdrm/dist/xf86atomic.h:1.5 --- xsrc/external/mit/libdrm/dist/xf86atomic.h:1.4 Wed Jul 9 14:12:39 2014 +++ xsrc/external/mit/libdrm/dist/xf86atomic.h Sat Dec 13 21:39:07 2014 @@ -113,4 +113,13 @@ typedef struct { int atomic; } atomic_t; #error libdrm requires atomic operations, please define them for your CPU/compiler. #endif +static inline int atomic_add_unless(atomic_t *v, int add, int unless) +{ + int c, old; + c = atomic_read(v); + while (c != unless (old = atomic_cmpxchg(v, c, c + add)) != c) + c = old; + return c == unless; +} + #endif Index: xsrc/external/mit/libdrm/dist/xf86drm.c diff -u xsrc/external/mit/libdrm/dist/xf86drm.c:1.8 xsrc/external/mit/libdrm/dist/xf86drm.c:1.9 --- xsrc/external/mit/libdrm/dist/xf86drm.c:1.8 Fri Jul 11 19:57:33 2014 +++ xsrc/external/mit/libdrm/dist/xf86drm.c Sat Dec 13 21:39:07 2014 @@ -48,7 +48,6 @@ #include sys/stat.h #define stat_t struct stat #include sys/ioctl.h -#include sys/mman.h #include sys/time.h #include stdarg.h @@ -58,6 +57,7 @@ #endif #include xf86drm.h +#include libdrm.h #if defined(__FreeBSD__) || defined(__FreeBSD_kernel__) || defined(__DragonFly__) #define DRM_MAJOR 145 @@ -542,19 +542,6 @@ static int drmOpenByName(const char *nam int fd; drmVersionPtr version; char *id; - -if (!drmAvailable()) { - if (!drm_server_info) { - return -1; - } - else { - /* try to load the kernel module now */ - if (!drm_server_info-load_module(name)) { - drmMsg([drm] failed to load kernel module \%s\\n, name); - return -1; - } - } -} /* * Open the first minor number that matches the driver name and isn't @@ -1165,7 +1152,7 @@ int drmMap(int fd, drm_handle_t handle, return 0; } #endif -*address = mmap(0, size, PROT_READ|PROT_WRITE, MAP_SHARED, fd, handle); +*address = drm_mmap(0, size, PROT_READ|PROT_WRITE, MAP_SHARED, fd, handle); if (*address == MAP_FAILED) return -errno; return 0; @@ -1185,7 +1172,7 @@ int drmMap(int fd, drm_handle_t handle, */ int drmUnmap(drmAddress address, drmSize size) { -return munmap(address, size); +return drm_munmap(address, size); } drmBufInfoPtr drmGetBufInfo(int fd) @@ -1292,7 +1279,7 @@ int drmUnmapBufs(drmBufMapPtr bufs)
CVS commit: xsrc/external/mit/libdrm/dist
Module Name:xsrc Committed By: mrg Date: Sat Dec 13 21:41:20 UTC 2014 Modified Files: xsrc/external/mit/libdrm/dist: xf86drmMode.c Log Message: fix a merge botch. To generate a diff of this commit: cvs rdiff -u -r1.7 -r1.8 xsrc/external/mit/libdrm/dist/xf86drmMode.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/libdrm/dist/xf86drmMode.c diff -u xsrc/external/mit/libdrm/dist/xf86drmMode.c:1.7 xsrc/external/mit/libdrm/dist/xf86drmMode.c:1.8 --- xsrc/external/mit/libdrm/dist/xf86drmMode.c:1.7 Sat Dec 13 21:39:07 2014 +++ xsrc/external/mit/libdrm/dist/xf86drmMode.c Sat Dec 13 21:41:19 2014 @@ -806,6 +806,8 @@ int drmCheckModesettingSupported(const c return -EINVAL; return (modesetting ? 0 : -ENOSYS); } +#elif defined(__DragonFly__) + return 0; #else int fd; static const struct drm_mode_card_res zero_res; @@ -819,8 +821,6 @@ int drmCheckModesettingSupported(const c drmClose(fd); if (ret == 0) return 0; -#elif defined(__DragonFly__) - return 0; #endif return -ENOSYS;
CVS commit: xsrc/external/mit/libdrm/dist/radeon
Module Name:xsrc Committed By: mrg Date: Thu Aug 14 20:56:10 UTC 2014 Modified Files: xsrc/external/mit/libdrm/dist/radeon: radeon_bo_gem.c Log Message: convert an mmap() to drmMap(). To generate a diff of this commit: cvs rdiff -u -r1.3 -r1.4 xsrc/external/mit/libdrm/dist/radeon/radeon_bo_gem.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/libdrm/dist/radeon/radeon_bo_gem.c diff -u xsrc/external/mit/libdrm/dist/radeon/radeon_bo_gem.c:1.3 xsrc/external/mit/libdrm/dist/radeon/radeon_bo_gem.c:1.4 --- xsrc/external/mit/libdrm/dist/radeon/radeon_bo_gem.c:1.3 Mon Mar 17 07:52:19 2014 +++ xsrc/external/mit/libdrm/dist/radeon/radeon_bo_gem.c Thu Aug 14 20:56:10 2014 @@ -178,8 +178,8 @@ static int bo_map(struct radeon_bo_int * boi, boi-handle, r); return r; } -ptr = mmap(0, args.size, PROT_READ|PROT_WRITE, MAP_SHARED, boi-bom-fd, args.addr_ptr); -if (ptr == MAP_FAILED) +r = drmMap(boi-bom-fd, args.addr_ptr, args.size, ptr); +if (r) return -errno; bo_gem-priv_ptr = ptr; wait:
CVS commit: xsrc/external/mit/libdrm/dist/radeon
Module Name:xsrc Committed By: mrg Date: Fri Jul 11 20:12:52 UTC 2014 Modified Files: xsrc/external/mit/libdrm/dist/radeon: radeon_surface.c Log Message: reduce diffs to upstream To generate a diff of this commit: cvs rdiff -u -r1.3 -r1.4 \ xsrc/external/mit/libdrm/dist/radeon/radeon_surface.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/libdrm/dist/radeon/radeon_surface.c diff -u xsrc/external/mit/libdrm/dist/radeon/radeon_surface.c:1.3 xsrc/external/mit/libdrm/dist/radeon/radeon_surface.c:1.4 --- xsrc/external/mit/libdrm/dist/radeon/radeon_surface.c:1.3 Fri Jul 11 19:57:33 2014 +++ xsrc/external/mit/libdrm/dist/radeon/radeon_surface.c Fri Jul 11 20:12:52 2014 @@ -282,7 +282,7 @@ static int r6_surface_init_linear(struct surf_minify(surf, surf-level+i, surf-bpe, i, xalign, yalign, zalign, offset); /* level0 and first mipmap need to have alignment */ offset = surf-bo_size; -if (i == 0) { +if ((i == 0)) { offset = ALIGN(offset, surf-bo_alignment); } } @@ -310,7 +310,7 @@ static int r6_surface_init_linear_aligne surf_minify(surf, surf-level+i, surf-bpe, i, xalign, yalign, zalign, offset); /* level0 and first mipmap need to have alignment */ offset = surf-bo_size; -if (i == 0) { +if ((i == 0)) { offset = ALIGN(offset, surf-bo_alignment); } } @@ -343,7 +343,7 @@ static int r6_surface_init_1d(struct rad surf_minify(surf, surf-level+i, surf-bpe, i, xalign, yalign, zalign, offset); /* level0 and first mipmap need to have alignment */ offset = surf-bo_size; -if (i == 0) { +if ((i == 0)) { offset = ALIGN(offset, surf-bo_alignment); } } @@ -384,7 +384,7 @@ static int r6_surface_init_2d(struct rad } /* level0 and first mipmap need to have alignment */ offset = surf-bo_size; -if (i == 0) { +if ((i == 0)) { offset = ALIGN(offset, surf-bo_alignment); } } @@ -632,7 +632,7 @@ static int eg_surface_init_1d(struct rad surf_minify(surf, level+i, bpe, i, xalign, yalign, zalign, offset); /* level0 and first mipmap need to have alignment */ offset = surf-bo_size; -if (i == 0) { +if ((i == 0)) { offset = ALIGN(offset, surf-bo_alignment); } } @@ -685,7 +685,7 @@ static int eg_surface_init_2d(struct rad } /* level0 and first mipmap need to have alignment */ offset = surf-bo_size; -if (i == 0) { +if ((i == 0)) { offset = ALIGN(offset, surf-bo_alignment); } } @@ -1524,7 +1524,7 @@ static int si_surface_init_linear_aligne si_surf_minify(surf, surf-level+i, surf-bpe, i, xalign, yalign, zalign, slice_align, offset); /* level0 and first mipmap need to have alignment */ offset = surf-bo_size; -if (i == 0) { +if ((i == 0)) { offset = ALIGN(offset, surf-bo_alignment); } if (surf-flags RADEON_SURF_HAS_TILE_MODE_INDEX) { @@ -1567,7 +1567,7 @@ static int si_surface_init_1d(struct rad si_surf_minify(surf, level+i, bpe, i, xalign, yalign, zalign, slice_align, offset); /* level0 and first mipmap need to have alignment */ offset = surf-bo_size; -if (i == 0) { +if ((i == 0)) { offset = ALIGN(offset, alignment); } if (surf-flags RADEON_SURF_HAS_TILE_MODE_INDEX) { @@ -1669,7 +1669,7 @@ static int si_surface_init_2d(struct rad } /* level0 and first mipmap need to have alignment */ aligned_offset = offset = surf-bo_size; -if (i == 0) { +if ((i == 0)) { aligned_offset = ALIGN(aligned_offset, surf-bo_alignment); } if (surf-flags RADEON_SURF_HAS_TILE_MODE_INDEX) {
CVS commit: xsrc/external/mit/libdrm/dist
Module Name:xsrc Committed By: mrg Date: Fri Jul 11 20:03:34 UTC 2014 Modified Files: xsrc/external/mit/libdrm/dist: xf86drmMode.h Log Message: fix a merge botch To generate a diff of this commit: cvs rdiff -u -r1.1.1.3 -r1.2 xsrc/external/mit/libdrm/dist/xf86drmMode.h 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/libdrm/dist/xf86drmMode.h diff -u xsrc/external/mit/libdrm/dist/xf86drmMode.h:1.1.1.3 xsrc/external/mit/libdrm/dist/xf86drmMode.h:1.2 --- xsrc/external/mit/libdrm/dist/xf86drmMode.h:1.1.1.3 Fri Jul 11 19:51:38 2014 +++ xsrc/external/mit/libdrm/dist/xf86drmMode.h Fri Jul 11 20:03:34 2014 @@ -445,7 +445,7 @@ extern drmModePlaneResPtr drmModeGetPlan extern drmModePlanePtr drmModeGetPlane(int fd, uint32_t plane_id); extern int drmModeSetPlane(int fd, uint32_t plane_id, uint32_t crtc_id, uint32_t fb_id, uint32_t flags, - int32_t crtc_x, int32_t crtc_y, + uint32_t crtc_x, uint32_t crtc_y, uint32_t crtc_w, uint32_t crtc_h, uint32_t src_x, uint32_t src_y, uint32_t src_w, uint32_t src_h);
CVS commit: xsrc/external/mit/libdrm/dist
Module Name:xsrc Committed By: mrg Date: Fri Jul 11 20:45:15 UTC 2014 Modified Files: xsrc/external/mit/libdrm/dist: xf86drmMode.c Log Message: fix merge botch botch. To generate a diff of this commit: cvs rdiff -u -r1.5 -r1.6 xsrc/external/mit/libdrm/dist/xf86drmMode.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/libdrm/dist/xf86drmMode.c diff -u xsrc/external/mit/libdrm/dist/xf86drmMode.c:1.5 xsrc/external/mit/libdrm/dist/xf86drmMode.c:1.6 --- xsrc/external/mit/libdrm/dist/xf86drmMode.c:1.5 Fri Jul 11 19:57:33 2014 +++ xsrc/external/mit/libdrm/dist/xf86drmMode.c Fri Jul 11 20:45:15 2014 @@ -919,7 +919,7 @@ int drmModePageFlip(int fd, uint32_t crt int drmModeSetPlane(int fd, uint32_t plane_id, uint32_t crtc_id, uint32_t fb_id, uint32_t flags, - int32_t crtc_x, int32_t crtc_y, + uint32_t crtc_x, uint32_t crtc_y, uint32_t crtc_w, uint32_t crtc_h, uint32_t src_x, uint32_t src_y, uint32_t src_w, uint32_t src_h)
CVS commit: xsrc/external/mit/libdrm/dist
Module Name:xsrc Committed By: riastradh Date: Wed Jul 9 14:12:39 UTC 2014 Modified Files: xsrc/external/mit/libdrm/dist: xf86atomic.h Log Message: Fix libdrm's atomic_dec_and_test on NetBSD (and Solaris, while here). _nv means new value, not old value! This may help to fix various instability in userland graphics, now that we aren't freeing stuff with a reference count of 1 any more. To generate a diff of this commit: cvs rdiff -u -r1.3 -r1.4 xsrc/external/mit/libdrm/dist/xf86atomic.h 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/libdrm/dist/xf86atomic.h diff -u xsrc/external/mit/libdrm/dist/xf86atomic.h:1.3 xsrc/external/mit/libdrm/dist/xf86atomic.h:1.4 --- xsrc/external/mit/libdrm/dist/xf86atomic.h:1.3 Sat Aug 14 10:19:31 2010 +++ xsrc/external/mit/libdrm/dist/xf86atomic.h Wed Jul 9 14:12:39 2014 @@ -85,7 +85,7 @@ typedef struct { uint_t atomic; } atomic # define atomic_read(x) (int) ((x)-atomic) # define atomic_set(x, val) ((x)-atomic = (uint_t)(val)) # define atomic_inc(x) (atomic_inc_uint ((x)-atomic)) -# define atomic_dec_and_test(x) (atomic_dec_uint_nv((x)-atomic) == 1) +# define atomic_dec_and_test(x) (atomic_dec_uint_nv((x)-atomic) == 0) # define atomic_add(x, v) (atomic_add_int((x)-atomic, (v))) # define atomic_dec(x, v) (atomic_add_int((x)-atomic, -(v))) # define atomic_cmpxchg(x, oldv, newv) atomic_cas_uint ((x)-atomic, oldv, newv) @@ -102,7 +102,7 @@ typedef struct { int atomic; } atomic_t; # define atomic_read(x) (int) ((x)-atomic) # define atomic_set(x, val) ((x)-atomic = (val)) # define atomic_inc(x) (atomic_inc_uint ((x)-atomic)) -# define atomic_dec_and_test(x) (atomic_dec_uint_nv((x)-atomic) == 1) +# define atomic_dec_and_test(x) (atomic_dec_uint_nv((x)-atomic) == 0) # define atomic_add(x, v) (atomic_add_int((x)-atomic, (v))) # define atomic_dec(x, v) (atomic_add_int((x)-atomic, -(v))) # define atomic_cmpxchg(x, oldv, newv) atomic_cas_uint ((x)-atomic, oldv, newv)
CVS commit: xsrc/external/mit/libdrm/dist/intel
Module Name:xsrc Committed By: joerg Date: Wed May 7 21:24:25 UTC 2014 Modified Files: xsrc/external/mit/libdrm/dist/intel: intel_bufmgr_gem.c Log Message: Fix format strings. To generate a diff of this commit: cvs rdiff -u -r1.7 -r1.8 \ xsrc/external/mit/libdrm/dist/intel/intel_bufmgr_gem.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/libdrm/dist/intel/intel_bufmgr_gem.c diff -u xsrc/external/mit/libdrm/dist/intel/intel_bufmgr_gem.c:1.7 xsrc/external/mit/libdrm/dist/intel/intel_bufmgr_gem.c:1.8 --- xsrc/external/mit/libdrm/dist/intel/intel_bufmgr_gem.c:1.7 Fri Mar 21 18:11:21 2014 +++ xsrc/external/mit/libdrm/dist/intel/intel_bufmgr_gem.c Wed May 7 21:24:25 2014 @@ -386,13 +386,13 @@ drm_intel_gem_dump_validation_list(drm_i (drm_intel_bo_gem *) target_bo; DBG(%2d: %d (%s)@0x%08llx - - %d (%s)@0x%08lx + 0x%08x\n, + %d (%s)@0x%08llx + 0x%08x\n, i, bo_gem-gem_handle, bo_gem-name, (unsigned long long)bo_gem-relocs[j].offset, target_gem-gem_handle, target_gem-name, - target_bo-offset64, + (unsigned long long)target_bo-offset64, bo_gem-relocs[j].delta); } } @@ -1858,8 +1858,9 @@ drm_intel_update_buffer_offsets(drm_inte /* Update the buffer offset */ if (bufmgr_gem-exec_objects[i].offset != bo-offset64) { - DBG(BO %d (%s) migrated: 0x%08lx - 0x%08llx\n, - bo_gem-gem_handle, bo_gem-name, bo-offset64, + DBG(BO %d (%s) migrated: 0x%08llx - 0x%08llx\n, + bo_gem-gem_handle, bo_gem-name, + (unsigned long long)bo-offset64, (unsigned long long)bufmgr_gem-exec_objects[i]. offset); bo-offset64 = bufmgr_gem-exec_objects[i].offset; @@ -1879,8 +1880,9 @@ drm_intel_update_buffer_offsets2 (drm_in /* Update the buffer offset */ if (bufmgr_gem-exec2_objects[i].offset != bo-offset64) { - DBG(BO %d (%s) migrated: 0x%08lx - 0x%08llx\n, - bo_gem-gem_handle, bo_gem-name, bo-offset64, + DBG(BO %d (%s) migrated: 0x%08llx - 0x%08llx\n, + bo_gem-gem_handle, bo_gem-name, + (unsigned long long)bo-offset64, (unsigned long long)bufmgr_gem-exec2_objects[i].offset); bo-offset64 = bufmgr_gem-exec2_objects[i].offset; bo-offset = bufmgr_gem-exec2_objects[i].offset;
CVS commit: xsrc/external/mit/libdrm/dist
Module Name:xsrc Committed By: riastradh Date: Fri Apr 4 12:30:12 UTC 2014 Modified Files: xsrc/external/mit/libdrm/dist: xf86drmMode.c xsrc/external/mit/libdrm/dist/tests/modetest: modetest.c Log Message: Oops... Fix sense of test in drmCheckModesettingSupported. To generate a diff of this commit: cvs rdiff -u -r1.3 -r1.4 xsrc/external/mit/libdrm/dist/xf86drmMode.c cvs rdiff -u -r1.1.1.4 -r1.2 \ xsrc/external/mit/libdrm/dist/tests/modetest/modetest.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/libdrm/dist/xf86drmMode.c diff -u xsrc/external/mit/libdrm/dist/xf86drmMode.c:1.3 xsrc/external/mit/libdrm/dist/xf86drmMode.c:1.4 --- xsrc/external/mit/libdrm/dist/xf86drmMode.c:1.3 Sat Mar 22 02:20:29 2014 +++ xsrc/external/mit/libdrm/dist/xf86drmMode.c Fri Apr 4 12:30:11 2014 @@ -782,13 +782,13 @@ int drmCheckModesettingSupported(const c fd = drmOpen(NULL, busid); if (fd == -1) return -EINVAL; - if (drmIoctl(fd, DRM_IOCTL_MODE_GETRESOURCES, res)) - ret = -errno; - else - ret = 0; + ret = drmIoctl(fd, DRM_IOCTL_MODE_GETRESOURCES, res); drmClose(fd); - return ret; + if (ret == 0) + return 0; #endif + return -ENOSYS; + } int drmModeCrtcGetGamma(int fd, uint32_t crtc_id, uint32_t size, Index: xsrc/external/mit/libdrm/dist/tests/modetest/modetest.c diff -u xsrc/external/mit/libdrm/dist/tests/modetest/modetest.c:1.1.1.4 xsrc/external/mit/libdrm/dist/tests/modetest/modetest.c:1.2 --- xsrc/external/mit/libdrm/dist/tests/modetest/modetest.c:1.1.1.4 Mon Mar 17 07:51:43 2014 +++ xsrc/external/mit/libdrm/dist/tests/modetest/modetest.c Fri Apr 4 12:30:11 2014 @@ -1195,6 +1195,17 @@ static void test_page_flip(struct device #define min(a, b) ((a) (b) ? (a) : (b)) +/* XXX local definition of GNUism for expedience */ +static char * +strchrnul(const char *s, int c) +{ + + while ((*s != c) (*s != '\0')) + s++; + + return __UNCONST(s); +} + static int parse_connector(struct pipe_arg *pipe, const char *arg) { unsigned int len;
CVS commit: xsrc/external/mit/libdrm/dist/tests/modetest
Module Name:xsrc Committed By: riastradh Date: Fri Apr 4 12:31:47 UTC 2014 Modified Files: xsrc/external/mit/libdrm/dist/tests/modetest: modetest.c Log Message: Back out unintended part of last commit. To generate a diff of this commit: cvs rdiff -u -r1.2 -r1.3 \ xsrc/external/mit/libdrm/dist/tests/modetest/modetest.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/libdrm/dist/tests/modetest/modetest.c diff -u xsrc/external/mit/libdrm/dist/tests/modetest/modetest.c:1.2 xsrc/external/mit/libdrm/dist/tests/modetest/modetest.c:1.3 --- xsrc/external/mit/libdrm/dist/tests/modetest/modetest.c:1.2 Fri Apr 4 12:30:11 2014 +++ xsrc/external/mit/libdrm/dist/tests/modetest/modetest.c Fri Apr 4 12:31:47 2014 @@ -1195,17 +1195,6 @@ static void test_page_flip(struct device #define min(a, b) ((a) (b) ? (a) : (b)) -/* XXX local definition of GNUism for expedience */ -static char * -strchrnul(const char *s, int c) -{ - - while ((*s != c) (*s != '\0')) - s++; - - return __UNCONST(s); -} - static int parse_connector(struct pipe_arg *pipe, const char *arg) { unsigned int len;
CVS commit: xsrc/external/mit/libdrm/dist/radeon
Module Name:xsrc Committed By: wiz Date: Sun Mar 30 12:28:05 UTC 2014 Modified Files: xsrc/external/mit/libdrm/dist/radeon: radeon_surface.c Log Message: Remove superfluous parentheses. (already sent upstream) To generate a diff of this commit: cvs rdiff -u -r1.1.1.1 -r1.2 \ xsrc/external/mit/libdrm/dist/radeon/radeon_surface.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/libdrm/dist/radeon/radeon_surface.c diff -u xsrc/external/mit/libdrm/dist/radeon/radeon_surface.c:1.1.1.1 xsrc/external/mit/libdrm/dist/radeon/radeon_surface.c:1.2 --- xsrc/external/mit/libdrm/dist/radeon/radeon_surface.c:1.1.1.1 Mon Mar 17 07:51:43 2014 +++ xsrc/external/mit/libdrm/dist/radeon/radeon_surface.c Sun Mar 30 12:28:05 2014 @@ -281,7 +281,7 @@ static int r6_surface_init_linear(struct surf_minify(surf, surf-level+i, surf-bpe, i, xalign, yalign, zalign, offset); /* level0 and first mipmap need to have alignment */ offset = surf-bo_size; -if ((i == 0)) { +if (i == 0) { offset = ALIGN(offset, surf-bo_alignment); } } @@ -309,7 +309,7 @@ static int r6_surface_init_linear_aligne surf_minify(surf, surf-level+i, surf-bpe, i, xalign, yalign, zalign, offset); /* level0 and first mipmap need to have alignment */ offset = surf-bo_size; -if ((i == 0)) { +if (i == 0) { offset = ALIGN(offset, surf-bo_alignment); } } @@ -342,7 +342,7 @@ static int r6_surface_init_1d(struct rad surf_minify(surf, surf-level+i, surf-bpe, i, xalign, yalign, zalign, offset); /* level0 and first mipmap need to have alignment */ offset = surf-bo_size; -if ((i == 0)) { +if (i == 0) { offset = ALIGN(offset, surf-bo_alignment); } } @@ -383,7 +383,7 @@ static int r6_surface_init_2d(struct rad } /* level0 and first mipmap need to have alignment */ offset = surf-bo_size; -if ((i == 0)) { +if (i == 0) { offset = ALIGN(offset, surf-bo_alignment); } } @@ -631,7 +631,7 @@ static int eg_surface_init_1d(struct rad surf_minify(surf, level+i, bpe, i, xalign, yalign, zalign, offset); /* level0 and first mipmap need to have alignment */ offset = surf-bo_size; -if ((i == 0)) { +if (i == 0) { offset = ALIGN(offset, surf-bo_alignment); } } @@ -684,7 +684,7 @@ static int eg_surface_init_2d(struct rad } /* level0 and first mipmap need to have alignment */ offset = surf-bo_size; -if ((i == 0)) { +if (i == 0) { offset = ALIGN(offset, surf-bo_alignment); } } @@ -1523,7 +1523,7 @@ static int si_surface_init_linear_aligne si_surf_minify(surf, surf-level+i, surf-bpe, i, xalign, yalign, zalign, slice_align, offset); /* level0 and first mipmap need to have alignment */ offset = surf-bo_size; -if ((i == 0)) { +if (i == 0) { offset = ALIGN(offset, surf-bo_alignment); } if (surf-flags RADEON_SURF_HAS_TILE_MODE_INDEX) { @@ -1566,7 +1566,7 @@ static int si_surface_init_1d(struct rad si_surf_minify(surf, level+i, bpe, i, xalign, yalign, zalign, slice_align, offset); /* level0 and first mipmap need to have alignment */ offset = surf-bo_size; -if ((i == 0)) { +if (i == 0) { offset = ALIGN(offset, alignment); } if (surf-flags RADEON_SURF_HAS_TILE_MODE_INDEX) { @@ -1668,7 +1668,7 @@ static int si_surface_init_2d(struct rad } /* level0 and first mipmap need to have alignment */ aligned_offset = offset = surf-bo_size; -if ((i == 0)) { +if (i == 0) { aligned_offset = ALIGN(aligned_offset, surf-bo_alignment); } if (surf-flags RADEON_SURF_HAS_TILE_MODE_INDEX) {
CVS commit: xsrc/external/mit/libdrm/dist
Module Name:xsrc Committed By: riastradh Date: Fri Mar 21 18:10:27 UTC 2014 Modified Files: xsrc/external/mit/libdrm/dist: xf86drmMode.c Log Message: Use ioctl, not sysfs, to detect KMS support on NetBSD. To generate a diff of this commit: cvs rdiff -u -r1.1.1.3 -r1.2 xsrc/external/mit/libdrm/dist/xf86drmMode.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/libdrm/dist/xf86drmMode.c diff -u xsrc/external/mit/libdrm/dist/xf86drmMode.c:1.1.1.3 xsrc/external/mit/libdrm/dist/xf86drmMode.c:1.2 --- xsrc/external/mit/libdrm/dist/xf86drmMode.c:1.1.1.3 Mon Mar 17 07:51:42 2014 +++ xsrc/external/mit/libdrm/dist/xf86drmMode.c Fri Mar 21 18:10:27 2014 @@ -774,6 +774,22 @@ int drmCheckModesettingSupported(const c if (found) return 0; #endif +#ifdef __NetBSD__ + int fd; + static const struct drm_mode_card_res zero_res; + struct drm_mode_card_res res = zero_res; + int ret; + + fd = drmOpen(NULL, busid); + if (fd == -1) + return -EINVAL; + if (drmIoctl(fd, DRM_IOCTL_MODE_GETRESOURCES, res)) + ret = -errno; + else + ret = 0; + drmClose(fd); + return ret; +#endif return -ENOSYS; }
CVS commit: xsrc/external/mit/libdrm/dist
Module Name:xsrc Committed By: riastradh Date: Fri Mar 21 18:09:50 UTC 2014 Modified Files: xsrc/external/mit/libdrm/dist: xf86drm.c xsrc/external/mit/libdrm/dist/include/drm: drm.h Log Message: Use the NetBSD-specific mmapping ioctl for drmMap. To generate a diff of this commit: cvs rdiff -u -r1.5 -r1.6 xsrc/external/mit/libdrm/dist/xf86drm.c cvs rdiff -u -r1.1.1.4 -r1.2 xsrc/external/mit/libdrm/dist/include/drm/drm.h 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/libdrm/dist/xf86drm.c diff -u xsrc/external/mit/libdrm/dist/xf86drm.c:1.5 xsrc/external/mit/libdrm/dist/xf86drm.c:1.6 --- xsrc/external/mit/libdrm/dist/xf86drm.c:1.5 Mon Mar 17 07:52:19 2014 +++ xsrc/external/mit/libdrm/dist/xf86drm.c Fri Mar 21 18:09:50 2014 @@ -1138,6 +1138,10 @@ int drmClose(int fd) int drmMap(int fd, drm_handle_t handle, drmSize size, drmAddressPtr address) { static unsigned long pagesize_mask = 0; +#ifdef __NetBSD__ /* XXX */ +static const struct drm_mmap zero_mmap_req; +struct drm_mmap mmap_req = zero_mmap_req; +#endif if (fd 0) return -EINVAL; @@ -1147,9 +1151,20 @@ int drmMap(int fd, drm_handle_t handle, size = (size + pagesize_mask) ~pagesize_mask; +#ifdef __NetBSD__ +mmap_req.dnm_addr = NULL; +mmap_req.dnm_size = size; +mmap_req.dnm_prot = (PROT_READ | PROT_WRITE); +mmap_req.dnm_flags = MAP_SHARED; +mmap_req.dnm_offset = handle; +if (drmIoctl(fd, DRM_IOCTL_MMAP, mmap_req) == -1) + return -errno; +*address = mmap_req.dnm_addr; +#else *address = mmap(0, size, PROT_READ|PROT_WRITE, MAP_SHARED, fd, handle); if (*address == MAP_FAILED) return -errno; +#endif return 0; } Index: xsrc/external/mit/libdrm/dist/include/drm/drm.h diff -u xsrc/external/mit/libdrm/dist/include/drm/drm.h:1.1.1.4 xsrc/external/mit/libdrm/dist/include/drm/drm.h:1.2 --- xsrc/external/mit/libdrm/dist/include/drm/drm.h:1.1.1.4 Mon Mar 17 07:51:43 2014 +++ xsrc/external/mit/libdrm/dist/include/drm/drm.h Fri Mar 21 18:09:49 2014 @@ -751,6 +751,20 @@ struct drm_prime_handle { #define DRM_IOCTL_MODE_OBJ_SETPROPERTY DRM_IOWR(0xBA, struct drm_mode_obj_set_property) #define DRM_IOCTL_MODE_CURSOR2 DRM_IOWR(0xBB, struct drm_mode_cursor2) +#ifdef __NetBSD__ +/* + * Instrumenting mmap is trickier than just making an ioctl to do it. + */ +struct drm_mmap { + void *dnm_addr; /* in/out */ + size_t dnm_size; /* in */ + int dnm_prot; /* in */ + int dnm_flags; /* in */ + off_t dnm_offset; /* in */ +}; +#define DRM_IOCTL_MMAP DRM_IOWR(0xff, struct drm_mmap) +#endif + /** * Device specific ioctls should only be in their respective headers * The device specific ioctl range is from 0x40 to 0x99.
CVS commit: xsrc/external/mit/libdrm/dist/intel
Module Name:xsrc Committed By: riastradh Date: Fri Mar 21 18:11:21 UTC 2014 Modified Files: xsrc/external/mit/libdrm/dist/intel: intel_bufmgr_gem.c Log Message: Switch intel_bufmgr_gem to use drmMap instead of mmap directly. To generate a diff of this commit: cvs rdiff -u -r1.6 -r1.7 \ xsrc/external/mit/libdrm/dist/intel/intel_bufmgr_gem.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/libdrm/dist/intel/intel_bufmgr_gem.c diff -u xsrc/external/mit/libdrm/dist/intel/intel_bufmgr_gem.c:1.6 xsrc/external/mit/libdrm/dist/intel/intel_bufmgr_gem.c:1.7 --- xsrc/external/mit/libdrm/dist/intel/intel_bufmgr_gem.c:1.6 Mon Mar 17 07:52:19 2014 +++ xsrc/external/mit/libdrm/dist/intel/intel_bufmgr_gem.c Fri Mar 21 18:11:21 2014 @@ -1271,12 +1271,10 @@ map_gtt(drm_intel_bo *bo) } /* and mmap it */ - bo_gem-gtt_virtual = mmap(0, bo-size, PROT_READ | PROT_WRITE, - MAP_SHARED, bufmgr_gem-fd, - mmap_arg.offset); - if (bo_gem-gtt_virtual == MAP_FAILED) { + ret = drmMap(bufmgr_gem-fd, mmap_arg.offset, bo-size, + bo_gem-gtt_virtual); + if (ret) { bo_gem-gtt_virtual = NULL; - ret = -errno; DBG(%s:%d: Error mapping buffer %d (%s): %s .\n, __FILE__, __LINE__, bo_gem-gem_handle, bo_gem-name,
CVS commit: xsrc/external/mit/libdrm/dist
Module Name:xsrc Committed By: riastradh Date: Sat Mar 22 02:15:00 UTC 2014 Modified Files: xsrc/external/mit/libdrm/dist: xf86drm.c Log Message: Use #ifdef DRM_IOCTL_MMAP, not #ifdef __NetBSD__. Initialize with `= {0}' rather than a temporary static constant variable. Requested by christos@. To generate a diff of this commit: cvs rdiff -u -r1.6 -r1.7 xsrc/external/mit/libdrm/dist/xf86drm.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/libdrm/dist/xf86drm.c diff -u xsrc/external/mit/libdrm/dist/xf86drm.c:1.6 xsrc/external/mit/libdrm/dist/xf86drm.c:1.7 --- xsrc/external/mit/libdrm/dist/xf86drm.c:1.6 Fri Mar 21 18:09:50 2014 +++ xsrc/external/mit/libdrm/dist/xf86drm.c Sat Mar 22 02:15:00 2014 @@ -1138,9 +1138,8 @@ int drmClose(int fd) int drmMap(int fd, drm_handle_t handle, drmSize size, drmAddressPtr address) { static unsigned long pagesize_mask = 0; -#ifdef __NetBSD__ /* XXX */ -static const struct drm_mmap zero_mmap_req; -struct drm_mmap mmap_req = zero_mmap_req; +#ifdef DRM_IOCTL_MMAP +struct drm_mmap mmap_req = {0}; #endif if (fd 0) @@ -1151,20 +1150,20 @@ int drmMap(int fd, drm_handle_t handle, size = (size + pagesize_mask) ~pagesize_mask; -#ifdef __NetBSD__ +#ifdef DRM_IOCTL_MMAP mmap_req.dnm_addr = NULL; mmap_req.dnm_size = size; mmap_req.dnm_prot = (PROT_READ | PROT_WRITE); mmap_req.dnm_flags = MAP_SHARED; mmap_req.dnm_offset = handle; -if (drmIoctl(fd, DRM_IOCTL_MMAP, mmap_req) == -1) - return -errno; -*address = mmap_req.dnm_addr; -#else +if (drmIoctl(fd, DRM_IOCTL_MMAP, mmap_req) == 0) { + *address = mmap_req.dnm_addr; + return 0; +} +#endif *address = mmap(0, size, PROT_READ|PROT_WRITE, MAP_SHARED, fd, handle); if (*address == MAP_FAILED) return -errno; -#endif return 0; }
CVS commit: xsrc/external/mit/libdrm/dist
Module Name:xsrc Committed By: riastradh Date: Sat Mar 22 02:20:29 UTC 2014 Modified Files: xsrc/external/mit/libdrm/dist: xf86drmMode.c Log Message: Use DRM_IOCTL_MODE_GETRESOURCES to detect KMS on any non-Linux. To generate a diff of this commit: cvs rdiff -u -r1.2 -r1.3 xsrc/external/mit/libdrm/dist/xf86drmMode.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/libdrm/dist/xf86drmMode.c diff -u xsrc/external/mit/libdrm/dist/xf86drmMode.c:1.2 xsrc/external/mit/libdrm/dist/xf86drmMode.c:1.3 --- xsrc/external/mit/libdrm/dist/xf86drmMode.c:1.2 Fri Mar 21 18:10:27 2014 +++ xsrc/external/mit/libdrm/dist/xf86drmMode.c Sat Mar 22 02:20:29 2014 @@ -773,8 +773,7 @@ int drmCheckModesettingSupported(const c closedir(sysdir); if (found) return 0; -#endif -#ifdef __NetBSD__ +#else int fd; static const struct drm_mode_card_res zero_res; struct drm_mode_card_res res = zero_res; @@ -790,8 +789,6 @@ int drmCheckModesettingSupported(const c drmClose(fd); return ret; #endif - return -ENOSYS; - } int drmModeCrtcGetGamma(int fd, uint32_t crtc_id, uint32_t size,
CVS commit: xsrc/external/mit/libdrm/dist/radeon
Module Name:xsrc Committed By: mrg Date: Sun Jul 24 12:00:17 UTC 2011 Modified Files: xsrc/external/mit/libdrm/dist/radeon: radeon_bo_gem.c Log Message: avoid a C construct lint complains about. To generate a diff of this commit: cvs rdiff -u -r1.1.1.2 -r1.2 \ xsrc/external/mit/libdrm/dist/radeon/radeon_bo_gem.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/libdrm/dist/radeon/radeon_bo_gem.c diff -u xsrc/external/mit/libdrm/dist/radeon/radeon_bo_gem.c:1.1.1.2 xsrc/external/mit/libdrm/dist/radeon/radeon_bo_gem.c:1.2 --- xsrc/external/mit/libdrm/dist/radeon/radeon_bo_gem.c:1.1.1.2 Sat Jul 23 08:37:48 2011 +++ xsrc/external/mit/libdrm/dist/radeon/radeon_bo_gem.c Sun Jul 24 12:00:17 2011 @@ -252,9 +252,10 @@ static int bo_get_tiling(struct radeon_bo_int *boi, uint32_t *tiling_flags, uint32_t *pitch) { -struct drm_radeon_gem_set_tiling args = {}; +struct drm_radeon_gem_set_tiling args; int r; +memset(args, 0, sizeof args); args.handle = boi-handle; r = drmCommandWriteRead(boi-bom-fd,
CVS commit: xsrc/external/mit/libdrm/dist/radeon
Module Name:xsrc Committed By: mrg Date: Sun Jul 24 12:26:14 UTC 2011 Modified Files: xsrc/external/mit/libdrm/dist/radeon: radeon_cs_gem.c Log Message: avoid a C construct lint complains about. To generate a diff of this commit: cvs rdiff -u -r1.1.1.3 -r1.2 \ xsrc/external/mit/libdrm/dist/radeon/radeon_cs_gem.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/libdrm/dist/radeon/radeon_cs_gem.c diff -u xsrc/external/mit/libdrm/dist/radeon/radeon_cs_gem.c:1.1.1.3 xsrc/external/mit/libdrm/dist/radeon/radeon_cs_gem.c:1.2 --- xsrc/external/mit/libdrm/dist/radeon/radeon_cs_gem.c:1.1.1.3 Sat Jul 23 08:37:48 2011 +++ xsrc/external/mit/libdrm/dist/radeon/radeon_cs_gem.c Sun Jul 24 12:26:14 2011 @@ -517,9 +517,10 @@ static int radeon_get_device_id(int fd, uint32_t *device_id) { -struct drm_radeon_info info = {}; +struct drm_radeon_info info; int r; +memset(info, 0, sizeof info); *device_id = 0; info.request = RADEON_INFO_DEVICE_ID; info.value = (uintptr_t)device_id;
CVS commit: xsrc/external/mit/libdrm/dist
Module Name:xsrc Committed By: mrg Date: Sat Jul 23 08:37:51 UTC 2011 Update of /cvsroot/xsrc/external/mit/libdrm/dist In directory ivanova.netbsd.org:/tmp/cvs-serv25990 Log Message: initial import of libdrm-2.4.23 Status: Vendor Tag: xorg Release Tags: libdrm-2-4-23 U xsrc/external/mit/libdrm/dist/xf86drmMode.h U xsrc/external/mit/libdrm/dist/depcomp U xsrc/external/mit/libdrm/dist/xf86drmHash.c U xsrc/external/mit/libdrm/dist/xf86drmSL.c U xsrc/external/mit/libdrm/dist/config.h.in U xsrc/external/mit/libdrm/dist/Makefile.in U xsrc/external/mit/libdrm/dist/missing C xsrc/external/mit/libdrm/dist/xf86drm.c U xsrc/external/mit/libdrm/dist/Makefile.am U xsrc/external/mit/libdrm/dist/ltmain.sh U xsrc/external/mit/libdrm/dist/config.sub U xsrc/external/mit/libdrm/dist/aclocal.m4 U xsrc/external/mit/libdrm/dist/configure.ac U xsrc/external/mit/libdrm/dist/libdrm.pc.in U xsrc/external/mit/libdrm/dist/xf86drmRandom.c U xsrc/external/mit/libdrm/dist/README U xsrc/external/mit/libdrm/dist/install-sh U xsrc/external/mit/libdrm/dist/configure U xsrc/external/mit/libdrm/dist/config.guess U xsrc/external/mit/libdrm/dist/xf86drmMode.c U xsrc/external/mit/libdrm/dist/libdrm_lists.h U xsrc/external/mit/libdrm/dist/xf86atomic.h U xsrc/external/mit/libdrm/dist/xf86drm.h U xsrc/external/mit/libdrm/dist/intel/intel_bufmgr_fake.c U xsrc/external/mit/libdrm/dist/intel/intel_chipset.h U xsrc/external/mit/libdrm/dist/intel/intel_bufmgr.c U xsrc/external/mit/libdrm/dist/intel/intel_bufmgr_priv.h U xsrc/external/mit/libdrm/dist/intel/Makefile.in U xsrc/external/mit/libdrm/dist/intel/mm.h U xsrc/external/mit/libdrm/dist/intel/mm.c C xsrc/external/mit/libdrm/dist/intel/intel_bufmgr_gem.c U xsrc/external/mit/libdrm/dist/intel/Makefile.am U xsrc/external/mit/libdrm/dist/intel/libdrm_intel.pc.in U xsrc/external/mit/libdrm/dist/intel/intel_bufmgr.h U xsrc/external/mit/libdrm/dist/nouveau/nouveau_pushbuf.c U xsrc/external/mit/libdrm/dist/nouveau/nouveau_drmif.h U xsrc/external/mit/libdrm/dist/nouveau/nouveau_reloc.c U xsrc/external/mit/libdrm/dist/nouveau/Makefile.in U xsrc/external/mit/libdrm/dist/nouveau/nouveau_private.h U xsrc/external/mit/libdrm/dist/nouveau/nouveau_pushbuf.h U xsrc/external/mit/libdrm/dist/nouveau/nouveau_resource.h U xsrc/external/mit/libdrm/dist/nouveau/Makefile.am U xsrc/external/mit/libdrm/dist/nouveau/nouveau_notifier.c U xsrc/external/mit/libdrm/dist/nouveau/nouveau_channel.c U xsrc/external/mit/libdrm/dist/nouveau/nouveau_bo.c U xsrc/external/mit/libdrm/dist/nouveau/nouveau_device.c U xsrc/external/mit/libdrm/dist/nouveau/nouveau_channel.h U xsrc/external/mit/libdrm/dist/nouveau/nouveau_bo.h U xsrc/external/mit/libdrm/dist/nouveau/nouveau_notifier.h U xsrc/external/mit/libdrm/dist/nouveau/nouveau_resource.c U xsrc/external/mit/libdrm/dist/nouveau/nouveau_grobj.c U xsrc/external/mit/libdrm/dist/nouveau/libdrm_nouveau.pc.in U xsrc/external/mit/libdrm/dist/nouveau/nouveau_reloc.h U xsrc/external/mit/libdrm/dist/nouveau/nouveau_device.h U xsrc/external/mit/libdrm/dist/nouveau/nouveau_grobj.h U xsrc/external/mit/libdrm/dist/include/Makefile.in U xsrc/external/mit/libdrm/dist/include/Makefile.am U xsrc/external/mit/libdrm/dist/include/drm/nouveau_drm.h U xsrc/external/mit/libdrm/dist/include/drm/via_drm.h U xsrc/external/mit/libdrm/dist/include/drm/i810_drm.h U xsrc/external/mit/libdrm/dist/include/drm/i915_drm.h U xsrc/external/mit/libdrm/dist/include/drm/savage_drm.h U xsrc/external/mit/libdrm/dist/include/drm/Makefile.in U xsrc/external/mit/libdrm/dist/include/drm/sis_drm.h U xsrc/external/mit/libdrm/dist/include/drm/i830_drm.h U xsrc/external/mit/libdrm/dist/include/drm/r128_drm.h U xsrc/external/mit/libdrm/dist/include/drm/vmwgfx_drm.h U xsrc/external/mit/libdrm/dist/include/drm/Makefile.am U xsrc/external/mit/libdrm/dist/include/drm/radeon_drm.h U xsrc/external/mit/libdrm/dist/include/drm/mga_drm.h U xsrc/external/mit/libdrm/dist/include/drm/drm_sarea.h U xsrc/external/mit/libdrm/dist/include/drm/Makefile U xsrc/external/mit/libdrm/dist/include/drm/mach64_drm.h U xsrc/external/mit/libdrm/dist/include/drm/drm.h U xsrc/external/mit/libdrm/dist/include/drm/drm_mode.h U xsrc/external/mit/libdrm/dist/tests/gem_readwrite.c U xsrc/external/mit/libdrm/dist/tests/openclose.c U xsrc/external/mit/libdrm/dist/tests/Makefile.in U xsrc/external/mit/libdrm/dist/tests/getversion.c U xsrc/external/mit/libdrm/dist/tests/drmstat.c U xsrc/external/mit/libdrm/dist/tests/Makefile.am U xsrc/external/mit/libdrm/dist/tests/drmtest.c U xsrc/external/mit/libdrm/dist/tests/gem_mmap.c U xsrc/external/mit/libdrm/dist/tests/getclient.c U xsrc/external/mit/libdrm/dist/tests/gem_basic.c U xsrc/external/mit/libdrm/dist/tests/name_from_fd.c U xsrc/external/mit/libdrm/dist/tests/updatedraw.c U xsrc/external/mit/libdrm/dist/tests/drmtest.h U xsrc/external/mit/libdrm/dist/tests/getstats.c U xsrc/external/mit/libdrm/dist/tests/gem_flink.c U xsrc/external/mit/libdrm/dist/tests/setversion.c U
CVS commit: xsrc/external/mit/libdrm/dist
Module Name:xsrc Committed By: mrg Date: Sat Jul 23 08:38:43 UTC 2011 Modified Files: xsrc/external/mit/libdrm/dist: xf86drm.c xsrc/external/mit/libdrm/dist/intel: intel_bufmgr_gem.c Log Message: merge libdrm 2.4.23 To generate a diff of this commit: cvs rdiff -u -r1.3 -r1.4 xsrc/external/mit/libdrm/dist/xf86drm.c cvs rdiff -u -r1.4 -r1.5 \ xsrc/external/mit/libdrm/dist/intel/intel_bufmgr_gem.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/libdrm/dist/xf86drm.c diff -u xsrc/external/mit/libdrm/dist/xf86drm.c:1.3 xsrc/external/mit/libdrm/dist/xf86drm.c:1.4 --- xsrc/external/mit/libdrm/dist/xf86drm.c:1.3 Sun Nov 21 07:51:29 2010 +++ xsrc/external/mit/libdrm/dist/xf86drm.c Sat Jul 23 08:38:43 2011 @@ -156,23 +156,6 @@ free(pt); } -/* drmStrdup can't use strdup(3), since it doesn't call _DRM_MALLOC... */ -static char *drmStrdup(const char *s) -{ -char *retval; - -if (!s) -return NULL; - -retval = malloc(strlen(s)+1); -if (!retval) -return NULL; - -strcpy(retval, s); - -return retval; -} - /** * Call ioctl, restarting if it is interupted */ @@ -388,6 +371,7 @@ if (fd = 0) return fd; +#if !defined(UDEV) /* Check if the device node is not what we expect it to be, and recreate it * and try again if so. */ @@ -409,6 +393,7 @@ drmMsg(drmOpenDevice: Open failed\n); remove(buf); +#endif return -errno; } @@ -727,11 +712,11 @@ d-version_minor = s-version_minor; d-version_patchlevel = s-version_patchlevel; d-name_len = s-name_len; -d-name = drmStrdup(s-name); +d-name = strdup(s-name); d-date_len = s-date_len; -d-date = drmStrdup(s-date); +d-date = strdup(s-date); d-desc_len = s-desc_len; -d-desc = drmStrdup(s-desc); +d-desc = strdup(s-desc); } @@ -2544,5 +2529,5 @@ if (i == DRM_MAX_MINOR) return NULL; - return drmStrdup(name); + return strdup(name); } Index: xsrc/external/mit/libdrm/dist/intel/intel_bufmgr_gem.c diff -u xsrc/external/mit/libdrm/dist/intel/intel_bufmgr_gem.c:1.4 xsrc/external/mit/libdrm/dist/intel/intel_bufmgr_gem.c:1.5 --- xsrc/external/mit/libdrm/dist/intel/intel_bufmgr_gem.c:1.4 Sun Nov 21 07:51:29 2010 +++ xsrc/external/mit/libdrm/dist/intel/intel_bufmgr_gem.c Sat Jul 23 08:38:43 2011 @@ -100,7 +100,10 @@ int available_fences; int pci_device; int gen; - char bo_reuse; + unsigned int has_bsd : 1; + unsigned int has_blt : 1; + unsigned int has_relaxed_fencing : 1; + unsigned int bo_reuse : 1; char fenced_relocs; } drm_intel_bufmgr_gem; @@ -242,6 +245,10 @@ return size; } + /* Do we need to allocate every page for the fence? */ + if (bufmgr_gem-has_relaxed_fencing) + return ROUND_UP_TO(size, 4096); + for (i = min_size; i size; i = 1) ; @@ -345,7 +352,6 @@ { drm_intel_bo_gem *bo_gem = (drm_intel_bo_gem *) bo; - assert(atomic_read(bo_gem-refcount) 0); atomic_inc(bo_gem-refcount); } @@ -462,8 +468,23 @@ * aperture. Optimal packing is for wimps. */ size = bo_gem-bo.size; - if (bufmgr_gem-gen 4 bo_gem-tiling_mode != I915_TILING_NONE) - size *= 2; + if (bufmgr_gem-gen 4 bo_gem-tiling_mode != I915_TILING_NONE) { + int min_size; + + if (bufmgr_gem-has_relaxed_fencing) { + if (bufmgr_gem-gen == 3) +min_size = 1024*1024; + else +min_size = 512*1024; + + while (min_size size) +min_size *= 2; + } else + min_size = size; + + /* Account for worst-case alignment. */ + size = 2 * min_size; + } bo_gem-reloc_tree_size = size; } @@ -783,8 +804,8 @@ DRM_IOCTL_GEM_OPEN, open_arg); if (ret != 0) { - fprintf(stderr, Couldn't reference %s handle 0x%08x: %s\n, - name, handle, strerror(errno)); + DBG(Couldn't reference %s handle 0x%08x: %s\n, + name, handle, strerror(errno)); free(bo_gem); return NULL; } @@ -836,9 +857,8 @@ close.handle = bo_gem-gem_handle; ret = drmIoctl(bufmgr_gem-fd, DRM_IOCTL_GEM_CLOSE, close); if (ret != 0) { - fprintf(stderr, - DRM_IOCTL_GEM_CLOSE %d failed (%s): %s\n, - bo_gem-gem_handle, bo_gem-name, strerror(errno)); + DBG(DRM_IOCTL_GEM_CLOSE %d failed (%s): %s\n, + bo_gem-gem_handle, bo_gem-name, strerror(errno)); } free(bo); } @@ -976,10 +996,9 @@ mmap_arg); if (ret != 0) { ret = -errno; - fprintf(stderr, -%s:%d: Error mapping buffer %d (%s): %s .\n, -__FILE__, __LINE__, bo_gem-gem_handle, -bo_gem-name, strerror(errno)); + DBG(%s:%d: Error mapping buffer %d (%s): %s .\n, + __FILE__, __LINE__, bo_gem-gem_handle, + bo_gem-name, strerror(errno)); pthread_mutex_unlock(bufmgr_gem-lock); return ret; } @@ -999,9 +1018,9 @@ DRM_IOCTL_I915_GEM_SET_DOMAIN, set_domain); if
CVS commit: xsrc/external/mit/libdrm/dist
Module Name:xsrc Committed By: mrg Date: Sat Aug 14 10:17:36 UTC 2010 Update of /cvsroot/xsrc/external/mit/libdrm/dist In directory ivanova.netbsd.org:/tmp/cvs-serv11604 Log Message: initial import of libdrm-2.4.21 Status: Vendor Tag: xorg Release Tags: libdrm-2-4-21 U xsrc/external/mit/libdrm/dist/xf86drmMode.h C xsrc/external/mit/libdrm/dist/xf86atomic.h U xsrc/external/mit/libdrm/dist/missing U xsrc/external/mit/libdrm/dist/depcomp U xsrc/external/mit/libdrm/dist/xf86drmSL.c U xsrc/external/mit/libdrm/dist/libdrm_lists.h U xsrc/external/mit/libdrm/dist/config.guess U xsrc/external/mit/libdrm/dist/Makefile.am U xsrc/external/mit/libdrm/dist/xf86drmRandom.c U xsrc/external/mit/libdrm/dist/install-sh U xsrc/external/mit/libdrm/dist/xf86drmHash.c U xsrc/external/mit/libdrm/dist/config.sub U xsrc/external/mit/libdrm/dist/Makefile.in U xsrc/external/mit/libdrm/dist/xf86drmMode.c U xsrc/external/mit/libdrm/dist/ltmain.sh U xsrc/external/mit/libdrm/dist/xf86drm.c U xsrc/external/mit/libdrm/dist/aclocal.m4 U xsrc/external/mit/libdrm/dist/README U xsrc/external/mit/libdrm/dist/config.h.in U xsrc/external/mit/libdrm/dist/configure.ac U xsrc/external/mit/libdrm/dist/configure U xsrc/external/mit/libdrm/dist/libdrm.pc.in U xsrc/external/mit/libdrm/dist/xf86drm.h U xsrc/external/mit/libdrm/dist/nouveau/nouveau_resource.c U xsrc/external/mit/libdrm/dist/nouveau/nouveau_device.c U xsrc/external/mit/libdrm/dist/nouveau/nouveau_private.h U xsrc/external/mit/libdrm/dist/nouveau/nouveau_device.h U xsrc/external/mit/libdrm/dist/nouveau/nouveau_grobj.h U xsrc/external/mit/libdrm/dist/nouveau/nouveau_reloc.c U xsrc/external/mit/libdrm/dist/nouveau/nouveau_bo.c U xsrc/external/mit/libdrm/dist/nouveau/nouveau_notifier.c U xsrc/external/mit/libdrm/dist/nouveau/Makefile.am U xsrc/external/mit/libdrm/dist/nouveau/nouveau_resource.h U xsrc/external/mit/libdrm/dist/nouveau/nouveau_channel.h U xsrc/external/mit/libdrm/dist/nouveau/nouveau_grobj.c U xsrc/external/mit/libdrm/dist/nouveau/nouveau_notifier.h U xsrc/external/mit/libdrm/dist/nouveau/nouveau_bo.h U xsrc/external/mit/libdrm/dist/nouveau/libdrm_nouveau.pc.in U xsrc/external/mit/libdrm/dist/nouveau/Makefile.in U xsrc/external/mit/libdrm/dist/nouveau/nouveau_pushbuf.h U xsrc/external/mit/libdrm/dist/nouveau/nouveau_drmif.h U xsrc/external/mit/libdrm/dist/nouveau/nouveau_channel.c U xsrc/external/mit/libdrm/dist/nouveau/nouveau_pushbuf.c U xsrc/external/mit/libdrm/dist/nouveau/nouveau_reloc.h U xsrc/external/mit/libdrm/dist/radeon/radeon_cs_space.c U xsrc/external/mit/libdrm/dist/radeon/Makefile.am U xsrc/external/mit/libdrm/dist/radeon/radeon_bo_int.h U xsrc/external/mit/libdrm/dist/radeon/radeon_cs.c U xsrc/external/mit/libdrm/dist/radeon/radeon_bo.c N xsrc/external/mit/libdrm/dist/radeon/bof.h U xsrc/external/mit/libdrm/dist/radeon/radeon_cs.h U xsrc/external/mit/libdrm/dist/radeon/libdrm_radeon.pc.in U xsrc/external/mit/libdrm/dist/radeon/Makefile.in U xsrc/external/mit/libdrm/dist/radeon/radeon_cs_gem.h U xsrc/external/mit/libdrm/dist/radeon/radeon_cs_gem.c U xsrc/external/mit/libdrm/dist/radeon/radeon_bo_gem.c U xsrc/external/mit/libdrm/dist/radeon/radeon_cs_int.h N xsrc/external/mit/libdrm/dist/radeon/bof.c U xsrc/external/mit/libdrm/dist/radeon/radeon_bo_gem.h U xsrc/external/mit/libdrm/dist/radeon/radeon_bo.h C xsrc/external/mit/libdrm/dist/intel/intel_bufmgr_gem.c U xsrc/external/mit/libdrm/dist/intel/intel_bufmgr.c U xsrc/external/mit/libdrm/dist/intel/intel_bufmgr_priv.h U xsrc/external/mit/libdrm/dist/intel/Makefile.am U xsrc/external/mit/libdrm/dist/intel/Makefile.in U xsrc/external/mit/libdrm/dist/intel/mm.h U xsrc/external/mit/libdrm/dist/intel/mm.c U xsrc/external/mit/libdrm/dist/intel/intel_bufmgr_fake.c U xsrc/external/mit/libdrm/dist/intel/intel_chipset.h U xsrc/external/mit/libdrm/dist/intel/intel_bufmgr.h U xsrc/external/mit/libdrm/dist/intel/libdrm_intel.pc.in U xsrc/external/mit/libdrm/dist/tests/drmtest.c U xsrc/external/mit/libdrm/dist/tests/openclose.c U xsrc/external/mit/libdrm/dist/tests/name_from_fd.c U xsrc/external/mit/libdrm/dist/tests/Makefile.am U xsrc/external/mit/libdrm/dist/tests/gem_flink.c U xsrc/external/mit/libdrm/dist/tests/setversion.c U xsrc/external/mit/libdrm/dist/tests/getversion.c U xsrc/external/mit/libdrm/dist/tests/gem_readwrite.c U xsrc/external/mit/libdrm/dist/tests/Makefile.in U xsrc/external/mit/libdrm/dist/tests/gem_mmap.c U xsrc/external/mit/libdrm/dist/tests/getstats.c U xsrc/external/mit/libdrm/dist/tests/dristat.c U xsrc/external/mit/libdrm/dist/tests/updatedraw.c U xsrc/external/mit/libdrm/dist/tests/getclient.c U xsrc/external/mit/libdrm/dist/tests/drmstat.c U xsrc/external/mit/libdrm/dist/tests/drmtest.h U xsrc/external/mit/libdrm/dist/tests/gem_basic.c U xsrc/external/mit/libdrm/dist/tests/modeprint/Makefile.am U xsrc/external/mit/libdrm/dist/tests/modeprint/modeprint.c U xsrc/external/mit/libdrm/dist/tests/modeprint/Makefile.in U
CVS commit: xsrc/external/mit/libdrm/dist
Module Name:xsrc Committed By: mrg Date: Sat Aug 14 10:19:32 UTC 2010 Modified Files: xsrc/external/mit/libdrm/dist: xf86atomic.h xsrc/external/mit/libdrm/dist/intel: intel_bufmgr_gem.c Removed Files: xsrc/external/mit/libdrm/dist/nouveau: nouveau_class.h Log Message: merge libdrm 2.4.21. To generate a diff of this commit: cvs rdiff -u -r1.2 -r1.3 xsrc/external/mit/libdrm/dist/xf86atomic.h cvs rdiff -u -r1.2 -r1.3 \ xsrc/external/mit/libdrm/dist/intel/intel_bufmgr_gem.c cvs rdiff -u -r1.1.1.1 -r0 \ xsrc/external/mit/libdrm/dist/nouveau/nouveau_class.h 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/libdrm/dist/xf86atomic.h diff -u xsrc/external/mit/libdrm/dist/xf86atomic.h:1.2 xsrc/external/mit/libdrm/dist/xf86atomic.h:1.3 --- xsrc/external/mit/libdrm/dist/xf86atomic.h:1.2 Sat May 22 22:13:17 2010 +++ xsrc/external/mit/libdrm/dist/xf86atomic.h Sat Aug 14 10:19:31 2010 @@ -86,8 +86,8 @@ # define atomic_set(x, val) ((x)-atomic = (uint_t)(val)) # define atomic_inc(x) (atomic_inc_uint ((x)-atomic)) # define atomic_dec_and_test(x) (atomic_dec_uint_nv((x)-atomic) == 1) -# define atomic_add(x, v) (atomic_add_uint((x)-atomic, (v))) -# define atomic_dec(x, v) (atomic_dec_uint((x)-atomic, (v))) +# define atomic_add(x, v) (atomic_add_int((x)-atomic, (v))) +# define atomic_dec(x, v) (atomic_add_int((x)-atomic, -(v))) # define atomic_cmpxchg(x, oldv, newv) atomic_cas_uint ((x)-atomic, oldv, newv) #endif Index: xsrc/external/mit/libdrm/dist/intel/intel_bufmgr_gem.c diff -u xsrc/external/mit/libdrm/dist/intel/intel_bufmgr_gem.c:1.2 xsrc/external/mit/libdrm/dist/intel/intel_bufmgr_gem.c:1.3 --- xsrc/external/mit/libdrm/dist/intel/intel_bufmgr_gem.c:1.2 Sat May 22 21:47:42 2010 +++ xsrc/external/mit/libdrm/dist/intel/intel_bufmgr_gem.c Sat Aug 14 10:19:32 2010 @@ -67,6 +67,8 @@ fprintf(stderr, __VA_ARGS__); \ } while (0) +#define ARRAY_SIZE(x) (sizeof(x) / sizeof((x)[0])) + typedef struct _drm_intel_bo_gem drm_intel_bo_gem; struct drm_intel_gem_bo_bucket { @@ -74,10 +76,6 @@ unsigned long size; }; -/* Only cache objects up to 64MB. Bigger than that, and the rounding of the - * size makes many operations fail that wouldn't otherwise. - */ -#define DRM_INTEL_GEM_BO_BUCKETS 14 typedef struct _drm_intel_bufmgr_gem { drm_intel_bufmgr bufmgr; @@ -94,7 +92,8 @@ int exec_count; /** Array of lists of cached gem objects of power-of-two sizes */ - struct drm_intel_gem_bo_bucket cache_bucket[DRM_INTEL_GEM_BO_BUCKETS]; + struct drm_intel_gem_bo_bucket cache_bucket[14 * 4]; + int num_buckets; uint64_t gtt_size; int available_fences; @@ -286,7 +285,7 @@ { int i; - for (i = 0; i DRM_INTEL_GEM_BO_BUCKETS; i++) { + for (i = 0; i bufmgr_gem-num_buckets; i++) { struct drm_intel_gem_bo_bucket *bucket = bufmgr_gem-cache_bucket[i]; if (bucket-size = size) { @@ -471,7 +470,7 @@ bo_gem-relocs = malloc(max_relocs * sizeof(struct drm_i915_gem_relocation_entry)); bo_gem-reloc_target_info = malloc(max_relocs * - sizeof(drm_intel_reloc_target *)); + sizeof(drm_intel_reloc_target)); if (bo_gem-relocs == NULL || bo_gem-reloc_target_info == NULL) { bo_gem-has_error = 1; @@ -690,31 +689,39 @@ { drm_intel_bufmgr_gem *bufmgr_gem = (drm_intel_bufmgr_gem *)bufmgr; drm_intel_bo *bo; - unsigned long size, stride, aligned_y = y; + unsigned long size, stride; + uint32_t tiling; int ret; - /* If we're tiled, our allocations are in 8 or 32-row blocks, - * so failure to align our height means that we won't allocate - * enough pages. - * - * If we're untiled, we still have to align to 2 rows high - * because the data port accesses 2x2 blocks even if the - * bottom row isn't to be rendered, so failure to align means - * we could walk off the end of the GTT and fault. This is - * documented on 965, and may be the case on older chipsets - * too so we try to be careful. - */ - if (*tiling_mode == I915_TILING_NONE) - aligned_y = ALIGN(y, 2); - else if (*tiling_mode == I915_TILING_X) - aligned_y = ALIGN(y, 8); - else if (*tiling_mode == I915_TILING_Y) - aligned_y = ALIGN(y, 32); - - stride = x * cpp; - stride = drm_intel_gem_bo_tile_pitch(bufmgr_gem, stride, *tiling_mode); - size = stride * aligned_y; - size = drm_intel_gem_bo_tile_size(bufmgr_gem, size, tiling_mode); + do { + unsigned long aligned_y; + + tiling = *tiling_mode; + + /* If we're tiled, our allocations are in 8 or 32-row blocks, + * so failure to align our height means that we won't allocate + * enough pages. + * + * If we're untiled, we still have to align to 2 rows high + * because the data port accesses 2x2 blocks even if the + * bottom row isn't to be rendered, so failure to align means + * we could walk off the end of the GTT and fault. This is + * documented on 965, and may be the case on older chipsets + * too
CVS commit: xsrc/external/mit/libdrm/dist
Module Name:xsrc Committed By: mrg Date: Sat May 22 21:45:15 UTC 2010 Update of /cvsroot/xsrc/external/mit/libdrm/dist In directory ivanova.netbsd.org:/tmp/cvs-serv6062 Log Message: initial import of libdrm-2.4.20 Status: Vendor Tag: xorg Release Tags: libdrm-2-4-20 U xsrc/external/mit/libdrm/dist/Makefile.in N xsrc/external/mit/libdrm/dist/xf86drmSL.c N xsrc/external/mit/libdrm/dist/xf86drmRandom.c N xsrc/external/mit/libdrm/dist/xf86atomic.h N xsrc/external/mit/libdrm/dist/xf86drm.h U xsrc/external/mit/libdrm/dist/install-sh N xsrc/external/mit/libdrm/dist/xf86drm.c U xsrc/external/mit/libdrm/dist/ltmain.sh U xsrc/external/mit/libdrm/dist/README N xsrc/external/mit/libdrm/dist/xf86drmHash.c N xsrc/external/mit/libdrm/dist/xf86drmMode.c U xsrc/external/mit/libdrm/dist/config.guess N xsrc/external/mit/libdrm/dist/config.h.in U xsrc/external/mit/libdrm/dist/libdrm.pc.in U xsrc/external/mit/libdrm/dist/configure.ac U xsrc/external/mit/libdrm/dist/depcomp U xsrc/external/mit/libdrm/dist/missing N xsrc/external/mit/libdrm/dist/libdrm_lists.h N xsrc/external/mit/libdrm/dist/xf86drmMode.h U xsrc/external/mit/libdrm/dist/config.sub U xsrc/external/mit/libdrm/dist/configure U xsrc/external/mit/libdrm/dist/aclocal.m4 U xsrc/external/mit/libdrm/dist/Makefile.am N xsrc/external/mit/libdrm/dist/libkms/Makefile.in N xsrc/external/mit/libdrm/dist/libkms/libkms.h N xsrc/external/mit/libdrm/dist/libkms/libkms.pc.in N xsrc/external/mit/libdrm/dist/libkms/vmwgfx.c N xsrc/external/mit/libdrm/dist/libkms/intel.c N xsrc/external/mit/libdrm/dist/libkms/api.c N xsrc/external/mit/libdrm/dist/libkms/nouveau.c N xsrc/external/mit/libdrm/dist/libkms/internal.h N xsrc/external/mit/libdrm/dist/libkms/linux.c N xsrc/external/mit/libdrm/dist/libkms/Makefile.am N xsrc/external/mit/libdrm/dist/include/Makefile.in N xsrc/external/mit/libdrm/dist/include/Makefile.am N xsrc/external/mit/libdrm/dist/include/drm/nouveau_drm.h N xsrc/external/mit/libdrm/dist/include/drm/Makefile.in N xsrc/external/mit/libdrm/dist/include/drm/vmwgfx_drm.h N xsrc/external/mit/libdrm/dist/include/drm/mga_drm.h N xsrc/external/mit/libdrm/dist/include/drm/i810_drm.h N xsrc/external/mit/libdrm/dist/include/drm/sis_drm.h N xsrc/external/mit/libdrm/dist/include/drm/i830_drm.h N xsrc/external/mit/libdrm/dist/include/drm/savage_drm.h N xsrc/external/mit/libdrm/dist/include/drm/r128_drm.h N xsrc/external/mit/libdrm/dist/include/drm/radeon_drm.h N xsrc/external/mit/libdrm/dist/include/drm/drm.h N xsrc/external/mit/libdrm/dist/include/drm/i915_drm.h N xsrc/external/mit/libdrm/dist/include/drm/Makefile N xsrc/external/mit/libdrm/dist/include/drm/via_drm.h N xsrc/external/mit/libdrm/dist/include/drm/drm_sarea.h N xsrc/external/mit/libdrm/dist/include/drm/mach64_drm.h N xsrc/external/mit/libdrm/dist/include/drm/Makefile.am N xsrc/external/mit/libdrm/dist/include/drm/drm_mode.h N xsrc/external/mit/libdrm/dist/radeon/libdrm_radeon.pc.in N xsrc/external/mit/libdrm/dist/radeon/Makefile.in N xsrc/external/mit/libdrm/dist/radeon/radeon_bo.c N xsrc/external/mit/libdrm/dist/radeon/radeon_cs_space.c N xsrc/external/mit/libdrm/dist/radeon/radeon_bo_int.h N xsrc/external/mit/libdrm/dist/radeon/radeon_cs_gem.c N xsrc/external/mit/libdrm/dist/radeon/radeon_bo.h N xsrc/external/mit/libdrm/dist/radeon/radeon_cs.h N xsrc/external/mit/libdrm/dist/radeon/radeon_cs.c N xsrc/external/mit/libdrm/dist/radeon/radeon_bo_gem.c N xsrc/external/mit/libdrm/dist/radeon/radeon_bo_gem.h N xsrc/external/mit/libdrm/dist/radeon/Makefile.am N xsrc/external/mit/libdrm/dist/radeon/radeon_cs_int.h N xsrc/external/mit/libdrm/dist/radeon/radeon_cs_gem.h N xsrc/external/mit/libdrm/dist/intel/intel_bufmgr_fake.c N xsrc/external/mit/libdrm/dist/intel/intel_chipset.h N xsrc/external/mit/libdrm/dist/intel/Makefile.in N xsrc/external/mit/libdrm/dist/intel/Makefile.am N xsrc/external/mit/libdrm/dist/intel/mm.h N xsrc/external/mit/libdrm/dist/intel/intel_bufmgr_priv.h N xsrc/external/mit/libdrm/dist/intel/intel_bufmgr_gem.c N xsrc/external/mit/libdrm/dist/intel/intel_bufmgr.c N xsrc/external/mit/libdrm/dist/intel/mm.c N xsrc/external/mit/libdrm/dist/intel/libdrm_intel.pc.in N xsrc/external/mit/libdrm/dist/intel/intel_bufmgr.h N xsrc/external/mit/libdrm/dist/nouveau/nouveau_resource.c N xsrc/external/mit/libdrm/dist/nouveau/nouveau_bo.c N xsrc/external/mit/libdrm/dist/nouveau/nouveau_pushbuf.h N xsrc/external/mit/libdrm/dist/nouveau/nouveau_device.c N xsrc/external/mit/libdrm/dist/nouveau/Makefile.in N xsrc/external/mit/libdrm/dist/nouveau/nouveau_grobj.c N xsrc/external/mit/libdrm/dist/nouveau/nouveau_notifier.h N xsrc/external/mit/libdrm/dist/nouveau/nouveau_pushbuf.c N xsrc/external/mit/libdrm/dist/nouveau/nouveau_channel.h N xsrc/external/mit/libdrm/dist/nouveau/nouveau_device.h N xsrc/external/mit/libdrm/dist/nouveau/nouveau_private.h N xsrc/external/mit/libdrm/dist/nouveau/nouveau_reloc.c N xsrc/external/mit/libdrm/dist/nouveau/nouveau_notifier.c N
CVS commit: xsrc/external/mit/libdrm/dist
Module Name:xsrc Committed By: mrg Date: Sat May 22 21:47:44 UTC 2010 Modified Files: xsrc/external/mit/libdrm/dist: xf86drm.c xf86drm.h xsrc/external/mit/libdrm/dist/intel: intel_bufmgr_gem.c Removed Files: xsrc/external/mit/libdrm/dist: libdrm_intel.pc.in xsrc/external/mit/libdrm/dist/libdrm: ChangeLog Makefile.am Makefile.in TODO config.h.in libdrm_lists.h xf86drm.c xf86drm.h xf86drmHash.c xf86drmMode.c xf86drmMode.h xf86drmRandom.c xf86drmSL.c xsrc/external/mit/libdrm/dist/libdrm/intel: Makefile.am Makefile.in intel_bufmgr.c intel_bufmgr.h intel_bufmgr_fake.c intel_bufmgr_gem.c intel_bufmgr_priv.h intel_chipset.h mm.c mm.h xsrc/external/mit/libdrm/dist/libdrm/nouveau: Makefile.am Makefile.in libdrm_nouveau.pc.in nouveau_bo.c nouveau_bo.h nouveau_channel.c nouveau_channel.h nouveau_class.h nouveau_device.c nouveau_device.h nouveau_dma.c nouveau_dma.h nouveau_drmif.h nouveau_fence.c nouveau_grobj.c nouveau_grobj.h nouveau_notifier.c nouveau_notifier.h nouveau_private.h nouveau_pushbuf.c nouveau_pushbuf.h nouveau_resource.c nouveau_resource.h xsrc/external/mit/libdrm/dist/shared-core: Makefile.am Makefile.in drm.h drm_mode.h drm_sarea.h i915_drm.h mach64_drm.h mga_drm.h nouveau_drm.h r128_drm.h r300_reg.h radeon_drm.h savage_drm.h sis_drm.h via_3d_reg.h via_drm.h xgi_drm.h Log Message: merge libdrm 2.4.20 and re-apply our changes to the moved sources To generate a diff of this commit: cvs rdiff -u -r1.1.1.1 -r0 xsrc/external/mit/libdrm/dist/libdrm_intel.pc.in cvs rdiff -u -r1.1.1.1 -r1.2 xsrc/external/mit/libdrm/dist/xf86drm.c \ xsrc/external/mit/libdrm/dist/xf86drm.h cvs rdiff -u -r1.1.1.1 -r1.2 \ xsrc/external/mit/libdrm/dist/intel/intel_bufmgr_gem.c cvs rdiff -u -r1.1.1.1 -r0 xsrc/external/mit/libdrm/dist/libdrm/ChangeLog \ xsrc/external/mit/libdrm/dist/libdrm/TODO \ xsrc/external/mit/libdrm/dist/libdrm/libdrm_lists.h \ xsrc/external/mit/libdrm/dist/libdrm/xf86drmMode.c \ xsrc/external/mit/libdrm/dist/libdrm/xf86drmMode.h cvs rdiff -u -r1.1.1.2 -r0 xsrc/external/mit/libdrm/dist/libdrm/Makefile.am \ xsrc/external/mit/libdrm/dist/libdrm/Makefile.in \ xsrc/external/mit/libdrm/dist/libdrm/config.h.in \ xsrc/external/mit/libdrm/dist/libdrm/xf86drmHash.c \ xsrc/external/mit/libdrm/dist/libdrm/xf86drmRandom.c \ xsrc/external/mit/libdrm/dist/libdrm/xf86drmSL.c cvs rdiff -u -r1.3 -r0 xsrc/external/mit/libdrm/dist/libdrm/xf86drm.c \ xsrc/external/mit/libdrm/dist/libdrm/xf86drm.h cvs rdiff -u -r1.1.1.1 -r0 \ xsrc/external/mit/libdrm/dist/libdrm/intel/Makefile.am \ xsrc/external/mit/libdrm/dist/libdrm/intel/Makefile.in \ xsrc/external/mit/libdrm/dist/libdrm/intel/intel_bufmgr.c \ xsrc/external/mit/libdrm/dist/libdrm/intel/intel_bufmgr.h \ xsrc/external/mit/libdrm/dist/libdrm/intel/intel_bufmgr_fake.c \ xsrc/external/mit/libdrm/dist/libdrm/intel/intel_bufmgr_priv.h \ xsrc/external/mit/libdrm/dist/libdrm/intel/intel_chipset.h \ xsrc/external/mit/libdrm/dist/libdrm/intel/mm.c \ xsrc/external/mit/libdrm/dist/libdrm/intel/mm.h cvs rdiff -u -r1.3 -r0 \ xsrc/external/mit/libdrm/dist/libdrm/intel/intel_bufmgr_gem.c cvs rdiff -u -r1.1.1.1 -r0 \ xsrc/external/mit/libdrm/dist/libdrm/nouveau/Makefile.am \ xsrc/external/mit/libdrm/dist/libdrm/nouveau/Makefile.in \ xsrc/external/mit/libdrm/dist/libdrm/nouveau/libdrm_nouveau.pc.in \ xsrc/external/mit/libdrm/dist/libdrm/nouveau/nouveau_bo.c \ xsrc/external/mit/libdrm/dist/libdrm/nouveau/nouveau_bo.h \ xsrc/external/mit/libdrm/dist/libdrm/nouveau/nouveau_channel.c \ xsrc/external/mit/libdrm/dist/libdrm/nouveau/nouveau_channel.h \ xsrc/external/mit/libdrm/dist/libdrm/nouveau/nouveau_class.h \ xsrc/external/mit/libdrm/dist/libdrm/nouveau/nouveau_device.c \ xsrc/external/mit/libdrm/dist/libdrm/nouveau/nouveau_device.h \ xsrc/external/mit/libdrm/dist/libdrm/nouveau/nouveau_dma.c \ xsrc/external/mit/libdrm/dist/libdrm/nouveau/nouveau_dma.h \ xsrc/external/mit/libdrm/dist/libdrm/nouveau/nouveau_drmif.h \ xsrc/external/mit/libdrm/dist/libdrm/nouveau/nouveau_fence.c \ xsrc/external/mit/libdrm/dist/libdrm/nouveau/nouveau_grobj.c \ xsrc/external/mit/libdrm/dist/libdrm/nouveau/nouveau_grobj.h \ xsrc/external/mit/libdrm/dist/libdrm/nouveau/nouveau_notifier.c \ xsrc/external/mit/libdrm/dist/libdrm/nouveau/nouveau_notifier.h \ xsrc/external/mit/libdrm/dist/libdrm/nouveau/nouveau_private.h \ xsrc/external/mit/libdrm/dist/libdrm/nouveau/nouveau_pushbuf.c \ xsrc/external/mit/libdrm/dist/libdrm/nouveau/nouveau_pushbuf.h \ xsrc/external/mit/libdrm/dist/libdrm/nouveau/nouveau_resource.c \ xsrc/external/mit/libdrm/dist/libdrm/nouveau/nouveau_resource.h cvs rdiff -u -r1.1.1.2 -r0 \
CVS commit: xsrc/external/mit/libdrm/dist
Module Name:xsrc Committed By: mrg Date: Sat May 22 22:13:17 UTC 2010 Modified Files: xsrc/external/mit/libdrm/dist: xf86atomic.h Log Message: pull across pkgsrc patch-ad: add netbsd atomic ops support. To generate a diff of this commit: cvs rdiff -u -r1.1.1.1 -r1.2 xsrc/external/mit/libdrm/dist/xf86atomic.h 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/libdrm/dist/xf86atomic.h diff -u xsrc/external/mit/libdrm/dist/xf86atomic.h:1.1.1.1 xsrc/external/mit/libdrm/dist/xf86atomic.h:1.2 --- xsrc/external/mit/libdrm/dist/xf86atomic.h:1.1.1.1 Sat May 22 21:45:11 2010 +++ xsrc/external/mit/libdrm/dist/xf86atomic.h Sat May 22 22:13:17 2010 @@ -92,6 +92,23 @@ #endif +#if defined(__NetBSD__) !defined(HAS_ATOMIC_OPS) /* NetBSD */ + +#include sys/atomic.h +#define HAS_ATOMIC_OPS 1 + +typedef struct { int atomic; } atomic_t; + +# define atomic_read(x) (int) ((x)-atomic) +# define atomic_set(x, val) ((x)-atomic = (val)) +# define atomic_inc(x) (atomic_inc_uint ((x)-atomic)) +# define atomic_dec_and_test(x) (atomic_dec_uint_nv((x)-atomic) == 1) +# define atomic_add(x, v) (atomic_add_int((x)-atomic, (v))) +# define atomic_dec(x, v) (atomic_add_int((x)-atomic, -(v))) +# define atomic_cmpxchg(x, oldv, newv) atomic_cas_uint ((x)-atomic, oldv, newv) + +#endif + #if ! HAS_ATOMIC_OPS #error libdrm requires atomic operations, please define them for your CPU/compiler. #endif
CVS commit: xsrc/external/mit/libdrm/dist
Module Name:xsrc Committed By: mrg Date: Tue Jun 9 01:51:31 UTC 2009 Update of /cvsroot/xsrc/external/mit/libdrm/dist In directory ivanova.netbsd.org:/tmp/cvs-serv10363 Log Message: initial import of libdrm-2.4.11 Status: Vendor Tag: xorg Release Tags: libdrm-2-4-11 U xsrc/external/mit/libdrm/dist/libdrm.pc.in U xsrc/external/mit/libdrm/dist/depcomp U xsrc/external/mit/libdrm/dist/README N xsrc/external/mit/libdrm/dist/libdrm_intel.pc.in U xsrc/external/mit/libdrm/dist/configure.ac U xsrc/external/mit/libdrm/dist/config.sub U xsrc/external/mit/libdrm/dist/Makefile.in U xsrc/external/mit/libdrm/dist/ltmain.sh U xsrc/external/mit/libdrm/dist/configure U xsrc/external/mit/libdrm/dist/config.guess U xsrc/external/mit/libdrm/dist/missing U xsrc/external/mit/libdrm/dist/install-sh U xsrc/external/mit/libdrm/dist/aclocal.m4 U xsrc/external/mit/libdrm/dist/Makefile.am N xsrc/external/mit/libdrm/dist/shared-core/nouveau_drm.h U xsrc/external/mit/libdrm/dist/shared-core/savage_drm.h U xsrc/external/mit/libdrm/dist/shared-core/mga_drm.h N xsrc/external/mit/libdrm/dist/shared-core/xgi_drm.h U xsrc/external/mit/libdrm/dist/shared-core/mach64_drm.h U xsrc/external/mit/libdrm/dist/shared-core/drm_sarea.h U xsrc/external/mit/libdrm/dist/shared-core/Makefile.in U xsrc/external/mit/libdrm/dist/shared-core/i915_drm.h U xsrc/external/mit/libdrm/dist/shared-core/radeon_drm.h U xsrc/external/mit/libdrm/dist/shared-core/via_drm.h C xsrc/external/mit/libdrm/dist/shared-core/drm.h U xsrc/external/mit/libdrm/dist/shared-core/via_3d_reg.h U xsrc/external/mit/libdrm/dist/shared-core/r300_reg.h U xsrc/external/mit/libdrm/dist/shared-core/r128_drm.h U xsrc/external/mit/libdrm/dist/shared-core/sis_drm.h U xsrc/external/mit/libdrm/dist/shared-core/Makefile.am N xsrc/external/mit/libdrm/dist/shared-core/drm_mode.h N xsrc/external/mit/libdrm/dist/tests/gem_readwrite.c N xsrc/external/mit/libdrm/dist/tests/getversion.c N xsrc/external/mit/libdrm/dist/tests/gem_mmap.c N xsrc/external/mit/libdrm/dist/tests/openclose.c N xsrc/external/mit/libdrm/dist/tests/drmstat.c N xsrc/external/mit/libdrm/dist/tests/gem_flink.c N xsrc/external/mit/libdrm/dist/tests/gem_basic.c N xsrc/external/mit/libdrm/dist/tests/getclient.c N xsrc/external/mit/libdrm/dist/tests/updatedraw.c N xsrc/external/mit/libdrm/dist/tests/drmtest.c N xsrc/external/mit/libdrm/dist/tests/Makefile.in N xsrc/external/mit/libdrm/dist/tests/getstats.c N xsrc/external/mit/libdrm/dist/tests/dristat.c N xsrc/external/mit/libdrm/dist/tests/drmtest.h N xsrc/external/mit/libdrm/dist/tests/setversion.c N xsrc/external/mit/libdrm/dist/tests/Makefile.am N xsrc/external/mit/libdrm/dist/tests/modetest/modetest.c N xsrc/external/mit/libdrm/dist/tests/modetest/Makefile.in N xsrc/external/mit/libdrm/dist/tests/modetest/Makefile.am N xsrc/external/mit/libdrm/dist/tests/modeprint/modeprint.c N xsrc/external/mit/libdrm/dist/tests/modeprint/Makefile.in N xsrc/external/mit/libdrm/dist/tests/modeprint/Makefile.am N xsrc/external/mit/libdrm/dist/libdrm/libdrm_lists.h C xsrc/external/mit/libdrm/dist/libdrm/xf86drm.h U xsrc/external/mit/libdrm/dist/libdrm/xf86drmRandom.c N xsrc/external/mit/libdrm/dist/libdrm/xf86drmMode.c U xsrc/external/mit/libdrm/dist/libdrm/xf86drmHash.c U xsrc/external/mit/libdrm/dist/libdrm/ChangeLog U xsrc/external/mit/libdrm/dist/libdrm/Makefile.in C xsrc/external/mit/libdrm/dist/libdrm/xf86drm.c N xsrc/external/mit/libdrm/dist/libdrm/xf86drmMode.h U xsrc/external/mit/libdrm/dist/libdrm/config.h.in U xsrc/external/mit/libdrm/dist/libdrm/TODO U xsrc/external/mit/libdrm/dist/libdrm/xf86drmSL.c U xsrc/external/mit/libdrm/dist/libdrm/Makefile.am N xsrc/external/mit/libdrm/dist/libdrm/nouveau/nouveau_notifier.h N xsrc/external/mit/libdrm/dist/libdrm/nouveau/nouveau_device.h N xsrc/external/mit/libdrm/dist/libdrm/nouveau/nouveau_channel.c N xsrc/external/mit/libdrm/dist/libdrm/nouveau/nouveau_dma.c N xsrc/external/mit/libdrm/dist/libdrm/nouveau/nouveau_bo.c N xsrc/external/mit/libdrm/dist/libdrm/nouveau/nouveau_channel.h N xsrc/external/mit/libdrm/dist/libdrm/nouveau/nouveau_dma.h N xsrc/external/mit/libdrm/dist/libdrm/nouveau/nouveau_device.c N xsrc/external/mit/libdrm/dist/libdrm/nouveau/nouveau_bo.h N xsrc/external/mit/libdrm/dist/libdrm/nouveau/Makefile.in N xsrc/external/mit/libdrm/dist/libdrm/nouveau/nouveau_notifier.c N xsrc/external/mit/libdrm/dist/libdrm/nouveau/nouveau_pushbuf.c N xsrc/external/mit/libdrm/dist/libdrm/nouveau/nouveau_pushbuf.h N xsrc/external/mit/libdrm/dist/libdrm/nouveau/nouveau_grobj.h N xsrc/external/mit/libdrm/dist/libdrm/nouveau/nouveau_drmif.h N xsrc/external/mit/libdrm/dist/libdrm/nouveau/nouveau_resource.h N xsrc/external/mit/libdrm/dist/libdrm/nouveau/nouveau_resource.c N xsrc/external/mit/libdrm/dist/libdrm/nouveau/libdrm_nouveau.pc.in N xsrc/external/mit/libdrm/dist/libdrm/nouveau/nouveau_grobj.c N xsrc/external/mit/libdrm/dist/libdrm/nouveau/nouveau_fence.c N
CVS commit: xsrc/external/mit/libdrm/dist/libdrm/intel
Module Name:xsrc Committed By: mrg Date: Tue Jun 9 04:56:26 UTC 2009 Modified Files: xsrc/external/mit/libdrm/dist/libdrm/intel: intel_bufmgr_gem.c Log Message: remove an unnecessary 'return', and fix lint too. To generate a diff of this commit: cvs rdiff -u -r1.1.1.1 -r1.2 \ xsrc/external/mit/libdrm/dist/libdrm/intel/intel_bufmgr_gem.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/libdrm/dist/libdrm/intel/intel_bufmgr_gem.c diff -u xsrc/external/mit/libdrm/dist/libdrm/intel/intel_bufmgr_gem.c:1.1.1.1 xsrc/external/mit/libdrm/dist/libdrm/intel/intel_bufmgr_gem.c:1.2 --- xsrc/external/mit/libdrm/dist/libdrm/intel/intel_bufmgr_gem.c:1.1.1.1 Tue Jun 9 01:51:29 2009 +++ xsrc/external/mit/libdrm/dist/libdrm/intel/intel_bufmgr_gem.c Tue Jun 9 04:56:26 2009 @@ -868,7 +868,7 @@ static void drm_intel_gem_bo_wait_rendering(drm_intel_bo *bo) { -return drm_intel_gem_bo_start_gtt_access(bo, 0); +drm_intel_gem_bo_start_gtt_access(bo, 0); } /**