Hello Jose,
Sorry for delay in response, I was on vacation.
Please find my comments inline.
Regards
Shashank
On 4/12/2017 3:28 PM, Jose Abreu wrote:
Hi Shashank,
On 07-04-2017 17:39, Shashank Sharma wrote:
HDMI displays can support various output types, based on
the color space and
On Wed, 19 Apr 2017, Arkadiusz Hiler wrote:
> On Wed, Apr 19, 2017 at 03:22:19PM +0300, Jani Nikula wrote:
>> On Wed, 19 Apr 2017, Arkadiusz Hiler wrote:
>> > We define gettid() using syscall() because glibc does not provide a
>> > wrapper.
On Thu, Apr 13, 2017 at 11:15:37AM +0200, Maarten Lankhorst wrote:
> This is required to for i915 to convert connector properties to atomic.
>
> Changes since v1:
> - Add docbook info. (danvet)
> - Change picture_aspect_ratio to enum hdmi_picture_aspect.
>
> Signed-off-by: Maarten Lankhorst
On Wed, Apr 19, 2017 at 11:49:26AM +0100, Chris Wilson wrote:
> On Tue, Apr 18, 2017 at 01:23:20PM -0700, Michel Thierry wrote:
> > + ret = i915_gem_reset_prepare_engine(engine);
> > + if (ret) {
> > + DRM_ERROR("Previous reset failed - promote to full reset\n");
> > + goto
Chris Wilson writes:
> If we have a long period of idleness, we turn off the hangcheck timer
> and stop polling the hardware. Before we restart the hangcheck, we
> should clear the previous timestamps to prevent us thinking that the
> engine was stalled for a long time,
On Wed, Apr 19, 2017 at 03:22:19PM +0300, Jani Nikula wrote:
> On Wed, 19 Apr 2017, Arkadiusz Hiler wrote:
> > We define gettid() using syscall() because glibc does not provide a
> > wrapper.
> >
> > Android's bionic got the syscall covered though.
> >
> >
On Wed, Apr 12, 2017 at 12:50:00PM +0200, Maarten Lankhorst wrote:
> Some atomic properties are common between the various kinds of
> connectors, for example a lot of them use panel fitting mode.
> It makes sense to put a lot of it in a common place, so each
> connector can use it while they're
On 19/04/17 03:20, Chris Wilson wrote:
On Tue, Apr 18, 2017 at 01:23:31PM -0700, Michel Thierry wrote:
*** General ***
Watchdog timeout (or "media engine reset") is a feature that allows
userland applications to enable hang detection on individual batch buffers.
The detection mechanism
On Wed, Apr 19, 2017 at 10:11:37AM -0700, Michel Thierry wrote:
>
>
> On 19/04/17 03:20, Chris Wilson wrote:
> >On Tue, Apr 18, 2017 at 01:23:31PM -0700, Michel Thierry wrote:
> >>*** General ***
> >>
> >>Watchdog timeout (or "media engine reset") is a feature that allows
> >>userland
From: Arun Siluvery
GuC expects a list of registers from the driver which are saved/restored
during engine reset. The type of value to be saved is controlled by
flags. We provide a minimal set of registers that we want GuC to save and
restore. This is not an issue
On Wed, Apr 19, 2017 at 01:01:50PM +0200, Arkadiusz Hiler wrote:
> AOSP, as of this commit, does not include libdrm with fence defines.
Pushed local defines that should keep the benchmark happy.
Please do reset the configure libdrm requirements to what is available
on min(Android, debian
On 19/04/17 10:51, Chris Wilson wrote:
On Wed, Apr 19, 2017 at 10:11:37AM -0700, Michel Thierry wrote:
On 19/04/17 03:20, Chris Wilson wrote:
On Tue, Apr 18, 2017 at 01:23:31PM -0700, Michel Thierry wrote:
*** General ***
Watchdog timeout (or "media engine reset") is a feature that
Regards
Shashank
On 4/8/2017 11:13 PM, Emil Velikov wrote:
Hi Shashank,
On 7 April 2017 at 17:39, Shashank Sharma wrote:
+ u64 hdmi_420_cap_map = connector->display_info.hdmi.ycbcr420_vcb_map;
for (i = 0; i < len; i++) {
struct
Minor nits, otherwise the vmwgfx part,
Reviewed-by: Sinclair Yeh
On Tue, Apr 18, 2017 at 06:17:00PM -0600, Logan Gunthorpe wrote:
> Seeing the kunmap_atomic dma_buf_op shares the same name with a macro
s^
> in higmem.h, the former can be
On Wed, Apr 19, 2017 at 09:52:28AM -0700, Dongwon Kim wrote:
> I tried your patch but it didn't fix the original
> problem. I think it is somehow related to the flushing condition
> here:
>
> @@ -1129,10 +1129,8 @@ i915_gem_execbuffer_move_to_gpu(struct
> drm_i915_gem_request *req,
> if
On Wed, Apr 12, 2017 at 12:50:07PM +0200, Maarten Lankhorst wrote:
> SDVO was the last connector that's still using the legacy paths
> for properties, and this is with a reason!
>
> This connector implements a lot of properties dynamically,
> and some of them shared with the digital connector
On Tue, Apr 18, 2017 at 01:23:33PM -0700, Michel Thierry wrote:
> Final enablement patch for GPU hang detection using watchdog timeout.
> Using the gem_context_setparam ioctl, users can specify the desired
> timeout value in microseconds, and the driver will do the conversion to
> 'timestamps'.
>
Regards
Shashank
On 4/12/2017 3:19 PM, Jose Abreu wrote:
Hi Shashank,
On 07-04-2017 17:39, Shashank Sharma wrote:
HDMI source must set output colorspace information in AVI
infoframes, so that the sink can decode upcoming frames
accordingly.
As this patch series is adding support for HDMI
On Wed, Apr 19, 2017 at 05:09:46PM +0300, Mika Kuoppala wrote:
> Chris Wilson writes:
>
> > If we have a long period of idleness, we turn off the hangcheck timer
> > and stop polling the hardware. Before we restart the hangcheck, we
> > should clear the previous
On Wed, Apr 19, 2017 at 11:13:17AM -0700, Dongwon Kim wrote:
> Chris,
>
> Just to make sure, you want to just remove write_domain check from
> if statement before clflush in execbuffer_move_to_gpu. Am I right?
> I will try both (cache_dirty only vs cache_dirty & !cache_coherent)
> and get back
On Wed, Apr 19, 2017 at 6:17 PM, Lukas Wunner wrote:
> On Wed, Apr 19, 2017 at 12:28:50PM +0200, Rafael J. Wysocki wrote:
>> On Wed, Apr 19, 2017 at 10:59 AM, Hans de Goede wrote:
>> > On 18-04-17 15:34, Rafael J. Wysocki wrote:
>> >> On Tue, Apr 18, 2017 at
Chris,
I think my assumption was not correct. I took out write_domain
check but it is still failing. However, here are couple of
observation points. I did some experiments.. One of them is
to take out even cache_dirty check from eb_move_to_gpu.
With this, all sample tests were passing but as
Seeing the kunmap_atomic dma_buf_ops share the same name with a macro
in highmem.h, the former can be aliased if any dma-buf user includes
that header.
I'm personally trying to include highmem.h inside scatterlist.h and this
breaks the dma-buf code proper.
Christoph Hellwig suggested [1]
== Series Details ==
Series: dma-buf: Rename dma-ops to prevent conflict with kunmap_atomic macro
(rev2)
URL : https://patchwork.freedesktop.org/series/23207/
State : success
== Summary ==
Series 23207v2 dma-buf: Rename dma-ops to prevent conflict with kunmap_atomic
macro
On Wed, Apr 19, 2017 at 2:04 PM, Hans de Goede wrote:
> Several Bay / Cherry Trail devices (all of which ship with Windows 10) hide
> the LPSS PWM controller in ACPI, typically the _STA method looks like this:
>
> Method (_STA, 0, NotSerialized) // _STA: Status
> {
>
On Wed, Apr 19, 2017 at 09:52:28AM -0700, Dongwon Kim wrote:
> I tried your patch but it didn't fix the original
> problem. I think it is somehow related to the flushing condition
> here:
>
> @@ -1129,10 +1129,8 @@ i915_gem_execbuffer_move_to_gpu(struct
> drm_i915_gem_request *req,
> if
On Wed, Apr 19, 2017 at 09:52:28AM -0700, Dongwon Kim wrote:
> I tried your patch but it didn't fix the original
> problem. I think it is somehow related to the flushing condition
> here:
I don't think I actually checked what GPU you observed it on - I was
assuming llc, since that was the last
Chris,
Just to make sure, you want to just remove write_domain check from
if statement before clflush in execbuffer_move_to_gpu. Am I right?
I will try both (cache_dirty only vs cache_dirty & !cache_coherent)
and get back to you shortly.
On Wed, Apr 19, 2017 at 07:08:33PM +0100, Chris Wilson
On 04/19/2017 12:36 PM, Logan Gunthorpe wrote:
Seeing the kunmap_atomic dma_buf_ops share the same name with a macro
in highmem.h, the former can be aliased if any dma-buf user includes
that header.
I'm personally trying to include highmem.h inside scatterlist.h and this
breaks the dma-buf code
On 18/04/17 13:23, Michel Thierry wrote:
Final enablement patch for GPU hang detection using watchdog timeout.
Using the gem_context_setparam ioctl, users can specify the desired
timeout value in microseconds, and the driver will do the conversion to
'timestamps'.
The recommended default
On Wed, Apr 12, 2017 at 12:50:04PM +0200, Maarten Lankhorst wrote:
> intel_dp supports 3 properties, scaling mode, broadcast rgb and
> force_audio. intel_digital_connector handles the plumbing,
> so we only have to hook this up in compute_config and init.
>
> Signed-off-by: Maarten Lankhorst
Regards
Shashank
On 4/10/2017 3:17 PM, Andrzej Hajda wrote:
On 07.04.2017 18:39, Shashank Sharma wrote:
HDMI 1.4b support the CEA video modes as per range of CEA-861-D (VIC 1-64).
For any other mode, the VIC filed in AVI infoframes should be 0.
HDMI 2.0 sinks, support video modes range as
On Wed, Apr 19, 2017 at 12:28:50PM +0200, Rafael J. Wysocki wrote:
> On Wed, Apr 19, 2017 at 10:59 AM, Hans de Goede wrote:
> > On 18-04-17 15:34, Rafael J. Wysocki wrote:
> >> On Tue, Apr 18, 2017 at 1:54 PM, Hans de Goede wrote:
> >>>
> >>> Several
I tried your patch but it didn't fix the original
problem. I think it is somehow related to the flushing condition
here:
@@ -1129,10 +1129,8 @@ i915_gem_execbuffer_move_to_gpu(struct
drm_i915_gem_request *req,
if (vma->exec_entry->flags & EXEC_OBJECT_ASYNC)
continue;
On 18/04/17 13:23, Michel Thierry wrote:
Final enablement patch for GPU hang detection using watchdog timeout.
Using the gem_context_setparam ioctl, users can specify the desired
timeout value in microseconds, and the driver will do the conversion to
'timestamps'.
The recommended default
Chris,
I am sorry that I didn't tell you about GPU that
I am working on. It is GEN9LP. Our target is APL-I.
So no LLC is available.
On Wed, Apr 19, 2017 at 07:26:29PM +0100, Chris Wilson wrote:
> On Wed, Apr 19, 2017 at 11:13:17AM -0700, Dongwon Kim wrote:
> > Chris,
> >
> > Just to make sure,
On 19/04/17 03:27, Chris Wilson wrote:
On Tue, Apr 18, 2017 at 01:23:29PM -0700, Michel Thierry wrote:
This patch adds per engine reset and recovery (TDR) support when GuC is
used to submit workloads to GPU.
In the case of i915 directly submission to ELSP, driver manages hang
detection,
All the requests at the same priority are executed in FIFO order. They
do not need to be stored in the rbtree themselves, as they are a simple
list within a level. If we move the requests at one priority into a list,
we can then reduce the rbtree to the set of priorities. This should keep
the
Chris Wilson writes:
> On Thu, Apr 13, 2017 at 01:02:37PM +0300, Mika Kuoppala wrote:
>> Parallel spin on all engines.
>>
>> Signed-off-by: Mika Kuoppala
>> ---
>> tests/gem_spin_batch.c | 31 +--
>> 1 file
On Tue, 11 Apr 2017, Kees Cook wrote:
> While highly unlikely, this makes sure that the string built from
> engine names won't be processed as a format string.
>
> Signed-off-by: Kees Cook
Pushed to drm-intel-next-queued, thanks for the patch.
BR,
Android does not have procps and it's not easy to compile it as a
dependency.
We can provide alternative, "naive" implementation that just shells out
to external commands (i.e. pkill and lsof) in case we do not have the
library.
v2: do not ifdef insides of functions (J. Nikula)
Cc: Jani Nikula
From: Marta Löfstedt
The intention of this test is use it to test that the CI system
that runs IGT is collecting the results correctly.
For: VIZ-10281
v2: minor edits
Signed-off-by: Marta Lofstedt
Reviewed-by: Petri Latvala
On Tue, Apr 18, 2017 at 01:23:31PM -0700, Michel Thierry wrote:
> *** General ***
>
> Watchdog timeout (or "media engine reset") is a feature that allows
> userland applications to enable hang detection on individual batch buffers.
> The detection mechanism itself is mostly bound to the hardware
On Wed, Apr 19, 2017 at 10:59 AM, Hans de Goede wrote:
> Hi,
>
>
> On 18-04-17 15:34, Rafael J. Wysocki wrote:
>>
>> On Tue, Apr 18, 2017 at 1:54 PM, Hans de Goede
>> wrote:
>>>
>>> Several Cherry Trail devices (all of which ship with Windows 10) hide
Currently whole igt_kms.c is disabled while compiling on Android without
cairo, so this tests does not compile.
There should be cleaner a way to disable only cairo dependant parts
which should allow us to enable at least some of the KMS tests, but
that's a bigger rework for another time.
Use drm stubs that sit under lib/stubs.
Also drop strange, nonexistent additions to LOCAL_C_INCLUDES.
Signed-off-by: Arkadiusz Hiler
---
benchmarks/Android.mk | 3 ++-
demos/Android.mk | 3 ++-
lib/Android.mk| 4 ++--
lib/tests/Android.mk | 4 ++--
Add dependency on libz instead of doing path magic.
Signed-off-by: Arkadiusz Hiler
---
tools/Android.mk | 8
1 file changed, 4 insertions(+), 4 deletions(-)
diff --git a/tools/Android.mk b/tools/Android.mk
index 5653572..96075c9 100644
--- a/tools/Android.mk
AOSP, as of this commit, does not include libdrm with fence defines.
Signed-off-by: Arkadiusz Hiler
---
benchmarks/Android.mk | 4 +++-
1 file changed, 3 insertions(+), 1 deletion(-)
diff --git a/benchmarks/Android.mk b/benchmarks/Android.mk
index c0fa09f..a790ec7
We define gettid() using syscall() because glibc does not provide a
wrapper.
Android's bionic got the syscall covered though.
Signed-off-by: Arkadiusz Hiler
---
lib/igt_aux.h | 5 +
1 file changed, 5 insertions(+)
diff --git a/lib/igt_aux.h b/lib/igt_aux.h
index
We have a lot of `#ifdef HAVE_UDEV` and ` #if HAVE_UDEV` all over the
place, but ifdef and if have a slightly different semantics.
Let make it consistent by using #ifdefs only.
Signed-off-by: Arkadiusz Hiler
---
lib/igt_aux.c | 2 +-
Using `libdrm/` impairs compatibility with android build system and
pkg-config manages -I for us on regular distros.
Signed-off-by: Arkadiusz Hiler
---
tests/drm_import_export.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git
Those tools does not build on Android due to "Linux-only" dependencies.
Let's blacklist them for now.
Signed-off-by: Arkadiusz Hiler
---
tools/Android.mk | 2 ++
1 file changed, 2 insertions(+)
diff --git a/tools/Android.mk b/tools/Android.mk
index 6cdedeb..0602e8c
IGTs are broken for Android since the introduction of dependency on procps. Over
time other incompatibilities built up.
I took the liberty to fix some of the issues, workaround couple of others and
blacklist heavily incompatible tools/tests.
It builds on (almost) vanilla AOSP now.
Github:
Newer Android's build system complains about unused files if we leave
those there.
Signed-off-by: Arkadiusz Hiler
---
lib/Android.mk | 2 +-
tools/Android.mk | 2 +-
2 files changed, 2 insertions(+), 2 deletions(-)
diff --git a/lib/Android.mk b/lib/Android.mk
index
Several Bay / Cherry Trail devices (all of which ship with Windows 10) hide
the LPSS PWM controller in ACPI, typically the _STA method looks like this:
Method (_STA, 0, NotSerialized) // _STA: Status
{
If (OSID == One)
{
Return (Zero)
}
Return
The INT0002 device is necessary to clear wakeup interrupt sources
on Cherry Trail devices, without it we get nobody cared IRQ msgs
and some systems don't properly resume at all without it.
Signed-off-by: Hans de Goede
---
Changes in v6:
-This is a new patch in v6 of this
On Wed, 19 Apr 2017, Arkadiusz Hiler wrote:
> We define gettid() using syscall() because glibc does not provide a
> wrapper.
>
> Android's bionic got the syscall covered though.
>
> Signed-off-by: Arkadiusz Hiler
> ---
> lib/igt_aux.h | 5
On Wed, 19 Apr 2017, Arkadiusz Hiler wrote:
> Android does not have procps and it's not easy to compile it as a
> dependency.
>
> We can provide alternative, "naive" implementation that just shells out
> to external commands (i.e. pkill and lsof) in case we do not have
GVT needs single submission and cannot allow merge. So when GuC submitting
a GVT request, the next one should be submitted to guc later until the
previous one is completed. This is following the usage when using execlist
mode submission.
Cc: ch...@chris-wilson.co.uk
Signed-off-by: Chuanxiao Dong
GVT request needs a manual mmio load/restore. Before GuC submit
a request, send notification to gvt for mmio loading. And after
the GuC finished this GVT request, notify gvt again for mmio
restore. This follows the usage when using execlists submission.
Cc: xiao.zh...@intel.com
Cc:
refactor gvt context notification to proper files
v1:
use context_status_change instead of execlists_context_status_change
for better understanding(ZhengXiao)
remove the comment as it is obvious and not friendly to the caller(Kevin)
fix indent issues(Joonas)
rename the context_status_change to
refactor gvt force-single-submission to proper files
v1:
make force-single-submission specific to gvt (Chris)
keep the original code implementation (Chris)
Cc: ch...@chris-wilson.co.uk
Signed-off-by: Chuanxiao Dong
---
drivers/gpu/drm/i915/i915_gem_context.h | 13
== Series Details ==
Series: drm/i915/scheduler: add gvt force-single-submission and notification
for guc (rev4)
URL : https://patchwork.freedesktop.org/series/21972/
State : failure
== Summary ==
Series 21972v4 drm/i915/scheduler: add gvt force-single-submission and
notification for guc
Hi,
Please pull gvt next fixes for 4.12.
Thanks
--
The following changes since commit b35f34d1da4e77637869c8041a355da810f69fb6:
drm/i915/gvt: control the scheduler by timeslice usage (2017-03-30 13:34:10
+0800)
are available in the git repository at:
> -Original Message-
> From: Latvala, Petri
> Sent: Wednesday, April 19, 2017 12:08 PM
> To: Lofstedt, Marta
> Cc: intel-gfx@lists.freedesktop.org
> Subject: Re: [PATCH i-g-t] tests/meta_test: Add a meta test for sanity checks
> of CI systems
>
> On Wed, Apr
On Wed, Apr 19, 2017 at 10:41:43AM +0100, Chris Wilson wrote:
> diff --git a/include/uapi/drm/i915_drm.h b/include/uapi/drm/i915_drm.h
> index f43a22ae955b..200f2cf393b2 100644
> --- a/include/uapi/drm/i915_drm.h
> +++ b/include/uapi/drm/i915_drm.h
> @@ -395,6 +395,8 @@ typedef struct
On Tue, Apr 18, 2017 at 01:23:29PM -0700, Michel Thierry wrote:
> This patch adds per engine reset and recovery (TDR) support when GuC is
> used to submit workloads to GPU.
>
> In the case of i915 directly submission to ELSP, driver manages hang
> detection, recovery and resubmission. With GuC
On Tue, Apr 18, 2017 at 01:23:20PM -0700, Michel Thierry wrote:
> From: Arun Siluvery
>
> This change implements support for per-engine reset as an initial, less
> intrusive hang recovery option to be attempted before falling back to the
> legacy full GPU reset
On 18/04/2017 12:17, Patchwork wrote:
== Series Details ==
Series: drm/i915: Fix GCC 4.4 build issue with __intel_wait_for_register_fw
(rev2)
URL : https://patchwork.freedesktop.org/series/23020/
State : failure
== Summary ==
Series 23020v2 drm/i915: Fix GCC 4.4 build issue with
On Android libkmod.h is nested under libkmod directory, so we should
include appropriately.
Also we need to link with it.
Signed-off-by: Arkadiusz Hiler
---
benchmarks/Android.mk | 2 ++
lib/Android.mk| 1 +
lib/igt_kmod.h| 4
tests/Android.mk
Makefile.sources are included 1:1 in Android.mk files, and are not
parsed by automake. And yet those had some automake conditional logic.
Moving it to .am file is enough for now.
Also igt_chamelium.h included config.h without proper "HAVE_CONFIG_H"
guard, and the file itself was included
Android does not have procps and it's not easy to compile it as a
dependency.
We can provide alternative, "naive" implementation that just shells out
to external commands (i.e. pkill and lsof) in case we do not have the
library.
Signed-off-by: Arkadiusz Hiler
---
It does not build on Android with top libdrm.
Temporary hax.
Signed-off-by: Arkadiusz Hiler
---
tests/Android.mk | 1 +
1 file changed, 1 insertion(+)
diff --git a/tests/Android.mk b/tests/Android.mk
index 3186a2a..c67ddbd 100644
--- a/tests/Android.mk
+++
On 19/04/2017 11:09, Chris Wilson wrote:
On Wed, Apr 19, 2017 at 10:41:43AM +0100, Chris Wilson wrote:
diff --git a/include/uapi/drm/i915_drm.h b/include/uapi/drm/i915_drm.h
index f43a22ae955b..200f2cf393b2 100644
--- a/include/uapi/drm/i915_drm.h
+++ b/include/uapi/drm/i915_drm.h
@@ -395,6
All the requests at the same priority are executed in FIFO order. They
do not need to be stored in the rbtree themselves, as they are a simple
list within a level. If we move the requests at one priority into a list,
we can then reduce the rbtree to the set of priorities. This should keep
the
On Wed, Apr 19, 2017 at 08:34:56AM +0100, Chris Wilson wrote:
> @@ -677,9 +683,13 @@ static bool i915_guc_dequeue(struct intel_engine_cs
> *engine)
> port++;
> }
>
> - rb = rb_next(rb);
> - rb_erase(>priotree.node, >execlist_queue);
>
Some minor nitpicks on the series:
lib/tests/.gitignore:
You need to add igt_hdmi_inject here. Only
tests/ has automatic .gitignore generation.
tests/Makefile.sources:
You added kms_hdmi_inject to TESTS_progs, it should go to
TESTS_progs_M as it contains subtests. The difference is
>-Original Message-
>From: Tvrtko Ursulin [mailto:tursu...@ursulin.net]
>Sent: Wednesday, April 19, 2017 12:56 AM
>To: Intel-gfx@lists.freedesktop.org
>Cc: tursu...@ursulin.net; Ursulin, Tvrtko ; Ben
>Widawsky ; Chris Wilson
add/remove: 1/1 grow/shrink: 5/4 up/down: 391/-578 (-187)
function old new delta
execlists_submit_ports 262 471+209
port_assign.isra - 136+136
capture
We can simplify our tracking of pending writes in an execbuf to the
single bit in the vma->exec_entry->flags, but that requires the
relocation function knowing the object's vma. Pass it along.
Note we have only been using a single bit to track flushing since
commit
The major scaling bottleneck in execbuffer is the processing of the
execobjects. Creating an auxiliary list is inefficient when compared to
using the execobject array we already have allocated.
Reservation is then split into phases. As we lookup up the VMA, we
try and bind it back into active
Currently, the last object in the execlist is the always the batch.
However, when building the batch buffer we often know the batch object
first and if we can use the first slot in the execlist we can emit
relocation instructions relative to it immediately and avoid a separate
pass to adjust the
Combine the two slightly overlapping parameter structures we pass around
the execbuffer routines into one.
Signed-off-by: Chris Wilson
Reviewed-by: Joonas Lahtinen
---
drivers/gpu/drm/i915/i915_gem_execbuffer.c | 550
Currently the vma has one link member that is used for both holding its
place in the execbuf reservation list, and in any eviction list. This
dual property is quite tricky and error prone.
Signed-off-by: Chris Wilson
Reviewed-by: Mika Kuoppala
Use a priority stored in the context as the initial value when
submitting a request. This allows us to change the default priority on a
per-context basis, allowing different contexts to be favoured with GPU
time at the expense of lower importance work. The user can adjust the
context's priority
Rather than use a global modparam, we can just check to see if the
engine has semaphores configured upon it.
Signed-off-by: Chris Wilson
Reviewed-by: Joonas Lahtinen
---
drivers/gpu/drm/i915/i915_gem_request.c | 4 +++-
1 file changed,
The advent of full-ppgtt lead to an extra indirection between the object
and its binding. That extra indirection has a noticeable impact on how
fast we can convert from the user handles to our internal vma for
execbuffer. In order to bypass the extra indirection, we use a
resizable hashtable to
If the user requires patching of their batch or auxiliary buffers, we
currently make the alterations on the cpu. If they are active on the GPU
at the time, we wait under the struct_mutex for them to finish executing
before we rewrite the contents. This happens if shared relocation trees
are used
This simply hides the EAGAIN caused by userptr when userspace causes
resource contention. However, it is quite beneficial with highly
contended userptr users as we avoid repeating the setup costs and
kernel-user context switches.
Signed-off-by: Chris Wilson
Reviewed-by:
When choosing a slot for an execbuffer, we ideally want to use the same
address as last time (so that we don't have to rebind it) and the same
address as expected by the user (so that we don't have to fixup any
relocations pointing to it). If we first try to bind the incoming
execbuffer->offset
== Series Details ==
Series: series starting with [01/27] drm/i915/selftests: Allocate inode/file
dynamically
URL : https://patchwork.freedesktop.org/series/23227/
State : failure
== Summary ==
Series 23227v1 Series without cover letter
From: Tvrtko Ursulin
Check that no-op execution speed is the same in headless mode
and with the display active.
v2:
* Set graphics mode for the test to disable blanking. (Imre)
* Use igt stats framework as suggested by Chris.
v3:
* Rename variable names for clearer
With the addition of the inter-context intel_time.sync map, having a
very similar sync_seqno[] is confusing. Aide the reader by denoting that
this a pre-allocated array for storing semaphore sync points wrt to the
global seqno.
Signed-off-by: Chris Wilson
Reviewed-by:
ptr_unpack_bits() is a function-like macro, as such it is meant to be
replaceable by a function. In this case, we should be passing in the
out-param as a pointer.
Bizarrely this does affect code generation:
function old new delta
i915_gem_object_pin_map
Track the latest fence waited upon on each context, and only add a new
asynchronous wait if the new fence is more recent than the recorded
fence for that context. This requires us to filter out unordered
timelines, which are noted by DMA_FENCE_NO_CONTEXT. However, in the
absence of a universal
Rebrand the current (pointer | bits) pack/unpack utility macros as
explicit bit twiddling for PAGE_SIZE so that we can use the more
flexible underlying macros for different bits.
Signed-off-by: Chris Wilson
Reviewed-by: Joonas Lahtinen
Currently, we only mark the CPU cache as dirty if we skip a clflush.
This leads to some confusion where we have to ask if the object is in
the write domain or missed a clflush. If we always mark the cache as
dirty, this becomes a much simply question to answer.
The goal remains to do as few
As we may unwind the requests, even though the request we are awaiting
has a global_seqno that seqno may be revoked during the await and so we
can not reliably use it as a barrier for all future awaits on the same
timeline.
Signed-off-by: Chris Wilson
Cc: Michał
Avoid having too large a stack by creating the fake struct inode/file on
the heap instead.
drivers/gpu/drm/i915/selftests/mock_drm.c: In function 'mock_file':
drivers/gpu/drm/i915/selftests/mock_drm.c:46:1: error: the frame size of 1328
bytes is larger than 1280 bytes
Lots of patches we have all seen before by now, majority of them are
r-b'ed, or very close to r-b (I hope). There are lots of nice little
performance improvements and should make the relocation tests green.
-Chris
___
Intel-gfx mailing list
1 - 100 of 112 matches
Mail list logo