From mboxrd@z Thu Jan 1 00:00:00 1970 From: Michel Thierry Subject: [PATCH libdrm v2 1/2] intel: Add EXEC_OBJECT_SUPPORTS_48B_ADDRESS flag. Date: Wed, 1 Jul 2015 16:28:08 +0100 Message-ID: <1435764490-12029-1-git-send-email-michel.thierry@intel.com> References: <1435062089-19877-1-git-send-email-michel.thierry@intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: In-Reply-To: <1435062089-19877-1-git-send-email-michel.thierry@intel.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 Cc: Ben Widawsky , dri-devel@lists.freedesktop.org List-Id: intel-gfx@lists.freedesktop.org R2VuOCsgc3VwcG9ydHMgNDgtYml0IHZpcnR1YWwgYWRkcmVzc2VzLCBidXQgc29tZSBvYmplY3Rz IG11c3QgYWx3YXlzIGJlCmFsbG9jYXRlZCBpbnNpZGUgdGhlIDMyLWJpdCBhZGRyZXNzIHJhbmdl LgoKSW4gc3BlY2lmaWMsIGFueSByZXNvdXJjZSB1c2VkIHdpdGggZmxhdC9oZWFwbGVzcyAoMHgw MDAwMDAwMC0weGZmZmZmMDAwKQpHZW5lcmFsIFN0YXRlIEhlYXAgKEdTSCkgb3IgSW50cnVjdGlv biBTdGF0ZSBIZWFwIChJU0gpIG11c3QgYmUgaW4gYQozMi1iaXQgcmFuZ2UsIGJlY2F1c2UgdGhl IEdlbmVyYWwgU3RhdGUgT2Zmc2V0IGFuZCBJbnN0cnVjdGlvbiBTdGF0ZSBPZmZzZXQKYXJlIGxp bWl0ZWQgdG8gMzItYml0cy4KClByb3ZpZGUgYSBmbGFnIHRvIHNldCB3aGVuIHRoZSA0R0IgbGlt aXQgaXMgbm90IG5lY2Vzc2FyeSBpbiBhIGdpdmVuIGJvLgo0OC1iaXQgcmFuZ2Ugd2lsbCBvbmx5 IGJlIHVzZWQgd2hlbiBleHBsaWNpdGx5IHJlcXVlc3RlZC4KCkNhbGxzIHRvIHRoZSBuZXcgZHJt X2ludGVsX2JvX2VtaXRfcmVsb2NfNDhiaXQgZnVuY3Rpb24gd2lsbCBoYXZlIHRoaXMgZmxhZwpz ZXQgYXV0b21hdGljYWxseSwgd2hpbGUgY2FsbHMgdG8gZHJtX2ludGVsX2JvX2VtaXRfcmVsb2Mg d2lsbCBjbGVhciBpdC4KCnYyOiBNYWtlIHNldC9jbGVhciBmdW5jdGlvbnMgbm9wcyBvbiBwcmUt Z2VuOCBwbGF0Zm9ybXMsIGFuZCB1c2UgdGhlbQogICAgaW50ZXJuYWxseSBpbiBlbWl0X3JlbG9j IGZ1bmN0aW9ucyAoQmVuKQogICAgcy80OEJBRERSRVNTLzQ4Ql9BRERSRVNTLyAoRGF2ZSkKCkNj OiBCZW4gV2lkYXdza3kgPGJlbkBid2lkYXdzay5uZXQ+CkNjOiBEYXZlIEdvcmRvbiA8ZGF2aWQu cy5nb3Jkb25AaW50ZWwuY29tPgpDYzogZHJpLWRldmVsQGxpc3RzLmZyZWVkZXNrdG9wLm9yZwpT aWduZWQtb2ZmLWJ5OiBNaWNoZWwgVGhpZXJyeSA8bWljaGVsLnRoaWVycnlAaW50ZWwuY29tPgot LS0KIGluY2x1ZGUvZHJtL2k5MTVfZHJtLmggICAgfCAgMyArKy0KIGludGVsL2ludGVsX2J1Zm1n ci5jICAgICAgfCAyNCArKysrKysrKysrKysrKysrKysrKysKIGludGVsL2ludGVsX2J1Zm1nci5o ICAgICAgfCAgOCArKysrKystCiBpbnRlbC9pbnRlbF9idWZtZ3JfZ2VtLmMgIHwgNTQgKysrKysr KysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKy0tLS0KIGludGVsL2ludGVsX2J1 Zm1ncl9wcml2LmggfCAxMSArKysrKysrKysrCiA1IGZpbGVzIGNoYW5nZWQsIDk0IGluc2VydGlv bnMoKyksIDYgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvaW5jbHVkZS9kcm0vaTkxNV9kcm0u aCBiL2luY2x1ZGUvZHJtL2k5MTVfZHJtLmgKaW5kZXggZGVkNDNiMS4uNDI2YjI1YyAxMDA2NDQK LS0tIGEvaW5jbHVkZS9kcm0vaTkxNV9kcm0uaAorKysgYi9pbmNsdWRlL2RybS9pOTE1X2RybS5o CkBAIC02ODAsNyArNjgwLDggQEAgc3RydWN0IGRybV9pOTE1X2dlbV9leGVjX29iamVjdDIgewog I2RlZmluZSBFWEVDX09CSkVDVF9ORUVEU19GRU5DRSAoMTw8MCkKICNkZWZpbmUgRVhFQ19PQkpF Q1RfTkVFRFNfR1RUCSgxPDwxKQogI2RlZmluZSBFWEVDX09CSkVDVF9XUklURQkoMTw8MikKLSNk ZWZpbmUgX19FWEVDX09CSkVDVF9VTktOT1dOX0ZMQUdTIC0oRVhFQ19PQkpFQ1RfV1JJVEU8PDEp CisjZGVmaW5lIEVYRUNfT0JKRUNUX1NVUFBPUlRTXzQ4Ql9BRERSRVNTICgxPDwzKQorI2RlZmlu ZSBfX0VYRUNfT0JKRUNUX1VOS05PV05fRkxBR1MgLShFWEVDX09CSkVDVF9TVVBQT1JUU180OEJf QUREUkVTUzw8MSkKIAlfX3U2NCBmbGFnczsKIAogCV9fdTY0IHJzdmQxOwpkaWZmIC0tZ2l0IGEv aW50ZWwvaW50ZWxfYnVmbWdyLmMgYi9pbnRlbC9pbnRlbF9idWZtZ3IuYwppbmRleCAxNGVhOWY5 Li41OTBhODU1IDEwMDY0NAotLS0gYS9pbnRlbC9pbnRlbF9idWZtZ3IuYworKysgYi9pbnRlbC9p bnRlbF9idWZtZ3IuYwpAQCAtMTg4LDYgKzE4OCwxOCBAQCBkcm1faW50ZWxfYnVmbWdyX2NoZWNr X2FwZXJ0dXJlX3NwYWNlKGRybV9pbnRlbF9ibyAqKiBib19hcnJheSwgaW50IGNvdW50KQogCXJl dHVybiBib19hcnJheVswXS0+YnVmbWdyLT5jaGVja19hcGVydHVyZV9zcGFjZShib19hcnJheSwg Y291bnQpOwogfQogCit2b2lkIGRybV9pbnRlbF9ib19zZXRfc3VwcG9ydHNfNDhiX2FkZHJlc3Mo ZHJtX2ludGVsX2JvICpibykKK3sKKwlpZiAoYm8tPmJ1Zm1nci0+Ym9fc2V0X3N1cHBvcnRzXzQ4 Yl9hZGRyZXNzKQorCQliby0+YnVmbWdyLT5ib19zZXRfc3VwcG9ydHNfNDhiX2FkZHJlc3MoYm8p OworfQorCit2b2lkIGRybV9pbnRlbF9ib19jbGVhcl9zdXBwb3J0c180OGJfYWRkcmVzcyhkcm1f aW50ZWxfYm8gKmJvKQoreworCWlmIChiby0+YnVmbWdyLT5ib19jbGVhcl9zdXBwb3J0c180OGJf YWRkcmVzcykKKwkJYm8tPmJ1Zm1nci0+Ym9fY2xlYXJfc3VwcG9ydHNfNDhiX2FkZHJlc3MoYm8p OworfQorCiBpbnQKIGRybV9pbnRlbF9ib19mbGluayhkcm1faW50ZWxfYm8gKmJvLCB1aW50MzJf dCAqIG5hbWUpCiB7CkBAIC0yMDIsNiArMjE0LDE4IEBAIGRybV9pbnRlbF9ib19lbWl0X3JlbG9j KGRybV9pbnRlbF9ibyAqYm8sIHVpbnQzMl90IG9mZnNldCwKIAkJCWRybV9pbnRlbF9ibyAqdGFy Z2V0X2JvLCB1aW50MzJfdCB0YXJnZXRfb2Zmc2V0LAogCQkJdWludDMyX3QgcmVhZF9kb21haW5z LCB1aW50MzJfdCB3cml0ZV9kb21haW4pCiB7CisJZHJtX2ludGVsX2JvX2NsZWFyX3N1cHBvcnRz XzQ4Yl9hZGRyZXNzKHRhcmdldF9ibyk7CisJcmV0dXJuIGJvLT5idWZtZ3ItPmJvX2VtaXRfcmVs b2MoYm8sIG9mZnNldCwKKwkJCQkJIHRhcmdldF9ibywgdGFyZ2V0X29mZnNldCwKKwkJCQkJIHJl YWRfZG9tYWlucywgd3JpdGVfZG9tYWluKTsKK30KKworaW50Citkcm1faW50ZWxfYm9fZW1pdF9y ZWxvY180OGJpdChkcm1faW50ZWxfYm8gKmJvLCB1aW50MzJfdCBvZmZzZXQsCisJCQlkcm1faW50 ZWxfYm8gKnRhcmdldF9ibywgdWludDMyX3QgdGFyZ2V0X29mZnNldCwKKwkJCXVpbnQzMl90IHJl YWRfZG9tYWlucywgdWludDMyX3Qgd3JpdGVfZG9tYWluKQoreworCWRybV9pbnRlbF9ib19zZXRf c3VwcG9ydHNfNDhiX2FkZHJlc3ModGFyZ2V0X2JvKTsKIAlyZXR1cm4gYm8tPmJ1Zm1nci0+Ym9f ZW1pdF9yZWxvYyhibywgb2Zmc2V0LAogCQkJCQkgdGFyZ2V0X2JvLCB0YXJnZXRfb2Zmc2V0LAog CQkJCQkgcmVhZF9kb21haW5zLCB3cml0ZV9kb21haW4pOwpkaWZmIC0tZ2l0IGEvaW50ZWwvaW50 ZWxfYnVmbWdyLmggYi9pbnRlbC9pbnRlbF9idWZtZ3IuaAppbmRleCAyODU5MTllLi42MjQ4MGNi IDEwMDY0NAotLS0gYS9pbnRlbC9pbnRlbF9idWZtZ3IuaAorKysgYi9pbnRlbC9pbnRlbF9idWZt Z3IuaApAQCAtODcsNyArODcsOCBAQCBzdHJ1Y3QgX2RybV9pbnRlbF9ibyB7CiAJLyoqCiAJICog TGFzdCBzZWVuIGNhcmQgdmlydHVhbCBhZGRyZXNzIChvZmZzZXQgZnJvbSB0aGUgYmVnaW5uaW5n IG9mIHRoZQogCSAqIGFwZXJ0dXJlKSBmb3IgdGhlIG9iamVjdC4gIFRoaXMgc2hvdWxkIGJlIHVz ZWQgdG8gZmlsbCByZWxvY2F0aW9uCi0JICogZW50cmllcyB3aGVuIGNhbGxpbmcgZHJtX2ludGVs X2JvX2VtaXRfcmVsb2MoKQorCSAqIGVudHJpZXMgd2hlbiBjYWxsaW5nIGRybV9pbnRlbF9ib19l bWl0X3JlbG9jKCkgb3IKKwkgKiBkcm1faW50ZWxfYm9fZW1pdF9yZWxvY180OGJpdCgpCiAJICov CiAJdWludDY0X3Qgb2Zmc2V0NjQ7CiB9OwpAQCAtMTM3LDYgKzEzOCw4IEBAIHZvaWQgZHJtX2lu dGVsX2JvX3dhaXRfcmVuZGVyaW5nKGRybV9pbnRlbF9ibyAqYm8pOwogCiB2b2lkIGRybV9pbnRl bF9idWZtZ3Jfc2V0X2RlYnVnKGRybV9pbnRlbF9idWZtZ3IgKmJ1Zm1nciwgaW50IGVuYWJsZV9k ZWJ1Zyk7CiB2b2lkIGRybV9pbnRlbF9idWZtZ3JfZGVzdHJveShkcm1faW50ZWxfYnVmbWdyICpi dWZtZ3IpOwordm9pZCBkcm1faW50ZWxfYm9fc2V0X3N1cHBvcnRzXzQ4Yl9hZGRyZXNzKGRybV9p bnRlbF9ibyAqYm8pOwordm9pZCBkcm1faW50ZWxfYm9fY2xlYXJfc3VwcG9ydHNfNDhiX2FkZHJl c3MoZHJtX2ludGVsX2JvICpibyk7CiBpbnQgZHJtX2ludGVsX2JvX2V4ZWMoZHJtX2ludGVsX2Jv ICpibywgaW50IHVzZWQsCiAJCSAgICAgIHN0cnVjdCBkcm1fY2xpcF9yZWN0ICpjbGlwcmVjdHMs IGludCBudW1fY2xpcHJlY3RzLCBpbnQgRFI0KTsKIGludCBkcm1faW50ZWxfYm9fbXJiX2V4ZWMo ZHJtX2ludGVsX2JvICpibywgaW50IHVzZWQsCkBAIC0xNDcsNiArMTUwLDkgQEAgaW50IGRybV9p bnRlbF9idWZtZ3JfY2hlY2tfYXBlcnR1cmVfc3BhY2UoZHJtX2ludGVsX2JvICoqIGJvX2FycmF5 LCBpbnQgY291bnQpOwogaW50IGRybV9pbnRlbF9ib19lbWl0X3JlbG9jKGRybV9pbnRlbF9ibyAq Ym8sIHVpbnQzMl90IG9mZnNldCwKIAkJCSAgICBkcm1faW50ZWxfYm8gKnRhcmdldF9ibywgdWlu dDMyX3QgdGFyZ2V0X29mZnNldCwKIAkJCSAgICB1aW50MzJfdCByZWFkX2RvbWFpbnMsIHVpbnQz Ml90IHdyaXRlX2RvbWFpbik7CitpbnQgZHJtX2ludGVsX2JvX2VtaXRfcmVsb2NfNDhiaXQoZHJt X2ludGVsX2JvICpibywgdWludDMyX3Qgb2Zmc2V0LAorCQkJCSAgZHJtX2ludGVsX2JvICp0YXJn ZXRfYm8sIHVpbnQzMl90IHRhcmdldF9vZmZzZXQsCisJCQkJICB1aW50MzJfdCByZWFkX2RvbWFp bnMsIHVpbnQzMl90IHdyaXRlX2RvbWFpbik7CiBpbnQgZHJtX2ludGVsX2JvX2VtaXRfcmVsb2Nf ZmVuY2UoZHJtX2ludGVsX2JvICpibywgdWludDMyX3Qgb2Zmc2V0LAogCQkJCSAgZHJtX2ludGVs X2JvICp0YXJnZXRfYm8sCiAJCQkJICB1aW50MzJfdCB0YXJnZXRfb2Zmc2V0LApkaWZmIC0tZ2l0 IGEvaW50ZWwvaW50ZWxfYnVmbWdyX2dlbS5jIGIvaW50ZWwvaW50ZWxfYnVmbWdyX2dlbS5jCmlu ZGV4IDYwYzA2ZmMuLmUzZTJiMGUgMTAwNjQ0Ci0tLSBhL2ludGVsL2ludGVsX2J1Zm1ncl9nZW0u YworKysgYi9pbnRlbC9pbnRlbF9idWZtZ3JfZ2VtLmMKQEAgLTE0Myw2ICsxNDMsNyBAQCB0eXBl ZGVmIHN0cnVjdCBfZHJtX2ludGVsX2J1Zm1ncl9nZW0gewogfSBkcm1faW50ZWxfYnVmbWdyX2dl bTsKIAogI2RlZmluZSBEUk1fSU5URUxfUkVMT0NfRkVOQ0UgKDE8PDApCisjZGVmaW5lIERSTV9J TlRFTF9SRUxPQ19TVVBQT1JUU180OEJfQUREUkVTUyAoMjw8MCkKIAogdHlwZWRlZiBzdHJ1Y3Qg X2RybV9pbnRlbF9yZWxvY190YXJnZXRfaW5mbyB7CiAJZHJtX2ludGVsX2JvICpibzsKQEAgLTI0 MCw2ICsyNDEsMTQgQEAgc3RydWN0IF9kcm1faW50ZWxfYm9fZ2VtIHsKIAlib29sIGlzX3VzZXJw dHI7CiAKIAkvKioKKwkgKiBCb29sZWFuIG9mIHdoZXRoZXIgdGhpcyBidWZmZXIgY2FuIGJlIGlu IHRoZSB3aG9sZSA0OC1iaXQgYWRkcmVzcy4KKwkgKgorCSAqIEJ5IGRlZmF1bHQsIGJ1ZmZlcnMg d2lsbCBiZSBrZWVwIGluIGEgMzItYml0IHJhbmdlLCB1bmxlc3MgdGhpcworCSAqIGZsYWcgaXMg ZXhwbGljaXRseSBzZXQuCisJICovCisJYm9vbCBzdXBwb3J0c180OGJfYWRkcmVzczsKKworCS8q KgogCSAqIFNpemUgaW4gYnl0ZXMgb2YgdGhpcyBidWZmZXIgYW5kIGl0cyByZWxvY2F0aW9uIGRl c2NlbmRlbnRzLgogCSAqCiAJICogVXNlZCB0byBhdm9pZCBjb3N0bHkgdHJlZSB3YWxraW5nIGlu CkBAIC00NzEsMTMgKzQ4MCwxOCBAQCBkcm1faW50ZWxfYWRkX3ZhbGlkYXRlX2J1ZmZlcihkcm1f aW50ZWxfYm8gKmJvKQogfQogCiBzdGF0aWMgdm9pZAotZHJtX2ludGVsX2FkZF92YWxpZGF0ZV9i dWZmZXIyKGRybV9pbnRlbF9ibyAqYm8sIGludCBuZWVkX2ZlbmNlKQorZHJtX2ludGVsX2FkZF92 YWxpZGF0ZV9idWZmZXIyKGRybV9pbnRlbF9ibyAqYm8sIGludCBuZWVkX2ZlbmNlLAorCQkJICAg ICAgIGludCBzdXBwb3J0c180OGJfYWRkcmVzcykKIHsKIAlkcm1faW50ZWxfYnVmbWdyX2dlbSAq YnVmbWdyX2dlbSA9IChkcm1faW50ZWxfYnVmbWdyX2dlbSAqKWJvLT5idWZtZ3I7CiAJZHJtX2lu dGVsX2JvX2dlbSAqYm9fZ2VtID0gKGRybV9pbnRlbF9ib19nZW0gKilibzsKIAlpbnQgaW5kZXg7 CiAKIAlpZiAoYm9fZ2VtLT52YWxpZGF0ZV9pbmRleCAhPSAtMSkgeworCQlpZiAoc3VwcG9ydHNf NDhiX2FkZHJlc3MpIHsKKwkJCWJ1Zm1ncl9nZW0tPmV4ZWMyX29iamVjdHNbYm9fZ2VtLT52YWxp ZGF0ZV9pbmRleF0uZmxhZ3MgfD0KKwkJCQlFWEVDX09CSkVDVF9TVVBQT1JUU180OEJfQUREUkVT UzsKKwkJfQogCQlpZiAobmVlZF9mZW5jZSkKIAkJCWJ1Zm1ncl9nZW0tPmV4ZWMyX29iamVjdHNb Ym9fZ2VtLT52YWxpZGF0ZV9pbmRleF0uZmxhZ3MgfD0KIAkJCQlFWEVDX09CSkVDVF9ORUVEU19G RU5DRTsKQEAgLTUxNiw2ICs1MzAsMTAgQEAgZHJtX2ludGVsX2FkZF92YWxpZGF0ZV9idWZmZXIy KGRybV9pbnRlbF9ibyAqYm8sIGludCBuZWVkX2ZlbmNlKQogCQlidWZtZ3JfZ2VtLT5leGVjMl9v YmplY3RzW2luZGV4XS5mbGFncyB8PQogCQkJRVhFQ19PQkpFQ1RfTkVFRFNfRkVOQ0U7CiAJfQor CWlmIChzdXBwb3J0c180OGJfYWRkcmVzcykgeworCQlidWZtZ3JfZ2VtLT5leGVjMl9vYmplY3Rz W2luZGV4XS5mbGFncyB8PQorCQkJRVhFQ19PQkpFQ1RfU1VQUE9SVFNfNDhCX0FERFJFU1M7CisJ fQogCWJ1Zm1ncl9nZW0tPmV4ZWNfY291bnQrKzsKIH0KIApAQCAtMTkzMSwxMSArMTk0OSwzMyBA QCBkb19ib19lbWl0X3JlbG9jKGRybV9pbnRlbF9ibyAqYm8sIHVpbnQzMl90IG9mZnNldCwKIAll bHNlCiAJCWJvX2dlbS0+cmVsb2NfdGFyZ2V0X2luZm9bYm9fZ2VtLT5yZWxvY19jb3VudF0uZmxh Z3MgPSAwOwogCisJaWYgKHRhcmdldF9ib19nZW0tPnN1cHBvcnRzXzQ4Yl9hZGRyZXNzKQorCQli b19nZW0tPnJlbG9jX3RhcmdldF9pbmZvW2JvX2dlbS0+cmVsb2NfY291bnRdLmZsYWdzIHw9CisJ CQlEUk1fSU5URUxfUkVMT0NfU1VQUE9SVFNfNDhCX0FERFJFU1M7CisKIAlib19nZW0tPnJlbG9j X2NvdW50Kys7CiAKIAlyZXR1cm4gMDsKIH0KIAorc3RhdGljIHZvaWQgZHJtX2ludGVsX2dlbV9i b19zZXRfc3VwcG9ydHNfNDhiX2FkZHJlc3MoZHJtX2ludGVsX2JvICpibykKK3sKKwlkcm1faW50 ZWxfYnVmbWdyX2dlbSAqYnVmbWdyX2dlbSA9IChkcm1faW50ZWxfYnVmbWdyX2dlbSAqKSBiby0+ YnVmbWdyOworCWRybV9pbnRlbF9ib19nZW0gKmJvX2dlbSA9IChkcm1faW50ZWxfYm9fZ2VtICop IGJvOworCisJaWYgKGJ1Zm1ncl9nZW0tPmdlbiA+PSA4KQorCQlib19nZW0tPnN1cHBvcnRzXzQ4 Yl9hZGRyZXNzID0gMTsKK30KKworc3RhdGljIHZvaWQgZHJtX2ludGVsX2dlbV9ib19jbGVhcl9z dXBwb3J0c180OGJfYWRkcmVzcyhkcm1faW50ZWxfYm8gKmJvKQoreworCWRybV9pbnRlbF9idWZt Z3JfZ2VtICpidWZtZ3JfZ2VtID0gKGRybV9pbnRlbF9idWZtZ3JfZ2VtICopIGJvLT5idWZtZ3I7 CisJZHJtX2ludGVsX2JvX2dlbSAqYm9fZ2VtID0gKGRybV9pbnRlbF9ib19nZW0gKikgYm87CisK KwlpZiAoYnVmbWdyX2dlbS0+Z2VuID49IDgpCisJCWJvX2dlbS0+c3VwcG9ydHNfNDhiX2FkZHJl c3MgPSAwOworfQorCiBzdGF0aWMgaW50CiBkcm1faW50ZWxfZ2VtX2JvX2VtaXRfcmVsb2MoZHJt X2ludGVsX2JvICpibywgdWludDMyX3Qgb2Zmc2V0LAogCQkJICAgIGRybV9pbnRlbF9ibyAqdGFy Z2V0X2JvLCB1aW50MzJfdCB0YXJnZXRfb2Zmc2V0LApAQCAtMjA0OSw3ICsyMDg5LDcgQEAgZHJt X2ludGVsX2dlbV9ib19wcm9jZXNzX3JlbG9jMihkcm1faW50ZWxfYm8gKmJvKQogCiAJZm9yIChp ID0gMDsgaSA8IGJvX2dlbS0+cmVsb2NfY291bnQ7IGkrKykgewogCQlkcm1faW50ZWxfYm8gKnRh cmdldF9ibyA9IGJvX2dlbS0+cmVsb2NfdGFyZ2V0X2luZm9baV0uYm87Ci0JCWludCBuZWVkX2Zl bmNlOworCQlpbnQgbmVlZF9mZW5jZSwgc3VwcG9ydHNfNDhiX2FkZHI7CiAKIAkJaWYgKHRhcmdl dF9ibyA9PSBibykKIAkJCWNvbnRpbnVlOwpAQCAtMjA2Miw4ICsyMTAyLDEyIEBAIGRybV9pbnRl bF9nZW1fYm9fcHJvY2Vzc19yZWxvYzIoZHJtX2ludGVsX2JvICpibykKIAkJbmVlZF9mZW5jZSA9 IChib19nZW0tPnJlbG9jX3RhcmdldF9pbmZvW2ldLmZsYWdzICYKIAkJCSAgICAgIERSTV9JTlRF TF9SRUxPQ19GRU5DRSk7CiAKKwkJc3VwcG9ydHNfNDhiX2FkZHIgPSAoYm9fZ2VtLT5yZWxvY190 YXJnZXRfaW5mb1tpXS5mbGFncyAmCisJCQkJICAgIERSTV9JTlRFTF9SRUxPQ19TVVBQT1JUU180 OEJfQUREUkVTUyk7CisKIAkJLyogQWRkIHRoZSB0YXJnZXQgdG8gdGhlIHZhbGlkYXRlIGxpc3Qg Ki8KLQkJZHJtX2ludGVsX2FkZF92YWxpZGF0ZV9idWZmZXIyKHRhcmdldF9ibywgbmVlZF9mZW5j ZSk7CisJCWRybV9pbnRlbF9hZGRfdmFsaWRhdGVfYnVmZmVyMih0YXJnZXRfYm8sIG5lZWRfZmVu Y2UsCisJCQkJCSAgICAgICBzdXBwb3J0c180OGJfYWRkcik7CiAJfQogfQogCkBAIC0yNTA4LDcg KzI1NTIsNyBAQCBkb19leGVjMihkcm1faW50ZWxfYm8gKmJvLCBpbnQgdXNlZCwgZHJtX2ludGVs X2NvbnRleHQgKmN0eCwKIAkvKiBBZGQgdGhlIGJhdGNoIGJ1ZmZlciB0byB0aGUgdmFsaWRhdGlv biBsaXN0LiAgVGhlcmUgYXJlIG5vIHJlbG9jYXRpb25zCiAJICogcG9pbnRpbmcgdG8gaXQuCiAJ ICovCi0JZHJtX2ludGVsX2FkZF92YWxpZGF0ZV9idWZmZXIyKGJvLCAwKTsKKwlkcm1faW50ZWxf YWRkX3ZhbGlkYXRlX2J1ZmZlcjIoYm8sIDAsIDApOwogCiAJbWVtY2xlYXIoZXhlY2J1Zik7CiAJ ZXhlY2J1Zi5idWZmZXJzX3B0ciA9ICh1aW50cHRyX3QpYnVmbWdyX2dlbS0+ZXhlYzJfb2JqZWN0 czsKQEAgLTM2NTcsNiArMzcwMSw4IEBAIGRybV9pbnRlbF9idWZtZ3JfZ2VtX2luaXQoaW50IGZk LCBpbnQgYmF0Y2hfc2l6ZSkKIAlidWZtZ3JfZ2VtLT5idWZtZ3IuYm9fd2FpdF9yZW5kZXJpbmcg PSBkcm1faW50ZWxfZ2VtX2JvX3dhaXRfcmVuZGVyaW5nOwogCWJ1Zm1ncl9nZW0tPmJ1Zm1nci5i b19lbWl0X3JlbG9jID0gZHJtX2ludGVsX2dlbV9ib19lbWl0X3JlbG9jOwogCWJ1Zm1ncl9nZW0t PmJ1Zm1nci5ib19lbWl0X3JlbG9jX2ZlbmNlID0gZHJtX2ludGVsX2dlbV9ib19lbWl0X3JlbG9j X2ZlbmNlOworCWJ1Zm1ncl9nZW0tPmJ1Zm1nci5ib19zZXRfc3VwcG9ydHNfNDhiX2FkZHJlc3Mg PSBkcm1faW50ZWxfZ2VtX2JvX3NldF9zdXBwb3J0c180OGJfYWRkcmVzczsKKwlidWZtZ3JfZ2Vt LT5idWZtZ3IuYm9fY2xlYXJfc3VwcG9ydHNfNDhiX2FkZHJlc3MgPSBkcm1faW50ZWxfZ2VtX2Jv X2NsZWFyX3N1cHBvcnRzXzQ4Yl9hZGRyZXNzOwogCWJ1Zm1ncl9nZW0tPmJ1Zm1nci5ib19waW4g PSBkcm1faW50ZWxfZ2VtX2JvX3BpbjsKIAlidWZtZ3JfZ2VtLT5idWZtZ3IuYm9fdW5waW4gPSBk cm1faW50ZWxfZ2VtX2JvX3VucGluOwogCWJ1Zm1ncl9nZW0tPmJ1Zm1nci5ib19nZXRfdGlsaW5n ID0gZHJtX2ludGVsX2dlbV9ib19nZXRfdGlsaW5nOwpkaWZmIC0tZ2l0IGEvaW50ZWwvaW50ZWxf YnVmbWdyX3ByaXYuaCBiL2ludGVsL2ludGVsX2J1Zm1ncl9wcml2LmgKaW5kZXggNTllYmQxOC4u Nzc0ZmEwMiAxMDA2NDQKLS0tIGEvaW50ZWwvaW50ZWxfYnVmbWdyX3ByaXYuaAorKysgYi9pbnRl bC9pbnRlbF9idWZtZ3JfcHJpdi5oCkBAIC0xNTIsNiArMTUyLDE3IEBAIHN0cnVjdCBfZHJtX2lu dGVsX2J1Zm1nciB7CiAJdm9pZCAoKmRlc3Ryb3kpIChkcm1faW50ZWxfYnVmbWdyICpidWZtZ3Ip OwogCiAJLyoqCisJICogU2V0L0NsZWFyIDQ4LWJpdCBhZGRyZXNzIHN1cHBvcnQgZmxhZyBpbiBh IGdpdmVuIGJvLgorCSAqCisJICogQW55IHJlc291cmNlIHVzZWQgd2l0aCBmbGF0L2hlYXBsZXNz ICgweDAwMDAwMDAwLTB4ZmZmZmYwMDApCisJICogR2VuZXJhbCBTdGF0ZSBIZWFwIChHU0gpIG9y IEludHJ1Y3Rpb25zIFN0YXRlIEhlYXAgKElTSCkgbXVzdAorCSAqIGJlIGluIGEgMzItYml0IHJh bmdlLiA0OC1iaXQgcmFuZ2Ugd2lsbCBvbmx5IGJlIHVzZWQgd2hlbiBleHBsaWNpdGx5CisJICog cmVxdWVzdGVkLgorCSAqLworCXZvaWQgKCpib19zZXRfc3VwcG9ydHNfNDhiX2FkZHJlc3MpIChk cm1faW50ZWxfYm8gKmJvKTsKKwl2b2lkICgqYm9fY2xlYXJfc3VwcG9ydHNfNDhiX2FkZHJlc3Mp IChkcm1faW50ZWxfYm8gKmJvKTsKKworCS8qKgogCSAqIEFkZCByZWxvY2F0aW9uIGVudHJ5IGlu IHJlbG9jX2J1Ziwgd2hpY2ggd2lsbCBiZSB1cGRhdGVkIHdpdGggdGhlCiAJICogdGFyZ2V0IGJ1 ZmZlcidzIHJlYWwgb2Zmc2V0IG9uIG9uIGNvbW1hbmQgc3VibWlzc2lvbi4KIAkgKgotLSAKMi40 LjUKCl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fCkludGVs LWdmeCBtYWlsaW5nIGxpc3QKSW50ZWwtZ2Z4QGxpc3RzLmZyZWVkZXNrdG9wLm9yZwpodHRwOi8v bGlzdHMuZnJlZWRlc2t0b3Aub3JnL21haWxtYW4vbGlzdGluZm8vaW50ZWwtZ2Z4Cg==