1. 28 Feb, 2019 1 commit
  2. 25 Sep, 2018 1 commit
  3. 11 Sep, 2018 1 commit
  4. 19 Jul, 2018 1 commit
  5. 13 Jul, 2018 1 commit
  6. 13 Jun, 2018 1 commit
    • Michał Winiarski's avatar
      lib: Extract mlock probing · 30e501ad
      Michał Winiarski authored
      We already have the routine we need in drv_suspend. Let's move it to lib
      and use it in the mlocking tests. We can also make it a bit faster if we
      tweak the initial step and initial amount.
      (I think it's safe to assume that we should be able to lock 3/4
      of RAM, this cuts the probe time on my 32G SKL - from ~530s to ~180s)
      
      v2: Use available mem, amend step, also lock outside of fork,
          early exit if the assumption is wrong (Chris)
          Update the function name in doc (Ewelina)
      v3: Total for pin, available for initial lock (Chris)
      Signed-off-by: Michał Winiarski's avatarMichał Winiarski <michal.winiarski@intel.com>
      Cc: Chris Wilson <chris@chris-wilson.co.uk>
      Cc: Ewelina Musial <ewelina.musial@intel.com>
      Reviewed-by: Chris Wilson's avatarChris Wilson <chris@chris-wilson.co.uk>
      Reviewed-by: Ewelina Musiał's avatarEwelina Musial <ewelina.musial@intel.com>
      30e501ad
  7. 23 May, 2018 1 commit
  8. 27 Apr, 2018 1 commit
  9. 16 Mar, 2018 1 commit
  10. 16 Feb, 2018 1 commit
  11. 26 Jan, 2018 1 commit
  12. 29 Nov, 2017 1 commit
  13. 19 Oct, 2017 1 commit
  14. 17 Oct, 2017 1 commit
  15. 16 Oct, 2017 1 commit
    • Imre Deak's avatar
      aux: Suspend signal helper for shell commands · 40d6f19f
      Imre Deak authored
      The clone() system call with a larger executable (like /bin/sh) may have
      difficulty to make progress on some platforms if interrupted frequently.
      So suspend the signal helper process for the duration of the syscall.
      This is needed to solve an actual problem by the next patch.
      
      v2:
      - Clarify/fix code comments. (Chris)
      - Update igt_system_quiet() as well accordingly.
      
      Cc: Chris Wilson <chris@chris-wilson.co.uk>
      Cc: Daniel Vetter <daniel.vetter@intel.com>
      Signed-off-by: Imre Deak's avatarImre Deak <imre.deak@intel.com>
      Reviewed-by: Chris Wilson <chris@chris-wilson.co.uk> (v1)
      40d6f19f
  16. 06 Jul, 2017 1 commit
  17. 07 Jun, 2017 1 commit
  18. 21 Mar, 2017 3 commits
  19. 10 Mar, 2017 1 commit
  20. 26 Jan, 2017 1 commit
    • Lyude Paul's avatar
      igt_aux: Add igt_set_autoresume_delay() · c2ddb81c
      Lyude Paul authored
      The default autoresume delay is about 5 seconds. It's possible on a
      system that's not very fast this might not be a long enough time, since
      an asynchronous hotplug event we scheduled on the chamelium that was
      intended to happen during suspend could happen before we actually manage
      to suspend. So, add a function that allows us to increase the autoresume
      time to ensure this never happens during suspend/resume tests with the
      chamelium.
      
      Cc: Tomeu Vizoso <tomeu@tomeuvizoso.net>
      Signed-off-by: Lyude Paul's avatarLyude <lyude@redhat.com>
      
      Changes since v1:
      - Use igt_require, not assert
      c2ddb81c
  21. 13 Dec, 2016 1 commit
  22. 01 Dec, 2016 2 commits
    • Marius Vlad's avatar
      lib/igt_kmod: New library to support driver loading/unloading and additional helpers. · 0268d73b
      Marius Vlad authored
      lib/igt_aux: Added igt_pkill and igt_lsof helper.
      lib/igt_kmod: Added load/unload kmod helpers.
      
      v7:
      - document the case where leaving stray fd from drm_open_driver()
      might fail reloading the driver.
      - list also current opened files from /dev/dri in case we could not
      unload the driver.
      - convert igt_info to igt_warn (Chris Wilson)
      - added KMOD_|PROCPS CFLAGS (Chris Wilson)
      
      v6:
      - include latest modifications from tests/drv_module_reload:
      display all loaded modules and list information about opened
      files by processes (Petri Latvala)
      
      v5:
      - added igt_i915_driver_{load/unload}.
      - added kick_snd_hda_intel() to match current
      tests/drv_module_reload_basic and integrated into
      igt_i915_driver_load/unload.
      - added gtk-doc section for lib/igt_kmod
      
      v4:
      - decided to split libkmod helpers into their own file as there's
      another user lib/igt_gvt or tests/gvt_basic.
      - fixed some gtk-doc documentation.
      
      v3:
      - return -errno (igt_pkill()) in case of failure (Cris Wilson)
      - return bool for igt_kmod_is_loaded(), replaced strncasecmp with strncmp
      (Chris Wilson)
      
      v2:
      - Renamed libkmod helpers (Chris Wilson)
      - Removed SIGTERM/SIGKILL case where we repeatedly tried to terminate the
      process: just call kill(2) once (Chris Wilson)
      - Removed redundant check in igt_kmod_unload(), igt_module_in_use() (Chris
      Wilson)
      - Pass flags to igt_kmod_unload() from the caller (Chris Wilson)
      - Removed useless function igt_kill() which acts just as kill(2) (Chris
      Wilson)
      Signed-off-by: default avatarMarius Vlad <marius.c.vlad@intel.com>
      0268d73b
    • Rodrigo Vivi's avatar
      lib/igt_aux.h: Cast is confusing old gcc · d20b870e
      Rodrigo Vivi authored
      I noticed in some machines igt compilation was breaking
      after igt_dummyload was introduced.
      
      I don't know exactly why, but it seems this cast seems to let
      old gcc a bit confused. Without the cast everything works
      properly.
      
      Compilation Error log:
        CC       igt_dummyload.lo
      In file included from igt.h:30:0,
                       from igt_dummyload.c:25:
      igt_aux.h:288:39: error: initializer element is not constant
       #define __IGT_INIT_LIST(name) (struct igt_list){ &(name), &(name) }
                                             ^
      igt_aux.h:289:47: note: in expansion of macro ‘__IGT_INIT_LIST’
       #define IGT_LIST(name) struct igt_list name = __IGT_INIT_LIST(name);
                                                     ^
      igt_dummyload.c:50:8: note: in expansion of macro ‘IGT_LIST’
       static IGT_LIST(spin_list);
              ^
      make[4]: *** [igt_dummyload.lo] Error 1
      
      Cc: Abdiel Janulgue <abdiel.janulgue@linux.intel.com>
      Signed-off-by: default avatarRodrigo Vivi <rodrigo.vivi@intel.com>
      Reviewed-by: Abdiel Janulgue's avatarAbdiel Janulgue <abdiel.janulgue@linux.intel.com>
      d20b870e
  23. 29 Nov, 2016 2 commits
  24. 18 Oct, 2016 1 commit
  25. 13 Oct, 2016 1 commit
    • Imre Deak's avatar
      lib/igt_aux: Add support for various system suspend/resume options · 022e6f8a
      Imre Deak authored
      To have a more accurate idea about any suspend/resume issues we can
      perform the s/r until various phases in the s/r sequence. This way we
      can isolate the given problem as being a device driver, kernel core or
      BIOS related issue. Actual subtests using these new s/r phases will be
      added as follow-up.
      
      While at it also add the freeze suspend target, it's something we also
      would need to test.
      Signed-off-by: Imre Deak's avatarImre Deak <imre.deak@intel.com>
      022e6f8a
  26. 01 Aug, 2016 1 commit
  27. 27 Jul, 2016 1 commit
    • Daniel Vetter's avatar
      lib: update docs for igt_pm · 1260564c
      Daniel Vetter authored
      - Move all the pm helpers into igt_pm.c. No idea why that wasn't done
        in the original commit that created igt_pm.c.
      - Add missing docs where needed.
      
      Cc: David Weinehall <david.weinehall@intel.com>
      Cc: Paulo Zanoni <paulo.r.zanoni@intel.com>
      Signed-off-by: Daniel Vetter's avatarDaniel Vetter <daniel.vetter@ffwll.ch>
      1260564c
  28. 03 Jul, 2016 1 commit
  29. 12 May, 2016 2 commits
  30. 20 Apr, 2016 1 commit
  31. 24 Mar, 2016 1 commit
  32. 19 Mar, 2016 2 commits
    • Chris Wilson's avatar
      igt/gem_concurrent_blit: dmabuf requires twice the number of files · e85613b4
      Chris Wilson authored
      In order to keep the dmabuf mmap around whilst we keep the object alive,
      we need a file descriptor for each. Check that the VFS supports that
      many fd.
      Signed-off-by: Chris Wilson's avatarChris Wilson <chris@chris-wilson.co.uk>
      e85613b4
    • Chris Wilson's avatar
      lib/igt_aux: Divert ioctls for signal injection · d5456108
      Chris Wilson authored
      To simplify and speed up running interruptible tests, use a custom
      ioctl() function that control the signaling and detect when we need no
      more iterations to trigger an interruption.
      
      We use a realtime timer to inject the signal after a certain delay,
      increasing the delay on every loop to try and exercise different code
      paths within the function. The first delay is very short such that we
      hopefully enter the kernel with a pending signal.
      
      Clients should use
      
      struct igt_sigiter iter = {};
      while (igt_sigiter_repeat(&iter, enable_interrupts=true))
      	do_test()
      
      to automatically repeat the test until we can inject no more signals
      into the ioctls. This is condensed into a macro
      
      igt_interruptible(enable_interrupts=true)
      	do_test();
      
      for convenience.
      Signed-off-by: Chris Wilson's avatarChris Wilson <chris@chris-wilson.co.uk>
      d5456108
  33. 22 Jan, 2016 1 commit
  34. 19 Jan, 2016 1 commit
    • Chris Wilson's avatar
      gem_concurrent_blit: Don't call igt_require() outside of a subtest/fixture · 42291f25
      Chris Wilson authored
      gem_concurrent_blit tries to ensure that it doesn't try and run a test
      that would grind the system to a halt, i.e. unexpectedly cause swap
      thrashing. It currently calls intel_require_memory(), but outside of
      the subtest (as the tests use fork, it cannot do requirement testing
      within the test children) - but intel_require_memory() calls
      igt_require() and triggers and abort. Wrapping that initial require
      within an igt_fixture() stops the abort(), but also prevents any further
      testing.
      
      This patch restructures the requirement checking to ordinary conditions,
      which though allowing the test to run, also prevents listing of subtests
      on machines which cannot handle them.
      42291f25