From mboxrd@z Thu Jan 1 00:00:00 1970 From: Robert Foss Subject: [PATCH i-g-t v2 08/12] tests/kms_atomic: stress possible fence settings Date: Wed, 14 Dec 2016 04:05:05 -0500 Message-ID: <20161214090509.15716-9-robert.foss@collabora.com> References: <20161214090509.15716-1-robert.foss@collabora.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from bhuna.collabora.co.uk (bhuna.collabora.co.uk [IPv6:2a00:1098:0:82:1000:25:2eeb:e3e3]) by gabe.freedesktop.org (Postfix) with ESMTPS id 1E6A26E761 for ; Wed, 14 Dec 2016 09:05:20 +0000 (UTC) In-Reply-To: <20161214090509.15716-1-robert.foss@collabora.com> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: intel-gfx-bounces@lists.freedesktop.org Sender: "Intel-gfx" To: intel-gfx@lists.freedesktop.org, Gustavo Padovan , Brian Starkey , Daniel Vetter , Tomeu Vizoso Cc: Gustavo Padovan List-Id: intel-gfx@lists.freedesktop.org RnJvbTogR3VzdGF2byBQYWRvdmFuIDxndXN0YXZvLnBhZG92YW5AY29sbGFib3JhLmNvLnVrPgoK U2lnbmVkLW9mZi1ieTogR3VzdGF2byBQYWRvdmFuIDxndXN0YXZvLnBhZG92YW5AY29sbGFib3Jh LmNvLnVrPgpTaWduZWQtb2ZmLWJ5OiBSb2JlcnQgRm9zcyA8cm9iZXJ0LmZvc3NAY29sbGFib3Jh LmNvbT4KLS0tCiB0ZXN0cy9rbXNfYXRvbWljLmMgfCAxODYgKysrKysrKysrKysrKysrKysrKysr KysrKysrKysrKysrKysrKysrKysrKysrKysrKystLS0KIDEgZmlsZSBjaGFuZ2VkLCAxNzYgaW5z ZXJ0aW9ucygrKSwgMTAgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvdGVzdHMva21zX2F0b21p Yy5jIGIvdGVzdHMva21zX2F0b21pYy5jCmluZGV4IDhiNjQ4ZWJhLi5hNTU3YWM2MCAxMDA2NDQK LS0tIGEvdGVzdHMva21zX2F0b21pYy5jCisrKyBiL3Rlc3RzL2ttc19hdG9taWMuYwpAQCAtNDQs NiArNDQsNyBAQAogI2luY2x1ZGUgImRybXRlc3QuaCIKICNpbmNsdWRlICJpZ3QuaCIKICNpbmNs dWRlICJpZ3RfYXV4LmgiCisjaW5jbHVkZSAic3dfc3luYy5oIgogCiAjaWZuZGVmIERSTV9DTElF TlRfQ0FQX0FUT01JQwogI2RlZmluZSBEUk1fQ0xJRU5UX0NBUF9BVE9NSUMgMwpAQCAtMTI2LDYg KzEyNyw3IEBAIHN0cnVjdCBrbXNfYXRvbWljX3BsYW5lX3N0YXRlIHsKIAl1aW50MzJfdCBmYl9p ZDsgLyogMCB0byBkaXNhYmxlICovCiAJdWludDMyX3Qgc3JjX3gsIHNyY195LCBzcmNfdywgc3Jj X2g7IC8qIDE2LjE2IGZpeGVkLXBvaW50ICovCiAJdWludDMyX3QgY3J0Y194LCBjcnRjX3ksIGNy dGNfdywgY3J0Y19oOyAvKiBub3JtYWwgaW50ZWdlcnMgKi8KKwlpbnQzMl90IGZlbmNlX2ZkOwog fTsKIAogc3RydWN0IGttc19hdG9taWNfY3J0Y19zdGF0ZSB7CkBAIC0xMzMsNiArMTM1LDcgQEAg c3RydWN0IGttc19hdG9taWNfY3J0Y19zdGF0ZSB7CiAJdWludDMyX3Qgb2JqOwogCWludCBpZHg7 CiAJYm9vbCBhY3RpdmU7CisJdWludDY0X3Qgb3V0X2ZlbmNlX3B0cjsKIAlzdHJ1Y3Qga21zX2F0 b21pY19ibG9iIG1vZGU7CiB9OwogCkBAIC0xOTAsMTEgKzE5MywxMyBAQCBzdGF0aWMgdWludDMy X3QgYmxvYl9kdXBsaWNhdGUoaW50IGZkLCB1aW50MzJfdCBpZF9vcmlnKQogCWNydGNfcG9wdWxh dGVfcmVxKGNydGMsIHJlcSk7IFwKIAlwbGFuZV9wb3B1bGF0ZV9yZXEocGxhbmUsIHJlcSk7IFwK IAlkb19hdG9taWNfY29tbWl0KChjcnRjKS0+c3RhdGUtPmRlc2MtPmZkLCByZXEsIGZsYWdzKTsg XAotCWNydGNfY2hlY2tfY3VycmVudF9zdGF0ZShjcnRjLCBwbGFuZSwgcmVsYXgpOyBcCi0JcGxh bmVfY2hlY2tfY3VycmVudF9zdGF0ZShwbGFuZSwgcmVsYXgpOyBcCisJaWYgKCEoZmxhZ3MgJiBE Uk1fTU9ERV9BVE9NSUNfVEVTVF9PTkxZKSkgeyBcCisJCWNydGNfY2hlY2tfY3VycmVudF9zdGF0 ZShjcnRjLCBwbGFuZSwgcmVsYXgpOyBcCisJCXBsYW5lX2NoZWNrX2N1cnJlbnRfc3RhdGUocGxh bmUsIHJlbGF4KTsgXAorCX0gXAogfQogCi0jZGVmaW5lIGNydGNfY29tbWl0X2F0b21pY19lcnIo Y3J0YywgcGxhbmUsIGNydGNfb2xkLCBwbGFuZV9vbGQsIHJlcSwgcmVsYXgsIGUpIHsgXAorI2Rl ZmluZSBjcnRjX2NvbW1pdF9hdG9taWNfZXJyKGNydGMsIHBsYW5lLCBjcnRjX29sZCwgcGxhbmVf b2xkLCByZXEsIGZsYWdzLCByZWxheCwgZSkgeyBcCiAJZHJtTW9kZUF0b21pY1NldEN1cnNvcihy ZXEsIDApOyBcCiAJY3J0Y19wb3B1bGF0ZV9yZXEoY3J0YywgcmVxKTsgXAogCXBsYW5lX3BvcHVs YXRlX3JlcShwbGFuZSwgcmVxKTsgXApAQCAtMjk5LDYgKzMwNCw5IEBAIGZpbmRfY29ubmVjdG9y KHN0cnVjdCBrbXNfYXRvbWljX3N0YXRlICpzdGF0ZSwKIHN0YXRpYyB2b2lkIHBsYW5lX3BvcHVs YXRlX3JlcShzdHJ1Y3Qga21zX2F0b21pY19wbGFuZV9zdGF0ZSAqcGxhbmUsCiAJCQkgICAgICAg ZHJtTW9kZUF0b21pY1JlcSAqcmVxKQogeworCWlmIChwbGFuZS0+ZmVuY2VfZmQpCisJCXBsYW5l X3NldF9wcm9wKHJlcSwgcGxhbmUsIElHVF9QTEFORV9JTl9GRU5DRV9GRCwgcGxhbmUtPmZlbmNl X2ZkKTsKKwogCXBsYW5lX3NldF9wcm9wKHJlcSwgcGxhbmUsIElHVF9QTEFORV9DUlRDX0lELCBw bGFuZS0+Y3J0Y19pZCk7CiAJcGxhbmVfc2V0X3Byb3AocmVxLCBwbGFuZSwgSUdUX1BMQU5FX0ZC X0lELCBwbGFuZS0+ZmJfaWQpOwogCXBsYW5lX3NldF9wcm9wKHJlcSwgcGxhbmUsIElHVF9QTEFO RV9TUkNfWCwgcGxhbmUtPnNyY194KTsKQEAgLTQyNCw2ICs0MzIsMTAgQEAgZmluZF9wbGFuZShz dHJ1Y3Qga21zX2F0b21pY19zdGF0ZSAqc3RhdGUsIGVudW0gcGxhbmVfdHlwZSB0eXBlLAogc3Rh dGljIHZvaWQgY3J0Y19wb3B1bGF0ZV9yZXEoc3RydWN0IGttc19hdG9taWNfY3J0Y19zdGF0ZSAq Y3J0YywKIAkJCSAgICAgIGRybU1vZGVBdG9taWNSZXEgKnJlcSkKIHsKKwlpZiAoY3J0Yy0+b3V0 X2ZlbmNlX3B0cikKKwkJY3J0Y19zZXRfcHJvcChyZXEsIGNydGMsIElHVF9DUlRDX09VVF9GRU5D RV9QVFIsCisJCQkgICAgICBjcnRjLT5vdXRfZmVuY2VfcHRyKTsKKwogCWNydGNfc2V0X3Byb3Ao cmVxLCBjcnRjLCBJR1RfQ1JUQ19NT0RFX0lELCBjcnRjLT5tb2RlLmlkKTsKIAljcnRjX3NldF9w cm9wKHJlcSwgY3J0YywgSUdUX0NSVENfQUNUSVZFLCBjcnRjLT5hY3RpdmUpOwogfQpAQCAtMTA1 Miw2ICsxMDY0LDM3IEBAIHN0YXRpYyB2b2lkIHBsYW5lX2ludmFsaWRfcGFyYW1zKHN0cnVjdCBr bXNfYXRvbWljX2NydGNfc3RhdGUgKmNydGMsCiAJZHJtTW9kZUF0b21pY0ZyZWUocmVxKTsKIH0K IAorc3RhdGljIHZvaWQgcGxhbmVfaW52YWxpZF9wYXJhbXNfZmVuY2Uoc3RydWN0IGttc19hdG9t aWNfY3J0Y19zdGF0ZSAqY3J0YywKKwkJCQlzdHJ1Y3Qga21zX2F0b21pY19wbGFuZV9zdGF0ZSAq cGxhbmVfb2xkLAorCQkJCXN0cnVjdCBrbXNfYXRvbWljX2Nvbm5lY3Rvcl9zdGF0ZSAqY29ubikK K3sKKwlzdHJ1Y3Qga21zX2F0b21pY19wbGFuZV9zdGF0ZSBwbGFuZSA9ICpwbGFuZV9vbGQ7CisJ ZHJtTW9kZUF0b21pY1JlcSAqcmVxID0gZHJtTW9kZUF0b21pY0FsbG9jKCk7CisJaW50IHRpbWVs aW5lLCBmZW5jZV9mZDsKKworCWlndF9yZXF1aXJlX3N3X3N5bmMoKTsKKworCS8qIGludmFsaWQg ZmVuY2UgZmQgKi8KKwlwbGFuZS5mZW5jZV9mZCA9IHBsYW5lLnN0YXRlLT5kZXNjLT5mZDsKKwlw bGFuZS5jcnRjX2lkID0gcGxhbmVfb2xkLT5jcnRjX2lkOworCXBsYW5lX2NvbW1pdF9hdG9taWNf ZXJyKCZwbGFuZSwgcGxhbmVfb2xkLCByZXEsCisJICAgICAgICAgICAgICAgICAgICAgICAgQVRP TUlDX1JFTEFYX05PTkUsIEVJTlZBTCk7CisKKwkvKiBWYWxpZCBmZW5jZV9mZCBidXQgaW52YWxp ZCBDUlRDICovCisJdGltZWxpbmUgPSBzd19zeW5jX3RpbWVsaW5lX2NyZWF0ZSgpOworCWZlbmNl X2ZkID0gIHN3X3N5bmNfZmVuY2VfY3JlYXRlKHRpbWVsaW5lLCAxKTsKKwlwbGFuZS5mZW5jZV9m ZCA9IGZlbmNlX2ZkOworCXBsYW5lLmNydGNfaWQgPSB+MFU7CisJcGxhbmVfY29tbWl0X2F0b21p Y19lcnIoJnBsYW5lLCBwbGFuZV9vbGQsIHJlcSwKKwkgICAgICAgICAgICAgICAgICAgICAgICBB VE9NSUNfUkVMQVhfTk9ORSwgRUlOVkFMKTsKKworCXBsYW5lLmZlbmNlX2ZkID0gLTE7CisJY2xv c2UoZmVuY2VfZmQpOworCWNsb3NlKHRpbWVsaW5lKTsKKworCWRybU1vZGVBdG9taWNGcmVlKHJl cSk7Cit9CisKIHN0YXRpYyB2b2lkIGNydGNfaW52YWxpZF9wYXJhbXMoc3RydWN0IGttc19hdG9t aWNfY3J0Y19zdGF0ZSAqY3J0Y19vbGQsCiAJCQkJc3RydWN0IGttc19hdG9taWNfcGxhbmVfc3Rh dGUgKnBsYW5lLAogCQkJCXN0cnVjdCBrbXNfYXRvbWljX2Nvbm5lY3Rvcl9zdGF0ZSAqY29ubikK QEAgLTEwNjMsMzAgKzExMDYsMzIgQEAgc3RhdGljIHZvaWQgY3J0Y19pbnZhbGlkX3BhcmFtcyhz dHJ1Y3Qga21zX2F0b21pY19jcnRjX3N0YXRlICpjcnRjX29sZCwKIAogCS8qIFBhc3MgYSBzZXJp ZXMgb2YgaW52YWxpZCBvYmplY3QgSURzIGZvciB0aGUgbW9kZSBJRC4gKi8KIAljcnRjLm1vZGUu aWQgPSBwbGFuZS0+b2JqOwotCWNydGNfY29tbWl0X2F0b21pY19lcnIoJmNydGMsIHBsYW5lLCBj cnRjX29sZCwgcGxhbmUsIHJlcSwKKwljcnRjX2NvbW1pdF9hdG9taWNfZXJyKCZjcnRjLCBwbGFu ZSwgY3J0Y19vbGQsIHBsYW5lLCByZXEsIDAsCiAJICAgICAgICAgICAgICAgICAgICAgICBBVE9N SUNfUkVMQVhfTk9ORSwgRUlOVkFMKTsKIAogCWNydGMubW9kZS5pZCA9IGNydGMub2JqOwotCWNy dGNfY29tbWl0X2F0b21pY19lcnIoJmNydGMsIHBsYW5lLCBjcnRjX29sZCwgcGxhbmUsIHJlcSwK KwljcnRjX2NvbW1pdF9hdG9taWNfZXJyKCZjcnRjLCBwbGFuZSwgY3J0Y19vbGQsIHBsYW5lLCBy ZXEsIDAsCiAJICAgICAgICAgICAgICAgICAgICAgICBBVE9NSUNfUkVMQVhfTk9ORSwgRUlOVkFM KTsKIAogCWNydGMubW9kZS5pZCA9IGNvbm4tPm9iajsKLQljcnRjX2NvbW1pdF9hdG9taWNfZXJy KCZjcnRjLCBwbGFuZSwgY3J0Y19vbGQsIHBsYW5lLCByZXEsCisJY3J0Y19jb21taXRfYXRvbWlj X2VycigmY3J0YywgcGxhbmUsIGNydGNfb2xkLCBwbGFuZSwgcmVxLCAwLAogCSAgICAgICAgICAg ICAgICAgICAgICAgQVRPTUlDX1JFTEFYX05PTkUsIEVJTlZBTCk7CiAKIAljcnRjLm1vZGUuaWQg PSBwbGFuZS0+ZmJfaWQ7Ci0JY3J0Y19jb21taXRfYXRvbWljX2VycigmY3J0YywgcGxhbmUsIGNy dGNfb2xkLCBwbGFuZSwgcmVxLAorCWNydGNfY29tbWl0X2F0b21pY19lcnIoJmNydGMsIHBsYW5l LCBjcnRjX29sZCwgcGxhbmUsIHJlcSwgMCwKIAkgICAgICAgICAgICAgICAgICAgICAgIEFUT01J Q19SRUxBWF9OT05FLCBFSU5WQUwpOwogCisJLyogc3VjY2Vzc2Z1bCBURVNUX09OTFkgd2l0aCBm ZW5jZXMgc2V0ICovCiAJY3J0Yy5tb2RlLmlkID0gY3J0Y19vbGQtPm1vZGUuaWQ7Ci0JY3J0Y19j b21taXRfYXRvbWljKCZjcnRjLCBwbGFuZSwgcmVxLCBBVE9NSUNfUkVMQVhfTk9ORSwgMCk7CisJ Y3J0Y19jb21taXRfYXRvbWljKCZjcnRjLCBwbGFuZSwgcmVxLCBBVE9NSUNfUkVMQVhfTk9ORSwK KwkJCSAgIERSTV9NT0RFX0FUT01JQ19URVNUX09OTFkpOwogCiAJLyogQ3JlYXRlIGEgYmxvYiB3 aGljaCBpcyB0aGUgd3Jvbmcgc2l6ZSB0byBiZSBhIHZhbGlkIG1vZGUuICovCiAJZG9fb3JfZGll KGRybU1vZGVDcmVhdGVQcm9wZXJ0eUJsb2IoY3J0Yy5zdGF0ZS0+ZGVzYy0+ZmQsCiAJCQkJCSAg ICBjcnRjLm1vZGUuZGF0YSwKIAkJCQkJICAgIHNpemVvZihzdHJ1Y3QgZHJtX21vZGVfbW9kZWlu Zm8pIC0gMSwKIAkJCQkJICAgICZjcnRjLm1vZGUuaWQpKTsKLQljcnRjX2NvbW1pdF9hdG9taWNf ZXJyKCZjcnRjLCBwbGFuZSwgY3J0Y19vbGQsIHBsYW5lLCByZXEsCisJY3J0Y19jb21taXRfYXRv bWljX2VycigmY3J0YywgcGxhbmUsIGNydGNfb2xkLCBwbGFuZSwgcmVxLCAwLAogCSAgICAgICAg ICAgICAgICAgICAgICAgQVRPTUlDX1JFTEFYX05PTkUsIEVJTlZBTCk7CiAKIApAQCAtMTA5NCwx NSArMTEzOSwxMDcgQEAgc3RhdGljIHZvaWQgY3J0Y19pbnZhbGlkX3BhcmFtcyhzdHJ1Y3Qga21z X2F0b21pY19jcnRjX3N0YXRlICpjcnRjX29sZCwKIAkJCQkJICAgIGNydGMubW9kZS5kYXRhLAog CQkJCQkgICAgc2l6ZW9mKHN0cnVjdCBkcm1fbW9kZV9tb2RlaW5mbykgKyAxLAogCQkJCQkgICAg JmNydGMubW9kZS5pZCkpOwotCWNydGNfY29tbWl0X2F0b21pY19lcnIoJmNydGMsIHBsYW5lLCBj cnRjX29sZCwgcGxhbmUsIHJlcSwKKwljcnRjX2NvbW1pdF9hdG9taWNfZXJyKCZjcnRjLCBwbGFu ZSwgY3J0Y19vbGQsIHBsYW5lLCByZXEsIDAsCiAJICAgICAgICAgICAgICAgICAgICAgICBBVE9N SUNfUkVMQVhfTk9ORSwgRUlOVkFMKTsKIAorCiAJLyogUmVzdG9yZSB0aGUgQ1JUQyBhbmQgY2hl Y2sgdGhlIHN0YXRlIG1hdGNoZXMgdGhlIG9sZC4gKi8KIAljcnRjX2NvbW1pdF9hdG9taWMoY3J0 Y19vbGQsIHBsYW5lLCByZXEsIEFUT01JQ19SRUxBWF9OT05FLCAwKTsKIAogCWRybU1vZGVBdG9t aWNGcmVlKHJlcSk7CiB9CiAKK3N0YXRpYyB2b2lkIGNydGNfaW52YWxpZF9wYXJhbXNfZmVuY2Uo c3RydWN0IGttc19hdG9taWNfY3J0Y19zdGF0ZSAqY3J0Y19vbGQsCisJCQkJc3RydWN0IGttc19h dG9taWNfcGxhbmVfc3RhdGUgKnBsYW5lLAorCQkJCXN0cnVjdCBrbXNfYXRvbWljX2Nvbm5lY3Rv cl9zdGF0ZSAqY29ubikKK3sKKwlzdHJ1Y3Qga21zX2F0b21pY19jcnRjX3N0YXRlIGNydGMgPSAq Y3J0Y19vbGQ7CisJZHJtTW9kZUF0b21pY1JlcSAqcmVxID0gZHJtTW9kZUF0b21pY0FsbG9jKCk7 CisJaW50IHRpbWVsaW5lLCBmZW5jZV9mZCwgKm91dF9mZW5jZTsKKworCWlndF9yZXF1aXJlX3N3 X3N5bmMoKTsKKworCS8qIGludmFsaWQgb3V0X2ZlbmNlX3B0ciAqLworCWNydGMubW9kZS5pZCA9 IGNydGNfb2xkLT5tb2RlLmlkOworCWNydGMub3V0X2ZlbmNlX3B0ciA9ICh1aW50NjRfdCkodWlu dHB0cl90KSBjcnRjX2ludmFsaWRfcGFyYW1zOworCWNydGNfY29tbWl0X2F0b21pY19lcnIoJmNy dGMsIHBsYW5lLCBjcnRjX29sZCwgcGxhbmUsIHJlcSwgMCwKKwkgICAgICAgICAgICAgICAgICAg ICAgIEFUT01JQ19SRUxBWF9OT05FLCBFRkFVTFQpOworCisJLyogaW52YWxpZCBvdXRfZmVuY2Vf cHRyICovCisJY3J0Yy5tb2RlLmlkID0gY3J0Y19vbGQtPm1vZGUuaWQ7CisJY3J0Yy5vdXRfZmVu Y2VfcHRyID0gKHVpbnQ2NF90KSh1aW50cHRyX3QpIDB4ODsKKwljcnRjX2NvbW1pdF9hdG9taWNf ZXJyKCZjcnRjLCBwbGFuZSwgY3J0Y19vbGQsIHBsYW5lLCByZXEsIDAsCisJICAgICAgICAgICAg ICAgICAgICAgICBBVE9NSUNfUkVMQVhfTk9ORSwgRUZBVUxUKTsKKwljcnRjLm91dF9mZW5jZV9w dHIgPSAodWludDY0X3QpKHVpbnRwdHJfdCkgMDsKKworCS8qIHZhbGlkIGluIGZlbmNlIGJ1dCBu b3QgYWxsb3dlZCBwcm9wIG9uIGNydGMgKi8KKwl0aW1lbGluZSA9IHN3X3N5bmNfdGltZWxpbmVf Y3JlYXRlKCk7CisJZmVuY2VfZmQgPSAgc3dfc3luY19mZW5jZV9jcmVhdGUodGltZWxpbmUsIDEp OworCXBsYW5lLT5mZW5jZV9mZCA9IGZlbmNlX2ZkOworCWNydGMuYWN0aXZlID0gZmFsc2U7CisJ Y3J0Y19jb21taXRfYXRvbWljX2VycigmY3J0YywgcGxhbmUsIGNydGNfb2xkLCBwbGFuZSwgcmVx LCAwLAorCQkJICAgICAgIEFUT01JQ19SRUxBWF9OT05FLCBFSU5WQUwpOworCisJb3V0X2ZlbmNl ID0gbWFsbG9jKHNpemVvZih1aW50NjRfdCkpOworCWlndF9hc3NlcnQob3V0X2ZlbmNlKTsKKwor CisJLyogdmFsaWQgb3V0IGZlbmNlIHB0ciBhbmQgZmxpcCBldmVudCBidXQgbm90IGFsbG93ZWQg cHJvcCBvbiBjcnRjICovCisJY3J0Yy5vdXRfZmVuY2VfcHRyID0gKHVpbnQ2NF90KSh1aW50cHRy X3QpIG91dF9mZW5jZTsKKwljcnRjX2NvbW1pdF9hdG9taWNfZXJyKCZjcnRjLCBwbGFuZSwgY3J0 Y19vbGQsIHBsYW5lLCByZXEsIDAsCisJCQkgICAgICAgQVRPTUlDX1JFTEFYX05PTkUsIEVJTlZB TCk7CisKKwkvKiB2YWxpZCBvdXQgZmVuY2UgcHRyIGFuZCBmbGlwIGV2ZW50IGJ1dCBub3QgYWxs b3dlZCBwcm9wIG9uIGNydGMgKi8KKwljcnRjX2NvbW1pdF9hdG9taWNfZXJyKCZjcnRjLCBwbGFu ZSwgY3J0Y19vbGQsIHBsYW5lLCByZXEsCisJCQkgICAgICAgRFJNX01PREVfUEFHRV9GTElQX0VW RU5ULAorCQkJICAgICAgIEFUT01JQ19SRUxBWF9OT05FLCBFSU5WQUwpOworCisJLyogdmFsaWQg cGFnZSBmbGlwIGV2ZW50IGJ1dCBub3QgYWxsb3dlZCBwcm9wIG9uIGNydGMgKi8KKwljcnRjLm91 dF9mZW5jZV9wdHIgPSAodWludDY0X3QpKHVpbnRwdHJfdCkgMDsKKwljcnRjX2NvbW1pdF9hdG9t aWNfZXJyKCZjcnRjLCBwbGFuZSwgY3J0Y19vbGQsIHBsYW5lLCByZXEsCisJCQkgICAgICAgRFJN X01PREVfUEFHRV9GTElQX0VWRU5ULAorCQkJICAgICAgIEFUT01JQ19SRUxBWF9OT05FLCBFSU5W QUwpOworCWNydGMuYWN0aXZlID0gdHJ1ZTsKKworCS8qIHZhbGlkIG91dCBmZW5jZSAgcHRyIGFu ZCBmbGlwIGV2ZW50IGJ1dCBpbnZhbGlkIHByb3Agb24gY3J0YyAqLworCWNydGMub3V0X2ZlbmNl X3B0ciA9ICh1aW50NjRfdCkodWludHB0cl90KSBvdXRfZmVuY2U7CisJY3J0Yy5tb2RlLmlkID0g cGxhbmUtPmZiX2lkOworCWNydGNfY29tbWl0X2F0b21pY19lcnIoJmNydGMsIHBsYW5lLCBjcnRj X29sZCwgcGxhbmUsIHJlcSwgMCwKKwkJCSAgICAgICBBVE9NSUNfUkVMQVhfTk9ORSwgRUlOVkFM KTsKKworCS8qIHZhbGlkIG91dCBmZW5jZSBwdHIgYW5kIGZsaXAgZXZlbnQgYnV0IGludmFsaWQg cHJvcCBvbiBjcnRjICovCisJY3J0Y19jb21taXRfYXRvbWljX2VycigmY3J0YywgcGxhbmUsIGNy dGNfb2xkLCBwbGFuZSwgcmVxLAorCQkJICAgICAgIERSTV9NT0RFX1BBR0VfRkxJUF9FVkVOVCwK KwkJCSAgICAgICBBVE9NSUNfUkVMQVhfTk9ORSwgRUlOVkFMKTsKKworCS8qIHZhbGlkIHBhZ2Ug ZmxpcCBldmVudCBidXQgaW52YWxpZCBwcm9wIG9uIGNydGMgKi8KKwljcnRjLm91dF9mZW5jZV9w dHIgPSAodWludDY0X3QpKHVpbnRwdHJfdCkgMDsKKwljcnRjX2NvbW1pdF9hdG9taWNfZXJyKCZj cnRjLCBwbGFuZSwgY3J0Y19vbGQsIHBsYW5lLCByZXEsCisJCQkgICAgICAgRFJNX01PREVfUEFH RV9GTElQX0VWRU5ULAorCQkJICAgICAgIEFUT01JQ19SRUxBWF9OT05FLCBFSU5WQUwpOworCisJ Lyogc3VjY2Vzc2Z1bCBURVNUX09OTFkgd2l0aCBmZW5jZXMgc2V0ICovCisJcGxhbmUtPmZlbmNl X2ZkID0gZmVuY2VfZmQ7CisJY3J0Yy5tb2RlLmlkID0gY3J0Y19vbGQtPm1vZGUuaWQ7CisJY3J0 Y19jb21taXRfYXRvbWljKCZjcnRjLCBwbGFuZSwgcmVxLCBBVE9NSUNfUkVMQVhfTk9ORSwKKwkJ CSAgIERSTV9NT0RFX0FUT01JQ19URVNUX09OTFkpOworCWlndF9hc3NlcnQoKm91dF9mZW5jZSA9 PSAtMSk7CisJY2xvc2UoZmVuY2VfZmQpOworCWNsb3NlKHRpbWVsaW5lKTsKKworCS8qIHJlc2V0 IGZlbmNlcyAqLworCXBsYW5lLT5mZW5jZV9mZCA9IC0xOworCWNydGMub3V0X2ZlbmNlX3B0ciA9 ICh1aW50NjRfdCkodWludHB0cl90KSAwOworCWNydGNfY29tbWl0X2F0b21pYygmY3J0YywgcGxh bmUsIHJlcSwgQVRPTUlDX1JFTEFYX05PTkUsIDApOworCisJLyogb3V0IGZlbmNlIHB0ciBidXQg bm90IHBhZ2UgZmxpcCBldmVudCAqLworCWNydGMub3V0X2ZlbmNlX3B0ciA9ICh1aW50NjRfdCko dWludHB0cl90KSBvdXRfZmVuY2U7CisJY3J0Y19jb21taXRfYXRvbWljKGNydGNfb2xkLCBwbGFu ZSwgcmVxLCBBVE9NSUNfUkVMQVhfTk9ORSwgMCk7CisKKwlmcmVlKG91dF9mZW5jZSk7CisJZHJt TW9kZUF0b21pY0ZyZWUocmVxKTsKK30KKwogLyogQWJ1c2UgdGhlIGF0b21pYyBpb2N0bCBkaXJl Y3RseSBpbiBvcmRlciB0byB0ZXN0IHZhcmlvdXMgaW52YWxpZCBjb25kaXRpb25zLAogICogd2hp Y2ggdGhlIGxpYmRybSB3cmFwcGVyIHdvbid0IGFsbG93IHVzIHRvIGNyZWF0ZS4gKi8KIHN0YXRp YyB2b2lkIGF0b21pY19pbnZhbGlkX3BhcmFtcyhzdHJ1Y3Qga21zX2F0b21pY19jcnRjX3N0YXRl ICpjcnRjLApAQCAtMTMwNiw2ICsxNDQzLDIwIEBAIGlndF9tYWluCiAJCWF0b21pY19zdGF0ZV9m cmVlKHNjcmF0Y2gpOwogCX0KIAorCWlndF9zdWJ0ZXN0KCJwbGFuZV9pbnZhbGlkX3BhcmFtc19m ZW5jZSIpIHsKKwkJc3RydWN0IGttc19hdG9taWNfc3RhdGUgKnNjcmF0Y2ggPSBhdG9taWNfc3Rh dGVfZHVwKGN1cnJlbnQpOworCQlzdHJ1Y3Qga21zX2F0b21pY19jcnRjX3N0YXRlICpjcnRjID0g ZmluZF9jcnRjKHNjcmF0Y2gsIHRydWUpOworCQlzdHJ1Y3Qga21zX2F0b21pY19wbGFuZV9zdGF0 ZSAqcGxhbmUgPQorCQkJZmluZF9wbGFuZShjdXJyZW50LCBQTEFORV9UWVBFX1BSSU1BUlksIGNy dGMpOworCQlzdHJ1Y3Qga21zX2F0b21pY19jb25uZWN0b3Jfc3RhdGUgKmNvbm4gPQorCQkJZmlu ZF9jb25uZWN0b3Ioc2NyYXRjaCwgY3J0Yyk7CisKKwkJaWd0X3JlcXVpcmUoY3J0Yyk7CisJCWln dF9yZXF1aXJlKHBsYW5lKTsKKwkJcGxhbmVfaW52YWxpZF9wYXJhbXNfZmVuY2UoY3J0YywgcGxh bmUsIGNvbm4pOworCQlhdG9taWNfc3RhdGVfZnJlZShzY3JhdGNoKTsKKwl9CisKIAlpZ3Rfc3Vi dGVzdCgiY3J0Y19pbnZhbGlkX3BhcmFtcyIpIHsKIAkJc3RydWN0IGttc19hdG9taWNfc3RhdGUg KnNjcmF0Y2ggPSBhdG9taWNfc3RhdGVfZHVwKGN1cnJlbnQpOwogCQlzdHJ1Y3Qga21zX2F0b21p Y19jcnRjX3N0YXRlICpjcnRjID0gZmluZF9jcnRjKHNjcmF0Y2gsIHRydWUpOwpAQCAtMTMyMSw2 ICsxNDcyLDIxIEBAIGlndF9tYWluCiAJCWF0b21pY19zdGF0ZV9mcmVlKHNjcmF0Y2gpOwogCX0K IAorCWlndF9zdWJ0ZXN0KCJjcnRjX2ludmFsaWRfcGFyYW1zX2ZlbmNlIikgeworCQlzdHJ1Y3Qg a21zX2F0b21pY19zdGF0ZSAqc2NyYXRjaCA9IGF0b21pY19zdGF0ZV9kdXAoY3VycmVudCk7CisJ CXN0cnVjdCBrbXNfYXRvbWljX2NydGNfc3RhdGUgKmNydGMgPSBmaW5kX2NydGMoc2NyYXRjaCwg dHJ1ZSk7CisJCXN0cnVjdCBrbXNfYXRvbWljX3BsYW5lX3N0YXRlICpwbGFuZSA9CisJCQlmaW5k X3BsYW5lKHNjcmF0Y2gsIE5VTV9QTEFORV9UWVBFX1BST1BTLCBjcnRjKTsKKwkJc3RydWN0IGtt c19hdG9taWNfY29ubmVjdG9yX3N0YXRlICpjb25uID0KKwkJCWZpbmRfY29ubmVjdG9yKHNjcmF0 Y2gsIGNydGMpOworCisJCWlndF9yZXF1aXJlKGNydGMpOworCQlpZ3RfcmVxdWlyZShwbGFuZSk7 CisJCWlndF9yZXF1aXJlKGNvbm4pOworCQljcnRjX2ludmFsaWRfcGFyYW1zX2ZlbmNlKGNydGMs IHBsYW5lLCBjb25uKTsKKwkJYXRvbWljX3N0YXRlX2ZyZWUoc2NyYXRjaCk7CisJfQorCiAJaWd0 X3N1YnRlc3QoImF0b21pY19pbnZhbGlkX3BhcmFtcyIpIHsKIAkJc3RydWN0IGttc19hdG9taWNf c3RhdGUgKnNjcmF0Y2ggPSBhdG9taWNfc3RhdGVfZHVwKGN1cnJlbnQpOwogCQlzdHJ1Y3Qga21z X2F0b21pY19jcnRjX3N0YXRlICpjcnRjID0gZmluZF9jcnRjKHNjcmF0Y2gsIHRydWUpOwotLSAK Mi4xMS4wCgpfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwpJ bnRlbC1nZnggbWFpbGluZyBsaXN0CkludGVsLWdmeEBsaXN0cy5mcmVlZGVza3RvcC5vcmcKaHR0 cHM6Ly9saXN0cy5mcmVlZGVza3RvcC5vcmcvbWFpbG1hbi9saXN0aW5mby9pbnRlbC1nZngK