From mboxrd@z Thu Jan 1 00:00:00 1970 From: Ian Romanick Subject: Re: [mesa 8/9] glx/dri2: Move the wait after SwapBuffers into the next GetBuffers Date: Tue, 20 Jan 2015 12:03:50 -0800 Message-ID: <54BEB4A6.6050706@freedesktop.org> References: <1421665245-5994-1-git-send-email-chris@chris-wilson.co.uk> <1421665245-5994-9-git-send-email-chris@chris-wilson.co.uk> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: In-Reply-To: <1421665245-5994-9-git-send-email-chris@chris-wilson.co.uk> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: mesa-dev-bounces@lists.freedesktop.org Sender: "mesa-dev" To: Chris Wilson , xorg-devel@lists.x.org, dri-devel@lists.freedesktop.org, mesa-dev@lists.freedesktop.org List-Id: dri-devel@lists.freedesktop.org T24gMDEvMTkvMjAxNSAwMzowMCBBTSwgQ2hyaXMgV2lsc29uIHdyb3RlOgo+IEFzIHRoZSBTQkMg ZnJvbSB0aGUgcmVwbHkgZnJvbSBTd2FwQnVmZmVycyBpcyBub3QgdXNlZCBpbW1lZGlhdGVseSBh bmQKPiBjYW4gYmUgZWFzaWx5IGRldGVybWluZWQgYnkgY291bnRpbmcgdGhlIG5ldyBvZiBTd2Fw QnVmZmVycyByZXF1ZXN0cwo+IG1hZGUgYnkgdGhlIGNsaWVudCwgd2UgY2FuIGRlZmVyIHRoZSBz eW5jaHJvbmlzYXRpb24gcG9pbnQgdG8gdGhlCj4gcGVuZGluZyBHZXRCdWZmZXJzIHJvdW5kIHRy aXAuIChXZSBmb3JjZSB0aGUgaW52YWxpZGF0aW9uIGV2ZW50IGluIG9yZGVyCj4gdG8gcmVxdWly ZSB0aGUgR2V0QnVmZmVycyByb3VuZCB0cmlwIC0gd2Uga25vdyB0aGF0IGFsbCBYIHNlcnZlcnMg d2lsbAo+IHNlbmQgdGhlIGludmFsaWRhdGlvbiBhZnRlciBTd2FwQnVmZmVycyBhbmQgdGhhdCBp bnZhbGlkYXRpb24gd2lsbAo+IGFycml2ZSBiZWZvcmUgdGhlIFN3YXBCdWZmZXJzIHJlcGx5LCBz byBubyBleHRyYSByb3VuZHRyaXBzIGFyZSBmb3JjZWQuKQoKVGhpcyBpcyBhIHByZXR0eSBiaWcg Y2hhbmdlIGluIGJlaGF2aW9yLiAgSG93IG11Y2ggdGVzdGluZyBoYXMgaXQKcmVjZWl2ZWQ/ICBJ J20gbmVydm91cyB0aGF0IGFwcGxpY2F0aW9ucyB0aGF0ICJ3b3JrIGZpbmUiIHRvZGF5IGNvdWxk Cm1pc2JlaGF2ZSBpbiBzdWJ0bGUgd2F5cy4gIEhvdyBtdWNoIHdvcmsgd291bGQgaXQgYmUgdG8g YWRkIGEgd2F5IHRvCmRpc2FibGUgdGhlIG5ldyBiZWhhdmlvciwgcGVyaGFwcyB2aWEgYW4gZW52 aXJvbm1lbnQgdmFyaWFibGUsIGF0CnJ1bi10aW1lPyAgVGhhdCB3b3VsZCBtYWtlIGl0IG11Y2gg ZWFzaWVyIGZvciB1c2VycyB0byBkZXRlcm1pbmUgd2hldGhlcgp0aGlzIGNoYW5nZSB3YXMgcmVz cG9uc2libGUgZm9yIGEgcHJvYmxlbSBpbiBzb21lIGdhbWUgd2UgZG9uJ3QgaGF2ZS4KCkFkZGl0 aW9uYWwgY29tbWVudHMgaW4tbGluZSBiZWxvdy4KCj4gQW4gaW1wb3J0YW50IHNpZGUtZWZmZWN0 IGlzIGRlbW9uc3RyYXRlZCBpbiB0aGUgbmV4dCBwYXRjaCB3aGVyZSB3ZSBjYW4KPiBkZXRlY3Qg d2hlbiB0aGUgYnVmZmVycyBhcmUgc3RhbGUgYmVmb3JlIHF1ZXJ5aW5nIHByb3BlcnRpZXMuCj4g Cj4gU2lnbmVkLW9mZi1ieTogQ2hyaXMgV2lsc29uIDxjaHJpc0BjaHJpcy13aWxzb24uY28udWs+ Cj4gLS0tCj4gIHNyYy9nbHgvZHJpMl9nbHguYyB8IDczICsrKysrKysrKysrKysrKysrKysrKysr KysrKystLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQo+ICAxIGZpbGUgY2hhbmdlZCwgMzggaW5z ZXJ0aW9ucygrKSwgMzUgZGVsZXRpb25zKC0pCj4gCj4gZGlmZiAtLWdpdCBhL3NyYy9nbHgvZHJp Ml9nbHguYyBiL3NyYy9nbHgvZHJpMl9nbHguYwo+IGluZGV4IDQ2MmQ1NjAuLjA1Nzc4MDQgMTAw NjQ0Cj4gLS0tIGEvc3JjL2dseC9kcmkyX2dseC5jCj4gKysrIGIvc3JjL2dseC9kcmkyX2dseC5j Cj4gQEAgLTkzLDYgKzkzLDEwIEBAIHN0cnVjdCBkcmkyX2RyYXdhYmxlCj4gICAgIGludCBoYXZl X2JhY2s7Cj4gICAgIGludCBoYXZlX2Zha2VfZnJvbnQ7Cj4gICAgIGludCBzd2FwX2ludGVydmFs Owo+ICsgICBpbnQgc3dhcF9wZW5kaW5nOwo+ICsKPiArICAgeGNiX2RyaTJfc3dhcF9idWZmZXJz X2Nvb2tpZV90IHN3YXBfYnVmZmVyc19jb29raWU7Cj4gKyAgIGludDY0X3QgbGFzdF9zd2FwX3Ni YzsKPiAgCj4gICAgIHVpbnQ2NF90IHByZXZpb3VzX3RpbWU7Cj4gICAgIHVuc2lnbmVkIGZyYW1l czsKPiBAQCAtNzc4LDUwICs3ODIsNTEgQEAgc3RhdGljIHZvaWQgc2hvd19mcHMoc3RydWN0IGRy aTJfZHJhd2FibGUgKmRyYXcpCj4gICAgIH0KPiAgfQo+ICAKPiAtc3RhdGljIGludDY0X3QKPiAt ZHJpMlhjYlN3YXBCdWZmZXJzKERpc3BsYXkgKmRweSwKPiAtICAgICAgICAgICAgICAgICAgX19H TFhEUklkcmF3YWJsZSAqcGRyYXcsCj4gK3N0YXRpYyB2b2lkCj4gK2RyaTJYY2JTd2FwQnVmZmVy cyhzdHJ1Y3QgZHJpMl9kcmF3YWJsZSAqcHJpdiwKPiAgICAgICAgICAgICAgICAgICAgaW50NjRf dCB0YXJnZXRfbXNjLAo+ICAgICAgICAgICAgICAgICAgICBpbnQ2NF90IGRpdmlzb3IsCj4gICAg ICAgICAgICAgICAgICAgIGludDY0X3QgcmVtYWluZGVyKQo+ICB7Cj4gLSAgIHhjYl9kcmkyX3N3 YXBfYnVmZmVyc19jb29raWVfdCBzd2FwX2J1ZmZlcnNfY29va2llOwo+IC0gICB4Y2JfZHJpMl9z d2FwX2J1ZmZlcnNfcmVwbHlfdCAqc3dhcF9idWZmZXJzX3JlcGx5Owo+ICsgICB4Y2JfY29ubmVj dGlvbl90ICpjID0gWEdldFhDQkNvbm5lY3Rpb24ocHJpdi0+YmFzZS5wc2MtPmRweSk7Cj4gICAg IHVpbnQzMl90IHRhcmdldF9tc2NfaGksIHRhcmdldF9tc2NfbG87Cj4gICAgIHVpbnQzMl90IGRp dmlzb3JfaGksIGRpdmlzb3JfbG87Cj4gICAgIHVpbnQzMl90IHJlbWFpbmRlcl9oaSwgcmVtYWlu ZGVyX2xvOwo+IC0gICBpbnQ2NF90IHJldCA9IDA7Cj4gLSAgIHhjYl9jb25uZWN0aW9uX3QgKmMg PSBYR2V0WENCQ29ubmVjdGlvbihkcHkpOwo+ICAKPiAgICAgc3BsaXRfY291bnRlcih0YXJnZXRf bXNjLCAmdGFyZ2V0X21zY19oaSwgJnRhcmdldF9tc2NfbG8pOwo+ICAgICBzcGxpdF9jb3VudGVy KGRpdmlzb3IsICZkaXZpc29yX2hpLCAmZGl2aXNvcl9sbyk7Cj4gICAgIHNwbGl0X2NvdW50ZXIo cmVtYWluZGVyLCAmcmVtYWluZGVyX2hpLCAmcmVtYWluZGVyX2xvKTsKPiAgCj4gLSAgIHN3YXBf YnVmZmVyc19jb29raWUgPQo+IC0gICAgICB4Y2JfZHJpMl9zd2FwX2J1ZmZlcnNfdW5jaGVja2Vk KGMsIHBkcmF3LT54RHJhd2FibGUsCj4gKyAgIHByaXYtPnN3YXBfYnVmZmVyc19jb29raWUgPQo+ ICsgICAgICB4Y2JfZHJpMl9zd2FwX2J1ZmZlcnNfdW5jaGVja2VkKGMsIHByaXYtPmJhc2UueERy YXdhYmxlLAo+ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRhcmdldF9t c2NfaGksIHRhcmdldF9tc2NfbG8sCj4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgZGl2aXNvcl9oaSwgZGl2aXNvcl9sbywKPiAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICByZW1haW5kZXJfaGksIHJlbWFpbmRlcl9sbyk7Cj4gKyAgIHhjYl9mbHVz aChjKTsKPiArICAgcHJpdi0+c3dhcF9wZW5kaW5nKys7Cj4gIAo+IC0gICAvKiBJbW1lZGlhdGVs eSB3YWl0IG9uIHRoZSBzd2FwYnVmZmVycyByZXBseS4gIElmIHdlIGRpZG4ndCwgd2UnZCBoYXZl Cj4gLSAgICAqIHRvIGRvIHNvIHNvbWUgdGltZSBiZWZvcmUgcmV1c2luZyBhIChub24tcGFnZWZs aXBwZWQpIGJhY2tidWZmZXIuCj4gLSAgICAqIE90aGVyd2lzZSwgdGhlIG5ldyByZW5kZXJpbmcg Y291bGQgZ2V0IGFoZWFkIG9mIHRoZSBYIFNlcnZlcidzCj4gLSAgICAqIGRpc3BhdGNoIG9mIHRo ZSBzd2FwYnVmZmVyIGFuZCB5b3UnZCBkaXNwbGF5IGdhcmJhZ2UuCj4gLSAgICAqCj4gLSAgICAq IFdlIHVzZSBYU3luYygpIGZpcnN0IHRvIHJlYXAgdGhlIGludmFsaWRhdGUgZXZlbnRzIHRocm91 Z2ggdGhlIGV2ZW50Cj4gLSAgICAqIGZpbHRlciwgdG8gZW5zdXJlIHRoYXQgdGhlIG5leHQgZHJh d2luZyBkb2Vzbid0IHVzZSBhbiBpbnZhbGlkYXRlZAo+IC0gICAgKiBidWZmZXIuCj4gLSAgICAq Lwo+IC0gICBYU3luYyhkcHksIEZhbHNlKTsKPiArICAgLyogRm9yY2UgYSBzeW5jaHJvbm91cyBj b21wbGV0aW9uIHByaW9yIHRvIHRoZSBuZXh0IHJlbmRlcmluZyAqLwo+ICsgICBkcmkySW52YWxp ZGF0ZUJ1ZmZlcnMocHJpdi0+YmFzZS5wc2MtPmRweSwgcHJpdi0+YmFzZS54RHJhd2FibGUpOwo+ ICt9Cj4gKwo+ICtzdGF0aWMgdm9pZCBkcmkyWGNiU3dhcEJ1ZmZlcnNDb21wbGV0ZShzdHJ1Y3Qg ZHJpMl9kcmF3YWJsZSAqcHJpdikKCnN0YXRpYyB2b2lkCmRyaTJYY2JTd2FwQnVmZmVyc0NvbXBs ZXRlKHN0cnVjdCBkcmkyX2RyYXdhYmxlICpwcml2KQoKPiArewo+ICsgICB4Y2JfZHJpMl9zd2Fw X2J1ZmZlcnNfcmVwbHlfdCAqc3dhcF9idWZmZXJzX3JlcGx5Owo+ICsKPiArICAgaWYgKCFwcml2 LT5zd2FwX3BlbmRpbmcpCj4gKyAgICAgIHJldHVybjsKPiArCj4gKyAgIHByaXYtPnN3YXBfcGVu ZGluZyA9IDA7CgpJcyB0aGlzIGFjdHVhbGx5IHJpZ2h0PyAgZHJpMlhjYlN3YXBCdWZmZXJzIGlu Y3JlbWVudHMgdGhlIGNvdW50LCBkbyB3ZQprbm93IHRoZSBzaW5nbGUgcmVwbHkgd2lsbCBiZSBm b3IgYWxsIHBlbmRpbmcgc3dhcHM/Cgo+ICAKPiAgICAgc3dhcF9idWZmZXJzX3JlcGx5ID0KPiAt ICAgICAgeGNiX2RyaTJfc3dhcF9idWZmZXJzX3JlcGx5KGMsIHN3YXBfYnVmZmVyc19jb29raWUs IE5VTEwpOwo+IC0gICBpZiAoc3dhcF9idWZmZXJzX3JlcGx5KSB7Cj4gLSAgICAgIHJldCA9IG1l cmdlX2NvdW50ZXIoc3dhcF9idWZmZXJzX3JlcGx5LT5zd2FwX2hpLAo+IC0gICAgICAgICAgICAg ICAgICAgICAgICAgIHN3YXBfYnVmZmVyc19yZXBseS0+c3dhcF9sbyk7Cj4gLSAgICAgIGZyZWUo c3dhcF9idWZmZXJzX3JlcGx5KTsKPiAtICAgfQo+IC0gICByZXR1cm4gcmV0Owo+ICsgICAgICAg IHhjYl9kcmkyX3N3YXBfYnVmZmVyc19yZXBseShYR2V0WENCQ29ubmVjdGlvbihwcml2LT5iYXNl LnBzYy0+ZHB5KSwKPiArCQkJCSAgICBwcml2LT5zd2FwX2J1ZmZlcnNfY29va2llLCBOVUxMKTsK PiArICAgaWYgKHN3YXBfYnVmZmVyc19yZXBseSA9PSBOVUxMKQo+ICsgICAgICByZXR1cm47Cj4g Kwo+ICsgICBwcml2LT5sYXN0X3N3YXBfc2JjID0gbWVyZ2VfY291bnRlcihzd2FwX2J1ZmZlcnNf cmVwbHktPnN3YXBfaGksCj4gKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg IHN3YXBfYnVmZmVyc19yZXBseS0+c3dhcF9sbyk7Cj4gKyAgIGZyZWUoc3dhcF9idWZmZXJzX3Jl cGx5KTsKPiAgfQo+ICAKPiAgc3RhdGljIGludDY0X3QKPiBAQCAtODMzLDExICs4MzgsMTAgQEAg ZHJpMlN3YXBCdWZmZXJzKF9fR0xYRFJJZHJhd2FibGUgKnBkcmF3LCBpbnQ2NF90IHRhcmdldF9t c2MsIGludDY0X3QgZGl2aXNvciwKPiAgICAgIHN0cnVjdCBkcmkyX3NjcmVlbiAqcHNjID0gKHN0 cnVjdCBkcmkyX3NjcmVlbiAqKSBwcml2LT5iYXNlLnBzYzsKPiAgICAgIHN0cnVjdCBkcmkyX2Rp c3BsYXkgKnBkcCA9Cj4gIAkoc3RydWN0IGRyaTJfZGlzcGxheSAqKWRweVByaXYtPmRyaTJEaXNw bGF5Owo+IC0gICAgaW50NjRfdCByZXQgPSAwOwo+ICAKPiAgICAgIC8qIENoZWNrIHdlIGhhdmUg dGhlIHJpZ2h0IGF0dGFjaG1lbnRzICovCj4gICAgICBpZiAoIXByaXYtPmhhdmVfYmFjaykKPiAt CXJldHVybiByZXQ7Cj4gKwlyZXR1cm4gMDsKPiAgCj4gICAgICAvKiBPbGQgc2VydmVycyBjYW4n dCBoYW5kbGUgc3dhcGJ1ZmZlcnMgKi8KPiAgICAgIGlmICghcGRwLT5zd2FwQXZhaWxhYmxlKSB7 Cj4gQEAgLTg1MCwxOSArODU0LDE0IEBAIGRyaTJTd2FwQnVmZmVycyhfX0dMWERSSWRyYXdhYmxl ICpwZHJhdywgaW50NjRfdCB0YXJnZXRfbXNjLCBpbnQ2NF90IGRpdmlzb3IsCj4gICAgICAgICAg ICBmbGFncyB8PSBfX0RSSTJfRkxVU0hfQ09OVEVYVDsKPiAgICAgICAgIGRyaTJGbHVzaChwc2Ms IGN0eCwgcHJpdiwgZmxhZ3MsIF9fRFJJMl9USFJPVFRMRV9TV0FQQlVGRkVSKTsKPiAgCj4gLSAg ICAgICByZXQgPSBkcmkyWGNiU3dhcEJ1ZmZlcnMocGRyYXctPnBzYy0+ZHB5LCBwZHJhdywKPiAt ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0YXJnZXRfbXNjLCBkaXZpc29yLCByZW1h aW5kZXIpOwo+ICsgICAgICAgZHJpMlhjYlN3YXBCdWZmZXJzKHByaXYsIHRhcmdldF9tc2MsIGRp dmlzb3IsIHJlbWFpbmRlcik7Cj4gICAgICB9Cj4gIAo+ICAgICAgaWYgKHBzYy0+c2hvd19mcHNf aW50ZXJ2YWwpIHsKPiAgICAgICAgIHNob3dfZnBzKHByaXYpOwo+ICAgICAgfQo+ICAKPiAtICAg IC8qIE9sZCBzZXJ2ZXJzIGRvbid0IHNlbmQgaW52YWxpZGF0ZSBldmVudHMgKi8KPiAtICAgIGlm ICghcGRwLT5pbnZhbGlkYXRlQXZhaWxhYmxlKQo+IC0gICAgICAgZHJpMkludmFsaWRhdGVCdWZm ZXJzKGRweVByaXYtPmRweSwgcGRyYXctPnhEcmF3YWJsZSk7CgpJdCBzZWVtcyBsaWtlIHRoaXMg c2hvdWxkIHN0aWxsIGhhcHBlbiBzb21ld2hlcmUsIHJpZ2h0PyAgT3IgYXJlIHdlCmFzc3VtaW5n IHRoZXJlIGFyZSBubyBtb3JlIG9sZCBzZXJ2ZXJzIGFueXdoZXJlICh0aGF0IHdpbGwgYmUgdXNl ZCB3aXRoCnRoaXMpPwoKPiAtCj4gLSAgICByZXR1cm4gcmV0Owo+ICsgICAgcmV0dXJuIHByaXYt Pmxhc3Rfc3dhcF9zYmMgKyBwcml2LT5zd2FwX3BlbmRpbmc7Cj4gIH0KPiAgCj4gIHN0YXRpYyBf X0RSSWJ1ZmZlciAqCj4gQEAgLTg4NSw2ICs4ODQsOCBAQCBkcmkyR2V0QnVmZmVycyhfX0RSSWRy YXdhYmxlICogZHJpRHJhd2FibGUsCj4gIAo+ICAgICBmcmVlKGJ1ZmZlcnMpOwo+ICAKPiArICAg ZHJpMlhjYlN3YXBCdWZmZXJzQ29tcGxldGUocGRyYXcpOwo+ICsKCkFyZSB0aGVyZSBvdGhlciBw bGFjZXMgdGhhdCBuZWVkIHRoaXM/ICBJdCBzZWVtcyBsaWtlIGFsbCB0aGUgaW1wb3J0YW50CnBh dGhzIHdpbGwgZXZlbnR1YWxseSBoaXQgdGhpcyBvciBkcmkyR2V0QnVmZmVyc1dpdGhGb3JtYXQu ICBXaWxsCmdsRmluaXNoIGFsd2F5cyBoaXQgdGhpcz8gIExpa2U6CgogICAgZ2xYU3dhcEJ1ZmZl cnMoKTsKICAgIGdsRmluaXNoKCk7CgpIbW0uLi4gdGhhdCBjYXNlIG1heSBub3QgZXZlbiBtYXR0 ZXIuCgo+ICAgICByZXR1cm4gcGRyYXctPmJ1ZmZlcnM7Cj4gIH0KPiAgCj4gQEAgLTkxMCw2ICs5 MTEsOCBAQCBkcmkyR2V0QnVmZmVyc1dpdGhGb3JtYXQoX19EUklkcmF3YWJsZSAqIGRyaURyYXdh YmxlLAo+ICAKPiAgICAgZnJlZShidWZmZXJzKTsKPiAgCj4gKyAgIGRyaTJYY2JTd2FwQnVmZmVy c0NvbXBsZXRlKHBkcmF3KTsKPiArCj4gICAgIHJldHVybiBwZHJhdy0+YnVmZmVyczsKPiAgfQo+ ICAKCl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fCm1lc2Et ZGV2IG1haWxpbmcgbGlzdAptZXNhLWRldkBsaXN0cy5mcmVlZGVza3RvcC5vcmcKaHR0cDovL2xp c3RzLmZyZWVkZXNrdG9wLm9yZy9tYWlsbWFuL2xpc3RpbmZvL21lc2EtZGV2Cg==