From mboxrd@z Thu Jan 1 00:00:00 1970 From: Sean Paul Subject: Re: [PATCH] drm/vgem: fix cache synchronization on arm/arm64 Date: Wed, 31 Jul 2019 15:23:31 -0400 Message-ID: <20190731192331.GT104440@art_vandelay> References: <20190717211542.30482-1-robdclark@gmail.com> <20190719092153.GJ15868@phenom.ffwll.local> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mail-yw1-xc42.google.com (mail-yw1-xc42.google.com [IPv6:2607:f8b0:4864:20::c42]) by gabe.freedesktop.org (Postfix) with ESMTPS id 4EDB06E2EF for ; Wed, 31 Jul 2019 19:23:33 +0000 (UTC) Received: by mail-yw1-xc42.google.com with SMTP id m16so25352244ywh.12 for ; Wed, 31 Jul 2019 12:23:33 -0700 (PDT) Content-Disposition: inline In-Reply-To: <20190719092153.GJ15868@phenom.ffwll.local> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dri-devel-bounces@lists.freedesktop.org Sender: "dri-devel" To: Rob Clark , dri-devel@lists.freedesktop.org, Rob Clark , David Airlie , Emil Velikov , Chris Wilson , Eric Anholt , Thomas Zimmermann , Imre Deak , Deepak Sharma , Eric Biggers , linux-kernel@vger.kernel.org List-Id: dri-devel@lists.freedesktop.org T24gRnJpLCBKdWwgMTksIDIwMTkgYXQgMTE6MjE6NTNBTSArMDIwMCwgRGFuaWVsIFZldHRlciB3 cm90ZToKPiBPbiBXZWQsIEp1bCAxNywgMjAxOSBhdCAwMjoxNTozN1BNIC0wNzAwLCBSb2IgQ2xh cmsgd3JvdGU6Cj4gPiBGcm9tOiBSb2IgQ2xhcmsgPHJvYmRjbGFya0BjaHJvbWl1bS5vcmc+Cj4g PiAKPiA+IGRybV9jZmx1c2hfcGFnZXMoKSBpcyBuby1vcCBvbiBhcm0vYXJtNjQuICBCdXQgaW5z dGVhZCB3ZSBjYW4gdXNlCj4gPiBkbWFfc3luYyBBUEkuCj4gPiAKPiA+IEZpeGVzIGZhaWx1cmVz IHcvIHZnZW1fdGVzdC4KPiA+IAo+ID4gU2lnbmVkLW9mZi1ieTogUm9iIENsYXJrIDxyb2JkY2xh cmtAY2hyb21pdW0ub3JnPgo+ID4gLS0tCj4gPiBBbiBhbHRlcm5hdGl2ZSBhcHByb2FjaCB0byB0 aGUgc2VyaWVzWzFdIEkgc2VudCB5ZXN0ZXJkYXkKPiA+IAo+ID4gT24gdGhlIHBsdXMgc2lkZSwg aXQga2VlcHMgdGhlIFdDIGJ1ZmZlcnMgYW5kIGF2b2lkcyBhbnkgZHJtIGNvcmUKPiA+IGNoYW5n ZXMuICBPbiB0aGUgbWludXMgc2lkZSwgSSBkb24ndCB0aGluayBpdCB3aWxsIHdvcmsgKGF0IGxl YXN0Cj4gPiBvbiBhcm02NCkgcHJpb3IgdG8gdjUuMFsyXSwgc28gdGhlIGZpeCBjYW4ndCBiZSBi YWNrcG9ydGVkIHZlcnkKPiA+IGZhci4KPiAKPiBZZWFoIHNlZW1zIGEgbG90IG1vcmUgcmVhc29u YWJsZS4KPiAKPiBBY2tlZC1ieTogRGFuaWVsIFZldHRlciA8ZGFuaWVsLnZldHRlckBmZndsbC5j aD4KCkFwcGxpZWQgdG8gZHJtLW1pc2MtZml4ZXMsIHRoYW5rcyEKClNlYW4KCj4gPiAKPiA+IFsx XSBodHRwczovL3BhdGNod29yay5mcmVlZGVza3RvcC5vcmcvc2VyaWVzLzYzNzcxLwo+ID4gWzJd IGRlcGVuZHMgb24gMzU2ZGE2ZDBjZGUzMzIzMjM2OTc3ZmNlNTRjMWY5NjEyYTc0MjAzNgo+ID4g Cj4gPiAgZHJpdmVycy9ncHUvZHJtL3ZnZW0vdmdlbV9kcnYuYyB8IDEzMCArKysrKysrKysrKysr KysrKysrKy0tLS0tLS0tLS0tLQo+ID4gIDEgZmlsZSBjaGFuZ2VkLCA4MyBpbnNlcnRpb25zKCsp LCA0NyBkZWxldGlvbnMoLSkKPiA+IAo+ID4gZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS92 Z2VtL3ZnZW1fZHJ2LmMgYi9kcml2ZXJzL2dwdS9kcm0vdmdlbS92Z2VtX2Rydi5jCj4gPiBpbmRl eCA3NmQ5NWI1ZTI4OWMuLjZjOWI1ZTIwYjNkNCAxMDA2NDQKPiA+IC0tLSBhL2RyaXZlcnMvZ3B1 L2RybS92Z2VtL3ZnZW1fZHJ2LmMKPiA+ICsrKyBiL2RyaXZlcnMvZ3B1L2RybS92Z2VtL3ZnZW1f ZHJ2LmMKPiA+IEBAIC00NywxMCArNDcsMTYgQEAgc3RhdGljIHN0cnVjdCB2Z2VtX2RldmljZSB7 Cj4gPiAgCXN0cnVjdCBwbGF0Zm9ybV9kZXZpY2UgKnBsYXRmb3JtOwo+ID4gIH0gKnZnZW1fZGV2 aWNlOwo+ID4gIAo+ID4gK3N0YXRpYyB2b2lkIHN5bmNfYW5kX3VucGluKHN0cnVjdCBkcm1fdmdl bV9nZW1fb2JqZWN0ICpibyk7Cj4gPiArc3RhdGljIHN0cnVjdCBwYWdlICoqcGluX2FuZF9zeW5j KHN0cnVjdCBkcm1fdmdlbV9nZW1fb2JqZWN0ICpibyk7Cj4gPiArCj4gPiAgc3RhdGljIHZvaWQg dmdlbV9nZW1fZnJlZV9vYmplY3Qoc3RydWN0IGRybV9nZW1fb2JqZWN0ICpvYmopCj4gPiAgewo+ ID4gIAlzdHJ1Y3QgZHJtX3ZnZW1fZ2VtX29iamVjdCAqdmdlbV9vYmogPSB0b192Z2VtX2JvKG9i aik7Cj4gPiAgCj4gPiArCWlmICghb2JqLT5pbXBvcnRfYXR0YWNoKQo+ID4gKwkJc3luY19hbmRf dW5waW4odmdlbV9vYmopOwo+ID4gKwo+ID4gIAlrdmZyZWUodmdlbV9vYmotPnBhZ2VzKTsKPiA+ ICAJbXV0ZXhfZGVzdHJveSgmdmdlbV9vYmotPnBhZ2VzX2xvY2spOwo+ID4gIAo+ID4gQEAgLTc4 LDQwICs4NCwxNSBAQCBzdGF0aWMgdm1fZmF1bHRfdCB2Z2VtX2dlbV9mYXVsdChzdHJ1Y3Qgdm1f ZmF1bHQgKnZtZikKPiA+ICAJCXJldHVybiBWTV9GQVVMVF9TSUdCVVM7Cj4gPiAgCj4gPiAgCW11 dGV4X2xvY2soJm9iai0+cGFnZXNfbG9jayk7Cj4gPiArCWlmICghb2JqLT5wYWdlcykKPiA+ICsJ CXBpbl9hbmRfc3luYyhvYmopOwo+ID4gIAlpZiAob2JqLT5wYWdlcykgewo+ID4gIAkJZ2V0X3Bh Z2Uob2JqLT5wYWdlc1twYWdlX29mZnNldF0pOwo+ID4gIAkJdm1mLT5wYWdlID0gb2JqLT5wYWdl c1twYWdlX29mZnNldF07Cj4gPiAgCQlyZXQgPSAwOwo+ID4gIAl9Cj4gPiAgCW11dGV4X3VubG9j aygmb2JqLT5wYWdlc19sb2NrKTsKPiA+IC0JaWYgKHJldCkgewo+ID4gLQkJc3RydWN0IHBhZ2Ug KnBhZ2U7Cj4gPiAtCj4gPiAtCQlwYWdlID0gc2htZW1fcmVhZF9tYXBwaW5nX3BhZ2UoCj4gPiAt CQkJCQlmaWxlX2lub2RlKG9iai0+YmFzZS5maWxwKS0+aV9tYXBwaW5nLAo+ID4gLQkJCQkJcGFn ZV9vZmZzZXQpOwo+ID4gLQkJaWYgKCFJU19FUlIocGFnZSkpIHsKPiA+IC0JCQl2bWYtPnBhZ2Ug PSBwYWdlOwo+ID4gLQkJCXJldCA9IDA7Cj4gPiAtCQl9IGVsc2Ugc3dpdGNoIChQVFJfRVJSKHBh Z2UpKSB7Cj4gPiAtCQkJY2FzZSAtRU5PU1BDOgo+ID4gLQkJCWNhc2UgLUVOT01FTToKPiA+IC0J CQkJcmV0ID0gVk1fRkFVTFRfT09NOwo+ID4gLQkJCQlicmVhazsKPiA+IC0JCQljYXNlIC1FQlVT WToKPiA+IC0JCQkJcmV0ID0gVk1fRkFVTFRfUkVUUlk7Cj4gPiAtCQkJCWJyZWFrOwo+ID4gLQkJ CWNhc2UgLUVGQVVMVDoKPiA+IC0JCQljYXNlIC1FSU5WQUw6Cj4gPiAtCQkJCXJldCA9IFZNX0ZB VUxUX1NJR0JVUzsKPiA+IC0JCQkJYnJlYWs7Cj4gPiAtCQkJZGVmYXVsdDoKPiA+IC0JCQkJV0FS Tl9PTihQVFJfRVJSKHBhZ2UpKTsKPiA+IC0JCQkJcmV0ID0gVk1fRkFVTFRfU0lHQlVTOwo+ID4g LQkJCQlicmVhazsKPiA+IC0JCX0KPiA+ICAKPiA+IC0JfQo+ID4gIAlyZXR1cm4gcmV0Owo+ID4g IH0KPiA+ICAKPiA+IEBAIC0yNzcsMzIgKzI1OCw5MyBAQCBzdGF0aWMgY29uc3Qgc3RydWN0IGZp bGVfb3BlcmF0aW9ucyB2Z2VtX2RyaXZlcl9mb3BzID0gewo+ID4gIAkucmVsZWFzZQk9IGRybV9y ZWxlYXNlLAo+ID4gIH07Cj4gPiAgCj4gPiAtc3RhdGljIHN0cnVjdCBwYWdlICoqdmdlbV9waW5f cGFnZXMoc3RydWN0IGRybV92Z2VtX2dlbV9vYmplY3QgKmJvKQo+ID4gKy8qIENhbGxlZCB1bmRl ciBwYWdlc19sb2NrLCBleGNlcHQgaW4gZnJlZSBwYXRoICh3aGVyZSBpdCBjYW4ndCByYWNlKTog Ki8KPiA+ICtzdGF0aWMgdm9pZCBzeW5jX2FuZF91bnBpbihzdHJ1Y3QgZHJtX3ZnZW1fZ2VtX29i amVjdCAqYm8pCj4gPiAgewo+ID4gLQltdXRleF9sb2NrKCZiby0+cGFnZXNfbG9jayk7Cj4gPiAt CWlmIChiby0+cGFnZXNfcGluX2NvdW50KysgPT0gMCkgewo+ID4gLQkJc3RydWN0IHBhZ2UgKipw YWdlczsKPiA+ICsJc3RydWN0IGRybV9kZXZpY2UgKmRldiA9IGJvLT5iYXNlLmRldjsKPiA+ICsK PiA+ICsJaWYgKGJvLT50YWJsZSkgewo+ID4gKwkJZG1hX3N5bmNfc2dfZm9yX2NwdShkZXYtPmRl diwgYm8tPnRhYmxlLT5zZ2wsCj4gPiArCQkJCWJvLT50YWJsZS0+bmVudHMsIERNQV9CSURJUkVD VElPTkFMKTsKPiA+ICsJCXNnX2ZyZWVfdGFibGUoYm8tPnRhYmxlKTsKPiA+ICsJCWtmcmVlKGJv LT50YWJsZSk7Cj4gPiArCQliby0+dGFibGUgPSBOVUxMOwo+ID4gKwl9Cj4gPiArCj4gPiArCWlm IChiby0+cGFnZXMpIHsKPiA+ICsJCWRybV9nZW1fcHV0X3BhZ2VzKCZiby0+YmFzZSwgYm8tPnBh Z2VzLCB0cnVlLCB0cnVlKTsKPiA+ICsJCWJvLT5wYWdlcyA9IE5VTEw7Cj4gPiArCX0KPiA+ICt9 Cj4gPiArCj4gPiArc3RhdGljIHN0cnVjdCBwYWdlICoqcGluX2FuZF9zeW5jKHN0cnVjdCBkcm1f dmdlbV9nZW1fb2JqZWN0ICpibykKPiA+ICt7Cj4gPiArCXN0cnVjdCBkcm1fZGV2aWNlICpkZXYg PSBiby0+YmFzZS5kZXY7Cj4gPiArCWludCBucGFnZXMgPSBiby0+YmFzZS5zaXplID4+IFBBR0Vf U0hJRlQ7Cj4gPiArCXN0cnVjdCBwYWdlICoqcGFnZXM7Cj4gPiArCXN0cnVjdCBzZ190YWJsZSAq c2d0Owo+ID4gKwo+ID4gKwlXQVJOX09OKCFtdXRleF9pc19sb2NrZWQoJmJvLT5wYWdlc19sb2Nr KSk7Cj4gPiArCj4gPiArCXBhZ2VzID0gZHJtX2dlbV9nZXRfcGFnZXMoJmJvLT5iYXNlKTsKPiA+ ICsJaWYgKElTX0VSUihwYWdlcykpIHsKPiA+ICsJCWJvLT5wYWdlc19waW5fY291bnQtLTsKPiA+ ICsJCW11dGV4X3VubG9jaygmYm8tPnBhZ2VzX2xvY2spOwo+ID4gKwkJcmV0dXJuIHBhZ2VzOwo+ ID4gKwl9Cj4gPiAgCj4gPiAtCQlwYWdlcyA9IGRybV9nZW1fZ2V0X3BhZ2VzKCZiby0+YmFzZSk7 Cj4gPiAtCQlpZiAoSVNfRVJSKHBhZ2VzKSkgewo+ID4gLQkJCWJvLT5wYWdlc19waW5fY291bnQt LTsKPiA+IC0JCQltdXRleF91bmxvY2soJmJvLT5wYWdlc19sb2NrKTsKPiA+IC0JCQlyZXR1cm4g cGFnZXM7Cj4gPiAtCQl9Cj4gPiArCXNndCA9IGRybV9wcmltZV9wYWdlc190b19zZyhwYWdlcywg bnBhZ2VzKTsKPiA+ICsJaWYgKElTX0VSUihzZ3QpKSB7Cj4gPiArCQlkZXZfZXJyKGRldi0+ZGV2 LAo+ID4gKwkJCSJmYWlsZWQgdG8gYWxsb2NhdGUgc2d0OiAlbGRcbiIsCj4gPiArCQkJUFRSX0VS Uihiby0+dGFibGUpKTsKPiA+ICsJCWRybV9nZW1fcHV0X3BhZ2VzKCZiby0+YmFzZSwgcGFnZXMs IGZhbHNlLCBmYWxzZSk7Cj4gPiArCQltdXRleF91bmxvY2soJmJvLT5wYWdlc19sb2NrKTsKPiA+ ICsJCXJldHVybiBFUlJfQ0FTVChiby0+dGFibGUpOwo+ID4gKwl9Cj4gPiArCj4gPiArCS8qCj4g PiArCSAqIEZsdXNoIHRoZSBvYmplY3QgZnJvbSB0aGUgQ1BVIGNhY2hlIHNvIHRoYXQgaW1wb3J0 ZXJzCj4gPiArCSAqIGNhbiByZWx5IG9uIGNvaGVyZW50IGluZGlyZWN0IGFjY2VzcyB2aWEgdGhl IGV4cG9ydGVkCj4gPiArCSAqIGRtYS1hZGRyZXNzLgo+ID4gKwkgKi8KPiA+ICsJZG1hX3N5bmNf c2dfZm9yX2RldmljZShkZXYtPmRldiwgc2d0LT5zZ2wsCj4gPiArCQkJc2d0LT5uZW50cywgRE1B X0JJRElSRUNUSU9OQUwpOwo+ID4gKwo+ID4gKwliby0+cGFnZXMgPSBwYWdlczsKPiA+ICsJYm8t PnRhYmxlID0gc2d0Owo+ID4gKwo+ID4gKwlyZXR1cm4gcGFnZXM7Cj4gPiArfQo+ID4gKwo+ID4g K3N0YXRpYyBzdHJ1Y3QgcGFnZSAqKnZnZW1fcGluX3BhZ2VzKHN0cnVjdCBkcm1fdmdlbV9nZW1f b2JqZWN0ICpibykKPiA+ICt7Cj4gPiArCXN0cnVjdCBwYWdlICoqcGFnZXM7Cj4gPiAgCj4gPiAt CQliby0+cGFnZXMgPSBwYWdlczsKPiA+ICsJbXV0ZXhfbG9jaygmYm8tPnBhZ2VzX2xvY2spOwo+ ID4gKwlpZiAoYm8tPnBhZ2VzX3Bpbl9jb3VudCsrID09IDAgJiYgIWJvLT5wYWdlcykgewo+ID4g KwkJcGFnZXMgPSBwaW5fYW5kX3N5bmMoYm8pOwo+ID4gKwl9IGVsc2Ugewo+ID4gKwkJV0FSTl9P TighYm8tPnBhZ2VzKTsKPiA+ICsJCXBhZ2VzID0gYm8tPnBhZ2VzOwo+ID4gIAl9Cj4gPiAgCW11 dGV4X3VubG9jaygmYm8tPnBhZ2VzX2xvY2spOwo+ID4gIAo+ID4gLQlyZXR1cm4gYm8tPnBhZ2Vz Owo+ID4gKwlyZXR1cm4gcGFnZXM7Cj4gPiAgfQo+ID4gIAo+ID4gIHN0YXRpYyB2b2lkIHZnZW1f dW5waW5fcGFnZXMoc3RydWN0IGRybV92Z2VtX2dlbV9vYmplY3QgKmJvKQo+ID4gIHsKPiA+ICsJ LyoKPiA+ICsJICogV2Ugc2hvdWxkbid0IGhpdCB0aGlzIGZvciBpbXBvcnRlZCBibydzLi4gaW4g dGhlIGltcG9ydAo+ID4gKwkgKiBjYXNlIHdlIGRvbid0IG93biB0aGUgc2NhdHRlci10YWJsZQo+ ID4gKwkgKi8KPiA+ICsJV0FSTl9PTihiby0+YmFzZS5pbXBvcnRfYXR0YWNoKTsKPiA+ICsKPiA+ ICAJbXV0ZXhfbG9jaygmYm8tPnBhZ2VzX2xvY2spOwo+ID4gIAlpZiAoLS1iby0+cGFnZXNfcGlu X2NvdW50ID09IDApIHsKPiA+IC0JCWRybV9nZW1fcHV0X3BhZ2VzKCZiby0+YmFzZSwgYm8tPnBh Z2VzLCB0cnVlLCB0cnVlKTsKPiA+IC0JCWJvLT5wYWdlcyA9IE5VTEw7Cj4gPiArCQlXQVJOX09O KCFiby0+dGFibGUpOwo+ID4gKwkJc3luY19hbmRfdW5waW4oYm8pOwo+ID4gIAl9Cj4gPiAgCW11 dGV4X3VubG9jaygmYm8tPnBhZ2VzX2xvY2spOwo+ID4gIH0KPiA+IEBAIC0zMTAsMTggKzM1Miwx MiBAQCBzdGF0aWMgdm9pZCB2Z2VtX3VucGluX3BhZ2VzKHN0cnVjdCBkcm1fdmdlbV9nZW1fb2Jq ZWN0ICpibykKPiA+ICBzdGF0aWMgaW50IHZnZW1fcHJpbWVfcGluKHN0cnVjdCBkcm1fZ2VtX29i amVjdCAqb2JqKQo+ID4gIHsKPiA+ICAJc3RydWN0IGRybV92Z2VtX2dlbV9vYmplY3QgKmJvID0g dG9fdmdlbV9ibyhvYmopOwo+ID4gLQlsb25nIG5fcGFnZXMgPSBvYmotPnNpemUgPj4gUEFHRV9T SElGVDsKPiA+ICAJc3RydWN0IHBhZ2UgKipwYWdlczsKPiA+ICAKPiA+ICAJcGFnZXMgPSB2Z2Vt X3Bpbl9wYWdlcyhibyk7Cj4gPiAgCWlmIChJU19FUlIocGFnZXMpKQo+ID4gIAkJcmV0dXJuIFBU Ul9FUlIocGFnZXMpOwo+ID4gIAo+ID4gLQkvKiBGbHVzaCB0aGUgb2JqZWN0IGZyb20gdGhlIENQ VSBjYWNoZSBzbyB0aGF0IGltcG9ydGVycyBjYW4gcmVseQo+ID4gLQkgKiBvbiBjb2hlcmVudCBp bmRpcmVjdCBhY2Nlc3MgdmlhIHRoZSBleHBvcnRlZCBkbWEtYWRkcmVzcy4KPiA+IC0JICovCj4g PiAtCWRybV9jbGZsdXNoX3BhZ2VzKHBhZ2VzLCBuX3BhZ2VzKTsKPiA+IC0KPiA+ICAJcmV0dXJu IDA7Cj4gPiAgfQo+ID4gIAo+ID4gLS0gCj4gPiAyLjIxLjAKPiA+IAo+IAo+IC0tIAo+IERhbmll bCBWZXR0ZXIKPiBTb2Z0d2FyZSBFbmdpbmVlciwgSW50ZWwgQ29ycG9yYXRpb24KPiBodHRwOi8v YmxvZy5mZndsbC5jaAo+IF9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fCj4gZHJpLWRldmVsIG1haWxpbmcgbGlzdAo+IGRyaS1kZXZlbEBsaXN0cy5mcmVlZGVz a3RvcC5vcmcKPiBodHRwczovL2xpc3RzLmZyZWVkZXNrdG9wLm9yZy9tYWlsbWFuL2xpc3RpbmZv L2RyaS1kZXZlbAoKLS0gClNlYW4gUGF1bCwgU29mdHdhcmUgRW5naW5lZXIsIEdvb2dsZSAvIENo cm9taXVtIE9TCl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f CmRyaS1kZXZlbCBtYWlsaW5nIGxpc3QKZHJpLWRldmVsQGxpc3RzLmZyZWVkZXNrdG9wLm9yZwpo dHRwczovL2xpc3RzLmZyZWVkZXNrdG9wLm9yZy9tYWlsbWFuL2xpc3RpbmZvL2RyaS1kZXZlbA==