From mboxrd@z Thu Jan 1 00:00:00 1970 From: Ville =?iso-8859-1?Q?Syrj=E4l=E4?= Subject: Re: [PATCH 2/2] drm/i915: Prevent concurrent tiling/framebuffer modifications Date: Wed, 1 Mar 2017 15:09:36 +0200 Message-ID: <20170301130936.GS31595@intel.com> References: <20170228162233.8709-1-chris@chris-wilson.co.uk> <20170228162233.8709-2-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 42FC289C52 for ; Wed, 1 Mar 2017 13:09:39 +0000 (UTC) Content-Disposition: inline In-Reply-To: <20170228162233.8709-2-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 Cc: intel-gfx@lists.freedesktop.org List-Id: intel-gfx@lists.freedesktop.org T24gVHVlLCBGZWIgMjgsIDIwMTcgYXQgMDQ6MjI6MzNQTSArMDAwMCwgQ2hyaXMgV2lsc29uIHdy b3RlOgo+IFJlaW50cm9kdWNlIGEgbG9jayBhcm91bmQgdGlsaW5nIHZzIGZyYW1lYnVmZmVyIGNy ZWF0aW9uIHRvIHByZXZlbnQKPiBtb2RpZmljYXRpb24gb2YgdGhlIG9iai0+dGlsaW5nX2FuZF9z dHJpZGUgd2hpbHN0IHRoZSBmcmFtZWJ1ZmZlciBpcwo+IGJlaW5nIGNyZWF0ZWQuIFJhdGhlciB0 aGFuIHVzZSBzdHJ1Y3RfbXV0ZXggb25jZSBhZ2FpbiwgdXNlIHRoZQo+IHBlci1vYmplY3QgbG9j ayAtIHRoaXMgd2lsbCBhbHNvIGJlIHJlcXVpcmVkIGluIGZ1dHVyZSB0byBwcmV2ZW50Cj4gY2hh bmdpbmcgdGhlIHRpbGluZyB3aGlsc3Qgc3VibWl0dGluZyByZW5kZXJpbmcuCj4gCj4gRml4ZXM6 IDI0ZGJmNTFhNTUxNyAoImRybS9pOTE1OiBzdHJ1Y3RfbXV0ZXggaXMgbm90IHJlcXVpcmVkIGZv ciBhbGxvY2F0aW5nIHRoZSBmcmFtZWJ1ZmZlciIpCj4gU2lnbmVkLW9mZi1ieTogQ2hyaXMgV2ls c29uIDxjaHJpc0BjaHJpcy13aWxzb24uY28udWs+Cj4gQ2M6IFZpbGxlIFN5cmrDpGzDpCA8dmls bGUuc3lyamFsYUBsaW51eC5pbnRlbC5jb20+Cj4gLS0tCj4gIGRyaXZlcnMvZ3B1L2RybS9pOTE1 L2k5MTVfZ2VtX29iamVjdC5oICAgfCAxOCArKysrKysrKysrKysrKysrKy0KPiAgZHJpdmVycy9n cHUvZHJtL2k5MTUvaTkxNV9nZW1fc2hyaW5rZXIuYyB8ICAyICstCj4gIGRyaXZlcnMvZ3B1L2Ry bS9pOTE1L2k5MTVfZ2VtX3RpbGluZy5jICAgfCAgOSArKysrKysrKy0KPiAgZHJpdmVycy9ncHUv ZHJtL2k5MTUvaW50ZWxfZGlzcGxheS5jICAgICB8IDI1ICsrKysrKysrKysrKysrKystLS0tLS0t LS0KPiAgNCBmaWxlcyBjaGFuZ2VkLCA0MiBpbnNlcnRpb25zKCspLCAxMiBkZWxldGlvbnMoLSkK PiAKPiBkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9nZW1fb2JqZWN0Lmgg Yi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2dlbV9vYmplY3QuaAo+IGluZGV4IGFkMWJjMGIx YTBjMi4uOGMwMmM4ZWMyYTNiIDEwMDY0NAo+IC0tLSBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5 MTVfZ2VtX29iamVjdC5oCj4gKysrIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9nZW1fb2Jq ZWN0LmgKPiBAQCAtMTY5LDcgKzE2OSw3IEBAIHN0cnVjdCBkcm1faTkxNV9nZW1fb2JqZWN0IHsK PiAgCXN0cnVjdCByZXNlcnZhdGlvbl9vYmplY3QgKnJlc3Y7Cj4gIAo+ICAJLyoqIFJlZmVyZW5j ZXMgZnJvbSBmcmFtZWJ1ZmZlcnMsIGxvY2tzIG91dCB0aWxpbmcgY2hhbmdlcy4gKi8KPiAtCWF0 b21pY190IGZyYW1lYnVmZmVyX3JlZmVyZW5jZXM7Cj4gKwl1bnNpZ25lZCBpbnQgZnJhbWVidWZm ZXJfcmVmZXJlbmNlczsKPiAgCj4gIAkvKiogUmVjb3JkIG9mIGFkZHJlc3MgYml0IDE3IG9mIGVh Y2ggcGFnZSBhdCBsYXN0IHVuYmluZC4gKi8KPiAgCXVuc2lnbmVkIGxvbmcgKmJpdF8xNzsKPiBA QCAtMjYzLDYgKzI2MywxNiBAQCBleHRlcm4gdm9pZCBkcm1fZ2VtX29iamVjdF91bnJlZmVyZW5j ZShzdHJ1Y3QgZHJtX2dlbV9vYmplY3QgKik7Cj4gIF9fZGVwcmVjYXRlZAo+ICBleHRlcm4gdm9p ZCBkcm1fZ2VtX29iamVjdF91bnJlZmVyZW5jZV91bmxvY2tlZChzdHJ1Y3QgZHJtX2dlbV9vYmpl Y3QgKik7Cj4gIAo+ICtzdGF0aWMgaW5saW5lIHZvaWQgaTkxNV9nZW1fb2JqZWN0X2xvY2soc3Ry dWN0IGRybV9pOTE1X2dlbV9vYmplY3QgKm9iaikKPiArewo+ICsJcmVzZXJ2YXRpb25fb2JqZWN0 X2xvY2sob2JqLT5yZXN2LCBOVUxMKTsKPiArfQo+ICsKPiArc3RhdGljIGlubGluZSB2b2lkIGk5 MTVfZ2VtX29iamVjdF91bmxvY2soc3RydWN0IGRybV9pOTE1X2dlbV9vYmplY3QgKm9iaikKPiAr ewo+ICsJcmVzZXJ2YXRpb25fb2JqZWN0X3VubG9jayhvYmotPnJlc3YpOwo+ICt9Cj4gKwo+ICBz dGF0aWMgaW5saW5lIGJvb2wKPiAgaTkxNV9nZW1fb2JqZWN0X2hhc19zdHJ1Y3RfcGFnZShjb25z dCBzdHJ1Y3QgZHJtX2k5MTVfZ2VtX29iamVjdCAqb2JqKQo+ICB7Cj4gQEAgLTMwMyw2ICszMTMs MTIgQEAgaTkxNV9nZW1fb2JqZWN0X2NsZWFyX2FjdGl2ZV9yZWZlcmVuY2Uoc3RydWN0IGRybV9p OTE1X2dlbV9vYmplY3QgKm9iaikKPiAgCj4gIHZvaWQgX19pOTE1X2dlbV9vYmplY3RfcmVsZWFz ZV91bmxlc3NfYWN0aXZlKHN0cnVjdCBkcm1faTkxNV9nZW1fb2JqZWN0ICpvYmopOwo+ICAKPiAr c3RhdGljIGlubGluZSBib29sCj4gK2k5MTVfZ2VtX29iamVjdF9pc19mcmFtZWJ1ZmZlcihjb25z dCBzdHJ1Y3QgZHJtX2k5MTVfZ2VtX29iamVjdCAqb2JqKQo+ICt7Cj4gKwlyZXR1cm4gUkVBRF9P TkNFKG9iai0+ZnJhbWVidWZmZXJfcmVmZXJlbmNlcyk7Cj4gK30KPiArCj4gIHN0YXRpYyBpbmxp bmUgdW5zaWduZWQgaW50Cj4gIGk5MTVfZ2VtX29iamVjdF9nZXRfdGlsaW5nKHN0cnVjdCBkcm1f aTkxNV9nZW1fb2JqZWN0ICpvYmopCj4gIHsKPiBkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJt L2k5MTUvaTkxNV9nZW1fc2hyaW5rZXIuYyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZ2Vt X3Nocmlua2VyLmMKPiBpbmRleCA3ZTNiYjQ4ZTA0M2UuLjYzMDY5NzAwMWIzOCAxMDA2NDQKPiAt LS0gYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2dlbV9zaHJpbmtlci5jCj4gKysrIGIvZHJp dmVycy9ncHUvZHJtL2k5MTUvaTkxNV9nZW1fc2hyaW5rZXIuYwo+IEBAIC0yMTAsNyArMjEwLDcg QEAgaTkxNV9nZW1fc2hyaW5rKHN0cnVjdCBkcm1faTkxNV9wcml2YXRlICpkZXZfcHJpdiwKPiAg Cj4gIAkJCWlmICghKGZsYWdzICYgSTkxNV9TSFJJTktfQUNUSVZFKSAmJgo+ICAJCQkgICAgKGk5 MTVfZ2VtX29iamVjdF9pc19hY3RpdmUob2JqKSB8fAo+IC0JCQkgICAgIGF0b21pY19yZWFkKCZv YmotPmZyYW1lYnVmZmVyX3JlZmVyZW5jZXMpKSkKPiArCQkJICAgICBpOTE1X2dlbV9vYmplY3Rf aXNfZnJhbWVidWZmZXIob2JqKSkpCj4gIAkJCQljb250aW51ZTsKPiAgCj4gIAkJCWlmICghY2Fu X3JlbGVhc2VfcGFnZXMob2JqKSkKPiBkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2k5MTUv aTkxNV9nZW1fdGlsaW5nLmMgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2dlbV90aWxpbmcu Ywo+IGluZGV4IGMxZDY2OWUzMmY0MS4uYWQ1ZTA1ZjZiODM2IDEwMDY0NAo+IC0tLSBhL2RyaXZl cnMvZ3B1L2RybS9pOTE1L2k5MTVfZ2VtX3RpbGluZy5jCj4gKysrIGIvZHJpdmVycy9ncHUvZHJt L2k5MTUvaTkxNV9nZW1fdGlsaW5nLmMKPiBAQCAtMjM4LDcgKzIzOCw3IEBAIGk5MTVfZ2VtX29i amVjdF9zZXRfdGlsaW5nKHN0cnVjdCBkcm1faTkxNV9nZW1fb2JqZWN0ICpvYmosCj4gIAlpZiAo KHRpbGluZyB8IHN0cmlkZSkgPT0gb2JqLT50aWxpbmdfYW5kX3N0cmlkZSkKPiAgCQlyZXR1cm4g MDsKPiAgCj4gLQlpZiAoYXRvbWljX3JlYWQoJm9iai0+ZnJhbWVidWZmZXJfcmVmZXJlbmNlcykp Cj4gKwlpZiAoaTkxNV9nZW1fb2JqZWN0X2lzX2ZyYW1lYnVmZmVyKG9iaikpCj4gIAkJcmV0dXJu IC1FQlVTWTsKPiAgCj4gIAkvKiBXZSBuZWVkIHRvIHJlYmluZCB0aGUgb2JqZWN0IGlmIGl0cyBj dXJyZW50IGFsbG9jYXRpb24KPiBAQCAtMjU4LDYgKzI1OCwxMiBAQCBpOTE1X2dlbV9vYmplY3Rf c2V0X3RpbGluZyhzdHJ1Y3QgZHJtX2k5MTVfZ2VtX29iamVjdCAqb2JqLAo+ICAJaWYgKGVycikK PiAgCQlyZXR1cm4gZXJyOwo+ICAKPiArCWk5MTVfZ2VtX29iamVjdF9sb2NrKG9iaik7Cj4gKwlp ZiAoaTkxNV9nZW1fb2JqZWN0X2lzX2ZyYW1lYnVmZmVyKG9iaikpIHsKPiArCQlpOTE1X2dlbV9v YmplY3RfdW5sb2NrKG9iaik7Cj4gKwkJcmV0dXJuIC1FQlVTWTsKPiArCX0KPiArCj4gIAkvKiBJ ZiB0aGUgbWVtb3J5IGhhcyB1bmtub3duIChpLmUuIHZhcnlpbmcpIHN3aXp6bGluZywgd2UgcGlu IHRoZQo+ICAJICogcGFnZXMgdG8gcHJldmVudCB0aGVtIGJlaW5nIHN3YXBwZWQgb3V0IGFuZCBj YXVzaW5nIGNvcnJ1cHRpb24KPiAgCSAqIGR1ZSB0byB0aGUgY2hhbmdlIGluIHN3aXp6bGluZy4K PiBAQCAtMjk0LDYgKzMwMCw3IEBAIGk5MTVfZ2VtX29iamVjdF9zZXRfdGlsaW5nKHN0cnVjdCBk cm1faTkxNV9nZW1fb2JqZWN0ICpvYmosCj4gIAl9Cj4gIAo+ICAJb2JqLT50aWxpbmdfYW5kX3N0 cmlkZSA9IHRpbGluZyB8IHN0cmlkZTsKPiArCWk5MTVfZ2VtX29iamVjdF91bmxvY2sob2JqKTsK PiAgCj4gIAkvKiBGb3JjZSB0aGUgZmVuY2UgdG8gYmUgcmVhY3F1aXJlZCBmb3IgR1RUIGFjY2Vz cyAqLwo+ICAJaTkxNV9nZW1fcmVsZWFzZV9tbWFwKG9iaik7Cj4gZGlmZiAtLWdpdCBhL2RyaXZl cnMvZ3B1L2RybS9pOTE1L2ludGVsX2Rpc3BsYXkuYyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2lu dGVsX2Rpc3BsYXkuYwo+IGluZGV4IDc3OTM2ZGRkODYwYS4uNjJhMWU2MjhlMzk5IDEwMDY0NAo+ IC0tLSBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2Rpc3BsYXkuYwo+ICsrKyBiL2RyaXZl cnMvZ3B1L2RybS9pOTE1L2ludGVsX2Rpc3BsYXkuYwo+IEBAIC0xNDI1NSw3ICsxNDI1NSwxMCBA QCBzdGF0aWMgdm9pZCBpbnRlbF91c2VyX2ZyYW1lYnVmZmVyX2Rlc3Ryb3koc3RydWN0IGRybV9m cmFtZWJ1ZmZlciAqZmIpCj4gIAo+ICAJZHJtX2ZyYW1lYnVmZmVyX2NsZWFudXAoZmIpOwo+ICAK PiAtCVdBUk5fT04oYXRvbWljX2RlY19yZXR1cm4oJmludGVsX2ZiLT5vYmotPmZyYW1lYnVmZmVy X3JlZmVyZW5jZXMpIDwgMCk7Cj4gKwlpOTE1X2dlbV9vYmplY3RfbG9jayhpbnRlbF9mYi0+b2Jq KTsKPiArCVdBUk5fT04oIWludGVsX2ZiLT5vYmotPmZyYW1lYnVmZmVyX3JlZmVyZW5jZXMtLSk7 Cj4gKwlpOTE1X2dlbV9vYmplY3RfdW5sb2NrKGludGVsX2ZiLT5vYmopOwo+ICsKPiAgCWk5MTVf Z2VtX29iamVjdF9wdXQoaW50ZWxfZmItPm9iaik7Cj4gIAo+ICAJa2ZyZWUoaW50ZWxfZmIpOwo+ IEBAIC0xNDMzMiwxMiArMTQzMzUsMTYgQEAgc3RhdGljIGludCBpbnRlbF9mcmFtZWJ1ZmZlcl9p bml0KHN0cnVjdCBpbnRlbF9mcmFtZWJ1ZmZlciAqaW50ZWxfZmIsCj4gIAkJCQkgIHN0cnVjdCBk cm1fbW9kZV9mYl9jbWQyICptb2RlX2NtZCkKPiAgewo+ICAJc3RydWN0IGRybV9pOTE1X3ByaXZh dGUgKmRldl9wcml2ID0gdG9faTkxNShvYmotPmJhc2UuZGV2KTsKPiAtCXVuc2lnbmVkIGludCB0 aWxpbmcgPSBpOTE1X2dlbV9vYmplY3RfZ2V0X3RpbGluZyhvYmopOwo+IC0JdTMyIHBpdGNoX2xp bWl0LCBzdHJpZGVfYWxpZ25tZW50Owo+ICAJc3RydWN0IGRybV9mb3JtYXRfbmFtZV9idWYgZm9y bWF0X25hbWU7Cj4gKwl1MzIgcGl0Y2hfbGltaXQsIHN0cmlkZV9hbGlnbm1lbnQ7Cj4gKwl1bnNp Z25lZCBpbnQgdGlsaW5nLCBzdHJpZGU7Cj4gIAlpbnQgcmV0ID0gLUVJTlZBTDsKPiAgCj4gLQlh dG9taWNfaW5jKCZvYmotPmZyYW1lYnVmZmVyX3JlZmVyZW5jZXMpOwo+ICsJaTkxNV9nZW1fb2Jq ZWN0X2xvY2sob2JqKTsKPiArCW9iai0+ZnJhbWVidWZmZXJfcmVmZXJlbmNlcysrOwo+ICsJdGls aW5nID0gaTkxNV9nZW1fb2JqZWN0X2dldF90aWxpbmcob2JqKTsKPiArCXN0cmlkZSA9IGk5MTVf Z2VtX29iamVjdF9nZXRfc3RyaWRlKG9iaik7Cj4gKwlpOTE1X2dlbV9vYmplY3RfdW5sb2NrKG9i aik7CgpJIGNhbid0IHNheSBJJ20gcmVhbGx5IHVwIHRvIGRhdGUgb24gdGhlIG9iamVjdCBsb2Nr aW5nIHN0dWZmLCBidXQKZnJvbSB0aGUgZGlzcGxheSBQT1YgdGhpcyBsb29rcyBhbGwgcmlnaHQg dG8gbWUuIFNvIGdvb2QgZW5vdWdoIGZvciBtZQo6KQoKUmV2aWV3ZWQtYnk6IFZpbGxlIFN5cmrD pGzDpCA8dmlsbGUuc3lyamFsYUBsaW51eC5pbnRlbC5jb20+Cgo+ICAKPiAgCWlmIChtb2RlX2Nt ZC0+ZmxhZ3MgJiBEUk1fTU9ERV9GQl9NT0RJRklFUlMpIHsKPiAgCQkvKgo+IEBAIC0xNDQwOSwx MSArMTQ0MTYsOSBAQCBzdGF0aWMgaW50IGludGVsX2ZyYW1lYnVmZmVyX2luaXQoc3RydWN0IGlu dGVsX2ZyYW1lYnVmZmVyICppbnRlbF9mYiwKPiAgCSAqIElmIHRoZXJlJ3MgYSBmZW5jZSwgZW5m b3JjZSB0aGF0Cj4gIAkgKiB0aGUgZmIgcGl0Y2ggYW5kIGZlbmNlIHN0cmlkZSBtYXRjaC4KPiAg CSAqLwo+IC0JaWYgKHRpbGluZyAhPSBJOTE1X1RJTElOR19OT05FICYmCj4gLQkgICAgbW9kZV9j bWQtPnBpdGNoZXNbMF0gIT0gaTkxNV9nZW1fb2JqZWN0X2dldF9zdHJpZGUob2JqKSkgewo+ICsJ aWYgKHRpbGluZyAhPSBJOTE1X1RJTElOR19OT05FICYmIG1vZGVfY21kLT5waXRjaGVzWzBdICE9 ICBzdHJpZGUpIHsKPiAgCQlEUk1fREVCVUcoInBpdGNoICglZCkgbXVzdCBtYXRjaCB0aWxpbmcg c3RyaWRlICglZClcbiIsCj4gLQkJCSAgbW9kZV9jbWQtPnBpdGNoZXNbMF0sCj4gLQkJCSAgaTkx NV9nZW1fb2JqZWN0X2dldF9zdHJpZGUob2JqKSk7Cj4gKwkJCSAgbW9kZV9jbWQtPnBpdGNoZXNb MF0sIHN0cmlkZSk7Cj4gIAkJZ290byBlcnI7Cj4gIAl9Cj4gIAo+IEBAIC0xNDQ5NCw3ICsxNDQ5 OSw5IEBAIHN0YXRpYyBpbnQgaW50ZWxfZnJhbWVidWZmZXJfaW5pdChzdHJ1Y3QgaW50ZWxfZnJh bWVidWZmZXIgKmludGVsX2ZiLAo+ICAJcmV0dXJuIDA7Cj4gIAo+ICBlcnI6Cj4gLQlhdG9taWNf ZGVjKCZvYmotPmZyYW1lYnVmZmVyX3JlZmVyZW5jZXMpOwo+ICsJaTkxNV9nZW1fb2JqZWN0X2xv Y2sob2JqKTsKPiArCW9iai0+ZnJhbWVidWZmZXJfcmVmZXJlbmNlcy0tOwo+ICsJaTkxNV9nZW1f b2JqZWN0X3VubG9jayhvYmopOwo+ICAJcmV0dXJuIHJldDsKPiAgfQo+ICAKPiAtLSAKPiAyLjEx LjAKCi0tIApWaWxsZSBTeXJqw6Rsw6QKSW50ZWwgT1RDCl9fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fCkludGVsLWdmeCBtYWlsaW5nIGxpc3QKSW50ZWwtZ2Z4 QGxpc3RzLmZyZWVkZXNrdG9wLm9yZwpodHRwczovL2xpc3RzLmZyZWVkZXNrdG9wLm9yZy9tYWls bWFuL2xpc3RpbmZvL2ludGVsLWdmeAo=