From mboxrd@z Thu Jan 1 00:00:00 1970 From: Mika Kuoppala Subject: Re: [PATCH v3] drm/i915: Consider HW CSB write pointer before resetting the sw read pointer Date: Mon, 28 Sep 2015 17:00:12 +0300 Message-ID: <878u7qabkj.fsf@gaia.fi.intel.com> References: <1443019430-20792-1-git-send-email-michel.thierry@intel.com> <1443446247-13837-1-git-send-email-michel.thierry@intel.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 8CAF86E9DA for ; Mon, 28 Sep 2015 07:00:56 -0700 (PDT) In-Reply-To: <1443446247-13837-1-git-send-email-michel.thierry@intel.com> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: intel-gfx-bounces@lists.freedesktop.org Sender: "Intel-gfx" To: Michel Thierry , intel-gfx@lists.freedesktop.org List-Id: intel-gfx@lists.freedesktop.org TWljaGVsIFRoaWVycnkgPG1pY2hlbC50aGllcnJ5QGludGVsLmNvbT4gd3JpdGVzOgoKPiBBIHBy ZXZpb3VzIGNvbW1pdCByZXNldHMgdGhlIENvbnRleHQgU3RhdHVzIEJ1ZmZlciAoQ1NCKSByZWFk IHBvaW50ZXIgaW4KPiByaW5nIGluaXQKPiAgICAgY29tbWl0IGMwYTAzYTJlNGM0ZSAoImRybS9p OTE1OiBSZXNldCBDU0IgcmVhZCBwb2ludGVyIGluIHJpbmcgaW5pdCIpCj4KPiBUaGlzIGlzIGdl bmVyYWxseSBjb3JyZWN0LCBidXQgdGhpcyBwb2ludGVyIGlzIG5vdCByZXNldCBhZnRlcgo+IHN1 c3BlbmQvcmVzdW1lIGluIHNvbWUgcGxhdGZvcm1zIChjaHQpLiBJbiB0aGlzIGNhc2UsIHRoZSBk cml2ZXIgc2hvdWxkCj4gcmVhZCB0aGUgcmVnaXN0ZXIgdmFsdWUgaW5zdGVhZCBvZiByZXNldHRp bmcgdGhlIHN3IHJlYWQgY291bnRlciB0byAwLgo+IE90aGVyd2lzZSB3ZSBwcm9jZXNzIG9sZCBl dmVudHMsIGxlYWRpbmcgdG8gdW53YW50ZWQgcHJlLWVtcHRpb25zIG9yCj4gc29tZXRoaW5nIHdv cnNlLgo+Cj4gQnV0IGluIG90aGVyIHBsYXRmb3JtcyAoYmR3KSBhbmQgYWxzbyBkdXJpbmcgR1BV IHJlc2V0IG9yIHBvd2VyIHVwLCB0aGUKPiBDU0JXUCBpcyByZXNldCB0byAweDcgKGFuIGludmFs aWQgbnVtYmVyKSwgYW5kIGluIHRoaXMgY2FzZSB0aGUgcmVhZAo+IHBvaW50ZXIgc2hvdWxkIGJl IHNldCB0byA1ICh0aGUgaW50ZXJydXB0IGNvZGUgd2lsbCBpbmNyZW1lbnQgdGhpcwo+IGNvdW50 ZXIgb25lIG1vcmUgdGltZSwgYW5kIHdpbGwgc3RhcnQgcmVhZGluZyBmcm9tIENTQlswXSkuCj4K PiB2MjogV2hlbiB0aGUgQ1NCIHJlZ2lzdGVycyBhcmUgcmVzZXQsIHRoZSByZWFkIHBvaW50ZXIg bmVlZHMgdG8gYmUgc2V0Cj4gdG8gNSwgb3RoZXJ3aXNlIHRoZSBmaXJzdCB3cml0ZSAoQ1NCWzBd KSB3b24ndCBiZSByZWFkIChNaWthKS4KPiBSZXBsYWNlIG1hZ2ljIG51bWJlcnMgd2l0aCBHRU44 X0NTQl9FTlRSSUVTICg2KSBhbmQgR0VOOF9DU0JfUFRSX01BU0sKPiAoMHgwNykuCj4gdjM6IFJl YmFzZWQgb24gdG9wIG9mICJQYXJhbWV0cml6ZSBMUkMgcmVnaXN0ZXJzIiBwYXRjaC4KPgo+IENj OiBNaWthIEt1b3BwYWxhIDxtaWthLmt1b3BwYWxhQGxpbnV4LmludGVsLmNvbT4KPiBTaWduZWQt b2ZmLWJ5OiBMZWkgU2hlbiA8bGVpLnNoZW5AaW50ZWwuY29tPgo+IFNpZ25lZC1vZmYtYnk6IERl ZXBhayBTIDxkZWVwYWsuc0BpbnRlbC5jb20+Cj4gU2lnbmVkLW9mZi1ieTogTWljaGVsIFRoaWVy cnkgPG1pY2hlbC50aGllcnJ5QGludGVsLmNvbT4KPiAtLS0KPiAgZHJpdmVycy9ncHUvZHJtL2k5 MTUvaW50ZWxfbHJjLmMgfCAzOSArKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKy0tLS0t LS0KPiAgZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfbHJjLmggfCAgMiArKwo+ICAyIGZpbGVz IGNoYW5nZWQsIDM0IGluc2VydGlvbnMoKyksIDcgZGVsZXRpb25zKC0pCj4KPiBkaWZmIC0tZ2l0 IGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfbHJjLmMgYi9kcml2ZXJzL2dwdS9kcm0vaTkx NS9pbnRlbF9scmMuYwo+IGluZGV4IDI1NjE2N2IuLjgyNWZhN2EgMTAwNjQ0Cj4gLS0tIGEvZHJp dmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfbHJjLmMKPiArKysgYi9kcml2ZXJzL2dwdS9kcm0vaTkx NS9pbnRlbF9scmMuYwo+IEBAIC01MTEsMTYgKzUxMSwxNiBAQCB2b2lkIGludGVsX2xyY19pcnFf aGFuZGxlcihzdHJ1Y3QgaW50ZWxfZW5naW5lX2NzICpyaW5nKQo+ICAJc3RhdHVzX3BvaW50ZXIg PSBJOTE1X1JFQUQoUklOR19DT05URVhUX1NUQVRVU19QVFIocmluZykpOwo+ICAKPiAgCXJlYWRf cG9pbnRlciA9IHJpbmctPm5leHRfY29udGV4dF9zdGF0dXNfYnVmZmVyOwo+IC0Jd3JpdGVfcG9p bnRlciA9IHN0YXR1c19wb2ludGVyICYgMHgwNzsKPiArCXdyaXRlX3BvaW50ZXIgPSBzdGF0dXNf cG9pbnRlciAmIEdFTjhfQ1NCX1BUUl9NQVNLOwo+ICAJaWYgKHJlYWRfcG9pbnRlciA+IHdyaXRl X3BvaW50ZXIpCj4gLQkJd3JpdGVfcG9pbnRlciArPSA2Owo+ICsJCXdyaXRlX3BvaW50ZXIgKz0g R0VOOF9DU0JfRU5UUklFUzsKPiAgCj4gIAlzcGluX2xvY2soJnJpbmctPmV4ZWNsaXN0X2xvY2sp Owo+ICAKPiAgCXdoaWxlIChyZWFkX3BvaW50ZXIgPCB3cml0ZV9wb2ludGVyKSB7Cj4gIAkJcmVh ZF9wb2ludGVyKys7Cj4gLQkJc3RhdHVzID0gSTkxNV9SRUFEKFJJTkdfQ09OVEVYVF9TVEFUVVNf QlVGX0xPKHJpbmcsIHJlYWRfcG9pbnRlciAlIDYpKTsKPiAtCQlzdGF0dXNfaWQgPSBJOTE1X1JF QUQoUklOR19DT05URVhUX1NUQVRVU19CVUZfSEkocmluZywgcmVhZF9wb2ludGVyICUgNikpOwo+ ICsJCXN0YXR1cyA9IEk5MTVfUkVBRChSSU5HX0NPTlRFWFRfU1RBVFVTX0JVRl9MTyhyaW5nLCBy ZWFkX3BvaW50ZXIgJSBHRU44X0NTQl9FTlRSSUVTKSk7Cj4gKwkJc3RhdHVzX2lkID0gSTkxNV9S RUFEKFJJTkdfQ09OVEVYVF9TVEFUVVNfQlVGX0hJKHJpbmcsIHJlYWRfcG9pbnRlciAlIEdFTjhf Q1NCX0VOVFJJRVMpKTsKPiAgCj4gIAkJaWYgKHN0YXR1cyAmIEdFTjhfQ1RYX1NUQVRVU19JRExF X0FDVElWRSkKPiAgCQkJY29udGludWU7Cj4gQEAgLTU1MiwxMCArNTUyLDEyIEBAIHZvaWQgaW50 ZWxfbHJjX2lycV9oYW5kbGVyKHN0cnVjdCBpbnRlbF9lbmdpbmVfY3MgKnJpbmcpCj4gIAlzcGlu X3VubG9jaygmcmluZy0+ZXhlY2xpc3RfbG9jayk7Cj4gIAo+ICAJV0FSTihzdWJtaXRfY29udGV4 dHMgPiAyLCAiTW9yZSB0aGFuIHR3byBjb250ZXh0IGNvbXBsZXRlIGV2ZW50cz9cbiIpOwo+IC0J cmluZy0+bmV4dF9jb250ZXh0X3N0YXR1c19idWZmZXIgPSB3cml0ZV9wb2ludGVyICUgNjsKPiAr CXJpbmctPm5leHRfY29udGV4dF9zdGF0dXNfYnVmZmVyID0gd3JpdGVfcG9pbnRlciAlIEdFTjhf Q1NCX0VOVFJJRVM7Cj4gIAo+ICAJSTkxNV9XUklURShSSU5HX0NPTlRFWFRfU1RBVFVTX1BUUihy aW5nKSwKPiAtCQkgICBfTUFTS0VEX0ZJRUxEKDB4MDcgPDwgOCwgKCh1MzIpcmluZy0+bmV4dF9j b250ZXh0X3N0YXR1c19idWZmZXIgJiAweDA3KSA8PCA4KSk7Cj4gKwkJICAgX01BU0tFRF9GSUVM RChHRU44X0NTQl9QVFJfTUFTSyA8PCA4LAo+ICsJCQkJICgodTMyKXJpbmctPm5leHRfY29udGV4 dF9zdGF0dXNfYnVmZmVyICYKPiArCQkJCSAgR0VOOF9DU0JfUFRSX01BU0spIDw8IDgpKTsKPiAg fQo+ICAKPiAgc3RhdGljIGludCBleGVjbGlzdHNfY29udGV4dF9xdWV1ZShzdHJ1Y3QgZHJtX2k5 MTVfZ2VtX3JlcXVlc3QgKnJlcXVlc3QpCj4gQEAgLTE0NzcsNiArMTQ3OSw3IEBAIHN0YXRpYyBp bnQgZ2VuOF9pbml0X2NvbW1vbl9yaW5nKHN0cnVjdCBpbnRlbF9lbmdpbmVfY3MgKnJpbmcpCj4g IHsKPiAgCXN0cnVjdCBkcm1fZGV2aWNlICpkZXYgPSByaW5nLT5kZXY7Cj4gIAlzdHJ1Y3QgZHJt X2k5MTVfcHJpdmF0ZSAqZGV2X3ByaXYgPSBkZXYtPmRldl9wcml2YXRlOwo+ICsJdTggbmV4dF9j b250ZXh0X3N0YXR1c19idWZmZXJfaHc7Cj4gIAo+ICAJbHJjX3NldHVwX2hhcmR3YXJlX3N0YXR1 c19wYWdlKHJpbmcsCj4gIAkJCQlyaW5nLT5kZWZhdWx0X2NvbnRleHQtPmVuZ2luZVtyaW5nLT5p ZF0uc3RhdGUpOwo+IEBAIC0xNDk0LDcgKzE0OTcsMjkgQEAgc3RhdGljIGludCBnZW44X2luaXRf Y29tbW9uX3Jpbmcoc3RydWN0IGludGVsX2VuZ2luZV9jcyAqcmluZykKPiAgCQkgICBfTUFTS0VE X0JJVF9ESVNBQkxFKEdGWF9SRVBMQVlfTU9ERSkgfAo+ICAJCSAgIF9NQVNLRURfQklUX0VOQUJM RShHRlhfUlVOX0xJU1RfRU5BQkxFKSk7Cj4gIAlQT1NUSU5HX1JFQUQoUklOR19NT0RFX0dFTjco cmluZykpOwo+IC0JcmluZy0+bmV4dF9jb250ZXh0X3N0YXR1c19idWZmZXIgPSAwOwo+ICsKPiAr CS8qCj4gKwkgKiBJbnN0ZWFkIG9mIHJlc2V0dGluZyB0aGUgQ29udGV4dCBTdGF0dXMgQnVmZmVy IChDU0IpIHJlYWQgcG9pbnRlciB0bwo+ICsJICogemVybywgd2UgbmVlZCB0byByZWFkIHRoZSB3 cml0ZSBwb2ludGVyIGZyb20gaGFyZHdhcmUgYW5kIHVzZSBpdHMKPiArCSAqIHZhbHVlIGJlY2F1 c2UgInRoaXMgcmVnaXN0ZXIgaXMgcG93ZXIgY29udGV4dCBzYXZlIHJlc3RvcmVkIi4KPiArCSAq IEVmZmVjdGl2ZWx5LCB0aGVzZSBzdGF0ZXMgaGF2ZSBiZWVuIG9ic2VydmVkOgo+ICsJICoKPiAr CSAqICAgICAgfCBTdXNwZW5kLXRvLWlkbGUgKGZyZWV6ZSkgfCBTdXNwZW5kLXRvLVJBTSAobWVt KSB8Cj4gKwkgKiBCRFcgIHwgQ1NCIHJlZ3Mgbm90IHJlc2V0ICAgICAgIHwgQ1NCIHJlZ3MgcmVz ZXQgICAgICAgfAo+ICsJICogQ0hUICB8IENTQiByZWdzIG5vdCByZXNldCAgICAgICB8IENTQiBy ZWdzIG5vdCByZXNldCAgIHwKPiArCSAqLwoKU0tMIGFjdHMgc2ltaWxhciB0byBCRFcuCgo+ICsJ bmV4dF9jb250ZXh0X3N0YXR1c19idWZmZXJfaHcgPSAoSTkxNV9SRUFEKFJJTkdfQ09OVEVYVF9T VEFUVVNfUFRSKHJpbmcpKQo+ICsJCQkJCQkgICAmIEdFTjhfQ1NCX1BUUl9NQVNLKTsKPiArCj4g KwkvKgo+ICsJICogV2hlbiB0aGUgQ1NCIHJlZ2lzdGVycyBhcmUgcmVzZXQgKGFsc28gYWZ0ZXIg cG93ZXItdXAgLyBncHUgcmVzZXQpLAo+ICsJICogQ1NCIHdyaXRlIHBvaW50ZXIgaXMgc2V0IHRv IGFsbCAxJ3MsIHdoaWNoIGlzIG5vdCB2YWxpZCwgdXNlICc1JyBpbgo+ICsJICogdGhpcyBzcGVj aWFsIGNhc2UsIHNvIHRoZSBmaXJzdCBlbGVtZW50IHJlYWQgaXMgQ1NCWzBdLgo+ICsJICovCj4g KwlpZiAobmV4dF9jb250ZXh0X3N0YXR1c19idWZmZXJfaHcgPT0gR0VOOF9DU0JfUFRSX01BU0sp Cj4gKwkJbmV4dF9jb250ZXh0X3N0YXR1c19idWZmZXJfaHcgPSAoR0VOOF9DU0JfRU5UUklFUyAt IDEpOwo+ICsKCk5vdyB0aGF0IHRoaXMgaGFzIGJlZW4gdW5yYXZlbGxlZCwgSSBob3BlIHdlIGNh biBtb3ZlIHRvd2FyZHMKb2YgcmVtb3ZpbmcgdGhlIGRyaXZlciBzdGF0ZSBvZiBuZXh0IGNvbnRl eHQgYnVmZmVyIGNvbXBsZXRlbHk6CgpodHRwOi8vbGlzdHMuZnJlZWRlc2t0b3Aub3JnL2FyY2hp dmVzL2ludGVsLWdmeC8yMDE1LU1heS8wNjczMTMuaHRtbAoKUmV2aWV3ZWQtYnk6IE1pa2EgS3Vv cHBhbGEgPG1pa2Eua3VvcHBhbGFAaW50ZWwuY29tPgoKPiArCXJpbmctPm5leHRfY29udGV4dF9z dGF0dXNfYnVmZmVyID0gbmV4dF9jb250ZXh0X3N0YXR1c19idWZmZXJfaHc7Cj4gIAlEUk1fREVC VUdfRFJJVkVSKCJFeGVjbGlzdHMgZW5hYmxlZCBmb3IgJXNcbiIsIHJpbmctPm5hbWUpOwo+ICAK PiAgCW1lbXNldCgmcmluZy0+aGFuZ2NoZWNrLCAwLCBzaXplb2YocmluZy0+aGFuZ2NoZWNrKSk7 Cj4gZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2xyYy5oIGIvZHJpdmVy cy9ncHUvZHJtL2k5MTUvaW50ZWxfbHJjLmgKPiBpbmRleCA4YTA4YTI3Li40ZTYwZDU0IDEwMDY0 NAo+IC0tLSBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2xyYy5oCj4gKysrIGIvZHJpdmVy cy9ncHUvZHJtL2k5MTUvaW50ZWxfbHJjLmgKPiBAQCAtMjUsNiArMjUsOCBAQAo+ICAjZGVmaW5l IF9JTlRFTF9MUkNfSF8KPiAgCj4gICNkZWZpbmUgR0VOOF9MUl9DT05URVhUX0FMSUdOIDQwOTYK PiArI2RlZmluZSBHRU44X0NTQl9FTlRSSUVTIDYKPiArI2RlZmluZSBHRU44X0NTQl9QVFJfTUFT SyAweDA3Cj4gIAo+ICAvKiBFeGVjbGlzdHMgcmVncyAqLwo+ICAjZGVmaW5lIFJJTkdfRUxTUChy aW5nKQkJCSgocmluZyktPm1taW9fYmFzZSsweDIzMCkKPiAtLSAKPiAyLjUuMwoKCgpfX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwpJbnRlbC1nZnggbWFpbGlu ZyBsaXN0CkludGVsLWdmeEBsaXN0cy5mcmVlZGVza3RvcC5vcmcKaHR0cDovL2xpc3RzLmZyZWVk ZXNrdG9wLm9yZy9tYWlsbWFuL2xpc3RpbmZvL2ludGVsLWdmeAo=