* [PATCH] drm/i915: Break long iterations for get/put shmemfs pages
@ 2018-11-05 17:06 Chris Wilson
2018-11-05 17:37 ` ✗ Fi.CI.BAT: failure for " Patchwork
2018-11-06 10:55 ` [PATCH] " Joonas Lahtinen
0 siblings, 2 replies; 4+ messages in thread
From: Chris Wilson @ 2018-11-05 17:06 UTC (permalink / raw)
To: intel-gfx; +Cc: Matthew Auld
As we may have to iterate a few thousand elements to acquire and release
the shmemfs backing storage for a GPU object, we need to break up the
long loop with cond_resched() to retain a modicum of low latency for
other processes.
Testcase: igt/benchmarks/gem_syslatency
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
Cc: Kuo-Hsin Yang <vovoy@chromium.org>
Cc: Matthew Auld <matthew.auld@intel.com>
Cc: Joonas Lahtinen <joonas.lahtinen@linux.intel.com>
---
drivers/gpu/drm/i915/i915_gem.c | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
diff --git a/drivers/gpu/drm/i915/i915_gem.c b/drivers/gpu/drm/i915/i915_gem.c
index b1caff07ed65..a120112d0621 100644
--- a/drivers/gpu/drm/i915/i915_gem.c
+++ b/drivers/gpu/drm/i915/i915_gem.c
@@ -2404,6 +2404,7 @@ i915_gem_object_put_pages_gtt(struct drm_i915_gem_object *obj,
mark_page_accessed(page);
put_page(page);
+ cond_resched();
}
obj->mm.dirty = false;
@@ -2574,6 +2575,7 @@ static int i915_gem_object_get_pages_gtt(struct drm_i915_gem_object *obj)
gfp_t gfp = noreclaim;
do {
+ cond_resched();
page = shmem_read_mapping_page_gfp(mapping, i, gfp);
if (likely(!IS_ERR(page)))
break;
@@ -2584,7 +2586,6 @@ static int i915_gem_object_get_pages_gtt(struct drm_i915_gem_object *obj)
}
i915_gem_shrink(dev_priv, 2 * page_count, NULL, *s++);
- cond_resched();
/*
* We've tried hard to allocate the memory by reaping
--
2.19.1
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx
^ permalink raw reply related [flat|nested] 4+ messages in thread
* ✗ Fi.CI.BAT: failure for drm/i915: Break long iterations for get/put shmemfs pages
2018-11-05 17:06 [PATCH] drm/i915: Break long iterations for get/put shmemfs pages Chris Wilson
@ 2018-11-05 17:37 ` Patchwork
2018-11-06 10:55 ` [PATCH] " Joonas Lahtinen
1 sibling, 0 replies; 4+ messages in thread
From: Patchwork @ 2018-11-05 17:37 UTC (permalink / raw)
To: Chris Wilson; +Cc: intel-gfx
== Series Details ==
Series: drm/i915: Break long iterations for get/put shmemfs pages
URL : https://patchwork.freedesktop.org/series/52036/
State : failure
== Summary ==
= CI Bug Log - changes from CI_DRM_5088 -> Patchwork_10727 =
== Summary - FAILURE ==
Serious unknown changes coming with Patchwork_10727 absolutely need to be
verified manually.
If you think the reported changes have nothing to do with the changes
introduced in Patchwork_10727, 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/52036/revisions/1/mbox/
== Possible new issues ==
Here are the unknown changes that may have been introduced in Patchwork_10727:
=== IGT changes ===
==== Possible regressions ====
igt@drv_module_reload@basic-no-display:
fi-byt-clapper: PASS -> WARN
== Known issues ==
Here are the changes found in Patchwork_10727 that come from known issues:
=== IGT changes ===
==== Issues hit ====
igt@amdgpu/amd_basic@cs-compute:
fi-kbl-8809g: NOTRUN -> FAIL (fdo#108094)
igt@amdgpu/amd_prime@amd-to-i915:
fi-kbl-8809g: NOTRUN -> FAIL (fdo#107341)
igt@gem_exec_fence@basic-await-default:
fi-byt-j1900: PASS -> INCOMPLETE (fdo#102657)
igt@kms_pipe_crc_basic@suspend-read-crc-pipe-a:
fi-byt-clapper: PASS -> FAIL (fdo#103191, fdo#107362) +1
fi-icl-u: NOTRUN -> INCOMPLETE (fdo#107713)
igt@kms_pipe_crc_basic@suspend-read-crc-pipe-b:
fi-blb-e6850: PASS -> INCOMPLETE (fdo#107718)
==== Possible fixes ====
igt@drv_module_reload@basic-reload-inject:
fi-byt-clapper: WARN -> PASS
igt@kms_pipe_crc_basic@hang-read-crc-pipe-b:
fi-byt-clapper: FAIL (fdo#103191, fdo#107362) -> PASS
igt@kms_pipe_crc_basic@suspend-read-crc-pipe-b:
fi-cfl-8109u: FAIL (fdo#103375) -> PASS +1
igt@pm_rpm@module-reload:
fi-byt-clapper: FAIL -> PASS
fdo#102657 https://bugs.freedesktop.org/show_bug.cgi?id=102657
fdo#103191 https://bugs.freedesktop.org/show_bug.cgi?id=103191
fdo#103375 https://bugs.freedesktop.org/show_bug.cgi?id=103375
fdo#107341 https://bugs.freedesktop.org/show_bug.cgi?id=107341
fdo#107362 https://bugs.freedesktop.org/show_bug.cgi?id=107362
fdo#107713 https://bugs.freedesktop.org/show_bug.cgi?id=107713
fdo#107718 https://bugs.freedesktop.org/show_bug.cgi?id=107718
fdo#108094 https://bugs.freedesktop.org/show_bug.cgi?id=108094
== Participating hosts (49 -> 45) ==
Additional (3): fi-icl-u fi-kbl-8809g fi-pnv-d510
Missing (7): fi-ilk-m540 fi-hsw-4200u fi-skl-guc fi-byt-squawks fi-bsw-cyan fi-apl-guc fi-ctg-p8600
== Build changes ==
* Linux: CI_DRM_5088 -> Patchwork_10727
CI_DRM_5088: 1a4a6dafa1fdcab0fbf0a5ef7f4c56be9c49b87e @ git://anongit.freedesktop.org/gfx-ci/linux
IGT_4709: 15dff9353621d0746b80fae534c20621e03a9f01 @ git://anongit.freedesktop.org/xorg/app/intel-gpu-tools
Patchwork_10727: 152412f441d8feb5ed9ae66a23821c5f94ff5cda @ git://anongit.freedesktop.org/gfx-ci/linux
== Linux commits ==
152412f441d8 drm/i915: Break long iterations for get/put shmemfs pages
== Logs ==
For more details see: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_10727/issues.html
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx
^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: [PATCH] drm/i915: Break long iterations for get/put shmemfs pages
2018-11-05 17:06 [PATCH] drm/i915: Break long iterations for get/put shmemfs pages Chris Wilson
2018-11-05 17:37 ` ✗ Fi.CI.BAT: failure for " Patchwork
@ 2018-11-06 10:55 ` Joonas Lahtinen
2018-11-06 13:41 ` Chris Wilson
1 sibling, 1 reply; 4+ messages in thread
From: Joonas Lahtinen @ 2018-11-06 10:55 UTC (permalink / raw)
To: Chris Wilson, intel-gfx; +Cc: Matthew Auld
Quoting Chris Wilson (2018-11-05 19:06:40)
> As we may have to iterate a few thousand elements to acquire and release
> the shmemfs backing storage for a GPU object, we need to break up the
> long loop with cond_resched() to retain a modicum of low latency for
> other processes.
>
> Testcase: igt/benchmarks/gem_syslatency
> Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
> Cc: Kuo-Hsin Yang <vovoy@chromium.org>
> Cc: Matthew Auld <matthew.auld@intel.com>
> Cc: Joonas Lahtinen <joonas.lahtinen@linux.intel.com>
Reviewed-by: Joonas Lahtinen <joonas.lahtinen@linux.intel.com>
Regards, Joonas
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx
^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: [PATCH] drm/i915: Break long iterations for get/put shmemfs pages
2018-11-06 10:55 ` [PATCH] " Joonas Lahtinen
@ 2018-11-06 13:41 ` Chris Wilson
0 siblings, 0 replies; 4+ messages in thread
From: Chris Wilson @ 2018-11-06 13:41 UTC (permalink / raw)
To: Joonas Lahtinen, intel-gfx; +Cc: Matthew Auld
Quoting Joonas Lahtinen (2018-11-06 10:55:32)
> Quoting Chris Wilson (2018-11-05 19:06:40)
> > As we may have to iterate a few thousand elements to acquire and release
> > the shmemfs backing storage for a GPU object, we need to break up the
> > long loop with cond_resched() to retain a modicum of low latency for
> > other processes.
> >
> > Testcase: igt/benchmarks/gem_syslatency
> > Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
> > Cc: Kuo-Hsin Yang <vovoy@chromium.org>
> > Cc: Matthew Auld <matthew.auld@intel.com>
> > Cc: Joonas Lahtinen <joonas.lahtinen@linux.intel.com>
>
> Reviewed-by: Joonas Lahtinen <joonas.lahtinen@linux.intel.com>
Applied as this improves the current syslatency, and further improves
Kuo-Hsin's patch.
-Chris
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx
^ permalink raw reply [flat|nested] 4+ messages in thread
end of thread, other threads:[~2018-11-06 13:41 UTC | newest]
Thread overview: 4+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2018-11-05 17:06 [PATCH] drm/i915: Break long iterations for get/put shmemfs pages Chris Wilson
2018-11-05 17:37 ` ✗ Fi.CI.BAT: failure for " Patchwork
2018-11-06 10:55 ` [PATCH] " Joonas Lahtinen
2018-11-06 13:41 ` 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.