From mboxrd@z Thu Jan 1 00:00:00 1970 From: =?UTF-8?q?Rafa=C5=82=20Mi=C5=82ecki?= Subject: [PATCH 2/6] drm/radeon/kms: clean assigning HDMI blocks to encoders Date: Sat, 6 Mar 2010 14:03:34 +0100 Message-ID: <1267880618-9909-3-git-send-email-zajec5@gmail.com> References: <1267880618-9909-1-git-send-email-zajec5@gmail.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: In-Reply-To: <1267880618-9909-1-git-send-email-zajec5@gmail.com> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dri-devel-bounces@lists.sourceforge.net To: dri-devel@lists.sourceforge.net, Dave Airlie Cc: =?UTF-8?q?Christian=20K=C3=B6nig?= List-Id: dri-devel@lists.freedesktop.org V2UgYWxtb3N0IGFsd2F5cyB1c2VkIGZpcnN0IEhETUkgYmxvY2sgZm9yIGZpcnN0IGVuY29kZXIg YW5kIHNlY29uZCBmb3Igc2VuY29kLgpFeGNlcHRpb24gd2FzIEtMRFNDUF9MVlRNQS4gQW5hbHl6 aW5nIGNvZGUgcGlja2luZyBESUcgZW5jb2RlciBzaG93cyB0aGUgc2FtZQpiZWhhdmlvdXIuIEl0 IHNob3dzIEhETUkgYmxvY2sgYXJlIHJlbGF0ZWQgdG8gRElHcywgd2hpY2ggcmVsYXRpb24gd2Ug bm93IHVzZS4KClNpZ25lZC1vZmYtYnk6IFJhZmHFgiBNacWCZWNraSA8emFqZWM1QGdtYWlsLmNv bT4KLS0tCiBkcml2ZXJzL2dwdS9kcm0vcmFkZW9uL3I2MDBfYXVkaW8uYyAgICAgIHwgICAxMiAr KystCiBkcml2ZXJzL2dwdS9kcm0vcmFkZW9uL3I2MDBfaGRtaS5jICAgICAgIHwgIDExNCArKysr KysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0KIGRyaXZlcnMvZ3B1L2RybS9yYWRlb24vcmFkZW9u LmggICAgICAgICAgfCAgICAzICstCiBkcml2ZXJzL2dwdS9kcm0vcmFkZW9uL3JhZGVvbl9lbmNv ZGVycy5jIHwgICAxMCArKy0tCiA0IGZpbGVzIGNoYW5nZWQsIDY3IGluc2VydGlvbnMoKyksIDcy IGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9yYWRlb24vcjYwMF9h dWRpby5jIGIvZHJpdmVycy9ncHUvZHJtL3JhZGVvbi9yNjAwX2F1ZGlvLmMKaW5kZXggZGI5Mjgw MS4uMjg5N2JkNyAxMDA2NDQKLS0tIGEvZHJpdmVycy9ncHUvZHJtL3JhZGVvbi9yNjAwX2F1ZGlv LmMKKysrIGIvZHJpdmVycy9ncHUvZHJtL3JhZGVvbi9yNjAwX2F1ZGlvLmMKQEAgLTIyNCw4ICsy MjQsMTQgQEAgdm9pZCByNjAwX2F1ZGlvX3NldF9jbG9jayhzdHJ1Y3QgZHJtX2VuY29kZXIgKmVu Y29kZXIsIGludCBjbG9jaykKIAlzdHJ1Y3QgZHJtX2RldmljZSAqZGV2ID0gZW5jb2Rlci0+ZGV2 OwogCXN0cnVjdCByYWRlb25fZGV2aWNlICpyZGV2ID0gZGV2LT5kZXZfcHJpdmF0ZTsKIAlzdHJ1 Y3QgcmFkZW9uX2VuY29kZXIgKnJhZGVvbl9lbmNvZGVyID0gdG9fcmFkZW9uX2VuY29kZXIoZW5j b2Rlcik7CisJc3RydWN0IHJhZGVvbl9lbmNvZGVyX2F0b21fZGlnICpkaWcgPSByYWRlb25fZW5j b2Rlci0+ZW5jX3ByaXY7CiAJaW50IGJhc2VfcmF0ZSA9IDQ4MDAwOwogCisJaWYgKCFkaWcpIHsK KwkJZGV2X2VycihyZGV2LT5kZXYsICJTZXR0aW5nIGF1ZGlvIGNsb2NrIG9uIG5vbi1kaWcgZW5j b2RlclxuIik7CisJCXJldHVybjsKKwl9CisKIAlzd2l0Y2ggKHJhZGVvbl9lbmNvZGVyLT5lbmNv ZGVyX2lkKSB7CiAJY2FzZSBFTkNPREVSX09CSkVDVF9JRF9JTlRFUk5BTF9LTERTQ1BfVE1EUzE6 CiAJY2FzZSBFTkNPREVSX09CSkVDVF9JRF9JTlRFUk5BTF9MVlRNMToKQEAgLTI0NSw3ICsyNTEs NyBAQCB2b2lkIHI2MDBfYXVkaW9fc2V0X2Nsb2NrKHN0cnVjdCBkcm1fZW5jb2RlciAqZW5jb2Rl ciwgaW50IGNsb2NrKQogCQlyZXR1cm47CiAJfQogCi0Jc3dpdGNoIChyNjAwX2F1ZGlvX3RtZHNf aW5kZXgoZW5jb2RlcikpIHsKKwlzd2l0Y2ggKGRpZy0+ZGlnX2VuY29kZXIpIHsKIAljYXNlIDA6 CiAJCVdSRUczMihSNjAwX0FVRElPX1BMTDFfTVVMLCBiYXNlX3JhdGUqNTApOwogCQlXUkVHMzIo UjYwMF9BVURJT19QTEwxX0RJViwgY2xvY2sqMTAwKTsKQEAgLTI1Nyw2ICsyNjMsMTAgQEAgdm9p ZCByNjAwX2F1ZGlvX3NldF9jbG9jayhzdHJ1Y3QgZHJtX2VuY29kZXIgKmVuY29kZXIsIGludCBj bG9jaykKIAkJV1JFRzMyKFI2MDBfQVVESU9fUExMMl9ESVYsIGNsb2NrKjEwMCk7CiAJCVdSRUcz MihSNjAwX0FVRElPX0NMS19TUkNTRUwsIDEpOwogCQlicmVhazsKKwlkZWZhdWx0OgorCQlkZXZf ZXJyKHJkZXYtPmRldiwgIlVuc3VwcG9ydGVkIERJRyBvbiBlbmNvZGVyIDB4JTAyWFxuIiwKKwkJ CSAgcmFkZW9uX2VuY29kZXItPmVuY29kZXJfaWQpOworCQlyZXR1cm47CiAJfQogfQogCmRpZmYg LS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vcmFkZW9uL3I2MDBfaGRtaS5jIGIvZHJpdmVycy9ncHUv ZHJtL3JhZGVvbi9yNjAwX2hkbWkuYwppbmRleCA0ZDA5OTczLi41Mjc1YTgxIDEwMDY0NAotLS0g YS9kcml2ZXJzL2dwdS9kcm0vcmFkZW9uL3I2MDBfaGRtaS5jCisrKyBiL2RyaXZlcnMvZ3B1L2Ry bS9yYWRlb24vcjYwMF9oZG1pLmMKQEAgLTQxNyw5MCArNDE3LDc0IEBAIHZvaWQgcjYwMF9oZG1p X3VwZGF0ZV9hdWRpb19zZXR0aW5ncyhzdHJ1Y3QgZHJtX2VuY29kZXIgKmVuY29kZXIsCiAJV1JF RzMyX1Aob2Zmc2V0K1I2MDBfSERNSV9DTlRMLCAweDA0MDAwMDAwLCB+MHgwNDAwMDAwMCk7CiB9 CiAKLS8qCi0gKiBlbmFibGUvZGlzYWJsZSB0aGUgSERNSSBlbmdpbmUKLSAqLwotdm9pZCByNjAw X2hkbWlfZW5hYmxlKHN0cnVjdCBkcm1fZW5jb2RlciAqZW5jb2RlciwgaW50IGVuYWJsZSkKK3N0 YXRpYyB2b2lkIHI2MDBfaGRtaV9hc3NpZ25fYmxvY2soc3RydWN0IGRybV9lbmNvZGVyICplbmNv ZGVyKQogewogCXN0cnVjdCBkcm1fZGV2aWNlICpkZXYgPSBlbmNvZGVyLT5kZXY7CiAJc3RydWN0 IHJhZGVvbl9kZXZpY2UgKnJkZXYgPSBkZXYtPmRldl9wcml2YXRlOwogCXN0cnVjdCByYWRlb25f ZW5jb2RlciAqcmFkZW9uX2VuY29kZXIgPSB0b19yYWRlb25fZW5jb2RlcihlbmNvZGVyKTsKLQl1 aW50MzJfdCBvZmZzZXQgPSB0b19yYWRlb25fZW5jb2RlcihlbmNvZGVyKS0+aGRtaV9vZmZzZXQ7 CisJc3RydWN0IHJhZGVvbl9lbmNvZGVyX2F0b21fZGlnICpkaWcgPSByYWRlb25fZW5jb2Rlci0+ ZW5jX3ByaXY7CiAKLQlpZiAoIW9mZnNldCkKKwlpZiAoIWRpZykgeworCQlkZXZfZXJyKHJkZXYt PmRldiwgIkVuYWJsaW5nIEhETUkgb24gbm9uLWRpZyBlbmNvZGVyXG4iKTsKIAkJcmV0dXJuOwor CX0KIAotCURSTV9ERUJVRygiJXMgSERNSSBpbnRlcmZhY2UgQCAweCUwNFhcbiIsIGVuYWJsZSA/ ICJFbmFibGluZyIgOiAiRGlzYWJsaW5nIiwgb2Zmc2V0KTsKLQotCS8qIHNvbWUgdmVyc2lvbiBv ZiBhdG9tYmlvcyBpZ25vcmUgdGhlIGVuYWJsZSBIRE1JIGZsYWcKLQkgKiBzbyBlbmFibGluZy9k aXNhYmxpbmcgSERNSSB3YXMgbW92ZWQgaGVyZSBmb3IgVE1EUzErMiAqLwotCXN3aXRjaCAocmFk ZW9uX2VuY29kZXItPmVuY29kZXJfaWQpIHsKLQljYXNlIEVOQ09ERVJfT0JKRUNUX0lEX0lOVEVS TkFMX0tMRFNDUF9UTURTMToKLQkJV1JFRzMyX1AoQVZJVk9fVE1EU0FfQ05UTCwgZW5hYmxlID8g MHg0IDogMHgwLCB+MHg0KTsKLQkJV1JFRzMyKG9mZnNldCtSNjAwX0hETUlfRU5BQkxFLCBlbmFi bGUgPyAweDEwMSA6IDB4MCk7Ci0JCWJyZWFrOwotCi0JY2FzZSBFTkNPREVSX09CSkVDVF9JRF9J TlRFUk5BTF9MVlRNMToKLQkJV1JFRzMyX1AoQVZJVk9fTFZUTUFfQ05UTCwgZW5hYmxlID8gMHg0 IDogMHgwLCB+MHg0KTsKLQkJV1JFRzMyKG9mZnNldCtSNjAwX0hETUlfRU5BQkxFLCBlbmFibGUg PyAweDEwNSA6IDB4MCk7Ci0JCWJyZWFrOwotCi0JY2FzZSBFTkNPREVSX09CSkVDVF9JRF9JTlRF Uk5BTF9VTklQSFk6Ci0JY2FzZSBFTkNPREVSX09CSkVDVF9JRF9JTlRFUk5BTF9VTklQSFkxOgot CWNhc2UgRU5DT0RFUl9PQkpFQ1RfSURfSU5URVJOQUxfVU5JUEhZMjoKLQljYXNlIEVOQ09ERVJf T0JKRUNUX0lEX0lOVEVSTkFMX0tMRFNDUF9MVlRNQToKLQkJLyogVGhpcyBwYXJ0IGlzIGRvdWJ0 ZnVsbCBpbiBteSBvcGluaW9uICovCi0JCVdSRUczMihvZmZzZXQrUjYwMF9IRE1JX0VOQUJMRSwg ZW5hYmxlID8gMHgxMTAgOiAweDApOwotCQlicmVhazsKLQotCWRlZmF1bHQ6Ci0JCURSTV9FUlJP UigidW5rbm93biBIRE1JIG91dHB1dCB0eXBlXG4iKTsKLQkJYnJlYWs7CisJaWYgKEFTSUNfSVNf RENFNChyZGV2KSkgeworCQkvKiBUT0RPICovCisJfSBlbHNlIGlmIChBU0lDX0lTX0RDRTMocmRl dikpIHsKKwkJcmFkZW9uX2VuY29kZXItPmhkbWlfb2Zmc2V0ID0gZGlnLT5kaWdfZW5jb2RlciA/ CisJCQlSNjAwX0hETUlfQkxPQ0szIDogUjYwMF9IRE1JX0JMT0NLMTsKKwkJaWYgKEFTSUNfSVNf RENFMzIocmRldikpCisJCQlyYWRlb25fZW5jb2Rlci0+aGRtaV9jb25maWdfb2Zmc2V0ID0gZGln LT5kaWdfZW5jb2RlciA/CisJCQkJUjYwMF9IRE1JX0NPTkZJRzIgOiBSNjAwX0hETUlfQ09ORklH MTsKIAl9CiB9CiAKIC8qCi0gKiBkZXRlcm1pbiBhdCB3aGljaCByZWdpc3RlciBvZmZzZXQgdGhl IEhETUkgZW5jb2RlciBpcworICogZW5hYmxlIHRoZSBIRE1JIGVuZ2luZQogICovCi12b2lkIHI2 MDBfaGRtaV9pbml0KHN0cnVjdCBkcm1fZW5jb2RlciAqZW5jb2RlcikKK3ZvaWQgcjYwMF9oZG1p X2VuYWJsZShzdHJ1Y3QgZHJtX2VuY29kZXIgKmVuY29kZXIpCiB7CisJc3RydWN0IGRybV9kZXZp Y2UgKmRldiA9IGVuY29kZXItPmRldjsKKwlzdHJ1Y3QgcmFkZW9uX2RldmljZSAqcmRldiA9IGRl di0+ZGV2X3ByaXZhdGU7CiAJc3RydWN0IHJhZGVvbl9lbmNvZGVyICpyYWRlb25fZW5jb2RlciA9 IHRvX3JhZGVvbl9lbmNvZGVyKGVuY29kZXIpOwogCi0Jc3dpdGNoIChyYWRlb25fZW5jb2Rlci0+ ZW5jb2Rlcl9pZCkgewotCWNhc2UgRU5DT0RFUl9PQkpFQ1RfSURfSU5URVJOQUxfS0xEU0NQX1RN RFMxOgotCWNhc2UgRU5DT0RFUl9PQkpFQ1RfSURfSU5URVJOQUxfVU5JUEhZOgotCWNhc2UgRU5D T0RFUl9PQkpFQ1RfSURfSU5URVJOQUxfVU5JUEhZMToKLQkJcmFkZW9uX2VuY29kZXItPmhkbWlf b2Zmc2V0ID0gUjYwMF9IRE1JX0JMT0NLMTsKLQkJYnJlYWs7Ci0KLQljYXNlIEVOQ09ERVJfT0JK RUNUX0lEX0lOVEVSTkFMX0xWVE0xOgotCQlzd2l0Y2ggKHI2MDBfYXVkaW9fdG1kc19pbmRleChl bmNvZGVyKSkgewotCQljYXNlIDA6Ci0JCQlyYWRlb25fZW5jb2Rlci0+aGRtaV9vZmZzZXQgPSBS NjAwX0hETUlfQkxPQ0sxOwotCQkJYnJlYWs7Ci0JCWNhc2UgMToKLQkJCXJhZGVvbl9lbmNvZGVy LT5oZG1pX29mZnNldCA9IFI2MDBfSERNSV9CTE9DSzI7Ci0JCQlicmVhazsKLQkJZGVmYXVsdDoK LQkJCXJhZGVvbl9lbmNvZGVyLT5oZG1pX29mZnNldCA9IDA7Ci0JCQlicmVhazsKKwlpZiAoIXJh ZGVvbl9lbmNvZGVyLT5oZG1pX29mZnNldCkgeworCQlyNjAwX2hkbWlfYXNzaWduX2Jsb2NrKGVu Y29kZXIpOworCQlpZiAoIXJhZGVvbl9lbmNvZGVyLT5oZG1pX29mZnNldCkgeworCQkJZGV2X3dh cm4ocmRldi0+ZGV2LCAiQ291bGQgbm90IGZpbmQgSERNSSBibG9jayBmb3IgIgorCQkJCSIweCV4 IGVuY29kZXJcbiIsIHJhZGVvbl9lbmNvZGVyLT5lbmNvZGVyX2lkKTsKKwkJCXJldHVybjsKIAkJ fQotCWNhc2UgRU5DT0RFUl9PQkpFQ1RfSURfSU5URVJOQUxfVU5JUEhZMjoKLQkJcmFkZW9uX2Vu Y29kZXItPmhkbWlfb2Zmc2V0ID0gUjYwMF9IRE1JX0JMT0NLMjsKLQkJYnJlYWs7CisJfQogCi0J Y2FzZSBFTkNPREVSX09CSkVDVF9JRF9JTlRFUk5BTF9LTERTQ1BfTFZUTUE6Ci0JCXJhZGVvbl9l bmNvZGVyLT5oZG1pX29mZnNldCA9IFI2MDBfSERNSV9CTE9DSzM7Ci0JCWJyZWFrOworCWlmIChB U0lDX0lTX0RDRTMyKHJkZXYpICYmICFBU0lDX0lTX0RDRTQocmRldikpCisJCVdSRUczMl9QKHJh ZGVvbl9lbmNvZGVyLT5oZG1pX2NvbmZpZ19vZmZzZXQgKyAweDQsIDB4MSwgfjB4MSk7CisKKwlE Uk1fREVCVUcoIkVuYWJsaW5nIEhETUkgaW50ZXJmYWNlIEAgMHglMDRYIGZvciBlbmNvZGVyIDB4 JXhcbiIsCisJCXJhZGVvbl9lbmNvZGVyLT5oZG1pX29mZnNldCwgcmFkZW9uX2VuY29kZXItPmVu Y29kZXJfaWQpOworfQogCi0JZGVmYXVsdDoKLQkJcmFkZW9uX2VuY29kZXItPmhkbWlfb2Zmc2V0 ID0gMDsKLQkJYnJlYWs7CisvKgorICogZGlzYWJsZSB0aGUgSERNSSBlbmdpbmUKKyAqLwordm9p ZCByNjAwX2hkbWlfZGlzYWJsZShzdHJ1Y3QgZHJtX2VuY29kZXIgKmVuY29kZXIpCit7CisJc3Ry dWN0IGRybV9kZXZpY2UgKmRldiA9IGVuY29kZXItPmRldjsKKwlzdHJ1Y3QgcmFkZW9uX2Rldmlj ZSAqcmRldiA9IGRldi0+ZGV2X3ByaXZhdGU7CisJc3RydWN0IHJhZGVvbl9lbmNvZGVyICpyYWRl b25fZW5jb2RlciA9IHRvX3JhZGVvbl9lbmNvZGVyKGVuY29kZXIpOworCisJaWYgKCFyYWRlb25f ZW5jb2Rlci0+aGRtaV9vZmZzZXQpIHsKKwkJZGV2X2VycihyZGV2LT5kZXYsICJEaXNhYmxpbmcg bm90IGVuYWJsZWQgSERNSVxuIik7CisJCXJldHVybjsKIAl9CiAKLQlEUk1fREVCVUcoInVzaW5n IEhETUkgZW5naW5lIGF0IG9mZnNldCAweCUwNFggZm9yIGVuY29kZXIgMHgleFxuIiwKLQkJICBy YWRlb25fZW5jb2Rlci0+aGRtaV9vZmZzZXQsIHJhZGVvbl9lbmNvZGVyLT5lbmNvZGVyX2lkKTsK KwlEUk1fREVCVUcoIkRpc2FibGluZyBIRE1JIGludGVyZmFjZSBAIDB4JTA0WCBmb3IgZW5jb2Rl ciAweCV4XG4iLAorCQlyYWRlb25fZW5jb2Rlci0+aGRtaV9vZmZzZXQsIHJhZGVvbl9lbmNvZGVy LT5lbmNvZGVyX2lkKTsKKworCWlmIChBU0lDX0lTX0RDRTMyKHJkZXYpICYmICFBU0lDX0lTX0RD RTQocmRldikpCisJCVdSRUczMl9QKHJhZGVvbl9lbmNvZGVyLT5oZG1pX2NvbmZpZ19vZmZzZXQg KyAweDQsIDAsIH4weDEpOwogCi0JLyogVE9ETzogbWFrZSB0aGlzIGNvbmZpZ3VyZWFibGUgKi8K LQlyYWRlb25fZW5jb2Rlci0+aGRtaV9hdWRpb193b3JrYXJvdW5kID0gMDsKKwlyYWRlb25fZW5j b2Rlci0+aGRtaV9vZmZzZXQgPSAwOworCXJhZGVvbl9lbmNvZGVyLT5oZG1pX2NvbmZpZ19vZmZz ZXQgPSAwOwogfQpkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL3JhZGVvbi9yYWRlb24uaCBi L2RyaXZlcnMvZ3B1L2RybS9yYWRlb24vcmFkZW9uLmgKaW5kZXggMGQ3Y2FlZS4uYjU0ZDRmMyAx MDA2NDQKLS0tIGEvZHJpdmVycy9ncHUvZHJtL3JhZGVvbi9yYWRlb24uaAorKysgYi9kcml2ZXJz L2dwdS9kcm0vcmFkZW9uL3JhZGVvbi5oCkBAIC0xMzIzLDcgKzEzMjMsOCBAQCBleHRlcm4gaW50 IHI2MDBfYXVkaW9fdG1kc19pbmRleChzdHJ1Y3QgZHJtX2VuY29kZXIgKmVuY29kZXIpOwogZXh0 ZXJuIHZvaWQgcjYwMF9hdWRpb19zZXRfY2xvY2soc3RydWN0IGRybV9lbmNvZGVyICplbmNvZGVy LCBpbnQgY2xvY2spOwogZXh0ZXJuIHZvaWQgcjYwMF9hdWRpb19maW5pKHN0cnVjdCByYWRlb25f ZGV2aWNlICpyZGV2KTsKIGV4dGVybiB2b2lkIHI2MDBfaGRtaV9pbml0KHN0cnVjdCBkcm1fZW5j b2RlciAqZW5jb2Rlcik7Ci1leHRlcm4gdm9pZCByNjAwX2hkbWlfZW5hYmxlKHN0cnVjdCBkcm1f ZW5jb2RlciAqZW5jb2RlciwgaW50IGVuYWJsZSk7CitleHRlcm4gdm9pZCByNjAwX2hkbWlfZW5h YmxlKHN0cnVjdCBkcm1fZW5jb2RlciAqZW5jb2Rlcik7CitleHRlcm4gdm9pZCByNjAwX2hkbWlf ZGlzYWJsZShzdHJ1Y3QgZHJtX2VuY29kZXIgKmVuY29kZXIpOwogZXh0ZXJuIHZvaWQgcjYwMF9o ZG1pX3NldG1vZGUoc3RydWN0IGRybV9lbmNvZGVyICplbmNvZGVyLCBzdHJ1Y3QgZHJtX2Rpc3Bs YXlfbW9kZSAqbW9kZSk7CiBleHRlcm4gaW50IHI2MDBfaGRtaV9idWZmZXJfc3RhdHVzX2NoYW5n ZWQoc3RydWN0IGRybV9lbmNvZGVyICplbmNvZGVyKTsKIGV4dGVybiB2b2lkIHI2MDBfaGRtaV91 cGRhdGVfYXVkaW9fc2V0dGluZ3Moc3RydWN0IGRybV9lbmNvZGVyICplbmNvZGVyLApkaWZmIC0t Z2l0IGEvZHJpdmVycy9ncHUvZHJtL3JhZGVvbi9yYWRlb25fZW5jb2RlcnMuYyBiL2RyaXZlcnMv Z3B1L2RybS9yYWRlb24vcmFkZW9uX2VuY29kZXJzLmMKaW5kZXggYmM5MjZlYS4uN2Y0MzQ3NiAx MDA2NDQKLS0tIGEvZHJpdmVycy9ncHUvZHJtL3JhZGVvbi9yYWRlb25fZW5jb2RlcnMuYworKysg Yi9kcml2ZXJzL2dwdS9kcm0vcmFkZW9uL3JhZGVvbl9lbmNvZGVycy5jCkBAIC01OTMsNyArNTkz LDYgQEAgYXRvbWJpb3NfZGlnaXRhbF9zZXR1cChzdHJ1Y3QgZHJtX2VuY29kZXIgKmVuY29kZXIs IGludCBhY3Rpb24pCiAJfQogCiAJYXRvbV9leGVjdXRlX3RhYmxlKHJkZXYtPm1vZGVfaW5mby5h dG9tX2NvbnRleHQsIGluZGV4LCAodWludDMyX3QgKikmYXJncyk7Ci0JcjYwMF9oZG1pX2VuYWJs ZShlbmNvZGVyLCBoZG1pX2RldGVjdGVkKTsKIH0KIAogaW50CkBAIC0xMzk2LDkgKzEzOTUsMTAg QEAgcmFkZW9uX2F0b21fZW5jb2Rlcl9tb2RlX3NldChzdHJ1Y3QgZHJtX2VuY29kZXIgKmVuY29k ZXIsCiAJfQogCWF0b21iaW9zX2FwcGx5X2VuY29kZXJfcXVpcmtzKGVuY29kZXIsIGFkanVzdGVk X21vZGUpOwogCi0JLyogWFhYICovCi0JaWYgKCFBU0lDX0lTX0RDRTQocmRldikpCisJaWYgKGF0 b21iaW9zX2dldF9lbmNvZGVyX21vZGUoZW5jb2RlcikgPT0gQVRPTV9FTkNPREVSX01PREVfSERN SSkgeworCQlyNjAwX2hkbWlfZW5hYmxlKGVuY29kZXIpOwogCQlyNjAwX2hkbWlfc2V0bW9kZShl bmNvZGVyLCBhZGp1c3RlZF9tb2RlKTsKKwl9CiB9CiAKIHN0YXRpYyBib29sCkBAIC0xNTA5LDYg KzE1MDksOCBAQCBzdGF0aWMgdm9pZCByYWRlb25fYXRvbV9lbmNvZGVyX2Rpc2FibGUoc3RydWN0 IGRybV9lbmNvZGVyICplbmNvZGVyKQogCXJhZGVvbl9hdG9tX2VuY29kZXJfZHBtcyhlbmNvZGVy LCBEUk1fTU9ERV9EUE1TX09GRik7CiAKIAlpZiAocmFkZW9uX2VuY29kZXJfaXNfZGlnaXRhbChl bmNvZGVyKSkgeworCQlpZiAoYXRvbWJpb3NfZ2V0X2VuY29kZXJfbW9kZShlbmNvZGVyKSA9PSBB VE9NX0VOQ09ERVJfTU9ERV9IRE1JKQorCQkJcjYwMF9oZG1pX2Rpc2FibGUoZW5jb2Rlcik7CiAJ CWRpZyA9IHJhZGVvbl9lbmNvZGVyLT5lbmNfcHJpdjsKIAkJZGlnLT5kaWdfZW5jb2RlciA9IC0x OwogCX0KQEAgLTE2NTksNiArMTY2MSw0IEBAIHJhZGVvbl9hZGRfYXRvbV9lbmNvZGVyKHN0cnVj dCBkcm1fZGV2aWNlICpkZXYsIHVpbnQzMl90IGVuY29kZXJfaWQsIHVpbnQzMl90IHN1CiAJCWRy bV9lbmNvZGVyX2hlbHBlcl9hZGQoZW5jb2RlciwgJnJhZGVvbl9hdG9tX2RpZ19oZWxwZXJfZnVu Y3MpOwogCQlicmVhazsKIAl9Ci0KLQlyNjAwX2hkbWlfaW5pdChlbmNvZGVyKTsKIH0KLS0gCjEu Ni40LjIKCgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KRG93bmxvYWQgSW50ZWwmIzE3NDsgUGFyYWxs ZWwgU3R1ZGlvIEV2YWwKVHJ5IHRoZSBuZXcgc29mdHdhcmUgdG9vbHMgZm9yIHlvdXJzZWxmLiBT cGVlZCBjb21waWxpbmcsIGZpbmQgYnVncwpwcm9hY3RpdmVseSwgYW5kIGZpbmUtdHVuZSBhcHBs aWNhdGlvbnMgZm9yIHBhcmFsbGVsIHBlcmZvcm1hbmNlLgpTZWUgd2h5IEludGVsIFBhcmFsbGVs IFN0dWRpbyBnb3QgaGlnaCBtYXJrcyBkdXJpbmcgYmV0YS4KaHR0cDovL3Auc2YubmV0L3NmdS9p bnRlbC1zdy1kZXYKLS0KX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX18KRHJpLWRldmVsIG1haWxpbmcgbGlzdApEcmktZGV2ZWxAbGlzdHMuc291cmNlZm9yZ2Uu bmV0Cmh0dHBzOi8vbGlzdHMuc291cmNlZm9yZ2UubmV0L2xpc3RzL2xpc3RpbmZvL2RyaS1kZXZl bAo=