From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: From: Tvrtko Ursulin Date: Mon, 20 May 2019 15:47:35 +0100 Message-Id: <20190520144739.13111-24-tvrtko.ursulin@linux.intel.com> In-Reply-To: <20190520144739.13111-1-tvrtko.ursulin@linux.intel.com> References: <20190520144739.13111-1-tvrtko.ursulin@linux.intel.com> MIME-Version: 1.0 Subject: [igt-dev] [PATCH i-g-t 23/27] gem_wsim: Consolidate engine assignments into helpers 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 Cc: Intel-gfx@lists.freedesktop.org, Tvrtko Ursulin List-ID: RnJvbTogVHZydGtvIFVyc3VsaW4gPHR2cnRrby51cnN1bGluQGludGVsLmNvbT4KClRoaXMgd2ls bCBhbGxvdyBhcHBseWluZyB0aGUgZGlzY292ZXJlZCBlbmdpbmUgY29uZmlndXJhdGlvbiBmcm9t IGEgc2luZ2xlCnBsYWNlLgoKdjI6CiAqIENvbnNvbGlkYXRlIGVudW0gdG8gY2kgY29udmVyc2lv bi4KClNpZ25lZC1vZmYtYnk6IFR2cnRrbyBVcnN1bGluIDx0dnJ0a28udXJzdWxpbkBpbnRlbC5j b20+Ci0tLQogYmVuY2htYXJrcy9nZW1fd3NpbS5jIHwgMTYzICsrKysrKysrKysrKysrKysrKysr KysrKy0tLS0tLS0tLS0tLS0tLS0tLQogMSBmaWxlIGNoYW5nZWQsIDk0IGluc2VydGlvbnMoKyks IDY5IGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL2JlbmNobWFya3MvZ2VtX3dzaW0uYyBiL2Jl bmNobWFya3MvZ2VtX3dzaW0uYwppbmRleCBmZTcwZTc3MTlkODguLjAyYzNlOWQ2NTVkOCAxMDA2 NDQKLS0tIGEvYmVuY2htYXJrcy9nZW1fd3NpbS5jCisrKyBiL2JlbmNobWFya3MvZ2VtX3dzaW0u YwpAQCAtMzY1LDYgKzM2NSw2NiBAQCBzdGF0aWMgaW50IHN0cl90b19lbmdpbmUoY29uc3QgY2hh ciAqc3RyKQogCXJldHVybiAtMTsKIH0KIAorc3RhdGljIHVuc2lnbmVkIGludCBudW1fZW5naW5l c19pbl9jbGFzcyhlbnVtIGludGVsX2VuZ2luZV9pZCBjbGFzcykKK3sKKwlpZ3RfYXNzZXJ0KGNs YXNzID09IFZDUyk7CisKKwlyZXR1cm4gMjsKK30KKworc3RhdGljIHZvaWQKK2ZpbGxfZW5naW5l c19jbGFzcyhzdHJ1Y3QgaTkxNV9lbmdpbmVfY2xhc3NfaW5zdGFuY2UgKmNpLAorCQkgICBlbnVt IGludGVsX2VuZ2luZV9pZCBjbGFzcykKK3sKKwlpZ3RfYXNzZXJ0KGNsYXNzID09IFZDUyk7CisK KwljaVswXS5lbmdpbmVfY2xhc3MgPSBJOTE1X0VOR0lORV9DTEFTU19WSURFTzsKKwljaVswXS5l bmdpbmVfaW5zdGFuY2UgPSAwOworCisJY2lbMV0uZW5naW5lX2NsYXNzID0gSTkxNV9FTkdJTkVf Q0xBU1NfVklERU87CisJY2lbMV0uZW5naW5lX2luc3RhbmNlID0gMTsKK30KKworc3RhdGljIHZv aWQKK2ZpbGxfZW5naW5lc19pZF9jbGFzcyhlbnVtIGludGVsX2VuZ2luZV9pZCAqbGlzdCwKKwkJ ICAgICAgZW51bSBpbnRlbF9lbmdpbmVfaWQgY2xhc3MpCit7CisJaWd0X2Fzc2VydChjbGFzcyA9 PSBWQ1MpOworCisJbGlzdFswXSA9IFZDUzE7CisJbGlzdFsxXSA9IFZDUzI7Cit9CisKK3N0YXRp YyBzdHJ1Y3QgaTkxNV9lbmdpbmVfY2xhc3NfaW5zdGFuY2UKK2dldF9lbmdpbmUoZW51bSBpbnRl bF9lbmdpbmVfaWQgZW5naW5lKQoreworCXN0cnVjdCBpOTE1X2VuZ2luZV9jbGFzc19pbnN0YW5j ZSBjaTsKKworCXN3aXRjaCAoZW5naW5lKSB7CisJY2FzZSBSQ1M6CisJCWNpLmVuZ2luZV9jbGFz cyA9IEk5MTVfRU5HSU5FX0NMQVNTX1JFTkRFUjsKKwkJY2kuZW5naW5lX2luc3RhbmNlID0gMDsK KwkJYnJlYWs7CisJY2FzZSBCQ1M6CisJCWNpLmVuZ2luZV9jbGFzcyA9IEk5MTVfRU5HSU5FX0NM QVNTX0NPUFk7CisJCWNpLmVuZ2luZV9pbnN0YW5jZSA9IDA7CisJCWJyZWFrOworCWNhc2UgVkNT MToKKwljYXNlIFZDUzI6CisJCWNpLmVuZ2luZV9jbGFzcyA9IEk5MTVfRU5HSU5FX0NMQVNTX1ZJ REVPOworCQljaS5lbmdpbmVfaW5zdGFuY2UgPSBlbmdpbmUgLSBWQ1MxOworCQlicmVhazsKKwlj YXNlIFZFQ1M6CisJCWNpLmVuZ2luZV9jbGFzcyA9IEk5MTVfRU5HSU5FX0NMQVNTX1ZJREVPX0VO SEFOQ0U7CisJCWNpLmVuZ2luZV9pbnN0YW5jZSA9IDA7CisJCWJyZWFrOworCWRlZmF1bHQ6CisJ CWlndF9hc3NlcnQoMCk7CisJfTsKKworCXJldHVybiBjaTsKK30KKwogc3RhdGljIGludCBwYXJz ZV9lbmdpbmVfbWFwKHN0cnVjdCB3X3N0ZXAgKnN0ZXAsIGNvbnN0IGNoYXIgKl9zdHIpCiB7CiAJ Y2hhciAqdG9rZW4sICp0Y3R4ID0gTlVMTCwgKnRzdGFydCA9IChjaGFyICopX3N0cjsKQEAgLTM4 NiwxOCArNDQ2LDE2IEBAIHN0YXRpYyBpbnQgcGFyc2VfZW5naW5lX21hcChzdHJ1Y3Qgd19zdGVw ICpzdGVwLCBjb25zdCBjaGFyICpfc3RyKQogCQkgICAgZW5naW5lICE9IFJDUykKIAkJCXJldHVy biAtMTsgLyogVE9ETyAqLwogCi0JCWFkZCA9IGVuZ2luZSA9PSBWQ1MgPyAyIDogMTsKKwkJYWRk ID0gZW5naW5lID09IFZDUyA/IG51bV9lbmdpbmVzX2luX2NsYXNzKFZDUykgOiAxOwogCQlzdGVw LT5lbmdpbmVfbWFwX2NvdW50ICs9IGFkZDsKIAkJc3RlcC0+ZW5naW5lX21hcCA9IHJlYWxsb2Mo c3RlcC0+ZW5naW5lX21hcCwKIAkJCQkJICAgc3RlcC0+ZW5naW5lX21hcF9jb3VudCAqCiAJCQkJ CSAgIHNpemVvZihzdGVwLT5lbmdpbmVfbWFwWzBdKSk7CiAKLQkJaWYgKGVuZ2luZSAhPSBWQ1Mp IHsKLQkJCXN0ZXAtPmVuZ2luZV9tYXBbc3RlcC0+ZW5naW5lX21hcF9jb3VudCAtIDFdID0gZW5n aW5lOwotCQl9IGVsc2UgewotCQkJc3RlcC0+ZW5naW5lX21hcFtzdGVwLT5lbmdpbmVfbWFwX2Nv dW50IC0gMl0gPSBWQ1MxOwotCQkJc3RlcC0+ZW5naW5lX21hcFtzdGVwLT5lbmdpbmVfbWFwX2Nv dW50IC0gMV0gPSBWQ1MyOwotCQl9CisJCWlmIChlbmdpbmUgIT0gVkNTKQorCQkJc3RlcC0+ZW5n aW5lX21hcFtzdGVwLT5lbmdpbmVfbWFwX2NvdW50IC0gYWRkXSA9IGVuZ2luZTsKKwkJZWxzZQor CQkJZmlsbF9lbmdpbmVzX2lkX2NsYXNzKCZzdGVwLT5lbmdpbmVfbWFwW3N0ZXAtPmVuZ2luZV9t YXBfY291bnQgLSBhZGRdLCBWQ1MpOwogCX0KIAogCXJldHVybiAwOwpAQCAtMTE0OCwyMCArMTIw NiwxMSBAQCBzdGF0aWMgdW5zaWduZWQgaW50CiBmaW5kX2VuZ2luZShzdHJ1Y3QgaTkxNV9lbmdp bmVfY2xhc3NfaW5zdGFuY2UgKmNpLCB1bnNpZ25lZCBpbnQgY291bnQsCiAJICAgIGVudW0gaW50 ZWxfZW5naW5lX2lkIGVuZ2luZSkKIHsKLQlzdGF0aWMgc3RydWN0IGk5MTVfZW5naW5lX2NsYXNz X2luc3RhbmNlIG1hcFtdID0gewotCQlbUkNTXSA9IHsgSTkxNV9FTkdJTkVfQ0xBU1NfUkVOREVS LCAwIH0sCi0JCVtCQ1NdID0geyBJOTE1X0VOR0lORV9DTEFTU19DT1BZLCAwIH0sCi0JCVtWQ1Mx XSA9IHsgSTkxNV9FTkdJTkVfQ0xBU1NfVklERU8sIDAgfSwKLQkJW1ZDUzJdID0geyBJOTE1X0VO R0lORV9DTEFTU19WSURFTywgMSB9LAotCQlbVkVDU10gPSB7IEk5MTVfRU5HSU5FX0NMQVNTX1ZJ REVPX0VOSEFOQ0UsIDAgfSwKLQl9OworCXN0cnVjdCBpOTE1X2VuZ2luZV9jbGFzc19pbnN0YW5j ZSBlID0gZ2V0X2VuZ2luZShlbmdpbmUpOwogCXVuc2lnbmVkIGludCBpOwogCi0JaWd0X2Fzc2Vy dChlbmdpbmUgPCBBUlJBWV9TSVpFKG1hcCkpOwotCWlndF9hc3NlcnQoZW5naW5lID09IFJDUyB8 fCBtYXBbZW5naW5lXS5lbmdpbmVfY2xhc3MpOwotCiAJZm9yIChpID0gMDsgaSA8IGNvdW50OyBp KyssIGNpKyspIHsKLQkJaWYgKCFtZW1jbXAoJm1hcFtlbmdpbmVdLCBjaSwgc2l6ZW9mKCpjaSkp KQorCQlpZiAoIW1lbWNtcCgmZSwgY2ksIHNpemVvZigqY2kpKSkKIAkJCXJldHVybiBpOwogCX0K IApAQCAtMTQ2NSwxOSArMTUxNCw5IEBAIHByZXBhcmVfd29ya2xvYWQodW5zaWduZWQgaW50IGlk LCBzdHJ1Y3Qgd29ya2xvYWQgKndyaywgdW5zaWduZWQgaW50IGZsYWdzKQogCQkJCWxvYWRfYmFs YW5jZS5udW1fc2libGluZ3MgPQogCQkJCQljdHgtPmVuZ2luZV9tYXBfY291bnQ7CiAKLQkJCQlm b3IgKGogPSAwOyBqIDwgY3R4LT5lbmdpbmVfbWFwX2NvdW50OyBqKyspIHsKLQkJCQkJaWYgKGN0 eC0+ZW5naW5lX21hcFtqXSA9PSBSQ1MpIHsKLQkJCQkJCWxvYWRfYmFsYW5jZS5lbmdpbmVzW2pd LmVuZ2luZV9jbGFzcyA9Ci0JCQkJCQkJSTkxNV9FTkdJTkVfQ0xBU1NfUkVOREVSOwotCQkJCQkJ bG9hZF9iYWxhbmNlLmVuZ2luZXNbal0uZW5naW5lX2luc3RhbmNlID0KLQkJCQkJCQkwOyAvKiBG SVhNRSAqLwotCQkJCQl9IGVsc2UgewotCQkJCQkJbG9hZF9iYWxhbmNlLmVuZ2luZXNbal0uZW5n aW5lX2NsYXNzID0KLQkJCQkJCQlJOTE1X0VOR0lORV9DTEFTU19WSURFTzsgLyogRklYTUUgKi8K LQkJCQkJCWxvYWRfYmFsYW5jZS5lbmdpbmVzW2pdLmVuZ2luZV9pbnN0YW5jZSA9Ci0JCQkJCQkJ Y3R4LT5lbmdpbmVfbWFwW2pdIC0gVkNTMTsgLyogRklYTUUgKi8KLQkJCQkJfQotCQkJCX0KKwkJ CQlmb3IgKGogPSAwOyBqIDwgY3R4LT5lbmdpbmVfbWFwX2NvdW50OyBqKyspCisJCQkJCWxvYWRf YmFsYW5jZS5lbmdpbmVzW2pdID0KKwkJCQkJCWdldF9lbmdpbmUoY3R4LT5lbmdpbmVfbWFwW2pd KTsKIAkJCX0gZWxzZSB7CiAJCQkJc2V0X2VuZ2luZXMuZXh0ZW5zaW9ucyA9IDA7CiAJCQl9CkBA IC0xNDg4LDE4ICsxNTI3LDkgQEAgcHJlcGFyZV93b3JrbG9hZCh1bnNpZ25lZCBpbnQgaWQsIHN0 cnVjdCB3b3JrbG9hZCAqd3JrLCB1bnNpZ25lZCBpbnQgZmxhZ3MpCiAJCQlzZXRfZW5naW5lcy5l bmdpbmVzWzBdLmVuZ2luZV9pbnN0YW5jZSA9CiAJCQkJSTkxNV9FTkdJTkVfQ0xBU1NfSU5WQUxJ RF9OT05FOwogCi0JCQlmb3IgKGogPSAxOyBqIDw9IGN0eC0+ZW5naW5lX21hcF9jb3VudDsgaisr KSB7Ci0JCQkJaWYgKGN0eC0+ZW5naW5lX21hcFtqIC0gMV0gPT0gUkNTKSB7Ci0JCQkJCXNldF9l bmdpbmVzLmVuZ2luZXNbal0uZW5naW5lX2NsYXNzID0KLQkJCQkJCUk5MTVfRU5HSU5FX0NMQVNT X1JFTkRFUjsKLQkJCQkJc2V0X2VuZ2luZXMuZW5naW5lc1tqXS5lbmdpbmVfaW5zdGFuY2UgPSAw OyAvKiBGSVhNRSAqLwotCQkJCX0gZWxzZSB7Ci0JCQkJCXNldF9lbmdpbmVzLmVuZ2luZXNbal0u ZW5naW5lX2NsYXNzID0KLQkJCQkJCUk5MTVfRU5HSU5FX0NMQVNTX1ZJREVPOyAvKiBGSVhNRSAq LwotCQkJCQlzZXRfZW5naW5lcy5lbmdpbmVzW2pdLmVuZ2luZV9pbnN0YW5jZSA9Ci0JCQkJCQlj dHgtPmVuZ2luZV9tYXBbaiAtIDFdIC0gVkNTMTsgLyogRklYTUUgKi8KLQkJCQl9Ci0JCQl9CisJ CQlmb3IgKGogPSAxOyBqIDw9IGN0eC0+ZW5naW5lX21hcF9jb3VudDsgaisrKQorCQkJCXNldF9l bmdpbmVzLmVuZ2luZXNbal0gPQorCQkJCQlnZXRfZW5naW5lKGN0eC0+ZW5naW5lX21hcFtqIC0g MV0pOwogCiAJCQlmb3IgKGogPSAwOyBqIDwgY3R4LT5ib25kX2NvdW50OyBqKyspIHsKIAkJCQl1 bnNpZ25lZCBsb25nIG1hc2sgPSBjdHgtPmJvbmRzW2pdLm1hc2s7CkBAIC0xNTIyLDEwICsxNTUy LDcgQEAgcHJlcGFyZV93b3JrbG9hZCh1bnNpZ25lZCBpbnQgaWQsIHN0cnVjdCB3b3JrbG9hZCAq d3JrLCB1bnNpZ25lZCBpbnQgZmxhZ3MpCiAKIAkJCQlwLT5iYXNlLm5hbWUgPSBJOTE1X0NPTlRF WFRfRU5HSU5FU19FWFRfQk9ORDsKIAkJCQlwLT52aXJ0dWFsX2luZGV4ID0gMDsKLQkJCQlwLT5t YXN0ZXIuZW5naW5lX2NsYXNzID0KLQkJCQkJSTkxNV9FTkdJTkVfQ0xBU1NfVklERU87Ci0JCQkJ cC0+bWFzdGVyLmVuZ2luZV9pbnN0YW5jZSA9Ci0JCQkJCWN0eC0+Ym9uZHNbal0ubWFzdGVyIC0g VkNTMTsKKwkJCQlwLT5tYXN0ZXIgPSBnZXRfZW5naW5lKGN0eC0+Ym9uZHNbal0ubWFzdGVyKTsK IAogCQkJCWZvciAoYiA9IDAsIGUgPSAwOyBtYXNrOyBlKyssIG1hc2sgPj49IDEpIHsKIAkJCQkJ dW5zaWduZWQgaW50IGlkeDsKQEAgLTE1NDMsMjggKzE1NzAsMTEgQEAgcHJlcGFyZV93b3JrbG9h ZCh1bnNpZ25lZCBpbnQgaWQsIHN0cnVjdCB3b3JrbG9hZCAqd3JrLCB1bnNpZ25lZCBpbnQgZmxh Z3MpCiAKIAkJCWdlbV9jb250ZXh0X3NldF9wYXJhbShmZCwgJnBhcmFtKTsKIAkJfSBlbHNlIGlm IChjdHgtPndhbnRzX2JhbGFuY2UpIHsKLQkJCUk5MTVfREVGSU5FX0NPTlRFWFRfRU5HSU5FU19M T0FEX0JBTEFOQ0UobG9hZF9iYWxhbmNlLCAyKSA9IHsKLQkJCQkuYmFzZS5uYW1lID0gSTkxNV9D T05URVhUX0VOR0lORVNfRVhUX0xPQURfQkFMQU5DRSwKLQkJCQkubnVtX3NpYmxpbmdzID0gMiwK LQkJCQkuZW5naW5lcyA9IHsKLQkJCQkJeyAuZW5naW5lX2NsYXNzID0gSTkxNV9FTkdJTkVfQ0xB U1NfVklERU8sCi0JCQkJCSAgLmVuZ2luZV9pbnN0YW5jZSA9IDAgfSwKLQkJCQkJeyAuZW5naW5l X2NsYXNzID0gSTkxNV9FTkdJTkVfQ0xBU1NfVklERU8sCi0JCQkJCSAgLmVuZ2luZV9pbnN0YW5j ZSA9IDEgfSwKLQkJCQl9LAotCQkJfTsKLQkJCUk5MTVfREVGSU5FX0NPTlRFWFRfUEFSQU1fRU5H SU5FUyhzZXRfZW5naW5lcywgMykgPSB7Ci0JCQkJLmV4dGVuc2lvbnMgPSB0b191c2VyX3BvaW50 ZXIoJmxvYWRfYmFsYW5jZSksCi0JCQkJLmVuZ2luZXMgPSB7Ci0JCQkJCXsgLmVuZ2luZV9jbGFz cyA9IEk5MTVfRU5HSU5FX0NMQVNTX0lOVkFMSUQsCi0JCQkJCSAgLmVuZ2luZV9pbnN0YW5jZSA9 IEk5MTVfRU5HSU5FX0NMQVNTX0lOVkFMSURfTk9ORSB9LAotCQkJCQl7IC5lbmdpbmVfY2xhc3Mg PSBJOTE1X0VOR0lORV9DTEFTU19WSURFTywKLQkJCQkJICAuZW5naW5lX2luc3RhbmNlID0gMCB9 LAotCQkJCQl7IC5lbmdpbmVfY2xhc3MgPSBJOTE1X0VOR0lORV9DTEFTU19WSURFTywKLQkJCQkJ ICAuZW5naW5lX2luc3RhbmNlID0gMSB9LAotCQkJCX0sCi0JCQl9OwotCisJCQljb25zdCB1bnNp Z25lZCBpbnQgY291bnQgPSBudW1fZW5naW5lc19pbl9jbGFzcyhWQ1MpOworCQkJSTkxNV9ERUZJ TkVfQ09OVEVYVF9FTkdJTkVTX0xPQURfQkFMQU5DRShsb2FkX2JhbGFuY2UsCisJCQkJCQkJCSBj b3VudCk7CisJCQlJOTE1X0RFRklORV9DT05URVhUX1BBUkFNX0VOR0lORVMoc2V0X2VuZ2luZXMs CisJCQkJCQkJICBjb3VudCArIDEpOwogCQkJc3RydWN0IGRybV9pOTE1X2dlbV9jb250ZXh0X3Bh cmFtIHBhcmFtID0gewogCQkJCS5jdHhfaWQgPSBjdHhfaWQsCiAJCQkJLnBhcmFtID0gSTkxNV9D T05URVhUX1BBUkFNX0VOR0lORVMsCkBAIC0xNTcyLDYgKzE1ODIsMjEgQEAgcHJlcGFyZV93b3Jr bG9hZCh1bnNpZ25lZCBpbnQgaWQsIHN0cnVjdCB3b3JrbG9hZCAqd3JrLCB1bnNpZ25lZCBpbnQg ZmxhZ3MpCiAJCQkJLnZhbHVlID0gdG9fdXNlcl9wb2ludGVyKCZzZXRfZW5naW5lcyksCiAJCQl9 OwogCisJCQlzZXRfZW5naW5lcy5leHRlbnNpb25zID0gdG9fdXNlcl9wb2ludGVyKCZsb2FkX2Jh bGFuY2UpOworCisJCQlzZXRfZW5naW5lcy5lbmdpbmVzWzBdLmVuZ2luZV9jbGFzcyA9CisJCQkJ STkxNV9FTkdJTkVfQ0xBU1NfSU5WQUxJRDsKKwkJCXNldF9lbmdpbmVzLmVuZ2luZXNbMF0uZW5n aW5lX2luc3RhbmNlID0KKwkJCQlJOTE1X0VOR0lORV9DTEFTU19JTlZBTElEX05PTkU7CisJCQlm aWxsX2VuZ2luZXNfY2xhc3MoJnNldF9lbmdpbmVzLmVuZ2luZXNbMV0sIFZDUyk7CisKKwkJCW1l bXNldCgmbG9hZF9iYWxhbmNlLCAwLCBzaXplb2YobG9hZF9iYWxhbmNlKSk7CisJCQlsb2FkX2Jh bGFuY2UuYmFzZS5uYW1lID0KKwkJCQlJOTE1X0NPTlRFWFRfRU5HSU5FU19FWFRfTE9BRF9CQUxB TkNFOworCQkJbG9hZF9iYWxhbmNlLm51bV9zaWJsaW5ncyA9IGNvdW50OworCisJCQlmaWxsX2Vu Z2luZXNfY2xhc3MoJmxvYWRfYmFsYW5jZS5lbmdpbmVzWzBdLCBWQ1MpOworCiAJCQlnZW1fY29u dGV4dF9zZXRfcGFyYW0oZmQsICZwYXJhbSk7CiAJCX0KIAotLSAKMi4yMC4xCgpfX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwppZ3QtZGV2IG1haWxpbmcgbGlz dAppZ3QtZGV2QGxpc3RzLmZyZWVkZXNrdG9wLm9yZwpodHRwczovL2xpc3RzLmZyZWVkZXNrdG9w Lm9yZy9tYWlsbWFuL2xpc3RpbmZvL2lndC1kZXY=