From mboxrd@z Thu Jan 1 00:00:00 1970 From: Jani Nikula Subject: Re: [PATCH] drm/i915: Declare the swizzling unknown for L-shaped configurations Date: Mon, 29 Jun 2015 15:25:02 +0300 Message-ID: <878ub2ya5d.fsf@intel.com> References: <1435479566-25065-1-git-send-email-chris@chris-wilson.co.uk> <20150628125254.GK14226@nuc-i3427.alporthouse.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mga01.intel.com (mga01.intel.com [192.55.52.88]) by gabe.freedesktop.org (Postfix) with ESMTP id C11546E030 for ; Mon, 29 Jun 2015 05:22:31 -0700 (PDT) In-Reply-To: <20150628125254.GK14226@nuc-i3427.alporthouse.com> 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: Daniel Vetter , stable@vger.kernel.org List-Id: intel-gfx@lists.freedesktop.org T24gU3VuLCAyOCBKdW4gMjAxNSwgQ2hyaXMgV2lsc29uIDxjaHJpc0BjaHJpcy13aWxzb24uY28u dWs+IHdyb3RlOgo+IE9uIFN1biwgSnVuIDI4LCAyMDE1IGF0IDA5OjE5OjI2QU0gKzAxMDAsIENo cmlzIFdpbHNvbiB3cm90ZToKPj4gVGhlIG9sZCBzdHlsZSBvZiBtZW1vcnkgaW50ZXJsZWF2aW5n IHN3aXp6bGVkIHVwdG8gdGhlIGVuZCBvZiB0aGUKPj4gZmlyc3QgZXZlbiBiYW5rIG9mIG1lbW9y eSwgYW5kIHRoZW4gdXNlZCB0aGUgcmVtYWluZGVyIGFzIHVuc3dpenpsZWQgb24KPj4gdGhlIHVu cGFpcmVkIGJhbmsgLSBpLmUuIHN3aXp6bGluZyBpcyBub3QgY29uc3RhbnQgZm9yIGFsbCBtZW1v cnkuIFRoaXMKPj4gY2F1c2VzIHByb2JsZW1zIHdoZW4gd2UgdHJ5IHRvIG1pZ3JhdGUgbWVtb3J5 IGFuZCBzbyB0aGUga2VybmVsIHByZXZlbnRzCj4+IG1pZ3JhdGlvbiBhdCBhbGwgd2hlbiB3ZSBk ZXRlY3QgTC1zaGFwZWQgaW5jb25zaXN0ZW50IHN3aXp6bGluZy4KPj4gSG93ZXZlciwgdGhpcyBp c3N1ZSBhbHNvIGV4dGVuZHMgdG8gdXNlcnNwYWNlIHdobyB0cnkgdG8gbWFudWFsbHkgZGV0aWxl Cj4+IGludG8gbWVtb3J5IGFzIHRoZSBzd2l6emxpbmcgZm9yIGFuIGluZGl2aWR1YWwgcGFnZSBp cyB1bmtub3duIChpdAo+PiBkZXBlbmRzIG9uIGl0cyBwaHlzaWNhbCBhZGRyZXNzIG9ubHkga25v d24gdG8gdGhlIGtlcm5lbCksIHVzZXJzcGFjZQo+PiBjYW5ub3QgY29ycmVjdGx5IHN3aXp6bGUu Cj4+IAo+PiBCdWd6aWxsYTogaHR0cHM6Ly9idWdzLmZyZWVkZXNrdG9wLm9yZy9zaG93X2J1Zy5j Z2k/aWQ9OTExMDUKPj4gU2lnbmVkLW9mZi1ieTogQ2hyaXMgV2lsc29uIDxjaHJpc0BjaHJpcy13 aWxzb24uY28udWs+Cj4+IENjOiBEYW5pZWwgVmV0dGVyIDxkYW5pZWwudmV0dGVyQGZmd2xsLmNo Pgo+PiBDYzogc3RhYmxlQHZnZXIua2VybmVsLm9yZwo+PiAtLS0KPj4gIGRyaXZlcnMvZ3B1L2Ry bS9pOTE1L2k5MTVfZ2VtX3RpbGluZy5jIHwgNSArKysrLQo+PiAgMSBmaWxlIGNoYW5nZWQsIDQg aW5zZXJ0aW9ucygrKSwgMSBkZWxldGlvbigtKQo+PiAKPj4gZGlmZiAtLWdpdCBhL2RyaXZlcnMv Z3B1L2RybS9pOTE1L2k5MTVfZ2VtX3RpbGluZy5jIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkx NV9nZW1fdGlsaW5nLmMKPj4gaW5kZXggZDE2NTg1Zjc4OGVhLi5mZjk2YWU5Yjc3YmMgMTAwNjQ0 Cj4+IC0tLSBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZ2VtX3RpbGluZy5jCj4+ICsrKyBi L2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZ2VtX3RpbGluZy5jCj4+IEBAIC00NDcsNyArNDQ3 LDEwIEBAIGk5MTVfZ2VtX2dldF90aWxpbmcoc3RydWN0IGRybV9kZXZpY2UgKmRldiwgdm9pZCAq ZGF0YSwKPj4gIAl9Cj4+ICAKPj4gIAkvKiBIaWRlIGJpdCAxNyBmcm9tIHRoZSB1c2VyIC0tIHNl ZSBjb21tZW50IGluIGk5MTVfZ2VtX3NldF90aWxpbmcgKi8KPj4gLQlhcmdzLT5waHlzX3N3aXp6 bGVfbW9kZSA9IGFyZ3MtPnN3aXp6bGVfbW9kZTsKPj4gKwlpZiAoZGV2X3ByaXYtPnF1aXJrcyAm IFFVSVJLX1BJTl9TV0laWkxFRF9QQUdFUykKPj4gKwkJYXJncy0+cGh5c19zd2l6emxlX21vZGUg PSBJOTE1X0JJVF82X1NXSVpaTEVfVU5LTk9XTjsKPj4gKwllbHNlCj4+ICsJCWFyZ3MtPnBoeXNf c3dpenpsZV9tb2RlID0gYXJncy0+c3dpenpsZV9tb2RlOwo+Cj4gSXQgbWF5IGJlIGJldHRlciB0 byBzdG9yZSB0aGUgZGV2X3ByaXYtPm1tLmJpdF82X3N3aXp6bGVfW3h5XSBhcyBVTktOT1dOCj4g Zm9yIEwtc2hhcGVkIG1lbW9yeS4gSSB0aGluayB0aGF0IHdvdWxkIGJlIG1vcmUgY29ycmVjdC4K CkFyZSB5b3UgcGxhbm5pbmcgb24gc2VuZGluZyBhbiB1cGRhdGVkIHBhdGNoLCBvciBzaGFsbCBJ IG1lcmdlIHRoaXMgb25lPwoKQlIsCkphbmkuCgoKPiAtQ2hyaXMKPgo+IC0tIAo+IENocmlzIFdp bHNvbiwgSW50ZWwgT3BlbiBTb3VyY2UgVGVjaG5vbG9neSBDZW50cmUKPiBfX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwo+IEludGVsLWdmeCBtYWlsaW5nIGxp c3QKPiBJbnRlbC1nZnhAbGlzdHMuZnJlZWRlc2t0b3Aub3JnCj4gaHR0cDovL2xpc3RzLmZyZWVk ZXNrdG9wLm9yZy9tYWlsbWFuL2xpc3RpbmZvL2ludGVsLWdmeAoKLS0gCkphbmkgTmlrdWxhLCBJ bnRlbCBPcGVuIFNvdXJjZSBUZWNobm9sb2d5IENlbnRlcgpfX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fXwpJbnRlbC1nZnggbWFpbGluZyBsaXN0CkludGVsLWdm eEBsaXN0cy5mcmVlZGVza3RvcC5vcmcKaHR0cDovL2xpc3RzLmZyZWVkZXNrdG9wLm9yZy9tYWls bWFuL2xpc3RpbmZvL2ludGVsLWdmeAo= From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mga02.intel.com ([134.134.136.20]:61130 "EHLO mga02.intel.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1752425AbbF2MWb (ORCPT ); Mon, 29 Jun 2015 08:22:31 -0400 From: Jani Nikula To: Chris Wilson , intel-gfx@lists.freedesktop.org Cc: Daniel Vetter , stable@vger.kernel.org Subject: Re: [Intel-gfx] [PATCH] drm/i915: Declare the swizzling unknown for L-shaped configurations In-Reply-To: <20150628125254.GK14226@nuc-i3427.alporthouse.com> References: <1435479566-25065-1-git-send-email-chris@chris-wilson.co.uk> <20150628125254.GK14226@nuc-i3427.alporthouse.com> Date: Mon, 29 Jun 2015 15:25:02 +0300 Message-ID: <878ub2ya5d.fsf@intel.com> MIME-Version: 1.0 Content-Type: text/plain Sender: stable-owner@vger.kernel.org List-ID: On Sun, 28 Jun 2015, Chris Wilson wrote: > On Sun, Jun 28, 2015 at 09:19:26AM +0100, Chris Wilson wrote: >> The old style of memory interleaving swizzled upto the end of the >> first even bank of memory, and then used the remainder as unswizzled on >> the unpaired bank - i.e. swizzling is not constant for all memory. This >> causes problems when we try to migrate memory and so the kernel prevents >> migration at all when we detect L-shaped inconsistent swizzling. >> However, this issue also extends to userspace who try to manually detile >> into memory as the swizzling for an individual page is unknown (it >> depends on its physical address only known to the kernel), userspace >> cannot correctly swizzle. >> >> Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=91105 >> Signed-off-by: Chris Wilson >> Cc: Daniel Vetter >> Cc: stable@vger.kernel.org >> --- >> drivers/gpu/drm/i915/i915_gem_tiling.c | 5 ++++- >> 1 file changed, 4 insertions(+), 1 deletion(-) >> >> diff --git a/drivers/gpu/drm/i915/i915_gem_tiling.c b/drivers/gpu/drm/i915/i915_gem_tiling.c >> index d16585f788ea..ff96ae9b77bc 100644 >> --- a/drivers/gpu/drm/i915/i915_gem_tiling.c >> +++ b/drivers/gpu/drm/i915/i915_gem_tiling.c >> @@ -447,7 +447,10 @@ i915_gem_get_tiling(struct drm_device *dev, void *data, >> } >> >> /* Hide bit 17 from the user -- see comment in i915_gem_set_tiling */ >> - args->phys_swizzle_mode = args->swizzle_mode; >> + if (dev_priv->quirks & QUIRK_PIN_SWIZZLED_PAGES) >> + args->phys_swizzle_mode = I915_BIT_6_SWIZZLE_UNKNOWN; >> + else >> + args->phys_swizzle_mode = args->swizzle_mode; > > It may be better to store the dev_priv->mm.bit_6_swizzle_[xy] as UNKNOWN > for L-shaped memory. I think that would be more correct. Are you planning on sending an updated patch, or shall I merge this one? BR, Jani. > -Chris > > -- > Chris Wilson, Intel Open Source Technology Centre > _______________________________________________ > Intel-gfx mailing list > Intel-gfx@lists.freedesktop.org > http://lists.freedesktop.org/mailman/listinfo/intel-gfx -- Jani Nikula, Intel Open Source Technology Center