[Mesa-dev] [PATCH 2/4] intel/sanitize_gpu: add help/gdb options to wrapper

Lionel Landwerlin lionel.g.landwerlin at intel.com
Mon Oct 29 18:14:45 UTC 2018


Signed-off-by: Lionel Landwerlin <lionel.g.landwerlin at intel.com>
---
 src/intel/tools/intel_sanitize_gpu.in | 55 ++++++++++++++++++++++++++-
 1 file changed, 54 insertions(+), 1 deletion(-)

diff --git a/src/intel/tools/intel_sanitize_gpu.in b/src/intel/tools/intel_sanitize_gpu.in
index 3dac954c408..7e4c96d8738 100755
--- a/src/intel/tools/intel_sanitize_gpu.in
+++ b/src/intel/tools/intel_sanitize_gpu.in
@@ -1,4 +1,57 @@
 #!/bin/bash
 # -*- mode: sh -*-
 
-LD_PRELOAD="@install_libexecdir@/libintel_sanitize_gpu.so${LD_PRELOAD:+:$LD_PRELOAD}" exec "$@"
+function show_help() {
+    cat <<EOF
+Usage: intel_sanitize_gpu [OPTION]... [--] COMMAND ARGUMENTS
+
+Run COMMAND with ARGUMENTS and verify the GPU doesn't write outside its memory
+mapped buffers.
+
+  -g, --gdb          Launch GDB
+
+      --help         Display this help message and exit
+
+EOF
+
+    exit 0
+}
+
+gdb=""
+
+while true; do
+    case "$1" in
+        --gdb)
+            gdb=1
+            shift
+            ;;
+        -g)
+            gdb=1
+            shift
+            ;;
+        --help)
+            show_help
+            ;;
+        --)
+            shift
+            break
+            ;;
+        -*)
+            echo "intel_aubdump: invalid option: $1"
+            echo
+            show_help
+            ;;
+        *)
+            break
+            ;;
+    esac
+done
+
+[ -z $1 ] && show_help
+
+ld_preload="@install_libexecdir@/libintel_sanitize_gpu.so${LD_PRELOAD:+:$LD_PRELOAD}"
+if [ -z $gdb ]; then
+    LD_PRELOAD=$ld_preload exec "$@"
+else
+    gdb -iex "set exec-wrapper env LD_PRELOAD=$ld_preload" --args $@
+fi
-- 
2.19.1



More information about the mesa-dev mailing list