From mboxrd@z Thu Jan 1 00:00:00 1970 From: Joonas Lahtinen Subject: Re: [PATCH] drm/i915: Flush pending GTT writes before unbinding Date: Mon, 04 Dec 2017 14:46:58 +0200 Message-ID: <1512391618.4394.35.camel@linux.intel.com> References: <20171204124307.2583-1-chris@chris-wilson.co.uk> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mga04.intel.com (mga04.intel.com [192.55.52.120]) by gabe.freedesktop.org (Postfix) with ESMTPS id ED4946E39B for ; Mon, 4 Dec 2017 12:47:00 +0000 (UTC) In-Reply-To: <20171204124307.2583-1-chris@chris-wilson.co.uk> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: intel-gfx-bounces@lists.freedesktop.org Sender: "Intel-gfx" To: Chris Wilson , intel-gfx@lists.freedesktop.org Cc: stable@vger.kernel.org List-Id: intel-gfx@lists.freedesktop.org T24gTW9uLCAyMDE3LTEyLTA0IGF0IDEyOjQzICswMDAwLCBDaHJpcyBXaWxzb24gd3JvdGU6Cj4g RnJvbSB0aGUgc2hyaW5rZXIgcGF0aHMsIHdlIHdhbnQgdG8gcmVsaW5xdWlzaCB0aGUgR1BVIGFu ZCBHR1RUIGFjY2VzcyB0bwo+IHRoZSBvYmplY3QsIHJlbGVhc2luZyB0aGUgYmFja2luZyBzdG9y YWdlIGJhY2sgdG8gdGhlIHN5c3RlbSBmb3IKPiBzd2Fwb3V0LiBBcyBhIHBhcnQgb2YgdGhhdCBw cm9jZXNzIHdlIHdvdWxkIHVucGluIHRoZSBwYWdlcywgbWFya2luZwo+IHRoZW0gZm9yIGFjY2Vz cyBieSB0aGUgQ1BVIChmb3IgdGhlIHN3YXBvdXQvc3dhcGluKS4gSG93ZXZlciwgaWYgdGhhdAo+ IHByb2Nlc3Mgd2FzIGludGVycnVwdGVkIGFmdGVyIHVuYmluZCB0aGUgdm1hLCB3ZSBtaXNzZWQg YSBmbHVzaCBvZiB0aGUKPiBpbmZsaWdodCBHR1RUIHdyaXRlcyBiZWZvcmUgd2UgbWFkZSB0aGF0 IEdUVCBzcGFjZSBhdmFpbGFibGUgYWdhaW4gZm9yCj4gcmV1c2UsIHdpdGggdGhlIHByb3NwZWN0 IHRoYXQgd2Ugd291bGQgcmVkaXJlY3QgdGhlbSB0byBhbm90aGVyIHBhZ2UuCj4gCj4gVGhlIGJ1 ZyBkYXRlcyBiYWNrIHRvIHRoZSBpbnRyb2R1Y3Rpb24gb2YgbXVsdGlwbGUgR0dUVCB2bWEsIGJ1 dCB0aGUKPiBjb2RlIGl0c2VsZiBkYXRlcyB0byBjb21taXQgMDJiZWY4Zjk4ZDI2ICgiZHJtL2k5 MTU6IFVuYmluZCBjbG9zZWQgdm1hCj4gZm9yIGk5MTVfZ2VtX29iamVjdF91bmJpbmQoKSIpLgo+ IAo+IEZpeGVzOiAwMmJlZjhmOThkMjYgKCJkcm0vaTkxNTogVW5iaW5kIGNsb3NlZCB2bWEgZm9y IGk5MTVfZ2VtX29iamVjdF91bmJpbmQoKSIpCj4gRml4ZXM6IGM1YWQ1NGNmN2RkOCAoImRybS9p OTE1OiBVc2UgcGFydGlhbCB2aWV3IGluIG1tYXAgZmF1bHQgaGFuZGxlciIpCj4gU2lnbmVkLW9m Zi1ieTogQ2hyaXMgV2lsc29uIDxjaHJpc0BjaHJpcy13aWxzb24uY28udWs+Cj4gQ2M6IEpvb25h cyBMYWh0aW5lbiA8am9vbmFzLmxhaHRpbmVuQGxpbnV4LmludGVsLmNvbT4KPiBDYzogc3RhYmxl QHZnZXIua2VybmVsLm9yZwoKUmV2aWV3ZWQtYnk6IEpvb25hcyBMYWh0aW5lbiA8am9vbmFzLmxh aHRpbmVuQGxpbnV4LmludGVsLmNvbT4KClJlZ2FyZHMsIEpvb25hcwotLSAKSm9vbmFzIExhaHRp bmVuCk9wZW4gU291cmNlIFRlY2hub2xvZ3kgQ2VudGVyCkludGVsIENvcnBvcmF0aW9uCl9fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fCkludGVsLWdmeCBtYWls aW5nIGxpc3QKSW50ZWwtZ2Z4QGxpc3RzLmZyZWVkZXNrdG9wLm9yZwpodHRwczovL2xpc3RzLmZy ZWVkZXNrdG9wLm9yZy9tYWlsbWFuL2xpc3RpbmZvL2ludGVsLWdmeAo= From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mga01.intel.com ([192.55.52.88]:22046 "EHLO mga01.intel.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1752166AbdLDMrA (ORCPT ); Mon, 4 Dec 2017 07:47:00 -0500 Message-ID: <1512391618.4394.35.camel@linux.intel.com> Subject: Re: [PATCH] drm/i915: Flush pending GTT writes before unbinding From: Joonas Lahtinen To: Chris Wilson , intel-gfx@lists.freedesktop.org Cc: stable@vger.kernel.org Date: Mon, 04 Dec 2017 14:46:58 +0200 In-Reply-To: <20171204124307.2583-1-chris@chris-wilson.co.uk> References: <20171204124307.2583-1-chris@chris-wilson.co.uk> Content-Type: text/plain; charset="UTF-8" Mime-Version: 1.0 Content-Transfer-Encoding: 7bit Sender: stable-owner@vger.kernel.org List-ID: On Mon, 2017-12-04 at 12:43 +0000, Chris Wilson wrote: > From the shrinker paths, we want to relinquish the GPU and GGTT access to > the object, releasing the backing storage back to the system for > swapout. As a part of that process we would unpin the pages, marking > them for access by the CPU (for the swapout/swapin). However, if that > process was interrupted after unbind the vma, we missed a flush of the > inflight GGTT writes before we made that GTT space available again for > reuse, with the prospect that we would redirect them to another page. > > The bug dates back to the introduction of multiple GGTT vma, but the > code itself dates to commit 02bef8f98d26 ("drm/i915: Unbind closed vma > for i915_gem_object_unbind()"). > > Fixes: 02bef8f98d26 ("drm/i915: Unbind closed vma for i915_gem_object_unbind()") > Fixes: c5ad54cf7dd8 ("drm/i915: Use partial view in mmap fault handler") > Signed-off-by: Chris Wilson > Cc: Joonas Lahtinen > Cc: stable@vger.kernel.org Reviewed-by: Joonas Lahtinen Regards, Joonas -- Joonas Lahtinen Open Source Technology Center Intel Corporation