From mboxrd@z Thu Jan 1 00:00:00 1970 From: =?UTF-8?Q?Nicolai_H=c3=a4hnle?= Subject: Re: [PATCH v2 05/11] locking/ww_mutex: Add waiters in stamp order Date: Fri, 16 Dec 2016 15:19:43 +0100 Message-ID: References: <1480601214-26583-1-git-send-email-nhaehnle@gmail.com> <1480601214-26583-6-git-send-email-nhaehnle@gmail.com> <20161206165544.GX3045@worktop.programming.kicks-ass.net> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8"; Format="flowed" Content-Transfer-Encoding: base64 Return-path: Received: from mail-wj0-x243.google.com (mail-wj0-x243.google.com [IPv6:2a00:1450:400c:c01::243]) by gabe.freedesktop.org (Postfix) with ESMTPS id 3063D6E03D for ; Fri, 16 Dec 2016 14:19:47 +0000 (UTC) Received: by mail-wj0-x243.google.com with SMTP id xy5so14800094wjc.1 for ; Fri, 16 Dec 2016 06:19:47 -0800 (PST) In-Reply-To: <20161206165544.GX3045@worktop.programming.kicks-ass.net> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dri-devel-bounces@lists.freedesktop.org Sender: "dri-devel" To: Peter Zijlstra Cc: Maarten Lankhorst , =?UTF-8?Q?Nicolai_H=c3=a4hnle?= , linux-kernel@vger.kernel.org, dri-devel@lists.freedesktop.org, Ingo Molnar List-Id: dri-devel@lists.freedesktop.org SGkgUGV0ZXIgYW5kIENocmlzLAoKKHRyeWluZyB0byBjb21iaW5lIHRoZSBoYW5kb2ZmIGRpc2N1 c3Npb24gaGVyZSkKCk9uIDA2LjEyLjIwMTYgMTc6NTUsIFBldGVyIFppamxzdHJhIHdyb3RlOgo+ IE9uIFRodSwgRGVjIDAxLCAyMDE2IGF0IDAzOjA2OjQ4UE0gKzAxMDAsIE5pY29sYWkgSMOkaG5s ZSB3cm90ZToKPj4gQEAgLTY5Myw4ICs3NDgsMTIgQEAgX19tdXRleF9sb2NrX2NvbW1vbihzdHJ1 Y3QgbXV0ZXggKmxvY2ssIGxvbmcgc3RhdGUsIHVuc2lnbmVkIGludCBzdWJjbGFzcywKPj4gIAkJ ICogbXV0ZXhfdW5sb2NrKCkgaGFuZGluZyB0aGUgbG9jayBvZmYgdG8gdXMsIGRvIGEgdHJ5bG9j awo+PiAgCQkgKiBiZWZvcmUgdGVzdGluZyB0aGUgZXJyb3IgY29uZGl0aW9ucyB0byBtYWtlIHN1 cmUgd2UgcGljayB1cAo+PiAgCQkgKiB0aGUgaGFuZG9mZi4KPj4gKwkJICoKPj4gKwkJICogRm9y IHcvdyBsb2Nrcywgd2UgYWx3YXlzIG5lZWQgdG8gZG8gdGhpcyBldmVuIGlmIHdlJ3JlIG5vdAo+ PiArCQkgKiBjdXJyZW50bHkgdGhlIGZpcnN0IHdhaXRlciwgYmVjYXVzZSB3ZSBtYXkgaGF2ZSBi ZWVuIHRoZQo+PiArCQkgKiBmaXJzdCB3YWl0ZXIgZHVyaW5nIHRoZSB1bmxvY2suCj4+ICAJCSAq Lwo+PiAtCQlpZiAoX19tdXRleF90cnlsb2NrKGxvY2ssIGZpcnN0KSkKPj4gKwkJaWYgKF9fbXV0 ZXhfdHJ5bG9jayhsb2NrLCB1c2Vfd3dfY3R4IHx8IGZpcnN0KSkKPj4gIAkJCWdvdG8gYWNxdWly ZWQ7Cj4KPiBTbyBJJ20gc29tZXdoYXQgdW5jb21mb3J0YWJsZSB3aXRoIHRoaXMuIFRoZSBwb2lu dCBpcyB0aGF0IHdpdGggdGhlCj4gLmhhbmRvZmYgbG9naWMgaXQgaXMgdmVyeSBlYXN5IHRvIGFj Y2lkZW50YWxseSBhbGxvdzoKPgo+IAltdXRleF9sb2NrKCZhKTsKPiAJbXV0ZXhfbG9jaygmYSk7 Cj4KPiBBbmQgSSdtIG5vdCBzdXJlIHRoaXMgZG9lc24ndCBtYWtlIHRoYXQgaGFwcGVuIGZvciB3 d19tdXRleGVzLiBXZSBnZXQgdG8KPiB0aGlzIF9fbXV0ZXhfdHJ5bG9jaygpIHdpdGhvdXQgZmly c3QgaGF2aW5nIGJsb2NrZWQuCgpPa2F5LCB0b29rIG1lIGEgd2hpbGUsIGJ1dCBJIHNlZSB0aGUg cHJvYmxlbS4gSWYgd2UgaGF2ZToKCgl3d19tdXRleF9sb2NrKCZhLCBOVUxMKTsKCXd3X211dGV4 X2xvY2soJmEsIGN0eCk7Cgp0aGVuIGl0J3MgcG9zc2libGUgdGhhdCBhbm90aGVyIGN1cnJlbnRs eSB3YWl0aW5nIHRhc2sgc2V0cyB0aGUgSEFORE9GRiAKZmxhZyBiZXR3ZWVuIHRob3NlIGNhbGxz IGFuZCB3ZSdsbCBhbGxvdyB0aGUgc2Vjb25kIHd3X211dGV4X2xvY2sgdG8gZ28gCnRocm91Z2gu CgpUaGUgY29uY2VybiBhYm91dCBwaWNraW5nIHVwIGEgaGFuZG9mZiB0aGF0IHdlIGRpZG4ndCBy ZXF1ZXN0IGlzIHJlYWwsIAp0aG91Z2ggaXQgY2Fubm90IGhhcHBlbiBpbiB0aGUgZmlyc3QgaXRl cmF0aW9uLiBQZXJoYXBzIHRoaXMgCl9fbXV0ZXhfdHJ5bG9jayBjYW4gYmUgbW92ZWQgdG8gdGhl IGVuZCBvZiB0aGUgbG9vcD8gU2VlIGJlbG93Li4uCgoKPgo+Cj4+ICAJCS8qCj4+IEBAIC03MTYs NyArNzc1LDIwIEBAIF9fbXV0ZXhfbG9ja19jb21tb24oc3RydWN0IG11dGV4ICpsb2NrLCBsb25n IHN0YXRlLCB1bnNpZ25lZCBpbnQgc3ViY2xhc3MsCj4+ICAJCXNwaW5fdW5sb2NrX211dGV4KCZs b2NrLT53YWl0X2xvY2ssIGZsYWdzKTsKPj4gIAkJc2NoZWR1bGVfcHJlZW1wdF9kaXNhYmxlZCgp Owo+Pgo+PiAtCQlpZiAoIWZpcnN0ICYmIF9fbXV0ZXhfd2FpdGVyX2lzX2ZpcnN0KGxvY2ssICZ3 YWl0ZXIpKSB7Cj4+ICsJCWlmICh1c2Vfd3dfY3R4ICYmIHd3X2N0eCkgewo+PiArCQkJLyoKPj4g KwkJCSAqIEFsd2F5cyByZS1jaGVjayB3aGV0aGVyIHdlJ3JlIGluIGZpcnN0IHBvc2l0aW9uLiBX ZQo+PiArCQkJICogZG9uJ3Qgd2FudCB0byBzcGluIGlmIGFub3RoZXIgdGFzayB3aXRoIGEgbG93 ZXIKPj4gKwkJCSAqIHN0YW1wIGhhcyB0YWtlbiBvdXIgcG9zaXRpb24uCj4+ICsJCQkgKgo+PiAr CQkJICogV2UgYWxzbyBtYXkgaGF2ZSB0byBzZXQgdGhlIGhhbmRvZmYgZmxhZyBhZ2FpbiwgaWYK Pj4gKwkJCSAqIG91ciBwb3NpdGlvbiBhdCB0aGUgaGVhZCB3YXMgdGVtcG9yYXJpbHkgdGFrZW4g YXdheS4KPj4gKwkJCSAqLwo+PiArCQkJZmlyc3QgPSBfX211dGV4X3dhaXRlcl9pc19maXJzdChs b2NrLCAmd2FpdGVyKTsKPj4gKwo+PiArCQkJaWYgKGZpcnN0KQo+PiArCQkJCV9fbXV0ZXhfc2V0 X2ZsYWcobG9jaywgTVVURVhfRkxBR19IQU5ET0ZGKTsKPj4gKwkJfSBlbHNlIGlmICghZmlyc3Qg JiYgX19tdXRleF93YWl0ZXJfaXNfZmlyc3QobG9jaywgJndhaXRlcikpIHsKPj4gIAkJCWZpcnN0 ID0gdHJ1ZTsKPj4gIAkJCV9fbXV0ZXhfc2V0X2ZsYWcobG9jaywgTVVURVhfRkxBR19IQU5ET0ZG KTsKPj4gIAkJfQo+Cj4gU28gdGhlIHBvaW50IGlzIHRoYXQgIXd3X2N0eCBlbnRyaWVzIGFyZSAn c2tpcHBlZCcgZHVyaW5nIHRoZSBpbnNlcnRpb24KPiBhbmQgdGhlcmVmb3JlLCBpZiBvbmUgYmVj b21lcyBmaXJzdCwgaXQgbXVzdCBzdGF5IGZpcnN0PwoKWWVzLiBBY3R1YWxseSwgaXQgc2hvdWxk IGJlIHBvc3NpYmxlIHRvIHJlcGxhY2UgYWxsIHRoZSBjYXNlcyBvZiAKdXNlX3d3X2N0eCB8fCBm aXJzdCB3aXRoIHd3X2N0eC4gU2ltaWxhcmx5LCBhbGwgY2FzZXMgb2YgdXNlX3d3X2N0eCAmJiAK d3dfY3R4IGNvdWxkIGJlIHJlcGxhY2VkIGJ5IGp1c3Qgd3dfY3R4LgoKPgo+PiBAQCAtNzI4LDcg KzgwMCw3IEBAIF9fbXV0ZXhfbG9ja19jb21tb24oc3RydWN0IG11dGV4ICpsb2NrLCBsb25nIHN0 YXRlLCB1bnNpZ25lZCBpbnQgc3ViY2xhc3MsCj4+ICAJCSAqIG9yIHdlIG11c3Qgc2VlIGl0cyB1 bmxvY2sgYW5kIGFjcXVpcmUuCj4+ICAJCSAqLwo+PiAgCQlpZiAoKGZpcnN0ICYmIG11dGV4X29w dGltaXN0aWNfc3Bpbihsb2NrLCB3d19jdHgsIHVzZV93d19jdHgsIHRydWUpKSB8fAo+PiAtCQkg ICAgIF9fbXV0ZXhfdHJ5bG9jayhsb2NrLCBmaXJzdCkpCj4+ICsJCSAgICAgX19tdXRleF90cnls b2NrKGxvY2ssIHVzZV93d19jdHggfHwgZmlyc3QpKQo+PiAgCQkJYnJlYWs7Cj4+Cj4+ICAJCXNw aW5fbG9ja19tdXRleCgmbG9jay0+d2FpdF9sb2NrLCBmbGFncyk7CgpDaGFuZ2UgdGhpcyBjb2Rl IHRvOgoKCQlhY3F1aXJlZCA9IGZpcnN0ICYmCgkJICAgIG11dGV4X29wdGltaXN0aWNfc3Bpbihs b2NrLCB3d19jdHgsIHVzZV93d19jdHgsCgkJCQkJICAmd2FpdGVyKTsKCQlzcGluX2xvY2tfbXV0 ZXgoJmxvY2stPndhaXRfbG9jaywgZmxhZ3MpOwoJCQoJCWlmIChhY3F1aXJlZCB8fAoJCSAgICBf X211dGV4X3RyeWxvY2sobG9jaywgdXNlX3d3X2N0eCB8fCBmaXJzdCkpCgkJCWJyZWFrOwoJfQoK VGhpcyBjaGFuZ2VzIHRoZSB0cnlsb2NrIHRvIGFsd2F5cyBiZSB1bmRlciB0aGUgd2FpdF9sb2Nr LCBidXQgd2UgCnByZXZpb3VzbHkgaGFkIHRoYXQgYXQgdGhlIGJlZ2lubmluZyBvZiB0aGUgbG9v cCBhbnl3YXkuIEl0IGFsc28gcmVtb3ZlcyAKYmFjay10by1iYWNrIGNhbGxzIHRvIF9fbXV0ZXhf dHJ5bG9jayB3aGVuIGdvaW5nIHRocm91Z2ggdGhlIGxvb3A7IGFuZCAKZm9yIHRoZSBmaXJzdCBp dGVyYXRpb24sIHRoZXJlIGlzIGEgX19tdXRleF90cnlsb2NrIHVuZGVyIHdhaXRfbG9jayAKYWxy ZWFkeSBiZWZvcmUgYWRkaW5nIG91cnNlbHZlcyB0byB0aGUgd2FpdCBsaXN0LgoKV2hhdCBkbyB5 b3UgdGhpbms/CgpOaWNvbGFpCl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fCmRyaS1kZXZlbCBtYWlsaW5nIGxpc3QKZHJpLWRldmVsQGxpc3RzLmZyZWVkZXNr dG9wLm9yZwpodHRwczovL2xpc3RzLmZyZWVkZXNrdG9wLm9yZy9tYWlsbWFuL2xpc3RpbmZvL2Ry aS1kZXZlbAo=