[PATCH 01/10] intel: shared header for shader debugging

Chris Wilson chris at chris-wilson.co.uk
Wed Jul 13 13:56:40 PDT 2011


On Wed, 13 Jul 2011 13:51:43 -0700, Ben Widawsky <ben at bwidawsk.net> wrote:
> 
> Signed-off-by: Ben Widawsky <ben at bwidawsk.net>
> ---
>  intel/Makefile.am   |    3 ++-
>  intel/intel_debug.h |   44 ++++++++++++++++++++++++++++++++++++++++++++
>  2 files changed, 46 insertions(+), 1 deletions(-)
> 
> diff --git a/intel/Makefile.am b/intel/Makefile.am
> index b6a9014..7a44aaf 100644
> --- a/intel/Makefile.am
> +++ b/intel/Makefile.am
> @@ -45,6 +45,7 @@ libdrm_intel_la_SOURCES = \
>  	mm.h
>  
>  libdrm_intelincludedir = ${includedir}/libdrm
> -libdrm_intelinclude_HEADERS = intel_bufmgr.h
> +libdrm_intelinclude_HEADERS = intel_bufmgr.h \
> +			      intel_debug.h
>  
>  pkgconfig_DATA = libdrm_intel.pc
> diff --git a/intel/intel_debug.h b/intel/intel_debug.h
> new file mode 100644
> index 0000000..42ea1d8
> --- /dev/null
> +++ b/intel/intel_debug.h
> @@ -0,0 +1,44 @@
> +/*
> + * Copyright © 2011 Intel Corporation
> + *
> + * Permission is hereby granted, free of charge, to any person obtaining a
> + * copy of this software and associated documentation files (the "Software"),
> + * to deal in the Software without restriction, including without limitation
> + * the rights to use, copy, modify, merge, publish, distribute, sublicense,
> + * and/or sell copies of the Software, and to permit persons to whom the
> + * Software is furnished to do so, subject to the following conditions:
> + *
> + * The above copyright notice and this permission notice (including the next
> + * paragraph) shall be included in all copies or substantial portions of the
> + * Software.
> + *
> + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
> + * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
> + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.  IN NO EVENT SHALL
> + * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
> + * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
> + * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS
> + * IN THE SOFTWARE.
> + *
> + * Authors:
> + *    Ben Widawsky <ben at bwidawsk.net>
> + *
> + */
> +
> +#ifndef INTEL_DEBUG_H
> +#define INTEL_DEBUG_H
> +
> +#include <stdint.h>
> +
> +#define SHADER_DEBUG_SOCKET "/tmp/gen_debug"
> +#define DEBUG_HANDSHAKE_VERSION 0x2
> +#define DEBUG_HANDSHAKE_ACK "okay"
> +
> +/* First byte must always be the 1 byte version */
> +struct debug_handshake {
> +	uint8_t version;
> +	int flink_handle;
> +	uint32_t per_thread_scratch;
> +} __attribute__((packed));

Let's use an intel_ namespace to avoid any potential confusion. Do you
want to reserve the first uint32_t for your protocol header? Then it at
least looks like the hole will be useful in future...

I'm not overly thrilled by intel_debug.h, it's so generic but I can't
think of anything better.
-Chris

-- 
Chris Wilson, Intel Open Source Technology Centre


More information about the dri-devel mailing list