Re: [PATCH 5.4.y] drm/i915: Don't use BAR mappings for ring buffers with LLC

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On 3/17/2023 05:58, Greg KH wrote:
On Thu, Mar 16, 2023 at 01:58:35PM -0700, John Harrison wrote:
On 3/15/2023 10:57, Greg KH wrote:
On Wed, Mar 15, 2023 at 10:07:53AM -0700, John Harrison wrote:
On 3/15/2023 00:51, Greg KH wrote:
On Mon, Mar 13, 2023 at 07:22:11PM -0700, John.C.Harrison@xxxxxxxxx wrote:
From: John Harrison <John.C.Harrison@xxxxxxxxx>

Direction from hardware is that ring buffers should never be mapped
via the BAR on systems with LLC. There are too many caching pitfalls
due to the way BAR accesses are routed. So it is safest to just not
use it.

Signed-off-by: John Harrison <John.C.Harrison@xxxxxxxxx>
Fixes: 9d80841ea4c9 ("drm/i915: Allow ringbuffers to be bound anywhere")
Cc: Chris Wilson <chris@xxxxxxxxxxxxxxxxxx>
Cc: Joonas Lahtinen <joonas.lahtinen@xxxxxxxxxxxxxxx>
Cc: Jani Nikula <jani.nikula@xxxxxxxxxxxxxxx>
Cc: Rodrigo Vivi <rodrigo.vivi@xxxxxxxxx>
Cc: Tvrtko Ursulin <tvrtko.ursulin@xxxxxxxxxxxxxxx>
Cc: intel-gfx@xxxxxxxxxxxxxxxxxxxxx
Cc: <stable@xxxxxxxxxxxxxxx> # v4.9+
Tested-by: Jouni Högander <jouni.hogander@xxxxxxxxx>
Reviewed-by: Daniele Ceraolo Spurio <daniele.ceraolospurio@xxxxxxxxx>
Link: https://patchwork.freedesktop.org/patch/msgid/20230216011101.1909009-3-John.C.Harrison@xxxxxxxxx
(cherry picked from commit 65c08339db1ada87afd6cfe7db8e60bb4851d919)
Signed-off-by: Jani Nikula <jani.nikula@xxxxxxxxx>
(cherry picked from commit 85636167e3206c3fbd52254fc432991cc4e90194)
Signed-off-by: John Harrison <John.C.Harrison@xxxxxxxxx>
---
    drivers/gpu/drm/i915/gt/intel_ringbuffer.c | 4 ++--
    1 file changed, 2 insertions(+), 2 deletions(-)
Also queued up for 5.10.y, you forgot that one :)
I'm still working through the backlog of them.

Note that these patches must all be applied as a pair. The 'don't use
stolen' can be applied in isolation but won't totally fix the problem.
However, applying 'don't use BAR mappings' without applying the stolen patch
first will results in problems such as the failure to boot that was recently
reported and resulted in a revert in one of the trees.
I do not understand, you only submitted 1 patch here, what is the
"pair"?
The original patch series was two patches -
https://patchwork.freedesktop.org/series/114080/. One to not use stolen
memory and the other to not use BAR mappings. If the anti-BAR patch is
applied without the anti-stolen patch then the i915 driver will attempt to
access stolen memory directly which will fail. So both patches must be
applied and in the correct order to fix the problem of cache aliasing when
using BAR accesses on LLC systems.

As above, I am working my way through the bunch of 'FAILED patch' emails.
The what-to-do instructions in those emails explicitly say to send the patch
individually in reply to the 'FAILED' message rather than as part of any
original series.
So what commits exactly in Linus's tree should be in these stable
branches?  Sorry, I still do not understand if we are missing one or if
we need to revert something.

confused,

greg k-h
As far as I can tell, I have replied to all the "FAILED: patch" emails now. There should be a versions of these two patches available for all trees (being 4.14, 4.19, 5.4, 5.10 and 5.15):     690e0ec8e63d drm/i915: Don't use stolen memory for ring buffers with LLC
    85636167e320 drm/i915: Don't use BAR mappings for ring buffers with LLC

They should be applied in the order of 'stolen memory' first and 'BAR mappings' second.

Thanks,
John.




[Index of Archives]     [AMD Graphics]     [Linux USB Devel]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux