From mboxrd@z Thu Jan 1 00:00:00 1970 From: Jun Kamada Subject: [PATCH 6/6] pvSCSI (SCSI pass through) driver Date: Tue, 30 Oct 2007 19:39:29 +0900 Message-ID: <20071030193928.4428.KAMA@jp.fujitsu.com> References: <20071025105803.5A32.KAMA@jp.fujitsu.com> Mime-Version: 1.0 Content-Type: multipart/mixed; boundary="------_4727086C00000000444A_MULTIPART_MIXED_" Content-Transfer-Encoding: 7bit Return-path: In-Reply-To: <20071025105803.5A32.KAMA@jp.fujitsu.com> List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Sender: xen-devel-bounces@lists.xensource.com Errors-To: xen-devel-bounces@lists.xensource.com Cc: kama@jp.fujitsu.com, xen-devel@lists.xensource.com List-Id: xen-devel@lists.xenproject.org --------_4727086C00000000444A_MULTIPART_MIXED_ Content-Type: text/plain; charset="US-ASCII" Content-Transfer-Encoding: 7bit This patch is for modifying xend in order to use pvscsi driver. (attach/detach HBA, etc.) Signed-off-by: Tomonari Horikoshi Signed-off-by: Tsunehisa Doi Signed-off-by: Jun Kamada Signed-off-by: Akira Hayakawa ----- Jun Kamada --------_4727086C00000000444A_MULTIPART_MIXED_ Content-Type: application/octet-stream; name="xend_scsihost.patch" Content-Disposition: attachment; filename="xend_scsihost.patch" Content-Transfer-Encoding: base64 IyBIRyBjaGFuZ2VzZXQgcGF0Y2gKIyBVc2VyIHQuaG9yaWtvc2hpQGpwLmZ1aml0c3UuY29tCiMg RGF0ZSAxMTkzNzM2ODUxIC0zMjQwMAojIE5vZGUgSUQgOTgwZTViZTdiY2Y0MTlkOWI3YzkxYjYx YThmNzc5OGJiMTBhNjY5MgojIFBhcmVudCAgYjI4YWU1ZjAwNTUzZWEwNTNiZDRlNDU3NjYzNGQ4 ZWE0OWU3N2JjMwpbWEVORF0gYWRkIHNjc2lob3N0IGludGVyZmFjZQoKU2lnbmVkLW9mZi1ieTog VG9tb25hcmkgSG9yaWtvc2hpIDx0Lmhvcmlrb3NoaUBqcC5mdWppdHN1LmNvbT4KU2lnbmVkLW9m Zi1ieTogVHN1bmVoaXNhIERvaSA8RG9pLlRzdW5laGlzYUBqcC5mdWppdHN1LmNvbT4KU2lnbmVk LW9mZi1ieTogSnVuIEthbWFkYSA8a2FtYUBqcC5mdWppdHN1LmNvbT4KU2lnbmVkLW9mZi1ieTog QWtpcmEgSGF5YWthd2EgPGhheWFrYXdhLmFraXJhQGpwLmZ1aml0c3UuY29tPgoKZGlmZiAtciBi MjhhZTVmMDA1NTMgLXIgOTgwZTViZTdiY2Y0IHRvb2xzL2V4YW1wbGVzL01ha2VmaWxlCi0tLSBh L3Rvb2xzL2V4YW1wbGVzL01ha2VmaWxlCVR1ZSBPY3QgMjMgMDk6MjY6NDMgMjAwNyArMDEwMAor KysgYi90b29scy9leGFtcGxlcy9NYWtlZmlsZQlUdWUgT2N0IDMwIDE4OjM0OjExIDIwMDcgKzA5 MDAKQEAgLTI1LDYgKzI1LDcgQEAgWEVOX1NDUklQVFMgKz0gbmV0d29yay1yb3V0ZSB2aWYtcm91 dGUKIFhFTl9TQ1JJUFRTICs9IG5ldHdvcmstcm91dGUgdmlmLXJvdXRlCiBYRU5fU0NSSVBUUyAr PSBuZXR3b3JrLW5hdCB2aWYtbmF0CiBYRU5fU0NSSVBUUyArPSBibG9jaworWEVOX1NDUklQVFMg Kz0gc2NzaWhvc3QKIFhFTl9TQ1JJUFRTICs9IGJsb2NrLWVuYmQgYmxvY2stbmJkCiBYRU5fU0NS SVBUUyArPSBibGt0YXAKIFhFTl9TQ1JJUFRTICs9IHZ0cG0gdnRwbS1kZWxldGUKZGlmZiAtciBi MjhhZTVmMDA1NTMgLXIgOTgwZTViZTdiY2Y0IHRvb2xzL2V4YW1wbGVzL3Njc2lob3N0Ci0tLSAv ZGV2L251bGwJVGh1IEphbiAwMSAwMDowMDowMCAxOTcwICswMDAwCisrKyBiL3Rvb2xzL2V4YW1w bGVzL3Njc2lob3N0CVR1ZSBPY3QgMzAgMTg6MzQ6MTEgMjAwNyArMDkwMApAQCAtMCwwICsxLDI2 IEBACisjIS9iaW4vc2gKKworZGlyPSQoZGlybmFtZSAiJDAiKQorLiAiJGRpci9ibG9jay1jb21t b24uc2giCisKK2xvZyBkZWJ1ZyAidWRldiBldmVudC4iCisKK2Nhc2UgIiRjb21tYW5kIiBpbgor ICAgIGFkZCkKKyAgICAgICAgZG9uZT0kKHhlbnN0b3JlX3JlYWRfZGVmYXVsdCAiJFhFTkJVU19Q QVRIL3Njc2lob3N0IiAnTUlTU0lORycpCisgICAgICAgaWYgWyAiJGRvbmUiICE9ICdNSVNTSU5H JyBdCisgICAgICAgICAgIHRoZW4KKyAgICAgICAgICAgZXhpdCAwCisgICAgICAgZmkKKworICAg ICAgICMgVE9ETworICAgICAgICN4ZW5zdG9yZV93cml0ZSAiJFhFTkJVU19QQVRIL3Njc2kiICJp bmZvIgorICAgICAgIHN1Y2Nlc3MKKyAgICAgICA7OworICAgIHJlbW92ZSkKKyAgICAgICAjIFRP RE8KKyAgICAgICA7OworZXNhYworCitleGl0IDAKKwpkaWZmIC1yIGIyOGFlNWYwMDU1MyAtciA5 ODBlNWJlN2JjZjQgdG9vbHMvZXhhbXBsZXMveGVuLWJhY2tlbmQuYWdlbnQKLS0tIGEvdG9vbHMv ZXhhbXBsZXMveGVuLWJhY2tlbmQuYWdlbnQJVHVlIE9jdCAyMyAwOToyNjo0MyAyMDA3ICswMTAw CisrKyBiL3Rvb2xzL2V4YW1wbGVzL3hlbi1iYWNrZW5kLmFnZW50CVR1ZSBPY3QgMzAgMTg6MzQ6 MTEgMjAwNyArMDkwMApAQCAtMTIsNiArMTIsOSBAQCBjYXNlICIkWEVOQlVTX1RZUEUiIGluCiAg ICAgOzsKICAgdmJkKQogICAgIC9ldGMveGVuL3NjcmlwdHMvYmxvY2sgIiRBQ1RJT04iCisgICAg OzsKKyAgc2NzaWhvc3QpCisgICAgL2V0Yy94ZW4vc2NyaXB0cy9zY3NpaG9zdCAiJEFDVElPTiIK ICAgICA7OwogICB2dHBtKQogICAgIC9ldGMveGVuL3NjcmlwdHMvdnRwbSAiJEFDVElPTiIKZGlm ZiAtciBiMjhhZTVmMDA1NTMgLXIgOTgwZTViZTdiY2Y0IHRvb2xzL2V4YW1wbGVzL3hlbi1iYWNr ZW5kLnJ1bGVzCi0tLSBhL3Rvb2xzL2V4YW1wbGVzL3hlbi1iYWNrZW5kLnJ1bGVzCVR1ZSBPY3Qg MjMgMDk6MjY6NDMgMjAwNyArMDEwMAorKysgYi90b29scy9leGFtcGxlcy94ZW4tYmFja2VuZC5y dWxlcwlUdWUgT2N0IDMwIDE4OjM0OjExIDIwMDcgKzA5MDAKQEAgLTEsNSArMSw2IEBAIFNVQlNZ U1RFTT09Inhlbi1iYWNrZW5kIiwgS0VSTkVMPT0idGFwKiIKIFNVQlNZU1RFTT09Inhlbi1iYWNr ZW5kIiwgS0VSTkVMPT0idGFwKiIsIFJVTis9Ii9ldGMveGVuL3NjcmlwdHMvYmxrdGFwICRlbnZ7 QUNUSU9OfSIKIFNVQlNZU1RFTT09Inhlbi1iYWNrZW5kIiwgS0VSTkVMPT0idmJkKiIsIFJVTis9 Ii9ldGMveGVuL3NjcmlwdHMvYmxvY2sgJGVudntBQ1RJT059IgorU1VCU1lTVEVNPT0ieGVuLWJh Y2tlbmQiLCBLRVJORUw9PSJzY3NpaG9zdCoiLCBSVU4rPSIvZXRjL3hlbi9zY3JpcHRzL3Njc2lo b3N0ICRlbnZ7QUNUSU9OfSIKIFNVQlNZU1RFTT09Inhlbi1iYWNrZW5kIiwgS0VSTkVMPT0idnRw bSoiLCBSVU4rPSIvZXRjL3hlbi9zY3JpcHRzL3Z0cG0gJGVudntBQ1RJT059IgogU1VCU1lTVEVN PT0ieGVuLWJhY2tlbmQiLCBLRVJORUw9PSJ2aWYqIiwgQUNUSU9OPT0ib25saW5lIiwgUlVOKz0i JGVudntzY3JpcHR9IG9ubGluZSIKIFNVQlNZU1RFTT09Inhlbi1iYWNrZW5kIiwgS0VSTkVMPT0i dmlmKiIsIEFDVElPTj09Im9mZmxpbmUiLCBSVU4rPSIkZW52e3NjcmlwdH0gb2ZmbGluZSIKZGlm ZiAtciBiMjhhZTVmMDA1NTMgLXIgOTgwZTViZTdiY2Y0IHRvb2xzL3B5dGhvbi94ZW4veGVuZC9Y ZW5kRGV2aWNlcy5weQotLS0gYS90b29scy9weXRob24veGVuL3hlbmQvWGVuZERldmljZXMucHkJ VHVlIE9jdCAyMyAwOToyNjo0MyAyMDA3ICswMTAwCisrKyBiL3Rvb2xzL3B5dGhvbi94ZW4veGVu ZC9YZW5kRGV2aWNlcy5weQlUdWUgT2N0IDMwIDE4OjM0OjExIDIwMDcgKzA5MDAKQEAgLTE5LDcg KzE5LDcgQEAKICMgQSBjb2xsZWN0aW9uIG9mIERldkNvbnRyb2xsZXJzIAogIwogCi1mcm9tIHhl bi54ZW5kLnNlcnZlciBpbXBvcnQgYmxraWYsIG5ldGlmLCB0cG1pZiwgcGNpaWYsIGlvcGlmLCBp cnFpZiwgdXNiaWYsIHZmYmlmCitmcm9tIHhlbi54ZW5kLnNlcnZlciBpbXBvcnQgYmxraWYsIHNj c2lob3N0aWYsIG5ldGlmLCB0cG1pZiwgcGNpaWYsIGlvcGlmLCBpcnFpZiwgdXNiaWYsIHZmYmlm CiBmcm9tIHhlbi54ZW5kLnNlcnZlci5CbGt0YXBDb250cm9sbGVyIGltcG9ydCBCbGt0YXBDb250 cm9sbGVyCiBmcm9tIHhlbi54ZW5kLnNlcnZlci5Db25zb2xlQ29udHJvbGxlciBpbXBvcnQgQ29u c29sZUNvbnRyb2xsZXIKIApAQCAtMzYsNiArMzYsNyBAQCBjbGFzcyBYZW5kRGV2aWNlczoKIAog ICAgIGNvbnRyb2xsZXJzID0gewogICAgICAgICAndmJkJzogYmxraWYuQmxraWZDb250cm9sbGVy LAorICAgICAgICAnc2NzaWhvc3QnOiBzY3NpaG9zdGlmLlNDU0lIb3N0Q29udHJvbGxlciwKICAg ICAgICAgJ3ZpZic6IG5ldGlmLk5ldGlmQ29udHJvbGxlciwKICAgICAgICAgJ3Z0cG0nOiB0cG1p Zi5UUE1pZkNvbnRyb2xsZXIsCiAgICAgICAgICdwY2knOiBwY2lpZi5QY2lDb250cm9sbGVyLApk aWZmIC1yIGIyOGFlNWYwMDU1MyAtciA5ODBlNWJlN2JjZjQgdG9vbHMvcHl0aG9uL3hlbi94ZW5k L3NlcnZlci9zY3NpaG9zdGlmLnB5Ci0tLSAvZGV2L251bGwJVGh1IEphbiAwMSAwMDowMDowMCAx OTcwICswMDAwCisrKyBiL3Rvb2xzL3B5dGhvbi94ZW4veGVuZC9zZXJ2ZXIvc2NzaWhvc3RpZi5w eQlUdWUgT2N0IDMwIDE4OjM0OjExIDIwMDcgKzA5MDAKQEAgLTAsMCArMSw3NSBAQAorIz09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT0KKyMgVGhpcyBsaWJyYXJ5IGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4g cmVkaXN0cmlidXRlIGl0IGFuZC9vcgorIyBtb2RpZnkgaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHZl cnNpb24gMi4xIG9mIHRoZSBHTlUgTGVzc2VyIEdlbmVyYWwgUHVibGljCisjIExpY2Vuc2UgYXMg cHVibGlzaGVkIGJ5IHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb24uCisjCisjIFRoaXMgbGli cmFyeSBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVsLAor IyBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJy YW50eSBvZgorIyBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBV UlBPU0UuICBTZWUgdGhlIEdOVQorIyBMZXNzZXIgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBmb3Ig bW9yZSBkZXRhaWxzLgorIworIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRo ZSBHTlUgTGVzc2VyIEdlbmVyYWwgUHVibGljCisjIExpY2Vuc2UgYWxvbmcgd2l0aCB0aGlzIGxp YnJhcnk7IGlmIG5vdCwgd3JpdGUgdG8gdGhlIEZyZWUgU29mdHdhcmUKKyMgRm91bmRhdGlvbiwg SW5jLiwgNTkgVGVtcGxlIFBsYWNlLCBTdWl0ZSAzMzAsIEJvc3RvbiwgTUEgIDAyMTExLTEzMDcg IFVTQQorIz09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT0KKyMgQ29weXJpZ2h0IChDKSAyMDA3IEZVSklUU1Ug TGltaXRlZAorIyAgICAgICAgICAgICAgICAgICAgIEJhc2VkIG9uIHRoZSBibGtpZi5weQorIz09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT0KKworCisiIiJTdXBwb3J0IGZvciBTQ1NJIEhCQXMuCisiIiIKKwor aW1wb3J0IHJlCitpbXBvcnQgc3RyaW5nCisKK2Zyb20geGVuLnhlbmQgaW1wb3J0IHN4cAorZnJv bSB4ZW4ueGVuZC5YZW5kRXJyb3IgaW1wb3J0IFZtRXJyb3IKKworZnJvbSB4ZW4ueGVuZC5zZXJ2 ZXIuRGV2Q29udHJvbGxlciBpbXBvcnQgRGV2Q29udHJvbGxlcgorCitjbGFzcyBTQ1NJSG9zdENv bnRyb2xsZXIoRGV2Q29udHJvbGxlcik6CisgICAgIiIiU0NTSSBIQkFzLgorICAgICIiIgorICAg IAorICAgIGRlZiBfX2luaXRfXyhzZWxmLCB2bSk6CisgICAgICAgICIiIkNyZWF0ZSBhIFNDU0kg SEJBLgorICAgICAgICAiIiIKKyAgICAgICAgRGV2Q29udHJvbGxlci5fX2luaXRfXyhzZWxmLCB2 bSkKKworCisgICAgZGVmIGdldERldmljZURldGFpbHMoc2VsZiwgY29uZmlnKToKKyAgICAgICAg IiIiQHNlZSBEZXZDb250cm9sbGVyLmdldERldmljZURldGFpbHMiIiIKKworICAgICAgICB0eXAg PSBjb25maWcuZ2V0KCd0eXBlJykKKyAgICAgICAgaG9zdG5vID0gY29uZmlnLmdldCgnaG9zdG5v JykKKyAgICAgICAgYmFjayA9IHsgJ3R5cGUnICAgICA6IHR5cCwKKyAgICAgICAgICAgICAgICAg J2hvc3RubycgICA6IGhvc3RubywKKyAgICAgICAgICAgICAgIH0KKyAgICAgICAgZGV2aWQgPSBp bnQoaG9zdG5vKQorCisgICAgICAgIHV1aWQgPSBjb25maWcuZ2V0KCd1dWlkJykKKyAgICAgICAg aWYgdXVpZDoKKyAgICAgICAgICAgIGJhY2tbJ3V1aWQnXSA9IHV1aWQKKworICAgICAgICBmcm9u dCA9IHsgJ3R5cGUnIDogdHlwIH0KKworICAgICAgICByZXR1cm4gKGRldmlkLCBiYWNrLCBmcm9u dCkKKworCisgICAgZGVmIGdldERldmljZUNvbmZpZ3VyYXRpb24oc2VsZiwgZGV2aWQpOgorICAg ICAgICAiIiJAc2VlIERldkNvbnRyb2xsZXIuY29uZmlndXJhdGlvbiIiIgorCisgICAgICAgIHJl c3VsdCA9IERldkNvbnRyb2xsZXIuZ2V0RGV2aWNlQ29uZmlndXJhdGlvbihzZWxmLCBkZXZpZCkK KworICAgICAgICBkZXZpbmZvID0gc2VsZi5yZWFkQmFja2VuZChkZXZpZCwgJ3V1aWQnLCAndHlw ZScsICdob3N0bm8nKQorICAgICAgICB1dWlkLCB0eXAsIGhvc3RubyA9IGRldmluZm8KKworICAg ICAgICBpZiB1dWlkOgorICAgICAgICAgICAgcmVzdWx0Wyd1dWlkJ10gPSB1dWlkCisgICAgICAg IGlmIHR5cDoKKyAgICAgICAgICAgIHJlc3VsdFsndHlwZSddID0gdHlwCisgICAgICAgIGlmIGhv c3RubzoKKyAgICAgICAgICAgIHJlc3VsdFsnaG9zdG5vJ10gPSBob3N0bm8KKworICAgICAgICBy ZXR1cm4gcmVzdWx0CmRpZmYgLXIgYjI4YWU1ZjAwNTUzIC1yIDk4MGU1YmU3YmNmNCB0b29scy9w eXRob24veGVuL3htL2NyZWF0ZS5weQotLS0gYS90b29scy9weXRob24veGVuL3htL2NyZWF0ZS5w eQlUdWUgT2N0IDIzIDA5OjI2OjQzIDIwMDcgKzAxMDAKKysrIGIvdG9vbHMvcHl0aG9uL3hlbi94 bS9jcmVhdGUucHkJVHVlIE9jdCAzMCAxODozNDoxMSAyMDA3ICswOTAwCkBAIC0yODYsNiArMjg2 LDEyIEBAIGdvcHRzLnZhcignZGlzaycsIHZhbD0ncGh5OkRFVixWREVWLE1PREUKICAgICAgICAg ICBiYWNrZW5kIGRyaXZlciBkb21haW4gdG8gdXNlIGZvciB0aGUgZGlzay4KICAgICAgICAgICBU aGUgb3B0aW9uIG1heSBiZSByZXBlYXRlZCB0byBhZGQgbW9yZSB0aGFuIG9uZSBkaXNrLiIiIikK IAorZ29wdHMudmFyKCdzY3NpaG9zdCcsIHZhbD0nVFlQRSxTQ1NJSE9TVE5PJywKKyAgICAgICAg ICBmbj1hcHBlbmRfdmFsdWUsIGRlZmF1bHQ9W10sCisgICAgICAgICAgdXNlPSIiIkFkZCBhIFND U0ktSEJBIGRldmljZSB0byBhIGRvbWFpbi4gVFlQRSBpcyBmYyBvciBzY3NpLgorICAgICAgICAg IFNDU0lIT1NUTk8gaXMgc2NzaSBob3N0IG51bWJlciB0aGF0IGNhbiBiZSBzZWVuIGZyb20gL3By b2Mvc2NzaS9zY3NpICAKKyAgICAgICAgICAuIiIiKQorCiBnb3B0cy52YXIoJ3BjaScsIHZhbD0n QlVTOkRFVi5GVU5DJywKICAgICAgICAgICBmbj1hcHBlbmRfdmFsdWUsIGRlZmF1bHQ9W10sCiAg ICAgICAgICAgdXNlPSIiIkFkZCBhIFBDSSBkZXZpY2UgdG8gYSBkb21haW4sIHVzaW5nIGdpdmVu IHBhcmFtcyAoaW4gaGV4KS4KQEAgLTU4MSw2ICs1ODcsMTUgQEAgZGVmIGNvbmZpZ3VyZV9kaXNr cyhjb25maWdfZGV2cywgdmFscyk6CiAgICAgICAgIGlmIGJhY2tlbmQ6CiAgICAgICAgICAgICBj b25maWdfdmJkLmFwcGVuZChbJ2JhY2tlbmQnLCBiYWNrZW5kXSkKICAgICAgICAgY29uZmlnX2Rl dnMuYXBwZW5kKFsnZGV2aWNlJywgY29uZmlnX3ZiZF0pCisKK2RlZiBjb25maWd1cmVfc2NzaWhv c3QoY29uZmlnX2RldnMsIHZhbHMpOgorICAgICIiIkNyZWF0ZSB0aGUgY29uZmlnIGZvciBhIFND U0kgSEJBLgorICAgICIiIgorICAgIGZvciAodHlwZSwgbm8pIGluIHZhbHMuc2NzaWhvc3Q6Cisg ICAgICAgIGNvbmZpZ19zY3NpaG9zdCA9IFsnc2NzaWhvc3QnLAorICAgICAgICAgICAgICAgICAg ICAgICAgICAgWyd0eXBlJywgdHlwZSBdLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgWydo b3N0bm8nLCBubyBdIF0KKyAgICAgICAgY29uZmlnX2RldnMuYXBwZW5kKFsnZGV2aWNlJywgY29u ZmlnX3Njc2lob3N0XSkKIAogZGVmIGNvbmZpZ3VyZV9wY2koY29uZmlnX2RldnMsIHZhbHMpOgog ICAgICIiIkNyZWF0ZSB0aGUgY29uZmlnIGZvciBwY2kgZGV2aWNlcy4KQEAgLTc4OSw2ICs4MDQs NyBAQCBkZWYgbWFrZV9jb25maWcodmFscyk6CiAKICAgICBjb25maWdfZGV2cyA9IFtdCiAgICAg Y29uZmlndXJlX2Rpc2tzKGNvbmZpZ19kZXZzLCB2YWxzKQorICAgIGNvbmZpZ3VyZV9zY3NpaG9z dChjb25maWdfZGV2cywgdmFscykKICAgICBjb25maWd1cmVfcGNpKGNvbmZpZ19kZXZzLCB2YWxz KQogICAgIGNvbmZpZ3VyZV9pb3BvcnRzKGNvbmZpZ19kZXZzLCB2YWxzKQogICAgIGNvbmZpZ3Vy ZV9pcnEoY29uZmlnX2RldnMsIHZhbHMpCkBAIC04MTUsNiArODMxLDE5IEBAIGRlZiBwcmVwcm9j ZXNzX2Rpc2sodmFscyk6CiAgICAgICAgICAgICBlcnIoJ0ludmFsaWQgZGlzayBzcGVjaWZpZXI6 ICcgKyB2KQogICAgICAgICBkaXNrLmFwcGVuZChkKQogICAgIHZhbHMuZGlzayA9IGRpc2sKKwor ZGVmIHByZXByb2Nlc3Nfc2NzaWhvc3QodmFscyk6CisgICAgaWYgbm90IHZhbHMuc2NzaWhvc3Q6 IHJldHVybgorICAgIHNjc2lob3N0ID0gW10KKyAgICBmb3IgdiBpbiB2YWxzLnNjc2lob3N0Ogor ICAgICAgICBkID0gdi5zcGxpdCgnLCcpCisgICAgICAgIG4gPSBsZW4oZCkKKyAgICAgICAgaWYg biA9PSAyOgorICAgICAgICAgICAgcGFzcworICAgICAgICBlbHNlOgorICAgICAgICAgICAgZXJy KCdJbnZhbGlkIHNjc2kgc3BlY2lmaWVyOiAnICsgdikKKyAgICAgICAgc2NzaWhvc3QuYXBwZW5k KGQpCisgICAgdmFscy5zY3NpaG9zdCA9IHNjc2lob3N0CiAKIGRlZiBwcmVwcm9jZXNzX3BjaSh2 YWxzKToKICAgICBpZiBub3QgdmFscy5wY2k6IHJldHVybgpAQCAtMTAxMyw2ICsxMDQyLDcgQEAg ZGVmIHByZXByb2Nlc3Nfdm5jKHZhbHMpOgogICAgIAogZGVmIHByZXByb2Nlc3ModmFscyk6CiAg ICAgcHJlcHJvY2Vzc19kaXNrKHZhbHMpCisgICAgcHJlcHJvY2Vzc19zY3NpaG9zdCh2YWxzKQog ICAgIHByZXByb2Nlc3NfcGNpKHZhbHMpCiAgICAgcHJlcHJvY2Vzc19pb3BvcnRzKHZhbHMpCiAg ICAgcHJlcHJvY2Vzc19pcCh2YWxzKQpkaWZmIC1yIGIyOGFlNWYwMDU1MyAtciA5ODBlNWJlN2Jj ZjQgdG9vbHMvcHl0aG9uL3hlbi94bS9tYWluLnB5Ci0tLSBhL3Rvb2xzL3B5dGhvbi94ZW4veG0v bWFpbi5weQlUdWUgT2N0IDIzIDA5OjI2OjQzIDIwMDcgKzAxMDAKKysrIGIvdG9vbHMvcHl0aG9u L3hlbi94bS9tYWluLnB5CVR1ZSBPY3QgMzAgMTg6MzQ6MTEgMjAwNyArMDkwMApAQCAtMTYxLDYg KzE2MSwxMiBAQCBTVUJDT01NQU5EX0hFTFAgPSB7CiAgICAgICAgICAgICAgICAgICAgICAgICAn RGVzdHJveSBhIGRvbWFpblwncyB2aXJ0dWFsIGJsb2NrIGRldmljZS4nKSwKICAgICAnYmxvY2st bGlzdCcgICAgOiAgKCc8RG9tYWluPiBbLS1sb25nXScsCiAgICAgICAgICAgICAgICAgICAgICAg ICAnTGlzdCB2aXJ0dWFsIGJsb2NrIGRldmljZXMgZm9yIGEgZG9tYWluLicpLAorICAgICdzY3Np aG9zdC1hdHRhY2gnICA6ICAoJzxEb21haW4+IHNjc2kgPFNDU0lIb3N0bm8+IFtCYWNrRG9tYWlu XScsCisgICAgICAgICAgICAgICAgICAgICAgICAnQ3JlYXRlIGEgbmV3IHZpcnR1YWwgU0NTSUhv c3QgZGV2aWNlLicpLAorICAgICdzY3NpaG9zdC1kZXRhY2gnICA6ICAoJzxEb21haW4+IDxTQ1NJ SG9zdG5vPiBbLWZ8LS1mb3JjZV0nLAorICAgICAgICAgICAgICAgICAgICAgICAgJ0Rlc3Ryb3kg YSBkb21haW5cJ3MgdmlydHVhbCBTQ1NJSG9zdCBkZXZpY2UuJyksCisgICAgJ3Njc2lob3N0LWxp c3QnICAgIDogICgnPERvbWFpbj4gWy0tbG9uZ10nLAorICAgICAgICAgICAgICAgICAgICAgICAg J0xpc3QgdmlydHVhbCBTQ1NJSG9zdCBkZXZpY2VzIGZvciBhIGRvbWFpbi4nKSwKICAgICAnbmV0 d29yay1hdHRhY2gnOiAgKCc8RG9tYWluPiBbdHlwZT08dHlwZT5dIFttYWM9PG1hYz5dIFticmlk Z2U9PGJyaWRnZT5dICcKICAgICAgICAgICAgICAgICAgICAgICAgICdbaXA9PGlwPl0gW3Njcmlw dD08c2NyaXB0Pl0gW2JhY2tlbmQ9PEJhY2tEb21haW4+XSAnCiAgICAgICAgICAgICAgICAgICAg ICAgICAnW3ZpZm5hbWU9PG5hbWU+XSBbcmF0ZT08cmF0ZT5dIFttb2RlbD08bW9kZWw+XScKQEAg LTMzMSw2ICszMzcsOSBAQCBkZXZpY2VfY29tbWFuZHMgPSBbCiAgICAgImJsb2NrLWRldGFjaCIs CiAgICAgImJsb2NrLWxpc3QiLAogICAgICJibG9jay1jb25maWd1cmUiLAorICAgICJzY3NpaG9z dC1hdHRhY2giLAorICAgICJzY3NpaG9zdC1kZXRhY2giLAorICAgICJzY3NpaG9zdC1saXN0IiwK ICAgICAibmV0d29yay1hdHRhY2giLAogICAgICJuZXR3b3JrLWRldGFjaCIsCiAgICAgIm5ldHdv cmstbGlzdCIsCkBAIC0yMDI4LDYgKzIwMzcsMzIgQEAgZGVmIHhtX2Jsb2NrX2xpc3QoYXJncyk6 CiAgICAgICAgICAgICAgICAgICAgIiUoYmUtcGF0aCktMzBzICAiCiAgICAgICAgICAgICAgICAg ICAgJSBuaSkKIAorZGVmIHhtX3Njc2lob3N0X2xpc3QoYXJncyk6CisgICAgKHVzZV9sb25nLCBw YXJhbXMpID0gYXJnX2NoZWNrX2Zvcl9yZXNvdXJjZV9saXN0KGFyZ3MsICJzY3NpaG9zdC1saXN0 IikKKworICAgIGRvbSA9IHBhcmFtc1swXQorICAgIGRldnMgPSBzZXJ2ZXIueGVuZC5kb21haW4u Z2V0RGV2aWNlU3hwcnMoZG9tLCAnc2NzaWhvc3QnKQorCisgICAgaWYgdXNlX2xvbmc6CisgICAg ICAgIG1hcChQcmV0dHlQcmludC5wcmV0dHlwcmludCwgZGV2cykKKyAgICBlbHNlOgorICAgICAg ICBoZHIgPSAwCisgICAgICAgIGZvciB4IGluIGRldnM6CisgICAgICAgICAgICBpZiBoZHIgPT0g MDoKKyAgICAgICAgICAgICAgICBwcmludCAnc2hvc3QgIEJFIGhhbmRsZSBzdGF0ZSBldnQtY2gg cmluZy1yZWYgQkUtcGF0aCcKKyAgICAgICAgICAgICAgICBoZHIgPSAxCisgICAgICAgICAgICBu aSA9IHBhcnNlX2Rldl9pbmZvKHhbMV0pCisgICAgICAgICAgICBuaVsnaWR4J10gPSBpbnQoeFsw XSkKKyAgICAgICAgICAgIHByaW50ICgiJShpZHgpLTNkICAgICIKKyAgICAgICAgICAgICAgICAg ICAiJShiYWNrZW5kLWlkKS0zZCAgIgorICAgICAgICAgICAgICAgICAgICIlKGhhbmRsZSktM2Qg ICAiCisgICAgICAgICAgICAgICAgICAgIiUoc3RhdGUpLTNkICAgICIKKyAgICAgICAgICAgICAg ICAgICAiJShldmVudC1jaCktM2QgICAgIgorICAgICAgICAgICAgICAgICAgICIlKHJpbmctcmVm KS01ZCAiCisgICAgICAgICAgICAgICAgICAgIiUoYmUtcGF0aCktMzBzICAiCisgICAgICAgICAg ICAgICAgICAgJSBuaSkKKworCiBkZWYgeG1fdnRwbV9saXN0KGFyZ3MpOgogICAgICh1c2VfbG9u ZywgcGFyYW1zKSA9IGFyZ19jaGVja19mb3JfcmVzb3VyY2VfbGlzdChhcmdzLCAidnRwbS1saXN0 IikKIApAQCAtMjEyOSw2ICsyMTY0LDIwIEBAIGRlZiB4bV9ibG9ja19jb25maWd1cmUoYXJncyk6 CiAKICAgICAoZG9tLCB2YmQpID0gcGFyc2VfYmxvY2tfY29uZmlndXJhdGlvbihhcmdzKQogICAg IHNlcnZlci54ZW5kLmRvbWFpbi5kZXZpY2VfY29uZmlndXJlKGRvbSwgdmJkKQorCisKK2RlZiB4 bV9zY3NpaG9zdF9hdHRhY2goYXJncyk6CisgICAgYXJnX2NoZWNrKGFyZ3MsICdzY3NpaG9zdC1h dHRhY2gnLCAzLCA0KQorCisgICAgZG9tID0gYXJnc1swXQorCisgICAgc2NzaWhvc3QgPSBbJ3Nj c2lob3N0JywKKyAgICAgICAgICAgICAgICBbJ3R5cGUnLCBhcmdzWzFdXSwKKyAgICAgICAgICAg ICAgICBbJ2hvc3RubycsICAgYXJnc1syXV1dCisgICAgaWYgbGVuKGFyZ3MpID09IDQ6CisgICAg ICAgIHNjc2lob3N0LmFwcGVuZChbJ2JhY2tlbmQnLCBhcmdzWzNdXSkKKworICAgIHNlcnZlci54 ZW5kLmRvbWFpbi5kZXZpY2VfY3JlYXRlKGRvbSwgc2NzaWhvc3QpCiAKIAogZGVmIHhtX25ldHdv cmtfYXR0YWNoKGFyZ3MpOgpAQCAtMjI1Myw2ICsyMzAyLDEwIEBAIGRlZiB4bV9ibG9ja19kZXRh Y2goYXJncyk6CiAgICAgICAgICAgICBkZXRhY2goYXJncywgJ3RhcCcpCiAgICAgICAgIGVsc2U6 CiAgICAgICAgICAgICBkZXRhY2goYXJncywgJ3ZiZCcpCisKK2RlZiB4bV9zY3NpaG9zdF9kZXRh Y2goYXJncyk6CisgICAgYXJnX2NoZWNrKGFyZ3MsICdzY3NpaG9zdC1kZXRhY2gnLCAyLCAzKQor ICAgIGRldGFjaChhcmdzLCAnc2NzaWhvc3QnKQogCiBkZWYgeG1fbmV0d29ya19kZXRhY2goYXJn cyk6CiAgICAgaWYgc2VydmVyVHlwZSA9PSBTRVJWRVJfWEVOX0FQSToKQEAgLTI0NDksNiArMjUw MiwxMCBAQCBjb21tYW5kcyA9IHsKICAgICAiYmxvY2stZGV0YWNoIjogeG1fYmxvY2tfZGV0YWNo LAogICAgICJibG9jay1saXN0IjogeG1fYmxvY2tfbGlzdCwKICAgICAiYmxvY2stY29uZmlndXJl IjogeG1fYmxvY2tfY29uZmlndXJlLAorICAgICMgc2NzaWhvc3QKKyAgICAic2NzaWhvc3QtYXR0 YWNoIjogeG1fc2NzaWhvc3RfYXR0YWNoLAorICAgICJzY3NpaG9zdC1kZXRhY2giOiB4bV9zY3Np aG9zdF9kZXRhY2gsCisgICAgInNjc2lob3N0LWxpc3QiOiB4bV9zY3NpaG9zdF9saXN0LAogICAg ICMgbmV0d29yayAoQUtBIHZpZnMpCiAgICAgIm5ldHdvcmstYXR0YWNoIjogeG1fbmV0d29ya19h dHRhY2gsCiAgICAgIm5ldHdvcmstZGV0YWNoIjogeG1fbmV0d29ya19kZXRhY2gsCmRpZmYgLXIg YjI4YWU1ZjAwNTUzIC1yIDk4MGU1YmU3YmNmNCB4ZW4vaW5jbHVkZS9wdWJsaWMvaW8vdnNjc2lp Zi5oCi0tLSAvZGV2L251bGwJVGh1IEphbiAwMSAwMDowMDowMCAxOTcwICswMDAwCisrKyBiL3hl bi9pbmNsdWRlL3B1YmxpYy9pby92c2NzaWlmLmgJVHVlIE9jdCAzMCAxODozNDoxMSAyMDA3ICsw OTAwCkBAIC0wLDAgKzEsMjM4IEBACisvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqCisgKiBzY3NpaWYu aAorICogCisgKiBCYXNlZCBvbiB0aGUgYmxraWYuaCBjb2RlLgorICogCisgKiBQZXJtaXNzaW9u IGlzIGhlcmVieSBncmFudGVkLCBmcmVlIG9mIGNoYXJnZSwgdG8gYW55IHBlcnNvbiBvYnRhaW5p bmcgYSBjb3B5CisgKiBvZiB0aGlzIHNvZnR3YXJlIGFuZCBhc3NvY2lhdGVkIGRvY3VtZW50YXRp b24gZmlsZXMgKHRoZSAiU29mdHdhcmUiKSwgdG8KKyAqIGRlYWwgaW4gdGhlIFNvZnR3YXJlIHdp dGhvdXQgcmVzdHJpY3Rpb24sIGluY2x1ZGluZyB3aXRob3V0IGxpbWl0YXRpb24gdGhlCisgKiBy aWdodHMgdG8gdXNlLCBjb3B5LCBtb2RpZnksIG1lcmdlLCBwdWJsaXNoLCBkaXN0cmlidXRlLCBz dWJsaWNlbnNlLCBhbmQvb3IKKyAqIHNlbGwgY29waWVzIG9mIHRoZSBTb2Z0d2FyZSwgYW5kIHRv IHBlcm1pdCBwZXJzb25zIHRvIHdob20gdGhlIFNvZnR3YXJlIGlzCisgKiBmdXJuaXNoZWQgdG8g ZG8gc28sIHN1YmplY3QgdG8gdGhlIGZvbGxvd2luZyBjb25kaXRpb25zOgorICoKKyAqIFRoZSBh Ym92ZSBjb3B5cmlnaHQgbm90aWNlIGFuZCB0aGlzIHBlcm1pc3Npb24gbm90aWNlIHNoYWxsIGJl IGluY2x1ZGVkIGluCisgKiBhbGwgY29waWVzIG9yIHN1YnN0YW50aWFsIHBvcnRpb25zIG9mIHRo ZSBTb2Z0d2FyZS4KKyAqCisgKiBUSEUgU09GVFdBUkUgSVMgUFJPVklERUQgIkFTIElTIiwgV0lU SE9VVCBXQVJSQU5UWSBPRiBBTlkgS0lORCwgRVhQUkVTUyBPUgorICogSU1QTElFRCwgSU5DTFVE SU5HIEJVVCBOT1QgTElNSVRFRCBUTyBUSEUgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFks CisgKiBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBTkQgTk9OSU5GUklOR0VNRU5U LiBJTiBOTyBFVkVOVCBTSEFMTCBUSEUKKyAqIEFVVEhPUlMgT1IgQ09QWVJJR0hUIEhPTERFUlMg QkUgTElBQkxFIEZPUiBBTlkgQ0xBSU0sIERBTUFHRVMgT1IgT1RIRVIKKyAqIExJQUJJTElUWSwg V0hFVEhFUiBJTiBBTiBBQ1RJT04gT0YgQ09OVFJBQ1QsIFRPUlQgT1IgT1RIRVJXSVNFLCBBUklT SU5HCisgKiBGUk9NLCBPVVQgT0YgT1IgSU4gQ09OTkVDVElPTiBXSVRIIFRIRSBTT0ZUV0FSRSBP UiBUSEUgVVNFIE9SIE9USEVSCisgKiBERUFMSU5HUyBJTiBUSEUgU09GVFdBUkUuCisgKgorICog Q29weXJpZ2h0KGMpIEZVSklUU1UgTGltaXRlZCAyMDA3LgorICovCisKKyNpZm5kZWYgX19YRU5f X1BVQkxJQ19JT19TQ1NJX0hfXworI2RlZmluZSBfX1hFTl9fUFVCTElDX0lPX1NDU0lfSF9fCisK KyNpbmNsdWRlICJyaW5nLmgiCisjaW5jbHVkZSAiLi4vZ3JhbnRfdGFibGUuaCIKKworI2lmZGVm IENPTkZJR19YRU5fRkMKKyNpbmNsdWRlIDxzY3NpL3Njc2lfdHJhbnNwb3J0Lmg+CisjaW5jbHVk ZSA8c2NzaS9zY3NpX3RyYW5zcG9ydF9mYy5oPgorI2VuZGlmCisKKyNkZWZpbmUgQ01ORF9TQ1NJ CQkJMQkvKiBzY3NpICovCisjZGVmaW5lIENNTkRfU0NTSV9SRVNFVAkJCTIJLyogc2NzaSAqLwor CisjaWZkZWYgQ09ORklHX1hFTl9GQworI2RlZmluZSBDTU5EX0dFVF9IT1NUX1BPUlRfSUQJCTEw MQkvKiBnaHBpICovCisjZGVmaW5lIENNTkRfR0VUX0hPU1RfUE9SVF9UWVBFCQkxMDIJLyogZ2hw dCAqLworI2RlZmluZSBDTU5EX0dFVF9IT1NUX1BPUlRfU1RBVEUJMTAzCS8qIGdocHMgKi8KKyNk ZWZpbmUgQ01ORF9HRVRfSE9TVF9BQ1RJVkVfRkM0UwkxMDQJLyogZ2hhZiAqLworI2RlZmluZSBD TU5EX0dFVF9IT1NUX1NQRUVECQkxMDUJLyogZ2hzcCAqLworI2RlZmluZSBDTU5EX0dFVF9IT1NU X0ZBQlJJQ19OQU1FCTEwNgkvKiBnaGZuICovCisjZGVmaW5lIENNTkRfR0VUX0hPU1RfU1RBVFMJ CTEwNwkvKiBnaHN0ICovCisjZGVmaW5lIENNTkRfUkVTRVRfSE9TVF9TVEFUUwkJMTA4CS8qIHJo c3QgKi8KKyNkZWZpbmUgQ01ORF9JU1NVRV9IT1NUX0xJUAkJMTA5CS8qIGlobGkgKi8KKyNkZWZp bmUgQ01ORF9HRVRfU1RBUkdFVF9QT1JUX0lECTEyMQkvKiBndHBpICovCisjZGVmaW5lIENNTkRf R0VUX1NUQVJHRVRfTk9ERV9OQU1FCTEyMgkvKiBndG5uICovCisjZGVmaW5lIENNTkRfR0VUX1NU QVJHRVRfUE9SVF9OQU1FCTEyMwkvKiBndHBuICovCisjZGVmaW5lIENNTkRfR0VUX1JQT1JUX0xP U1NfVE1PCQkxNDEJLyogZ3BsdCAqLworI2RlZmluZSBDTU5EX1NFVF9SUE9SVF9MT1NTX1RNTwkJ MTQyCS8qIHNwbHQgKi8KKyNkZWZpbmUgQ01ORF9HRVRfSU5JVElBTF9TSE9TVF9BVFRSSUIJMTYx CS8qIGdpaGEgKi8KKyNkZWZpbmUgQ01ORF9HRVRfSU5JVElBTF9TVEFSR0VUX0FUVFJJQgkxNjIJ LyogZ2l0YSAqLworI2RlZmluZSBDTU5EX0dFVF9JTklUSUFMX1JQT1JUX0FUVFJJQgkxNjMJLyog Z2lwYSAqLworI2RlZmluZSBDTU5EX0dFVF9GVU5DVElPTl9URU1QTEFURQkxODEJLyogZ2Z0cCAq LworI2VuZGlmCisKKy8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKwlEZWZpbml0aW9uIG9mIFJpbmcgU3RydWN0 dXJlcworICAgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqLworCisjZGVmaW5lIERFRkFVTFRfQ0FOX1FVRVVFCTI1 NgorI2RlZmluZSBWU0NTSV9NQVhfQ09NTUFORF9TSVpFCTE2CisjZGVmaW5lIFNHX1RBQkxFU0la RQkJMzIKKworI2RlZmluZSBTQ1NJSUZfUkVRX09LQVkJCTAKKyNkZWZpbmUgU0NTSUlGX0JURlJJ TkdfQlVTWQkxCisKKy8qIERlZmluaXRpb24gb2YKKyAqCXVuaW9uICB2c2NzaWlmX2Z0Yl9zcmlu Z19lbnRyeSwKKyAqCXN0cnVjdCB2c2NzaWlmX2Z0Yl9zcmluZywKKyAqCXN0cnVjdCB2c2NzaWlm X2Z0Yl9mcm9udF9yaW5nLAorICoJc3RydWN0IHZzY3NpaWZfZnRiX2JhY2tfcmluZywKKyAqCXZz Y3NpaWZfZnRiX3NyaW5nX3QsCisgKgl2c2NzaWlmX2Z0Yl9mcm9udF9yaW5nX3QsCisgKgl2c2Nz aWlmX2Z0Yl9iYWNrX3JpbmdfdAorKi8KK3N0cnVjdCB2c2NzaWlmX2Z0Yl9yZXF1ZXN0IHsKKwl1 aW50MzJfdCBycWlkOworCXVpbnQzMl90IGNtbmQ7CisJdW5pb24geworCQkvKiBTQ1NJICovCisJ CXN0cnVjdCBzY3NpaWZfZnRiX3JlcXVlc3QgeworCQkJdWludDhfdCBjbW5kW1ZTQ1NJX01BWF9D T01NQU5EX1NJWkVdOworCQkJdWludDhfdCBjbWRfbGVuOworCQkJdWludDMyX3QgaWQsIGx1biwg Y2hhbm5lbDsKKwkJCXVpbnQxNl90IHNjX2RhdGFfZGlyZWN0aW9uOworCQkJdWludDE2X3QgdXNl X3NnOworCQkJdWludDE2X3QgcmVxdWVzdF9idWZmbGVuOworCQkJaW50MzJfdCB0aW1lb3V0X3Bl cl9jb21tYW5kOworCQkJc3RydWN0IHNjc2lpZl9yZXF1ZXN0X3NlZ21lbnQgeworCQkJCWdyYW50 X3JlZl90IGdyZWY7CisJCQkJdWludDMyX3Qgb2Zmc2V0OworCQkJCXVpbnQzMl90IGxlbmd0aDsK KwkJCX0gc2VnW1NHX1RBQkxFU0laRV07CisJCQl1aW50MzJfdCBwYWRkaW5nOworCQl9IHNjc2k7 CisjaWZkZWYgQ09ORklHX1hFTl9GQworCQkvKiBHZXRfc1RhcmdldF9Qb3J0X0lkICovCisJCS8q IEdldF9zVGFyZ2V0X05vZGVfTmFtZSAqLworCQkvKiBHZXRfc1RhcmdldF9Qb3J0X05hbWUgKi8K KwkJc3RydWN0IHsKKwkJCXUzMiBjaGFubmVsOworCQkJdTMyIGlkOworCQl9IGd0cGksIGd0bm4s IGd0cG47CisKKwkJLyogR2V0X3JQb3J0X0xvc3NfVG1vICovCisJCXN0cnVjdCB7CisJCQl1NjQg bm9kZV9uYW1lOworCQkJdTY0IHBvcnRfbmFtZTsKKwkJCXUzMiBwb3J0X2lkOworCQkJdTMyIHJv bGVzOworCQl9IGdwbHQ7CisKKwkJLyogU2V0X3JQb3J0X0xvc3NfVG1vICovCisJCXN0cnVjdCB7 CisJCQl1NjQgbm9kZV9uYW1lOworCQkJdTY0IHBvcnRfbmFtZTsKKwkJCXUzMiBwb3J0X2lkOwor CQkJdTMyIHJvbGVzOworCQkJdTMyIHRpbWVvdXQ7CisJCQl1MzIgcGFkZGluZzsKKwkJfSBzcGx0 OworI2VuZGlmCisJfSB1OworfTsKKworc3RydWN0IHZzY3NpaWZfZnRiX3Jlc3BvbnNlIHsKKwl1 aW50MTZfdCBzdGF0dXM7CisJdW5pb24geworCQlzdHJ1Y3Qgc2NzaWlmX2Z0Yl9yZXNwb25zZSB7 CisJCX0gc2NzaTsKKwl9IHU7Cit9OworCitERUZJTkVfUklOR19UWVBFUyh2c2NzaWlmX2Z0Yiwg c3RydWN0IHZzY3NpaWZfZnRiX3JlcXVlc3QsIHN0cnVjdCB2c2NzaWlmX2Z0Yl9yZXNwb25zZSk7 CisKKworI2RlZmluZSBTQ1NJX1NFTlNFX0JVRkZFUlNJWkUgCTk2CisKKy8qIERlZmluaXRpb24g b2YKKyAqCQl1bmlvbiAgdnNjc2lpZl9idGZfc3JpbmdfZW50cnksCisgKgkJc3RydWN0IHZzY3Np aWZfYnRmX3NyaW5nLAorICoJCXN0cnVjdCB2c2NzaWlmX2J0Zl9mcm9udF9yaW5nLAorICoJCXN0 cnVjdCB2c2NzaWlmX2J0Zl9iYWNrX3JpbmcsCisgKgkJdnNjc2lpZl9idGZfc3JpbmdfdCwKKyAq CQl2c2NzaWlmX2J0Zl9mcm9udF9yaW5nX3QsCisgKgkJdnNjc2lpZl9idGZfYmFja19yaW5nX3QK KyovCitzdHJ1Y3QgdnNjc2lpZl9idGZfcmVxdWVzdCB7CisJdWludDMyX3QgcnFpZDsKKwlpbnQz Ml90ICByc2x0OworCXVuaW9uIHsKKwkJLyogU0NTSSAqLworCQlzdHJ1Y3Qgc2NzaWlmX3Jlc3Bv bnNlIHsKKwkJCXVpbnQzMl90IHNlbnNlX2xlbjsKKwkJCXVpbnQ4X3Qgc2Vuc2VfYnVmZmVyW1ND U0lfU0VOU0VfQlVGRkVSU0laRV07CisJCX0gc2NzaTsKKworI2lmZGVmIENPTkZJR19YRU5fRkMK KwkJLyogR2V0X0hvc3RfUG9ydF9JZCAqLworCQlzdHJ1Y3QgeworCQkJdTMyIHBvcnRfaWQ7CisJ CX0gZ2hwaTsKKworCQkvKiBHZXRfSG9zdF9Qb3J0X1R5cGUgKi8KKwkJc3RydWN0IHsKKwkJCWVu dW0gZmNfcG9ydF90eXBlIHBvcnRfdHlwZTsKKwkJfSBnaHB0OworCisJCS8qIEdldF9Ib3N0X1Bv cnRfU3RhdGUgKi8KKwkJc3RydWN0IHsKKwkJCWVudW0gZmNfcG9ydF9zdGF0ZSBwb3J0X3N0YXRl OworCQl9IGdocHM7CisKKwkJLyogR2V0X0hvc3RfQWN0aXZlX0ZjNHMgKi8KKwkJc3RydWN0IHsK KwkJCXU4IGFjdGl2ZV9mYzRzW0ZDX0ZDNF9MSVNUX1NJWkVdOworCQl9IGdoYWY7CisKKwkJLyog R2V0X0hvc3RfU1BlZWQgKi8KKwkJc3RydWN0IHsKKwkJCXUzMiBzcGVlZDsKKwkJfSBnaHNwOwor CisJCS8qIEdldF9Ib3N0X0ZhYnJpY19OYW1lICovCisJCXN0cnVjdCB7CisJCQl1NjQgZmFicmlj X25hbWU7CisJCX0gZ2hmbjsKKworCQkvKiBHZXRfSG9zdF9TVGF0cyAqLworCQlzdHJ1Y3Qgewor CQkJc3RydWN0IGZjX2hvc3Rfc3RhdGlzdGljcyBzdGF0czsKKwkJfSBnaHN0OworCisJCS8qIEdl dF9zVGFyZ2V0X1BvcnRfSWQgKi8KKwkJc3RydWN0IHsKKwkJCXUzMiBwb3J0X2lkOworCQl9IGd0 cGk7CisKKwkJLyogR2V0X3NUYXJnZXRfTm9kZV9OYW1lICovCisJCXN0cnVjdCB7CisJCQl1NjQg bm9kZV9uYW1lOworCQl9IGd0bm47CisKKwkJLyogR2V0X3NUYXJnZXRfUG9ydF9OYW1lICovCisJ CXN0cnVjdCB7CisJCQl1NjQgcG9ydF9uYW1lOworCQl9IGd0cG47CisKKwkJLyogR2V0X3JQb3J0 X0xvc3NfVG1vICovCisJCXN0cnVjdCB7CisJCQl1MzIgdGltZW91dDsKKwkJfSBncGx0OworCisJ CS8qIFNldF9yUG9ydF9Mb3NzX1RtbyAqLworCQlzdHJ1Y3QgeworCQkJdTMyIHRpbWVvdXQ7CisJ CX0gc3BsdDsKKyNlbmRpZgorCX0gdTsKK307CisKK3N0cnVjdCB2c2NzaWlmX2J0Zl9yZXNwb25z ZSB7CisJdW5pb24geworCQlzdHJ1Y3Qgc2NzaWlmX2J0Zl9yZXNwb25zZSB7CisKKwkJfSBzY3Np OworCX0gdTsKK307CisKK0RFRklORV9SSU5HX1RZUEVTKHZzY3NpaWZfYnRmLCBzdHJ1Y3QgdnNj c2lpZl9idGZfcmVxdWVzdCwgc3RydWN0IHZzY3NpaWZfYnRmX3Jlc3BvbnNlKTsKKworI2VuZGlm Cg== --------_4727086C00000000444A_MULTIPART_MIXED_ Content-Type: text/plain; charset="us-ascii" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Disposition: inline _______________________________________________ Xen-devel mailing list Xen-devel@lists.xensource.com http://lists.xensource.com/xen-devel --------_4727086C00000000444A_MULTIPART_MIXED_--