<div dir="ltr"><div><div><div>Hi all,<br><br></div>Here is another release of Intel-gpu-tools 1.8.<br></div>This one came without any pre warning again and release was "time based" to be on time for the Intel Linux Graphics stack validation that we are starting today and that might be released by the end of this Quarter as usual.<br><br></div>This is my last release since Thomas Wood is taking the role to maintain Intel-gpu-tools. I'm confident that Thomas will do a great job and make the releases more smooth and without my traditional rush.<br><div><div><div><div><div><div><br></div><div>1.8 NEWS:<br></div><div><br>- Added lib/igt.cocci semantic patch to catch often-seen patterns and convert<br>  them to igt macros/infrastructure.<br><br>- Improvements to the documentation build systems (Thomas).<br><br>- Small fixes and improvements to the igt infrastructure and helpers all over.<br><br>- As usual piles of new tests.<br><br>- Improved plane/pipe handling in the igt_kms library (Damien).<br><br>- Unified option parsing between simple tests and tests with subtests (Thomas).<br>  This will allow us to merge the different Makefile targets once test runners<br>  are converted.<br><br>- New commit functions for igt_kms to support the new universal planes<br>  interfaces (Matt Roper).<br><br>- Polish the debug output when test requirements aren't met a bit and inject the<br>  program name/subtest in dmesg for easier backtrace/oom debugging (Chris).<br><br>- A bit of polish for the framebuffer helper functions (Damien).<br><br>- Robuster option parsing helpers, they now check for conflicts when merging<br>  different option lists (Thomas).<br><br>- MIPI DSI vbt support in intel_bios_read (Gaurav K Singh).<br><br>- Clarify the split between low-level helpers and the high-level library in<br>  igt_kms a bit by renaming some functions and improving and extending the api<br>  documentation.<br><br>- Helper to restore the vt mode, useful to test lastclose/fbdev emulation<br>  behaviour (Thomas).<br><br>- Refactor the support for 64bit relocs. By specifying the number of relocations<br>  explicit a lot of the gen8 checks can be removed from simple testcases which<br>  only use the blitter (Chris).<br><br></div><div>The full list:<br></div><div><br>Arun Siluvery (1):<br>      igt/gem_workarounds: igt to test workaround registers<br><br>Ben Widawsky (1):<br>      lib: Add ndebug to the headers<br><br>Chris Wilson (60):<br>      API docs for intel_check_memory()<br>      tests: add gem_fence_upload<br>      igt/gem_mmap_gtt: Exercise concurrent pagefaulting<br>      igt/gem_fence_upload: Throw some threads into the mix<br>      igt/gem_fence_upload: Exercise contention on the fault handler<br>      igt/gem_exec_parse: Convert to igt_assert_eq<br>      igt/gem_exec_big: Update to new igt_assert_eq<br>      gem_fence_upload: Improve the contended messages<br>      gem_mmap_gtt: Test mmaping less than the full object<br>      Wait for any pid in order to reap failure quicker<br>      igt/gem_userptr_blits: Shared memory allocations<br>      igt/gem_userptr_blits: Verify that userptr bo work on unshared memory<br>      configure: Only build overlay if dri2proto is present<br>      igt/gem_tiled_swapping: Speed up slightly<br>      igt/gem_close_race: Trim object size<br>      overlay: Baytrail needs a custom GPU frequency parser<br>      igt/gem_close_race: Increase GPU load<br>      igt/gem_userptr_blits: Add missing RAM check before coherency tests<br>      igt/gem_userptr_blits: Add missing RAM check before coherency tests<br>      igt/kms_flip: Skip if headless<br>      Use SIGTERM in replace of SIGQUIT<br>      Quieten valgrind<br>      igt/gem_userptr_blits: New tests, old issues<br>      linux: Flush page/buffer cache before querying available memory<br>      linux: placate drop_caches and pass it a '\n'<br>      core: Only use signalsafe functions inside signal handlers<br>      igt_core: Refactor igt_stop_helper() to use igt_wait_helper()<br>      igt_core: Read manpages more carefully  for WNOHANG<br>      core: Inject subtest message into dmesg<br>      core: Improve phrasing for test requirements<br>      core: Inject program name into dmesg<br>      drmtest: First check that driver is i915<br>      igt/pm_rps: Fix assertion in load_helper_stop<br>      core: Add all kernel log levels<br>      igt/gem_cpu_reloc: Update the memory requirements<br>      igt: Prettify igt_assert_eq() failure messages<br>      igt/gem_concurrent_blit: Add GPU-vs-GPU checks<br>      igt/gem_concurrent_blit: Add ring race checks<br>      lib/batchbuffer: Store the gen in a local variable<br>      lib/batchbuffer: Guard intel_blt_copy with even more asserts<br>      igt: Tweak the igt_assert_cmpint macro<br>      igt/gem_concurrent_blit: Apply some fence pressure as well<br>      Prepare for 64bit relocation addresses<br>      igt/gem_seqno_wrap: Use debugfs singleton<br>      batch: Specify number of relocations to accommodate<br>      batch: Fix typo in BLIT_BATCH_BEGIN<br>      igt/gem_concurrent_blit: Use the preallocated dummy bo for temporary copies<br>      rendercopy/gen8: Fix vertex buffer relocation<br>      igt/gem_gtt_hog: Convert opencoded fork()/wait() over to igt_fork()<br>      igt/gem_concurrent_blit: Move igt_require() out of children<br>      core: Display subtest walltime<br>      lib/igt_fb: Add debug output for creating fb<br>      lib/igt_fb: Ignore RGB888<br>      core: Prettify igt_require_f output<br>      aux: Squelch warning when emitting progress indicator<br>      igt/drv_missed_irq_hang: Increase busy load<br>      igt/kms_universal_plane: Only test existing planes<br>      igt/gem_mmap_gtt: Check coherency between GTT and CPU mmappings with LLC<br>      igt/kms_flip_tiling: Use the associated pipe for the output<br>      igt/gem_cpu_reloc: Terminate the bad batch<br><br>Damien Lespiau (83):<br>      list-workarounds/chv: Add Cherryview to the list of valid platorms<br>      kms_universal_plane: Don't assert outside of fixtures/subtests<br>      kms_pipe_crc_basic: Split the main test function a bit more<br>      kms_pipe_crc_basic: Cycle between 2 differently colored buffer<br>      kms_pipe_crc_basic: Make the number of CRCs a parameter<br>      kms_pipe_crc_basic: Add a bit a debugging output<br>      lib: Reset 'position_changed' after a drmModeSetCrtc()<br>      pipe_crc: Warn if the CRC values is 0xffffffff<br>      pipe_crc: Make collect_crc() ensure the CRC looks somewhat valid<br>      kms_plane: Make the gathering of reference CRCs test agnostic<br>      kms_plane: Add a debug message when grabbing the CRC of a colored fb<br>      kms_plane: Specify the pipe when grabbing reference CRCs<br>      core: Put the requirement failure messages together<br>      core: Only display the errno message if errno is set<br>      core: Apply the same treatment to the in errno message in __igt_fail_assert()<br>      drv_module_reload: Don't declare success when failing<br>      igt_kms: Factor out a generic get_property() out of get_drm_plane_type()<br>      igt_kms: Provide a get_plane_property() shorthand<br>      igt_kms: Add a way to query of the plane supports rotation<br>      igt_kms: Add support for setting plane rotation<br>      igt_kms: Introduce a for_each_pipe() macro<br>      kms_rotation_crc: Make check_plane_type() static<br>      kms_rotation_crc: Make more functions static<br>      kms_rotation_crc: Align a few wrapped lines to the opening brace<br>      kms_rotation_crc: Update the copyright to have this year as well<br>      kms_rotation_crc: Test the validity of the output first<br>      kms_rotation_crc: Require universal planes for the testing primary rotation<br>      kms_rotation_crc: Fix style issue: '{' at the end of lines<br>      kms_rotation_crc: Fix style issue: single statement conditionals<br>      kms_rotation_crc: Factor out the square drawing function<br>      kms_rotation_crc: Factor out common primary/sprite code in prepare_crtc()<br>      kms_rotation_crc: Remove useless comments<br>      kms_rotation_crc: Use drm_plane from igt_plane_t<br>      kms_rotation_crc: Style issue: binary operators need spaces before and after<br>      kms_rotation_crc: Skip the tests if rotation is not supported<br>      kms_rotation_crc: Just store the igt_plane_t in data<br>      kms_rotation_crc: Unify the two tests<br>      kms_rotation_crc: Always disable the plane in cleanup<br>      kms_rotation_crc: Don't store rotate in the test state<br>      kms_rotation_crc: Don't store 'pipe' in the state<br>      kms_rotation_crc: Use igt_plane_set_rotation()<br>      kms_rotation_crc: Remove now unnecessary defines<br>      kms_rotation_crc: Use for_each_pipe()<br>      kms_rotation_crc: Remove the test on output->valid<br>      kms_rotation_crc: Remove 'output' from the state<br>      kms_rotation_crc: Remove the sleep(2)<br>      kms_rotation_crc: Remove plane from the state<br>      kms_rotation_crc: No need to test for NULL before freeing the pipe CRC object<br>      kms_rotation_crc: Allow the sprite test to run even without universal planes<br>      kms_rotation_crc: Don't commit with no fb set up<br>      kms_rotation_crc: Properly paint the whole frame buffer<br>      kms_rotation_crc: Add the test to .gitignore<br>      kms_rotation_crc: Don't compile the test on Android with no cairo support<br>      kms_rotation_crc: Document the two steps in prepare_crtc()<br>      kms_rotation_crc: Always use the primary plane to compute the reference CRC<br>      kms_rotation_crc: Remove unnecessary includes<br>      kms_rotation_crc: Use the igt_kms enum to encode the plane rotation<br>      lib: Extract gem_get_tiling() from a couple of tests.<br>      tests: Move gem_render_copy_redux to the list of multi-subtests tests<br>      lib: Remove unused field from struct igt_fb<br>      lib: Split the GTT mapping out of get_cairo_surface()<br>      lib: NULLify ->cairo_surface once unmapped<br>      lib: Don't take a reference to the surface in get_cairo_surface()<br>      testdisplay: Destroy the cairo context once the fb is painted<br>      lib: Change the fb creation functions to take fully qualified tiling formats<br>      kms_cursor_crc: Use I915_TILING_NONE to create fbs<br>      kms_fbc_crc: Use I915_TILING_X to create fbs<br>      kms_fence_pin_leak: Use I915_TILING_X to create fbs<br>      kms_flip: Adjust to the new igt_create_fb*() API<br>      kms_flip_tiling: Adjust to the new igt_create_.*fb() API<br>      kms_mmio_vs_cs_flip: Adjust to the new igt_create_.*fb() API<br>      kms_pipe_crc_basic: Adjust to the new igt_create.*fb() API<br>      kms_plane: Adjust to the new igt_create.*fb() API<br>      kms_psr_sink_crc: Adjust to the new igt_create.*fb() API<br>      kms_render: Adjust to the new igt_create.*fb() API<br>      kms_setmode: Adjust to the igt_create.*fb() API<br>      kms_sink_crc_basic: Adjust to the new igt_create.*fb() API<br>      pm_lpsp: Adjust to the new igt_create.*fb() API<br>      pm_rpm: Adjust to the new igt_create*fb() API<br>      testdisplay: Make the desired tiling mode an unsigned int<br>      lib/fb: Replace straight igt_fail() by asserts with debug messages<br>      lib/fb: Assert, instead of silently failing, when creating fbs<br>      gem_workarounds: intel_wa_registers is now prefixed with i915<br><br>Daniel Vetter (57):<br>      NEWS: post-release bump<br>      Revert "Add rc6_residency_counter subtest"<br>      lib/intel_os: Spelling fix<br>      tests/gem_fence_upload: Fix test wrapper<br>      tests/kms_psr_sink_crc: Skip properly<br>      tests/prime_self_import: Use igt_assert_cmpint<br>      lib/igt_core: Add igt_assert_eq<br>      lib: add igt.cocci<br>      tests: Run igt.cocci over tests<br>      Revert "tests: Run igt.cocci over tests"<br>      tests/pm_psr_sink_crc: Fix longjmp fun<br>      tests: Don't use stderr for informational messages<br>      lib/igt.cocci: Conversion to igt logging<br>      lib/igt.cocci: Convert abort() to igt_fail<br>      lib/igt.cocci: Also add rule to use igt_warn_on_f<br>      lib: Introduce igt_fail_on/_f<br>      NEWS: Mention igt.cocci<br>      tests: run igt.cocci<br>      Revert "Revert "Add rc6_residency_counter subtest""<br>      tests/Makefile.sources: Remove empty last line<br>      tests: Move gem_userptr_blits to the right Makefile target<br>      Paritially revert "lib: add missing includes to headers"<br>      tests/gem_mmap: Add short mmap test<br>      tests/gem_exec_big: Re-add gem_sync<br>      tests/kms_psr_sink_crc: Fix delayed gtt/cpu write tests<br>      tests/gem_exec_parse: use gem_uses_aliasing_ppgtt<br>      tests/gem_render_copy_redux needs legacy drm nodes<br>      drv_module_reload: Unbind the right console driver<br>      tests: Run igt.cocci<br>      NEWS: Updates<br>      lib/igt_core: Don't log when listing subtests<br>      lib/igt.cocci: Add stanza for for_each_pipe<br>      lib: Add argc/argv to igt_simple_init<br>      lib/igt_core: Fixup gtkdoc for logging functions<br>      tests/gem_userptr_blits: Polish<br>      lib/igt.cocci: Add s/assert/igt_assert/<br>      tests: Move root check to lib/drm_lib.sh<br>      lib/drm_lib.sh: Bare-bones long option parsing<br>      tests/pm_rpm: Convert to new optparsing<br>      NEWS: Updates<br>      NEWS: Don't forget new universal plane commit for igt_kms<br>      tests/gem_ringfill: add interruptible mode<br>      tests/kms_cursor_crc: Align opening {<br>      lib/igt_kms: Unify pipe name helpers<br>      lib/igt_kms: Clean up the other _name functions/macros<br>      lib/igt_kms: doc for type2str functions<br>      lib/igt_kms: set_vt_graphics_mode is a low-level helper<br>      lib/igt_kms: Shuffle kmtests_ functions<br>      lib/igt_kms: Simplify return value of kmstest_get_connector_default_mode<br>      lib/igt_kms: Simplify return value of kmstest_get_connector_config<br>      lib/igt_kms: doc for the remaining kmstest_ functions<br>      lib/rendercopy*: Use igt_assert<br>      lib/intel_* Use igt checks and macros<br>      lib/igt_* Use igt macros in igt libaries<br>      lib: Use igt macros more<br>      NEWS: Updates in anticipation of the next release<br>      lib/igt_aux: Improve wait_for_keypress helper a bit<br><br>Gaurav K Singh (2):<br>      intel_bios_reader: Add support to dump MIPI Configuration Block #52<br>      intel_bios_reader: Add support to dump MIPI Sequence block #53<br><br>Jesse Barnes (1):<br>      gem_exec_parse: require PPGTT as well<br><br>Matt Roper (10):<br>      lib/kms: Drop igt_pipe->need_set_{crtc, cursor}<br>      lib/kms: Track need for vblank wait locally<br>      lib/kms: Add igt_display_commit2()<br>      lib/kms: Add igt_display_try_commit2()<br>      lib/kms: Add universal plane support (v2)<br>      lib/kms: Drop primary plane windowing test from igt_plane_set_position()<br>      tests/kms_universal_plane: Universal plane testing (v6)<br>      tests/kms_cursor_crc: Combine data_t and test_data_t<br>      tests/kms_cursor_crc: Call drmModeMoveCursor() directly<br>      lib/kms: Provide universal plane #define's<br><br>Mika Kuoppala (6):<br>      lib/gen6_render: removed duplicate defines<br>      tools/null_state_gen: terminate relocs with -1<br>      lib/rendercopy: fix a typo in define<br>      lib/gen6_render: fix GEN6_3DSTATE_VF_STATISTICS define<br>      lib: Add MI_LOAD_REGISTER_IMM<br>      tools/null_state_gen: build cmd and state space separately<br><br>Mike Mason (4):<br>      Add kms_flip_event_leak to .gitignore<br>      scripts: Allow multiple -t and -x regular expressions for run-tests.sh<br>      tests: Fix seg fault when gem_mmap is run without specifying a subtest<br>      scripts: Add capability to resume interrupted run-tests.sh session<br><br>Paulo Zanoni (14):<br>      tests/pm_rpm: add dpms-mode-unset{,-non}-lpsp subtests<br>      tests/pm_rpm: add subtests for planes and cursors<br>      igt_kms: don't get drmModeRes just to free it later<br>      igt_kms: pass drm_fd instead of igt_display_t on some functions<br>      igt_kms: optionally return the property from get_property<br>      igt_kms: document and export kmstest_get_property()<br>      tests/pm_rpm: use kmstest_get_property()<br>      igt_kms: add kmstest_unset_all_crtcs()<br>      tests/pm_rpm: add subtests for fences<br>      tests/pm_rpm: add wait_for_suspended() calls to test_one_plane<br>      tests/pm_rpm: add macros to disable/enable screens and wait<br>      tests/pm_rpm: add disable_or_dpms_all_screens()<br>      tests/pm_rpm: refactor the modesetting code<br>      igt_core: zero exit_handler_count before forking<br><br>Rodrigo Vivi (2):<br>      tests/kms_psr_sink_crc: Create test to test PSR by checking panel CRC.<br>      bump version to 1.8 and add the release date<br><br>Rémi Cardona (1):<br>      shader-debugger: Force file/stdout IO as UTF-8<br><br>Sean V Kelley (1):<br>      lib/chv: CHV media pipeline command sequence<br><br>Sonika Jindal (2):<br>      tests/kms_rotation_crc: IGT for 180 degree HW rotation<br>      kms_rotation_crc: Calling commit2 instead of legacy commit<br><br>Thomas Wood (46):<br>      quick_dump: read the architecture files for items to add to EXTRA_DIST<br>      README: update piglit instructions<br>      lib: remove /** from comments that are not API documentation<br>      README: update the section on modifying and rebuilding documentation<br>      gitignore: add missing files and keep lists sorted<br>      lib: various documentation fixes<br>      docs: add private headers to IGNORE_HFILES<br>      docs: always rebuild the sections file<br>      docs: remove unused annotation glossary include<br>      lib: ensure igt_display_init clears the memory for the display struct<br>      lib: add missing includes to headers<br>      lib: add function to change connector states<br>      lib: add the ability to set an EDID data block on a connector<br>      lib: add igt_enable_connectors and igt_reset_connectors<br>      tests: enable extra connectors in kms_flip and kms_pipe_crc_basic<br>      lib: allow the edid to be reset<br>      scripts: add a script to help run tests with Piglit<br>      README: update the test run instructions<br>      core: increase the exit handler limit<br>      lib: warn when attempting to run an unknown subtest<br>      tests: remove unused getopt header includes<br>      lib: move option parsing into common_init<br>      lib: add igt_simple_init_parse_opts<br>      lib: don't ignore unknown options in multi-tests<br>      tests: convert simple tests to use igt_simple_init_parse_opts<br>      lib: always warn about unknown options<br>      lib: add a command line option to enable debug output in tests<br>      lib: add an exit code to use when invalid options are specified<br>      build: improve version.h generation<br>      testdisplay: only set terminal attributes when in foreground process group<br>      quick_dump: fix distcheck<br>      testdisplay: set a non-zero exit code if getopt detected an error<br>      lib: avoid getopt value conflicts with tests<br>      lib: check test options for conflicts<br>      lib: don't abort if forcing the connector state fails<br>      Update .gitignore files<br>      testdisplay: ignore invalid subtest options<br>      lib: add igt_restore_vt_mode<br>      tests: check plane rotation is reset after the VT mode is restored<br>      lib: add kmstest_edid_add_3d<br>      lib: move create_stereo_fb from testdisplay to igt_fb<br>      tests: add kms_3d test<br>      lib/igt_fb: ensure igt_create_fb parameters are consistent<br>      lib: don't force HDMI or DP connectors on HSW and BDW<br>      tests/kms_3d: skip if connectors cannot be forced<br>      lib: keep a list of modified connectors to reset<br><br>Tim Gore (7):<br>      intel-gpu-tools: remove the --cmd option from gem_seqno_wrap<br>      intel-gpu-tools: add igt_core init func calls to some tests<br>      intel-gpu-tools: Dont build kms_univeral_plane if no cairo<br>      intel-gpu-tools: Dont build kms_force_connector if no cairo<br>      intel-gpu-tools: add sys/wait.h to pm_rps.c<br>      intel-gpu-tools: fix version.h creation in android<br>      intel-gpu-tools: skip kms_flip_event_leak unless we have cairo<br><br>Tvrtko Ursulin (4):<br>      tests/gem_userptr_blits: Race between object creation and multi-threaded mm ops<br>      igt/gem_userptr_benchmark: Fix for upstream ioctl number<br>      igt/gem_userptr_blits: Fix forked access test<br>      igt/gem_userptr_blits: Fix multi-threaded mm stress tester<br><br>Ville Syrjälä (7):<br>      tests/kms_fbc_crc: Update blit code for BDW<br>      lib/igt_debugfs: Don't fail if debugfs is already mounted<br>      lib/igt_debufs: Add IGT_NO_FORCEWAKE environment variable<br>      tools: Add intel_iosf_sb_{read,write} tools<br>      tools/intel_display_poller: Add a new tool that will poll various display registers<br>      tests/gem_ctx_exec: Add reset-pin-leak subtest<br>      tests: Add kms_flip_event_leak test<br><br>Wendy Wang (2):<br>      Fixed the review issues for pm_rc6_residency IGT case<br>      Merge two subtests for pm_rc6_residency IGT case<br><br>Yi Sun (1):<br>      kms_plane: Add panning test for primary plane<br><br>git tag: intel-gpu-tools-1.8<br><br><a href="http://xorg.freedesktop.org/archive/individual/app/intel-gpu-tools-1.8.tar.bz2">http://xorg.freedesktop.org/archive/individual/app/intel-gpu-tools-1.8.tar.bz2</a><br>MD5:  49d2c3c65204d889189c4d8c14c598b3  intel-gpu-tools-1.8.tar.bz2<br>SHA1: bc727f19263c167390bc8b018da52d05e4f17fd1  intel-gpu-tools-1.8.tar.bz2<br>SHA256: ffe2a11bca57f7fe36e93d55e4b3685127640e3e6cdae19973b193fe25ff3759  intel-gpu-tools-1.8.tar.bz2<br><br><a href="http://xorg.freedesktop.org/archive/individual/app/intel-gpu-tools-1.8.tar.gz">http://xorg.freedesktop.org/archive/individual/app/intel-gpu-tools-1.8.tar.gz</a><br>MD5:  78eee01f2f5a53b03d8d88613e07c471  intel-gpu-tools-1.8.tar.gz<br>SHA1: 7f286412de6d8ff7927c4bcb66aee19ca32a4476  intel-gpu-tools-1.8.tar.gz<br>SHA256: 1330098ff84176768530ce60df561c681a51b56f0f2b76fdeb055e73814745da  intel-gpu-tools-1.8.tar.gz<br><br><div>Thanks,<br>Rodrigo.<br></div>
</div></div></div></div></div></div></div>