From mboxrd@z Thu Jan 1 00:00:00 1970 From: Mika Kuoppala Subject: Re: [PATCH] drm: Restore double clflush on the last partial cacheline Date: Mon, 02 May 2016 15:54:01 +0300 Message-ID: <87lh3soc2e.fsf@gaia.fi.intel.com> References: <1462090503-9223-1-git-send-email-chris@chris-wilson.co.uk> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: In-Reply-To: <1462090503-9223-1-git-send-email-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: Jason Ekstrand , Daniel Vetter , Akash Goel , stable@vger.kernel.org, dri-devel@lists.freedesktop.org List-Id: dri-devel@lists.freedesktop.org Q2hyaXMgV2lsc29uIDxjaHJpc0BjaHJpcy13aWxzb24uY28udWs+IHdyaXRlczoKCj4gWyB0ZXh0 L3BsYWluIF0KPiBUaGlzIGVmZmVjdGl2ZWx5IHJldmVydHMKPgo+IGNvbW1pdCBhZmNkOTUwY2Fm ZWE2ZTI3YjczOWZlNzc3MmNiYmVlZDM3ZDA1YjhiCj4gQXV0aG9yOiBDaHJpcyBXaWxzb24gPGNo cmlzQGNocmlzLXdpbHNvbi5jby51az4KPiBEYXRlOiAgIFdlZCBKdW4gMTAgMTU6NTg6MDEgMjAx NSArMDEwMAo+Cj4gICAgIGRybTogQXZvaWQgdGhlIGRvdWJsZSBjbGZsdXNoIG9uIHRoZSBsYXN0 IGNhY2hlIGxpbmUgaW4gZHJtX2NsZmx1c2hfdmlydF9yYW5nZSgpCj4KPiBhcyB3ZSBoYXZlIG9i c2VydmVkIGlzc3VlcyB3aXRoIHNlcmlhbGlzYXRpb24gb2YgdGhlIGNsZmx1c2ggb3BlcmF0aW9u cwo+IG9uIEJheXRyYWlsKyBBdG9tcyB3aXRoIHBhcnRpYWwgdXBkYXRlcy4gQXBwbHlpbmcgdGhl IGRvdWJsZSBmbHVzaCBvbiB0aGUKPiBsYXN0IGNhY2hlbGluZSBmb3JjZXMgdGhhdCBjbGZsdXNo IHRvIGJlIG9yZGVyZWQgd2l0aCByZXNwZWN0IHRvIHRoZQo+IHByZXZpb3VzIGNsZmx1c2gsIGFu ZCB0aGUgbWZlbmNlIHRoZW4gcHJvdGVjdHMgYWdhaW5zdCBwcmVmZXRjaGVzIGNyb3NzaW5nCj4g dGhlIGNsZmx1c2ggYm91bmRhcnkuCj4KPiBUaGUgc2FtZSBpc3N1ZSBjYW4gYmUgZGVtb25zdHJh dGVkIGluIHVzZXJzcGFjZSB3aXRoIGlndC9nZW1fZXhlY19mbHVzaC4KPgo+IEZpeGVzOiBhZmNk OTUwY2FmZWE2IChkcm06IEF2b2lkIHRoZSBkb3VibGUgY2xmbHVzaCBvbiB0aGUgbGFzdCBjYWNo ZS4uLikKPiBUZXN0Y2FzZTogaWd0L2dlbV9jb25jdXJyZW50X2JsaXQKPiBUZXN0Y2FzZTogaWd0 L2dlbV9wYXJ0aWFsX3ByZWFkX3B3cml0ZQo+IEJ1Z3ppbGxhOiBodHRwczovL2J1Z3MuZnJlZWRl c2t0b3Aub3JnL3Nob3dfYnVnLmNnaT9pZD05Mjg0NQo+IFNpZ25lZC1vZmYtYnk6IENocmlzIFdp bHNvbiA8Y2hyaXNAY2hyaXMtd2lsc29uLmNvLnVrPgo+IENjOiBkcmktZGV2ZWxAbGlzdHMuZnJl ZWRlc2t0b3Aub3JnCj4gQ2M6IEFrYXNoIEdvZWwgPGFrYXNoLmdvZWxAaW50ZWwuY29tPgo+IENj OiBJbXJlIERlYWsgPGltcmUuZGVha0BpbnRlbC5jb20+Cj4gQ2M6IERhbmllbCBWZXR0ZXIgPGRh bmllbC52ZXR0ZXJAZmZ3bGwuY2g+Cj4gQ2M6IEphc29uIEVrc3RyYW5kIDxqYXNvbi5la3N0cmFu ZEBpbnRlbC5jb20+Cj4gQ2M6IHN0YWJsZUB2Z2VyLmtlcm5lbC5vcmcKClJldmlld2VkLWJ5OiBN aWthIEt1b3BwYWxhIDxtaWthLmt1b3BwYWxhQGludGVsLmNvbT4KCj4gLS0tCj4gIGRyaXZlcnMv Z3B1L2RybS9kcm1fY2FjaGUuYyB8IDEgKwo+ICAxIGZpbGUgY2hhbmdlZCwgMSBpbnNlcnRpb24o KykKPgo+IGRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vZHJtX2NhY2hlLmMgYi9kcml2ZXJz L2dwdS9kcm0vZHJtX2NhY2hlLmMKPiBpbmRleCA2NzQzZmY3ZGNjZmEuLjdmNGE2YzU1MDMxOSAx MDA2NDQKPiAtLS0gYS9kcml2ZXJzL2dwdS9kcm0vZHJtX2NhY2hlLmMKPiArKysgYi9kcml2ZXJz L2dwdS9kcm0vZHJtX2NhY2hlLmMKPiBAQCAtMTM2LDYgKzEzNiw3IEBAIGRybV9jbGZsdXNoX3Zp cnRfcmFuZ2Uodm9pZCAqYWRkciwgdW5zaWduZWQgbG9uZyBsZW5ndGgpCj4gIAkJbWIoKTsKPiAg CQlmb3IgKDsgYWRkciA8IGVuZDsgYWRkciArPSBzaXplKQo+ICAJCQljbGZsdXNob3B0KGFkZHIp Owo+ICsJCWNsZmx1c2hvcHQoZW5kIC0gMSk7IC8qIGZvcmNlIHNlcmlhbGlzYXRpb24gKi8KPiAg CQltYigpOwo+ICAJCXJldHVybjsKPiAgCX0KPiAtLSAKPiAyLjguMQo+Cj4gX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KPiBJbnRlbC1nZnggbWFpbGluZyBs aXN0Cj4gSW50ZWwtZ2Z4QGxpc3RzLmZyZWVkZXNrdG9wLm9yZwo+IGh0dHBzOi8vbGlzdHMuZnJl ZWRlc2t0b3Aub3JnL21haWxtYW4vbGlzdGluZm8vaW50ZWwtZ2Z4Cl9fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fCkludGVsLWdmeCBtYWlsaW5nIGxpc3QKSW50 ZWwtZ2Z4QGxpc3RzLmZyZWVkZXNrdG9wLm9yZwpodHRwczovL2xpc3RzLmZyZWVkZXNrdG9wLm9y Zy9tYWlsbWFuL2xpc3RpbmZvL2ludGVsLWdmeAo= From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mga03.intel.com ([134.134.136.65]:46449 "EHLO mga03.intel.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1753290AbcEBM46 (ORCPT ); Mon, 2 May 2016 08:56:58 -0400 From: Mika Kuoppala To: Chris Wilson , intel-gfx@lists.freedesktop.org Cc: Daniel Vetter , dri-devel@lists.freedesktop.org, Jason Ekstrand , Akash Goel , stable@vger.kernel.org Subject: Re: [Intel-gfx] [PATCH] drm: Restore double clflush on the last partial cacheline In-Reply-To: <1462090503-9223-1-git-send-email-chris@chris-wilson.co.uk> References: <1462090503-9223-1-git-send-email-chris@chris-wilson.co.uk> Date: Mon, 02 May 2016 15:54:01 +0300 Message-ID: <87lh3soc2e.fsf@gaia.fi.intel.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Sender: stable-owner@vger.kernel.org List-ID: Chris Wilson writes: > [ text/plain ] > This effectively reverts > > commit afcd950cafea6e27b739fe7772cbbeed37d05b8b > Author: Chris Wilson > Date: Wed Jun 10 15:58:01 2015 +0100 > > drm: Avoid the double clflush on the last cache line in drm_clflush_virt_range() > > as we have observed issues with serialisation of the clflush operations > on Baytrail+ Atoms with partial updates. Applying the double flush on the > last cacheline forces that clflush to be ordered with respect to the > previous clflush, and the mfence then protects against prefetches crossing > the clflush boundary. > > The same issue can be demonstrated in userspace with igt/gem_exec_flush. > > Fixes: afcd950cafea6 (drm: Avoid the double clflush on the last cache...) > Testcase: igt/gem_concurrent_blit > Testcase: igt/gem_partial_pread_pwrite > Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=92845 > Signed-off-by: Chris Wilson > Cc: dri-devel@lists.freedesktop.org > Cc: Akash Goel > Cc: Imre Deak > Cc: Daniel Vetter > Cc: Jason Ekstrand > Cc: stable@vger.kernel.org Reviewed-by: Mika Kuoppala > --- > drivers/gpu/drm/drm_cache.c | 1 + > 1 file changed, 1 insertion(+) > > diff --git a/drivers/gpu/drm/drm_cache.c b/drivers/gpu/drm/drm_cache.c > index 6743ff7dccfa..7f4a6c550319 100644 > --- a/drivers/gpu/drm/drm_cache.c > +++ b/drivers/gpu/drm/drm_cache.c > @@ -136,6 +136,7 @@ drm_clflush_virt_range(void *addr, unsigned long length) > mb(); > for (; addr < end; addr += size) > clflushopt(addr); > + clflushopt(end - 1); /* force serialisation */ > mb(); > return; > } > -- > 2.8.1 > > _______________________________________________ > Intel-gfx mailing list > Intel-gfx@lists.freedesktop.org > https://lists.freedesktop.org/mailman/listinfo/intel-gfx