From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mga02.intel.com (mga02.intel.com [134.134.136.20]) by gabe.freedesktop.org (Postfix) with ESMTPS id 39E0B89617 for ; Wed, 5 Jun 2019 07:45:20 +0000 (UTC) From: Arkadiusz Hiler Date: Wed, 5 Jun 2019 10:45:12 +0300 Message-Id: <20190605074514.7375-1-arkadiusz.hiler@intel.com> MIME-Version: 1.0 Subject: [igt-dev] [PATCH i-g-t 1/3] tests/gem_exec_balancer: Manually calculate VLA struct sizes 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: VkxBIGluIHN0cnVjdHMgKHN0cnVjdCB7IGludCBhcnJheVtjb3VudF0gfSkgaXMgYSBHQ0MgZXh0 ZW5zaW9uLCBzbwpsZXQncyBhdm9pZCB1c2luZyBpdC4KCnYyOiBkb24ndCBiZSBvdmVyemVhbG91 cyBpbiBjb252ZXJ0aW5nIHN0YXRpYy1zaXplIHN0cnVjdHMKdjM6IHVzZSBjb3JyZWN0IHNpemVz IChDaHJpcykKCkNjOiBDaHJpcyBXaWxzb24gPGNocmlzQGNocmlzLXdpbHNvbi5jby51az4KQ2M6 IFNpbW9uIFNlciA8c2ltb24uc2VyQGludGVsLmNvbT4KU2lnbmVkLW9mZi1ieTogQXJrYWRpdXN6 IEhpbGVyIDxhcmthZGl1c3ouaGlsZXJAaW50ZWwuY29tPgpSZXZpZXdlZC1ieTogQ2hyaXMgV2ls c29uIDxjaHJpc0BjaHJpcy13aWxzb24uY28udWs+Ci0tLQogdGVzdHMvaTkxNS9nZW1fZXhlY19i YWxhbmNlci5jIHwgNjQgKysrKysrKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLQogMSBmaWxl IGNoYW5nZWQsIDQyIGluc2VydGlvbnMoKyksIDIyIGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBh L3Rlc3RzL2k5MTUvZ2VtX2V4ZWNfYmFsYW5jZXIuYyBiL3Rlc3RzL2k5MTUvZ2VtX2V4ZWNfYmFs YW5jZXIuYwppbmRleCAzM2IxN2ZjNS4uYmI0OTExZTEgMTAwNjQ0Ci0tLSBhL3Rlc3RzL2k5MTUv Z2VtX2V4ZWNfYmFsYW5jZXIuYworKysgYi90ZXN0cy9pOTE1L2dlbV9leGVjX2JhbGFuY2VyLmMK QEAgLTMyLDYgKzMyLDI2IEBAIElHVF9URVNUX0RFU0NSSVBUSU9OKCJFeGVyY2lzZSBpbi1rZXJu ZWwgbG9hZC1iYWxhbmNpbmciKTsKIAogI2RlZmluZSBJTlNUQU5DRV9DT1VOVCAoMSA8PCBJOTE1 X1BNVV9TQU1QTEVfSU5TVEFOQ0VfQklUUykKIAorc3RhdGljIHNpemVfdCBzaXplb2ZfbG9hZF9i YWxhbmNlKGludCBjb3VudCkKK3sKKwlyZXR1cm4gb2Zmc2V0b2Yoc3RydWN0IGk5MTVfY29udGV4 dF9lbmdpbmVzX2xvYWRfYmFsYW5jZSwKKwkJCWVuZ2luZXNbY291bnRdKTsKK30KKworc3RhdGlj IHNpemVfdCBzaXplb2ZfcGFyYW1fZW5naW5lcyhpbnQgY291bnQpCit7CisJcmV0dXJuIG9mZnNl dG9mKHN0cnVjdCBpOTE1X2NvbnRleHRfcGFyYW1fZW5naW5lcywKKwkJCWVuZ2luZXNbY291bnRd KTsKK30KKworc3RhdGljIHNpemVfdCBzaXplb2ZfZW5naW5lc19ib25kKGludCBjb3VudCkKK3sK KwlyZXR1cm4gb2Zmc2V0b2Yoc3RydWN0IGk5MTVfY29udGV4dF9lbmdpbmVzX2JvbmQsCisJCQll bmdpbmVzW2NvdW50XSk7Cit9CisKKyNkZWZpbmUgYWxsb2NhMChzeikgKHsgc2l6ZV90IHN6X18g PSAoc3opOyBtZW1zZXQoYWxsb2NhKHN6X18pLCAwLCBzel9fKTsgfSkKKwogc3RhdGljIGJvb2wg aGFzX2NsYXNzX2luc3RhbmNlKGludCBpOTE1LCB1aW50MTZfdCBjbGFzcywgdWludDE2X3QgaW5z dGFuY2UpCiB7CiAJaW50IGZkOwpAQCAtOTMsMTYgKzExMywxNyBAQCBzdGF0aWMgaW50IF9fc2V0 X2VuZ2luZXMoaW50IGk5MTUsIHVpbnQzMl90IGN0eCwKIAkJCSBjb25zdCBzdHJ1Y3QgaTkxNV9l bmdpbmVfY2xhc3NfaW5zdGFuY2UgKmNpLAogCQkJIHVuc2lnbmVkIGludCBjb3VudCkKIHsKLQlJ OTE1X0RFRklORV9DT05URVhUX1BBUkFNX0VOR0lORVMoZW5naW5lcywgY291bnQpOworCXN0cnVj dCBpOTE1X2NvbnRleHRfcGFyYW1fZW5naW5lcyAqZW5naW5lcyA9CisJCWFsbG9jYTAoc2l6ZW9m X3BhcmFtX2VuZ2luZXMoY291bnQpKTsKIAlzdHJ1Y3QgZHJtX2k5MTVfZ2VtX2NvbnRleHRfcGFy YW0gcCA9IHsKIAkJLmN0eF9pZCA9IGN0eCwKIAkJLnBhcmFtID0gSTkxNV9DT05URVhUX1BBUkFN X0VOR0lORVMsCi0JCS5zaXplID0gc2l6ZW9mKGVuZ2luZXMpLAotCQkudmFsdWUgPSB0b191c2Vy X3BvaW50ZXIoJmVuZ2luZXMpCisJCS5zaXplID0gc2l6ZW9mX3BhcmFtX2VuZ2luZXMoY291bnQp LAorCQkudmFsdWUgPSB0b191c2VyX3BvaW50ZXIoZW5naW5lcykKIAl9OwogCi0JZW5naW5lcy5l eHRlbnNpb25zID0gMDsKLQltZW1jcHkoZW5naW5lcy5lbmdpbmVzLCBjaSwgc2l6ZW9mKGVuZ2lu ZXMuZW5naW5lcykpOworCWVuZ2luZXMtPmV4dGVuc2lvbnMgPSAwOworCW1lbWNweShlbmdpbmVz LT5lbmdpbmVzLCBjaSwgc2l6ZW9mKCpjaSkpOwogCiAJcmV0dXJuIF9fZ2VtX2NvbnRleHRfc2V0 X3BhcmFtKGk5MTUsICZwKTsKIH0KQEAgLTExOSwzMCArMTQwLDMwIEBAIHN0YXRpYyBpbnQgX19z ZXRfbG9hZF9iYWxhbmNlcihpbnQgaTkxNSwgdWludDMyX3QgY3R4LAogCQkJICAgICAgIHVuc2ln bmVkIGludCBjb3VudCwKIAkJCSAgICAgICB2b2lkICpleHQpCiB7Ci0JSTkxNV9ERUZJTkVfQ09O VEVYVF9FTkdJTkVTX0xPQURfQkFMQU5DRShiYWxhbmNlciwgY291bnQpOwotCUk5MTVfREVGSU5F X0NPTlRFWFRfUEFSQU1fRU5HSU5FUyhlbmdpbmVzLCAxICsgY291bnQpOworCXN0cnVjdCBpOTE1 X2NvbnRleHRfZW5naW5lc19sb2FkX2JhbGFuY2UgKmJhbGFuY2VyID0KKwkJYWxsb2NhMChzaXpl b2ZfbG9hZF9iYWxhbmNlKGNvdW50KSk7CisJc3RydWN0IGk5MTVfY29udGV4dF9wYXJhbV9lbmdp bmVzICplbmdpbmVzID0KKwkJYWxsb2NhMChzaXplb2ZfcGFyYW1fZW5naW5lcyhjb3VudCArIDEp KTsKIAlzdHJ1Y3QgZHJtX2k5MTVfZ2VtX2NvbnRleHRfcGFyYW0gcCA9IHsKIAkJLmN0eF9pZCA9 IGN0eCwKIAkJLnBhcmFtID0gSTkxNV9DT05URVhUX1BBUkFNX0VOR0lORVMsCi0JCS5zaXplID0g c2l6ZW9mKGVuZ2luZXMpLAotCQkudmFsdWUgPSB0b191c2VyX3BvaW50ZXIoJmVuZ2luZXMpCisJ CS5zaXplID0gc2l6ZW9mX3BhcmFtX2VuZ2luZXMoY291bnQgKyAxKSwKKwkJLnZhbHVlID0gdG9f dXNlcl9wb2ludGVyKGVuZ2luZXMpCiAJfTsKIAotCW1lbXNldCgmYmFsYW5jZXIsIDAsIHNpemVv ZihiYWxhbmNlcikpOwotCWJhbGFuY2VyLmJhc2UubmFtZSA9IEk5MTVfQ09OVEVYVF9FTkdJTkVT X0VYVF9MT0FEX0JBTEFOQ0U7Ci0JYmFsYW5jZXIuYmFzZS5uZXh0X2V4dGVuc2lvbiA9IHRvX3Vz ZXJfcG9pbnRlcihleHQpOworCWJhbGFuY2VyLT5iYXNlLm5hbWUgPSBJOTE1X0NPTlRFWFRfRU5H SU5FU19FWFRfTE9BRF9CQUxBTkNFOworCWJhbGFuY2VyLT5iYXNlLm5leHRfZXh0ZW5zaW9uID0g dG9fdXNlcl9wb2ludGVyKGV4dCk7CiAKIAlpZ3RfYXNzZXJ0KGNvdW50KTsKLQliYWxhbmNlci5u dW1fc2libGluZ3MgPSBjb3VudDsKLQltZW1jcHkoYmFsYW5jZXIuZW5naW5lcywgY2ksIGNvdW50 ICogc2l6ZW9mKCpjaSkpOworCWJhbGFuY2VyLT5udW1fc2libGluZ3MgPSBjb3VudDsKKwltZW1j cHkoYmFsYW5jZXItPmVuZ2luZXMsIGNpLCBjb3VudCAqIHNpemVvZigqY2kpKTsKIAotCW1lbXNl dCgmZW5naW5lcywgMCwgc2l6ZW9mKGVuZ2luZXMpKTsKLQllbmdpbmVzLmV4dGVuc2lvbnMgPSB0 b191c2VyX3BvaW50ZXIoJmJhbGFuY2VyKTsKLQllbmdpbmVzLmVuZ2luZXNbMF0uZW5naW5lX2Ns YXNzID0KKwllbmdpbmVzLT5leHRlbnNpb25zID0gdG9fdXNlcl9wb2ludGVyKGJhbGFuY2VyKTsK KwllbmdpbmVzLT5lbmdpbmVzWzBdLmVuZ2luZV9jbGFzcyA9CiAJCUk5MTVfRU5HSU5FX0NMQVNT X0lOVkFMSUQ7Ci0JZW5naW5lcy5lbmdpbmVzWzBdLmVuZ2luZV9pbnN0YW5jZSA9CisJZW5naW5l cy0+ZW5naW5lc1swXS5lbmdpbmVfaW5zdGFuY2UgPQogCQlJOTE1X0VOR0lORV9DTEFTU19JTlZB TElEX05PTkU7Ci0JbWVtY3B5KGVuZ2luZXMuZW5naW5lcyArIDEsIGNpLCBjb3VudCAqIHNpemVv ZigqY2kpKTsKKwltZW1jcHkoZW5naW5lcy0+ZW5naW5lcyArIDEsIGNpLCBjb3VudCAqIHNpemVv ZigqY2kpKTsKIAogCXJldHVybiBfX2dlbV9jb250ZXh0X3NldF9wYXJhbShpOTE1LCAmcCk7CiB9 CkBAIC03MDksMTUgKzczMCwxNCBAQCBzdGF0aWMgdm9pZCBpbmRpY2VzKGludCBpOTE1KQogCQkJ Y29udGludWU7CiAKIAkJZm9yIChpbnQgbiA9IDA7IG4gPCBjb3VudDsgbisrKSB7Ci0JCQlJOTE1 X0RFRklORV9DT05URVhUX0VOR0lORVNfTE9BRF9CQUxBTkNFKCpiYWxhbmNlciwKLQkJCQkJCQkJ IGNvdW50KTsKKwkJCXN0cnVjdCBpOTE1X2NvbnRleHRfZW5naW5lc19sb2FkX2JhbGFuY2UgKmJh bGFuY2VyOwogCiAJCQllbmdpbmVzLmVuZ2luZXNbbmVuZ2luZXNdLmVuZ2luZV9jbGFzcyA9CiAJ CQkJSTkxNV9FTkdJTkVfQ0xBU1NfSU5WQUxJRDsKIAkJCWVuZ2luZXMuZW5naW5lc1tuZW5naW5l c10uZW5naW5lX2luc3RhbmNlID0KIAkJCQlJOTE1X0VOR0lORV9DTEFTU19JTlZBTElEX05PTkU7 CiAKLQkJCWJhbGFuY2VyID0gY2FsbG9jKHNpemVvZigqYmFsYW5jZXIpLCAxKTsKKwkJCWJhbGFu Y2VyID0gY2FsbG9jKHNpemVvZl9sb2FkX2JhbGFuY2UoY291bnQpLCAxKTsKIAkJCWlndF9hc3Nl cnQoYmFsYW5jZXIpOwogCiAJCQliYWxhbmNlci0+YmFzZS5uYW1lID0KLS0gCjIuMjEuMAoKX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KaWd0LWRldiBtYWls aW5nIGxpc3QKaWd0LWRldkBsaXN0cy5mcmVlZGVza3RvcC5vcmcKaHR0cHM6Ly9saXN0cy5mcmVl ZGVza3RvcC5vcmcvbWFpbG1hbi9saXN0aW5mby9pZ3QtZGV2