Skip to content
Snippets Groups Projects
  1. Jan 31, 2024
  2. Jan 12, 2024
  3. Dec 07, 2023
  4. Nov 22, 2023
  5. Nov 17, 2023
    • Simon McVittie's avatar
      tests: Test pv-verify · 762212be
      Simon McVittie authored
      
      Signed-off-by: default avatarSimon McVittie <smcv@collabora.com>
      762212be
    • Simon McVittie's avatar
      tests/valgrind.sh: Don't show reachable objects by default · 873120b2
      Simon McVittie authored
      
      There are too many false positives if we do.
      
      Signed-off-by: default avatarSimon McVittie <smcv@collabora.com>
      873120b2
    • Simon McVittie's avatar
      subprocess: Avoid using timeout(1) to impose a timeout · d69f3e22
      Simon McVittie authored
      
      This is more difficult than you might think, because until GLib 2.78
      (which is far too new for us to depend on), there was a potential
      race condition between g_child_watch_source_new()'s use of waitpid(),
      and a kill() in the same main-context. We don't really want to use
      g_child_watch_source_new() anyway, because we don't know whether this
      library is going to be loaded by a process that is blocking SIGCHLD or
      handling SIGCHLD itself.
      
      Avoiding timeout(1) can result in a significant speedup on ARM hardware
      emulating x86 via FEX-Emu, which makes executable startup
      disproportionately expensive: each new executable needs to re-initialize
      the interpreter, which is normally fine, but the cost builds up when we
      run a very large number of very small processes.
      
      Avoiding timeout(1) is also good for robustness: in the past, Canonical's
      Steam Snap app has had an AppArmor profile that did not allow arbitrary
      coreutils commands to be run.
      
      In this initial implementation, we poll the process every 100ms. This
      is *much* slower than blocking (it adds up to 100ms to every subprocess
      execution, resulting in a slowdown from around 8 to 96 seconds for
      steam-runtime-system-info on x86), but it can be used as a fallback.
      It's in this commit to have an opportunity to test the fallback code path.
      Subsequent commits will speed this up again.
      
      Helps: #88
      Signed-off-by: default avatarSimon McVittie <smcv@collabora.com>
      d69f3e22
  6. Nov 16, 2023
  7. Nov 02, 2023
  8. Oct 30, 2023
  9. Oct 25, 2023
  10. Oct 24, 2023
  11. Oct 23, 2023
Loading