From: Jun Kamada Subject: [PATCH 5/5] pvSCSI (SCSI pass through) driver Date: Fri, 19 Oct 2007 14:16:11 +0900 Message-ID: <20071019140728.E770.KAMA@jp.fujitsu.com> Mime-Version: 1.0 Content-Type: multipart/mixed; boundary="------_47183B9000000000E905_MULTIPART_MIXED_" Content-Transfer-Encoding: 7bit Return-path: List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Sender: xen-devel-bounces@lists.xensource.com Errors-To: xen-devel-bounces@lists.xensource.com To: xen-devel@lists.xensource.com Cc: kama@jp.fujitsu.com List-Id: xen-devel@lists.xenproject.org --------_47183B9000000000E905_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 --------_47183B9000000000E905_MULTIPART_MIXED_ Content-Type: application/octet-stream; name="xend_scsihost.patch" Content-Disposition: attachment; filename="xend_scsihost.patch" Content-Transfer-Encoding: base64 IyBIRyBjaGFuZ2VzZXQgcGF0Y2gKIyBVc2VyIHQuaG9yaWtvc2hpQGpwLmZ1aml0c3UuY29tCiMg RGF0ZSAxMTkyNzAzMDMyIC0zMjQwMAojIE5vZGUgSUQgMThjOThjODJlNjBlNDgzYmQ2NWYzOTA0 YTk2ZDIzMDU4MzlhMzUwZQojIFBhcmVudCAgYjQyNzhiZWFmMzU0OWY0MTBhNWE2MDg2ZGJkOGFm OTNjNDk1YWVhYwpbWEVORF0gYWRkIHNjc2lob3N0IGludGVyZmFjZQoKU2lnbmVkLW9mZi1ieTog VG9tb25hcmkgSG9yaWtvc2hpIDx0Lmhvcmlrb3NoaUBqcC5mdWppdHN1LmNvbT4KU2lnbmVkLW9m Zi1ieTogVHN1bmVoaXNhIERvaSA8RG9pLlRzdW5laGlzYUBqcC5mdWppdHN1LmNvbT4KU2lnbmVk LW9mZi1ieTogSnVuIEthbWFkYSA8a2FtYUBqcC5mdWppdHN1LmNvbT4KU2lnbmVkLW9mZi1ieTog QWtpcmEgSGF5YWthd2EgPGhheWFrYXdhLmFraXJhQGpwLmZ1aml0c3UuY29tPgoKZGlmZiAtciBi NDI3OGJlYWYzNTQgLXIgMThjOThjODJlNjBlIHRvb2xzL2V4YW1wbGVzL01ha2VmaWxlCi0tLSBh L3Rvb2xzL2V4YW1wbGVzL01ha2VmaWxlCVdlZCBPY3QgMTcgMTM6MTI6MDMgMjAwNyArMDEwMAor KysgYi90b29scy9leGFtcGxlcy9NYWtlZmlsZQlUaHUgT2N0IDE4IDE5OjIzOjUyIDIwMDcgKzA5 MDAKQEAgLTI1LDYgKzI1LDcgQEAgWEVOX1NDUklQVFMgKz0gbmV0d29yay1yb3V0ZSB2aWYtcm91 dGUKIFhFTl9TQ1JJUFRTICs9IG5ldHdvcmstcm91dGUgdmlmLXJvdXRlCiBYRU5fU0NSSVBUUyAr PSBuZXR3b3JrLW5hdCB2aWYtbmF0CiBYRU5fU0NSSVBUUyArPSBibG9jaworWEVOX1NDUklQVFMg Kz0gc2NzaWhvc3QKIFhFTl9TQ1JJUFRTICs9IGJsb2NrLWVuYmQgYmxvY2stbmJkCiBYRU5fU0NS SVBUUyArPSBibGt0YXAKIFhFTl9TQ1JJUFRTICs9IHZ0cG0gdnRwbS1kZWxldGUKZGlmZiAtciBi NDI3OGJlYWYzNTQgLXIgMThjOThjODJlNjBlIHRvb2xzL2V4YW1wbGVzL3Njc2lob3N0Ci0tLSAv ZGV2L251bGwJVGh1IEphbiAwMSAwMDowMDowMCAxOTcwICswMDAwCisrKyBiL3Rvb2xzL2V4YW1w bGVzL3Njc2lob3N0CVRodSBPY3QgMTggMTk6MjM6NTIgMjAwNyArMDkwMApAQCAtMCwwICsxLDI2 IEBACisjIS9iaW4vc2gKKworZGlyPSQoZGlybmFtZSAiJDAiKQorLiAiJGRpci9ibG9jay1jb21t b24uc2giCisKK2xvZyBkZWJ1ZyAidWRldiBldmVudC4iCisKK2Nhc2UgIiRjb21tYW5kIiBpbgor ICAgIGFkZCkKKyAgICAgICAgZG9uZT0kKHhlbnN0b3JlX3JlYWRfZGVmYXVsdCAiJFhFTkJVU19Q QVRIL3Njc2lob3N0IiAnTUlTU0lORycpCisgICAgICAgaWYgWyAiJGRvbmUiICE9ICdNSVNTSU5H JyBdCisgICAgICAgICAgIHRoZW4KKyAgICAgICAgICAgZXhpdCAwCisgICAgICAgZmkKKworICAg ICAgICMgVE9ETworICAgICAgICN4ZW5zdG9yZV93cml0ZSAiJFhFTkJVU19QQVRIL3Njc2kiICJp bmZvIgorICAgICAgIHN1Y2Nlc3MKKyAgICAgICA7OworICAgIHJlbW92ZSkKKyAgICAgICAjIFRP RE8KKyAgICAgICA7OworZXNhYworCitleGl0IDAKKwpkaWZmIC1yIGI0Mjc4YmVhZjM1NCAtciAx OGM5OGM4MmU2MGUgdG9vbHMvZXhhbXBsZXMveGVuLWJhY2tlbmQuYWdlbnQKLS0tIGEvdG9vbHMv ZXhhbXBsZXMveGVuLWJhY2tlbmQuYWdlbnQJV2VkIE9jdCAxNyAxMzoxMjowMyAyMDA3ICswMTAw CisrKyBiL3Rvb2xzL2V4YW1wbGVzL3hlbi1iYWNrZW5kLmFnZW50CVRodSBPY3QgMTggMTk6MjM6 NTIgMjAwNyArMDkwMApAQCAtMTIsNiArMTIsOSBAQCBjYXNlICIkWEVOQlVTX1RZUEUiIGluCiAg ICAgOzsKICAgdmJkKQogICAgIC9ldGMveGVuL3NjcmlwdHMvYmxvY2sgIiRBQ1RJT04iCisgICAg OzsKKyAgc2NzaSkKKyAgICAvZXRjL3hlbi9zY3JpcHRzL3Njc2lob3N0ICIkQUNUSU9OIgogICAg IDs7CiAgIHZ0cG0pCiAgICAgL2V0Yy94ZW4vc2NyaXB0cy92dHBtICIkQUNUSU9OIgpkaWZmIC1y IGI0Mjc4YmVhZjM1NCAtciAxOGM5OGM4MmU2MGUgdG9vbHMvZXhhbXBsZXMveGVuLWJhY2tlbmQu cnVsZXMKLS0tIGEvdG9vbHMvZXhhbXBsZXMveGVuLWJhY2tlbmQucnVsZXMJV2VkIE9jdCAxNyAx MzoxMjowMyAyMDA3ICswMTAwCisrKyBiL3Rvb2xzL2V4YW1wbGVzL3hlbi1iYWNrZW5kLnJ1bGVz CVRodSBPY3QgMTggMTk6MjM6NTIgMjAwNyArMDkwMApAQCAtMSw1ICsxLDYgQEAgU1VCU1lTVEVN PT0ieGVuLWJhY2tlbmQiLCBLRVJORUw9PSJ0YXAqIgogU1VCU1lTVEVNPT0ieGVuLWJhY2tlbmQi LCBLRVJORUw9PSJ0YXAqIiwgUlVOKz0iL2V0Yy94ZW4vc2NyaXB0cy9ibGt0YXAgJGVudntBQ1RJ T059IgogU1VCU1lTVEVNPT0ieGVuLWJhY2tlbmQiLCBLRVJORUw9PSJ2YmQqIiwgUlVOKz0iL2V0 Yy94ZW4vc2NyaXB0cy9ibG9jayAkZW52e0FDVElPTn0iCitTVUJTWVNURU09PSJ4ZW4tYmFja2Vu ZCIsIEtFUk5FTD09InNjc2lob3N0KiIsIFJVTis9Ii9ldGMveGVuL3NjcmlwdHMvc2NzaWhvc3Qg JGVudntBQ1RJT059IgogU1VCU1lTVEVNPT0ieGVuLWJhY2tlbmQiLCBLRVJORUw9PSJ2dHBtKiIs IFJVTis9Ii9ldGMveGVuL3NjcmlwdHMvdnRwbSAkZW52e0FDVElPTn0iCiBTVUJTWVNURU09PSJ4 ZW4tYmFja2VuZCIsIEtFUk5FTD09InZpZioiLCBBQ1RJT049PSJvbmxpbmUiLCBSVU4rPSIkZW52 e3NjcmlwdH0gb25saW5lIgogU1VCU1lTVEVNPT0ieGVuLWJhY2tlbmQiLCBLRVJORUw9PSJ2aWYq IiwgQUNUSU9OPT0ib2ZmbGluZSIsIFJVTis9IiRlbnZ7c2NyaXB0fSBvZmZsaW5lIgpkaWZmIC1y IGI0Mjc4YmVhZjM1NCAtciAxOGM5OGM4MmU2MGUgdG9vbHMvcHl0aG9uL3hlbi94ZW5kL1hlbmRE ZXZpY2VzLnB5Ci0tLSBhL3Rvb2xzL3B5dGhvbi94ZW4veGVuZC9YZW5kRGV2aWNlcy5weQlXZWQg T2N0IDE3IDEzOjEyOjAzIDIwMDcgKzAxMDAKKysrIGIvdG9vbHMvcHl0aG9uL3hlbi94ZW5kL1hl bmREZXZpY2VzLnB5CVRodSBPY3QgMTggMTk6MjM6NTIgMjAwNyArMDkwMApAQCAtMTksNyArMTks NyBAQAogIyBBIGNvbGxlY3Rpb24gb2YgRGV2Q29udHJvbGxlcnMgCiAjCiAKLWZyb20geGVuLnhl bmQuc2VydmVyIGltcG9ydCBibGtpZiwgbmV0aWYsIHRwbWlmLCBwY2lpZiwgaW9waWYsIGlycWlm LCB1c2JpZiwgdmZiaWYKK2Zyb20geGVuLnhlbmQuc2VydmVyIGltcG9ydCBibGtpZiwgc2NzaWhv c3RpZiwgbmV0aWYsIHRwbWlmLCBwY2lpZiwgaW9waWYsIGlycWlmLCB1c2JpZiwgdmZiaWYKIGZy b20geGVuLnhlbmQuc2VydmVyLkJsa3RhcENvbnRyb2xsZXIgaW1wb3J0IEJsa3RhcENvbnRyb2xs ZXIKIGZyb20geGVuLnhlbmQuc2VydmVyLkNvbnNvbGVDb250cm9sbGVyIGltcG9ydCBDb25zb2xl Q29udHJvbGxlcgogCkBAIC0zNiw2ICszNiw3IEBAIGNsYXNzIFhlbmREZXZpY2VzOgogCiAgICAg Y29udHJvbGxlcnMgPSB7CiAgICAgICAgICd2YmQnOiBibGtpZi5CbGtpZkNvbnRyb2xsZXIsCisg ICAgICAgICdzY3NpaG9zdCc6IHNjc2lob3N0aWYuU0NTSUhvc3RDb250cm9sbGVyLAogICAgICAg ICAndmlmJzogbmV0aWYuTmV0aWZDb250cm9sbGVyLAogICAgICAgICAndnRwbSc6IHRwbWlmLlRQ TWlmQ29udHJvbGxlciwKICAgICAgICAgJ3BjaSc6IHBjaWlmLlBjaUNvbnRyb2xsZXIsCmRpZmYg LXIgYjQyNzhiZWFmMzU0IC1yIDE4Yzk4YzgyZTYwZSB0b29scy9weXRob24veGVuL3hlbmQvc2Vy dmVyL3Njc2lob3N0aWYucHkKLS0tIC9kZXYvbnVsbAlUaHUgSmFuIDAxIDAwOjAwOjAwIDE5NzAg KzAwMDAKKysrIGIvdG9vbHMvcHl0aG9uL3hlbi94ZW5kL3NlcnZlci9zY3NpaG9zdGlmLnB5CVRo dSBPY3QgMTggMTk6MjM6NTIgMjAwNyArMDkwMApAQCAtMCwwICsxLDc1IEBACisjPT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PQorIyBUaGlzIGxpYnJhcnkgaXMgZnJlZSBzb2Z0d2FyZTsgeW91IGNhbiByZWRp c3RyaWJ1dGUgaXQgYW5kL29yCisjIG1vZGlmeSBpdCB1bmRlciB0aGUgdGVybXMgb2YgdmVyc2lv biAyLjEgb2YgdGhlIEdOVSBMZXNzZXIgR2VuZXJhbCBQdWJsaWMKKyMgTGljZW5zZSBhcyBwdWJs aXNoZWQgYnkgdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbi4KKyMKKyMgVGhpcyBsaWJyYXJ5 IGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCisjIGJ1 dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5 IG9mCisjIE1FUkNIQU5UQUJJTElUWSBvciBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9T RS4gIFNlZSB0aGUgR05VCisjIExlc3NlciBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGZvciBtb3Jl IGRldGFpbHMuCisjCisjIFlvdSBzaG91bGQgaGF2ZSByZWNlaXZlZCBhIGNvcHkgb2YgdGhlIEdO VSBMZXNzZXIgR2VuZXJhbCBQdWJsaWMKKyMgTGljZW5zZSBhbG9uZyB3aXRoIHRoaXMgbGlicmFy eTsgaWYgbm90LCB3cml0ZSB0byB0aGUgRnJlZSBTb2Z0d2FyZQorIyBGb3VuZGF0aW9uLCBJbmMu LCA1OSBUZW1wbGUgUGxhY2UsIFN1aXRlIDMzMCwgQm9zdG9uLCBNQSAgMDIxMTEtMTMwNyAgVVNB CisjPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PQorIyBDb3B5cmlnaHQgKEMpIDIwMDcgRlVKSVRTVSBMaW1p dGVkCisjICAgICAgICAgICAgICAgICAgICAgQmFzZWQgb24gdGhlIGJsa2lmLnB5CisjPT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PQorCisKKyIiIlN1cHBvcnQgZm9yIFNDU0kgSEJBcy4KKyIiIgorCitpbXBv cnQgcmUKK2ltcG9ydCBzdHJpbmcKKworZnJvbSB4ZW4ueGVuZCBpbXBvcnQgc3hwCitmcm9tIHhl bi54ZW5kLlhlbmRFcnJvciBpbXBvcnQgVm1FcnJvcgorCitmcm9tIHhlbi54ZW5kLnNlcnZlci5E ZXZDb250cm9sbGVyIGltcG9ydCBEZXZDb250cm9sbGVyCisKK2NsYXNzIFNDU0lIb3N0Q29udHJv bGxlcihEZXZDb250cm9sbGVyKToKKyAgICAiIiJTQ1NJIEhCQXMuCisgICAgIiIiCisgICAgCisg ICAgZGVmIF9faW5pdF9fKHNlbGYsIHZtKToKKyAgICAgICAgIiIiQ3JlYXRlIGEgU0NTSSBIQkEu CisgICAgICAgICIiIgorICAgICAgICBEZXZDb250cm9sbGVyLl9faW5pdF9fKHNlbGYsIHZtKQor CisKKyAgICBkZWYgZ2V0RGV2aWNlRGV0YWlscyhzZWxmLCBjb25maWcpOgorICAgICAgICAiIiJA c2VlIERldkNvbnRyb2xsZXIuZ2V0RGV2aWNlRGV0YWlscyIiIgorCisgICAgICAgIHR5cCA9IGNv bmZpZy5nZXQoJ3R5cGUnKQorICAgICAgICBob3N0bm8gPSBjb25maWcuZ2V0KCdob3N0bm8nKQor ICAgICAgICBiYWNrID0geyAndHlwZScgICAgIDogdHlwLAorICAgICAgICAgICAgICAgICAnaG9z dG5vJyAgIDogaG9zdG5vLAorICAgICAgICAgICAgICAgfQorICAgICAgICBkZXZpZCA9IGludCho b3N0bm8pCisKKyAgICAgICAgdXVpZCA9IGNvbmZpZy5nZXQoJ3V1aWQnKQorICAgICAgICBpZiB1 dWlkOgorICAgICAgICAgICAgYmFja1sndXVpZCddID0gdXVpZAorCisgICAgICAgIGZyb250ID0g eyAndHlwZScgOiB0eXAgfQorCisgICAgICAgIHJldHVybiAoZGV2aWQsIGJhY2ssIGZyb250KQor CisKKyAgICBkZWYgZ2V0RGV2aWNlQ29uZmlndXJhdGlvbihzZWxmLCBkZXZpZCk6CisgICAgICAg ICIiIkBzZWUgRGV2Q29udHJvbGxlci5jb25maWd1cmF0aW9uIiIiCisKKyAgICAgICAgcmVzdWx0 ID0gRGV2Q29udHJvbGxlci5nZXREZXZpY2VDb25maWd1cmF0aW9uKHNlbGYsIGRldmlkKQorCisg ICAgICAgIGRldmluZm8gPSBzZWxmLnJlYWRCYWNrZW5kKGRldmlkLCAndXVpZCcsICd0eXBlJywg J2hvc3RubycpCisgICAgICAgIHV1aWQsIHR5cCwgaG9zdG5vID0gZGV2aW5mbworCisgICAgICAg IGlmIHV1aWQ6CisgICAgICAgICAgICByZXN1bHRbJ3V1aWQnXSA9IHV1aWQKKyAgICAgICAgaWYg dHlwOgorICAgICAgICAgICAgcmVzdWx0Wyd0eXBlJ10gPSB0eXAKKyAgICAgICAgaWYgaG9zdG5v OgorICAgICAgICAgICAgcmVzdWx0Wydob3N0bm8nXSA9IGhvc3RubworCisgICAgICAgIHJldHVy biByZXN1bHQKZGlmZiAtciBiNDI3OGJlYWYzNTQgLXIgMThjOThjODJlNjBlIHRvb2xzL3B5dGhv bi94ZW4veG0vY3JlYXRlLnB5Ci0tLSBhL3Rvb2xzL3B5dGhvbi94ZW4veG0vY3JlYXRlLnB5CVdl ZCBPY3QgMTcgMTM6MTI6MDMgMjAwNyArMDEwMAorKysgYi90b29scy9weXRob24veGVuL3htL2Ny ZWF0ZS5weQlUaHUgT2N0IDE4IDE5OjIzOjUyIDIwMDcgKzA5MDAKQEAgLTI4Miw2ICsyODIsMTIg QEAgZ29wdHMudmFyKCdkaXNrJywgdmFsPSdwaHk6REVWLFZERVYsTU9ERQogICAgICAgICAgIGJh Y2tlbmQgZHJpdmVyIGRvbWFpbiB0byB1c2UgZm9yIHRoZSBkaXNrLgogICAgICAgICAgIFRoZSBv cHRpb24gbWF5IGJlIHJlcGVhdGVkIHRvIGFkZCBtb3JlIHRoYW4gb25lIGRpc2suIiIiKQogCitn b3B0cy52YXIoJ3Njc2lob3N0JywgdmFsPSdUWVBFLFNDU0lIT1NUTk8nLAorICAgICAgICAgIGZu PWFwcGVuZF92YWx1ZSwgZGVmYXVsdD1bXSwKKyAgICAgICAgICB1c2U9IiIiQWRkIGEgU0NTSS1I QkEgZGV2aWNlIHRvIGEgZG9tYWluLiBUWVBFIGlzIGZjIG9yIHNjc2kuCisgICAgICAgICAgU0NT SUhPU1ROTyBpcyBzY3NpIGhvc3QgbnVtYmVyIHRoYXQgY2FuIGJlIHNlZW4gZnJvbSAvcHJvYy9z Y3NpL3Njc2kgIAorICAgICAgICAgIC4iIiIpCisKIGdvcHRzLnZhcigncGNpJywgdmFsPSdCVVM6 REVWLkZVTkMnLAogICAgICAgICAgIGZuPWFwcGVuZF92YWx1ZSwgZGVmYXVsdD1bXSwKICAgICAg ICAgICB1c2U9IiIiQWRkIGEgUENJIGRldmljZSB0byBhIGRvbWFpbiwgdXNpbmcgZ2l2ZW4gcGFy YW1zIChpbiBoZXgpLgpAQCAtNTc0LDYgKzU4MCwxNSBAQCBkZWYgY29uZmlndXJlX2Rpc2tzKGNv bmZpZ19kZXZzLCB2YWxzKToKICAgICAgICAgaWYgYmFja2VuZDoKICAgICAgICAgICAgIGNvbmZp Z192YmQuYXBwZW5kKFsnYmFja2VuZCcsIGJhY2tlbmRdKQogICAgICAgICBjb25maWdfZGV2cy5h cHBlbmQoWydkZXZpY2UnLCBjb25maWdfdmJkXSkKKworZGVmIGNvbmZpZ3VyZV9zY3NpaG9zdChj b25maWdfZGV2cywgdmFscyk6CisgICAgIiIiQ3JlYXRlIHRoZSBjb25maWcgZm9yIGEgU0NTSSBI QkEuCisgICAgIiIiCisgICAgZm9yICh0eXBlLCBubykgaW4gdmFscy5zY3NpaG9zdDoKKyAgICAg ICAgY29uZmlnX3Njc2lob3N0ID0gWydzY3NpaG9zdCcsCisgICAgICAgICAgICAgICAgICAgICAg ICAgICBbJ3R5cGUnLCB0eXBlIF0sCisgICAgICAgICAgICAgICAgICAgICAgICAgICBbJ2hvc3Ru bycsIG5vIF0gXQorICAgICAgICBjb25maWdfZGV2cy5hcHBlbmQoWydkZXZpY2UnLCBjb25maWdf c2NzaWhvc3RdKQogCiBkZWYgY29uZmlndXJlX3BjaShjb25maWdfZGV2cywgdmFscyk6CiAgICAg IiIiQ3JlYXRlIHRoZSBjb25maWcgZm9yIHBjaSBkZXZpY2VzLgpAQCAtNzgyLDYgKzc5Nyw3IEBA IGRlZiBtYWtlX2NvbmZpZyh2YWxzKToKIAogICAgIGNvbmZpZ19kZXZzID0gW10KICAgICBjb25m aWd1cmVfZGlza3MoY29uZmlnX2RldnMsIHZhbHMpCisgICAgY29uZmlndXJlX3Njc2lob3N0KGNv bmZpZ19kZXZzLCB2YWxzKQogICAgIGNvbmZpZ3VyZV9wY2koY29uZmlnX2RldnMsIHZhbHMpCiAg ICAgY29uZmlndXJlX2lvcG9ydHMoY29uZmlnX2RldnMsIHZhbHMpCiAgICAgY29uZmlndXJlX2ly cShjb25maWdfZGV2cywgdmFscykKQEAgLTgwOCw2ICs4MjQsMTkgQEAgZGVmIHByZXByb2Nlc3Nf ZGlzayh2YWxzKToKICAgICAgICAgICAgIGVycignSW52YWxpZCBkaXNrIHNwZWNpZmllcjogJyAr IHYpCiAgICAgICAgIGRpc2suYXBwZW5kKGQpCiAgICAgdmFscy5kaXNrID0gZGlzaworCitkZWYg cHJlcHJvY2Vzc19zY3NpaG9zdCh2YWxzKToKKyAgICBpZiBub3QgdmFscy5zY3NpaG9zdDogcmV0 dXJuCisgICAgc2NzaWhvc3QgPSBbXQorICAgIGZvciB2IGluIHZhbHMuc2NzaWhvc3Q6CisgICAg ICAgIGQgPSB2LnNwbGl0KCcsJykKKyAgICAgICAgbiA9IGxlbihkKQorICAgICAgICBpZiBuID09 IDI6CisgICAgICAgICAgICBwYXNzCisgICAgICAgIGVsc2U6CisgICAgICAgICAgICBlcnIoJ0lu dmFsaWQgc2NzaSBzcGVjaWZpZXI6ICcgKyB2KQorICAgICAgICBzY3NpaG9zdC5hcHBlbmQoZCkK KyAgICB2YWxzLnNjc2lob3N0ID0gc2NzaWhvc3QKIAogZGVmIHByZXByb2Nlc3NfcGNpKHZhbHMp OgogICAgIGlmIG5vdCB2YWxzLnBjaTogcmV0dXJuCkBAIC0xMDA2LDYgKzEwMzUsNyBAQCBkZWYg cHJlcHJvY2Vzc192bmModmFscyk6CiAgICAgCiBkZWYgcHJlcHJvY2Vzcyh2YWxzKToKICAgICBw cmVwcm9jZXNzX2Rpc2sodmFscykKKyAgICBwcmVwcm9jZXNzX3Njc2lob3N0KHZhbHMpCiAgICAg cHJlcHJvY2Vzc19wY2kodmFscykKICAgICBwcmVwcm9jZXNzX2lvcG9ydHModmFscykKICAgICBw cmVwcm9jZXNzX2lwKHZhbHMpCmRpZmYgLXIgYjQyNzhiZWFmMzU0IC1yIDE4Yzk4YzgyZTYwZSB0 b29scy9weXRob24veGVuL3htL21haW4ucHkKLS0tIGEvdG9vbHMvcHl0aG9uL3hlbi94bS9tYWlu LnB5CVdlZCBPY3QgMTcgMTM6MTI6MDMgMjAwNyArMDEwMAorKysgYi90b29scy9weXRob24veGVu L3htL21haW4ucHkJVGh1IE9jdCAxOCAxOToyMzo1MiAyMDA3ICswOTAwCkBAIC0xNjEsNiArMTYx LDEyIEBAIFNVQkNPTU1BTkRfSEVMUCA9IHsKICAgICAgICAgICAgICAgICAgICAgICAgICdEZXN0 cm95IGEgZG9tYWluXCdzIHZpcnR1YWwgYmxvY2sgZGV2aWNlLicpLAogICAgICdibG9jay1saXN0 JyAgICA6ICAoJzxEb21haW4+IFstLWxvbmddJywKICAgICAgICAgICAgICAgICAgICAgICAgICdM aXN0IHZpcnR1YWwgYmxvY2sgZGV2aWNlcyBmb3IgYSBkb21haW4uJyksCisgICAgJ3Njc2lob3N0 LWF0dGFjaCcgIDogICgnPERvbWFpbj4gc2NzaSA8U0NTSUhvc3Rubz4gW0JhY2tEb21haW5dJywK KyAgICAgICAgICAgICAgICAgICAgICAgICdDcmVhdGUgYSBuZXcgdmlydHVhbCBTQ1NJSG9zdCBk ZXZpY2UuJyksCisgICAgJ3Njc2lob3N0LWRldGFjaCcgIDogICgnPERvbWFpbj4gPFNDU0lIb3N0 bm8+IFstZnwtLWZvcmNlXScsCisgICAgICAgICAgICAgICAgICAgICAgICAnRGVzdHJveSBhIGRv bWFpblwncyB2aXJ0dWFsIFNDU0lIb3N0IGRldmljZS4nKSwKKyAgICAnc2NzaWhvc3QtbGlzdCcg ICAgOiAgKCc8RG9tYWluPiBbLS1sb25nXScsCisgICAgICAgICAgICAgICAgICAgICAgICAnTGlz dCB2aXJ0dWFsIFNDU0lIb3N0IGRldmljZXMgZm9yIGEgZG9tYWluLicpLAogICAgICduZXR3b3Jr LWF0dGFjaCc6ICAoJzxEb21haW4+IFt0eXBlPTx0eXBlPl0gW21hYz08bWFjPl0gW2JyaWRnZT08 YnJpZGdlPl0gJwogICAgICAgICAgICAgICAgICAgICAgICAgJ1tpcD08aXA+XSBbc2NyaXB0PTxz Y3JpcHQ+XSBbYmFja2VuZD08QmFja0RvbWFpbj5dICcKICAgICAgICAgICAgICAgICAgICAgICAg ICdbdmlmbmFtZT08bmFtZT5dIFtyYXRlPTxyYXRlPl0gW21vZGVsPTxtb2RlbD5dJwpAQCAtMzMx LDYgKzMzNyw5IEBAIGRldmljZV9jb21tYW5kcyA9IFsKICAgICAiYmxvY2stZGV0YWNoIiwKICAg ICAiYmxvY2stbGlzdCIsCiAgICAgImJsb2NrLWNvbmZpZ3VyZSIsCisgICAgInNjc2lob3N0LWF0 dGFjaCIsCisgICAgInNjc2lob3N0LWRldGFjaCIsCisgICAgInNjc2lob3N0LWxpc3QiLAogICAg ICJuZXR3b3JrLWF0dGFjaCIsCiAgICAgIm5ldHdvcmstZGV0YWNoIiwKICAgICAibmV0d29yay1s aXN0IiwKQEAgLTIwMjksNiArMjAzOCwzMiBAQCBkZWYgeG1fYmxvY2tfbGlzdChhcmdzKToKICAg ICAgICAgICAgICAgICAgICAiJShiZS1wYXRoKS0zMHMgICIKICAgICAgICAgICAgICAgICAgICAl IG5pKQogCitkZWYgeG1fc2NzaWhvc3RfbGlzdChhcmdzKToKKyAgICAodXNlX2xvbmcsIHBhcmFt cykgPSBhcmdfY2hlY2tfZm9yX3Jlc291cmNlX2xpc3QoYXJncywgInNjc2lob3N0LWxpc3QiKQor CisgICAgZG9tID0gcGFyYW1zWzBdCisgICAgZGV2cyA9IHNlcnZlci54ZW5kLmRvbWFpbi5nZXRE ZXZpY2VTeHBycyhkb20sICdzY3NpaG9zdCcpCisKKyAgICBpZiB1c2VfbG9uZzoKKyAgICAgICAg bWFwKFByZXR0eVByaW50LnByZXR0eXByaW50LCBkZXZzKQorICAgIGVsc2U6CisgICAgICAgIGhk ciA9IDAKKyAgICAgICAgZm9yIHggaW4gZGV2czoKKyAgICAgICAgICAgIGlmIGhkciA9PSAwOgor ICAgICAgICAgICAgICAgIHByaW50ICdzaG9zdCAgQkUgaGFuZGxlIHN0YXRlIGV2dC1jaCByaW5n LXJlZiBCRS1wYXRoJworICAgICAgICAgICAgICAgIGhkciA9IDEKKyAgICAgICAgICAgIG5pID0g cGFyc2VfZGV2X2luZm8oeFsxXSkKKyAgICAgICAgICAgIG5pWydpZHgnXSA9IGludCh4WzBdKQor ICAgICAgICAgICAgcHJpbnQgKCIlKGlkeCktM2QgICAgIgorICAgICAgICAgICAgICAgICAgICIl KGJhY2tlbmQtaWQpLTNkICAiCisgICAgICAgICAgICAgICAgICAgIiUoaGFuZGxlKS0zZCAgICIK KyAgICAgICAgICAgICAgICAgICAiJShzdGF0ZSktM2QgICAgIgorICAgICAgICAgICAgICAgICAg ICIlKGV2ZW50LWNoKS0zZCAgICAiCisgICAgICAgICAgICAgICAgICAgIiUocmluZy1yZWYpLTVk ICIKKyAgICAgICAgICAgICAgICAgICAiJShiZS1wYXRoKS0zMHMgICIKKyAgICAgICAgICAgICAg ICAgICAlIG5pKQorCisKIGRlZiB4bV92dHBtX2xpc3QoYXJncyk6CiAgICAgKHVzZV9sb25nLCBw YXJhbXMpID0gYXJnX2NoZWNrX2Zvcl9yZXNvdXJjZV9saXN0KGFyZ3MsICJ2dHBtLWxpc3QiKQog CkBAIC0yMTMwLDYgKzIxNjUsMjAgQEAgZGVmIHhtX2Jsb2NrX2NvbmZpZ3VyZShhcmdzKToKIAog ICAgIChkb20sIHZiZCkgPSBwYXJzZV9ibG9ja19jb25maWd1cmF0aW9uKGFyZ3MpCiAgICAgc2Vy dmVyLnhlbmQuZG9tYWluLmRldmljZV9jb25maWd1cmUoZG9tLCB2YmQpCisKKworZGVmIHhtX3Nj c2lob3N0X2F0dGFjaChhcmdzKToKKyAgICBhcmdfY2hlY2soYXJncywgJ3Njc2lob3N0LWF0dGFj aCcsIDMsIDQpCisKKyAgICBkb20gPSBhcmdzWzBdCisKKyAgICBzY3NpaG9zdCA9IFsnc2NzaWhv c3QnLAorICAgICAgICAgICAgICAgIFsndHlwZScsIGFyZ3NbMV1dLAorICAgICAgICAgICAgICAg IFsnaG9zdG5vJywgICBhcmdzWzJdXV0KKyAgICBpZiBsZW4oYXJncykgPT0gNDoKKyAgICAgICAg c2NzaWhvc3QuYXBwZW5kKFsnYmFja2VuZCcsIGFyZ3NbM11dKQorCisgICAgc2VydmVyLnhlbmQu ZG9tYWluLmRldmljZV9jcmVhdGUoZG9tLCBzY3NpaG9zdCkKIAogCiBkZWYgeG1fbmV0d29ya19h dHRhY2goYXJncyk6CkBAIC0yMjU0LDYgKzIzMDMsMTAgQEAgZGVmIHhtX2Jsb2NrX2RldGFjaChh cmdzKToKICAgICAgICAgICAgIGRldGFjaChhcmdzLCAndGFwJykKICAgICAgICAgZWxzZToKICAg ICAgICAgICAgIGRldGFjaChhcmdzLCAndmJkJykKKworZGVmIHhtX3Njc2lob3N0X2RldGFjaChh cmdzKToKKyAgICBhcmdfY2hlY2soYXJncywgJ3Njc2lob3N0LWRldGFjaCcsIDIsIDMpCisgICAg ZGV0YWNoKGFyZ3MsICdzY3NpaG9zdCcpCiAKIGRlZiB4bV9uZXR3b3JrX2RldGFjaChhcmdzKToK ICAgICBpZiBzZXJ2ZXJUeXBlID09IFNFUlZFUl9YRU5fQVBJOgpAQCAtMjQ1MCw2ICsyNTAzLDEw IEBAIGNvbW1hbmRzID0gewogICAgICJibG9jay1kZXRhY2giOiB4bV9ibG9ja19kZXRhY2gsCiAg ICAgImJsb2NrLWxpc3QiOiB4bV9ibG9ja19saXN0LAogICAgICJibG9jay1jb25maWd1cmUiOiB4 bV9ibG9ja19jb25maWd1cmUsCisgICAgIyBzY3NpaG9zdAorICAgICJzY3NpaG9zdC1hdHRhY2gi OiB4bV9zY3NpaG9zdF9hdHRhY2gsCisgICAgInNjc2lob3N0LWRldGFjaCI6IHhtX3Njc2lob3N0 X2RldGFjaCwKKyAgICAic2NzaWhvc3QtbGlzdCI6IHhtX3Njc2lob3N0X2xpc3QsCiAgICAgIyBu ZXR3b3JrIChBS0EgdmlmcykKICAgICAibmV0d29yay1hdHRhY2giOiB4bV9uZXR3b3JrX2F0dGFj aCwKICAgICAibmV0d29yay1kZXRhY2giOiB4bV9uZXR3b3JrX2RldGFjaCwKZGlmZiAtciBiNDI3 OGJlYWYzNTQgLXIgMThjOThjODJlNjBlIHhlbi9pbmNsdWRlL3B1YmxpYy9pby92c2NzaWlmLmgK LS0tIC9kZXYvbnVsbAlUaHUgSmFuIDAxIDAwOjAwOjAwIDE5NzAgKzAwMDAKKysrIGIveGVuL2lu Y2x1ZGUvcHVibGljL2lvL3ZzY3NpaWYuaAlUaHUgT2N0IDE4IDE5OjIzOjUyIDIwMDcgKzA5MDAK QEAgLTAsMCArMSwyMzkgQEAKKy8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioKKyAqIHNjc2lpZi5oCisg KiAKKyAqIEJhc2VkIG9uIHRoZSBibGtpZi5oIGNvZGUuCisgKiAKKyAqIFBlcm1pc3Npb24gaXMg aGVyZWJ5IGdyYW50ZWQsIGZyZWUgb2YgY2hhcmdlLCB0byBhbnkgcGVyc29uIG9idGFpbmluZyBh IGNvcHkKKyAqIG9mIHRoaXMgc29mdHdhcmUgYW5kIGFzc29jaWF0ZWQgZG9jdW1lbnRhdGlvbiBm aWxlcyAodGhlICJTb2Z0d2FyZSIpLCB0bworICogZGVhbCBpbiB0aGUgU29mdHdhcmUgd2l0aG91 dCByZXN0cmljdGlvbiwgaW5jbHVkaW5nIHdpdGhvdXQgbGltaXRhdGlvbiB0aGUKKyAqIHJpZ2h0 cyB0byB1c2UsIGNvcHksIG1vZGlmeSwgbWVyZ2UsIHB1Ymxpc2gsIGRpc3RyaWJ1dGUsIHN1Ymxp Y2Vuc2UsIGFuZC9vcgorICogc2VsbCBjb3BpZXMgb2YgdGhlIFNvZnR3YXJlLCBhbmQgdG8gcGVy bWl0IHBlcnNvbnMgdG8gd2hvbSB0aGUgU29mdHdhcmUgaXMKKyAqIGZ1cm5pc2hlZCB0byBkbyBz bywgc3ViamVjdCB0byB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnM6CisgKgorICogVGhlIGFib3Zl IGNvcHlyaWdodCBub3RpY2UgYW5kIHRoaXMgcGVybWlzc2lvbiBub3RpY2Ugc2hhbGwgYmUgaW5j bHVkZWQgaW4KKyAqIGFsbCBjb3BpZXMgb3Igc3Vic3RhbnRpYWwgcG9ydGlvbnMgb2YgdGhlIFNv ZnR3YXJlLgorICoKKyAqIFRIRSBTT0ZUV0FSRSBJUyBQUk9WSURFRCAiQVMgSVMiLCBXSVRIT1VU IFdBUlJBTlRZIE9GIEFOWSBLSU5ELCBFWFBSRVNTIE9SCisgKiBJTVBMSUVELCBJTkNMVURJTkcg QlVUIE5PVCBMSU1JVEVEIFRPIFRIRSBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSwKKyAq IEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFORCBOT05JTkZSSU5HRU1FTlQuIElO IE5PIEVWRU5UIFNIQUxMIFRIRQorICogQVVUSE9SUyBPUiBDT1BZUklHSFQgSE9MREVSUyBCRSBM SUFCTEUgRk9SIEFOWSBDTEFJTSwgREFNQUdFUyBPUiBPVEhFUgorICogTElBQklMSVRZLCBXSEVU SEVSIElOIEFOIEFDVElPTiBPRiBDT05UUkFDVCwgVE9SVCBPUiBPVEhFUldJU0UsIEFSSVNJTkcK KyAqIEZST00sIE9VVCBPRiBPUiBJTiBDT05ORUNUSU9OIFdJVEggVEhFIFNPRlRXQVJFIE9SIFRI RSBVU0UgT1IgT1RIRVIKKyAqIERFQUxJTkdTIElOIFRIRSBTT0ZUV0FSRS4KKyAqCisgKiBDb3B5 cmlnaHQoYykgRlVKSVRTVSBMaW1pdGVkIDIwMDcuCisgKi8KKworI2lmbmRlZiBfX1hFTl9fUFVC TElDX0lPX1NDU0lfSF9fCisjZGVmaW5lIF9fWEVOX19QVUJMSUNfSU9fU0NTSV9IX18KKworI2lu Y2x1ZGUgInJpbmcuaCIKKyNpbmNsdWRlICIuLi9ncmFudF90YWJsZS5oIgorCisjaWZkZWYgQ09O RklHX1hFTl9GQworI2luY2x1ZGUgPHNjc2kvc2NzaV90cmFuc3BvcnQuaD4KKyNpbmNsdWRlIDxz Y3NpL3Njc2lfdHJhbnNwb3J0X2ZjLmg+CisjZW5kaWYKKworI2RlZmluZSBDTU5EX1NDU0kJCQkx CS8qIHNjc2kgKi8KKyNkZWZpbmUgQ01ORF9TQ1NJX1JFU0VUCQkJMgkvKiBzY3NpICovCisKKyNp ZmRlZiBDT05GSUdfWEVOX0ZDCisjZGVmaW5lIENNTkRfR0VUX0hPU1RfUE9SVF9JRAkJMTAxCS8q IGdocGkgKi8KKyNkZWZpbmUgQ01ORF9HRVRfSE9TVF9QT1JUX1RZUEUJCTEwMgkvKiBnaHB0ICov CisjZGVmaW5lIENNTkRfR0VUX0hPU1RfUE9SVF9TVEFURQkxMDMJLyogZ2hwcyAqLworI2RlZmlu ZSBDTU5EX0dFVF9IT1NUX0FDVElWRV9GQzRTCTEwNAkvKiBnaGFmICovCisjZGVmaW5lIENNTkRf R0VUX0hPU1RfU1BFRUQJCTEwNQkvKiBnaHNwICovCisjZGVmaW5lIENNTkRfR0VUX0hPU1RfRkFC UklDX05BTUUJMTA2CS8qIGdoZm4gKi8KKyNkZWZpbmUgQ01ORF9HRVRfSE9TVF9TVEFUUwkJMTA3 CS8qIGdoc3QgKi8KKyNkZWZpbmUgQ01ORF9SRVNFVF9IT1NUX1NUQVRTCQkxMDgJLyogcmhzdCAq LworI2RlZmluZSBDTU5EX0lTU1VFX0hPU1RfTElQCQkxMDkJLyogaWhsaSAqLworI2RlZmluZSBD TU5EX0dFVF9TVEFSR0VUX1BPUlRfSUQJMTIxCS8qIGd0cGkgKi8KKyNkZWZpbmUgQ01ORF9HRVRf U1RBUkdFVF9OT0RFX05BTUUJMTIyCS8qIGd0bm4gKi8KKyNkZWZpbmUgQ01ORF9HRVRfU1RBUkdF VF9QT1JUX05BTUUJMTIzCS8qIGd0cG4gKi8KKyNkZWZpbmUgQ01ORF9HRVRfUlBPUlRfTE9TU19U TU8JCTE0MQkvKiBncGx0ICovCisjZGVmaW5lIENNTkRfU0VUX1JQT1JUX0xPU1NfVE1PCQkxNDIJ Lyogc3BsdCAqLworI2RlZmluZSBDTU5EX0dFVF9JTklUSUFMX1NIT1NUX0FUVFJJQgkxNjEJLyog Z2loYSAqLworI2RlZmluZSBDTU5EX0dFVF9JTklUSUFMX1NUQVJHRVRfQVRUUklCCTE2MgkvKiBn aXRhICovCisjZGVmaW5lIENNTkRfR0VUX0lOSVRJQUxfUlBPUlRfQVRUUklCCTE2MwkvKiBnaXBh ICovCisjZGVmaW5lIENNTkRfR0VUX0ZVTkNUSU9OX1RFTVBMQVRFCTE4MQkvKiBnZnRwICovCisj ZW5kaWYKKworLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorCURlZmluaXRpb24gb2YgUmluZyBTdHJ1Y3R1cmVz CisgICAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tICovCisKKyNkZWZpbmUgREVGQVVMVF9DQU5fUVVFVUUJMjU2Cisj ZGVmaW5lIFZTQ1NJX01BWF9DT01NQU5EX1NJWkUJMTYKKyNkZWZpbmUgU0dfVEFCTEVTSVpFCQkz MgorCisjZGVmaW5lIFNDU0lJRl9SRVFfT0tBWQkJMAorI2RlZmluZSBTQ1NJSUZfQlRGUklOR19C VVNZCTEKKworLyogRGVmaW5pdGlvbiBvZgorICoJdW5pb24gIHZzY3NpaWZfZnRiX3NyaW5nX2Vu dHJ5LAorICoJc3RydWN0IHZzY3NpaWZfZnRiX3NyaW5nLAorICoJc3RydWN0IHZzY3NpaWZfZnRi X2Zyb250X3JpbmcsCisgKglzdHJ1Y3QgdnNjc2lpZl9mdGJfYmFja19yaW5nLAorICoJdnNjc2lp Zl9mdGJfc3JpbmdfdCwKKyAqCXZzY3NpaWZfZnRiX2Zyb250X3JpbmdfdCwKKyAqCXZzY3NpaWZf ZnRiX2JhY2tfcmluZ190CisqLworc3RydWN0IHZzY3NpaWZfZnRiX3JlcXVlc3QgeworCXVpbnQ2 NF90IHJxaWQ7CisJdWludDMyX3QgY21uZDsKKwl1bmlvbiB7CisJCS8qIFNDU0kgKi8KKwkJc3Ry dWN0IHNjc2lpZl9mdGJfcmVxdWVzdCB7CisJCQl1aW50OF90IGNtbmRbVlNDU0lfTUFYX0NPTU1B TkRfU0laRV07CisJCQl1aW50OF90IGNtZF9sZW47CisJCQl1aW50MzJfdCBpZCwgbHVuLCBjaGFu bmVsOworCQkJdWludDE2X3Qgc2NfZGF0YV9kaXJlY3Rpb247CisJCQl1aW50MTZfdCB1c2Vfc2c7 CisJCQl1aW50MTZfdCByZXF1ZXN0X2J1ZmZsZW47CisvKgkJCWludDMyX3QgcmV0cmllczsqLwor CQkJaW50MzJfdCB0aW1lb3V0X3Blcl9jb21tYW5kOworCQkJc3RydWN0IHNjc2lpZl9yZXF1ZXN0 X3NlZ21lbnQgeworCQkJCWdyYW50X3JlZl90IGdyZWY7CisJCQkJdWludDMyX3Qgb2Zmc2V0Owor CQkJCXVpbnQzMl90IGxlbmd0aDsKKwkJCX0gc2VnW1NHX1RBQkxFU0laRV07CisJCX0gc2NzaTsK KyNpZmRlZiBDT05GSUdfWEVOX0ZDCisJCS8qIEdldF9zVGFyZ2V0X1BvcnRfSWQgKi8KKwkJLyog R2V0X3NUYXJnZXRfTm9kZV9OYW1lICovCisJCS8qIEdldF9zVGFyZ2V0X1BvcnRfTmFtZSAqLwor CQlzdHJ1Y3QgeworCQkJdTMyIGNoYW5uZWw7CisJCQl1MzIgaWQ7CisJCX0gZ3RwaSwgZ3Rubiwg Z3RwbjsKKworCQkvKiBHZXRfclBvcnRfTG9zc19UbW8gKi8KKwkJc3RydWN0IHsKKwkJCXU2NCBu b2RlX25hbWU7CisJCQl1NjQgcG9ydF9uYW1lOworCQkJdTMyIHBvcnRfaWQ7CisJCQl1MzIgcm9s ZXM7CisJCX0gZ3BsdDsKKworCQkvKiBTZXRfclBvcnRfTG9zc19UbW8gKi8KKwkJc3RydWN0IHsK KwkJCXU2NCBub2RlX25hbWU7CisJCQl1NjQgcG9ydF9uYW1lOworCQkJdTMyIHBvcnRfaWQ7CisJ CQl1MzIgcm9sZXM7CisJCQl1MzIgdGltZW91dDsKKwkJfSBzcGx0OworI2VuZGlmCisJfSB1Owor fTsKKworc3RydWN0IHZzY3NpaWZfZnRiX3Jlc3BvbnNlIHsKKwl1aW50MTZfdCBzdGF0dXM7CisJ dW5pb24geworCQlzdHJ1Y3Qgc2NzaWlmX2Z0Yl9yZXNwb25zZSB7CisJCX0gc2NzaTsKKwl9IHU7 Cit9OworCitERUZJTkVfUklOR19UWVBFUyh2c2NzaWlmX2Z0Yiwgc3RydWN0IHZzY3NpaWZfZnRi X3JlcXVlc3QsIHN0cnVjdCB2c2NzaWlmX2Z0Yl9yZXNwb25zZSk7CisKKworI2RlZmluZSBTQ1NJ X1NFTlNFX0JVRkZFUlNJWkUgCTk2CisKKy8qIERlZmluaXRpb24gb2YKKyAqCQl1bmlvbiAgdnNj c2lpZl9idGZfc3JpbmdfZW50cnksCisgKgkJc3RydWN0IHZzY3NpaWZfYnRmX3NyaW5nLAorICoJ CXN0cnVjdCB2c2NzaWlmX2J0Zl9mcm9udF9yaW5nLAorICoJCXN0cnVjdCB2c2NzaWlmX2J0Zl9i YWNrX3JpbmcsCisgKgkJdnNjc2lpZl9idGZfc3JpbmdfdCwKKyAqCQl2c2NzaWlmX2J0Zl9mcm9u dF9yaW5nX3QsCisgKgkJdnNjc2lpZl9idGZfYmFja19yaW5nX3QKKyovCitzdHJ1Y3QgdnNjc2lp Zl9idGZfcmVxdWVzdCB7CisJdWludDY0X3QgcnFpZDsKKwlpbnQzMl90ICByc2x0OworCXVuaW9u IHsKKwkJLyogU0NTSSAqLworCQlzdHJ1Y3Qgc2NzaWlmX3Jlc3BvbnNlIHsKKwkJCXVpbnQ2NF90 IHNlbnNlX2xlbjsKKwkJCXVpbnQ4X3Qgc2Vuc2VfYnVmZmVyW1NDU0lfU0VOU0VfQlVGRkVSU0la RV07CisJCX0gc2NzaTsKKworI2lmZGVmIENPTkZJR19YRU5fRkMKKwkJLyogR2V0X0hvc3RfUG9y dF9JZCAqLworCQlzdHJ1Y3QgeworCQkJdTMyIHBvcnRfaWQ7CisJCX0gZ2hwaTsKKworCQkvKiBH ZXRfSG9zdF9Qb3J0X1R5cGUgKi8KKwkJc3RydWN0IHsKKwkJCWVudW0gZmNfcG9ydF90eXBlIHBv cnRfdHlwZTsKKwkJfSBnaHB0OworCisJCS8qIEdldF9Ib3N0X1BvcnRfU3RhdGUgKi8KKwkJc3Ry dWN0IHsKKwkJCWVudW0gZmNfcG9ydF9zdGF0ZSBwb3J0X3N0YXRlOworCQl9IGdocHM7CisKKwkJ LyogR2V0X0hvc3RfQWN0aXZlX0ZjNHMgKi8KKwkJc3RydWN0IHsKKwkJCXU4IGFjdGl2ZV9mYzRz W0ZDX0ZDNF9MSVNUX1NJWkVdOworCQl9IGdoYWY7CisKKwkJLyogR2V0X0hvc3RfU1BlZWQgKi8K KwkJc3RydWN0IHsKKwkJCXUzMiBzcGVlZDsKKwkJfSBnaHNwOworCisJCS8qIEdldF9Ib3N0X0Zh YnJpY19OYW1lICovCisJCXN0cnVjdCB7CisJCQl1NjQgZmFicmljX25hbWU7CisJCX0gZ2hmbjsK KworCQkvKiBHZXRfSG9zdF9TVGF0cyAqLworCQlzdHJ1Y3QgeworCQkJc3RydWN0IGZjX2hvc3Rf c3RhdGlzdGljcyBzdGF0czsKKwkJfSBnaHN0OworCisJCS8qIEdldF9zVGFyZ2V0X1BvcnRfSWQg Ki8KKwkJc3RydWN0IHsKKwkJCXUzMiBwb3J0X2lkOworCQl9IGd0cGk7CisKKwkJLyogR2V0X3NU YXJnZXRfTm9kZV9OYW1lICovCisJCXN0cnVjdCB7CisJCQl1NjQgbm9kZV9uYW1lOworCQl9IGd0 bm47CisKKwkJLyogR2V0X3NUYXJnZXRfUG9ydF9OYW1lICovCisJCXN0cnVjdCB7CisJCQl1NjQg cG9ydF9uYW1lOworCQl9IGd0cG47CisKKwkJLyogR2V0X3JQb3J0X0xvc3NfVG1vICovCisJCXN0 cnVjdCB7CisJCQl1MzIgdGltZW91dDsKKwkJfSBncGx0OworCisJCS8qIFNldF9yUG9ydF9Mb3Nz X1RtbyAqLworCQlzdHJ1Y3QgeworCQkJdTMyIHRpbWVvdXQ7CisJCX0gc3BsdDsKKyNlbmRpZgor CX0gdTsKK307CisKK3N0cnVjdCB2c2NzaWlmX2J0Zl9yZXNwb25zZSB7CisJdW5pb24geworCQlz dHJ1Y3Qgc2NzaWlmX2J0Zl9yZXNwb25zZSB7CisjaWYgMAorCQkJdWludDhfdCBidWZbQlVGRlNJ WkVdOworI2VuZGlmCisJCX0gc2NzaTsKKwl9IHU7Cit9OworCitERUZJTkVfUklOR19UWVBFUyh2 c2NzaWlmX2J0Ziwgc3RydWN0IHZzY3NpaWZfYnRmX3JlcXVlc3QsIHN0cnVjdCB2c2NzaWlmX2J0 Zl9yZXNwb25zZSk7CisKKyNlbmRpZgo= --------_47183B9000000000E905_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 --------_47183B9000000000E905_MULTIPART_MIXED_--