From: marko.makela Date: February 7 2011 11:25am Subject: bzr push into mysql-trunk-innodb branch (marko.makela:3481 to 3482) WL#5458 List-Archive: http://lists.mysql.com/commits/130554 Message-Id: <201102071125.p17ApVcB013143@acsinet15.oracle.com> MIME-Version: 1.0 Content-Type: multipart/mixed; boundary="===============1471528113==" --===============1471528113== Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: base64 Content-Disposition: inline IDM0ODIgTWFya28gTcOka2Vsw6QJMjAxMS0wMi0wNwogICAgICBXTCM1NDU4IGNsZWFuLXVwIGFu ZCBvcHRpbWl6YXRpb25zCiAgICAgIAogICAgICBXaGVuIHJlbGVhc2luZyBtdWx0aXBsZSBtdXRl eGVzLCByZWxlYXNlIHRoZSBjb2Fyc2VzdCBtdXRleCBmaXJzdCwKICAgICAgaG9waW5nIHRvIGhl bHAgcGVyZm9ybWFuY2Ugd2hlbiBhIGNvbnRleHQgc3dpdGNoIG9jY3VycyBiZXR3ZWVuIHRoZQog ICAgICByZWxlYXNlcy4gVGhhdCBpcywgcmVsZWFzZSBsb2NrX3N5cy0+bXV0ZXggYmVmb3JlIHRy eF9zeXMtPmxvY2sgYmVmb3JlCiAgICAgIHRyeC0+bXV0ZXguCiAgICAgIAogICAgICBSZWR1Y2Ug dGhlIGhvbGQgdGltZSBvZiB0cngtPm11dGV4LgogICAgICAKICAgICAgUmVwbGFjZSBzb21lIGlm LWVsc2UgaWYtZWxzZSBjaGVja3Mgd2l0aCBzd2l0Y2guCiAgICAgIAogICAgICBBZGQgVU5JVl9V TkxJS0VMWSBoaW50cyB0byBvciBhc3NlcnRpb24tbGlrZSBjaGVja3Mgb3IgdGVzdHMgZm9yIHJh cmUKICAgICAgY29uZGl0aW9ucy4KICAgICAgCiAgICAgIGxvY2tfZ3JhbnQoKSwgbG9ja19yZWNf Y2FuY2VsKCk6IGxvY2tfcmVzZXRfbG9ja19hbmRfdHJ4X3dhaXQoKSBkb2VzCiAgICAgIG5vdCBu ZWVkIHRyeC0+bXV0ZXguCiAgICAgIAogICAgICBsb2NrX2RlYWRsb2NrX29jY3VycygpOiBSZW1v dmUgdW5uZWNlc3NhcnkgbG9jYWwgdmFyaWFibGUgcmV0LiBPbgogICAgICBMT0NLX1ZJQ1RJTV9F WENFRURfTUFYX0RFUFRILCByZWxlYXNlIHRyeC0+bXV0ZXggaW1tZWRpYXRlbHksIGJlY2F1c2UK ICAgICAgbG9ja19kZWFkbG9ja190cnhfcHJpbnQoKSBkb2VzIG5vdCBuZWVkIGl0LgogICAgICAK ICAgICAgbG9ja19wcmludF9pbmZvX2FsbF90cmFuc2FjdGlvbnMoKTogUmVtb3ZlIGEgcmVkdW5k YW50IGdvdG8gc3RhdGVtZW50LgogICAgICAKICAgICAgbG9ja19yZWNfaW5zZXJ0X2NoZWNrX2Fu ZF9sb2NrKCk6IERvIG5vdCBhY3F1aXJlIHRyeC0+bXV0ZXggZXhjZXB0IGZvcgogICAgICB0aGUg bG9ja19yZWNfZW5xdWV1ZV93YWl0aW5nKCkgY2FsbCwgYmVjYXVzZSB0aGlzIGNvZGUgaXMgaW52 b2tlZCBmb3IKICAgICAgYSBydW5uaW5nIHRyYW5zYWN0aW9uIGJ5IGl0cyBzZXJ2aW5nIHRocmVh ZC4KICAgICAgCiAgICAgIGxvY2tfd2FpdF90YWJsZV9yZXNlcnZlX3Nsb3QoKTogRG8gbm90IHRl c3QgdHdpY2UgZm9yIHRoZSBlbmQtb2YtbG9vcAogICAgICBjb25kaXRpb24uIEZpeCBzb21lIGZv cm1hdHRpbmcuCiAgICAgIAogICAgICBsb2NrX3dhaXRfY2hlY2tfYW5kX2NhbmNlbCgpOiBPbmx5 IGFjcXVpcmUgdGhlIG11dGV4ZXMgd2hlbiBjYW5jZWxsaW5nCiAgICAgIHRoZSBsb2NrIHJlcXVl c3QuCiAgICAgIAogICAgICBxdWVfdGhyX2VuZF9sb2NrX3dhaXQoKTogQWRkIGFuIGFzc2VydGlv biBhbmQgcmVtb3ZlIGEgcmVkdW5kYW50IG9uZS4KICAgICAgCiAgICAgIHF1ZV90aHJfc3RvcCgp OiBSZW1vdmUgYSBsb2NhbCB2YXJpYWJsZS4gVXNlIGRpcmVjdCByZXR1cm4gaW5zdGVhZC4KICAg ICAgCiAgICAgIHJvd19zZWFyY2hfZm9yX215c3FsKCk6IFJlcGxhY2UgaWYtZWxzZSBpZi1lbHNl IHdpdGggc3dpdGNoLgogICAgICAKICAgICAgdHJ4X3B1cmdlX3N5c19jcmVhdGUoKTogUmVtb3Zl IHVubmVjZXNzYXJ5IGFjcXVpc2l0aW9uIG9mCiAgICAgIHB1cmdlX3N5cy0+dHJ4LT5tdXRleC4g VGhlIHB1cmdlX3N5cyBpcyBhbGxvY2F0ZWQgaW4gdGhpcyBmdW5jdGlvbjsKICAgICAgdGhlcmVm b3JlIHRoZSBtdXRleCBkb2VzIG5vdCBwcm92aWRlIGFueSBwcm90ZWN0aW9uLgogICAgICAKICAg ICAgdHJ4X3B1cmdlX3N5c19jbG9zZSgpOiBBc3NlcnQgdGhhdCBwdXJnZV9zeXMtPnNlc3MtPnRy eCA9PSBwdXJnZV9zeXMtPnRyeC4KICAgICAgCiAgICAgIHRyeF9yb2xsYmFja19vcl9jbGVhbl9y ZWNvdmVyZWQoKTogQ29ycmVjdCBhIHR5cG8uCiAgICAgIAogICAgICB0cnhfcHJlcGFyZSgpLCB0 cnhfcHJlcGFyZV9mb3JfbXlzcWwoKTogRG8gbm90IGFjcXVpcmUgb3IgcmVsZWFzZQogICAgICB0 cngtPm11dGV4LiBUaGlzIGNvZGUgaXMgc3VwcG9zZWQgdG8gYmUgaW52b2tlZCBvbiBhIHJ1bm5p bmcKICAgICAgdHJhbnNhY3Rpb24gYnkgdGhlIHNlcnZpbmcgdGhyZWFkLiB0cngtPnN0YXRlIGNo YW5nZXMgYXJlIHByb3RlY3RlZCBieQogICAgICBsb2NrX3N5cy0+bXV0ZXguIEFkZCBhc3NlcnRp b25zLgogICAgICAKICAgICAgcmI6Ly81NDYKCiAgICBtb2RpZmllZDoKICAgICAgc3RvcmFnZS9p bm5vYmFzZS9sb2NrL2xvY2swbG9jay5jCiAgICAgIHN0b3JhZ2UvaW5ub2Jhc2UvbG9jay9sb2Nr MHdhaXQuYwogICAgICBzdG9yYWdlL2lubm9iYXNlL3F1ZS9xdWUwcXVlLmMKICAgICAgc3RvcmFn ZS9pbm5vYmFzZS9yb3cvcm93MHNlbC5jCiAgICAgIHN0b3JhZ2UvaW5ub2Jhc2UvdHJ4L3RyeDBw dXJnZS5jCiAgICAgIHN0b3JhZ2UvaW5ub2Jhc2UvdHJ4L3RyeDByb2xsLmMKICAgICAgc3RvcmFn ZS9pbm5vYmFzZS90cngvdHJ4MHRyeC5jCiAzNDgxIFZhc2lsIERpbW92CTIwMTEtMDItMDcgW21l cmdlXQogICAgICBNZXJnZSBteXNxbC01LjUtaW5ub2RiIC0+IG15c3FsLXRydW5rLWlubm9kYgoK ICAgIG1vZGlmaWVkOgogICAgICBteXNxbC10ZXN0L3ZhbGdyaW5kLnN1cHAKPT09IG1vZGlmaWVk IGZpbGUgJ3N0b3JhZ2UvaW5ub2Jhc2UvbG9jay9sb2NrMGxvY2suYycKLS0tIGEvc3RvcmFnZS9p bm5vYmFzZS9sb2NrL2xvY2swbG9jay5jCXJldmlkOnZhc2lsLmRpbW92QG9yYWNsZS5jb20tMjAx MTAyMDcwOTIxMDMtdXN1Y3QwdTc4NWgwZG5vMgorKysgYi9zdG9yYWdlL2lubm9iYXNlL2xvY2sv bG9jazBsb2NrLmMJcmV2aWQ6bWFya28ubWFrZWxhQG9yYWNsZS5jb20tMjAxMTAyMDcxMTIzMTct ZTBhZGFuamJhMDdienJlNApAQCAtMjI2MSwxNCArMjI2MSwxMyBAQCBsb2NrX2dyYW50KAogewog CXV0X2FkKGxvY2tfbXV0ZXhfb3duKCkpOwogCi0JdHJ4X211dGV4X2VudGVyKGxvY2stPnRyeCk7 Ci0KIAlsb2NrX3Jlc2V0X2xvY2tfYW5kX3RyeF93YWl0KGxvY2spOworCXRyeF9tdXRleF9lbnRl cihsb2NrLT50cngpOwogCiAJaWYgKGxvY2tfZ2V0X21vZGUobG9jaykgPT0gTE9DS19BVVRPX0lO QykgewogCQlkaWN0X3RhYmxlX3QqCXRhYmxlID0gbG9jay0+dW5fbWVtYmVyLnRhYl9sb2NrLnRh YmxlOwogCi0JCWlmICh0YWJsZS0+YXV0b2luY190cnggPT0gbG9jay0+dHJ4KSB7CisJCWlmIChV TklWX1VOTElLRUxZKHRhYmxlLT5hdXRvaW5jX3RyeCA9PSBsb2NrLT50cngpKSB7CiAJCQlmcHJp bnRmKHN0ZGVyciwKIAkJCQkiSW5ub0RCOiBFcnJvcjogdHJ4IGFscmVhZHkgaGFkIgogCQkJCSIg YW4gQVVUTy1JTkMgbG9jayFcbiIpOwpAQCAtMjMxOSw4ICsyMzE4LDYgQEAgbG9ja19yZWNfY2Fu Y2VsKAogCXV0X2FkKGxvY2tfbXV0ZXhfb3duKCkpOwogCXV0X2FkKGxvY2tfZ2V0X3R5cGVfbG93 KGxvY2spID09IExPQ0tfUkVDKTsKIAotCXRyeF9tdXRleF9lbnRlcihsb2NrLT50cngpOwotCiAJ LyogUmVzZXQgdGhlIGJpdCAodGhlcmUgY2FuIGJlIG9ubHkgb25lIHNldCBiaXQpIGluIHRoZSBs b2NrIGJpdG1hcCAqLwogCWxvY2tfcmVjX3Jlc2V0X250aF9iaXQobG9jaywgbG9ja19yZWNfZmlu ZF9zZXRfYml0KGxvY2spKTsKIApAQCAtMjMzMCw2ICsyMzI3LDggQEAgbG9ja19yZWNfY2FuY2Vs KAogCiAJLyogVGhlIGZvbGxvd2luZyBmdW5jdGlvbiByZWxlYXNlcyB0aGUgdHJ4IGZyb20gbG9j ayB3YWl0ICovCiAKKwl0cnhfbXV0ZXhfZW50ZXIobG9jay0+dHJ4KTsKKwogCXRociA9IHF1ZV90 aHJfZW5kX2xvY2tfd2FpdChsb2NrLT50cngpOwogCiAJaWYgKHRociAhPSBOVUxMKSB7CkBAIC0z NDg4LDcgKzM0ODcsNiBAQCBsb2NrX2RlYWRsb2NrX29jY3VycygKIAl0cnhfdCoJdHJ4KQkvKiE8 IGluL291dDogdHJhbnNhY3Rpb24gKi8KIHsKIAl0cnhfdCoJCW1hcmtfdHJ4OwotCXVsaW50CQly ZXQ7CiAJdWxpbnQJCWNvc3QJPSAwOwogCiAJdXRfYWQodHJ4KTsKQEAgLTM1MjAsMTUgKzM1MTgs MjIgQEAgcmV0cnk6CiAKIAl0cnhfbXV0ZXhfZW50ZXIodHJ4KTsKIAotCXJldCA9IGxvY2tfZGVh ZGxvY2tfcmVjdXJzaXZlKHRyeCwgdHJ4LCBsb2NrLCAmY29zdCwgMCk7Ci0KLQlzd2l0Y2ggKHJl dCkgeworCXN3aXRjaCAobG9ja19kZWFkbG9ja19yZWN1cnNpdmUodHJ4LCB0cngsIGxvY2ssICZj b3N0LCAwKSkgewogCWNhc2UgTE9DS19WSUNUSU1fSVNfT1RIRVI6CiAJCS8qIFdlIGNob3NlIHNv bWUgb3RoZXIgdHJ4IGFzIGEgdmljdGltOiByZXRyeSBpZiB0aGVyZSBzdGlsbAogCQlpcyBhIGRl YWRsb2NrICovCiAJCWdvdG8gcmV0cnk7CiAKIAljYXNlIExPQ0tfVklDVElNX0VYQ0VFRF9NQVhf REVQVEg6CisJCS8qIFJlbGVhc2UgdGhlIG11dGV4IHRvIG9iZXkgdGhlIGxhdGNoaW5nIG9yZGVy LgorCQlUaGlzIGlzIHNhZmUsIGJlY2F1c2UgbG9ja19kZWFkbG9ja19vY2N1cnMoKSBpcyBpbnZv a2VkCisJCXdoZW4gYSBsb2NrIHdhaXQgaXMgZW5xdWV1ZWQgZm9yIHRoZSBjdXJyZW50bHkgcnVu bmluZworCQl0cmFuc2FjdGlvbi4gQmVjYXVzZSB0cnggaXMgYSBydW5uaW5nIHRyYW5zYWN0aW9u CisJCShpdCBpcyBub3QgY3VycmVudGx5IHN1c3BlbmRlZCBiZWNhdXNlIG9mIGEgbG9jayB3YWl0 KSwKKwkJaXRzIHN0YXRlIGNhbiBvbmx5IGJlIGNoYW5nZWQgYnkgdGhpcyB0aHJlYWQsIHdoaWNo IGlzCisJCWN1cnJlbnRseSBhc3NvY2lhdGVkIHdpdGggdGhlIHRyYW5zYWN0aW9uLiAqLworCQl0 cnhfbXV0ZXhfZXhpdCh0cngpOworCiAJCS8qIElmIHRoZSBsb2NrIHNlYXJjaCBleGNlZWRzIHRo ZSBtYXggc3RlcAogCQlvciB0aGUgbWF4IGRlcHRoLCB0aGUgY3VycmVudCB0cnggd2lsbCBiZQog CQl0aGUgdmljdGltLiBQcmludCBpdHMgaW5mb3JtYXRpb24uICovCkBAIC0zNTQwLDMyICszNTQ1 LDMxIEBAIHJldHJ5OgogCQkJIiBGT0xMT1dJTkcgVFJBTlNBQ1RJT04gXG5cbiIKIAkJCSIqKiog VFJBTlNBQ1RJT046XG4iKTsKIAotCQkvKiBUbyBvYmV5IHRoZSBsYXRjaGluZyBvcmRlciAqLwot CQl0cnhfbXV0ZXhfZXhpdCh0cngpOwotCiAJCWxvY2tfZGVhZGxvY2tfdHJ4X3ByaW50KHRyeCwg MzAwMCk7CiAKLQkJdHJ4X211dGV4X2VudGVyKHRyeCk7Ci0KIAkJbG9ja19kZWFkbG9ja19mcHV0 cygKIAkJCSIqKiogV0FJVElORyBGT1IgVEhJUyBMT0NLIFRPIEJFIEdSQU5URUQ6XG4iKTsKIAog CQlsb2NrX2RlYWRsb2NrX2xvY2tfcHJpbnQobG9jayk7CiAKKwkJdHJ4X211dGV4X2VudGVyKHRy eCk7CiAJCWJyZWFrOwogCiAJY2FzZSBMT0NLX1ZJQ1RJTV9JU19TVEFSVDoKIAkJbG9ja19kZWFk bG9ja19mcHV0cygiKioqIFdFIFJPTEwgQkFDSyBUUkFOU0FDVElPTiAoMilcbiIpOwogCQlicmVh azsKIAotCWRlZmF1bHQ6Ci0JCS8qIE5vIGRlYWRsb2NrIGRldGVjdGVkKi8KKwljYXNlIExPQ0tf VklDVElNX05PTkU6CisJCS8qIE5vIGRlYWRsb2NrIGRldGVjdGVkICovCisJCXV0X2FkKHRyeF9t dXRleF9vd24odHJ4KSk7CisJCXV0X2FkKGxvY2tfbXV0ZXhfb3duKCkpOwogCQlyZXR1cm4oRkFM U0UpOwogCX0KIAogCWxvY2tfZGVhZGxvY2tfZm91bmQgPSBUUlVFOwogCiAJdXRfYWQodHJ4X211 dGV4X293bih0cngpKTsKKwl1dF9hZChsb2NrX211dGV4X293bigpKTsKIAogCXJldHVybihUUlVF KTsKIH0KQEAgLTM2NTgsNyArMzY2Miw2IEBAIGxvY2tfZGVhZGxvY2tfcmVjdXJzaXZlKAogCiAJ CQlpZiAobG9ja190cnggPT0gc3RhcnQpIHsKIAotCQkJCS8qIFRvIG9iZXkgdGhlIGxhdGNoaW5n IG9yZGVyICovCiAJCQkJdHJ4X211dGV4X2V4aXQoc3RhcnQpOwogCiAJCQkJLyogV2UgY2FtZSBi YWNrIHRvIHRoZSByZWN1cnNpb24gc3RhcnRpbmcKQEAgLTQ3NzEsOSArNDc3NCw4IEBAIGxvb3A6 CiAKIAlpZiAodHJ4ID09IE5VTEwpIHsKIAotCQlyd19sb2NrX3NfdW5sb2NrKCZ0cnhfc3lzLT5s b2NrKTsKLQogCQlsb2NrX211dGV4X2V4aXQoKTsKKwkJcndfbG9ja19zX3VubG9jaygmdHJ4X3N5 cy0+bG9jayk7CiAKIAkJdXRfYWQobG9ja192YWxpZGF0ZSgpKTsKIApAQCAtNDg1OCw5ICs0ODYw LDggQEAgbG9vcDoKIAkJCQlnb3RvIHByaW50X3JlYzsKIAkJCX0KIAotCQkJcndfbG9ja19zX3Vu bG9jaygmdHJ4X3N5cy0+bG9jayk7Ci0KIAkJCWxvY2tfbXV0ZXhfZXhpdCgpOworCQkJcndfbG9j a19zX3VubG9jaygmdHJ4X3N5cy0+bG9jayk7CiAKIAkJCW10cl9zdGFydCgmbXRyKTsKIApAQCAt NDg5Nyw4ICs0ODk4LDYgQEAgcHJpbnRfcmVjOgogCiAJCW50aF90cngrKzsKIAkJbnRoX2xvY2sg PSAwOwotCi0JCWdvdG8gbG9vcDsKIAl9CiAKIAlnb3RvIGxvb3A7CkBAIC01MjU3LDEwICs1MjU2 LDEwIEBAIGxvY2tfdmFsaWRhdGUodm9pZCkKIAkJfQogCX0KIAotCXJ3X2xvY2tfc191bmxvY2so JnRyeF9zeXMtPmxvY2spOwotCiAJbG9ja19tdXRleF9leGl0KCk7CiAKKwlyd19sb2NrX3NfdW5s b2NrKCZ0cnhfc3lzLT5sb2NrKTsKKwogCXJldHVybihUUlVFKTsKIH0KICNlbmRpZiAvKiBVTklW X0RFQlVHICovCkBAIC01MzA3LDggKzUzMDYsOSBAQCBsb2NrX3JlY19pbnNlcnRfY2hlY2tfYW5k X2xvY2soCiAJbmV4dF9yZWNfaGVhcF9ubyA9IHBhZ2VfcmVjX2dldF9oZWFwX25vKG5leHRfcmVj KTsKIAogCWxvY2tfbXV0ZXhfZW50ZXIoKTsKLQotCXRyeF9tdXRleF9lbnRlcih0cngpOworCS8q IEJlY2F1c2UgdGhpcyBjb2RlIGlzIGludm9rZWQgZm9yIGEgcnVubmluZyB0cmFuc2FjdGlvbiBi eQorCXRoZSB0aHJlYWQgdGhhdCBpcyBzZXJ2aW5nIHRoZSB0cmFuc2FjdGlvbiwgaXQgaXMgbm90 IG5lY2Vzc2FyeQorCXRvIGhvbGQgdHJ4LT5tdXRleCBoZXJlLiAqLwogCiAJLyogV2hlbiBpbnNl cnRpbmcgYSByZWNvcmQgaW50byBhbiBpbmRleCwgdGhlIHRhYmxlIG11c3QgYmUgYXQKIAlsZWFz dCBJWC1sb2NrZWQgb3Igd2UgbXVzdCBiZSBidWlsZGluZyBhbiBpbmRleCwgaW4gd2hpY2ggY2Fz ZQpAQCAtNTMyMiw4ICs1MzIyLDYgQEAgbG9ja19yZWNfaW5zZXJ0X2NoZWNrX2FuZF9sb2NrKAog CWlmIChVTklWX0xJS0VMWShsb2NrID09IE5VTEwpKSB7CiAJCS8qIFdlIG9wdGltaXplIENQVSB0 aW1lIHVzYWdlIGluIHRoZSBzaW1wbGVzdCBjYXNlICovCiAKLQkJdHJ4X211dGV4X2V4aXQodHJ4 KTsKLQogCQlsb2NrX211dGV4X2V4aXQoKTsKIAogCQlpZiAoIWRpY3RfaW5kZXhfaXNfY2x1c3Qo aW5kZXgpKSB7CkBAIC01MzU1LDE2ICs1MzUzLDE2IEBAIGxvY2tfcmVjX2luc2VydF9jaGVja19h bmRfbG9jaygKIAkJICAgIGJsb2NrLCBuZXh0X3JlY19oZWFwX25vLCB0cngpKSB7CiAKIAkJLyog Tm90ZSB0aGF0IHdlIG1heSBnZXQgREJfU1VDQ0VTUyBhbHNvIGhlcmUhICovCisJCXRyeF9tdXRl eF9lbnRlcih0cngpOwogCQllcnIgPSBsb2NrX3JlY19lbnF1ZXVlX3dhaXRpbmcoTE9DS19YIHwg TE9DS19HQVAKIAkJCQkJICAgICAgIHwgTE9DS19JTlNFUlRfSU5URU5USU9OLAogCQkJCQkgICAg ICAgYmxvY2ssIG5leHRfcmVjX2hlYXBfbm8sCiAJCQkJCSAgICAgICBpbmRleCwgdGhyKTsKKwkJ dHJ4X211dGV4X2V4aXQodHJ4KTsKIAl9IGVsc2UgewogCQllcnIgPSBEQl9TVUNDRVNTOwogCX0K IAotCXRyeF9tdXRleF9leGl0KHRyeCk7Ci0KIAlsb2NrX211dGV4X2V4aXQoKTsKIAogCXN3aXRj aCAoZXJyKSB7CkBAIC02MjIyLDkgKzYyMjAsOCBAQCBsb2NrX3RyeF9oYW5kbGVfd2FpdCgKIAkJ ZXJyID0gREJfU1VDQ0VTUzsKIAl9CiAKLQl0cnhfbXV0ZXhfZXhpdCh0cngpOwotCiAJbG9ja19t dXRleF9leGl0KCk7CisJdHJ4X211dGV4X2V4aXQodHJ4KTsKIAogCXJldHVybihlcnIpOwogfQoK PT09IG1vZGlmaWVkIGZpbGUgJ3N0b3JhZ2UvaW5ub2Jhc2UvbG9jay9sb2NrMHdhaXQuYycKLS0t IGEvc3RvcmFnZS9pbm5vYmFzZS9sb2NrL2xvY2swd2FpdC5jCXJldmlkOnZhc2lsLmRpbW92QG9y YWNsZS5jb20tMjAxMTAyMDcwOTIxMDMtdXN1Y3QwdTc4NWgwZG5vMgorKysgYi9zdG9yYWdlL2lu bm9iYXNlL2xvY2svbG9jazB3YWl0LmMJcmV2aWQ6bWFya28ubWFrZWxhQG9yYWNsZS5jb20tMjAx MTAyMDcxMTIzMTctZTBhZGFuamJhMDdienJlNApAQCAtMTUwLDU5ICsxNTAsNDggQEAgbG9ja193 YWl0X3RhYmxlX3Jlc2VydmVfc2xvdCgKIAogCXNsb3QgPSBsb2NrX3N5cy0+d2FpdGluZ190aHJl YWRzOwogCi0JZm9yIChpID0gMDsgaSA8IE9TX1RIUkVBRF9NQVhfTjsgKytpLCArK3Nsb3QpIHsK Kwlmb3IgKGkgPSBPU19USFJFQURfTUFYX047IGktLTsgKytzbG90KSB7CiAJCWlmICghc2xvdC0+ aW5fdXNlKSB7Ci0JCQlicmVhazsKLQkJfQotCX0KKwkJCXNsb3QtPmluX3VzZSA9IFRSVUU7CisJ CQlzbG90LT50aHIgPSB0aHI7CisJCQlzbG90LT50aHItPnNsb3QgPSBzbG90OworCQkJc2xvdC0+ aWQgPSBvc190aHJlYWRfZ2V0X2N1cnJfaWQoKTsKKwkJCXNsb3QtPmhhbmRsZSA9IG9zX3RocmVh ZF9nZXRfY3VycigpOwogCi0JLyogQ2hlY2sgaWYgd2UgaGF2ZSBydW4gb3V0IG9mIHNsb3RzLiAq LwotCWlmIChzbG90ID09IGxvY2tfc3lzLT53YWl0aW5nX3RocmVhZHMrIE9TX1RIUkVBRF9NQVhf TikgeworCQkJaWYgKHNsb3QtPmV2ZW50ID09IE5VTEwpIHsKKwkJCQlzbG90LT5ldmVudCA9IG9z X2V2ZW50X2NyZWF0ZShOVUxMKTsKKwkJCQl1dF9hKHNsb3QtPmV2ZW50KTsKKwkJCX0KIAotCQl1 dF9wcmludF90aW1lc3RhbXAoc3RkZXJyKTsKKwkJCW9zX2V2ZW50X3Jlc2V0KHNsb3QtPmV2ZW50 KTsKKwkJCXNsb3QtPnN1c3BlbmRlZCA9IFRSVUU7CisJCQlzbG90LT5zdXNwZW5kX3RpbWUgPSB1 dF90aW1lKCk7CisJCQlzbG90LT53YWl0X3RpbWVvdXQgPSB3YWl0X3RpbWVvdXQ7CiAKLQkJZnBy aW50ZihzdGRlcnIsCi0JCQkiICBJbm5vREI6IFRoZXJlIGFwcGVhciB0byBiZSAlbHUgdXNlciIK LQkJCSIgdGhyZWFkcyBjdXJyZW50bHkgd2FpdGluZ1xuIgotCQkJIklubm9EQjogaW5zaWRlIElu bm9EQiwgd2hpY2ggaXMgdGhlIgotCQkJIiB1cHBlciBsaW1pdC4gQ2Fubm90IGNvbnRpbnVlIG9w ZXJhdGlvbi5cbiIKLQkJCSJJbm5vREI6IFdlIGludGVudGlvbmFsbHkgZ2VuZXJhdGUiCi0JCQki IGEgc2VnIGZhdWx0IHRvIHByaW50IGEgc3RhY2sgdHJhY2VcbiIKLQkJCSJJbm5vREI6IG9uIExp bnV4LiBCdXQgZmlyc3Qgd2UgcHJpbnQiCi0JCQkiIGEgbGlzdCBvZiB3YWl0aW5nIHRocmVhZHMu XG4iLCAodWxvbmcpIGkpOworCQkJaWYgKHNsb3QgPT0gbG9ja19zeXMtPmxhc3Rfc2xvdCkgewor CQkJCSsrbG9ja19zeXMtPmxhc3Rfc2xvdDsKKwkJCX0KIAotCQlsb2NrX3dhaXRfdGFibGVfcHJp bnQoKTsKLQotCQl1dF9lcnJvcjsKLQl9IGVsc2UgeworCQkJdXRfYWQobG9ja19zeXMtPmxhc3Rf c2xvdAorCQkJICAgICAgPD0gbG9ja19zeXMtPndhaXRpbmdfdGhyZWFkcyArIE9TX1RIUkVBRF9N QVhfTik7CiAKLQkJdXRfYShzbG90LT5pbl91c2UgPT0gRkFMU0UpOwotCi0JCXNsb3QtPmluX3Vz ZSA9IFRSVUU7Ci0JCXNsb3QtPnRociA9IHRocjsKLQkJc2xvdC0+dGhyLT5zbG90ID0gc2xvdDsK LQkJc2xvdC0+aWQgPSBvc190aHJlYWRfZ2V0X2N1cnJfaWQoKTsKLQkJc2xvdC0+aGFuZGxlID0g b3NfdGhyZWFkX2dldF9jdXJyKCk7Ci0KLQkJaWYgKHNsb3QtPmV2ZW50ID09IE5VTEwpIHsKLQkJ CXNsb3QtPmV2ZW50ID0gb3NfZXZlbnRfY3JlYXRlKE5VTEwpOwotCQkJdXRfYShzbG90LT5ldmVu dCk7CisJCQlyZXR1cm4oc2xvdCk7CiAJCX0KLQotCQlvc19ldmVudF9yZXNldChzbG90LT5ldmVu dCk7Ci0JCXNsb3QtPnN1c3BlbmRlZCA9IFRSVUU7Ci0JCXNsb3QtPnN1c3BlbmRfdGltZSA9IHV0 X3RpbWUoKTsKLQkJc2xvdC0+d2FpdF90aW1lb3V0ID0gd2FpdF90aW1lb3V0OwogCX0KIAotCWlm IChzbG90ID09IGxvY2tfc3lzLT5sYXN0X3Nsb3QpIHsKLQkJKytsb2NrX3N5cy0+bGFzdF9zbG90 OwotCX0KKwl1dF9wcmludF90aW1lc3RhbXAoc3RkZXJyKTsKIAotCXV0X2FkKGxvY2tfc3lzLT5s YXN0X3Nsb3QKLQkgICAgICA8PSBsb2NrX3N5cy0+d2FpdGluZ190aHJlYWRzKyBPU19USFJFQURf TUFYX04pOworCWZwcmludGYoc3RkZXJyLAorCQkiICBJbm5vREI6IFRoZXJlIGFwcGVhciB0byBi ZSAlbHUgdXNlciIKKwkJIiB0aHJlYWRzIGN1cnJlbnRseSB3YWl0aW5nXG4iCisJCSJJbm5vREI6 IGluc2lkZSBJbm5vREIsIHdoaWNoIGlzIHRoZSIKKwkJIiB1cHBlciBsaW1pdC4gQ2Fubm90IGNv bnRpbnVlIG9wZXJhdGlvbi5cbiIKKwkJIklubm9EQjogQXMgYSBsYXN0IHRoaW5nLCB3ZSBwcmlu dCIKKwkJIiBhIGxpc3Qgb2Ygd2FpdGluZyB0aHJlYWRzLlxuIiwgKHVsb25nKSBPU19USFJFQURf TUFYX04pOwogCi0JcmV0dXJuKHNsb3QpOworCWxvY2tfd2FpdF90YWJsZV9wcmludCgpOworCisJ dXRfZXJyb3I7CiB9CiAKIC8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq KioqKioqKioqKioqKioqKioqKioqKiovLyoqCkBAIC0yNDUsNyArMjM0LDcgQEAgbG9ja193YWl0 X3N1c3BlbmRfdGhyZWFkKAogCiAJaWYgKHRoci0+c3RhdGUgPT0gUVVFX1RIUl9SVU5OSU5HKSB7 CiAKLQkJdXRfYWQodGhyLT5pc19hY3RpdmUgPT0gVFJVRSk7CisJCXV0X2FkKHRoci0+aXNfYWN0 aXZlKTsKIAogCQkvKiBUaGUgbG9jayBoYXMgYWxyZWFkeSBiZWVuIHJlbGVhc2VkIG9yIHRoaXMg dHJhbnNhY3Rpb24KIAkJd2FzIGNob3NlbiBhcyBhIGRlYWRsb2NrIHZpY3RpbTogbm8gbmVlZCB0 byBzdXNwZW5kICovCkBAIC0yNTYsMTMgKzI0NSwxMiBAQCBsb2NrX3dhaXRfc3VzcGVuZF90aHJl YWQoCiAJCQl0cngtPmxvY2sud2FzX2Nob3Nlbl9hc19kZWFkbG9ja192aWN0aW0gPSBGQUxTRTsK IAkJfQogCi0JCXRyeF9tdXRleF9leGl0KHRyeCk7Ci0KIAkJbG9ja193YWl0X211dGV4X2V4aXQo KTsKKwkJdHJ4X211dGV4X2V4aXQodHJ4KTsKIAkJcmV0dXJuOwogCX0KIAotCXV0X2FkKHRoci0+ aXNfYWN0aXZlID09IEZBTFNFKTsKKwl1dF9hZCghdGhyLT5pc19hY3RpdmUpOwogCiAJc2xvdCA9 IGxvY2tfd2FpdF90YWJsZV9yZXNlcnZlX3Nsb3QodGhyLCBsb2NrX3dhaXRfdGltZW91dCk7CiAK QEAgLTI4Myw4ICsyNzEsOCBAQCBsb2NrX3dhaXRfc3VzcGVuZF90aHJlYWQoCiAKIAlvc19ldmVu dF9zZXQoc3J2X3RpbWVvdXRfZXZlbnQpOwogCi0JdHJ4X211dGV4X2V4aXQodHJ4KTsKIAlsb2Nr X3dhaXRfbXV0ZXhfZXhpdCgpOworCXRyeF9tdXRleF9leGl0KHRyeCk7CiAKIAlpZiAodHJ4LT5k ZWNsYXJlZF90b19iZV9pbnNpZGVfaW5ub2RiKSB7CiAKQEAgLTM5NSw3ICszODMsNyBAQCBsb2Nr X3dhaXRfcmVsZWFzZV90aHJlYWRfaWZfc3VzcGVuZGVkKAogCiAJLyogV2Ugb3duIGJvdGggdGhl IGxvY2sgbXV0ZXggYW5kIHRoZSB0cnhfdDo6bXV0ZXggYnV0IG5vdCB0aGUKIAlsb2NrIHdhaXQg bXV0ZXguIFRoaXMgaXMgT0sgYmVjYXVzZSBvdGhlciB0aHJlYWRzIHdpbGwgc2VlIHRoZSBzdGF0 ZQotCW9mIHRoaXMgbXV0ZXggYXMgYmVpbmcgaW4gdXNlIGFuZCBubyBvdGhlciB0aHJlYWQgY2Fu IGNoYW5nZSB0aGUgc3RhdGUKKwlvZiB0aGlzIHNsb3QgYXMgYmVpbmcgaW4gdXNlIGFuZCBubyBv dGhlciB0aHJlYWQgY2FuIGNoYW5nZSB0aGUgc3RhdGUKIAlvZiB0aGUgc2xvdCB0byBmcmVlIHVu bGVzcyB0aGF0IHRocmVhZCBhbHNvIG93bnMgdGhlIGxvY2sgbXV0ZXguICovCiAKIAlpZiAodGhy LT5zbG90ICE9IE5VTEwgJiYgdGhyLT5zbG90LT5pbl91c2UgJiYgdGhyLT5zbG90LT50aHIgPT0g dGhyKSB7Cgo9PT0gbW9kaWZpZWQgZmlsZSAnc3RvcmFnZS9pbm5vYmFzZS9xdWUvcXVlMHF1ZS5j JwotLS0gYS9zdG9yYWdlL2lubm9iYXNlL3F1ZS9xdWUwcXVlLmMJcmV2aWQ6dmFzaWwuZGltb3ZA b3JhY2xlLmNvbS0yMDExMDIwNzA5MjEwMy11c3VjdDB1Nzg1aDBkbm8yCisrKyBiL3N0b3JhZ2Uv aW5ub2Jhc2UvcXVlL3F1ZTBxdWUuYwlyZXZpZDptYXJrby5tYWtlbGFAb3JhY2xlLmNvbS0yMDEx MDIwNzExMjMxNy1lMGFkYW5qYmEwN2J6cmU0CkBAIC0xLDYgKzEsNiBAQAogLyoqKioqKioqKioq KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq KioqKioqKioqCiAKLUNvcHlyaWdodCAoYykgMTk5NiwgMjAwOSwgSW5ub2Jhc2UgT3kuIEFsbCBS aWdodHMgUmVzZXJ2ZWQuCitDb3B5cmlnaHQgKGMpIDE5OTYsIDIwMTEsIE9yYWNsZSBhbmQvb3Ig aXRzIGFmZmlsaWF0ZXMuIEFsbCBSaWdodHMgUmVzZXJ2ZWQuCiAKIFRoaXMgcHJvZ3JhbSBpcyBm cmVlIHNvZnR3YXJlOyB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IgbW9kaWZ5IGl0IHVu ZGVyCiB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxp c2hlZCBieSB0aGUgRnJlZSBTb2Z0d2FyZQpAQCAtMjA2LDYgKzIwNiw3IEBAIHF1ZV90aHJfZW5k X2xvY2tfd2FpdCgKIAlpYm9vbAkJd2FzX2FjdGl2ZTsKIAogCXV0X2FkKGxvY2tfbXV0ZXhfb3du KCkpOworCXV0X2FkKHRyeF9tdXRleF9vd24odHJ4KSk7CiAKIAl0aHIgPSB0cngtPmxvY2sud2Fp dF90aHI7CiAKQEAgLTIxNSw4ICsyMTYsNiBAQCBxdWVfdGhyX2VuZF9sb2NrX3dhaXQoCiAJLyog SW4gTXlTUUwgdGhpcyBpcyB0aGUgb25seSBwb3NzaWJsZSBzdGF0ZSBoZXJlICovCiAJdXRfYSh0 aHItPnN0YXRlID09IFFVRV9USFJfTE9DS19XQUlUKTsKIAotCXV0X2FkKHRoci0+c3RhdGUgPT0g UVVFX1RIUl9MT0NLX1dBSVQpOwotCiAJd2FzX2FjdGl2ZSA9IHRoci0+aXNfYWN0aXZlOwogCiAJ cXVlX3Rocl9tb3ZlX3RvX3J1bl9zdGF0ZSh0aHIpOwpAQCAtNzA0LDcgKzcwMyw2IEBAIHF1ZV90 aHJfc3RvcCgKIAlxdWVfdGhyX3QqCXRocikJLyohPCBpbjogcXVlcnkgdGhyZWFkICovCiB7CiAJ cXVlX3QqCQlncmFwaDsKLQlpYm9vbAkJcmV0CT0gVFJVRTsKIAl0cnhfdCoJCXRyeCA9IHRocl9n ZXRfdHJ4KHRocik7OwogCiAJZ3JhcGggPSB0aHItPmdyYXBoOwpAQCAtNzMyLDEwICs3MzAsMTAg QEAgcXVlX3Rocl9zdG9wKAogCX0gZWxzZSB7CiAJCXV0X2FkKGdyYXBoLT5zdGF0ZSA9PSBRVUVf Rk9SS19BQ1RJVkUpOwogCi0JCXJldCA9IEZBTFNFOworCQlyZXR1cm4oRkFMU0UpOwogCX0KIAot CXJldHVybihyZXQpOworCXJldHVybihUUlVFKTsKIH0KIAogLyoqKioqKioqKioqKioqKioqKioq KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovLyoqCgo9 PT0gbW9kaWZpZWQgZmlsZSAnc3RvcmFnZS9pbm5vYmFzZS9yb3cvcm93MHNlbC5jJwotLS0gYS9z dG9yYWdlL2lubm9iYXNlL3Jvdy9yb3cwc2VsLmMJcmV2aWQ6dmFzaWwuZGltb3ZAb3JhY2xlLmNv bS0yMDExMDIwNzA5MjEwMy11c3VjdDB1Nzg1aDBkbm8yCisrKyBiL3N0b3JhZ2UvaW5ub2Jhc2Uv cm93L3JvdzBzZWwuYwlyZXZpZDptYXJrby5tYWtlbGFAb3JhY2xlLmNvbS0yMDExMDIwNzExMjMx Ny1lMGFkYW5qYmEwN2J6cmU0CkBAIC00MzY2LDcgKzQzNjYsOCBAQCBub19nYXBfbG9jazoKIAog CQkJZXJyID0gbG9ja190cnhfaGFuZGxlX3dhaXQodHJ4KTsKIAotCQkJaWYgKGVyciA9PSBEQl9T VUNDRVNTKSB7CisJCQlzd2l0Y2ggKGVycikgeworCQkJY2FzZSBEQl9TVUNDRVNTOgogCQkJCS8q IFRoZSBsb2NrIHdhcyBncmFudGVkIHdoaWxlIHdlIHdlcmUKIAkJCQlzZWFyY2hpbmcgZm9yIHRo ZSBsYXN0IGNvbW1pdHRlZCB2ZXJzaW9uLgogCQkJCURvIGEgbm9ybWFsIGxvY2tpbmcgcmVhZC4g Ki8KQEAgLTQzNzQsMTIgKzQzNzUsMTQgQEAgbm9fZ2FwX2xvY2s6CiAJCQkJb2Zmc2V0cyA9IHJl Y19nZXRfb2Zmc2V0cygKIAkJCQkJcmVjLCBpbmRleCwgb2Zmc2V0cywgVUxJTlRfVU5ERUZJTkVE LAogCQkJCQkmaGVhcCk7Ci0JCQkJYnJlYWs7Ci0JCQl9IGVsc2UgaWYgKGVyciA9PSBEQl9ERUFE TE9DSykgeworCQkJCWdvdG8gbG9ja3Nfb2s7CisJCQljYXNlIERCX0RFQURMT0NLOgogCQkJCWdv dG8gbG9ja193YWl0X29yX2Vycm9yOwotIAkJCX0gZWxzZSB7Ci0JCQkJdXRfYShlcnIgPT0gREJf TE9DS19XQUlUKTsKKwkJCWNhc2UgREJfTE9DS19XQUlUOgogCQkJCWVyciA9IERCX1NVQ0NFU1M7 CisJCQkJYnJlYWs7CisJCQlkZWZhdWx0OgorCQkJCXV0X2Vycm9yOwogCQkJfQogCiAJCQlpZiAo b2xkX3ZlcnMgPT0gTlVMTCkgewpAQCAtNDQ2OSw2ICs0NDcyLDcgQEAgbm9fZ2FwX2xvY2s6CiAJ CX0KIAl9CiAKK2xvY2tzX29rOgogCS8qIE5PVEUgdGhhdCBhdCB0aGlzIHBvaW50IHJlYyBjYW4g YmUgYW4gb2xkIHZlcnNpb24gb2YgYSBjbHVzdGVyZWQKIAlpbmRleCByZWNvcmQgYnVpbHQgZm9y IGEgY29uc2lzdGVudCByZWFkLiBXZSBjYW5ub3QgYXNzdW1lIGFmdGVyIHRoaXMKIAlwb2ludCB0 aGF0IHJlYyBpcyBvbiBhIGJ1ZmZlciBwb29sIHBhZ2UuIEZ1bmN0aW9ucyBsaWtlCgo9PT0gbW9k aWZpZWQgZmlsZSAnc3RvcmFnZS9pbm5vYmFzZS90cngvdHJ4MHB1cmdlLmMnCi0tLSBhL3N0b3Jh Z2UvaW5ub2Jhc2UvdHJ4L3RyeDBwdXJnZS5jCXJldmlkOnZhc2lsLmRpbW92QG9yYWNsZS5jb20t MjAxMTAyMDcwOTIxMDMtdXN1Y3QwdTc4NWgwZG5vMgorKysgYi9zdG9yYWdlL2lubm9iYXNlL3Ry eC90cngwcHVyZ2UuYwlyZXZpZDptYXJrby5tYWtlbGFAb3JhY2xlLmNvbS0yMDExMDIwNzExMjMx Ny1lMGFkYW5qYmEwN2J6cmU0CkBAIC0xLDYgKzEsNiBAQAogLyoqKioqKioqKioqKioqKioqKioq KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq CiAKLUNvcHlyaWdodCAoYykgMTk5NiwgMjAxMCwgSW5ub2Jhc2UgT3kuIEFsbCBSaWdodHMgUmVz ZXJ2ZWQuCitDb3B5cmlnaHQgKGMpIDE5OTYsIDIwMTEsIE9yYWNsZSBhbmQvb3IgaXRzIGFmZmls aWF0ZXMuIEFsbCBSaWdodHMgUmVzZXJ2ZWQuCiAKIFRoaXMgcHJvZ3JhbSBpcyBmcmVlIHNvZnR3 YXJlOyB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IgbW9kaWZ5IGl0IHVuZGVyCiB0aGUg dGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieSB0 aGUgRnJlZSBTb2Z0d2FyZQpAQCAtMTYwLDggKzE2MCw2IEBAIHRyeF9wdXJnZV9zeXNfY3JlYXRl KAogCiAJdXRfYShwdXJnZV9zeXMtPnRyeC0+c2VzcyA9PSBwdXJnZV9zeXMtPnNlc3MpOwogCi0J dHJ4X211dGV4X2VudGVyKHB1cmdlX3N5cy0+dHJ4KTsKLQogCS8qIEEgcHVyZ2UgdHJhbnNhY3Rp b24gaXMgbm90IGEgcmVhbCB0cmFuc2FjdGlvbiwgd2UgdXNlIGEgdHJhbnNhY3Rpb24KIAloZXJl IG9ubHkgYmVjYXVzZSB0aGUgcXVlcnkgdGhyZWFkcyBjb2RlIHJlcXVpcmVzIGl0LiBJdCBpcyBv dGhlcndpc2UKIAlxdWl0ZSB1bm5lY2Vzc2FyeS4gV2Ugc2hvdWxkIGdldCByaWQgb2YgaXQgZXZl bnR1YWxseS4gKi8KQEAgLTE2OSw4ICsxNjcsNiBAQCB0cnhfcHVyZ2Vfc3lzX2NyZWF0ZSgKIAlw dXJnZV9zeXMtPnRyeC0+c3RhcnRfdGltZSA9IHV0X3RpbWUoKTsKIAlwdXJnZV9zeXMtPnRyeC0+ c3RhdGUgPSBUUlhfU1RBVEVfQUNUSVZFOwogCi0JdHJ4X211dGV4X2V4aXQocHVyZ2Vfc3lzLT50 cngpOwotCiAJcHVyZ2Vfc3lzLT5xdWVyeSA9IHRyeF9wdXJnZV9ncmFwaF9idWlsZCgKIAkJcHVy Z2Vfc3lzLT50cngsIG5fcHVyZ2VfdGhyZWFkcyk7CiAKQEAgLTE4Nyw4ICsxODMsOSBAQCB0cnhf cHVyZ2Vfc3lzX2Nsb3NlKHZvaWQpCiAJcXVlX2dyYXBoX2ZyZWUocHVyZ2Vfc3lzLT5xdWVyeSk7 CiAKIAl1dF9hKHB1cmdlX3N5cy0+dHJ4LT5pZCA9PSAwKTsKKwl1dF9hKHB1cmdlX3N5cy0+c2Vz cy0+dHJ4ID09IHB1cmdlX3N5cy0+dHJ4KTsKIAotCXB1cmdlX3N5cy0+c2Vzcy0+dHJ4LT5zdGF0 ZSA9IFRSWF9TVEFURV9OT1RfU1RBUlRFRDsKKwlwdXJnZV9zeXMtPnRyeC0+c3RhdGUgPSBUUlhf U1RBVEVfTk9UX1NUQVJURUQ7CiAKIAlzZXNzX2Nsb3NlKHB1cmdlX3N5cy0+c2Vzcyk7CiAKCj09 PSBtb2RpZmllZCBmaWxlICdzdG9yYWdlL2lubm9iYXNlL3RyeC90cngwcm9sbC5jJwotLS0gYS9z dG9yYWdlL2lubm9iYXNlL3RyeC90cngwcm9sbC5jCXJldmlkOnZhc2lsLmRpbW92QG9yYWNsZS5j b20tMjAxMTAyMDcwOTIxMDMtdXN1Y3QwdTc4NWgwZG5vMgorKysgYi9zdG9yYWdlL2lubm9iYXNl L3RyeC90cngwcm9sbC5jCXJldmlkOm1hcmtvLm1ha2VsYUBvcmFjbGUuY29tLTIwMTEwMjA3MTEy MzE3LWUwYWRhbmpiYTA3YnpyZTQKQEAgLTc0Myw3ICs3NDMsNyBAQCB0cnhfcm9sbGJhY2tfb3Jf Y2xlYW5fcmVjb3ZlcmVkKAogCQkJdXRfYWQodHJ4LT5pbl90cnhfbGlzdCk7CiAKIAkJCS8qIElm IHRoaXMgZnVuY3Rpb24gZG9lcyBhIGNsZWFudXAgb3Igcm9sbGJhY2sKLQkJCXRoZW4gaXQgd2ls bCByZWxlYXNlIHRoZSB0cnggc3lzIG11dGV4LCB0aGVyZWZvcmUKKwkJCXRoZW4gaXQgd2lsbCBy ZWxlYXNlIHRoZSB0cnhfc3lzLT5sb2NrLCB0aGVyZWZvcmUKIAkJCXdlIG5lZWQgdG8gcmVhY3F1 aXJlIGl0IGJlZm9yZSByZXRyeWluZyB0aGUgbG9vcC4gKi8KIAogCQkJaWYgKHRyeF9yb2xsYmFj a19yZXN1cnJlY3RlZCh0cngsIGFsbCkpIHsKCj09PSBtb2RpZmllZCBmaWxlICdzdG9yYWdlL2lu bm9iYXNlL3RyeC90cngwdHJ4LmMnCi0tLSBhL3N0b3JhZ2UvaW5ub2Jhc2UvdHJ4L3RyeDB0cngu YwlyZXZpZDp2YXNpbC5kaW1vdkBvcmFjbGUuY29tLTIwMTEwMjA3MDkyMTAzLXVzdWN0MHU3ODVo MGRubzIKKysrIGIvc3RvcmFnZS9pbm5vYmFzZS90cngvdHJ4MHRyeC5jCXJldmlkOm1hcmtvLm1h a2VsYUBvcmFjbGUuY29tLTIwMTEwMjA3MTEyMzE3LWUwYWRhbmpiYTA3YnpyZTQKQEAgLTE0NDUs MTggKzE0NDUsMTkgQEAgc3RhdGljCiB2b2lkCiB0cnhfcHJlcGFyZSgKIC8qPT09PT09PT0qLwot CXRyeF90Kgl0cngpCS8qITwgaW46IHRyYW5zYWN0aW9uICovCisJdHJ4X3QqCXRyeCkJLyohPCBp bi9vdXQ6IHRyYW5zYWN0aW9uICovCiB7CiAJdHJ4X3JzZWdfdCoJcnNlZzsKLQlpYl91aW50NjRf dAlsc24JCT0gMDsKKwlpYl91aW50NjRfdAlsc247CiAJbXRyX3QJCW10cjsKIAogCXJzZWcgPSB0 cngtPnJzZWc7CisJLyogT25seSBmcmVzaCB1c2VyIHRyYW5zYWN0aW9ucyBjYW4gYmUgcHJlcGFy ZWQuCisJUmVjb3ZlcmVkIHRyYW5zYWN0aW9ucyBjYW5ub3QuICovCisJdXRfYSghdHJ4LT5pc19y ZWNvdmVyZWQpOwogCiAJaWYgKHRyeC0+aW5zZXJ0X3VuZG8gIT0gTlVMTCB8fCB0cngtPnVwZGF0 ZV91bmRvICE9IE5VTEwpIHsKIAotCQl0cnhfbXV0ZXhfZXhpdCh0cngpOwotCiAJCW10cl9zdGFy dCgmbXRyKTsKIAogCQkvKiBDaGFuZ2UgdGhlIHVuZG8gbG9nIHNlZ21lbnQgc3RhdGVzIGZyb20g VFJYX1VORE9fQUNUSVZFCkBAIC0xNDg5LDE2ICsxNDkwLDEzIEBAIHRyeF9wcmVwYXJlKAogCQkJ CQl3b3JsZCAqLwogCQkvKi0tLS0tLS0tLS0tLS0tKi8KIAkJbHNuID0gbXRyLmVuZF9sc247Ci0K LQkJdHJ4X211dGV4X2VudGVyKHRyeCk7CisJCXV0X2FkKGxzbik7CisJfSBlbHNlIHsKKwkJbHNu ID0gMDsKIAl9CiAKLQl1dF9hZCh0cnhfbXV0ZXhfb3duKHRyeCkpOwotCi0JLyogTm90ZTogVGhp cyBzdGF0ZSBjaGFuZ2UgaXMgb25seSBjb3ZlcmVkIGJ5IHRoZSB0cnhfdDo6bXV0ZXggYW5kCi0J bm90IHRoZSB0cnhfc3lzX3Q6OmxvY2suICovCi0KIAkvKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tKi8KKwl1dF9hKHRyeC0+c3RhdGUgPT0gVFJYX1NUQVRFX0FDVElWRSk7 CiAJdHJ4LT5zdGF0ZSA9IFRSWF9TVEFURV9QUkVQQVJFRDsKIAkvKi0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tKi8KIApAQCAtMTUyMCw4ICsxNTE4LDYgQEAgdHJ4X3ByZXBh cmUoCiAJCVRPRE86IGZpbmQgb3V0IGlmIE15U1FMIGhvbGRzIHNvbWUgbXV0ZXggd2hlbiBjYWxs aW5nIHRoaXMuCiAJCVRoYXQgd291bGQgc3BvaWwgb3VyIGdyb3VwIHByZXBhcmUgYWxnb3JpdGht LiAqLwogCi0JCXRyeF9tdXRleF9leGl0KHRyeCk7Ci0KIAkJaWYgKHNydl9mbHVzaF9sb2dfYXRf dHJ4X2NvbW1pdCA9PSAwKSB7CiAJCQkvKiBEbyBub3RoaW5nICovCiAJCX0gZWxzZSBpZiAoc3J2 X2ZsdXNoX2xvZ19hdF90cnhfY29tbWl0ID09IDEpIHsKQEAgLTE1NDQsOCArMTU0MCw2IEBAIHRy eF9wcmVwYXJlKAogCQl9IGVsc2UgewogCQkJdXRfZXJyb3I7CiAJCX0KLQotCQl0cnhfbXV0ZXhf ZW50ZXIodHJ4KTsKIAl9CiB9CiAKQEAgLTE1NTksMTUgKzE1NTMsMTEgQEAgdHJ4X3ByZXBhcmVf Zm9yX215c3FsKAogewogCXRyeF9zdGFydF9pZl9ub3Rfc3RhcnRlZF94YSh0cngpOwogCi0JdHJ4 X211dGV4X2VudGVyKHRyeCk7Ci0KIAl0cngtPm9wX2luZm8gPSAicHJlcGFyaW5nIjsKIAogCXRy eF9wcmVwYXJlKHRyeCk7CiAKIAl0cngtPm9wX2luZm8gPSAiIjsKLQotCXRyeF9tdXRleF9leGl0 KHRyeCk7CiB9CiAKIC8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq KioqKioqKioqKioqKioqKioqKioqKioqKioqLy8qKgoK --===============1471528113== MIME-Version: 1.0 Content-Type: text/bzr-bundle; charset="us-ascii"; name="bzr/marko.makela@stripped" Content-Transfer-Encoding: 7bit Content-Disposition: inline # Bazaar merge directive format 2 (Bazaar 0.90) # revision_id: marko.makela@stripped # target_branch: file:///home/marko/innobase/dev/mysql2a/5.6-innodb/ # testament_sha1: 2a0730aeefa3fcbcb864b579fe6bb2e9d84339fc # timestamp: 2011-02-07 13:25:29 +0200 # source_branch: file:///home/marko/innobase/dev/mysql2a/5.5-innodb/ # base_revision_id: vasil.dimov@stripped\ # usuct0u785h0dno2 # # Begin bundle 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 eH+LuSKcKEgv9i3VgA== --===============1471528113==--