Re: [Mesa-dev] [PATCH 15/18] i965: Drop region usage from DRI2 winsys-allocated buffers.
On Tue, Apr 29, 2014 at 4:34 PM, Eric Anholt e...@anholt.net wrote: - intel_region_release(intelBuffer-region); + drm_intel_bo_unreference(intelBuffer-bo); free(intelBuffer); This hunk passes garbage to drm_intel_bo_unreference(). Here's the GCC warning. intel_screen.c: In function 'intelReleaseBuffer': intel_screen.c:1428:4: warning: passing argument 1 of 'drm_intel_bo_unreference' from incompatible pointer type [enabled by default] drm_intel_bo_unreference(intelBuffer-bo); ^ In file included from brw_context.h:51:0, from intel_batchbuffer.h:6, from intel_screen.c:95: /usr/include/libdrm/intel_bufmgr.h:123:6: note: expected 'struct drm_intel_bo *' but argument is of type 'struct drm_intel_bo **' void drm_intel_bo_unreference(drm_intel_bo *bo); Fix that and this patch is Reviewed-by: Chad Versace chad.vers...@linux.intel.com ___ mesa-dev mailing list mesa-dev@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/mesa-dev
Re: [Mesa-dev] [PATCH 15/18] i965: Drop region usage from DRI2 winsys-allocated buffers.
Chad Versace chad.vers...@linux.intel.com writes: On Tue, Apr 29, 2014 at 4:34 PM, Eric Anholt e...@anholt.net wrote: - intel_region_release(intelBuffer-region); + drm_intel_bo_unreference(intelBuffer-bo); free(intelBuffer); This hunk passes garbage to drm_intel_bo_unreference(). Here's the GCC warning. intel_screen.c: In function 'intelReleaseBuffer': intel_screen.c:1428:4: warning: passing argument 1 of 'drm_intel_bo_unreference' from incompatible pointer type [enabled by default] drm_intel_bo_unreference(intelBuffer-bo); ^ In file included from brw_context.h:51:0, from intel_batchbuffer.h:6, from intel_screen.c:95: /usr/include/libdrm/intel_bufmgr.h:123:6: note: expected 'struct drm_intel_bo *' but argument is of type 'struct drm_intel_bo **' void drm_intel_bo_unreference(drm_intel_bo *bo); Fix that and this patch is Reviewed-by: Chad Versace chad.vers...@linux.intel.com Thanks. I have a really weird problem where (as far as I've found), 2 files don't produce compiler warnings for me (intel_mipmap_tree.c and intel_screen.c). I have no idea what's going on with it, and I've prodded at a bunch of command lines trying to figure it out. pgp8YHlPDm2r3.pgp Description: PGP signature ___ mesa-dev mailing list mesa-dev@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/mesa-dev
Re: [Mesa-dev] [PATCH 15/18] i965: Drop region usage from DRI2 winsys-allocated buffers.
On Thu, May 01, 2014 at 02:10:39PM -0700, Eric Anholt wrote: Chad Versace chad.vers...@linux.intel.com writes: On Tue, Apr 29, 2014 at 4:34 PM, Eric Anholt e...@anholt.net wrote: - intel_region_release(intelBuffer-region); + drm_intel_bo_unreference(intelBuffer-bo); free(intelBuffer); This hunk passes garbage to drm_intel_bo_unreference(). Here's the GCC warning. intel_screen.c: In function 'intelReleaseBuffer': intel_screen.c:1428:4: warning: passing argument 1 of 'drm_intel_bo_unreference' from incompatible pointer type [enabled by default] drm_intel_bo_unreference(intelBuffer-bo); ^ In file included from brw_context.h:51:0, from intel_batchbuffer.h:6, from intel_screen.c:95: /usr/include/libdrm/intel_bufmgr.h:123:6: note: expected 'struct drm_intel_bo *' but argument is of type 'struct drm_intel_bo **' void drm_intel_bo_unreference(drm_intel_bo *bo); Fix that and this patch is Reviewed-by: Chad Versace chad.vers...@linux.intel.com Thanks. I have a really weird problem where (as far as I've found), 2 files don't produce compiler warnings for me (intel_mipmap_tree.c and intel_screen.c). I have no idea what's going on with it, and I've prodded at a bunch of command lines trying to figure it out. If it helps, here is my `V=1 make -j4 -C src/mesa/drivers/dri/i965 | grep -E 'intel_mipmap_tree|intel_screen'`. /bin/sh ../../../../../libtool --tag=CC --mode=compile gcc -DPACKAGE_NAME=\Mesa\ -DPACKAGE_TARNAME=\mesa\ -DPACKAGE_VERSION=\10.2.0-devel\ -DPACKAGE_STRING=\Mesa\ 10.2.0-devel\ -DPACKAGE_BUGREPORT=\https://bugs.freedesktop.org/enter_bug.cgi\?product=Mesa\; -DPACKAGE_URL=\\ -DPACKAGE=\mesa\ -DVERSION=\10.2.0-devel\ -DSTDC_HEADERS=1 -DHAVE_SYS_TYPES_H=1 -DHAVE_SYS_STAT_H=1 -DHAVE_STDLIB_H=1 -DHAVE_STRING_H=1 -DHAVE_MEMORY_H=1 -DHAVE_STRINGS_H=1 -DHAVE_INTTYPES_H=1 -DHAVE_STDINT_H=1 -DHAVE_UNISTD_H=1 -DHAVE_DLFCN_H=1 -DLT_OBJDIR=\.libs/\ -DHAVE___BUILTIN_BSWAP32=1 -DHAVE___BUILTIN_BSWAP64=1 -DHAVE_DLADDR=1 -DHAVE_CLOCK_GETTIME=1 -DHAVE_PTHREAD=1 -I.-I../../../../../include -I../../../../../src/ -I../../../../../src/mapi -I../../../../../src/mesa/ -I../../../../../src/mesa/drivers/dri/common -I../../../../../src/mesa/drivers/dri/intel/server -I../../../../../src/gtest/include -I../../../../../src/mesa/drivers/dri/common -D_GNU_SOURCE -DHAVE_PTHREAD -DTEXTURE_FLOAT _ENABLED -DUSE_X86_64_ASM -DHAVE_DLOPEN -DHAVE_POSIX_MEMALIGN -DHAVE_LIBDRM -DHAVE_LIBUDEV -DGLX_INDIRECT_RENDERING -DGLX_DIRECT_RENDERING -DGLX_USE_TLS -DHAVE_PTHREAD -DUSE_EXTERNAL_DXTN_LIB=1 -DHAVE_ALIAS -DHAVE_MINCORE -fvisibility=hidden -I/usr/include/libdrm -g -O2 -Wall -std=c99 -Werror=implicit-function-declaration -Werror=missing-prototypes -fno-strict-aliasing -fno-builtin-memcmp -MT intel_mipmap_tree.lo -MD -MP -MF .deps/intel_mipmap_tree.Tpo -c -o intel_mipmap_tree.lo intel_mipmap_tree.c /bin/sh ../../../../../libtool --tag=CC --mode=compile gcc -DPACKAGE_NAME=\Mesa\ -DPACKAGE_TARNAME=\mesa\ -DPACKAGE_VERSION=\10.2.0-devel\ -DPACKAGE_STRING=\Mesa\ 10.2.0-devel\ -DPACKAGE_BUGREPORT=\https://bugs.freedesktop.org/enter_bug.cgi\?product=Mesa\; -DPACKAGE_URL=\\ -DPACKAGE=\mesa\ -DVERSION=\10.2.0-devel\ -DSTDC_HEADERS=1 -DHAVE_SYS_TYPES_H=1 -DHAVE_SYS_STAT_H=1 -DHAVE_STDLIB_H=1 -DHAVE_STRING_H=1 -DHAVE_MEMORY_H=1 -DHAVE_STRINGS_H=1 -DHAVE_INTTYPES_H=1 -DHAVE_STDINT_H=1 -DHAVE_UNISTD_H=1 -DHAVE_DLFCN_H=1 -DLT_OBJDIR=\.libs/\ -DHAVE___BUILTIN_BSWAP32=1 -DHAVE___BUILTIN_BSWAP64=1 -DHAVE_DLADDR=1 -DHAVE_CLOCK_GETTIME=1 -DHAVE_PTHREAD=1 -I.-I../../../../../include -I../../../../../src/ -I../../../../../src/mapi -I../../../../../src/mesa/ -I../../../../../src/mesa/drivers/dri/common -I../../../../../src/mesa/drivers/dri/intel/server -I../../../../../src/gtest/include -I../../../../../src/mesa/drivers/dri/common -D_GNU_SOURCE -DHAVE_PTHREAD -DTEXTURE_FLOAT _ENABLED -DUSE_X86_64_ASM -DHAVE_DLOPEN -DHAVE_POSIX_MEMALIGN -DHAVE_LIBDRM -DHAVE_LIBUDEV -DGLX_INDIRECT_RENDERING -DGLX_DIRECT_RENDERING -DGLX_USE_TLS -DHAVE_PTHREAD -DUSE_EXTERNAL_DXTN_LIB=1 -DHAVE_ALIAS -DHAVE_MINCORE -fvisibility=hidden -I/usr/include/libdrm -g -O2 -Wall -std=c99 -Werror=implicit-function-declaration -Werror=missing-prototypes -fno-strict-aliasing -fno-builtin-memcmp -MT intel_screen.lo -MD -MP -MF .deps/intel_screen.Tpo -c -o intel_screen.lo intel_screen.c libtool: compile: gcc -DPACKAGE_NAME=\Mesa\ -DPACKAGE_TARNAME=\mesa\ -DPACKAGE_VERSION=\10.2.0-devel\ -DPACKAGE_STRING=\Mesa 10.2.0-devel\ -DPACKAGE_BUGREPORT=\https://bugs.freedesktop.org/enter_bug.cgi?product=Mesa\; -DPACKAGE_URL=\\ -DPACKAGE=\mesa\ -DVERSION=\10.2.0-devel\ -DSTDC_HEADERS=1 -DHAVE_SYS_TYPES_H=1 -DHAVE_SYS_STAT_H=1 -DHAVE_STDLIB_H=1 -DHAVE_STRING_H=1 -DHAVE_MEMORY_H=1 -DHAVE_STRINGS_H=1 -DHAVE_INTTYPES_H=1 -DHAVE_STDINT_H=1 -DHAVE_UNISTD_H=1 -DHAVE_DLFCN_H=1 -DLT_OBJDIR=\.libs/\
Re: [Mesa-dev] [PATCH 15/18] i965: Drop region usage from DRI2 winsys-allocated buffers.
On Tue, Apr 29, 2014 at 4:34 PM, Eric Anholt e...@anholt.net wrote: --- src/mesa/drivers/dri/i965/intel_screen.c | 30 +- 1 file changed, 17 insertions(+), 13 deletions(-) Oh, right, I forgot about the __DRIbuffer usage. This really show how intel_region just added redundancy. Reviewed-by: Kristian Høgsberg k...@bitplanet.net diff --git a/src/mesa/drivers/dri/i965/intel_screen.c b/src/mesa/drivers/dri/i965/intel_screen.c index ab95a39..454f1cb 100644 --- a/src/mesa/drivers/dri/i965/intel_screen.c +++ b/src/mesa/drivers/dri/i965/intel_screen.c @@ -1371,7 +1371,7 @@ __DRIconfig **intelInitScreen2(__DRIscreen *psp) struct intel_buffer { __DRIbuffer base; - struct intel_region *region; + drm_intel_bo *bo; }; static __DRIbuffer * @@ -1390,23 +1390,27 @@ intelAllocateBuffer(__DRIscreen *screen, return NULL; /* The front and back buffers are color buffers, which are X tiled. */ - intelBuffer-region = intel_region_alloc(intelScreen, -I915_TILING_X, -format / 8, -width, -height, -true); - - if (intelBuffer-region == NULL) { + uint32_t tiling = I915_TILING_X; + unsigned long pitch; + int cpp = format / 8; + intelBuffer-bo = drm_intel_bo_alloc_tiled(intelScreen-bufmgr, + intelAllocateBuffer, + width, + height, + cpp, + tiling, pitch, + BO_ALLOC_FOR_RENDER); + + if (intelBuffer-bo == NULL) { free(intelBuffer); return NULL; } - drm_intel_bo_flink(intelBuffer-region-bo, intelBuffer-base.name); + drm_intel_bo_flink(intelBuffer-bo, intelBuffer-base.name); intelBuffer-base.attachment = attachment; - intelBuffer-base.cpp = intelBuffer-region-cpp; - intelBuffer-base.pitch = intelBuffer-region-pitch; + intelBuffer-base.cpp = cpp; + intelBuffer-base.pitch = pitch; return intelBuffer-base; } @@ -1416,7 +1420,7 @@ intelReleaseBuffer(__DRIscreen *screen, __DRIbuffer *buffer) { struct intel_buffer *intelBuffer = (struct intel_buffer *) buffer; - intel_region_release(intelBuffer-region); + drm_intel_bo_unreference(intelBuffer-bo); free(intelBuffer); } -- 1.9.2 ___ mesa-dev mailing list mesa-dev@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/mesa-dev ___ mesa-dev mailing list mesa-dev@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/mesa-dev