On Fri, Mar 17, 2023 at 8:58 AM Greg KH gregkh@linuxfoundation.org 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@Intel.com wrote:
From: John Harrison John.C.Harrison@Intel.com
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@Intel.com Fixes: 9d80841ea4c9 ("drm/i915: Allow ringbuffers to be bound anywhere") Cc: Chris Wilson chris@chris-wilson.co.uk Cc: Joonas Lahtinen joonas.lahtinen@linux.intel.com Cc: Jani Nikula jani.nikula@linux.intel.com Cc: Rodrigo Vivi rodrigo.vivi@intel.com Cc: Tvrtko Ursulin tvrtko.ursulin@linux.intel.com Cc: intel-gfx@lists.freedesktop.org Cc: stable@vger.kernel.org # v4.9+ Tested-by: Jouni Högander jouni.hogander@intel.com Reviewed-by: Daniele Ceraolo Spurio daniele.ceraolospurio@intel.com Link: https://patchwork.freedesktop.org/patch/msgid/20230216011101.1909009-3-John.... (cherry picked from commit 65c08339db1ada87afd6cfe7db8e60bb4851d919) Signed-off-by: Jani Nikula jani.nikula@intel.com (cherry picked from commit 85636167e3206c3fbd52254fc432991cc4e90194) Signed-off-by: John Harrison John.C.Harrison@Intel.com
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.
Hi, Greg,
5.4.237 fails to boot as a Xen PV Dom0. It hangs after modprobe i915.ko with no further output, though it seems to response to magic sysrq.
Reverting 5.4.y commit 1aed78cfda7f17f3cc71cb127a85a188eafc679a ("drm/i915: Don't use BAR mappings for ring buffers with LLC") lets it boot properly.
Thanks, Jason