This set of patches adds a dispatcher for handling DRM ioctls. The kernel headers for DRM might not be available on all distributions so we depend on libdrm for those. If libdrm is not available we fall back on the kernel headers. Since DRM drivers share the same range of private ioctl numbers I've added a function for detecting the driver based on it's name. Changes in v2: * Rebased to master * Added Changelog to commits * Keep strace_SOURCES list sorted * Removed unneeded includes * Reduced number of driver name checks by adding tcb private data * Use tprints() for regular strings * Reworked entering() / exiting() handling for all ioctls * Use printstr() to print strings in properly quoted form Changes in v3: * Moved all umove() into state checks for single state ioctls * Removed extra curly bracket * Moved param argument into entering() state in i915_setparam() * Don't return before private data is freed in drm_ioctl() Patrik Jakobsson (5): drm: Add config for detecting libdrm drm: Add private data field to trace control block drm: Add dispatcher and driver identification for DRM drm: Add decoding of i915 ioctls drm: Add decoding of DRM and KMS ioctls Makefile.am | 2 + configure.ac | 4 + defs.h | 11 +- drm.c | 668 +++++++++++++++++++++++++++++++++++++++++++++ drm_i915.c | 332 ++++++++++++++++++++++ io.c | 2 +- ioctl.c | 6 +- xlat/drm_i915_getparams.in | 28 ++ xlat/drm_i915_ioctls.in | 51 ++++ xlat/drm_i915_setparams.in | 4 + 10 files changed, 1105 insertions(+), 3 deletions(-) create mode 100644 drm.c create mode 100644 drm_i915.c create mode 100644 xlat/drm_i915_getparams.in create mode 100644 xlat/drm_i915_ioctls.in create mode 100644 xlat/drm_i915_setparams.in -- 2.1.4 _______________________________________________ Intel-gfx mailing list Intel-gfx@xxxxxxxxxxxxxxxxxxxxx http://lists.freedesktop.org/mailman/listinfo/intel-gfx