From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Message-ID: From: Caz Yokoyama Date: Wed, 27 Feb 2019 09:34:57 -0800 In-Reply-To: <20190227162950.17340-1-chris@chris-wilson.co.uk> References: <20190227162950.17340-1-chris@chris-wilson.co.uk> Mime-Version: 1.0 Subject: Re: [igt-dev] [PATCH i-g-t] lib: Incrementally mlock() List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , 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 , intel-gfx@lists.freedesktop.org Cc: igt-dev@lists.freedesktop.org List-ID: aW5saW5lLgoKdjIgcGF0Y2hlcyBmaXhlcwotIGFkZHJlc3MgY2FsY3VsYXRpb24gYnVnCi0gbm90 IGtpbGxlZApIb3dldmVyLCB0aGUgdGVzdCBkb2VzIG5vdCBydW5zIGZhc3Rlci4KLWNhegoKT24g V2VkLCAyMDE5LTAyLTI3IGF0IDE2OjI5ICswMDAwLCBDaHJpcyBXaWxzb24gd3JvdGU6Cj4gQXMg d2UgYWxyZWFkeSBoYXZlIHRoZSBwcmV2aW91cyBwb3J0aW9uIG9mIHRoZSBtbWFwIG1sb2NrZWQs IHdlIG9ubHkKPiBuZWVkIHRvIG1sb2NrKCkgdGhlIGZyZXNoIHBvcnRpb24gZm9yIHRlc3Rpbmcg YXZhaWxhYmxlIG1lbW9yeS4KPiAKPiB2MjogRml4dXAgdGhlIHVpbnQ2NF90IHBvaW50ZXIgYXJp dGhtZXRyaWMgYW5kIG9ubHkgdXNlIGEgc2luZ2xlIG1tYXAKPiB0bwo+IGF2b2lkIHN1YnNlcXVl bnQgbWxvY2sgZmFpbCAoZm9yIHJlYXNvbnMgdW5rbm93biwgYnV0IGJldCBvbiBtbS8pLgo+IAo+ IFNpZ25lZC1vZmYtYnk6IENocmlzIFdpbHNvbiA8Y2hyaXNAY2hyaXMtd2lsc29uLmNvLnVrPgo+ IENjOiBDYXogWW9rb3lhbWEgPENhei5Zb2tveWFtYUBpbnRlbC5jb20+Cj4gLS0tCj4gIGxpYi9p Z3RfYXV4LmggICAgICAgICAgICAgfCAgMiArLQo+ICBsaWIvaW50ZWxfb3MuYyAgICAgICAgICAg IHwgNDAgKysrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0KPiAtLS0tCj4gIHRlc3Rz L2V2aWN0aW9uX2NvbW1vbi5jICAgfCAxNyArKysrKysrKystLS0tLS0tLQo+ICB0ZXN0cy9pOTE1 L2k5MTVfc3VzcGVuZC5jIHwgMTcgKysrLS0tLS0tLS0tLS0tLS0KPiAgNCBmaWxlcyBjaGFuZ2Vk LCAzNSBpbnNlcnRpb25zKCspLCA0MSBkZWxldGlvbnMoLSkKPiAKPiBkaWZmIC0tZ2l0IGEvbGli L2lndF9hdXguaCBiL2xpYi9pZ3RfYXV4LmgKPiBpbmRleCBmYjAyYzAyNmEuLjA5YjYyNDZiZiAx MDA2NDQKPiAtLS0gYS9saWIvaWd0X2F1eC5oCj4gKysrIGIvbGliL2lndF9hdXguaAo+IEBAIC0x OTQsNyArMTk0LDcgQEAgdm9pZCBpbnRlbF9wdXJnZV92bV9jYWNoZXMoaW50IGZkKTsKPiAgdWlu dDY0X3QgaW50ZWxfZ2V0X2F2YWlsX3JhbV9tYih2b2lkKTsKPiAgdWludDY0X3QgaW50ZWxfZ2V0 X3RvdGFsX3JhbV9tYih2b2lkKTsKPiAgdWludDY0X3QgaW50ZWxfZ2V0X3RvdGFsX3N3YXBfbWIo dm9pZCk7Cj4gLXNpemVfdCBpbnRlbF9nZXRfdG90YWxfcGlubmFibGVfbWVtKHZvaWQpOwo+ICt2 b2lkICppbnRlbF9nZXRfdG90YWxfcGlubmFibGVfbWVtKHNpemVfdCAqcGlubmVkKTsKPiAgCj4g IGludCBfX2ludGVsX2NoZWNrX21lbW9yeSh1aW50NjRfdCBjb3VudCwgdWludDY0X3Qgc2l6ZSwg dW5zaWduZWQKPiBtb2RlLAo+ICAJCQkgdWludDY0X3QgKm91dF9yZXF1aXJlZCwgdWludDY0X3Qg Km91dF90b3RhbCk7Cj4gZGlmZiAtLWdpdCBhL2xpYi9pbnRlbF9vcy5jIGIvbGliL2ludGVsX29z LmMKPiBpbmRleCBlMWUzMWUyMzAuLmRkOTNiZWExYSAxMDA2NDQKPiAtLS0gYS9saWIvaW50ZWxf b3MuYwo+ICsrKyBiL2xpYi9pbnRlbF9vcy5jCj4gQEAgLTIyNywxMSArMjI3LDkgQEAgaW50ZWxf Z2V0X3RvdGFsX3N3YXBfbWIodm9pZCkKPiAgICoKPiAgICogUmV0dXJuczogQW1vdW50IG9mIG1l bW9yeSB0aGF0IGNhbiBiZSBzYWZlbHkgcGlubmVkLCBpbiBieXRlcy4KPiAgICovCj4gLXNpemVf dAo+IC1pbnRlbF9nZXRfdG90YWxfcGlubmFibGVfbWVtKHZvaWQpCj4gK3ZvaWQgKmludGVsX2dl dF90b3RhbF9waW5uYWJsZV9tZW0oc2l6ZV90ICp0b3RhbCkKPiAgewo+ICAJdWludDY0X3QgKmNh bl9tbG9jaywgcGluLCBhdmFpbDsKPiAtCXNpemVfdCByZXQ7Cj4gIAo+ICAJcGluID0gKGludGVs X2dldF90b3RhbF9yYW1fbWIoKSArIDEpIDw8IDIwOwo+ICAJYXZhaWwgPSAoaW50ZWxfZ2V0X2F2 YWlsX3JhbV9tYigpICsgMSkgPDwgMjA7Cj4gQEAgLTI0NSwzNCArMjQzLDQwIEBAIGludGVsX2dl dF90b3RhbF9waW5uYWJsZV9tZW0odm9pZCkKPiAgCSAqLwo+ICAJKmNhbl9tbG9jayA9IChhdmFp bCA+PiAxKSArIChhdmFpbCA+PiAyKTsKPiAgCWlmIChtbG9jayhjYW5fbWxvY2ssICpjYW5fbWxv Y2spKSB7Cj4gLQkJKmNhbl9tbG9jayA9IDA7Cj4gLQkJZ290byBvdXQ7Cj4gKwkJbXVubWFwKGNh bl9tbG9jaywgcGluKTsKPiArCQlyZXR1cm4gTUFQX0ZBSUxFRDsKPiAgCX0KPiAgCj4gIAlmb3Ig KHVpbnQ2NF90IGluYyA9IDEwMjQgPDwgMjA7IGluYyA+PSA0IDw8IDEwOyBpbmMgPj49IDIpIHsK PiAtCQlpZ3RfZGVidWcoIlRlc3RpbmcgbWxvY2sgJSciUFJJdTY0IiBCICglJyJQUkl1NjQiCj4g TWlCKVxuIiwKPiAtCQkJICAqY2FuX21sb2NrLCAqY2FuX21sb2NrID4+IDIwKTsKPiArCQl1aW50 NjRfdCBsb2NrZWQgPSAqY2FuX21sb2NrOwo+ICsKPiArCQlpZ3RfZGVidWcoIlRlc3RpbmcgbWxv Y2sgJSciUFJJdTY0IkIgKCUnIlBSSXU2NCJNaUIpICsKPiAlJyJQUkl1NjQiQlxuIiwKPiArCQkJ ICBsb2NrZWQsIGxvY2tlZCA+PiAyMCwgaW5jKTsKPiAgCj4gIAkJaWd0X2ZvcmsoY2hpbGQsIDEp IHsKPiAtCQkJZm9yICh1aW50NjRfdCBieXRlcyA9ICpjYW5fbWxvY2s7Cj4gLQkJCSAgICAgYnl0 ZXMgPD0gcGluOwo+IC0JCQkgICAgIGJ5dGVzICs9IGluYykgewo+IC0JCQkJaWYgKG1sb2NrKGNh bl9tbG9jaywgYnl0ZXMpKQo+ICsJCQl1aW50NjRfdCBieXRlcyA9ICpjYW5fbWxvY2s7Cj4gKwo+ ICsJCQl3aGlsZSAoYnl0ZXMgPD0gcGluKSB7Cj4gKwkJCQlpZiAobWxvY2soKHZvaWQgKiljYW5f bWxvY2sgKyBieXRlcywKPiBpbmMpKQo+ICAJCQkJCWJyZWFrOwo+ICAKPiAtCQkJCSpjYW5fbWxv Y2sgPSBieXRlczsKPiArCQkJCSpjYW5fbWxvY2sgPSBieXRlcyArPSBpbmM7Cj4gIAkJCQlfX3N5 bmNfc3luY2hyb25pemUoKTsKPiAgCQkJfQo+ICAJCX0KPiAgCQlfX2lndF93YWl0Y2hpbGRyZW4o KTsKPiAtCQlpZ3RfYXNzZXJ0KCFtbG9jayhjYW5fbWxvY2ssICpjYW5fbWxvY2spKTsKPiAtCX0K PiAgCj4gLW91dDoKPiAtCXJldCA9ICpjYW5fbWxvY2s7Cj4gLQltdW5tYXAoY2FuX21sb2NrLCBw aW4pOwo+ICsJCWlmICgqY2FuX21sb2NrID4gbG9ja2VkICsgaW5jKSB7IC8qIFdlaXJkIGJpdCBv ZiBtbS8KPiBsb3JlICovCj4gKwkJCSpjYW5fbWxvY2sgLT0gaW5jOwo+IApBcmUgeW91IGFibGUg dG8gZXhwbGFpbiB0aGlzPyBJcyB0aGlzIGZvciB3aGVuIGNoaWxkIGlzIGtpbGxlZCBkdXJpbmcK dXBkYXRpbmcgKmNhbl9tbG9jaz8KCklmIHRoZSBjb25kaXRpb24gaXMgbm90IG1ldCwgcGFyZW50 IGRvZXMgbm90IG1sb2NrLiBJcyB0aGlzIE9LPwoKPiArCQkJaWd0X2RlYnVnKCJDbGFpbWluZyBt bG9jayAlJyJQUkl1NjQiQgo+ICglJyJQUkl1NjQiTWlCKVxuIiwKPiArCQkJCSAgKmNhbl9tbG9j aywgKmNhbl9tbG9jayA+PiAyMCk7Cj4gKwkJCWlndF9hc3NlcnQoIW1sb2NrKCh2b2lkICopY2Fu X21sb2NrICsgbG9ja2VkLAo+IAo+ICsJCQkJCSAgKmNhbl9tbG9jayAtIGxvY2tlZCkpOwo+ICsJ CX0KPiArCX0KPiAgCj4gLQlyZXR1cm4gcmV0Owo+ICsJKnRvdGFsID0gcGluOwo+IAoqdG90YWwg PSAqY2FuX21sb2NrPwoKQWxzbyB5b3UgZG9uJ3QgdW5tYXAuIEkgbWVhbiBtYXAgYW5kIHVubWFw IGFyZSBub3QgcGFpcmVkIGluIHRoZSBzYW1lCmZ1bmN0aW9uLiBOb3QgZWxlZ2FudC4gQnV0IGMn ZXN0IGxhIHZpZS4KLWNhegoKPiArCXJldHVybiBjYW5fbWxvY2s7Cj4gIH0KPiAgCj4gIHN0YXRp YyB1aW50NjRfdCB2ZnNfZmlsZV9tYXgodm9pZCkKPiBkaWZmIC0tZ2l0IGEvdGVzdHMvZXZpY3Rp b25fY29tbW9uLmMgYi90ZXN0cy9ldmljdGlvbl9jb21tb24uYwo+IGluZGV4IDMyMTc3MmJhNy4u YTNiOWU0MTY3IDEwMDY0NAo+IC0tLSBhL3Rlc3RzL2V2aWN0aW9uX2NvbW1vbi5jCj4gKysrIGIv dGVzdHMvZXZpY3Rpb25fY29tbW9uLmMKPiBAQCAtMTMzLDIzICsxMzMsMjQgQEAgc3RhdGljIHZv aWQgbWxvY2tlZF9ldmljdGlvbnMoaW50IGZkLCBzdHJ1Y3QKPiBpZ3RfZXZpY3Rpb25fdGVzdF9v cHMgKm9wcywKPiAgCQkJICAgICAgdWludDY0X3Qgc3VyZmFjZV9zaXplLAo+ICAJCQkgICAgICB1 aW50NjRfdCBzdXJmYWNlX2NvdW50KQo+ICB7Cj4gKwl1aW50NjRfdCBzeiwgcGluLCB0b3RhbDsK PiAgCXZvaWQgKm1lbTsKPiAtCXVpbnQ2NF90IHN6LCBwaW5fdG90YWw7Cj4gIAo+ICAJaW50ZWxf cmVxdWlyZV9tZW1vcnkoc3VyZmFjZV9jb3VudCwgc3VyZmFjZV9zaXplLCBDSEVDS19SQU0pOwo+ ICAKPiAtCXN6ID0gc3VyZmFjZV9zaXplKnN1cmZhY2VfY291bnQ7Cj4gLQlwaW5fdG90YWwgPSBp bnRlbF9nZXRfdG90YWxfcGlubmFibGVfbWVtKCk7Cj4gLQlpZ3RfcmVxdWlyZShwaW5fdG90YWwg PiBzeik7Cj4gLQo+IC0JbWVtID0gbW1hcChOVUxMLCBwaW5fdG90YWwsIFBST1RfUkVBRCwgTUFQ X1NIQVJFRCB8IE1BUF9BTk9OLAo+IC0xLCAwKTsKPiArCW1lbSA9IGludGVsX2dldF90b3RhbF9w aW5uYWJsZV9tZW0oJnRvdGFsKTsKPiAgCWlndF9hc3NlcnQobWVtICE9IE1BUF9GQUlMRUQpOwo+ ICsJcGluID0gKih1aW50NjRfdCAqKW1lbTsKPiArCWlndF9hc3NlcnQoIW11bmxvY2sobWVtLCBw aW4pKTsKPiArCj4gKwlzeiA9IHN1cmZhY2Vfc2l6ZSAqIHN1cmZhY2VfY291bnQ7Cj4gKwlpZ3Rf cmVxdWlyZShwaW4gPiBzeik7Cj4gIAo+ICAJaWd0X2ZvcmsoY2hpbGQsIDEpIHsKPiAgCQl1aW50 MzJfdCAqYm87Cj4gIAkJdWludDY0X3QgbjsKPiAgCQlpbnQgcmV0Owo+IC0JCXNpemVfdCBsb2Nr ID0gcGluX3RvdGFsIC0gc3o7Cj4gKwkJc2l6ZV90IGxvY2sgPSBwaW4gLSBzejsKPiAgCj4gIAkJ Ym8gPSBtYWxsb2Moc3VyZmFjZV9jb3VudCAqIHNpemVvZigqYm8pKTsKPiAgCQlpZ3RfYXNzZXJ0 KGJvKTsKPiBAQCAtMTg2LDcgKzE4Nyw3IEBAIHN0YXRpYyB2b2lkIG1sb2NrZWRfZXZpY3Rpb25z KGludCBmZCwgc3RydWN0Cj4gaWd0X2V2aWN0aW9uX3Rlc3Rfb3BzICpvcHMsCj4gIAl9Cj4gIAlp Z3Rfd2FpdGNoaWxkcmVuKCk7Cj4gIAo+IC0JbXVubWFwKG1lbSwgcGluX3RvdGFsKTsKPiArCW11 bm1hcChtZW0sIHRvdGFsKTsKPiAgfQo+ICAKPiAgc3RhdGljIGludCBzd2FwcGluZ19ldmljdGlv bnMoaW50IGZkLCBzdHJ1Y3QgaWd0X2V2aWN0aW9uX3Rlc3Rfb3BzCj4gKm9wcywKPiBkaWZmIC0t Z2l0IGEvdGVzdHMvaTkxNS9pOTE1X3N1c3BlbmQuYyBiL3Rlc3RzL2k5MTUvaTkxNV9zdXNwZW5k LmMKPiBpbmRleCA4NGNiM2I0OTAuLmNkN2NmOTY3NSAxMDA2NDQKPiAtLS0gYS90ZXN0cy9pOTE1 L2k5MTVfc3VzcGVuZC5jCj4gKysrIGIvdGVzdHMvaTkxNS9pOTE1X3N1c3BlbmQuYwo+IEBAIC0x NjMsMjUgKzE2MywxNCBAQCB0ZXN0X3N5c2ZzX3JlYWRlcihib29sIGhpYmVybmF0ZSkKPiAgc3Rh dGljIHZvaWQKPiAgdGVzdF9zaHJpbmsoaW50IGZkLCB1bnNpZ25lZCBpbnQgbW9kZSkKPiAgewo+ IC0Jdm9pZCAqbWVtOwo+ICAJc2l6ZV90IHNpemU7Cj4gKwl2b2lkICptZW07Cj4gIAo+ICAJZ2Vt X3F1aWVzY2VudF9ncHUoZmQpOwo+ICAJaW50ZWxfcHVyZ2Vfdm1fY2FjaGVzKGZkKTsKPiAgCj4g LQlzaXplID0gaW50ZWxfZ2V0X3RvdGFsX3Bpbm5hYmxlX21lbSgpOwo+IC0JaWd0X3JlcXVpcmUo c2l6ZSA+IDY0IDw8IDIwKTsKPiAtCXNpemUgLT0gNjQgPDwgMjA7Cj4gLQo+IC0JbWVtID0gbW1h cChOVUxMLCBzaXplLCBQUk9UX1JFQUQsIE1BUF9TSEFSRUQgfCBNQVBfQU5PTiwgLTEsCj4gMCk7 Cj4gLQo+IC0JaW50ZWxfcHVyZ2Vfdm1fY2FjaGVzKGZkKTsKPiAtCj4gLQlpZ3RfZGVidWcoIkxv Y2tpbmcgJSd6dSBCICglJ3p1IE1pQilcbiIsCj4gLQkJICBzaXplLCBzaXplID4+IDIwKTsKPiAt CWlndF9hc3NlcnQoIW1sb2NrKG1lbSwgc2l6ZSkpOwo+IC0JaWd0X2luZm8oIkxvY2tlZCAlJ3p1 IEIgKCUnenUgTWlCKVxuIiwKPiAtCQkgc2l6ZSwgc2l6ZSA+PiAyMCk7Cj4gKwltZW0gPSBpbnRl bF9nZXRfdG90YWxfcGlubmFibGVfbWVtKCZzaXplKTsKPiArCWlndF9hc3NlcnQobWVtICE9IE1B UF9GQUlMRUQpOwo+ICAKPiAgCWludGVsX3B1cmdlX3ZtX2NhY2hlcyhmZCk7Cj4gIAlpZ3Rfc3lz dGVtX3N1c3BlbmRfYXV0b3Jlc3VtZShtb2RlLCBTVVNQRU5EX1RFU1RfTk9ORSk7CgpfX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwppZ3QtZGV2IG1haWxpbmcg bGlzdAppZ3QtZGV2QGxpc3RzLmZyZWVkZXNrdG9wLm9yZwpodHRwczovL2xpc3RzLmZyZWVkZXNr dG9wLm9yZy9tYWlsbWFuL2xpc3RpbmZvL2lndC1kZXY=