[Intel-gfx] [PATCH v2 0/3] Explicity steer l3bank multicast reads when necessary

2021-06-15 Thread Matt Roper
We've recently learned that when steering reads of multicast registers that use 'subslice' replication, it's not only important to steer to a subslice that isn't fused off, but also to steer to the lowest-numbered subslice. This is because when Render Power Gating is enabled, grabbing forcewake

[Intel-gfx] [PATCH v2 3/3] drm/i915: Add support for explicit L3BANK steering

2021-06-15 Thread Matt Roper
Because Render Power Gating restricts us to just a single subslice as a valid steering target for reads of multicast registers in a SUBSLICE range, the default steering we setup at init may not lead to a suitable target for L3BANK multicast register. In cases where it does not, use explicit

[Intel-gfx] [PATCH v2 2/3] drm/i915: Add GT support for multiple types of multicast steering

2021-06-15 Thread Matt Roper
Although most of our multicast registers are replicated per-subslice, we also have a small number of multicast registers that are replicated per-l3 bank instead. For both types of multicast registers we need to make sure we steer reads of these registers to a valid instance. Ideally we'd like to

[Intel-gfx] [PATCH v2 1/3] drm/i915: extract steered reg access to common function

2021-06-15 Thread Matt Roper
From: Daniele Ceraolo Spurio New steering cases will be added in the follow-up patches, so prepare a common helper to avoid code duplication. Cc: Tvrtko Ursulin Signed-off-by: Daniele Ceraolo Spurio Signed-off-by: Matt Roper Reviewed-by: Rodrigo Vivi ---

[Intel-gfx] [PATCH 4/8] drm/i915: Move active tracking to i915_sched_engine

2021-06-15 Thread Matthew Brost
Move active request tracking and its lock to i915_sched_engine. This lock is also the submission lock so having it in the i915_sched_engine is the correct place. v3: (Jason Ekstrand) Add kernel doc Signed-off-by: Matthew Brost Reviewed-by: Daniele Ceraolo Spurio ---

[Intel-gfx] [PATCH 7/8] drm/i915: Update i915_scheduler to operate on i915_sched_engine

2021-06-15 Thread Matthew Brost
Rather passing around an intel_engine_cs in the scheduling code, pass around a i915_sched_engine. v3: (Jason Ekstrand) Add READ_ONCE around rq->engine in lock_sched_engine Signed-off-by: Matthew Brost Reviewed-by: Jason Ekstrand --- .../drm/i915/gt/intel_execlists_submission.c | 11 +++--

[Intel-gfx] [PATCH 1/8] drm/i915: Move priolist to new i915_sched_engine object

2021-06-15 Thread Matthew Brost
Introduce i915_sched_engine object which is lower level data structure that i915_scheduler / generic code can operate on without touching execlist specific structures. This allows additional submission backends to be added without breaking the layering. Currently the execlists backend uses 1 of

[Intel-gfx] [PATCH 2/8] drm/i915: Add i915_sched_engine_is_empty function

2021-06-15 Thread Matthew Brost
Add wrapper function around RB tree to determine if i915_sched_engine is empty. Signed-off-by: Matthew Brost Reviewed-by: Jason Ekstrand --- drivers/gpu/drm/i915/gt/intel_engine_cs.c| 2 +- drivers/gpu/drm/i915/gt/intel_execlists_submission.c | 6 +++---

[Intel-gfx] [PATCH 6/8] drm/i915: Add kick_backend function to i915_sched_engine

2021-06-15 Thread Matthew Brost
Not all back-ends require a kick after a scheduling update, so make the kick a call-back function that the back-end can opt-in to. Also move the current kick function from the scheduler to the execlists file as it is specific to that back-end. Signed-off-by: Matthew Brost Reviewed-by: Daniele

[Intel-gfx] [PATCH 0/8] Introduce i915_sched_engine object

2021-06-15 Thread Matthew Brost
As discussed in [1] we are breaking that large series into a several smaller ones. This series is stand alone patch part of step #4 which has no other dependencies or patches relevant to it. v2: (Daniel Vetter): - Split into several smaller patches - Add kernel doc for i915_sched_engine

[Intel-gfx] [PATCH 5/8] drm/i915: Move engine->schedule to i915_sched_engine

2021-06-15 Thread Matthew Brost
The schedule function should be in the schedule object. v3: (Jason Ekstrand) Add kernel doc Signed-off-by: Matthew Brost Reviewed-by: Daniele Ceraolo Spurio --- drivers/gpu/drm/i915/gem/i915_gem_wait.c | 4 ++-- drivers/gpu/drm/i915/gt/intel_engine_cs.c| 3 ---

[Intel-gfx] [PATCH 3/8] drm/i915: Reset sched_engine.no_priolist immediately after dequeue

2021-06-15 Thread Matthew Brost
Rather than touching schedule state in the generic PM code, reset the priolist allocation when empty in the submission code. Add a wrapper function to do this and update the backends to call it in the correct place. v3: (Jason Ekstrand) Update patch commit message with a better description

[Intel-gfx] [PATCH 8/8] drm/i915: Move submission tasklet to i915_sched_engine

2021-06-15 Thread Matthew Brost
The submission tasklet operates on i915_sched_engine, thus it is the correct place for it. v3: (Jason Ekstrand) Change sched_engine->engine to a void* private data pointer Add kernel doc v4: (Daniele) Update private_data comment Set queue_priority_hint in kick_execlists v5: (CI)

[Intel-gfx] ✓ Fi.CI.BAT: success for Introduce i915_sched_engine object (rev5)

