From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mail-pl1-x630.google.com (mail-pl1-x630.google.com [IPv6:2607:f8b0:4864:20::630]) by gabe.freedesktop.org (Postfix) with ESMTPS id F0BE06E13C for ; Wed, 9 Jun 2021 17:37:00 +0000 (UTC) Received: by mail-pl1-x630.google.com with SMTP id x19so5807947pln.2 for ; Wed, 09 Jun 2021 10:37:00 -0700 (PDT) From: Jason Ekstrand Date: Wed, 9 Jun 2021 12:35:56 -0500 Message-Id: <20210609173632.248880-14-jason@jlekstrand.net> In-Reply-To: <20210609173632.248880-1-jason@jlekstrand.net> References: <20210609173632.248880-1-jason@jlekstrand.net> MIME-Version: 1.0 Subject: [igt-dev] [PATCH i-g-t 13/93] lib/i915/gem_engine_topology: Add an iterator for intel_ctx_t (v3) 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: djIgKERhbmllbCBWZXR0ZXIpOgogLSBBZGQgZG9jdW1lbnRhdGlvbgoKdjMgKFpiaWduaWV3IEtl bXBjennFhHNraSk6CiAtIEZpeCBhIHR5cG8gaW4gdGhlIGRvY3MKIC0gQWRkIGFuIGlndF9hc3Nl cnQoY3R4KSBpbiBpbnRlbF9lbmdpbmVfbGlzdF9mb3JfY3R4X2NmZygpCgpTaWduZWQtb2ZmLWJ5 OiBKYXNvbiBFa3N0cmFuZCA8amFzb25Aamxla3N0cmFuZC5uZXQ+ClJldmlld2VkLWJ5OiBEYW5p ZWwgVmV0dGVyIDxkYW5pZWwudmV0dGVyQGZmd2xsLmNoPgotLS0KIGxpYi9pOTE1L2dlbV9lbmdp bmVfdG9wb2xvZ3kuYyB8IDcwICsrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysKIGxp Yi9pOTE1L2dlbV9lbmdpbmVfdG9wb2xvZ3kuaCB8IDI5ICsrKysrKysrKysrKystCiAyIGZpbGVz IGNoYW5nZWQsIDk3IGluc2VydGlvbnMoKyksIDIgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEv bGliL2k5MTUvZ2VtX2VuZ2luZV90b3BvbG9neS5jIGIvbGliL2k5MTUvZ2VtX2VuZ2luZV90b3Bv bG9neS5jCmluZGV4IDZiY2ViOTA5Li41MGY0YmRlNyAxMDA2NDQKLS0tIGEvbGliL2k5MTUvZ2Vt X2VuZ2luZV90b3BvbG9neS5jCisrKyBiL2xpYi9pOTE1L2dlbV9lbmdpbmVfdG9wb2xvZ3kuYwpA QCAtMzksNiArMzksNDcgQEAKICAqCiAgKiBUaGlzIGhlbHBlciBsaWJyYXJ5IGNvbnRhaW5zIGZ1 bmN0aW9ucyB1c2VkIGZvciBxdWVyeWluZyBhbmQgZGVhbGluZwogICogd2l0aCBlbmdpbmVzIGlu IEdFTSBjb250ZXh0cy4KKyAqCisgKiBDb21iaW5lZCB3aXRoIGludGVsX2N0eF90LCB0aGVzZSBo ZWxwZXJzIGdpdmUgYSBwcmV0dHkgc3RhbmRhcmQgcGF0dGVybgorICogZm9yIHRlc3RpbmcgZXZl cnkgZW5naW5lIGluIGEgZGV2aWNlOgorICogfFs8IS0tIGxhbmd1YWdlPSJDIiAtLT4KKyAqCWNv bnN0IHN0cnVjdCBpbnRlbF9leGVjdXRpb25fZW5naW5lMiAqZTsKKyAqCWNvbnN0IGludGVsX2N0 eF90ICpjdHggPSBpbnRlbF9jdHhfY3JlYXRlX2FsbF9waHlzaWNhbChmZCk7CisgKgorICoJaWd0 X3N1YnRlc3Rfd2l0aF9keW5hbWljKCJiYXNpYyIpIHsKKyAqCQlmb3JfZWFjaF9jdHhfZW5naW5l KGZkLCBjdHgsIGUpIHsKKyAqCQkJaWd0X2R5bmFtaWNfZigiJXMiLCBlLT5uYW1lKQorICoJCQly dW5fY3R4X3Rlc3QoZmQsIGN0eCwgZSk7CisgKgkJfQorICoJfQorICogXXwKKyAqIFRoaXMgcGF0 dGVybiB3b3JrcyByZWdhcmRsZXNzIG9mIHdoZXRoZXIgb3Igbm90IHRoZSBlbmdpbmVzIHRvcG9s b2d5IEFQSQorICogaXMgYXZhaWxhYmxlIGFuZCByZWdhcmRsZXNzIG9mIHdoZXRoZXIgb3Igbm90 IHlvdXIgcGxhdGZvcm0gc3VwcG9ydHMKKyAqIGNvbnRleHRzLiAgSWYgZW5naW5lcyBhcmUgdW5h dmFpbGFibGUsIGl0IGZhbGxzIGJhY2sgdG8gYSBsZWdhY3kgY29udGV4dAorICogYW5kIGlmIGNv bnRleHRzIGFyZSB1bmF2YWlsYWJsZSwgaW50ZWxfY3R4X2NyZWF0ZV9hbGxfcGh5c2ljYWwoKSB3 aWxsCisgKiByZXR1cm4gYSB3cmFwcGVyIGFyb3VuZCBjdHgwLgorICoKKyAqIElmLCBmb3Igc29t ZSByZWFzb24sIHlvdSB3YW50IHRvIGNyZWF0ZSBhIHNlY29uZCBpZGVudGljYWwgY29udGV4dCB0 bworICogdXNlIHdpdGggeW91ciBlbmdpbmUgaXRlcmF0b3IsIGR1cGxpY2F0aW5nIHRoZSBjb250 ZXh0IGlzIGVhc3k6CisgKiB8WzwhLS0gbGFuZ3VhZ2U9IkMiIC0tPgorICoJY29uc3QgaW50ZWxf Y3R4X3QgKmN0eDIgPSBpbnRlbF9jdHhfY3JlYXRlKGZkLCAmY3R4LT5jZmcpOworICogXXwKKyAq CisgKiBJZiB5b3Ugd2FudCBlYWNoIHN1YnRlc3QgdG8gYWx3YXlzIGNyZWF0ZSBpdHMgb3duIGNv bnRleHRzLCB0aGVyZSBhcmUKKyAqIGFsc28gaXRlcmF0b3JzIHdoaWNoIHdvcmsgb25seSBvbiBh IGNvbnRleHQgY29uZmlnLiAgQXMgbG9uZyBhcyBhbGwKKyAqIGNvbnRleHRzIGFyZSBjcmVhdGVk IGZyb20gdGhhdCBjb25maWcsIG9yIGZyb20gb25lIHdpdGggYW4gaWRlbnRpY2FsIHNldAorICog b2YgZW5naW5lcywgdGhlIGl0ZXJhdG9yIHdpbGwgYmUgdmFsaWQgZm9yIHRob3NlIGNvbnRleHRz LgorICogfFs8IS0tIGxhbmd1YWdlPSJDIiAtLT4KKyAqCWNvbnN0IHN0cnVjdCBpbnRlbF9leGVj dXRpb25fZW5naW5lMiAqZTsKKyAqCWludGVsX2N0eF9jZmdfdCBjZmcgPSBpbnRlbF9jdHhfY2Zn X2FsbF9waHlzaWNhbChmZCk7CisgKgorICoJaWd0X3N1YnRlc3Rfd2l0aF9keW5hbWljKCJiYXNp YyIpIHsKKyAqCQlmb3JfZWFjaF9jdHhfY2ZnX2VuZ2luZShmZCwgJmNmZywgZSkgeworICoJCQlp Z3RfZHluYW1pY19mKCIlcyIsIGUtPm5hbWUpCisgKgkJCXJ1bl9jdHhfY2ZnX3Rlc3QoZmQsICZj ZmcsIGUpOworICoJCX0KKyAqCX0KKyAqIF18CiAgKi8KIAogLyoKQEAgLTI1Niw2ICsyOTcsMzUg QEAgc3RydWN0IGludGVsX2VuZ2luZV9kYXRhIGludGVsX2VuZ2luZV9saXN0X29mX3BoeXNpY2Fs KGludCBmZCkKIAlyZXR1cm4gaW50ZWxfZW5naW5lX2xpc3RfZm9yX3N0YXRpYyhmZCk7CiB9CiAK Ky8qKgorICogaW50ZWxfZW5naW5lX2xpc3RfZm9yX2N0eF9jZmc6CisgKiBAZmQ6IG9wZW4gaTkx NSBkcm0gZmlsZSBkZXNjcmlwdG9yCisgKiBAY2ZnOiBDb250ZXh0IGNvbmZpZworICoKKyAqIFJl dHVybnMgdGhlIGxpc3Qgb2YgYWxsIGVuZ2luZXMgaW4gdGhlIGNvbnRleHQgY29uZmlnCisgKi8K K3N0cnVjdCBpbnRlbF9lbmdpbmVfZGF0YQoraW50ZWxfZW5naW5lX2xpc3RfZm9yX2N0eF9jZmco aW50IGZkLCBjb25zdCBpbnRlbF9jdHhfY2ZnX3QgKmNmZykKK3sKKwlpZ3RfYXNzZXJ0KGNmZyk7 CisJaWYgKGZkID49IDAgJiYgY2ZnLT5udW1fZW5naW5lcykgeworCQlzdHJ1Y3QgaW50ZWxfZW5n aW5lX2RhdGEgZW5naW5lX2RhdGEgPSB7IH07CisJCWludCBpOworCisJCWVuZ2luZV9kYXRhLm5l bmdpbmVzID0gY2ZnLT5udW1fZW5naW5lczsKKwkJZm9yIChpID0gMDsgaSA8IGNmZy0+bnVtX2Vu Z2luZXM7IGkrKykKKwkJCWluaXRfZW5naW5lKCZlbmdpbmVfZGF0YS5lbmdpbmVzW2ldLAorCQkJ CSAgICBjZmctPmVuZ2luZXNbaV0uZW5naW5lX2NsYXNzLAorCQkJCSAgICBjZmctPmVuZ2luZXNb aV0uZW5naW5lX2luc3RhbmNlLAorCQkJCSAgICBpKTsKKworCQlyZXR1cm4gZW5naW5lX2RhdGE7 CisJfSBlbHNlIHsKKwkJLyogVGhpcyBpcyBhIGxlZ2FjeSBjb250ZXh0ICovCisJCXJldHVybiBp bnRlbF9lbmdpbmVfbGlzdF9mb3Jfc3RhdGljKGZkKTsKKwl9Cit9CisKIHN0YXRpYyBpbnQgZ2Vt X3RvcG9sb2d5X2dldF9wYXJhbShpbnQgZmQsCiAJCQkJICBzdHJ1Y3QgZHJtX2k5MTVfZ2VtX2Nv bnRleHRfcGFyYW0gKnApCiB7CmRpZmYgLS1naXQgYS9saWIvaTkxNS9nZW1fZW5naW5lX3RvcG9s b2d5LmggYi9saWIvaTkxNS9nZW1fZW5naW5lX3RvcG9sb2d5LmgKaW5kZXggYmQ5M2U0MTAuLjky ZDlhNDc5IDEwMDY0NAotLS0gYS9saWIvaTkxNS9nZW1fZW5naW5lX3RvcG9sb2d5LmgKKysrIGIv bGliL2k5MTUvZ2VtX2VuZ2luZV90b3BvbG9neS5oCkBAIC0yNiw4ICsyNiw3IEBACiAKICNpbmNs dWRlICJpZ3RfZ3QuaCIKICNpbmNsdWRlICJpOTE1X2RybS5oIgotCi0jZGVmaW5lIEdFTV9NQVhf RU5HSU5FUwkJSTkxNV9FWEVDX1JJTkdfTUFTSyArIDEKKyNpbmNsdWRlICJpbnRlbF9jdHguaCIK IAogaW50IF9fZ2VtX3F1ZXJ5X2VuZ2luZXMoaW50IGZkLAogCQkJc3RydWN0IGRybV9pOTE1X3F1 ZXJ5X2VuZ2luZV9pbmZvICpxdWVyeV9lbmdpbmVzLApAQCAtNTEsNiArNTAsNyBAQCBzdHJ1Y3Qg aW50ZWxfZW5naW5lX2RhdGEgewogCiBib29sIGdlbV9oYXNfZW5naW5lX3RvcG9sb2d5KGludCBm ZCk7CiBzdHJ1Y3QgaW50ZWxfZW5naW5lX2RhdGEgaW50ZWxfZW5naW5lX2xpc3Rfb2ZfcGh5c2lj YWwoaW50IGZkKTsKK3N0cnVjdCBpbnRlbF9lbmdpbmVfZGF0YSBpbnRlbF9lbmdpbmVfbGlzdF9m b3JfY3R4X2NmZyhpbnQgZmQsIGNvbnN0IGludGVsX2N0eF9jZmdfdCAqY2ZnKTsKIHN0cnVjdCBp bnRlbF9lbmdpbmVfZGF0YSBpbnRlbF9pbml0X2VuZ2luZV9saXN0KGludCBmZCwgdWludDMyX3Qg Y3R4X2lkKTsKIAogLyogaXRlcmF0aW9uIGZ1bmN0aW9ucyAqLwpAQCAtODEsNiArODEsMzEgQEAg c3RydWN0IGludGVsX2V4ZWN1dGlvbl9lbmdpbmUyIGdlbV9lYl9mbGFnc190b19lbmdpbmUodW5z aWduZWQgaW50IGZsYWdzKTsKICNkZWZpbmUgX19mb3JfZWFjaF9zdGF0aWNfZW5naW5lKGVfXykg XAogCWZvciAoKGVfXykgPSBpbnRlbF9leGVjdXRpb25fZW5naW5lczI7IChlX18pLT5uYW1lWzBd OyAoZV9fKSsrKQogCisvKioKKyAqIGZvcl9lYWNoX2N0eF9jZmdfZW5naW5lCisgKiBAZmRfXzog b3BlbiBpOTE1IGRybSBmaWxlIGRlc2NyaXB0b3IKKyAqIEBjdHhfY2ZnX186IEludGVsIGNvbnRl eHQgY29uZmlnCisgKiBAZV9fOiBzdHJ1Y3QgaW50ZWxfZXhlY3V0aW9uX2VuZ2luZTIgaXRlcmF0 b3IKKyAqCisgKiBJdGVyYXRlcyBvdmVyIGVhY2ggcGh5c2ljYWwgZW5naW5lIGluIHRoZSBjb250 ZXh0IGNvbmZpZworICovCisjZGVmaW5lIGZvcl9lYWNoX2N0eF9jZmdfZW5naW5lKGZkX18sIGN0 eF9jZmdfXywgZV9fKSBcCisJZm9yIChzdHJ1Y3QgaW50ZWxfZW5naW5lX2RhdGEgaV9fIyNlX18g PSBcCisJCQlpbnRlbF9lbmdpbmVfbGlzdF9mb3JfY3R4X2NmZyhmZF9fLCBjdHhfY2ZnX18pOyBc CisJICAgICAoKGVfXykgPSBpbnRlbF9nZXRfY3VycmVudF9lbmdpbmUoJmlfXyMjZV9fKSk7IFwK KwkgICAgIGludGVsX25leHRfZW5naW5lKCZpX18jI2VfXykpCisKKy8qKgorICogZm9yX2VhY2hf Y3R4X2VuZ2luZQorICogQGZkX186IG9wZW4gaTkxNSBkcm0gZmlsZSBkZXNjcmlwdG9yCisgKiBA Y3R4X186IEludGVsIGNvbnRleHQgd3JhcHBlcgorICogQGVfXzogc3RydWN0IGludGVsX2V4ZWN1 dGlvbl9lbmdpbmUyIGl0ZXJhdG9yCisgKgorICogSXRlcmF0ZXMgb3ZlciBlYWNoIHBoeXNpY2Fs IGVuZ2luZSBpbiB0aGUgY29udGV4dAorICovCisjZGVmaW5lIGZvcl9lYWNoX2N0eF9lbmdpbmUo ZmRfXywgY3R4X18sIGVfXykgXAorCWZvcl9lYWNoX2N0eF9jZmdfZW5naW5lKGZkX18sICYoY3R4 X18pLT5jZmcsIGVfXykKKwogI2RlZmluZSBmb3JfZWFjaF9jb250ZXh0X2VuZ2luZShmZF9fLCBj dHhfXywgZV9fKSBcCiAJZm9yIChzdHJ1Y3QgaW50ZWxfZW5naW5lX2RhdGEgaV9fID0gaW50ZWxf aW5pdF9lbmdpbmVfbGlzdChmZF9fLCBjdHhfXyk7IFwKIAkgICAgICgoZV9fKSA9IGludGVsX2dl dF9jdXJyZW50X2VuZ2luZSgmaV9fKSk7IFwKLS0gCjIuMzEuMQoKX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX18KaWd0LWRldiBtYWlsaW5nIGxpc3QKaWd0LWRl dkBsaXN0cy5mcmVlZGVza3RvcC5vcmcKaHR0cHM6Ly9saXN0cy5mcmVlZGVza3RvcC5vcmcvbWFp bG1hbi9saXN0aW5mby9pZ3QtZGV2Cg==