From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mga18.intel.com (mga18.intel.com [134.134.136.126]) by gabe.freedesktop.org (Postfix) with ESMTPS id B9DA56E176 for ; Thu, 14 Feb 2019 13:03:01 +0000 (UTC) Date: Thu, 14 Feb 2019 15:02:58 +0200 Message-ID: <20190214130258.GB990@intel.intel> References: <20190214004445.1733-1-andi.shyti@intel.com> <20190214004445.1733-3-andi.shyti@intel.com> <155013737042.14276.16193705802949147203@skylake-alporthouse-com> MIME-Version: 1.0 Content-Disposition: inline In-Reply-To: <155013737042.14276.16193705802949147203@skylake-alporthouse-com> Subject: Re: [igt-dev] [RFC PATCH v9 2/5] lib/i915: add gem_query library List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , From: Andi Shyti via igt-dev Reply-To: Andi Shyti Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Errors-To: igt-dev-bounces@lists.freedesktop.org Sender: "igt-dev" To: Chris Wilson Cc: IGT dev , Andi Shyti List-ID: SGkgQ2hyaXMsCgo+ID4gKy8qCj4gPiArICogSEFDSzogdGhlICcyICogc2l6ZW9mKF9fdTE2KScg aXMgdGhlIHNpemUgcmVxdWlyZWQgZm9yIHRoZSBmbGV4aWJsZSBhcnJheQo+ID4gKyAqIGluc2lk ZSAnc3RydWN0IGk5MTVfY29udGV4dF9wYXJhbV9lbmdpbmVzJyB0aGF0IGRvZXNuJ3QgaGF2ZSBh IG5hbWUgYW5kCj4gPiArICogdGhlcmVmb3JlIGNhbm5vdCBiZSByZWZlcmVuY2VkLiBJdCBuZWVk cyBhIG5hbWUgaW4gdGhlIHVhcGkuCj4gPiArICovCj4gCj4gSXQncyBub3QgZ29pbmcgdG8gZ2V0 IG9uZSB1bnRpbCB5b3UgcmFpc2UgdGhlIHBvaW50IGluIHJldmlldyBvZiB0aGUKPiB1QVBJLiBJ dCBkb2Vzbid0IHRob3VnaCwgeW91IGNhbiB1c2Ugc2l6ZW9mIG9uIHRoZSB1bm5hbWVkIG1lbWJl ci4KPiAKPiA+ICsjZGVmaW5lIFNJWkVPRl9DVFhfUEFSQU0gICAgICAgc2l6ZW9mKHN0cnVjdCBp OTE1X2NvbnRleHRfcGFyYW1fZW5naW5lcykgKyBcCj4gPiArICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgSTkxNV9FWEVDX1JJTkdfTUFTSyAqIFwKPiA+ICsgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAyICogc2l6ZW9mKF9fdTE2KQo+IAo+IEZvciBl eGFtcGxlOgo+IAo+IFNJWkVPRl9DVFhfUEFSQU0gb2Zmc2V0b2ZlbmQoc3RydWN0IGk5MTVfY29u dGV4dF9wYXJhbV9lbmdpbmVzLAo+IAkJCSAgICAgY2xhc3NfaW5zdGFuY2VbSTkxNV9FWEVDX1JJ TkdfTUFTSyArIDFdKQo+IAo+IFRvIG1ha2UgaXQgZ2VuZXJpYyB0aG91Z2gsIGl0IG5lZWRzIF9f YXR0cmlidXRlX18oKHBhY2tlZCkpCgp5ZWFoISBtYWtlcyBzZW5zZS4KCj4gKElmIHRoZSBtYXhp bXVtIGluZGV4IGlzIEk5MTVfRVhFQ19SSU5HX01BU0ssIHdlIG5lZWQKPiBJOTE1X0VYRUNfUklO R19NQVNLICsgMSBzdG9yYWdlLikKClllcywgSSBkaWRuJ3QgYWRkIHRoZSAnKyAxJyBiZWNhdXNl IGluIHRoZSBkcml2ZXIgeW91IGRvOgoKCWlmIChzZXQubmVuZ2luZSA9PSAwIHx8IHNldC5uZW5n aW5lID4gSTkxNV9FWEVDX1JJTkdfTUFTSykKCQlyZXR1cm4gLUVJTlZBTDsKCj4gPiArI2RlZmlu ZSBTSVpFT0ZfUVVFUlkgICAgICAgICAgIHNpemVvZihzdHJ1Y3QgZHJtX2k5MTVfcXVlcnlfZW5n aW5lX2luZm8pICsgXAo+ID4gKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg IEk5MTVfRVhFQ19SSU5HX01BU0sgKiBcCj4gPiArICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgc2l6ZW9mKHN0cnVjdCBkcm1faTkxNV9lbmdpbmVfaW5mbykKPiA+ICsKPiA+ ICtzdHJ1Y3QgaW50ZWxfZXhlY3V0aW9uX2VuZ2luZTIgKmludGVsX2FjdGl2ZV9lbmdpbmVzMjsK PiA+ICsKPiA+ICtzdGF0aWMgaW50IF9fZ2VtX3F1ZXJ5KGludCBmZCwgc3RydWN0IGRybV9pOTE1 X3F1ZXJ5ICpxKQo+ID4gK3sKPiA+ICsgICAgICAgaW50IGVyciA9IDA7Cj4gPiArCj4gPiArICAg ICAgIGlmKGlndF9pb2N0bChmZCwgRFJNX0lPQ1RMX0k5MTVfUVVFUlksIHEpKQo+ICAgICAgICAg ICAgIF4ga2VybmVsIGNvZGluZyBzdHlsZSBhcHBsaWVzIChtaXNzZWQgc3BhY2UpCgp5ZXMgOikg SSBkaWRuJ3Qgbm90aWNlLCBpdCBzaG91bGQgYmUgc29tZSBsYXRlIG5pZ2h0IGNvZGluZwpsZWZ0 b3Zlciwgd2Ugc2hvdWxkIGFkZCBjaGVja3BhdGNoLgoKPiA+ICtib29sIGdlbV9jYW5fcXVlcnko dm9pZCkKPiAKPiBTdGlsbCBub3RoaW5nIHRvIGRvIHdpdGggcXVlcnkgcGVyLXNlLi4uCj4gCj4g Z2VtX2hhc19lbmdpbmVfdG9wb2xvZ3koKSA/CgpPSywgc3VyZS4KCj4gPiArdm9pZCBfX3NldF9j dHhfZW5naW5lX21hcChpbnQgZmQsIHVpbnQzMl90IGN0eF9pZCkKPiAKPiBXZSd2ZSBkcmlmdGVk IG91dCBvZiB0aGUgZG9tYWluIG9mIGk5MTUvZ2VtX3F1ZXJ5LmMgaW50bwo+IGk5MTUvZ2VtX2Vu Z2luZS5jIFlvdSBjb3VsZCBldmVuIGFyZ3VlIHdlIHdhbnQgdG8ga2VlcCBnZW1fZW5naW5lLmMg Zm9yCj4gbG93ZXIgbGV2ZWwgaW50ZXJhY3Rpb25zLCBhbmQgc2F5IGdlbV9lbmdpbmVfdG9wb2xv Z3kuYyBmb3IgdGhlIGRldGFpbHMgb2YKPiB0aGUgbGF5b3V0LiBIbW0sIEkgbGlrZT8KCk9LLCBJ IGNhbiBhZGQgYSBuZXcgQVBJCgo+ID4gK3sKPiA+ICsgICAgICAgaW50IGk7Cj4gCj4gS2VybmVs IGNvZGluZyBzdHlsZSBpcyB0byBvcmRlciB2YXJpYWJsZSBsaW5lcyBieSBsZW5ndGgsIGxvbmdl c3QgZmlyc3Q7Cj4gdW5sZXNzIHRoZXJlIGlzIGEgY2xlYXIgcmVhc29uIHdoeSBub3QgdG8uCgpJ dCdzIGEgY29tbXVuaXR5IGJhc2VkIHByZWZlcmVuY2UsIGVhY2ggbWFpbnRhaW5lciBoYXMgaGlz IG93bgpvcGluaW9uIG9uIHZhcmlhYmxlIG9yZGVyaW5nLiBJIGp1c3QgcGxhY2UgaXQgaW4gdGhl IG9yZGVyIHRoYXQKdGhleSBjb21lIHRvIG15IG1pbmQsIHVudGlsIHRoZSBtYWludGFpbmVyIGRp Y3RhdGVzIHRoZSBydWxlLgoKPiA+ICsgICAgICAgX191OCBjdHhfcGFyYW1fYnVmZmVyW1NJWkVP Rl9DVFhfUEFSQU1dID0geyB9Owo+IAo+IHMvX191OC91aW50OF90Lwo+IAo+IEl0IGp1c3QgYSBi b3Jpbmcgc3RhY2sgYnVmLCBzbyBjYWxsIGl0IGJ1Zi4KCk9LLgoKPiA+ICsgICAgICAgY3R4X3Bh cmFtLmN0eF9pZCA9IGN0eF9pZDsKPiA+ICsgICAgICAgY3R4X3BhcmFtLnBhcmFtID0gSTkxNV9D T05URVhUX1BBUkFNX0VOR0lORVM7Cj4gPiArICAgICAgIGN0eF9wYXJhbS5zaXplID0gU0laRU9G X0NUWF9QQVJBTTsKPiAKPiBOb3QgcXVpdGU7IHNpemUgaXMgdXNlZCB0byBkZXRlcm1pbmUgdGhl IG51bWJlciBvZiBlbmdpbmVzLCB0aGlzIG1ha2VzIGEKPiBsYXJnZSBhcnJheSB3aXRoIHVwdG8g NSByZWFsIGVuZ2luZXMgZm9sbG93ZWQgYnkgcmNzMCByZXBlYXRlZCB+NjAKPiB0aW1lcy4gSW50 ZXJlc3RpbmcgOykKCnllcywgbmVlZCB0byBzYXZlIHRoZSBlbmdpbmUgY291bnQgc29tZXdoZXJl LiBJbiBhIHByZXZpb3VzCnNlcmllcyBJIHdhcyAnZm9yKC4uLik7JyBidXQgdGhlbiByZW1vdmVk IGl0Li4uCgo+ID4gKyAgICAgICBjdHhfZW5naW5lLT5leHRlbnNpb25zID0gMDsKPiA+ICsgICAg ICAgZm9yIChpID0gMCwgZTIgPSBpbnRlbF9hY3RpdmVfZW5naW5lczI7IGUyLT5uYW1lOyBpKyss IGUyKyspIHsKPiAKPiBZb3Ugc2hvdWxkIGF0IGxlYXN0IGhhdmUgYW4gYXNzZXJ0IHlvdSBkb24n dCBvdmVyZmxvdyB5b3VyIGFzc3VtcHRpb25zLgoKeWVzLCB0aGlzIGhhcHBlbmVkIHF1aXRlIG1h bnkgdGltZXMgbGFzdCBuaWdodCB3aGlsZSBJIHdhcyBmaXhpbmcKdGhlIGNvZGUgYW5kIGkgcHJv bWlzZWQgbXlzZWxmIHRvIGFkZCB0aGUgYXNzZXJ0LCBidXQgZXZlbnR1YWxseQpJIGZvcmdvdC4K Cj4gPiArICAgICAgICAgICAgICAgY3R4X2VuZ2luZS0+Y2xhc3NfaW5zdGFuY2VbaV0uZW5naW5l X2NsYXNzID0gZTItPmNsYXNzOwo+ID4gKyAgICAgICAgICAgICAgIGN0eF9lbmdpbmUtPmNsYXNz X2luc3RhbmNlW2ldLmVuZ2luZV9pbnN0YW5jZSA9IGUyLT5pbnN0YW5jZTsKPiA+ICsgICAgICAg fQo+IAo+ID4gKyAgICAgICBjdHhfcGFyYW0udmFsdWUgPSB0b191c2VyX3BvaW50ZXIoY3R4X2Vu Z2luZSk7Cgo+IGN0eF9wYXJhbS5zaXplID0gb2Zmc2V0b2YodHlwZW9mKCpjdHhfZW5naW5lKSwg Y2xhc3NfaW5zdGFuY2VbaV0pOwo+IAo+ICogcXVpY2tseSBhZGRzIHRoZSBwYWNrZWQgYXR0cmli dXRlCgouLi4gbmVhdCEKCj4gPiArICAgICAgIHJldCA9IF9fZ2VtX2NvbnRleHRfZ2V0X3BhcmFt KGZkLCAmY3R4X3BhcmFtKTsKPiA+ICsgICAgICAgaWYgKHJldCkgewo+ID4gKyAgICAgICAgICAg ICAgIGlmIChyZXQgPT0gLUVJTlZBTCkgewo+IAo+IEp1c3QKPiAKPiBpZiAoX19nZW1fY29udGV4 dF9nZXRfcGFyYW0oKSkgewo+IAlpbnRlbF9hY3RpdmVfZW5naW5lczIgPSBpbnRlbF9leGVjdXRp b25fZW5naW5lczI7Cj4gCXJldHVybiAtRU5PREVWOwo+IH0KPiAKPiBUaGlzIGJlIGxpYnJhcnkg Y29kZSwgc28geW91IGRlZmluZSB0aGUgaW50ZXJmYWNlOyBhcyBvcHBvc2VkIHRvIHRlc3QKPiBj b2RlIHdoZXJlIHdlIGRlbWFuZCBjZXJ0YWluIHJlc3BvbnNlcyBmcm9tIHRoZSBrZXJuZWwuCgp3 ZSBkb24ndCBuZWVkIG90aGVyIC1lcnJub3M/IE9LIQoKPiA+ICsgICAgICAgZm9yIChpID0gMDsg aSA8IHF1ZXJ5X2VuZ2luZS0+bnVtX2VuZ2luZXM7IGkrKykgewo+ID4gKyAgICAgICAgICAgICAg IGNoYXIgKm5hbWU7Cj4gPiArICAgICAgICAgICAgICAgaW50IGNsYXNzID0gcXVlcnlfZW5naW5l LT5lbmdpbmVzW2ldLmNsYXNzOwo+ID4gKyAgICAgICAgICAgICAgIGludCBpbnN0YW5jZSA9IHF1 ZXJ5X2VuZ2luZS0+ZW5naW5lc1tpXS5pbnN0YW5jZTsKPiA+ICsKPiA+ICsgICAgICAgICAgICAg ICBpZ3RfYXNzZXJ0KGNsYXNzIDwgQVJSQVlfU0laRShjbGFzc19uYW1lcykgJiYgY2xhc3MgPj0g MCk7Cj4gPiArICAgICAgICAgICAgICAgaWd0X2Fzc2VydChjbGFzc19uYW1lc1tjbGFzc10pOwo+ IAo+IEJlIGZ1dHVyZSBwcm9vZjsKPiAKPiBpZiAoKHVuc2lnbmVkKWNsYXNzID49IEFSUkFZX1NJ WkUoKSB8fCAhY2xhc3NfbmFtZXNbY2xhc3NdKQo+IAl0bXBsID0gInh4eCI7IC8vIG9yICJ1bmsi IEkgdGhpbmsgSSd2ZSBzZWVuIFR2cnRrbyB1c2UKPiBlbHNlCj4gCXRtcGwgPSBjbGFzc19uYW1l c1tjbGFzc107Cj4gCj4gQm9udXMgcG9pbnRzIHRvIGluY2x1ZGUgY2xhc3MtaWQgaW4gdG1wbCBp biBjYXNlIHRoZXJlJ3MgbW9yZSB0aGFuIG9uZSEKCk9LLgoKPiA+ICsgICAgICAgICAgICAgICBp bnRlbF9hY3RpdmVfZW5naW5lczJbaV0uY2xhc3MgPSBjbGFzczsKPiA+ICsgICAgICAgICAgICAg ICBpbnRlbF9hY3RpdmVfZW5naW5lczJbaV0uaW5zdGFuY2UgPSBpbnN0YW5jZTsKPiA+ICsKPiA+ ICsgICAgICAgICAgICAgICBpZ3RfYXNzZXJ0KGFzcHJpbnRmKCZuYW1lLCAiJXMlZCIsCj4gPiAr ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbGFzc19uYW1lc1tjbGFzc10sIGlu c3RhbmNlKSA+IDApOwo+ID4gKyAgICAgICAgICAgICAgIGludGVsX2FjdGl2ZV9lbmdpbmVzMltp XS5uYW1lID0gbmFtZTsKPiA+ICsgICAgICAgfQo+ID4gKwo+ID4gKyAgICAgICAvKiAnMCcgdmFs dWUgc2VudGluZWwgKi8KPiBXaGljaCBiaXQ/Cj4gY2xhc3NfaW5zdGFuY2UgPSAoMCwgMCkgaXMg dmFsaWQgKHJjczApCj4gCj4gLyogVXNlIC5uYW1lPU5VTEwgYXMgYSBzZW50aW5lbCAqLwoKU3Vy ZS4KCj4gPiArI2lmbmRlZiBHRU1fUVVFUllfSAo+ID4gKyNkZWZpbmUgR0VNX1FVRVJZX0gKPiA+ ICsKPiA+ICsjaW5jbHVkZSAiaWd0X2d0LmgiCj4gCj4gRm9yIGludGVsX2V4ZWN1dGlvbl9lbmdp bmUyPwo+IAo+IEp1c3QgYSBmb3J3YXJkIGRlY2wgd2lsbCBkby4KPiAKPiA+ICt2b2lkIF9fc2V0 X2N0eF9lbmdpbmVfbWFwKGludCBmZCwgdWludDMyX3QgY3R4X2lkKTsKPiAKPiBPbmUgZGF5IHlv dSdsbCBmaW5kIGEgbW9yZSBmaXR0aW5nIG5hbWUuIEhpbnQsIHRoaXMgaXNuJ3QgcGFydCBvZiB0 aGUKPiAic2V0IiBpbmZyYXN0cnVjdHVyZS4KPiAKPiA+ICtib29sIGdlbV9jYW5fcXVlcnkodm9p ZCk7Cj4gPiArdm9pZCBnZW1fcXVlcnkoaW50IGZkLCBzdHJ1Y3QgZHJtX2k5MTVfcXVlcnkgKnEp Owo+ID4gKwo+ID4gK3ZvaWQgaWd0X3JlcXVpcmVfZ2VtX2VuZ2luZV9saXN0KGludCBmZCk7Cj4g PiArCj4gPiArZXh0ZXJuIHN0cnVjdCBpbnRlbF9leGVjdXRpb25fZW5naW5lMiAqaW50ZWxfYWN0 aXZlX2VuZ2luZXMyOwo+IAo+IEJ1dCBJJ20gdm90aW5nIHRoaXMgZXh0ZXJuIHNob3VsZCBiZSBp biBnZW1fZW5naW5lX3RvcG9sb2d5LltjaF0KCk9LLCBJIHdpbGwgYWRkIHRoZSBnZW1fZW5naW5l X3RvcG9sb2d5LltjaF0KClRoYW5rcywKQW5kaQpfX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fXwppZ3QtZGV2IG1haWxpbmcgbGlzdAppZ3QtZGV2QGxpc3RzLmZy ZWVkZXNrdG9wLm9yZwpodHRwczovL2xpc3RzLmZyZWVkZXNrdG9wLm9yZy9tYWlsbWFuL2xpc3Rp bmZvL2lndC1kZXY=