2021-06-15 Thread Patchwork
== Series Details == Series: Introduce i915_sched_engine object (rev5) URL : https://patchwork.freedesktop.org/series/90630/ State : success == Summary == CI Bug Log - changes from CI_DRM_10226 -> Patchwork_20378 Summary ---

[Intel-gfx] [PATCH v11 00/12] Restricted DMA

2021-06-15 Thread Claire Chang
This series implements mitigations for lack of DMA access control on systems without an IOMMU, which could result in the DMA accessing the system memory at unexpected times and/or unexpected addresses, possibly leading to data leakage or corruption. For example, we plan to use the PCI-e bus for

[Intel-gfx] [PATCH v11 01/12] swiotlb: Refactor swiotlb init functions

2021-06-15 Thread Claire Chang
Add a new function, swiotlb_init_io_tlb_mem, for the io_tlb_mem struct initialization to make the code reusable. Signed-off-by: Claire Chang Reviewed-by: Christoph Hellwig --- kernel/dma/swiotlb.c | 49 ++-- 1 file changed, 24 insertions(+), 25

[Intel-gfx] [PATCH v11 04/12] swiotlb: Update is_swiotlb_buffer to add a struct device argument

2021-06-15 Thread Claire Chang
Update is_swiotlb_buffer to add a struct device argument. This will be useful later to allow for different pools. Signed-off-by: Claire Chang Reviewed-by: Christoph Hellwig --- drivers/iommu/dma-iommu.c | 12 ++-- drivers/xen/swiotlb-xen.c | 2 +- include/linux/swiotlb.h | 7

[Intel-gfx] [PATCH v11 02/12] swiotlb: Refactor swiotlb_create_debugfs

2021-06-15 Thread Claire Chang
Split the debugfs creation to make the code reusable for supporting different bounce buffer pools. Signed-off-by: Claire Chang Reviewed-by: Christoph Hellwig --- kernel/dma/swiotlb.c | 21 ++--- 1 file changed, 14 insertions(+), 7 deletions(-) diff --git a/kernel/dma/swiotlb.c

[Intel-gfx] [PATCH v11 03/12] swiotlb: Set dev->dma_io_tlb_mem to the swiotlb pool used

2021-06-15 Thread Claire Chang
Always have the pointer to the swiotlb pool used in struct device. This could help simplify the code for other pools. Signed-off-by: Claire Chang Reviewed-by: Christoph Hellwig --- drivers/base/core.c| 4 include/linux/device.h | 4 kernel/dma/swiotlb.c | 8 3 files

Re: [Intel-gfx] [PATCH v11 09/12] swiotlb: Add restricted DMA alloc/free support

2021-06-15 Thread Christoph Hellwig
On Wed, Jun 16, 2021 at 12:04:16PM +0800, Claire Chang wrote: > Just noticed that after propagating swiotlb_force setting into > io_tlb_default_mem->force, the memory allocation behavior for > swiotlb_force will change (i.e. always skipping arch_dma_alloc and > dma_direct_alloc_from_pool). Yes, I

[Intel-gfx] ✗ Fi.CI.IGT: failure for Introduce i915_sched_engine object (rev5)

2021-06-15 Thread Patchwork
== Series Details == Series: Introduce i915_sched_engine object (rev5) URL : https://patchwork.freedesktop.org/series/90630/ State : failure == Summary == CI Bug Log - changes from CI_DRM_10226_full -> Patchwork_20378_full Summary ---

Re: [Intel-gfx] [PATCH v11 09/12] swiotlb: Add restricted DMA alloc/free support

