From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mga06.intel.com (mga06.intel.com [134.134.136.31]) by gabe.freedesktop.org (Postfix) with ESMTPS id 44E1E6E2D1 for ; Wed, 9 Jun 2021 13:16:29 +0000 (UTC) From: Andrzej Turko Date: Wed, 9 Jun 2021 15:15:22 +0200 Message-Id: <20210609131522.1794-4-andrzej.turko@linux.intel.com> In-Reply-To: <20210609131522.1794-1-andrzej.turko@linux.intel.com> References: <20210609131522.1794-1-andrzej.turko@linux.intel.com> MIME-Version: 1.0 Subject: [igt-dev] [PATCH i-g-t 3/3] lib/intel_allocator: Add support for regions of allocation 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: igt-dev@lists.freedesktop.org List-ID: RW5hYmxlIGNyZWF0aW5nIGFsbG9jYXRvcnMgbWFuYWdpbmcgb25seSBhIGdpdmVuIGludGVydmFs Cm9mIGF2YWlsYWJsZSBndHQgZm9yIGFsbCBpbXBsZW1lbnRhdGlvbnMsIG5vdCBqdXN0IHRoZQpz aW1wbGUgYWxsb2NhdG9yLiBBZGRpdGluYWxseSwgc2V0IGEgdW5pdmVyc2FsIGxvd2VyCmJvdW5k IG9uIGFsaWdubWVudCB0byA0MDk2LgoKU2lnbmVkLW9mZi1ieTogQW5kcnplaiBUdXJrbyA8YW5k cnplai50dXJrb0BsaW51eC5pbnRlbC5jb20+CkNjOiBaYmlnbmlldyBLZW1wY3p5xYRza2kgPHpi aWduaWV3LmtlbXBjenluc2tpQGludGVsLmNvbT4KLS0tCiBsaWIvaW50ZWxfYWxsb2NhdG9yLmMg ICAgICAgIHwgMTQgKysrKysrKysrLS0tLS0KIGxpYi9pbnRlbF9hbGxvY2F0b3JfcmFuZG9tLmMg fCAzMCArKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0KIGxpYi9pbnRlbF9hbGxvY2F0b3Jf cmVsb2MuYyAgfCAxOCArKysrKysrKysrKystLS0tLS0KIGxpYi9pbnRlbF9hbGxvY2F0b3Jfc2lt cGxlLmMgfCAgMSAtCiA0IGZpbGVzIGNoYW5nZWQsIDQwIGluc2VydGlvbnMoKyksIDIzIGRlbGV0 aW9ucygtKQoKZGlmZiAtLWdpdCBhL2xpYi9pbnRlbF9hbGxvY2F0b3IuYyBiL2xpYi9pbnRlbF9h bGxvY2F0b3IuYwppbmRleCBhNzhhNjYxYjEuLjgyODc1MjI0ZCAxMDA2NDQKLS0tIGEvbGliL2lu dGVsX2FsbG9jYXRvci5jCisrKyBiL2xpYi9pbnRlbF9hbGxvY2F0b3IuYwpAQCAtNjQsOCArNjQs MTAgQEAgc3RydWN0IGhhbmRsZV9lbnRyeSB7CiAJc3RydWN0IGFsbG9jYXRvciAqYWw7CiB9Owog Ci1zdHJ1Y3QgaW50ZWxfYWxsb2NhdG9yICppbnRlbF9hbGxvY2F0b3JfcmVsb2NfY3JlYXRlKGlu dCBmZCwgdWludDY0X3QgZW5kKTsKLXN0cnVjdCBpbnRlbF9hbGxvY2F0b3IgKmludGVsX2FsbG9j YXRvcl9yYW5kb21fY3JlYXRlKGludCBmZCwgdWludDY0X3QgZW5kKTsKK3N0cnVjdCBpbnRlbF9h bGxvY2F0b3IgKgoraW50ZWxfYWxsb2NhdG9yX3JlbG9jX2NyZWF0ZShpbnQgZmQsIHVpbnQ2NF90 IHN0YXJ0LCB1aW50NjRfdCBlbmQpOworc3RydWN0IGludGVsX2FsbG9jYXRvciAqCitpbnRlbF9h bGxvY2F0b3JfcmFuZG9tX2NyZWF0ZShpbnQgZmQsIHVpbnQ2NF90IHN0YXJ0LCB1aW50NjRfdCBl bmQpOwogc3RydWN0IGludGVsX2FsbG9jYXRvciAqCiBpbnRlbF9hbGxvY2F0b3Jfc2ltcGxlX2Ny ZWF0ZShpbnQgZmQsIHVpbnQ2NF90IHN0YXJ0LCB1aW50NjRfdCBlbmQsCiAJCQkgICAgICBlbnVt IGFsbG9jYXRvcl9zdHJhdGVneSBzdHJhdGVneSk7CkBAIC0yOTEsMTAgKzI5MywxMCBAQCBzdGF0 aWMgc3RydWN0IGludGVsX2FsbG9jYXRvciAqaW50ZWxfYWxsb2NhdG9yX2NyZWF0ZShpbnQgZmQs CiAJCQkgICAgICJXZSBjYW5ub3QgdXNlIE5PTkUgYWxsb2NhdG9yXG4iKTsKIAkJYnJlYWs7CiAJ Y2FzZSBJTlRFTF9BTExPQ0FUT1JfUkVMT0M6Ci0JCWlhbCA9IGludGVsX2FsbG9jYXRvcl9yZWxv Y19jcmVhdGUoZmQsIGVuZCk7CisJCWlhbCA9IGludGVsX2FsbG9jYXRvcl9yZWxvY19jcmVhdGUo ZmQsIHN0YXJ0LCBlbmQpOwogCQlicmVhazsKIAljYXNlIElOVEVMX0FMTE9DQVRPUl9SQU5ET006 Ci0JCWlhbCA9IGludGVsX2FsbG9jYXRvcl9yYW5kb21fY3JlYXRlKGZkLCBlbmQpOworCQlpYWwg PSBpbnRlbF9hbGxvY2F0b3JfcmFuZG9tX2NyZWF0ZShmZCwgc3RhcnQsIGVuZCk7CiAJCWJyZWFr OwogCWNhc2UgSU5URUxfQUxMT0NBVE9SX1NJTVBMRToKIAkJaWFsID0gaW50ZWxfYWxsb2NhdG9y X3NpbXBsZV9jcmVhdGUoZmQsIHN0YXJ0LCBlbmQsCkBAIC0xMDc4LDEwICsxMDgwLDEyIEBAIHVp bnQ2NF90IF9faW50ZWxfYWxsb2NhdG9yX2FsbG9jKHVpbnQ2NF90IGFsbG9jYXRvcl9oYW5kbGUs IHVpbnQzMl90IGhhbmRsZSwKIAkJCQkgLmFsbG9jYXRvcl9oYW5kbGUgPSBhbGxvY2F0b3JfaGFu ZGxlLAogCQkJCSAuYWxsb2MuaGFuZGxlID0gaGFuZGxlLAogCQkJCSAuYWxsb2Muc2l6ZSA9IHNp emUsCi0JCQkJIC5hbGxvYy5hbGlnbm1lbnQgPSBhbGlnbm1lbnQsCiAJCQkJIC5hbGxvYy5zdHJh dGVneSA9IHN0cmF0ZWd5IH07CiAJc3RydWN0IGFsbG9jX3Jlc3AgcmVzcDsKIAorCWlndF9hc3Nl cnQoKGFsaWdubWVudCAmIChhbGlnbm1lbnQtMSkpID09IDApOworCXJlcS5hbGxvYy5hbGlnbm1l bnQgPSBtYXgoYWxpZ25tZW50LCAxIDw8IDEyKTsKKwogCWlndF9hc3NlcnQoaGFuZGxlX3JlcXVl c3QoJnJlcSwgJnJlc3ApID09IDApOwogCWlndF9hc3NlcnQocmVzcC5yZXNwb25zZV90eXBlID09 IFJFU1BfQUxMT0MpOwogCmRpZmYgLS1naXQgYS9saWIvaW50ZWxfYWxsb2NhdG9yX3JhbmRvbS5j IGIvbGliL2ludGVsX2FsbG9jYXRvcl9yYW5kb20uYwppbmRleCA4NWFjMmNmNGUuLjFkMjk2OTYx OCAxMDA2NDQKLS0tIGEvbGliL2ludGVsX2FsbG9jYXRvcl9yYW5kb20uYworKysgYi9saWIvaW50 ZWxfYWxsb2NhdG9yX3JhbmRvbS5jCkBAIC0xMCwxMiArMTAsMTIgQEAKICNpbmNsdWRlICJpZ3Rf cmFuZC5oIgogI2luY2x1ZGUgImludGVsX2FsbG9jYXRvci5oIgogCi1zdHJ1Y3QgaW50ZWxfYWxs b2NhdG9yICppbnRlbF9hbGxvY2F0b3JfcmFuZG9tX2NyZWF0ZShpbnQgZmQsIHVpbnQ2NF90IGVu ZCk7CitzdHJ1Y3QgaW50ZWxfYWxsb2NhdG9yICoKK2ludGVsX2FsbG9jYXRvcl9yYW5kb21fY3Jl YXRlKGludCBmZCwgdWludDY0X3Qgc3RhcnQsIHVpbnQ2NF90IGVuZCk7CiAKIHN0cnVjdCBpbnRl bF9hbGxvY2F0b3JfcmFuZG9tIHsKLQl1aW50NjRfdCBiaWFzOwogCXVpbnQzMl90IHBybmc7Ci0J dWludDY0X3QgYWRkcmVzc19tYXNrOworCXVpbnQ2NF90IHNpemVfbWFzazsKIAl1aW50NjRfdCBz dGFydDsKIAl1aW50NjRfdCBlbmQ7CiAKQEAgLTIzLDYgKzIzLDcgQEAgc3RydWN0IGludGVsX2Fs bG9jYXRvcl9yYW5kb20gewogCXVpbnQ2NF90IGFsbG9jYXRlZF9vYmplY3RzOwogfTsKIAorLyog S2VlcCB0aGUgbG93IDI1NmsgY2xlYXIsIGZvciBuZWdhdGl2ZSBkZWx0YXMgKi8KICNkZWZpbmUg QklBUyAyNTYgPDwgMTAKIAogc3RhdGljIHZvaWQgaW50ZWxfYWxsb2NhdG9yX3JhbmRvbV9nZXRf YWRkcmVzc19yYW5nZShzdHJ1Y3QgaW50ZWxfYWxsb2NhdG9yICppYWwsCkBAIC00NSwxNiArNDYs MjIgQEAgc3RhdGljIHVpbnQ2NF90IGludGVsX2FsbG9jYXRvcl9yYW5kb21fYWxsb2Moc3RydWN0 IGludGVsX2FsbG9jYXRvciAqaWFsLAogewogCXN0cnVjdCBpbnRlbF9hbGxvY2F0b3JfcmFuZG9t ICppYWxyID0gaWFsLT5wcml2OwogCXVpbnQ2NF90IG9mZnNldDsKKwlpbnQgY250ID0gMDsKIAog CSh2b2lkKSBoYW5kbGU7CiAJKHZvaWQpIHN0cmF0ZWd5OwogCiAJLyogcmFuZG9taXplIHRoZSBh ZGRyZXNzLCB3ZSB0cnkgdG8gYXZvaWQgcmVsb2NhdGlvbnMgKi8KIAlkbyB7CisJCS8qIHRoZSBv YmplY3Qgd29uJ3QgZml0IGluIHRoZSBhZGRyZXNzIHJhbmdlICovCisJCWlmIChjbnQgPiAzKSBy ZXR1cm4gQUxMT0NfSU5WQUxJRF9BRERSRVNTOworCiAJCW9mZnNldCA9IGhhcnNfcGV0cnVza2Ff ZjU0XzFfcmFuZG9tNjQoJmlhbHItPnBybmcpOwotCQlvZmZzZXQgKz0gaWFsci0+YmlhczsgLyog S2VlcCB0aGUgbG93IDI1NmsgY2xlYXIsIGZvciBuZWdhdGl2ZSBkZWx0YXMgKi8KLQkJb2Zmc2V0 ICY9IGlhbHItPmFkZHJlc3NfbWFzazsKLQkJb2Zmc2V0ICY9IH4oYWxpZ25tZW50IC0gMSk7CisJ CWlmIChjbnQrKyA9PSAzKSBvZmZzZXQgPSAwOworCisJCW9mZnNldCAmPSBpYWxyLT5zaXplX21h c2s7CisJCW9mZnNldCArPSBpYWxyLT5zdGFydDsKKwkJb2Zmc2V0ID0gQUxJR04ob2Zmc2V0LCBh bGlnbm1lbnQpOwogCX0gd2hpbGUgKG9mZnNldCArIHNpemUgPiBpYWxyLT5lbmQpOwogCiAJaWFs ci0+YWxsb2NhdGVkX29iamVjdHMrKzsKQEAgLTE0NSw3ICsxNTIsOCBAQCBzdGF0aWMgYm9vbCBp bnRlbF9hbGxvY2F0b3JfcmFuZG9tX2lzX2VtcHR5KHN0cnVjdCBpbnRlbF9hbGxvY2F0b3IgKmlh bCkKIAlyZXR1cm4gIWlhbHItPmFsbG9jYXRlZF9vYmplY3RzOwogfQogCi1zdHJ1Y3QgaW50ZWxf YWxsb2NhdG9yICppbnRlbF9hbGxvY2F0b3JfcmFuZG9tX2NyZWF0ZShpbnQgZmQsIHVpbnQ2NF90 IGVuZCkKK3N0cnVjdCBpbnRlbF9hbGxvY2F0b3IgKgoraW50ZWxfYWxsb2NhdG9yX3JhbmRvbV9j cmVhdGUoaW50IGZkLCB1aW50NjRfdCBzdGFydCwgdWludDY0X3QgZW5kKQogewogCXN0cnVjdCBp bnRlbF9hbGxvY2F0b3IgKmlhbDsKIAlzdHJ1Y3QgaW50ZWxfYWxsb2NhdG9yX3JhbmRvbSAqaWFs cjsKQEAgLTE3MCwxMCArMTc4LDEwIEBAIHN0cnVjdCBpbnRlbF9hbGxvY2F0b3IgKmludGVsX2Fs bG9jYXRvcl9yYW5kb21fY3JlYXRlKGludCBmZCwgdWludDY0X3QgZW5kKQogCWlndF9hc3NlcnQo aWFsLT5wcml2KTsKIAlpYWxyLT5wcm5nID0gKHVpbnQzMl90KSB0b191c2VyX3BvaW50ZXIoaWFs KTsKIAotCWlndF9hc3NlcnQoQklBUyA8IGVuZCk7Ci0JaWFsci0+YWRkcmVzc19tYXNrID0gKDFV TEwgPDwgKGlndF9mbHMoZW5kKSAtIDEpKSAtIDE7Ci0JaWFsci0+YmlhcyA9IEJJQVM7Ci0JaWFs ci0+c3RhcnQgPSBpYWxyLT5iaWFzOworCXN0YXJ0ID0gbWF4KHN0YXJ0LCBCSUFTKTsKKwlpZ3Rf YXNzZXJ0KHN0YXJ0IDwgZW5kKTsKKwlpYWxyLT5zaXplX21hc2sgPSAoMVVMTCA8PCAoaWd0X2Zs cyhlbmQgLSBzdGFydCkgLSAxKSkgLSAxOworCWlhbHItPnN0YXJ0ID0gc3RhcnQ7CiAJaWFsci0+ ZW5kID0gZW5kOwogCiAJaWFsci0+YWxsb2NhdGVkX29iamVjdHMgPSAwOwpkaWZmIC0tZ2l0IGEv bGliL2ludGVsX2FsbG9jYXRvcl9yZWxvYy5jIGIvbGliL2ludGVsX2FsbG9jYXRvcl9yZWxvYy5j CmluZGV4IDcwM2QwNTRjNi4uMjRiMmFlZWJjIDEwMDY0NAotLS0gYS9saWIvaW50ZWxfYWxsb2Nh dG9yX3JlbG9jLmMKKysrIGIvbGliL2ludGVsX2FsbG9jYXRvcl9yZWxvYy5jCkBAIC0xMCwxMCAr MTAsMTAgQEAKICNpbmNsdWRlICJpZ3RfcmFuZC5oIgogI2luY2x1ZGUgImludGVsX2FsbG9jYXRv ci5oIgogCi1zdHJ1Y3QgaW50ZWxfYWxsb2NhdG9yICppbnRlbF9hbGxvY2F0b3JfcmVsb2NfY3Jl YXRlKGludCBmZCwgdWludDY0X3QgZW5kKTsKK3N0cnVjdCBpbnRlbF9hbGxvY2F0b3IgKgoraW50 ZWxfYWxsb2NhdG9yX3JlbG9jX2NyZWF0ZShpbnQgZmQsIHVpbnQ2NF90IHN0YXJ0LCB1aW50NjRf dCBlbmQpOwogCiBzdHJ1Y3QgaW50ZWxfYWxsb2NhdG9yX3JlbG9jIHsKLQl1aW50NjRfdCBiaWFz OwogCXVpbnQzMl90IHBybmc7CiAJdWludDY0X3Qgc3RhcnQ7CiAJdWludDY0X3QgZW5kOwpAQCAt MjMsNiArMjMsNyBAQCBzdHJ1Y3QgaW50ZWxfYWxsb2NhdG9yX3JlbG9jIHsKIAl1aW50NjRfdCBh bGxvY2F0ZWRfb2JqZWN0czsKIH07CiAKKy8qIEtlZXAgdGhlIGxvdyAyNTZrIGNsZWFyLCBmb3Ig bmVnYXRpdmUgZGVsdGFzICovCiAjZGVmaW5lIEJJQVMgMjU2IDw8IDEwCiAKIHN0YXRpYyB2b2lk IGludGVsX2FsbG9jYXRvcl9yZWxvY19nZXRfYWRkcmVzc19yYW5nZShzdHJ1Y3QgaW50ZWxfYWxs b2NhdG9yICppYWwsCkBAIC00OSwxMyArNTAsMTYgQEAgc3RhdGljIHVpbnQ2NF90IGludGVsX2Fs bG9jYXRvcl9yZWxvY19hbGxvYyhzdHJ1Y3QgaW50ZWxfYWxsb2NhdG9yICppYWwsCiAJKHZvaWQp IGhhbmRsZTsKIAkodm9pZCkgc3RyYXRlZ3k7CiAKLQlhbGlnbm1lbnQgPSBtYXgoYWxpZ25tZW50 LCA0MDk2KTsKIAlhbGlnbmVkX29mZnNldCA9IEFMSUdOKGlhbHItPm9mZnNldCwgYWxpZ25tZW50 KTsKIAogCS8qIENoZWNrIHdlIHdvbid0IGV4Y2VlZCBlbmQgKi8KIAlpZiAoYWxpZ25lZF9vZmZz ZXQgKyBzaXplID4gaWFsci0+ZW5kKQogCQlhbGlnbmVkX29mZnNldCA9IEFMSUdOKGlhbHItPnN0 YXJ0LCBhbGlnbm1lbnQpOwogCisJLyogQ2hlY2sgdGhhdCB0aGUgb2JqZWN0IGZpdHMgaW4gdGhl IGFkZHJlc3MgcmFuZ2UgKi8KKwlpZiAoYWxpZ25lZF9vZmZzZXQgKyBzaXplID4gaWFsci0+ZW5k KQorCQlyZXR1cm4gQUxMT0NfSU5WQUxJRF9BRERSRVNTOworCiAJb2Zmc2V0ID0gYWxpZ25lZF9v ZmZzZXQ7CiAJaWFsci0+b2Zmc2V0ID0gb2Zmc2V0ICsgc2l6ZTsKIAlpYWxyLT5hbGxvY2F0ZWRf b2JqZWN0cysrOwpAQCAtMTQ2LDcgKzE1MCw4IEBAIHN0YXRpYyBib29sIGludGVsX2FsbG9jYXRv cl9yZWxvY19pc19lbXB0eShzdHJ1Y3QgaW50ZWxfYWxsb2NhdG9yICppYWwpCiAJcmV0dXJuICFp YWxyLT5hbGxvY2F0ZWRfb2JqZWN0czsKIH0KIAotc3RydWN0IGludGVsX2FsbG9jYXRvciAqaW50 ZWxfYWxsb2NhdG9yX3JlbG9jX2NyZWF0ZShpbnQgZmQsIHVpbnQ2NF90IGVuZCkKK3N0cnVjdCBp bnRlbF9hbGxvY2F0b3IgKgoraW50ZWxfYWxsb2NhdG9yX3JlbG9jX2NyZWF0ZShpbnQgZmQsIHVp bnQ2NF90IHN0YXJ0LCB1aW50NjRfdCBlbmQpCiB7CiAJc3RydWN0IGludGVsX2FsbG9jYXRvciAq aWFsOwogCXN0cnVjdCBpbnRlbF9hbGxvY2F0b3JfcmVsb2MgKmlhbHI7CkBAIC0xNzEsOCArMTc2 LDkgQEAgc3RydWN0IGludGVsX2FsbG9jYXRvciAqaW50ZWxfYWxsb2NhdG9yX3JlbG9jX2NyZWF0 ZShpbnQgZmQsIHVpbnQ2NF90IGVuZCkKIAlpZ3RfYXNzZXJ0KGlhbC0+cHJpdik7CiAJaWFsci0+ cHJuZyA9ICh1aW50MzJfdCkgdG9fdXNlcl9wb2ludGVyKGlhbCk7CiAKLQlpYWxyLT5iaWFzID0g aWFsci0+b2Zmc2V0ID0gQklBUzsKLQlpYWxyLT5zdGFydCA9IGlhbHItPmJpYXM7CisJc3RhcnQg PSBtYXgoc3RhcnQsIEJJQVMpOworCWlndF9hc3NlcnQoc3RhcnQgPCBlbmQpOworCWlhbHItPm9m ZnNldCA9IGlhbHItPnN0YXJ0ID0gc3RhcnQ7CiAJaWFsci0+ZW5kID0gZW5kOwogCiAJaWFsci0+ YWxsb2NhdGVkX29iamVjdHMgPSAwOwpkaWZmIC0tZ2l0IGEvbGliL2ludGVsX2FsbG9jYXRvcl9z aW1wbGUuYyBiL2xpYi9pbnRlbF9hbGxvY2F0b3Jfc2ltcGxlLmMKaW5kZXggNjAyMmU4MzJiLi4w ZTY3NjM5NjQgMTAwNjQ0Ci0tLSBhL2xpYi9pbnRlbF9hbGxvY2F0b3Jfc2ltcGxlLmMKKysrIGIv bGliL2ludGVsX2FsbG9jYXRvcl9zaW1wbGUuYwpAQCAtNDE5LDcgKzQxOSw2IEBAIHN0YXRpYyB1 aW50NjRfdCBpbnRlbF9hbGxvY2F0b3Jfc2ltcGxlX2FsbG9jKHN0cnVjdCBpbnRlbF9hbGxvY2F0 b3IgKmlhbCwKIAlpYWxzID0gKHN0cnVjdCBpbnRlbF9hbGxvY2F0b3Jfc2ltcGxlICopIGlhbC0+ cHJpdjsKIAlpZ3RfYXNzZXJ0KGlhbHMpOwogCWlndF9hc3NlcnQoaGFuZGxlKTsKLQlhbGlnbm1l bnQgPSBhbGlnbm1lbnQgPiAwID8gYWxpZ25tZW50IDogMTsKIAogCXJlYyA9IGlndF9tYXBfc2Vh cmNoKGlhbHMtPm9iamVjdHMsICZoYW5kbGUpOwogCWlmIChyZWMpIHsKLS0gCjIuMjUuMQoKX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KaWd0LWRldiBtYWls aW5nIGxpc3QKaWd0LWRldkBsaXN0cy5mcmVlZGVza3RvcC5vcmcKaHR0cHM6Ly9saXN0cy5mcmVl ZGVza3RvcC5vcmcvbWFpbG1hbi9saXN0aW5mby9pZ3QtZGV2Cg==