* [PATCH i-g-t 1/2] lib: Prioritise oom targetting our children.
@ 2018-05-25 12:19 ` Chris Wilson
0 siblings, 0 replies; 7+ messages in thread
From: Chris Wilson @ 2018-05-25 12:19 UTC (permalink / raw)
To: intel-gfx; +Cc: igt-dev
We are not nice parents and would sacrifice any one of our children so
that the core process can report the failure neatly.
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
---
lib/igt_core.c | 18 ++++++++++++++----
1 file changed, 14 insertions(+), 4 deletions(-)
diff --git a/lib/igt_core.c b/lib/igt_core.c
index e292ca24c..2bee0831b 100644
--- a/lib/igt_core.c
+++ b/lib/igt_core.c
@@ -564,17 +564,27 @@ static void print_usage(const char *help_str, bool output_on_stderr)
fprintf(f, "%s\n", help_str);
}
-
static void oom_adjust_for_doom(void)
{
+ const char always_kill[] = "900"; /* leave room for children! */
int fd;
- const char always_kill[] = "1000";
fd = open("/proc/self/oom_score_adj", O_WRONLY);
igt_assert(fd != -1);
igt_assert(write(fd, always_kill, sizeof(always_kill)) == sizeof(always_kill));
close(fd);
+}
+static void oom_adjust_for_greater_doom(void)
+{
+ const char always_kill[] = "1000";
+ int fd;
+
+ fd = open("/proc/self/oom_score_adj", O_WRONLY);
+ if (fd != -1) {
+ igt_ignore_warn(write(fd, always_kill, sizeof(always_kill)));
+ close(fd);
+ }
}
#ifdef HAVE_GLIB
@@ -1618,7 +1628,7 @@ bool __igt_fork_helper(struct igt_helper_process *proc)
igt_assert(0);
case 0:
reset_helper_process_list();
- oom_adjust_for_doom();
+ oom_adjust_for_greater_doom();
return true;
default:
@@ -1721,7 +1731,7 @@ bool __igt_fork(void)
test_child = true;
exit_handler_count = 0;
reset_helper_process_list();
- oom_adjust_for_doom();
+ oom_adjust_for_greater_doom();
return true;
default:
--
2.17.0
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx
^ permalink raw reply related [flat|nested] 7+ messages in thread
* [igt-dev] [PATCH i-g-t 1/2] lib: Prioritise oom targetting our children.
@ 2018-05-25 12:19 ` Chris Wilson
0 siblings, 0 replies; 7+ messages in thread
From: Chris Wilson @ 2018-05-25 12:19 UTC (permalink / raw)
To: intel-gfx; +Cc: igt-dev
We are not nice parents and would sacrifice any one of our children so
that the core process can report the failure neatly.
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
---
lib/igt_core.c | 18 ++++++++++++++----
1 file changed, 14 insertions(+), 4 deletions(-)
diff --git a/lib/igt_core.c b/lib/igt_core.c
index e292ca24c..2bee0831b 100644
--- a/lib/igt_core.c
+++ b/lib/igt_core.c
@@ -564,17 +564,27 @@ static void print_usage(const char *help_str, bool output_on_stderr)
fprintf(f, "%s\n", help_str);
}
-
static void oom_adjust_for_doom(void)
{
+ const char always_kill[] = "900"; /* leave room for children! */
int fd;
- const char always_kill[] = "1000";
fd = open("/proc/self/oom_score_adj", O_WRONLY);
igt_assert(fd != -1);
igt_assert(write(fd, always_kill, sizeof(always_kill)) == sizeof(always_kill));
close(fd);
+}
+static void oom_adjust_for_greater_doom(void)
+{
+ const char always_kill[] = "1000";
+ int fd;
+
+ fd = open("/proc/self/oom_score_adj", O_WRONLY);
+ if (fd != -1) {
+ igt_ignore_warn(write(fd, always_kill, sizeof(always_kill)));
+ close(fd);
+ }
}
#ifdef HAVE_GLIB
@@ -1618,7 +1628,7 @@ bool __igt_fork_helper(struct igt_helper_process *proc)
igt_assert(0);
case 0:
reset_helper_process_list();
- oom_adjust_for_doom();
+ oom_adjust_for_greater_doom();
return true;
default:
@@ -1721,7 +1731,7 @@ bool __igt_fork(void)
test_child = true;
exit_handler_count = 0;
reset_helper_process_list();
- oom_adjust_for_doom();
+ oom_adjust_for_greater_doom();
return true;
default:
--
2.17.0
_______________________________________________
igt-dev mailing list
igt-dev@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/igt-dev
^ permalink raw reply related [flat|nested] 7+ messages in thread
* [PATCH i-g-t 2/2] tests/drv_suspend: Suspend under memory pressure
2018-05-25 12:19 ` [igt-dev] " Chris Wilson
@ 2018-05-25 12:19 ` Chris Wilson
-1 siblings, 0 replies; 7+ messages in thread
From: Chris Wilson @ 2018-05-25 12:19 UTC (permalink / raw)
To: intel-gfx; +Cc: igt-dev, Tomi Sarvela
Recently we discovered that we have a race between swapping and
suspend in our resume path (we might be trying to page in an object
after disabling the block devices). Let's try to exercise that by
exhausting all of system memory before suspend.
v2: Explicitly share the large memory area on forking to avoid running
out of memory inside the suspend helpers (for they fork!)
References: https://bugs.freedesktop.org/show_bug.cgi?id=106640
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
Cc: Tomi Sarvela <tomi.p.sarvela@intel.com>
Reviewed-by: Antonio Argenziano <antonio.argenziano@intel.com>
---
lib/igt_core.c | 34 ++++++++++++++++------------
lib/igt_core.h | 1 +
tests/drv_suspend.c | 54 +++++++++++++++++++++++++++++++++++++++++++++
3 files changed, 75 insertions(+), 14 deletions(-)
diff --git a/lib/igt_core.c b/lib/igt_core.c
index 2bee0831b..95417d159 100644
--- a/lib/igt_core.c
+++ b/lib/igt_core.c
@@ -1766,20 +1766,7 @@ void igt_child_done(pid_t pid)
test_children[i] = test_children[i + 1];
}
-/**
- * igt_waitchildren:
- *
- * Wait for all children forked with igt_fork.
- *
- * The magic here is that exit codes from children will be correctly propagated
- * to the main thread, including the relevant exit code if a child thread failed.
- * Of course if multiple children failed with different exit codes the resulting
- * exit code will be non-deterministic.
- *
- * Note that igt_skip() will not be forwarded, feature tests need to be done
- * before spawning threads with igt_fork().
- */
-void igt_waitchildren(void)
+int __igt_waitchildren(void)
{
int err = 0;
int count;
@@ -1825,6 +1812,25 @@ void igt_waitchildren(void)
}
num_test_children = 0;
+ return err;
+}
+
+/**
+ * igt_waitchildren:
+ *
+ * Wait for all children forked with igt_fork.
+ *
+ * The magic here is that exit codes from children will be correctly propagated
+ * to the main thread, including the relevant exit code if a child thread failed.
+ * Of course if multiple children failed with different exit codes the resulting
+ * exit code will be non-deterministic.
+ *
+ * Note that igt_skip() will not be forwarded, feature tests need to be done
+ * before spawning threads with igt_fork().
+ */
+void igt_waitchildren(void)
+{
+ int err = __igt_waitchildren();
if (err)
igt_fail(err);
}
diff --git a/lib/igt_core.h b/lib/igt_core.h
index 3d7b787b2..6d4260403 100644
--- a/lib/igt_core.h
+++ b/lib/igt_core.h
@@ -742,6 +742,7 @@ bool __igt_fork(void);
for (int child = 0; child < (num_children); child++) \
for (; __igt_fork(); exit(0))
void igt_child_done(pid_t pid);
+int __igt_waitchildren(void);
void igt_waitchildren(void);
void igt_waitchildren_timeout(int seconds, const char *reason);
diff --git a/tests/drv_suspend.c b/tests/drv_suspend.c
index 2e39f20ae..9a9ff2005 100644
--- a/tests/drv_suspend.c
+++ b/tests/drv_suspend.c
@@ -160,6 +160,57 @@ test_sysfs_reader(bool hibernate)
igt_stop_helper(&reader);
}
+static void
+test_shrink(int fd, unsigned int mode)
+{
+ uint64_t *can_mlock, pin;
+
+ gem_quiescent_gpu(fd);
+ intel_purge_vm_caches(fd);
+
+ pin = (intel_get_total_ram_mb() + 1) << 20;
+
+ igt_debug("Total memory %'"PRIu64" B (%'"PRIu64" MiB)\n",
+ pin, pin >> 20);
+ can_mlock = mmap(NULL, pin, PROT_WRITE, MAP_SHARED | MAP_ANON, -1, 0);
+ igt_require(can_mlock != MAP_FAILED);
+
+ /* Lock all the system memory, forcing the driver into swap and OOM */
+ for (uint64_t inc = 64 << 20; inc >= 4 << 10; inc >>= 1) {
+ igt_debug("Testing+ %'"PRIu64" B (%'"PRIu64" MiB)\n",
+ *can_mlock, *can_mlock >> 20);
+
+ igt_fork(child, 1) {
+ for (uint64_t bytes = *can_mlock;
+ bytes <= pin;
+ bytes += inc) {
+ if (mlock(can_mlock, bytes))
+ break;
+
+ *can_mlock = bytes;
+ __sync_synchronize();
+ }
+ }
+ __igt_waitchildren();
+ }
+
+ intel_purge_vm_caches(fd);
+
+ igt_require(*can_mlock > 64 << 20);
+ *can_mlock -= 64 << 20;
+
+ igt_debug("Locking %'"PRIu64" B (%'"PRIu64" MiB)\n",
+ *can_mlock, *can_mlock >> 20);
+ igt_assert(!mlock(can_mlock, *can_mlock));
+ igt_info("Locked %'"PRIu64" B (%'"PRIu64" MiB)\n",
+ *can_mlock, *can_mlock >> 20);
+
+ intel_purge_vm_caches(fd);
+ igt_system_suspend_autoresume(mode, SUSPEND_TEST_NONE);
+
+ munmap(can_mlock, pin);
+}
+
static void
test_forcewake(int fd, bool hibernate)
{
@@ -199,6 +250,9 @@ igt_main
igt_subtest("sysfs-reader")
test_sysfs_reader(false);
+ igt_subtest("shrink")
+ test_shrink(fd, SUSPEND_STATE_MEM);
+
igt_subtest("forcewake")
test_forcewake(fd, false);
--
2.17.0
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx
^ permalink raw reply related [flat|nested] 7+ messages in thread
* [igt-dev] [PATCH i-g-t 2/2] tests/drv_suspend: Suspend under memory pressure
@ 2018-05-25 12:19 ` Chris Wilson
0 siblings, 0 replies; 7+ messages in thread
From: Chris Wilson @ 2018-05-25 12:19 UTC (permalink / raw)
To: intel-gfx; +Cc: igt-dev, Tomi Sarvela
Recently we discovered that we have a race between swapping and
suspend in our resume path (we might be trying to page in an object
after disabling the block devices). Let's try to exercise that by
exhausting all of system memory before suspend.
v2: Explicitly share the large memory area on forking to avoid running
out of memory inside the suspend helpers (for they fork!)
References: https://bugs.freedesktop.org/show_bug.cgi?id=106640
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
Cc: Tomi Sarvela <tomi.p.sarvela@intel.com>
Reviewed-by: Antonio Argenziano <antonio.argenziano@intel.com>
---
lib/igt_core.c | 34 ++++++++++++++++------------
lib/igt_core.h | 1 +
tests/drv_suspend.c | 54 +++++++++++++++++++++++++++++++++++++++++++++
3 files changed, 75 insertions(+), 14 deletions(-)
diff --git a/lib/igt_core.c b/lib/igt_core.c
index 2bee0831b..95417d159 100644
--- a/lib/igt_core.c
+++ b/lib/igt_core.c
@@ -1766,20 +1766,7 @@ void igt_child_done(pid_t pid)
test_children[i] = test_children[i + 1];
}
-/**
- * igt_waitchildren:
- *
- * Wait for all children forked with igt_fork.
- *
- * The magic here is that exit codes from children will be correctly propagated
- * to the main thread, including the relevant exit code if a child thread failed.
- * Of course if multiple children failed with different exit codes the resulting
- * exit code will be non-deterministic.
- *
- * Note that igt_skip() will not be forwarded, feature tests need to be done
- * before spawning threads with igt_fork().
- */
-void igt_waitchildren(void)
+int __igt_waitchildren(void)
{
int err = 0;
int count;
@@ -1825,6 +1812,25 @@ void igt_waitchildren(void)
}
num_test_children = 0;
+ return err;
+}
+
+/**
+ * igt_waitchildren:
+ *
+ * Wait for all children forked with igt_fork.
+ *
+ * The magic here is that exit codes from children will be correctly propagated
+ * to the main thread, including the relevant exit code if a child thread failed.
+ * Of course if multiple children failed with different exit codes the resulting
+ * exit code will be non-deterministic.
+ *
+ * Note that igt_skip() will not be forwarded, feature tests need to be done
+ * before spawning threads with igt_fork().
+ */
+void igt_waitchildren(void)
+{
+ int err = __igt_waitchildren();
if (err)
igt_fail(err);
}
diff --git a/lib/igt_core.h b/lib/igt_core.h
index 3d7b787b2..6d4260403 100644
--- a/lib/igt_core.h
+++ b/lib/igt_core.h
@@ -742,6 +742,7 @@ bool __igt_fork(void);
for (int child = 0; child < (num_children); child++) \
for (; __igt_fork(); exit(0))
void igt_child_done(pid_t pid);
+int __igt_waitchildren(void);
void igt_waitchildren(void);
void igt_waitchildren_timeout(int seconds, const char *reason);
diff --git a/tests/drv_suspend.c b/tests/drv_suspend.c
index 2e39f20ae..9a9ff2005 100644
--- a/tests/drv_suspend.c
+++ b/tests/drv_suspend.c
@@ -160,6 +160,57 @@ test_sysfs_reader(bool hibernate)
igt_stop_helper(&reader);
}
+static void
+test_shrink(int fd, unsigned int mode)
+{
+ uint64_t *can_mlock, pin;
+
+ gem_quiescent_gpu(fd);
+ intel_purge_vm_caches(fd);
+
+ pin = (intel_get_total_ram_mb() + 1) << 20;
+
+ igt_debug("Total memory %'"PRIu64" B (%'"PRIu64" MiB)\n",
+ pin, pin >> 20);
+ can_mlock = mmap(NULL, pin, PROT_WRITE, MAP_SHARED | MAP_ANON, -1, 0);
+ igt_require(can_mlock != MAP_FAILED);
+
+ /* Lock all the system memory, forcing the driver into swap and OOM */
+ for (uint64_t inc = 64 << 20; inc >= 4 << 10; inc >>= 1) {
+ igt_debug("Testing+ %'"PRIu64" B (%'"PRIu64" MiB)\n",
+ *can_mlock, *can_mlock >> 20);
+
+ igt_fork(child, 1) {
+ for (uint64_t bytes = *can_mlock;
+ bytes <= pin;
+ bytes += inc) {
+ if (mlock(can_mlock, bytes))
+ break;
+
+ *can_mlock = bytes;
+ __sync_synchronize();
+ }
+ }
+ __igt_waitchildren();
+ }
+
+ intel_purge_vm_caches(fd);
+
+ igt_require(*can_mlock > 64 << 20);
+ *can_mlock -= 64 << 20;
+
+ igt_debug("Locking %'"PRIu64" B (%'"PRIu64" MiB)\n",
+ *can_mlock, *can_mlock >> 20);
+ igt_assert(!mlock(can_mlock, *can_mlock));
+ igt_info("Locked %'"PRIu64" B (%'"PRIu64" MiB)\n",
+ *can_mlock, *can_mlock >> 20);
+
+ intel_purge_vm_caches(fd);
+ igt_system_suspend_autoresume(mode, SUSPEND_TEST_NONE);
+
+ munmap(can_mlock, pin);
+}
+
static void
test_forcewake(int fd, bool hibernate)
{
@@ -199,6 +250,9 @@ igt_main
igt_subtest("sysfs-reader")
test_sysfs_reader(false);
+ igt_subtest("shrink")
+ test_shrink(fd, SUSPEND_STATE_MEM);
+
igt_subtest("forcewake")
test_forcewake(fd, false);
--
2.17.0
_______________________________________________
igt-dev mailing list
igt-dev@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/igt-dev
^ permalink raw reply related [flat|nested] 7+ messages in thread
* [igt-dev] ✓ Fi.CI.BAT: success for series starting with [i-g-t,1/2] lib: Prioritise oom targetting our children.
2018-05-25 12:19 ` [igt-dev] " Chris Wilson
(?)
(?)
@ 2018-05-25 13:38 ` Patchwork
-1 siblings, 0 replies; 7+ messages in thread
From: Patchwork @ 2018-05-25 13:38 UTC (permalink / raw)
To: Chris Wilson; +Cc: igt-dev
== Series Details ==
Series: series starting with [i-g-t,1/2] lib: Prioritise oom targetting our children.
URL : https://patchwork.freedesktop.org/series/43771/
State : success
== Summary ==
= CI Bug Log - changes from CI_DRM_4238 -> IGTPW_1401 =
== Summary - SUCCESS ==
No regressions found.
External URL: https://patchwork.freedesktop.org/api/1.0/series/43771/revisions/1/mbox/
== Known issues ==
Here are the changes found in IGTPW_1401 that come from known issues:
=== IGT changes ===
==== Possible fixes ====
igt@kms_pipe_crc_basic@suspend-read-crc-pipe-b:
fi-snb-2520m: INCOMPLETE (fdo#103713) -> PASS
fdo#103713 https://bugs.freedesktop.org/show_bug.cgi?id=103713
== Participating hosts (44 -> 39) ==
Missing (5): fi-ctg-p8600 fi-ilk-m540 fi-byt-squawks fi-bsw-cyan fi-skl-6700hq
== Build changes ==
* IGT: IGT_4498 -> IGTPW_1401
CI_DRM_4238: 2771a5e6347eb63e43fdfc432a9f15ffb55ef209 @ git://anongit.freedesktop.org/gfx-ci/linux
IGTPW_1401: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_1401/
IGT_4498: f9ecb79ad8b02278cfdb5b82495df47061c04f8f @ git://anongit.freedesktop.org/xorg/app/intel-gpu-tools
== Testlist changes ==
+igt@drv_suspend@shrink
== Logs ==
For more details see: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_1401/issues.html
_______________________________________________
igt-dev mailing list
igt-dev@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/igt-dev
^ permalink raw reply [flat|nested] 7+ messages in thread
* [igt-dev] ✓ Fi.CI.IGT: success for series starting with [i-g-t,1/2] lib: Prioritise oom targetting our children.
2018-05-25 12:19 ` [igt-dev] " Chris Wilson
` (2 preceding siblings ...)
(?)
@ 2018-05-25 20:24 ` Patchwork
2018-05-25 20:33 ` Chris Wilson
-1 siblings, 1 reply; 7+ messages in thread
From: Patchwork @ 2018-05-25 20:24 UTC (permalink / raw)
To: Chris Wilson; +Cc: igt-dev
== Series Details ==
Series: series starting with [i-g-t,1/2] lib: Prioritise oom targetting our children.
URL : https://patchwork.freedesktop.org/series/43771/
State : success
== Summary ==
= CI Bug Log - changes from IGT_4498_full -> IGTPW_1401_full =
== Summary - WARNING ==
Minor unknown changes coming with IGTPW_1401_full need to be verified
manually.
If you think the reported changes have nothing to do with the changes
introduced in IGTPW_1401_full, please notify your bug team to allow them
to document this new failure mode, which will reduce false positives in CI.
External URL: https://patchwork.freedesktop.org/api/1.0/series/43771/revisions/1/mbox/
== Possible new issues ==
Here are the unknown changes that may have been introduced in IGTPW_1401_full:
=== IGT changes ===
==== Possible regressions ====
{igt@drv_suspend@shrink}:
shard-snb: NOTRUN -> FAIL
shard-hsw: NOTRUN -> FAIL
shard-apl: NOTRUN -> FAIL
shard-glk: NOTRUN -> FAIL
==== Warnings ====
igt@gem_exec_schedule@deep-render:
shard-kbl: PASS -> SKIP
igt@gem_mocs_settings@mocs-rc6-vebox:
shard-kbl: SKIP -> PASS +1
igt@kms_chv_cursor_fail@pipe-a-256x256-bottom-edge:
shard-snb: SKIP -> PASS
== Known issues ==
Here are the changes found in IGTPW_1401_full that come from known issues:
=== IGT changes ===
==== Issues hit ====
{igt@drv_suspend@shrink}:
shard-kbl: NOTRUN -> INCOMPLETE (fdo#103665)
igt@gem_ppgtt@blt-vs-render-ctxn:
shard-kbl: PASS -> INCOMPLETE (fdo#106023, fdo#103665)
{igt@kms_available_modes_crc@available_mode_test_crc}:
shard-snb: PASS -> FAIL (fdo#106641)
igt@kms_cursor_legacy@2x-nonblocking-modeset-vs-cursor-atomic:
shard-glk: PASS -> FAIL (fdo#106509, fdo#105454)
igt@kms_flip_tiling@flip-to-y-tiled:
shard-glk: PASS -> FAIL (fdo#104724)
igt@kms_vblank@pipe-c-ts-continuation-suspend:
shard-kbl: PASS -> INCOMPLETE (fdo#103665)
==== Possible fixes ====
igt@drv_selftest@live_gtt:
shard-kbl: INCOMPLETE (fdo#103665) -> PASS
shard-glk: INCOMPLETE (fdo#103359, k.org#198133) -> PASS
igt@gem_ppgtt@blt-vs-render-ctx0:
shard-kbl: INCOMPLETE (fdo#106023, fdo#103665) -> PASS
{igt@kms_available_modes_crc@available_mode_test_crc}:
shard-apl: FAIL (fdo#106641) -> PASS
igt@kms_flip@flip-vs-expired-vblank:
shard-glk: FAIL (fdo#102887) -> PASS
igt@kms_flip@flip-vs-expired-vblank-interruptible:
shard-glk: FAIL (fdo#102887, fdo#105363) -> PASS
igt@kms_flip@plain-flip-fb-recreate:
shard-glk: FAIL (fdo#100368) -> PASS
igt@kms_flip_tiling@flip-to-x-tiled:
shard-glk: FAIL (fdo#103822, fdo#104724) -> PASS
igt@kms_plane_multiple@atomic-pipe-a-tiling-x:
shard-snb: FAIL (fdo#103166, fdo#104724) -> PASS
igt@kms_rotation_crc@sprite-rotation-180:
shard-snb: FAIL (fdo#103925, fdo#104724) -> PASS
{name}: This element is suppressed. This means it is ignored when computing
the status of the difference (SUCCESS, WARNING, or FAILURE).
fdo#100368 https://bugs.freedesktop.org/show_bug.cgi?id=100368
fdo#102887 https://bugs.freedesktop.org/show_bug.cgi?id=102887
fdo#103166 https://bugs.freedesktop.org/show_bug.cgi?id=103166
fdo#103359 https://bugs.freedesktop.org/show_bug.cgi?id=103359
fdo#103665 https://bugs.freedesktop.org/show_bug.cgi?id=103665
fdo#103822 https://bugs.freedesktop.org/show_bug.cgi?id=103822
fdo#103925 https://bugs.freedesktop.org/show_bug.cgi?id=103925
fdo#104724 https://bugs.freedesktop.org/show_bug.cgi?id=104724
fdo#105363 https://bugs.freedesktop.org/show_bug.cgi?id=105363
fdo#105454 https://bugs.freedesktop.org/show_bug.cgi?id=105454
fdo#106023 https://bugs.freedesktop.org/show_bug.cgi?id=106023
fdo#106509 https://bugs.freedesktop.org/show_bug.cgi?id=106509
fdo#106641 https://bugs.freedesktop.org/show_bug.cgi?id=106641
k.org#198133 https://bugzilla.kernel.org/show_bug.cgi?id=198133
== Participating hosts (5 -> 5) ==
No changes in participating hosts
== Build changes ==
* IGT: IGT_4498 -> IGTPW_1401
* Linux: CI_DRM_4227 -> CI_DRM_4238
CI_DRM_4227: a8727d3fe03770e4d523468dfbc487dfe01597d3 @ git://anongit.freedesktop.org/gfx-ci/linux
CI_DRM_4238: 2771a5e6347eb63e43fdfc432a9f15ffb55ef209 @ git://anongit.freedesktop.org/gfx-ci/linux
IGTPW_1401: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_1401/
IGT_4498: f9ecb79ad8b02278cfdb5b82495df47061c04f8f @ git://anongit.freedesktop.org/xorg/app/intel-gpu-tools
== Logs ==
For more details see: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_1401/shards.html
_______________________________________________
igt-dev mailing list
igt-dev@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/igt-dev
^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: [igt-dev] ✓ Fi.CI.IGT: success for series starting with [i-g-t,1/2] lib: Prioritise oom targetting our children.
2018-05-25 20:24 ` [igt-dev] ✓ Fi.CI.IGT: " Patchwork
@ 2018-05-25 20:33 ` Chris Wilson
0 siblings, 0 replies; 7+ messages in thread
From: Chris Wilson @ 2018-05-25 20:33 UTC (permalink / raw)
Cc: igt-dev
Quoting Patchwork (2018-05-25 21:24:03)
> == Series Details ==
>
> Series: series starting with [i-g-t,1/2] lib: Prioritise oom targetting our children.
> URL : https://patchwork.freedesktop.org/series/43771/
> State : success
>
> == Summary ==
>
> = CI Bug Log - changes from IGT_4498_full -> IGTPW_1401_full =
>
> == Summary - WARNING ==
>
> Minor unknown changes coming with IGTPW_1401_full need to be verified
> manually.
>
> If you think the reported changes have nothing to do with the changes
> introduced in IGTPW_1401_full, please notify your bug team to allow them
> to document this new failure mode, which will reduce false positives in CI.
>
> External URL: https://patchwork.freedesktop.org/api/1.0/series/43771/revisions/1/mbox/
>
> == Possible new issues ==
>
> Here are the unknown changes that may have been introduced in IGTPW_1401_full:
>
> === IGT changes ===
>
> ==== Possible regressions ====
>
> {igt@drv_suspend@shrink}:
> shard-snb: NOTRUN -> FAIL
> shard-hsw: NOTRUN -> FAIL
> shard-apl: NOTRUN -> FAIL
> shard-glk: NOTRUN -> FAIL
<6>[ 381.756790] [ pid ] uid tgid total_vm rss pgtables_bytes swapents oom_score_adj name
<6>[ 381.756809] [ 199] 0 199 43711 0 356352 179 0 systemd-journal
<6>[ 381.756818] [ 223] 0 223 11093 0 114688 523 -1000 systemd-udevd
<6>[ 381.756827] [ 323] 102 323 17652 0 176128 177 0 systemd-resolve
<6>[ 381.756834] [ 354] 0 354 45273 0 196608 206 0 thermald
<6>[ 381.756841] [ 375] 0 375 106781 0 327680 354 0 ModemManager
<6>[ 381.756848] [ 388] 0 388 8135 0 106496 100 0 cron
<6>[ 381.756856] [ 395] 0 395 17646 0 180224 181 0 systemd-logind
<6>[ 381.756863] [ 401] 104 401 65759 0 159744 454 0 rsyslogd
<6>[ 381.756870] [ 404] 118 404 11845 0 139264 152 0 avahi-daemon
<6>[ 381.756878] [ 413] 118 413 11769 0 131072 85 0 avahi-daemon
<6>[ 381.756885] [ 423] 0 423 1138 0 57344 41 0 acpid
<6>[ 381.756893] [ 432] 0 432 27627 0 114688 101 0 irqbalance
<6>[ 381.756900] [ 438] 0 438 42936 2 225280 1998 0 networkd-dispat
<6>[ 381.756908] [ 440] 106 440 12594 0 139264 250 -900 dbus-daemon
<6>[ 381.756915] [ 447] 0 447 11188 0 126976 150 0 wpa_supplicant
<6>[ 381.756922] [ 451] 0 451 2479 0 57344 36 0 rngd
<6>[ 381.756929] [ 490] 0 490 72217 0 204800 219 0 polkitd
<6>[ 381.756937] [ 504] 0 504 120443 0 421888 716 0 NetworkManager
<6>[ 381.756944] [ 609] 0 609 18074 0 180224 188 -1000 sshd
<6>[ 381.756952] [ 611] 0 611 4350 0 73728 37 0 agetty
<6>[ 381.756959] [ 773] 0 773 26431 1 241664 248 0 sshd
<6>[ 381.756966] [ 778] 1000 778 19149 1 180224 269 0 systemd
<6>[ 381.756973] [ 781] 1000 781 28473 0 262144 620 0 (sd-pam)
<6>[ 381.756981] [ 819] 1000 819 27041 1 245760 290 0 sshd
<6>[ 381.756988] [ 848] 1000 848 1397624 0 700416 28215 0 java
<6>[ 381.756995] [ 880] 1000 880 3526 1 73728 72 0 bash
<6>[ 381.757003] [ 946] 0 946 16707 1 180224 119 0 sudo
<6>[ 381.757010] [ 951] 0 951 2479 0 65536 36 0 rngd
<6>[ 381.757017] [ 969] 1000 969 3807 0 77824 45 0 dmesg
<6>[ 381.757024] [ 971] 0 971 16707 1 180224 120 0 sudo
<6>[ 381.757031] [ 975] 0 975 1129 0 53248 22 0 owatch
<6>[ 381.757039] [ 976] 0 976 264811 0 577536 32095 0 python3
<6>[ 381.757056] [ 1558] 0 1558 6414 1 98304 304 0 dhclient
<6>[ 381.757064] [ 1699] 0 1699 2042728 1 405504 430 900 drv_suspend
<6>[ 381.757071] [ 1712] 0 1712 2042728 1929000 15839232 0 1000 drv_suspend
<3>[ 381.757076] Out of memory: Kill process 1699 (drv_suspend) score 900 or sacrifice child
<3>[ 381.757690] Killed process 1699 (drv_suspend) total-vm:8170912kB, anon-rss:0kB, file-rss:0kB, shmem-rss:4kB
How? Explain to me how oomkiller picked the parent with score 900 over
the child that has a base score of 1000.
-Chris
_______________________________________________
igt-dev mailing list
igt-dev@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/igt-dev
^ permalink raw reply [flat|nested] 7+ messages in thread
end of thread, other threads:[~2018-05-25 20:33 UTC | newest]
Thread overview: 7+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2018-05-25 12:19 [PATCH i-g-t 1/2] lib: Prioritise oom targetting our children Chris Wilson
2018-05-25 12:19 ` [igt-dev] " Chris Wilson
2018-05-25 12:19 ` [PATCH i-g-t 2/2] tests/drv_suspend: Suspend under memory pressure Chris Wilson
2018-05-25 12:19 ` [igt-dev] " Chris Wilson
2018-05-25 13:38 ` [igt-dev] ✓ Fi.CI.BAT: success for series starting with [i-g-t,1/2] lib: Prioritise oom targetting our children Patchwork
2018-05-25 20:24 ` [igt-dev] ✓ Fi.CI.IGT: " Patchwork
2018-05-25 20:33 ` Chris Wilson
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.