2021-06-15 Thread Claire Chang
On Wed, Jun 16, 2021 at 12:59 PM Christoph Hellwig wrote: > > On Wed, Jun 16, 2021 at 12:04:16PM +0800, Claire Chang wrote: > > Just noticed that after propagating swiotlb_force setting into > > io_tlb_default_mem->force, the memory allocation behavior for > > swiotlb_force will change (i.e.

[Intel-gfx] [PATCH v11 05/12] swiotlb: Update is_swiotlb_active to add a struct device argument

2021-06-15 Thread Claire Chang
Update is_swiotlb_active to add a struct device argument. This will be useful later to allow for different pools. Signed-off-by: Claire Chang Reviewed-by: Christoph Hellwig --- drivers/gpu/drm/i915/gem/i915_gem_internal.c | 2 +- drivers/gpu/drm/nouveau/nouveau_ttm.c| 2 +-

[Intel-gfx] [PATCH v11 06/12] swiotlb: Use is_dev_swiotlb_force for swiotlb data bouncing

2021-06-15 Thread Claire Chang
Propagate the swiotlb_force setting into io_tlb_default_mem->force and use it to determine whether to bounce the data or not. This will be useful later to allow for different pools. Signed-off-by: Claire Chang Reviewed-by: Christoph Hellwig --- include/linux/swiotlb.h | 11 +++

[Intel-gfx] [PATCH v11 08/12] swiotlb: Refactor swiotlb_tbl_unmap_single

2021-06-15 Thread Claire Chang
Add a new function, swiotlb_release_slots, to make the code reusable for supporting different bounce buffer pools. Signed-off-by: Claire Chang Reviewed-by: Christoph Hellwig --- kernel/dma/swiotlb.c | 35 --- 1 file changed, 20 insertions(+), 15 deletions(-)

[Intel-gfx] [PATCH v11 09/12] swiotlb: Add restricted DMA alloc/free support

2021-06-15 Thread Claire Chang
Add the functions, swiotlb_{alloc,free} to support the memory allocation from restricted DMA pool. The restricted DMA pool is preferred if available. Note that since coherent allocation needs remapping, one must set up another device coherent pool by shared-dma-pool and use

[Intel-gfx] [PATCH v11 07/12] swiotlb: Move alloc_size to swiotlb_find_slots

2021-06-15 Thread Claire Chang
Rename find_slots to swiotlb_find_slots and move the maintenance of alloc_size to it for better code reusability later. Signed-off-by: Claire Chang Reviewed-by: Christoph Hellwig --- kernel/dma/swiotlb.c | 16 1 file changed, 8 insertions(+), 8 deletions(-) diff --git

Re: [Intel-gfx] [PATCH v11 09/12] swiotlb: Add restricted DMA alloc/free support

2021-06-15 Thread Claire Chang
On Wed, Jun 16, 2021 at 11:54 AM Claire Chang wrote: > > Add the functions, swiotlb_{alloc,free} to support the memory allocation > from restricted DMA pool. > > The restricted DMA pool is preferred if available. > > Note that since coherent allocation needs remapping, one must set up > another

Re: [Intel-gfx] [PATCH v11 09/12] swiotlb: Add restricted DMA alloc/free support

2021-06-15 Thread Christoph Hellwig
On Wed, Jun 16, 2021 at 01:10:02PM +0800, Claire Chang wrote: > On Wed, Jun 16, 2021 at 12:59 PM Christoph Hellwig wrote: > > > > On Wed, Jun 16, 2021 at 12:04:16PM +0800, Claire Chang wrote: > > > Just noticed that after propagating swiotlb_force setting into > > > io_tlb_default_mem->force, the

Re: [Intel-gfx] [PATCH v10 00/12] Restricted DMA

2021-06-15 Thread Claire Chang
v11 https://lore.kernel.org/patchwork/cover/1447216/ On Tue, Jun 15, 2021 at 9:27 PM Claire Chang wrote: > > This series implements mitigations for lack of DMA access control on > systems without an IOMMU, which could result in the DMA accessing the > system memory at unexpected times and/or

Re: [Intel-gfx] Allow mdev drivers to directly create the vfio_device (v3)

2021-06-15 Thread Christoph Hellwig
On Tue, Jun 15, 2021 at 05:35:15PM -0300, Jason Gunthorpe wrote: > Yes, the rest of the drivers will get converted eventually too. There > is no reason to hold things back. Depending on timelines we might be > able to get AP into this cycle too... And I have a WIP tree to get rid of the weird

[Intel-gfx] [PATCH v11 12/12] of: Add plumbing for restricted DMA pool

2021-06-15 Thread Claire Chang
If a device is not behind an IOMMU, we look up the device node and set up the restricted DMA when the restricted-dma-pool is presented. Signed-off-by: Claire Chang --- drivers/of/address.c| 33 + drivers/of/device.c | 3 +++ drivers/of/of_private.h | 6

[Intel-gfx] [PATCH v11 10/12] swiotlb: Add restricted DMA pool initialization

2021-06-15 Thread Claire Chang
Add the initialization function to create restricted DMA pools from matching reserved-memory nodes. Regardless of swiotlb setting, the restricted DMA pool is preferred if available. The restricted DMA pools provide a basic level of protection against the DMA overwriting buffer contents at

[Intel-gfx] [PATCH v11 11/12] dt-bindings: of: Add restricted DMA pool

2021-06-15 Thread Claire Chang
Introduce the new compatible string, restricted-dma-pool, for restricted DMA. One can specify the address and length of the restricted DMA memory region by restricted-dma-pool in the reserved-memory node. Signed-off-by: Claire Chang --- .../reserved-memory/reserved-memory.txt | 36

[Intel-gfx] ✓ Fi.CI.IGT: success for drm/i915/ttm: Fix memory leaks

2021-06-15 Thread Patchwork
== Series Details == Series: drm/i915/ttm: Fix memory leaks URL : https://patchwork.freedesktop.org/series/91512/ State : success == Summary == CI Bug Log - changes from CI_DRM_10225_full -> Patchwork_20370_full Summary ---

[Intel-gfx] ✗ Fi.CI.IGT: failure for i915 TTM sync accelerated migration and clear (rev3)

2021-06-15 Thread Patchwork
== Series Details == Series: i915 TTM sync accelerated migration and clear (rev3) URL : https://patchwork.freedesktop.org/series/91463/ State : failure == Summary == CI Bug Log - changes from CI_DRM_10225_full -> Patchwork_20371_full

[Intel-gfx] ✓ Fi.CI.BAT: success for Update firmware to v62.0.0 (rev4)

2021-06-15 Thread Patchwork
== Series Details == Series: Update firmware to v62.0.0 (rev4) URL : https://patchwork.freedesktop.org/series/91106/ State : success == Summary == CI Bug Log - changes from CI_DRM_10226 -> Patchwork_20379 Summary --- **SUCCESS**

[Intel-gfx] ✓ Fi.CI.BAT: success for Explicity steer l3bank multicast reads when necessary (rev3)

2021-06-15 Thread Patchwork
== Series Details == Series: Explicity steer l3bank multicast reads when necessary (rev3) URL : https://patchwork.freedesktop.org/series/91485/ State : success == Summary == CI Bug Log - changes from CI_DRM_10226 -> Patchwork_20380 Summary

Re: [Intel-gfx] [PATCH 2/3] drm/i915: Add GT support for multiple types of multicast steering

2021-06-15 Thread Rodrigo Vivi
On Tue, Jun 15, 2021 at 08:30:23AM -0700, Matt Roper wrote: > On Tue, Jun 15, 2021 at 05:11:04AM -0400, Rodrigo Vivi wrote: > > On Tue, Jun 15, 2021 at 05:08:20AM -0400, Rodrigo Vivi wrote: > > > On Mon, Jun 14, 2021 at 08:34:32PM -0700, Matt Roper wrote: > > > > Although most of our multicast

Re: [Intel-gfx] ✓ Fi.CI.IGT: success for drm/i915/adl_p: Add initial ADL_P Workarounds (rev2)

2021-06-15 Thread Souza, Jose
On Wed, 2021-06-09 at 00:09 +, Patchwork wrote: Patch Details Series: drm/i915/adl_p: Add initial ADL_P Workarounds (rev2) URL:https://patchwork.freedesktop.org/series/91127/ State: success Details: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_20314/index.html CI Bug Log -

[Intel-gfx] ✓ Fi.CI.IGT: success for series starting with [01/10] driver core: Pull required checks into driver_probe_device()

2021-06-15 Thread Patchwork
== Series Details == Series: series starting with [01/10] driver core: Pull required checks into driver_probe_device() URL : https://patchwork.freedesktop.org/series/91520/ State : success == Summary == CI Bug Log - changes from CI_DRM_10225_full -> Patchwork_20373_full

Re: [Intel-gfx] [PATCH 8/8] drm/i915: Move submission tasklet to i915_sched_engine

2021-06-15 Thread Daniele Ceraolo Spurio
On 6/15/2021 1:59 PM, Matthew Brost wrote: The submission tasklet operates on i915_sched_engine, thus it is the correct place for it. v3: (Jason Ekstrand) Change sched_engine->engine to a void* private data pointer Add kernel doc v4: (Daniele) Update private_data comment Set

[Intel-gfx] ✗ Fi.CI.SPARSE: warning for Update firmware to v62.0.0 (rev4)

2021-06-15 Thread Patchwork
== Series Details == Series: Update firmware to v62.0.0 (rev4) URL : https://patchwork.freedesktop.org/series/91106/ State : warning == Summary == $ dim sparse --fast origin/drm-tip Sparse version: v0.6.2 Fast mode used, each commit won't be checked separately. -

[Intel-gfx] ✗ Fi.CI.BUILD: failure for Introduce i915_sched_engine object (rev4)

2021-06-15 Thread Patchwork
== Series Details == Series: Introduce i915_sched_engine object (rev4) URL : https://patchwork.freedesktop.org/series/90630/ State : failure == Summary == Applying: drm/i915: Move priolist to new i915_sched_engine object Applying: drm/i915: Add i915_sched_engine_is_empty function Applying:

[Intel-gfx] ✗ Fi.CI.BUILD: failure for Explicity steer l3bank multicast reads when necessary (rev2)

2021-06-15 Thread Patchwork
== Series Details == Series: Explicity steer l3bank multicast reads when necessary (rev2) URL : https://patchwork.freedesktop.org/series/91485/ State : failure == Summary == Applying: drm/i915: extract steered reg access to common function Applying: drm/i915: Add GT support for multiple types

[Intel-gfx] ✗ Fi.CI.CHECKPATCH: warning for Update firmware to v62.0.0 (rev4)

2021-06-15 Thread Patchwork
== Series Details == Series: Update firmware to v62.0.0 (rev4) URL : https://patchwork.freedesktop.org/series/91106/ State : warning == Summary == $ dim checkpatch origin/drm-tip 20bd5d817f52 drm/i915/guc: Introduce unified HXG messages 899d9ce395b2 drm/i915/guc: Update firmware to v62.0.0

[Intel-gfx] ✗ Fi.CI.CHECKPATCH: warning for Explicity steer l3bank multicast reads when necessary (rev3)

2021-06-15 Thread Patchwork
== Series Details == Series: Explicity steer l3bank multicast reads when necessary (rev3) URL : https://patchwork.freedesktop.org/series/91485/ State : warning == Summary == $ dim checkpatch origin/drm-tip 7ba06b9980dc drm/i915: extract steered reg access to common function -:90:

Re: [Intel-gfx] [PATCH 2/3] drm/i915: Add GT support for multiple types of multicast steering

2021-06-15 Thread Matt Roper
On Tue, Jun 15, 2021 at 03:48:32PM -0400, Rodrigo Vivi wrote: > On Tue, Jun 15, 2021 at 08:30:23AM -0700, Matt Roper wrote: > > On Tue, Jun 15, 2021 at 05:11:04AM -0400, Rodrigo Vivi wrote: > > > On Tue, Jun 15, 2021 at 05:08:20AM -0400, Rodrigo Vivi wrote: > > > > On Mon, Jun 14, 2021 at

[Intel-gfx] [PATCH 3/3] drm/i915/doc: Include GuC ABI documentation

2021-06-15 Thread Matthew Brost
From: Michal Wajdeczko GuC ABI documentation is now ready to be included in i915.rst Signed-off-by: Michal Wajdeczko Signed-off-by: Matthew Brost Cc: Piotr Piórkowski Reviewed-by: Matthew Brost --- Documentation/gpu/i915.rst | 8 1 file changed, 8 insertions(+) diff --git

[Intel-gfx] [PATCH 2/3] drm/i915/guc: Update firmware to v62.0.0

2021-06-15 Thread Matthew Brost
From: Michal Wajdeczko Most of the changes to the 62.0.0 firmware revolved around CTB communication channel. Conform to the new (stable) CTB protocol. v2: (Michal) Add values back to kernel DOC for actions (Docs) Add 'CT buffer' back in to fix warning Signed-off-by: John Harrison

[Intel-gfx] [PATCH 1/3] drm/i915/guc: Introduce unified HXG messages

2021-06-15 Thread Matthew Brost
From: Michal Wajdeczko New GuC firmware will unify format of MMIO and CTB H2G messages. Introduce their definitions now to allow gradual transition of our code to match new changes. Signed-off-by: Matthew Brost Signed-off-by: Michal Wajdeczko Cc: Michał Winiarski Reviewed-by: Daniele Ceraolo

[Intel-gfx] [PATCH 0/3] Update firmware to v62.0.0

2021-06-15 Thread Matthew Brost
As part of enabling GuC submission [1] we need to update to the latest and greatest firmware. This series does that. All backwards compatibility breaking changes squashed into a single patch #2. Same series sent to trybot [2] forcing GuC to be enabled to ensure we haven't broke something. v2:

Re: [Intel-gfx] [PATCH v10 03/12] swiotlb: Set dev->dma_io_tlb_mem to the swiotlb pool used

2021-06-15 Thread Konrad Rzeszutek Wilk
On Tue, Jun 15, 2021 at 09:27:02PM +0800, Claire Chang wrote: > Always have the pointer to the swiotlb pool used in struct device. This > could help simplify the code for other pools. Applying: swiotlb: Set dev->dma_io_tlb_mem to the swiotlb pool used error: patch failed: kernel/dma/swiotlb.c:339

[Intel-gfx] ✗ Fi.CI.IGT: failure for New uAPI drm properties for color management

2021-06-15 Thread Patchwork
== Series Details == Series: New uAPI drm properties for color management URL : https://patchwork.freedesktop.org/series/91523/ State : failure == Summary == CI Bug Log - changes from CI_DRM_10225_full -> Patchwork_20374_full Summary

[Intel-gfx] [PATCH v2.1 2/3] drm/i915: Add GT support for multiple types of multicast steering

2021-06-15 Thread Matt Roper
Although most of our multicast registers are replicated per-subslice, we also have a small number of multicast registers that are replicated per-l3 bank instead. For both types of multicast registers we need to make sure we steer reads of these registers to a valid instance. Ideally we'd like to

[Intel-gfx] [PATCH v2.1 1/3] drm/i915: extract steered reg access to common function

2021-06-15 Thread Matt Roper
From: Daniele Ceraolo Spurio New steering cases will be added in the follow-up patches, so prepare a common helper to avoid code duplication. Cc: Tvrtko Ursulin Signed-off-by: Daniele Ceraolo Spurio Signed-off-by: Matt Roper Reviewed-by: Rodrigo Vivi ---

[Intel-gfx] [PATCH v2.1 0/3] Explicity steer l3bank multicast reads when necessary

2021-06-15 Thread Matt Roper
We've recently learned that when steering reads of multicast registers that use 'subslice' replication, it's not only important to steer to a subslice that isn't fused off, but also to steer to the lowest-numbered subslice. This is because when Render Power Gating is enabled, grabbing forcewake

[Intel-gfx] [PATCH v2.1 3/3] drm/i915: Add support for explicit L3BANK steering

2021-06-15 Thread Matt Roper
Because Render Power Gating restricts us to just a single subslice as a valid steering target for reads of multicast registers in a SUBSLICE range, the default steering we setup at init may not lead to a suitable target for L3BANK multicast register. In cases where it does not, use explicit

Re: [Intel-gfx] Allow mdev drivers to directly create the vfio_device (v3)

2021-06-15 Thread Alex Williamson
On Tue, 15 Jun 2021 15:35:09 +0200 Christoph Hellwig wrote: > This is my alternative take on this series from Jason: > > https://lore.kernel.org/dri-devel/87czsszi9i@redhat.com/T/ > > The mdev/vfio parts are exactly the same, but this solves the driver core > changes for the direct probing

Re: [Intel-gfx] [PATCH 04/10] driver core: Don't return EPROBE_DEFER to userspace during sysfs bind

2021-06-15 Thread Alex Williamson
On Tue, 15 Jun 2021 15:35:13 +0200 Christoph Hellwig wrote: > @@ -547,10 +538,9 @@ static int call_driver_probe(struct device *dev, struct > device_driver *drv) > > static int really_probe(struct device *dev, struct device_driver *drv) > { > - int local_trigger_count =

[Intel-gfx] ✓ Fi.CI.IGT: success for drm/i915: Perform execbuffer object locking as a separate step

2021-06-15 Thread Patchwork
== Series Details == Series: drm/i915: Perform execbuffer object locking as a separate step URL : https://patchwork.freedesktop.org/series/91506/ State : success == Summary == CI Bug Log - changes from CI_DRM_10225_full -> Patchwork_20369_full

[Intel-gfx] [PATCH 8/8] drm/i915: Move submission tasklet to i915_sched_engine

2021-06-15 Thread Matthew Brost
The submission tasklet operates on i915_sched_engine, thus it is the correct place for it. v3: (Jason Ekstrand) Change sched_engine->engine to a void* private data pointer Add kernel doc v4: (Daniele) Update private_data comment Set queue_priority_hint in kick_execlists Signed-off-by:

[Intel-gfx] [PATCH 1/8] drm/i915: Move priolist to new i915_sched_engine object

2021-06-15 Thread Matthew Brost
Introduce i915_sched_engine object which is lower level data structure that i915_scheduler / generic code can operate on without touching execlist specific structures. This allows additional submission backends to be added without breaking the layering. Currently the execlists backend uses 1 of

[Intel-gfx] [PATCH 5/8] drm/i915: Move engine->schedule to i915_sched_engine

2021-06-15 Thread Matthew Brost
The schedule function should be in the schedule object. v3: (Jason Ekstrand) Add kernel doc Signed-off-by: Matthew Brost Reviewed-by: Daniele Ceraolo Spurio --- drivers/gpu/drm/i915/gem/i915_gem_wait.c | 4 ++-- drivers/gpu/drm/i915/gt/intel_engine_cs.c| 3 ---

[Intel-gfx] [PATCH 7/8] drm/i915: Update i915_scheduler to operate on i915_sched_engine

2021-06-15 Thread Matthew Brost
Rather passing around an intel_engine_cs in the scheduling code, pass around a i915_sched_engine. v3: (Jason Ekstrand) Add READ_ONCE around rq->engine in lock_sched_engine Signed-off-by: Matthew Brost Reviewed-by: Jason Ekstrand --- .../drm/i915/gt/intel_execlists_submission.c | 11 +++--

[Intel-gfx] [PATCH 3/8] drm/i915: Reset sched_engine.no_priolist immediately after dequeue

2021-06-15 Thread Matthew Brost
Rather than touching schedule state in the generic PM code, reset the priolist allocation when empty in the submission code. Add a wrapper function to do this and update the backends to call it in the correct place. v3: (Jason Ekstrand) Update patch commit message with a better description

[Intel-gfx] [PATCH 4/8] drm/i915: Move active tracking to i915_sched_engine

2021-06-15 Thread Matthew Brost
Move active request tracking and its lock to i915_sched_engine. This lock is also the submission lock so having it in the i915_sched_engine is the correct place. v3: (Jason Ekstrand) Add kernel doc Signed-off-by: Matthew Brost Reviewed-by: Daniele Ceraolo Spurio ---

[Intel-gfx] [PATCH 6/8] drm/i915: Add kick_backend function to i915_sched_engine

2021-06-15 Thread Matthew Brost
Not all back-ends require a kick after a scheduling update, so make the kick a call-back function that the back-end can opt-in to. Also move the current kick function from the scheduler to the execlists file as it is specific to that back-end. Signed-off-by: Matthew Brost Reviewed-by: Daniele

[Intel-gfx] [PATCH 2/8] drm/i915: Add i915_sched_engine_is_empty function

2021-06-15 Thread Matthew Brost
Add wrapper function around RB tree to determine if i915_sched_engine is empty. Signed-off-by: Matthew Brost Reviewed-by: Jason Ekstrand --- drivers/gpu/drm/i915/gt/intel_engine_cs.c| 2 +- drivers/gpu/drm/i915/gt/intel_execlists_submission.c | 6 +++---

[Intel-gfx] [PATCH 0/8] Introduce i915_sched_engine object

2021-06-15 Thread Matthew Brost
As discussed in [1] we are breaking that large series into a several smaller ones. This series is stand alone patch part of step #4 which has no other dependencies or patches relevant to it. v2: (Daniel Vetter): - Split into several smaller patches - Add kernel doc for i915_sched_engine

Re: [Intel-gfx] [PATCH 7/8] usb: typec: altmodes/displayport: Make dp_altmode_notify() more generic

2021-06-15 Thread Greg Kroah-Hartman
On Fri, Jun 04, 2021 at 09:48:39PM +0200, Hans de Goede wrote: > Make dp_altmode_notify() handle the dp->data.conf == 0 case too, > rather then having separate code-paths for this in various places > which call it. > > Reviewed-by: Heikki Krogerus > Tested-by: Heikki Krogerus > Signed-off-by:

Re: [Intel-gfx] [PATCH 8/8] usb: typec: altmodes/displayport: Notify drm subsys of hotplug events

2021-06-15 Thread Greg Kroah-Hartman
On Fri, Jun 04, 2021 at 09:48:40PM +0200, Hans de Goede wrote: > Use the new drm_connector_oob_hotplug_event() functions to let drm/kms > drivers know about DisplayPort over Type-C hotplug events. > > Reviewed-by: Heikki Krogerus > Tested-by: Heikki Krogerus > Signed-off-by: Hans de Goede

Re: [Intel-gfx] [PATCH 0/8] drm + usb-type-c: Add support for out-of-band hotplug notification (v4)

2021-06-15 Thread Greg Kroah-Hartman
On Fri, Jun 04, 2021 at 09:48:32PM +0200, Hans de Goede wrote: > Here is v3 of my patchset making DP over Type-C work on devices where the > Type-C controller does not drive the HPD pin on the GPU, but instead > we need to forward HPD events from the Type-C controller to the DRM driver. > >

Re: [Intel-gfx] [PATCH v4] drm/i915: Invoke another _DSM to enable MUX on HP Workstation laptops

2021-06-15 Thread Kai-Heng Feng
On Fri, Jun 4, 2021 at 11:57 PM Kai-Heng Feng wrote: > > On Thu, May 20, 2021 at 2:58 PM Kai-Heng Feng > wrote: > > > > On HP Fury G7 Workstations, graphics output is re-routed from Intel GFX > > to discrete GFX after S3. This is not desirable, because userspace will > > treat connected display

Re: [Intel-gfx] [PATCH 3/6] dma-buf: Document DMA_BUF_IOCTL_SYNC (v2)

2021-06-15 Thread Pekka Paalanen
On Thu, 10 Jun 2021 16:14:42 -0500 Jason Ekstrand wrote: > This adds a new "DMA Buffer ioctls" section to the dma-buf docs and adds > documentation for DMA_BUF_IOCTL_SYNC. > > v2 (Daniel Vetter): > - Fix a couple typos > - Add commentary about synchronization with other devices > - Use item

[Intel-gfx] [PATCH] drm/i915/ttm: Fix memory leaks

2021-06-15 Thread Thomas Hellström
Fix two memory leaks introduced with the ttm backend. Fixes: 213d50927763 ("drm/i915/ttm: Introduce a TTM i915 gem object backend") Signed-off-by: Thomas Hellström --- drivers/gpu/drm/i915/gem/i915_gem_ttm.c | 2 ++ 1 file changed, 2 insertions(+) diff --git

[Intel-gfx] ✓ Fi.CI.BAT: success for drm/i915: Perform execbuffer object locking as a separate step

2021-06-15 Thread Patchwork
== Series Details == Series: drm/i915: Perform execbuffer object locking as a separate step URL : https://patchwork.freedesktop.org/series/91506/ State : success == Summary == CI Bug Log - changes from CI_DRM_10225 -> Patchwork_20369

[Intel-gfx] [PATCH v4 07/12] drm/i915/gt: Pipelined page migration

2021-06-15 Thread Thomas Hellström
From: Chris Wilson If we pipeline the PTE updates and then do the copy of those pages within a single unpreemptible command packet, we can submit the copies and leave them to be scheduled without having to synchronously wait under a global lock. In order to manage migration, we need to

[Intel-gfx] [PATCH v4 08/12] drm/i915/gt: Pipelined clear

2021-06-15 Thread Thomas Hellström
From: Chris Wilson Update the PTE and emit a clear within a single unpreemptible packet such that we can schedule and pipeline clears. Signed-off-by: Chris Wilson Co-developed-by: Thomas Hellström Signed-off-by: Thomas Hellström --- v3: - Handle engine instances correctly (Reported by

[Intel-gfx] [PATCH v4 10/12] drm/i915/ttm: accelerated move implementation

2021-06-15 Thread Thomas Hellström
From: Ramalingam C Invokes the pipelined page migration through blt, for i915_ttm_move requests of eviction and also obj clear. Signed-off-by: Ramalingam C Reviewed-by: Thomas Hellström --- v2: - subfunction for accel_move (Thomas) - engine_pm_get/put around context_move/clear (Thomas) -

[Intel-gfx] [PATCH v4 11/12] drm/i915/gem: Zap the client blt code

2021-06-15 Thread Thomas Hellström
It's not used anywhere. Signed-off-by: Thomas Hellström Reviewed-by: Matthew Auld --- v4: - Add back the igt_client_tiled_blits selftest (Suggested by Matthew Auld) --- drivers/gpu/drm/i915/Makefile | 2 +- .../gpu/drm/i915/gem/i915_gem_client_blt.c| 355

[Intel-gfx] [PATCH v4 12/12] drm/i915/gem: Zap the i915_gem_object_blt code

2021-06-15 Thread Thomas Hellström
It's unused with the exception of selftest. Replace a call in the memory_region live selftest with a call into a corresponding function in the new migrate code. Signed-off-by: Thomas Hellström Reviewed-by: Matthew Auld --- drivers/gpu/drm/i915/Makefile | 1 -

[Intel-gfx] [PATCH v4 00/12] i915 TTM sync accelerated migration and clear

2021-06-15 Thread Thomas Hellström
This patchset implements synchronous accelerated migration and clearing for i915 on TTM. We plan to follow up with these operations made asynchronous to the extent of TTM support for that: A couple of patches from Chris which implement pipelined migration and clears by atomically writing the PTEs

[Intel-gfx] [PATCH v4 02/12] drm/i915: Break out dma_resv ww locking utilities to separate files

2021-06-15 Thread Thomas Hellström
As we're about to add more ww-related functionality, break out the dma_resv ww locking utilities to their own files Signed-off-by: Thomas Hellström Reviewed-by: Matthew Auld --- v2: - Make sure filenames are sorted in include file lists and Makefile (Reported by Matthew Auld) ---

[Intel-gfx] [PATCH v4 01/12] drm/i915: Reference objects on the ww object list

2021-06-15 Thread Thomas Hellström
Since the ww transaction endpoint easily end up far out-of-scope of the objects on the ww object list, particularly for contending lock objects, make sure we reference objects on the list so they don't disappear under us. This comes with a performance penalty so it's been debated whether this is

[Intel-gfx] [PATCH v4 04/12] drm/i915/gt: Add an insert_entry for gen8_ppgtt

2021-06-15 Thread Thomas Hellström
From: Chris Wilson In the next patch, we will want to write a PTE for an explicit dma address, outside of the usual vma. Signed-off-by: Chris Wilson Reviewed-by: Matthew Auld --- drivers/gpu/drm/i915/gt/gen8_ppgtt.c | 19 +++ 1 file changed, 19 insertions(+) diff --git

[Intel-gfx] [PATCH v4 05/12] drm/i915/gt: Add a routine to iterate over the pagetables of a GTT

2021-06-15 Thread Thomas Hellström
From: Chris Wilson In the next patch, we will want to look at the dma addresses of individual page tables, so add a routine to iterate over them. Signed-off-by: Chris Wilson Reviewed-by: Matthew Auld --- drivers/gpu/drm/i915/gt/gen8_ppgtt.c | 49

[Intel-gfx] [PATCH v4 06/12] drm/i915/gt: Export the pinned context constructor and destructor

2021-06-15 Thread Thomas Hellström
From: Chris Wilson Allow internal clients to create and destroy a pinned context. Signed-off-by: Chris Wilson Reviewed-by: Matthew Auld --- v2: - (Thomas) Export also the pinned context destructor --- drivers/gpu/drm/i915/gt/intel_engine.h| 11 +

[Intel-gfx] [PATCH v4 03/12] drm/i915: Introduce a ww transaction helper

2021-06-15 Thread Thomas Hellström
Introduce a for_i915_gem_ww(){} utility to help make the code around a ww transaction more readable. Signed-off-by: Thomas Hellström Reviewed-by: Matthew Auld --- drivers/gpu/drm/i915/i915_gem_ww.h | 31 +- 1 file changed, 30 insertions(+), 1 deletion(-) diff --git

[Intel-gfx] [PATCH v4 09/12] drm/i915/gt: Setup a default migration context on the GT

2021-06-15 Thread Thomas Hellström
From: Chris Wilson Set up a default migration context on the GT and use it from the selftests. Add a perf selftest and make sure we exercise LMEM if available. Signed-off-by: Chris Wilson Co-developed-by: Thomas Hellström Signed-off-by: Thomas Hellström Reviewed-by: Matthew Auld --- v3: -

[Intel-gfx] ✓ Fi.CI.BAT: success for drm/i915/ttm: Fix memory leaks

2021-06-15 Thread Patchwork
== Series Details == Series: drm/i915/ttm: Fix memory leaks URL : https://patchwork.freedesktop.org/series/91512/ State : success == Summary == CI Bug Log - changes from CI_DRM_10225 -> Patchwork_20370 Summary --- **SUCCESS** No

[Intel-gfx] Allow mdev drivers to directly create the vfio_device (v3)

2021-06-15 Thread Christoph Hellwig
This is my alternative take on this series from Jason: https://lore.kernel.org/dri-devel/87czsszi9i@redhat.com/T/ The mdev/vfio parts are exactly the same, but this solves the driver core changes for the direct probing without the in/out flag that Greg hated, which cause a little more work,

[Intel-gfx] [PATCH 01/10] driver core: Pull required checks into driver_probe_device()

2021-06-15 Thread Christoph Hellwig
From: Jason Gunthorpe Checking if the dev is dead or if the dev is already bound is a required precondition to invoking driver_probe_device(). All the call chains leading here duplicate these checks. Add it directly to driver_probe_device() so the precondition is clear and remove the checks

Re: [Intel-gfx] [PATCH v9 00/14] Restricted DMA

2021-06-15 Thread Claire Chang
v10 here: https://lore.kernel.org/patchwork/cover/1446882/ ___ Intel-gfx mailing list Intel-gfx@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/intel-gfx

Re: [Intel-gfx] [PATCH v10 06/12] swiotlb: Use is_dev_swiotlb_force for swiotlb data bouncing

2021-06-15 Thread Christoph Hellwig
On Tue, Jun 15, 2021 at 09:27:05PM +0800, Claire Chang wrote: > Propagate the swiotlb_force setting into io_tlb_default_mem->force and > use it to determine whether to bounce the data or not. This will be > useful later to allow for different pools. > > Signed-off-by: Claire Chang Looks good,

[Intel-gfx] [PATCH 04/10] driver core: Don't return EPROBE_DEFER to userspace during sysfs bind

2021-06-15 Thread Christoph Hellwig
EPROBE_DEFER is an internal kernel error code and it should not be leaked to userspace via the bind_store() sysfs. Userspace doesn't have this constant and cannot understand it. Further, it doesn't really make sense to have userspace trigger a deferred probe via bind_store(), which could

Re: [Intel-gfx] [PATCH v10 05/12] swiotlb: Update is_swiotlb_active to add a struct device argument

2021-06-15 Thread Christoph Hellwig
On Tue, Jun 15, 2021 at 09:27:04PM +0800, Claire Chang wrote: > Update is_swiotlb_active to add a struct device argument. This will be > useful later to allow for different pools. > > Signed-off-by: Claire Chang Looks good, Reviewed-by: Christoph Hellwig

[Intel-gfx] [PATCH 08/10] vfio/mtty: Convert to use vfio_register_group_dev()

2021-06-15 Thread Christoph Hellwig
From: Jason Gunthorpe This is straightforward conversion, the mdev_state is actually serving as the vfio_device and we can replace all the mdev_get_drvdata()'s and the wonky dead code with a simple container_of() Reviewed-by: Christoph Hellwig Signed-off-by: Jason Gunthorpe Signed-off-by:

[Intel-gfx] [PATCH 09/10] vfio/mdpy: Convert to use vfio_register_group_dev()

2021-06-15 Thread Christoph Hellwig
From: Jason Gunthorpe This is straightforward conversion, the mdev_state is actually serving as the vfio_device and we can replace all the mdev_get_drvdata()'s and the wonky dead code with a simple container_of(). Reviewed-by: Christoph Hellwig Signed-off-by: Jason Gunthorpe Signed-off-by:

[Intel-gfx] ✓ Fi.CI.BAT: success for drm/i915/jsl: Add W/A 1409054076 for JSL (rev6)

2021-06-15 Thread Patchwork
== Series Details == Series: drm/i915/jsl: Add W/A 1409054076 for JSL (rev6) URL : https://patchwork.freedesktop.org/series/90129/ State : success == Summary == CI Bug Log - changes from CI_DRM_10225 -> Patchwork_20368 Summary ---

  1   2   3   >