From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1KSysU-0005GD-Pl for qemu-devel@nongnu.org; Tue, 12 Aug 2008 14:45:54 -0400 Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1KSysT-0005Eo-Uj for qemu-devel@nongnu.org; Tue, 12 Aug 2008 14:45:54 -0400 Received: from [199.232.76.173] (port=47667 helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1KSysT-0005Ea-M4 for qemu-devel@nongnu.org; Tue, 12 Aug 2008 14:45:53 -0400 Received: from yx-out-1718.google.com ([74.125.44.158]:7246) by monty-python.gnu.org with esmtp (Exim 4.60) (envelope-from ) id 1KSysT-0002tj-3P for qemu-devel@nongnu.org; Tue, 12 Aug 2008 14:45:53 -0400 Received: by yx-out-1718.google.com with SMTP id 3so987430yxi.82 for ; Tue, 12 Aug 2008 11:45:52 -0700 (PDT) Message-ID: Date: Tue, 12 Aug 2008 21:45:51 +0300 From: "Blue Swirl" MIME-Version: 1.0 Content-Type: multipart/mixed; boundary="----=_Part_94248_27884415.1218566751765" Subject: [Qemu-devel] [RFC, PATCH] Host AIO support detection, OpenBSD host support Reply-To: qemu-devel@nongnu.org List-Id: qemu-devel.nongnu.org List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: qemu-devel ------=_Part_94248_27884415.1218566751765 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit Content-Disposition: inline Here are two patches, loosely based on patches in OpenBSD ports system that enable compiling Qemu. The first patch makes AIO use conditional on host AIO support. The second one adjusts various include files etc. I'd like to commit both of these, is that OK? Background: I got fed up with Sparc glibc mangling global registers and buggy gdb/gdb64, so I installed OpenBSD. Now debugging Sparc host support is so much easier. ------=_Part_94248_27884415.1218566751765 Content-Type: plain/text; name=config_aio.diff Content-Transfer-Encoding: base64 X-Attachment-Id: f_fjsusi8t Content-Disposition: attachment; filename=config_aio.diff SW5kZXg6IHFlbXUvYmxvY2stcmF3LXBvc2l4LmMKPT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gcWVtdS5vcmlnL2Js b2NrLXJhdy1wb3NpeC5jCTIwMDgtMDgtMTIgMTc6MTE6MDguMDAwMDAwMDAwICswMDAwCisrKyBx ZW11L2Jsb2NrLXJhdy1wb3NpeC5jCTIwMDgtMDgtMTIgMTc6MTM6MDEuMDAwMDAwMDAwICswMDAw CkBAIC0yOCw3ICsyOCw5IEBACiAjZW5kaWYKICNpbmNsdWRlICJibG9ja19pbnQuaCIKICNpbmNs dWRlIDxhc3NlcnQuaD4KKyNpZmRlZiBDT05GSUdfQUlPCiAjaW5jbHVkZSA8YWlvLmg+CisjZW5k aWYKIAogI2lmZGVmIENPTkZJR19DT0NPQQogI2luY2x1ZGUgPHBhdGhzLmg+CkBAIC00MTgsNiAr NDIwLDcgQEAKICNlbmRpZgogCiAKKyNpZmRlZiBDT05GSUdfQUlPCiAvKioqKioqKioqKioqKioq KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovCiAvKiBVbml4IEFJ TyB1c2luZyBQT1NJWCBBSU8gKi8KIApAQCAtNjg4LDYgKzY5MSwzNyBAQAogICAgIH0KIH0KIAor IyBlbHNlIC8qIENPTkZJR19BSU8gKi8KKwordm9pZCBxZW11X2Fpb19pbml0KHZvaWQpCit7Cit9 CisKK3ZvaWQgcWVtdV9haW9fcG9sbCh2b2lkKQoreworfQorCit2b2lkIHFlbXVfYWlvX2ZsdXNo KHZvaWQpCit7Cit9CisKK3ZvaWQgcWVtdV9haW9fd2FpdF9zdGFydCh2b2lkKQoreworfQorCit2 b2lkIHFlbXVfYWlvX3dhaXQodm9pZCkKK3sKKyNpZiAhZGVmaW5lZChRRU1VX0lNRykgJiYgIWRl ZmluZWQoUUVNVV9OQkQpCisgICAgcWVtdV9iaF9wb2xsKCk7CisjZW5kaWYKK30KKwordm9pZCBx ZW11X2Fpb193YWl0X2VuZCh2b2lkKQoreworfQorCisjZW5kaWYgLyogQ09ORklHX0FJTyAqLwor CiBzdGF0aWMgdm9pZCByYXdfY2xvc2UoQmxvY2tEcml2ZXJTdGF0ZSAqYnMpCiB7CiAgICAgQkRS VlJhd1N0YXRlICpzID0gYnMtPm9wYXF1ZTsKQEAgLTc5MiwxMCArODI2LDEyIEBACiAgICAgcmF3 X2NyZWF0ZSwKICAgICByYXdfZmx1c2gsCiAKKyNpZmRlZiBDT05GSUdfQUlPCiAgICAgLmJkcnZf YWlvX3JlYWQgPSByYXdfYWlvX3JlYWQsCiAgICAgLmJkcnZfYWlvX3dyaXRlID0gcmF3X2Fpb193 cml0ZSwKICAgICAuYmRydl9haW9fY2FuY2VsID0gcmF3X2Fpb19jYW5jZWwsCiAgICAgLmFpb2Ni X3NpemUgPSBzaXplb2YoUmF3QUlPQ0IpLAorI2VuZGlmCiAgICAgLnByb3RvY29sX25hbWUgPSAi ZmlsZSIsCiAgICAgLmJkcnZfcHJlYWQgPSByYXdfcHJlYWQsCiAgICAgLmJkcnZfcHdyaXRlID0g cmF3X3B3cml0ZSwKQEAgLTExNDQsMTAgKzExODAsMTIgQEAKICAgICBOVUxMLAogICAgIHJhd19m bHVzaCwKIAorI2lmZGVmIENPTkZJR19BSU8KICAgICAuYmRydl9haW9fcmVhZCA9IHJhd19haW9f cmVhZCwKICAgICAuYmRydl9haW9fd3JpdGUgPSByYXdfYWlvX3dyaXRlLAogICAgIC5iZHJ2X2Fp b19jYW5jZWwgPSByYXdfYWlvX2NhbmNlbCwKICAgICAuYWlvY2Jfc2l6ZSA9IHNpemVvZihSYXdB SU9DQiksCisjZW5kaWYKICAgICAuYmRydl9wcmVhZCA9IHJhd19wcmVhZCwKICAgICAuYmRydl9w d3JpdGUgPSByYXdfcHdyaXRlLAogICAgIC5iZHJ2X2dldGxlbmd0aCA9IHJhd19nZXRsZW5ndGgs CkluZGV4OiBxZW11L2NvbmZpZ3VyZQo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBxZW11Lm9yaWcvY29uZmlndXJl CTIwMDgtMDgtMTIgMTc6MTE6MDguMDAwMDAwMDAwICswMDAwCisrKyBxZW11L2NvbmZpZ3VyZQky MDA4LTA4LTEyIDE3OjEyOjE1LjAwMDAwMDAwMCArMDAwMApAQCAtMTA2LDYgKzEwNiw3IEBACiBi dWlsZF9kb2NzPSJubyIKIHVuYW1lX3JlbGVhc2U9IiIKIGN1cnNlcz0ieWVzIgorYWlvPSJubyIK IG5wdGw9InllcyIKIG1peGVtdT0ibm8iCiAKQEAgLTg1OSw2ICs4NjAsMTYgQEAKICAgZmkKIGZp ICMgdGVzdCAiJGN1cnNlcyIKIAorIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMj IyMjIyMjCisjIEFJTyBwcm9iZQorY2F0ID4gJFRNUEMgPDwgRU9GCisjaW5jbHVkZSA8YWlvLmg+ CitpbnQgbWFpbih2b2lkKSB7IHJldHVybiBhaW9fd3JpdGUoTlVMTCk7IH0KK0VPRgoraWYgJGNj ICRBUkNIX0NGTEFHUyAtbyAkVE1QRSAkQUlPTElCUyAkVE1QQyAyPiAvZGV2L251bGwgOyB0aGVu CisgIGFpbz15ZXMKK2ZpCisKICMgQ2hlY2sgaWYgdG9vbHMgYXJlIGF2YWlsYWJsZSB0byBidWls ZCBkb2N1bWVudGF0aW9uLgogaWYgWyAteCAiYHdoaWNoIHRleGkyaHRtbCAyPi9kZXYvbnVsbGAi IF0gJiYgXAogICAgWyAteCAiYHdoaWNoIHBvZDJtYW4gMj4vZGV2L251bGxgIiBdOyB0aGVuCkBA IC05MzAsNiArOTQxLDcgQEAKIGVjaG8gInVuYW1lIC1yICAgICAgICAgICR1bmFtZV9yZWxlYXNl IgogZWNobyAiTlBUTCBzdXBwb3J0ICAgICAgJG5wdGwiCiBlY2hvICJ2ZGUgc3VwcG9ydCAgICAg ICAkdmRlIgorZWNobyAiQUlPIHN1cHBvcnQgICAgICAgJGFpbyIKIAogaWYgdGVzdCAkc2RsX3Rv b19vbGQgPSAieWVzIjsgdGhlbgogZWNobyAiLT4gWW91ciBTREwgdmVyc2lvbiBpcyB0b28gb2xk IC0gcGxlYXNlIHVwZ3JhZGUgdG8gaGF2ZSBTREwgc3VwcG9ydCIKQEAgLTExNzUsNiArMTE4Nyw5 IEBACiAgIGVjaG8gIiNkZWZpbmUgQ09ORklHX0JSTEFQSSAxIiA+PiAkY29uZmlnX2gKICAgZWNo byAiQlJMQVBJX0xJQlM9LWxicmxhcGkiID4+ICRjb25maWdfbWFrCiBmaQoraWYgdGVzdCAiJGFp byIgPSAieWVzIiA7IHRoZW4KKyAgZWNobyAiI2RlZmluZSBDT05GSUdfQUlPIDEiID4+ICRjb25m aWdfaAorZmkKIAogIyBYWFg6IHN1cHByZXNzIHRoYXQKIGlmIFsgIiRic2QiID0gInllcyIgXSA7 IHRoZW4K ------=_Part_94248_27884415.1218566751765 Content-Type: plain/text; name=fix_openbsd_build.diff Content-Transfer-Encoding: base64 X-Attachment-Id: f_fjsusqqd Content-Disposition: attachment; filename=fix_openbsd_build.diff SW5kZXg6IHFlbXUvYmxvY2stcmF3LXBvc2l4LmMKPT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gcWVtdS5vcmlnL2Js b2NrLXJhdy1wb3NpeC5jCTIwMDgtMDgtMTIgMTc6MTM6MDEuMDAwMDAwMDAwICswMDAwCisrKyBx ZW11L2Jsb2NrLXJhdy1wb3NpeC5jCTIwMDgtMDgtMTIgMTc6MTQ6MjIuMDAwMDAwMDAwICswMDAw CkBAIC01OCw2ICs1OCwxMiBAQAogI2luY2x1ZGUgPHN5cy9kaXNrLmg+CiAjZW5kaWYKIAorI2lm ZGVmIF9fT3BlbkJTRF9fCisjaW5jbHVkZSA8c3lzL2lvY3RsLmg+CisjaW5jbHVkZSA8c3lzL2Rp c2tsYWJlbC5oPgorI2luY2x1ZGUgPHN5cy9ka2lvLmg+CisjZW5kaWYKKwogLy8jZGVmaW5lIERF QlVHX0ZMT1BQWQogCiAvLyNkZWZpbmUgREVCVUdfQkxPQ0sKQEAgLTc0NSw2ICs3NTEsMjYgQEAK ICAgICByZXR1cm4gMDsKIH0KIAorI2lmZGVmIF9fT3BlbkJTRF9fCitzdGF0aWMgaW50NjRfdCBy YXdfZ2V0bGVuZ3RoKEJsb2NrRHJpdmVyU3RhdGUgKmJzKQoreworICAgIEJEUlZSYXdTdGF0ZSAq cyA9IGJzLT5vcGFxdWU7CisgICAgaW50IGZkID0gcy0+ZmQ7CisgICAgc3RydWN0IHN0YXQgc3Q7 CisKKyAgICBpZiAoZnN0YXQoZmQsICZzdCkpCisgICAgICAgIHJldHVybiAtMTsKKyAgICBpZiAo U19JU0NIUihzdC5zdF9tb2RlKSB8fCBTX0lTQkxLKHN0LnN0X21vZGUpKSB7CisgICAgICAgIHN0 cnVjdCBkaXNrbGFiZWwgZGw7CisKKyAgICAgICAgaWYgKGlvY3RsKGZkLCBESU9DR0RJTkZPLCAm ZGwpKQorICAgICAgICAgICAgcmV0dXJuIC0xOworICAgICAgICByZXR1cm4gKHVpbnQ2NF90KWRs LmRfc2Vjc2l6ZSAqCisgICAgICAgICAgICBkbC5kX3BhcnRpdGlvbnNbRElTS1BBUlQoc3Quc3Rf cmRldildLnBfc2l6ZTsKKyAgICB9IGVsc2UKKyAgICAgICAgcmV0dXJuIHN0LnN0X3NpemU7Cit9 CisjZWxzZSAvKiAhX19PcGVuQlNEX18gKi8KIHN0YXRpYyBpbnQ2NF90ICByYXdfZ2V0bGVuZ3Ro KEJsb2NrRHJpdmVyU3RhdGUgKmJzKQogewogICAgIEJEUlZSYXdTdGF0ZSAqcyA9IGJzLT5vcGFx dWU7CkBAIC03OTEsNiArODE3LDcgQEAKICAgICB9CiAgICAgcmV0dXJuIHNpemU7CiB9CisjZW5k aWYKIAogc3RhdGljIGludCByYXdfY3JlYXRlKGNvbnN0IGNoYXIgKmZpbGVuYW1lLCBpbnQ2NF90 IHRvdGFsX3NpemUsCiAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgY2hhciAqYmFja2luZ19m aWxlLCBpbnQgZmxhZ3MpCkluZGV4OiBxZW11L2NvbmZpZ3VyZQo9PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBxZW11 Lm9yaWcvY29uZmlndXJlCTIwMDgtMDgtMTIgMTc6MTI6MTUuMDAwMDAwMDAwICswMDAwCisrKyBx ZW11L2NvbmZpZ3VyZQkyMDA4LTA4LTEyIDE3OjMzOjM2LjAwMDAwMDAwMCArMDAwMApAQCAtMTUw LDYgKzE1MCw3IEBACiA7OwogT3BlbkJTRCkKIGJzZD0ieWVzIgorb3BlbmJzZD0ieWVzIgogYXVk aW9fZHJ2X2xpc3Q9Im9zcyIKIGF1ZGlvX3Bvc3NpYmxlX2RyaXZlcnM9Im9zcyBzZGwgZXNkIgog OzsKQEAgLTgxOSw2ICs4MjAsMTAgQEAKICAgICAgICAgInBhX3NpbXBsZSAqcyA9IE5VTEw7IHBh X3NpbXBsZV9mcmVlKHMpOyByZXR1cm4gMDsiCiAgICAgOzsKIAorICAgIG9zcykKKyAgICA6Cisg ICAgOzsKKwogICAgICopCiAgICAgZWNobyAiJGF1ZGlvX3Bvc3NpYmxlX2RyaXZlcnMiIHwgZ3Jl cCAtcSAiXDwkZHJ2XD4iIHx8IHsKICAgICAgICAgZWNobwpAQCAtMTA3Niw2ICsxMDgxLDE0IEBA CiAgICAgZWNobyAiI2RlZmluZSBIQVZFX0JZVEVTV0FQX0ggMSIgPj4gJGNvbmZpZ19oCiAgIGZp CiBmaQorCitpZiBbICIkb3BlbmJzZCIgPSAieWVzIiBdIDsgdGhlbgorICBlY2hvICIjZGVmaW5l IEVOT1RTVVAgNDA5NiIgPj4gJGNvbmZpZ19oCisgIGVjaG8gIiNkZWZpbmUgcWVtdV9zaWdpbmZv IHNpZ2luZm9fdCIgPj4gJGNvbmZpZ19oCitlbHNlCisgIGVjaG8gIiNkZWZpbmUgcWVtdV9zaWdp bmZvIHN0cnVjdCBzaWdpbmZvIiA+PiAkY29uZmlnX2gKK2ZpCisKIGlmIHRlc3QgIiRkYXJ3aW4i ID0gInllcyIgOyB0aGVuCiAgIGVjaG8gIkNPTkZJR19EQVJXSU49eWVzIiA+PiAkY29uZmlnX21h awogICBlY2hvICIjZGVmaW5lIENPTkZJR19EQVJXSU4gMSIgPj4gJGNvbmZpZ19oCkluZGV4OiBx ZW11L2R5bmdlbi1leGVjLmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gcWVtdS5vcmlnL2R5bmdlbi1leGVjLmgJ MjAwOC0wOC0xMiAxNzoxMDozMi4wMDAwMDAwMDAgKzAwMDAKKysrIHFlbXUvZHluZ2VuLWV4ZWMu aAkyMDA4LTA4LTEyIDE3OjIzOjM0LjAwMDAwMDAwMCArMDAwMApAQCAtMzIsNiArMzIsOSBAQAog ICAgaG9zdCBoZWFkZXJzIGRvIG5vdCBhbGxvdyB0aGF0LiAqLwogI2luY2x1ZGUgPHN0ZGRlZi5o PgogCisjaWZkZWYgX19PcGVuQlNEX18KKyNpbmNsdWRlIDxzeXMvdHlwZXMuaD4KKyNlbHNlCiB0 eXBlZGVmIHVuc2lnbmVkIGNoYXIgdWludDhfdDsKIHR5cGVkZWYgdW5zaWduZWQgc2hvcnQgdWlu dDE2X3Q7CiB0eXBlZGVmIHVuc2lnbmVkIGludCB1aW50MzJfdDsKQEAgLTYxLDYgKzY0LDcgQEAK IHR5cGVkZWYgc2lnbmVkIGxvbmcgbG9uZyBpbnQ2NF90OwogI2VuZGlmCiAjZW5kaWYKKyNlbmRp ZgogCiAvKiBYWFg6IFRoaXMgbWF5IGJlIHdyb25nIGZvciA2NC1iaXQgSUxQMzIgaG9zdHMuICAq LwogdHlwZWRlZiB2b2lkICogaG9zdF9yZWdfdDsKSW5kZXg6IHFlbXUvb3NkZXAuYwo9PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09Ci0tLSBxZW11Lm9yaWcvb3NkZXAuYwkyMDA4LTA4LTEyIDE3OjEwOjMyLjAwMDAwMDAwMCAr MDAwMAorKysgcWVtdS9vc2RlcC5jCTIwMDgtMDgtMTIgMTc6MTM6MzcuMDAwMDAwMDAwICswMDAw CkBAIC02OCw3ICs2OCwxNCBAQAogCiAjaWYgZGVmaW5lZChVU0VfS1FFTVUpCiAKKyNpZmRlZiBf X09wZW5CU0RfXworI2luY2x1ZGUgPHN5cy9wYXJhbS5oPgorI2luY2x1ZGUgPHN5cy90eXBlcy5o PgorI2luY2x1ZGUgPHN5cy9tb3VudC5oPgorI2Vsc2UKICNpbmNsdWRlIDxzeXMvdmZzLmg+Cisj ZW5kaWYKKwogI2luY2x1ZGUgPHN5cy9tbWFuLmg+CiAjaW5jbHVkZSA8ZmNudGwuaD4KIApAQCAt NzYsOSArODMsMTUgQEAKIHsKICAgICBzdGF0aWMgaW50IHBoeXNfcmFtX2ZkID0gLTE7CiAgICAg c3RhdGljIGludCBwaHlzX3JhbV9zaXplID0gMDsKKyAgICB2b2lkICpwdHI7CisKKyNpZmRlZiBf X09wZW5CU0RfXyAvKiBubyBuZWVkICg/KSBmb3IgYSBkdW1teSBmaWxlIG9uIE9wZW5CU0QgKi8K KyAgICBpbnQgbWFwX2Fub24gPSBNQVBfQU5PTjsKKyNlbHNlCisgICAgaW50IG1hcF9hbm9uID0g MDsKICAgICBjb25zdCBjaGFyICp0bXBkaXI7CiAgICAgY2hhciBwaHlzX3JhbV9maWxlWzEwMjRd OwotICAgIHZvaWQgKnB0cjsKKwogI2lmZGVmIEhPU1RfU09MQVJJUwogICAgIHN0cnVjdCBzdGF0 dmZzIHN0ZnM7CiAjZWxzZQpAQCAtMTQwLDkgKzE1MywxMCBAQAogICAgIH0KICAgICBzaXplID0g KHNpemUgKyA0MDk1KSAmIH40MDk1OwogICAgIGZ0cnVuY2F0ZShwaHlzX3JhbV9mZCwgcGh5c19y YW1fc2l6ZSArIHNpemUpOworI2VuZGlmIC8qICFfX09wZW5CU0RfXyAqLwogICAgIHB0ciA9IG1t YXAoTlVMTCwKICAgICAgICAgICAgICAgIHNpemUsCi0gICAgICAgICAgICAgICBQUk9UX1dSSVRF IHwgUFJPVF9SRUFELCBNQVBfU0hBUkVELAorICAgICAgICAgICAgICAgUFJPVF9XUklURSB8IFBS T1RfUkVBRCwgbWFwX2Fub24gfCBNQVBfU0hBUkVELAogICAgICAgICAgICAgICAgcGh5c19yYW1f ZmQsIHBoeXNfcmFtX3NpemUpOwogICAgIGlmIChwdHIgPT0gTUFQX0ZBSUxFRCkgewogICAgICAg ICBmcHJpbnRmKHN0ZGVyciwgIkNvdWxkIG5vdCBtYXAgcGh5c2ljYWwgbWVtb3J5XG4iKTsKSW5k ZXg6IHFlbXUvdmwuYwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBxZW11Lm9yaWcvdmwuYwkyMDA4LTA4LTEyIDE3 OjEwOjMyLjAwMDAwMDAwMCArMDAwMAorKysgcWVtdS92bC5jCTIwMDgtMDgtMTIgMTc6MTM6Mzcu MDAwMDAwMDAwICswMDAwCkBAIC02MSw5ICs2MSwxMiBAQAogI2luY2x1ZGUgPGFycGEvaW5ldC5o PgogI2lmZGVmIF9CU0QKICNpbmNsdWRlIDxzeXMvc3RhdC5oPgotI2lmbmRlZiBfX0FQUExFX18K KyNpZiAhZGVmaW5lZChfX0FQUExFX18pICYmICFkZWZpbmVkKF9fT3BlbkJTRF9fKQogI2luY2x1 ZGUgPGxpYnV0aWwuaD4KICNlbmRpZgorI2lmZGVmIF9fT3BlbkJTRF9fCisjaW5jbHVkZSA8bmV0 L2lmLmg+CisjZW5kaWYKICNlbGlmIGRlZmluZWQgKF9fR0xJQkNfXykgJiYgZGVmaW5lZCAoX19G cmVlQlNEX2tlcm5lbF9fKQogI2luY2x1ZGUgPGZyZWVic2Qvc3RkbGliLmg+CiAjZWxzZQpAQCAt NDU4Myw2ICs0NTg2LDcgQEAKICAgICBpbnQgZmQ7CiAgICAgY2hhciBpZm5hbWVbMTI4XTsKIAor ICAgIG1lbXNldCgmaWZuYW1lLCAnXDAnLCBzaXplb2YoaWZuYW1lKSk7CiAgICAgaWYgKGlmbmFt ZTEgIT0gTlVMTCkKICAgICAgICAgcHN0cmNweShpZm5hbWUsIHNpemVvZihpZm5hbWUpLCBpZm5h bWUxKTsKICAgICBlbHNlCkluZGV4OiBxZW11L29zZGVwLmgKPT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gcWVtdS5v cmlnL29zZGVwLmgJMjAwOC0wOC0xMiAxNzoxMDozMi4wMDAwMDAwMDAgKzAwMDAKKysrIHFlbXUv b3NkZXAuaAkyMDA4LTA4LTEyIDE3OjEzOjM3LjAwMDAwMDAwMCArMDAwMApAQCAtMiw2ICsyLDEw IEBACiAjZGVmaW5lIFFFTVVfT1NERVBfSAogCiAjaW5jbHVkZSA8c3RkYXJnLmg+CisjaWZkZWYg X19PcGVuQlNEX18KKyNpbmNsdWRlIDxzeXMvdHlwZXMuaD4KKyNpbmNsdWRlIDxzeXMvc2lnbmFs Lmg+CisjZW5kaWYKIAogI2lmbmRlZiBnbHVlCiAjZGVmaW5lIHhnbHVlKHgsIHkpIHggIyMgeQpJ bmRleDogcWVtdS9mcHUvc29mdGZsb2F0LW5hdGl2ZS5oCj09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIHFlbXUub3Jp Zy9mcHUvc29mdGZsb2F0LW5hdGl2ZS5oCTIwMDgtMDgtMTIgMTc6MDk6MzUuMDAwMDAwMDAwICsw MDAwCisrKyBxZW11L2ZwdS9zb2Z0ZmxvYXQtbmF0aXZlLmgJMjAwOC0wOC0xMiAxODoyMDozNC4w MDAwMDAwMDAgKzAwMDAKQEAgLTE1LDcgKzE1LDkgQEAKICAqICAgU29sYXJpcyAxMCB3aXRoIEdD QzQgZG9lcyBub3QgbmVlZCB0aGVzZSBtYWNyb3MgYXMgdGhleQogICogICBhcmUgZGVmaW5lZCBp biA8aXNvL21hdGhfYzk5Lmg+IHdpdGggYSBjb21waWxlciBkaXJlY3RpdmUKICAqLwotI2lmIGRl ZmluZWQoSE9TVF9TT0xBUklTKSAmJiAoKCBIT1NUX1NPTEFSSVMgPD0gOSApIHx8ICgoSE9TVF9T T0xBUklTID49IDEwKSAmJiAoX19HTlVDX18gPD0gNCkpKQorI2lmIGRlZmluZWQoSE9TVF9TT0xB UklTKSAmJiAoKCBIT1NUX1NPTEFSSVMgPD0gOSApIHx8ICgoSE9TVF9TT0xBUklTID49IDEwKSBc CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICYmIChfX0dOVUNfXyA8PSA0KSkpIFwKKyAgICB8fCBkZWZpbmVkKF9fT3BlbkJTRF9fKQogLyoK ICAqIEM5OSA3LjEyLjMgY2xhc3NpZmljYXRpb24gbWFjcm9zCiAgKiBhbmQKQEAgLTI0LDYgKzI2 LDkgQEAKICAqIC4uLiBkbyBub3Qgd29yayBvbiBTb2xhcmlzIDEwIHVzaW5nIEdOVSBDQyAzLjQu eC4KICAqIFRyeSB0byB3b3JrYXJvdW5kIHRoZSBtaXNzaW5nIC8gYnJva2VuIEM5OSBtYXRoIG1h Y3Jvcy4KICAqLworI2lmIGRlZmluZWQoX19PcGVuQlNEX18pCisjZGVmaW5lIHVub3JkZXJlZCh4 LCB5KSAoaXNuYW4oeCkgfHwgaXNuYW4oeSkpCisjZW5kaWYKIAogI2RlZmluZSBpc25vcm1hbCh4 KSAgICAgICAgICAgICAoZnBjbGFzcyh4KSA+PSBGUF9OWkVSTykKICNkZWZpbmUgaXNncmVhdGVy KHgsIHkpICAgICAgICAgKCghdW5vcmRlcmVkKHgsIHkpKSAmJiAoKHgpID4gKHkpKSkKQEAgLTg0 LDYgKzg5LDExIEBACiB8IFNvZnR3YXJlIElFQy9JRUVFIGZsb2F0aW5nLXBvaW50IHJvdW5kaW5n IG1vZGUuCiAqLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovCiAjaWYgKGRlZmluZWQoX0JTRCkgJiYgIWRl ZmluZWQoX19BUFBMRV9fKSkgfHwgZGVmaW5lZChIT1NUX1NPTEFSSVMpCisjaWYgZGVmaW5lZChf X09wZW5CU0RfXykKKyNkZWZpbmUgRkVfUk0gRlBfUk0KKyNkZWZpbmUgRkVfUlAgRlBfUlAKKyNk ZWZpbmUgRkVfUlogRlBfUloKKyNlbmRpZgogZW51bSB7CiAgICAgZmxvYXRfcm91bmRfbmVhcmVz dF9ldmVuID0gRlBfUk4sCiAgICAgZmxvYXRfcm91bmRfZG93biAgICAgICAgID0gRlBfUk0sCklu ZGV4OiBxZW11L2N1cnNlcy5jCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIHFlbXUub3JpZy9jdXJzZXMuYwkyMDA4 LTA4LTEyIDE3OjA5OjU2LjAwMDAwMDAwMCArMDAwMAorKysgcWVtdS9jdXJzZXMuYwkyMDA4LTA4 LTEyIDE3OjEzOjM3LjAwMDAwMDAwMCArMDAwMApAQCAtMzQsNiArMzQsMTAgQEAKICNpbmNsdWRl IDx0ZXJtaW9zLmg+CiAjZW5kaWYKIAorI2lmZGVmIF9fT3BlbkJTRF9fCisjZGVmaW5lIHJlc2l6 ZV90ZXJtIHJlc2l6ZXRlcm0KKyNlbmRpZgorCiAjZGVmaW5lIEZPTlRfSEVJR0hUIDE2CiAjZGVm aW5lIEZPTlRfV0lEVEggOAogCg== ------=_Part_94248_27884415.1218566751765--