From mboxrd@z Thu Jan 1 00:00:00 1970 From: Liwei Subject: VGA passthrough on unstable Date: Thu, 5 May 2011 19:33:46 +0800 Message-ID: References: Mime-Version: 1.0 Content-Type: multipart/mixed; boundary=0015174a0e763beb6804a285c00d Return-path: In-Reply-To: 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 List-Id: xen-devel@lists.xenproject.org --0015174a0e763beb6804a285c00d Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: quoted-printable (Pardon me if I broke any rules or this post doesn't belong to this list) I forward patched yesterday's copy of the unstable repo in an attempt to get VGA passthrough working for a Nvidia GTX460 on a HVM DomU. (Surprisingly, it wasn't hard at all to get the patches in - getting them to work is another ongoing story) The patches were based on this post: http://wiki.xensource.com/xenwiki/XenVGAPassthrough I dumped the card's BIOS using nvtool as per the post's instructions. The only major change was that the BIOS ROM setup code was shifted into its own file and some adjustment was needed for that. I'll create a new patchset once I get this fully working. I also hope to push this into being accepted by the devs for future releases by allowing the user to configure this option and provide his own BIOS dump (instead of hardcoding everything). My card doesn't seem to support FLR, since xend complains about being unable to reset the device. With or without the qemu-claim-cycle-for-secondary-gfx-passthrough.patch, the secondary graphics card does not show anything at all (maybe because it is behind a PCI-E bridge?), and xl list seems to show the guest consuming all CPU resources. However, using the primary graphics card, again with or without the secondary passthrough patch, it actually managed to partially work booting up the Windows 7 install. It manages to reach the pulsating windows logo before BSOD-ing with 0x0000000A (IRQ_NOT_LESS_OR_EQUAL). Meanwhile, the logs show a lot of: =A0 =A0pt_pci_read_config: Error: Failed to read register with invalid access size alignment. [00:05.0][Offset:0eh][Length:4] =A0 =A0pt_pci_read_config: Error: Failed to read register with invalid access size alignment. [00:06.0][Offset:0eh][Length:4] Reduced the amount of allocated memory to 4096MB will introduce video corruption in the pulsating logo, followed by the same BSOD. Reducing the amount of allocated memory to below 2048MB or 1024MB will cause a 0x000000A5 BSOD (BIOS ACPI not compliant). Attempting to boot the same setup (with 8192MB of memory) with vCPU set to 8 produced slightly different behaviour. Qemu seems to crash and reboot a few seconds after the pulsating windows logo appears (earlier than before the BSOD appeared before). At this point, it should be noted that the 8 vCPU and 8192MB configuration worked with 4.0. I couldn't test it in the patched unstable because VNC will only produce a white screen (wrong VGA BIOS executed?). Attempting to boot Ubuntu also produced similar results, except the log now shows errors similar to (I did not copy out the log before they were overwritten): =A0 =A0Error: Failed to write register with invalid access size The boot up seems to fail at trying to read from the emulated SATA drive though, something about interrupt lost, and keeps on trying again and again forever. With the above tests, I also unscientifically fiddled around with the pci_power_mgmt, pci_msitranslate, hap, hpet, pae, apic, acpi and viridian toggleable settings. I made no functional changes to the patches however, so maybe there was something that I had to change in order to customise it for my card. It'd be great if someone points that out to me if it is true. I cannot use my USB keyboard and mouse at all in all my tests with unstable, USB controller is passed in. USB works on 4.0 in the windows installer, but I haven't tested them before the installer boots, so it may be possible that passthrough is broken with my setup (does the BIOS initialise USB peripherals for use during boot?). So how should I proceed on from here? Setup details as follows: EVGA P55 Classified Intel i7 860 8GB Memory 2x Palit Nvidia GTX460 (Primary and secondary) Debian Squeeze Dom0 is 2.6.32+29 (From repo) PCI devices (Only those bound to xen_pciback are listed): (It should be noted that except for the primary GFX, all other devices are behind a NF200 PCI-E bridge) 0b:00.0 - Secondary GFX 0b:00.1 - Secondary GFX audio 01:00.0 - Primary GFX 01:00.1 - Primary GFX audio 0e:00.0 - Multiport network card 04:00.0 - Singleport network card 00:1a.0 - USB2 root 00:1b.0 - HD audio device 00:1d.0 - USB2 root PCI devices combinations tested (in each case, the audio is passthroughed with the GFX): (OT: Why doesn't multi-device BDF binding work on xen_pciback?) Primary GFX only Secondary GFX only Primary GFX + Secondary GFX Primary GFX + others Secondary GFX + others Primary GFX + Secondary GFX + others Attached: Log files produced by xend and qemu and config files (Sorry that only one set of logs are available, wasn't thinking properly when executing rm *.log) --0015174a0e763beb6804a285c00d Content-Type: application/octet-stream; name="~qemu-dm-W7Test.log" Content-Disposition: attachment; filename="~qemu-dm-W7Test.log" Content-Transfer-Encoding: base64 X-Attachment-Id: f_gn8gjtk70 ZG9taWQ6IDExClVzaW5nIGZpbGUgL2Rldi9tYXBwZXIvVk1TdG9yZS1XN1Rlc3QgaW4gcmVhZC13 cml0ZSBtb2RlClN0cmlwIG9mZiBibGt0YXAgc3ViLXR5cGUgcHJlZml4IHRvIC93Ny5pc28gKGRy diAnYWlvJykKVXNpbmcgZmlsZSAvdzcuaXNvIGluIHJlYWQtb25seSBtb2RlCldhdGNoaW5nIC9s b2NhbC9kb21haW4vMC9kZXZpY2UtbW9kZWwvMTEvbG9nZGlydHkvY21kCldhdGNoaW5nIC9sb2Nh bC9kb21haW4vMC9kZXZpY2UtbW9kZWwvMTEvY29tbWFuZApXYXRjaGluZyAvbG9jYWwvZG9tYWlu LzExL2NwdQpjaGFyIGRldmljZSByZWRpcmVjdGVkIHRvIC9kZXYvcHRzLzMKcWVtdV9tYXBfY2Fj aGVfaW5pdCBucl9idWNrZXRzID0gMTAwMDAgc2l6ZSA0MTk0MzA0CnNoYXJlZCBwYWdlIGF0IHBm biBmZWZmZApidWZmZXJlZCBpbyBwYWdlIGF0IHBmbiBmZWZmYgpHdWVzdCB1dWlkID0gZDA5N2My MzgtNDdlNi00ODgxLWI1MjMtZGQ3ZGEzYmRlZDZhClJlZ2lzdGVyIHhlbiBwbGF0Zm9ybS4KRG9u ZSByZWdpc3RlciBwbGF0Zm9ybS4KcGxhdGZvcm1fZml4ZWRfaW9wb3J0OiBjaGFuZ2VkIHJvL3J3 IHN0YXRlIG9mIFJPTSBtZW1vcnkgYXJlYS4gbm93IGlzIHJ3IHN0YXRlLgp4c19yZWFkKC9sb2Nh bC9kb21haW4vMC9kZXZpY2UtbW9kZWwvMTEveGVuX2V4dGVuZGVkX3Bvd2VyX21nbXQpOiByZWFk IGVycm9yCm1lZGl1bSBjaGFuZ2Ugd2F0Y2ggb24gYGhkYScgKGluZGV4OiAxKTogYWlvOi93Ny5p c28KSS9PIHJlcXVlc3Qgbm90IHJlYWR5OiAwLCBwdHI6IDAsIHBvcnQ6IDAsIGRhdGE6IDAsIGNv dW50OiAwLCBzaXplOiAwCkxvZy1kaXJ0eTogbm8gY29tbWFuZCB5ZXQuCkkvTyByZXF1ZXN0IG5v dCByZWFkeTogMCwgcHRyOiAwLCBwb3J0OiAwLCBkYXRhOiAwLCBjb3VudDogMCwgc2l6ZTogMApJ L08gcmVxdWVzdCBub3QgcmVhZHk6IDAsIHB0cjogMCwgcG9ydDogMCwgZGF0YTogMCwgY291bnQ6 IDAsIHNpemU6IDAKdmNwdS1zZXQ6IHdhdGNoIG5vZGUgZXJyb3IuCkkvTyByZXF1ZXN0IG5vdCBy ZWFkeTogMCwgcHRyOiAwLCBwb3J0OiAwLCBkYXRhOiAwLCBjb3VudDogMCwgc2l6ZTogMAp4c19y ZWFkKC9sb2NhbC9kb21haW4vMTEvbG9nLXRocm90dGxpbmcpOiByZWFkIGVycm9yCnFlbXU6IGln bm9yaW5nIG5vdC11bmRlcnN0b29kIGRyaXZlIGAvbG9jYWwvZG9tYWluLzExL2xvZy10aHJvdHRs aW5nJwptZWRpdW0gY2hhbmdlIHdhdGNoIG9uIGAvbG9jYWwvZG9tYWluLzExL2xvZy10aHJvdHRs aW5nJyAtIHVua25vd24gZGV2aWNlLCBpZ25vcmVkCkkvTyByZXF1ZXN0IG5vdCByZWFkeTogMCwg cHRyOiAwLCBwb3J0OiAwLCBkYXRhOiAwLCBjb3VudDogMCwgc2l6ZTogMApJL08gcmVxdWVzdCBu b3QgcmVhZHk6IDAsIHB0cjogMCwgcG9ydDogMCwgZGF0YTogMCwgY291bnQ6IDAsIHNpemU6IDAK SS9PIHJlcXVlc3Qgbm90IHJlYWR5OiAwLCBwdHI6IDAsIHBvcnQ6IDAsIGRhdGE6IDAsIGNvdW50 OiAwLCBzaXplOiAwCkkvTyByZXF1ZXN0IG5vdCByZWFkeTogMCwgcHRyOiAwLCBwb3J0OiAwLCBk YXRhOiAwLCBjb3VudDogMCwgc2l6ZTogMApkbS1jb21tYW5kOiBob3QgaW5zZXJ0IHBhc3MtdGhy b3VnaCBwY2kgZGV2IApyZWdpc3Rlcl9yZWFsX2RldmljZTogQXNzaWduaW5nIHJlYWwgcGh5c2lj YWwgZGV2aWNlIDAxOjAwLjAgLi4uCnB0X2lvbXVsX2luaXQ6IEVycm9yOiBwdF9pb211bF9pbml0 IGNhbid0IG9wZW4gZmlsZSAvZGV2L3hlbi9wY2lfaW9tdWw6IE5vIHN1Y2ggZmlsZSBvciBkaXJl Y3Rvcnk6IDB4MToweDAuMHgwCnB0X3JlZ2lzdGVyX3JlZ2lvbnM6IElPIHJlZ2lvbiByZWdpc3Rl cmVkIChzaXplPTB4MDIwMDAwMDAgYmFzZV9hZGRyPTB4ZjQwMDAwMDApCnB0X3JlZ2lzdGVyX3Jl Z2lvbnM6IElPIHJlZ2lvbiByZWdpc3RlcmVkIChzaXplPTB4MDgwMDAwMDAgYmFzZV9hZGRyPTB4 YjgwMDAwMGMpCnB0X3JlZ2lzdGVyX3JlZ2lvbnM6IElPIHJlZ2lvbiByZWdpc3RlcmVkIChzaXpl PTB4MDQwMDAwMDAgYmFzZV9hZGRyPTB4YzAwMDAwMGMpCnB0X3JlZ2lzdGVyX3JlZ2lvbnM6IElP IHJlZ2lvbiByZWdpc3RlcmVkIChzaXplPTB4MDAwMDAwODAgYmFzZV9hZGRyPTB4MDAwMDRjMDEp CnB0X3JlZ2lzdGVyX3JlZ2lvbnM6IEV4cGFuc2lvbiBST00gcmVnaXN0ZXJlZCAoc2l6ZT0weDAw MDgwMDAwIGJhc2VfYWRkcj0weGY2MjgwMDAyKQpwY2lsaWI6IENhbm5vdCBvcGVuIC9zeXMvYnVz L3BjaS9kZXZpY2VzLzAwMDA6MDA6MDIuMC9jb25maWcKcGNpbGliOiBDYW5ub3Qgb3BlbiAvc3lz L2J1cy9wY2kvZGV2aWNlcy8wMDAwOjAwOjAyLjAvY29uZmlnCnNldHVwX3ZnYV9wdDogdmdhIGJp b3MgY2hlY2tzdW0gaXMgYWRqdXN0ZWQhCnB0X21zaV9zZXR1cDogbXNpIG1hcHBlZCB3aXRoIHBp cnEgMzcKcGNpX2ludHg6IGludHg9MQpyZWdpc3Rlcl9yZWFsX2RldmljZTogUmVhbCBwaHlzaWNh bCBkZXZpY2UgMDE6MDAuMCByZWdpc3RlcmVkIHN1Y2Nlc3NmdWx5IQpJUlEgdHlwZSA9IE1TSS1J TlR4CmRtLWNvbW1hbmQ6IGhvdCBpbnNlcnQgcGFzcy10aHJvdWdoIHBjaSBkZXYgCnJlZ2lzdGVy X3JlYWxfZGV2aWNlOiBBc3NpZ25pbmcgcmVhbCBwaHlzaWNhbCBkZXZpY2UgMDE6MDAuMSAuLi4K cHRfaW9tdWxfaW5pdDogRXJyb3I6IHB0X2lvbXVsX2luaXQgY2FuJ3Qgb3BlbiBmaWxlIC9kZXYv eGVuL3BjaV9pb211bDogTm8gc3VjaCBmaWxlIG9yIGRpcmVjdG9yeTogMHgxOjB4MC4weDEKcHRf cmVnaXN0ZXJfcmVnaW9uczogSU8gcmVnaW9uIHJlZ2lzdGVyZWQgKHNpemU9MHgwMDAwNDAwMCBi YXNlX2FkZHI9MHhmNjI3YzAwMCkKcHRfbXNpX3NldHVwOiBtc2kgbWFwcGVkIHdpdGggcGlycSAz NgpwY2lfaW50eDogaW50eD0yCnJlZ2lzdGVyX3JlYWxfZGV2aWNlOiBSZWFsIHBoeXNpY2FsIGRl dmljZSAwMTowMC4xIHJlZ2lzdGVyZWQgc3VjY2Vzc2Z1bHkhCklSUSB0eXBlID0gTVNJLUlOVHgK ZG0tY29tbWFuZDogaG90IGluc2VydCBwYXNzLXRocm91Z2ggcGNpIGRldiAKcmVnaXN0ZXJfcmVh bF9kZXZpY2U6IEFzc2lnbmluZyByZWFsIHBoeXNpY2FsIGRldmljZSAwZTowMC4wIC4uLgpwdF9p b211bF9pbml0OiBFcnJvcjogcHRfaW9tdWxfaW5pdCBjYW4ndCBvcGVuIGZpbGUgL2Rldi94ZW4v cGNpX2lvbXVsOiBObyBzdWNoIGZpbGUgb3IgZGlyZWN0b3J5OiAweGU6MHgwLjB4MApwdF9yZWdp c3Rlcl9yZWdpb25zOiBJTyByZWdpb24gcmVnaXN0ZXJlZCAoc2l6ZT0weDAwMDA0MDAwIGJhc2Vf YWRkcj0weGZiYmZjMDA0KQpwdF9yZWdpc3Rlcl9yZWdpb25zOiBJTyByZWdpb24gcmVnaXN0ZXJl ZCAoc2l6ZT0weDAwMDAwMTAwIGJhc2VfYWRkcj0weDAwMDBiODAxKQpwdF9yZWdpc3Rlcl9yZWdp b25zOiBFeHBhbnNpb24gUk9NIHJlZ2lzdGVyZWQgKHNpemU9MHgwMDAyMDAwMCBiYXNlX2FkZHI9 MHhmYmJjMDAwMCkKcHRfbXNpX3NldHVwOiBtc2kgbWFwcGVkIHdpdGggcGlycSAzNQpwY2lfaW50 eDogaW50eD0xCnJlZ2lzdGVyX3JlYWxfZGV2aWNlOiBSZWFsIHBoeXNpY2FsIGRldmljZSAwZTow MC4wIHJlZ2lzdGVyZWQgc3VjY2Vzc2Z1bHkhCklSUSB0eXBlID0gTVNJLUlOVHgKZG0tY29tbWFu ZDogaG90IGluc2VydCBwYXNzLXRocm91Z2ggcGNpIGRldiAKcmVnaXN0ZXJfcmVhbF9kZXZpY2U6 IEFzc2lnbmluZyByZWFsIHBoeXNpY2FsIGRldmljZSAwNDowMC4wIC4uLgpwdF9pb211bF9pbml0 OiBFcnJvcjogcHRfaW9tdWxfaW5pdCBjYW4ndCBvcGVuIGZpbGUgL2Rldi94ZW4vcGNpX2lvbXVs OiBObyBzdWNoIGZpbGUgb3IgZGlyZWN0b3J5OiAweDQ6MHgwLjB4MApwdF9yZWdpc3Rlcl9yZWdp b25zOiBJTyByZWdpb24gcmVnaXN0ZXJlZCAoc2l6ZT0weDAwMDAxMDAwIGJhc2VfYWRkcj0weGY3 M2ZmMDA0KQpwdF9yZWdpc3Rlcl9yZWdpb25zOiBJTyByZWdpb24gcmVnaXN0ZXJlZCAoc2l6ZT0w eDAwODAwMDAwIGJhc2VfYWRkcj0weGY2ODAwMDA0KQpwdF9yZWdpc3Rlcl9yZWdpb25zOiBJTyBy ZWdpb24gcmVnaXN0ZXJlZCAoc2l6ZT0weDAwMDAxMDAwIGJhc2VfYWRkcj0weGY3M2ZlMDA0KQpw dF9yZWdpc3Rlcl9yZWdpb25zOiBFeHBhbnNpb24gUk9NIHJlZ2lzdGVyZWQgKHNpemU9MHgwMDA0 MDAwMCBiYXNlX2FkZHI9MHhmNzM4MDAwMCkKcHRfbXNpeF9pbml0OiBnZXQgTVNJLVggdGFibGUg YmFyIGJhc2UgZjczZmUwMDAKcHRfbXNpeF9pbml0OiB0YWJsZV9vZmYgPSAwLCB0b3RhbF9lbnRy aWVzID0gMzIKcHRfbXNpeF9pbml0OiBlcnJubyA9IDIKcHRfbXNpeF9pbml0OiBtYXBwaW5nIHBo eXNpY2FsIE1TSS1YIHRhYmxlIHRvIDdmNDk2MDZkNjAwMApwdF9tc2lfc2V0dXA6IG1zaSBtYXBw ZWQgd2l0aCBwaXJxIDM0CnBjaV9pbnR4OiBpbnR4PTEKcmVnaXN0ZXJfcmVhbF9kZXZpY2U6IFJl YWwgcGh5c2ljYWwgZGV2aWNlIDA0OjAwLjAgcmVnaXN0ZXJlZCBzdWNjZXNzZnVseSEKSVJRIHR5 cGUgPSBNU0ktSU5UeApkbS1jb21tYW5kOiBob3QgaW5zZXJ0IHBhc3MtdGhyb3VnaCBwY2kgZGV2 IApyZWdpc3Rlcl9yZWFsX2RldmljZTogQXNzaWduaW5nIHJlYWwgcGh5c2ljYWwgZGV2aWNlIDAw OjFhLjAgLi4uCnB0X2lvbXVsX2luaXQ6IEVycm9yOiBwdF9pb211bF9pbml0IGNhbid0IG9wZW4g ZmlsZSAvZGV2L3hlbi9wY2lfaW9tdWw6IE5vIHN1Y2ggZmlsZSBvciBkaXJlY3Rvcnk6IDB4MDow eDFhLjB4MApwdF9yZWdpc3Rlcl9yZWdpb25zOiBJTyByZWdpb24gcmVnaXN0ZXJlZCAoc2l6ZT0w eDAwMDAwNDAwIGJhc2VfYWRkcj0weGZiZmZjMDAwKQpwY2lfaW50eDogaW50eD0xCnJlZ2lzdGVy X3JlYWxfZGV2aWNlOiBSZWFsIHBoeXNpY2FsIGRldmljZSAwMDoxYS4wIHJlZ2lzdGVyZWQgc3Vj Y2Vzc2Z1bHkhCklSUSB0eXBlID0gSU5UeApkbS1jb21tYW5kOiBob3QgaW5zZXJ0IHBhc3MtdGhy b3VnaCBwY2kgZGV2IApyZWdpc3Rlcl9yZWFsX2RldmljZTogQXNzaWduaW5nIHJlYWwgcGh5c2lj YWwgZGV2aWNlIDAwOjFiLjAgLi4uCnB0X2lvbXVsX2luaXQ6IEVycm9yOiBwdF9pb211bF9pbml0 IGNhbid0IG9wZW4gZmlsZSAvZGV2L3hlbi9wY2lfaW9tdWw6IE5vIHN1Y2ggZmlsZSBvciBkaXJl Y3Rvcnk6IDB4MDoweDFiLjB4MApwdF9yZWdpc3Rlcl9yZWdpb25zOiBJTyByZWdpb24gcmVnaXN0 ZXJlZCAoc2l6ZT0weDAwMDA0MDAwIGJhc2VfYWRkcj0weGZiZmY4MDA0KQpwdF9tc2lfc2V0dXA6 IG1zaSBtYXBwZWQgd2l0aCBwaXJxIDMzCnBjaV9pbnR4OiBpbnR4PTEKcmVnaXN0ZXJfcmVhbF9k ZXZpY2U6IFJlYWwgcGh5c2ljYWwgZGV2aWNlIDAwOjFiLjAgcmVnaXN0ZXJlZCBzdWNjZXNzZnVs eSEKSVJRIHR5cGUgPSBNU0ktSU5UeApkbS1jb21tYW5kOiBob3QgaW5zZXJ0IHBhc3MtdGhyb3Vn aCBwY2kgZGV2IApyZWdpc3Rlcl9yZWFsX2RldmljZTogQXNzaWduaW5nIHJlYWwgcGh5c2ljYWwg ZGV2aWNlIDAwOjFkLjAgLi4uCnB0X2lvbXVsX2luaXQ6IEVycm9yOiBwdF9pb211bF9pbml0IGNh bid0IG9wZW4gZmlsZSAvZGV2L3hlbi9wY2lfaW9tdWw6IE5vIHN1Y2ggZmlsZSBvciBkaXJlY3Rv cnk6IDB4MDoweDFkLjB4MApwdF9yZWdpc3Rlcl9yZWdpb25zOiBJTyByZWdpb24gcmVnaXN0ZXJl ZCAoc2l6ZT0weDAwMDAwNDAwIGJhc2VfYWRkcj0weGZiZmY2MDAwKQpwY2lfaW50eDogaW50eD0x CnJlZ2lzdGVyX3JlYWxfZGV2aWNlOiBSZWFsIHBoeXNpY2FsIGRldmljZSAwMDoxZC4wIHJlZ2lz dGVyZWQgc3VjY2Vzc2Z1bHkhCklSUSB0eXBlID0gSU5UeApwdF9iYXJfcmVnX3JlYWQ6IGZpcnN0 IHJlYWQgQkFScyBvZiBnZngKcHRfaW9tZW1fbWFwOiBlX3BoeXM9ZjQwMDAwMDAgbWFkZHI9ZjQw MDAwMDAgdHlwZT0wIGxlbj0zMzU1NDQzMiBpbmRleD0wIGZpcnN0X21hcD0xCnB0X2Jhcl9yZWdf cmVhZDogZmlyc3QgcmVhZCBCQVJzIG9mIGdmeApwdF9pb21lbV9tYXA6IGVfcGh5cz1iODAwMDAw MCBtYWRkcj1iODAwMDAwMCB0eXBlPTggbGVuPTEzNDIxNzcyOCBpbmRleD0xIGZpcnN0X21hcD0x CnB0X2Jhcl9yZWdfcmVhZDogZmlyc3QgcmVhZCBCQVJzIG9mIGdmeApwdF9iYXJfcmVnX3JlYWQ6 IGZpcnN0IHJlYWQgQkFScyBvZiBnZngKcHRfaW9tZW1fbWFwOiBlX3BoeXM9YzAwMDAwMDAgbWFk ZHI9YzAwMDAwMDAgdHlwZT04IGxlbj02NzEwODg2NCBpbmRleD0zIGZpcnN0X21hcD0xCnB0X2Jh cl9yZWdfcmVhZDogZmlyc3QgcmVhZCBCQVJzIG9mIGdmeApwdF9iYXJfcmVnX3JlYWQ6IGZpcnN0 IHJlYWQgQkFScyBvZiBnZngKcHRfaW9wb3J0X21hcDogZV9waHlzPTRjMDAgcGlvX2Jhc2U9NGMw MCBsZW49MTI4IGluZGV4PTUgZmlyc3RfbWFwPTEKcHRfaW9tZW1fbWFwOiBlX3BoeXM9ZjEwMDAw MDAgbWFkZHI9ZjY4MDAwMDAgdHlwZT0wIGxlbj04Mzg4NjA4IGluZGV4PTIgZmlyc3RfbWFwPTEK cHRfaW9tZW1fbWFwOiBlX3BoeXM9ZjE4NjAwMDAgbWFkZHI9ZjYyN2MwMDAgdHlwZT0wIGxlbj0x NjM4NCBpbmRleD0wIGZpcnN0X21hcD0xCnB0X2lvbWVtX21hcDogZV9waHlzPWYxODY0MDAwIG1h ZGRyPWZiYmZjMDAwIHR5cGU9MCBsZW49MTYzODQgaW5kZXg9MCBmaXJzdF9tYXA9MQpwdF9pb21l bV9tYXA6IGVfcGh5cz1mMTg2ODAwMCBtYWRkcj1mYmZmODAwMCB0eXBlPTAgbGVuPTE2Mzg0IGlu ZGV4PTAgZmlyc3RfbWFwPTEKcHRfaW9tZW1fbWFwOiBlX3BoeXM9ZjE4NmMwMDAgbWFkZHI9Zjcz ZmYwMDAgdHlwZT0wIGxlbj00MDk2IGluZGV4PTAgZmlyc3RfbWFwPTEKcHRfaW9tZW1fbWFwOiBl X3BoeXM9ZjE4NmQwMDAgbWFkZHI9ZjczZmUwMDAgdHlwZT0wIGxlbj00MDk2IGluZGV4PTQgZmly c3RfbWFwPTEKcHRfaW9tZW1fbWFwOiBlX3BoeXM9ZjE4NmUwMDAgbWFkZHI9ZmJmZmMwMDAgdHlw ZT0wIGxlbj00MDk2IGluZGV4PTAgZmlyc3RfbWFwPTEKcHRfaW9tZW1fbWFwOiBlX3BoeXM9ZjE4 NmYwMDAgbWFkZHI9ZmJmZjYwMDAgdHlwZT0wIGxlbj00MDk2IGluZGV4PTAgZmlyc3RfbWFwPTEK cHRfaW9wb3J0X21hcDogZV9waHlzPWMyMDAgcGlvX2Jhc2U9YjgwMCBsZW49MjU2IGluZGV4PTIg Zmlyc3RfbWFwPTEKcGxhdGZvcm1fZml4ZWRfaW9wb3J0OiBjaGFuZ2VkIHJvL3J3IHN0YXRlIG9m IFJPTSBtZW1vcnkgYXJlYS4gbm93IGlzIHJ3IHN0YXRlLgpwbGF0Zm9ybV9maXhlZF9pb3BvcnQ6 IGNoYW5nZWQgcm8vcncgc3RhdGUgb2YgUk9NIG1lbW9yeSBhcmVhLiBub3cgaXMgcm8gc3RhdGUu CnB0X3BjaV9yZWFkX2NvbmZpZzogRXJyb3I6IEZhaWxlZCB0byByZWFkIHJlZ2lzdGVyIHdpdGgg aW52YWxpZCBhY2Nlc3Mgc2l6ZSBhbGlnbm1lbnQuIFswMDowNS4wXVtPZmZzZXQ6MGVoXVtMZW5n dGg6NF0KcHRfcGNpX3JlYWRfY29uZmlnOiBFcnJvcjogRmFpbGVkIHRvIHJlYWQgcmVnaXN0ZXIg d2l0aCBpbnZhbGlkIGFjY2VzcyBzaXplIGFsaWdubWVudC4gWzAwOjA1LjBdW09mZnNldDowZWhd W0xlbmd0aDo0XQpwdF9wY2lfcmVhZF9jb25maWc6IEVycm9yOiBGYWlsZWQgdG8gcmVhZCByZWdp c3RlciB3aXRoIGludmFsaWQgYWNjZXNzIHNpemUgYWxpZ25tZW50LiBbMDA6MDUuMF1bT2Zmc2V0 OjBlaF1bTGVuZ3RoOjRdCnB0X3BjaV9yZWFkX2NvbmZpZzogRXJyb3I6IEZhaWxlZCB0byByZWFk IHJlZ2lzdGVyIHdpdGggaW52YWxpZCBhY2Nlc3Mgc2l6ZSBhbGlnbm1lbnQuIFswMDowNS4wXVtP ZmZzZXQ6MGVoXVtMZW5ndGg6NF0KcHRfcGNpX3JlYWRfY29uZmlnOiBFcnJvcjogRmFpbGVkIHRv IHJlYWQgcmVnaXN0ZXIgd2l0aCBpbnZhbGlkIGFjY2VzcyBzaXplIGFsaWdubWVudC4gWzAwOjA1 LjBdW09mZnNldDowZWhdW0xlbmd0aDo0XQpwdF9wY2lfcmVhZF9jb25maWc6IEVycm9yOiBGYWls ZWQgdG8gcmVhZCByZWdpc3RlciB3aXRoIGludmFsaWQgYWNjZXNzIHNpemUgYWxpZ25tZW50LiBb MDA6MDUuMF1bT2Zmc2V0OjBlaF1bTGVuZ3RoOjRdCnB0X3BjaV9yZWFkX2NvbmZpZzogRXJyb3I6 IEZhaWxlZCB0byByZWFkIHJlZ2lzdGVyIHdpdGggaW52YWxpZCBhY2Nlc3Mgc2l6ZSBhbGlnbm1l bnQuIFswMDowNS4wXVtPZmZzZXQ6MGVoXVtMZW5ndGg6NF0KcHRfcGNpX3JlYWRfY29uZmlnOiBF cnJvcjogRmFpbGVkIHRvIHJlYWQgcmVnaXN0ZXIgd2l0aCBpbnZhbGlkIGFjY2VzcyBzaXplIGFs aWdubWVudC4gWzAwOjA2LjBdW09mZnNldDowZWhdW0xlbmd0aDo0XQpwdF9wY2lfcmVhZF9jb25m aWc6IEVycm9yOiBGYWlsZWQgdG8gcmVhZCByZWdpc3RlciB3aXRoIGludmFsaWQgYWNjZXNzIHNp emUgYWxpZ25tZW50LiBbMDA6MDYuMF1bT2Zmc2V0OjBlaF1bTGVuZ3RoOjRdCnB0X3BjaV9yZWFk X2NvbmZpZzogRXJyb3I6IEZhaWxlZCB0byByZWFkIHJlZ2lzdGVyIHdpdGggaW52YWxpZCBhY2Nl c3Mgc2l6ZSBhbGlnbm1lbnQuIFswMDowNi4wXVtPZmZzZXQ6MGVoXVtMZW5ndGg6NF0KcHRfcGNp X3JlYWRfY29uZmlnOiBFcnJvcjogRmFpbGVkIHRvIHJlYWQgcmVnaXN0ZXIgd2l0aCBpbnZhbGlk IGFjY2VzcyBzaXplIGFsaWdubWVudC4gWzAwOjA2LjBdW09mZnNldDowZWhdW0xlbmd0aDo0XQpw dF9wY2lfcmVhZF9jb25maWc6IEVycm9yOiBGYWlsZWQgdG8gcmVhZCByZWdpc3RlciB3aXRoIGlu dmFsaWQgYWNjZXNzIHNpemUgYWxpZ25tZW50LiBbMDA6MDYuMF1bT2Zmc2V0OjBlaF1bTGVuZ3Ro OjRdCnB0X3BjaV9yZWFkX2NvbmZpZzogRXJyb3I6IEZhaWxlZCB0byByZWFkIHJlZ2lzdGVyIHdp dGggaW52YWxpZCBhY2Nlc3Mgc2l6ZSBhbGlnbm1lbnQuIFswMDowNi4wXVtPZmZzZXQ6MGVoXVtM ZW5ndGg6NF0KcHRfcGNpX3JlYWRfY29uZmlnOiBFcnJvcjogRmFpbGVkIHRvIHJlYWQgcmVnaXN0 ZXIgd2l0aCBpbnZhbGlkIGFjY2VzcyBzaXplIGFsaWdubWVudC4gWzAwOjA2LjBdW09mZnNldDow ZWhdW0xlbmd0aDo0XQo= --0015174a0e763beb6804a285c00d Content-Type: application/octet-stream; name="~W7Test.cfg" Content-Disposition: attachment; filename="~W7Test.cfg" Content-Transfer-Encoding: base64 X-Attachment-Id: f_gn8gjtp81 I2tlcm5lbCA9ICIvdXNyL2xpYi94ZW4vYm9vdC9odm1sb2FkZXIiDQpidWlsZGVyPSdodm0nDQpt ZW1vcnkgPSA4MTkyDQoNCnZjcHVzID0gOA0KDQojIFNob3VsZCBiZSBhdCBsZWFzdCAyS0IgcGVy IE1CIG9mIGRvbWFpbiBtZW1vcnksIHBsdXMgYSBmZXcgTUIgcGVyIHZjcHUuDQpzaGFkb3dfbWVt b3J5ID0gMzINCm5hbWUgPSAiVzdUZXN0Ig0KdmlmID0gWyAndHlwZT1pb2VtdSwgYnJpZGdlPXhl bmJyMCcgXQ0KdmlyaWRpYW4gPSAxDQphY3BpID0gMQ0KYXBpYyA9IDENCnBhZSA9IDENCmhwZXQg PSAxDQpoYXAgPSAxDQpkaXNrID0gWyAncGh5Oi9kZXYvbWFwcGVyL1ZNU3RvcmUtVzdUZXN0LGhk Yix3JywgJ2ZpbGU6L21udC9jZHNlcnYvdzcuaXNvLGhkYTpjZHJvbSxyJyBdDQoNCiNkZXZpY2Vf bW9kZWwgPSAiL3Vzci9saWI2NC94ZW4vYmluL3FlbXUtZG0iDQoNCiMtLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLQ0KIyBib290IG9uIGZsb3BweSAoYSksIGhhcmQgZGlzayAoYykgb3IgQ0QtUk9NIChkKSAN CiMgZGVmYXVsdDogaGFyZCBkaXNrLCBjZC1yb20sIGZsb3BweQ0KYm9vdD0iY2QiDQpzZGw9MA0K dm5jPTENCnZuY2NvbnNvbGU9MQ0Kdm5jcGFzc3dkPScnDQoNCnNlcmlhbD0ncHR5Jw0KdXNiZGV2 aWNlPSd0YWJsZXQnDQoNCmdmeF9wYXNzdGhydSA9IDENCiNwY2kgPSBbICcwMTowMC4wJywgJzAx OjAwLjEnIF0NCiNwY2kgPSBbICcwMTowMC4wJywgJzAxOjAwLjEnLCAnMGU6MDAuMCcsICcwNDow MC4wJywgJzAwOjFhLjAnLCAnMDA6MWIuMCcsICcwMDoxZC4wJyBdDQoNCnBjaSA9IFsgJzBiOjAw LjAnLCAnMGI6MDAuMScgXQ0KI3BjaSA9IFsgJzBiOjAwLjAnLCAnMGI6MDAuMScsICcwZTowMC4w JywgJzA0OjAwLjAnLCAnMDA6MWEuMCcsICcwMDoxYi4wJywgJzAwOjFkLjAnIF0NCiNwY2kgPSBb ICcwYjowMC4wJywgJzBiOjAwLjEnLCAnMDE6MDAuMCcsICcwMTowMC4xJywgJzBlOjAwLjAnLCAn MDQ6MDAuMCcsICcwMDoxYS4wJywgJzAwOjFiLjAnLCAnMDA6MWQuMCcgXQ0KDQojcGNpID0gWyAn MGU6MDAuMCcsICcwNDowMC4wJywgJzAwOjFhLjAnLCAnMDA6MWIuMCcsICcwMDoxZC4wJyBdDQpw Y2lfbXNpdHJhbnNsYXRlID0gMQ0KcGNpX3Bvd2VyX21nbXQgPSAxDQo= --0015174a0e763beb6804a285c00d Content-Type: application/octet-stream; name="~xend-config.sxp" Content-Disposition: attachment; filename="~xend-config.sxp" Content-Transfer-Encoding: base64 X-Attachment-Id: f_gn8gjtrz3 IyAtKi0gc2ggLSotCgojCiMgWGVuZCBjb25maWd1cmF0aW9uIGZpbGUuCiMKCiMgVGhpcyBleGFt cGxlIGNvbmZpZ3VyYXRpb24gaXMgYXBwcm9wcmlhdGUgZm9yIGFuIGluc3RhbGxhdGlvbiB0aGF0 IAojIHV0aWxpemVzIGEgYnJpZGdlZCBuZXR3b3JrIGNvbmZpZ3VyYXRpb24uIEFjY2VzcyB0byB4 ZW5kIHZpYSBodHRwCiMgaXMgZGlzYWJsZWQuICAKCiMgQ29tbWVudGVkIG91dCBlbnRyaWVzIHNo b3cgdGhlIGRlZmF1bHQgZm9yIHRoYXQgZW50cnksIHVubGVzcyBvdGhlcndpc2UKIyBzcGVjaWZp ZWQuCgojKGxvZ2ZpbGUgL3Zhci9sb2cveGVuL3hlbmQubG9nKQojKGxvZ2xldmVsIERFQlVHKQoK IyBVbmNvbW1lbnQgdGhlIGxpbmUgYmVsb3cuICBTZXQgdGhlIHZhbHVlIHRvIGZsYXNrLCBhY20s IG9yIGR1bW15IHRvIAojIHNlbGVjdCBhIHNlY3VyaXR5IG1vZHVsZS4KCiMoeHNtX21vZHVsZV9u YW1lIGR1bW15KQoKIyBUaGUgWGVuLUFQSSBzZXJ2ZXIgY29uZmlndXJhdGlvbi4KIwojIFRoaXMg dmFsdWUgY29uZmlndXJlcyB0aGUgcG9ydHMsIGludGVyZmFjZXMsIGFuZCBhY2Nlc3MgY29udHJv bHMgZm9yIHRoZQojIFhlbi1BUEkgc2VydmVyLiAgRWFjaCBlbnRyeSBpbiB0aGUgbGlzdCBzdGFy dHMgd2l0aCBlaXRoZXIgdW5peCwgYSBwb3J0CiMgbnVtYmVyLCBvciBhbiBhZGRyZXNzOnBvcnQg cGFpci4gIElmIHRoaXMgaXMgInVuaXgiLCB0aGVuIGEgVURQIHNvY2tldCBpcwojIG9wZW5lZCwg YW5kIHRoaXMgZW50cnkgYXBwbGllcyB0byB0aGF0LiAgSWYgaXQgaXMgYSBwb3J0LCB0aGVuIFhl bmQgd2lsbAojIGxpc3RlbiBvbiBhbGwgaW50ZXJmYWNlcyBvbiB0aGF0IFRDUCBwb3J0LCBhbmQg aWYgaXQgaXMgYW4gYWRkcmVzczpwb3J0CiMgcGFpciwgdGhlbiBYZW5kIHdpbGwgbGlzdGVuIG9u IHRoZSBzcGVjaWZpZWQgcG9ydCwgdXNpbmcgdGhlIGludGVyZmFjZSB3aXRoCiMgdGhlIHNwZWNp ZmllZCBhZGRyZXNzLgojCiMgVGhlIHN1YnNlcXVlbnQgc3RyaW5nIGNvbmZpZ3VyZXMgdGhlIHVz ZXItYmFzZWQgYWNjZXNzIGNvbnRyb2wgZm9yIHRoZQojIGxpc3RlbmVyIGluIHF1ZXN0aW9uLiAg VGhpcyBjYW4gYmUgb25lIG9mICJub25lIiBvciAicGFtIiwgaW5kaWNhdGluZyBlaXRoZXIKIyB0 aGF0IHVzZXJzIHNob3VsZCBiZSBhbGxvd2VkIGFjY2VzcyB1bmNvbmRpdGlvbmFsbHksIG9yIHRo YXQgdGhlIGxvY2FsCiMgUGx1Z2dhYmxlIEF1dGhlbnRpY2F0aW9uIE1vZHVsZXMgY29uZmlndXJh dGlvbiBzaG91bGQgYmUgdXNlZC4gIElmIHRoaXMKIyBzdHJpbmcgaXMgbWlzc2luZyBvciBlbXB0 eSwgdGhlbiAicGFtIiBpcyB1c2VkLgojCiMgVGhlIGZpbmFsIHN0cmluZyBnaXZlcyB0aGUgaG9z dC1iYXNlZCBhY2Nlc3MgY29udHJvbCBmb3IgdGhhdCBsaXN0ZW5lci4gSWYKIyB0aGlzIGlzIG1p c3Npbmcgb3IgZW1wdHksIHRoZW4gYWxsIGNvbm5lY3Rpb25zIGFyZSBhY2NlcHRlZC4gIE90aGVy d2lzZSwKIyB0aGlzIHNob3VsZCBiZSBhIHNwYWNlLXNlcGFyYXRlZCBzZXF1ZW5jZSBvZiByZWd1 bGFyIGV4cHJlc3Npb25zOyBhbnkgaG9zdAojIHdpdGggYSBmdWxseS1xdWFsaWZpZWQgZG9tYWlu IG5hbWUgb3IgYW4gSVAgYWRkcmVzcyB0aGF0IG1hdGNoZXMgb25lIG9mCiMgdGhlc2UgcmVndWxh ciBleHByZXNzaW9ucyB3aWxsIGJlIGFjY2VwdGVkLgojCiMgRXhhbXBsZTogbGlzdGVuIG9uIFRD UCBwb3J0IDkzNjMgb24gYWxsIGludGVyZmFjZXMsIGFjY2VwdGluZyBjb25uZWN0aW9ucwojIG9u bHkgZnJvbSBtYWNoaW5lcyBpbiBleGFtcGxlLmNvbSBvciBsb2NhbGhvc3QsIGFuZCBhbGxvdyBh Y2Nlc3MgdGhyb3VnaAojIHRoZSB1bml4IGRvbWFpbiBzb2NrZXQgdW5jb25kaXRpb25hbGx5Ogoj CiMgICAoeGVuLWFwaS1zZXJ2ZXIgKCg5MzYzIHBhbSAnXmxvY2FsaG9zdCQgZXhhbXBsZVxcLmNv bSQnKQojICAgICAgICAgICAgICAgICAgICAodW5peCBub25lKSkpCiMKIyBPcHRpb25hbGx5LCB0 aGUgVENQIFhlbi1BUEkgc2VydmVyIGNhbiB1c2UgU1NMIGJ5IHNwZWNpZnlpbmcgdGhlIHByaXZh dGUKIyBrZXkgYW5kIGNlcnRpZmljYXRlIGxvY2F0aW9uOgojCiMgICAgICAgICAgICAgICAgICAg ICg5MzY3IHBhbSAnJyB4ZW4tYXBpLmtleSB4ZW4tYXBpLmNydCkKIwojIERlZmF1bHQ6CiMgICAo eGVuLWFwaS1zZXJ2ZXIgKCh1bml4KSkpCgoKIyh4ZW5kLWh0dHAtc2VydmVyIG5vKQojKHhlbmQt dW5peC1zZXJ2ZXIgbm8pCiMoeGVuZC10Y3AteG1scnBjLXNlcnZlciBubykKIyh4ZW5kLXVuaXgt eG1scnBjLXNlcnZlciB5ZXMpCiMoeGVuZC1yZWxvY2F0aW9uLXNlcnZlciBubykKKHhlbmQtcmVs b2NhdGlvbi1zZXJ2ZXIgeWVzKQojKHhlbmQtcmVsb2NhdGlvbi1zc2wtc2VydmVyIG5vKQojKHhl bmQtdWRldi1ldmVudC1zZXJ2ZXIgbm8pCgojKHhlbmQtdW5peC1wYXRoIC92YXIvbGliL3hlbmQv eGVuZC1zb2NrZXQpCgoKIyBBZGRyZXNzIGFuZCBwb3J0IHhlbmQgc2hvdWxkIHVzZSBmb3IgdGhl IGxlZ2FjeSBUQ1AgWE1MUlBDIGludGVyZmFjZSwgCiMgaWYgeGVuZC10Y3AteG1scnBjLXNlcnZl ciBpcyBzZXQuCiMoeGVuZC10Y3AteG1scnBjLXNlcnZlci1hZGRyZXNzICdsb2NhbGhvc3QnKQoj KHhlbmQtdGNwLXhtbHJwYy1zZXJ2ZXItcG9ydCA4MDA2KQoKIyBTU0wga2V5IGFuZCBjZXJ0aWZp Y2F0ZSB0byB1c2UgZm9yIHRoZSBsZWdhY3kgVENQIFhNTFJQQyBpbnRlcmZhY2UuCiMgU2V0dGlu ZyB0aGVzZSB3aWxsIG1lYW4gdGhhdCB0aGlzIHBvcnQgc2VydmVzIG9ubHkgU1NMIGNvbm5lY3Rp b25zIGFzCiMgb3Bwb3NlZCB0byBwbGFpbnRleHQgb25lcy4KIyh4ZW5kLXRjcC14bWxycGMtc2Vy dmVyLXNzbC1rZXktZmlsZSAgeG1scnBjLmtleSkKIyh4ZW5kLXRjcC14bWxycGMtc2VydmVyLXNz bC1jZXJ0LWZpbGUgeG1scnBjLmNydCkKCgojIFBvcnQgeGVuZCBzaG91bGQgdXNlIGZvciB0aGUg SFRUUCBpbnRlcmZhY2UsIGlmIHhlbmQtaHR0cC1zZXJ2ZXIgaXMgc2V0LgojKHhlbmQtcG9ydCAg ICAgICAgICAgIDgwMDApCgojIFBvcnQgeGVuZCBzaG91bGQgdXNlIGZvciB0aGUgcmVsb2NhdGlv biBpbnRlcmZhY2UsIGlmIHhlbmQtcmVsb2NhdGlvbi1zZXJ2ZXIKIyBpcyBzZXQuCiMoeGVuZC1y ZWxvY2F0aW9uLXBvcnQgODAwMikKCiMgUG9ydCB4ZW5kIHNob3VsZCB1c2UgZm9yIHRoZSBzc2wg cmVsb2NhdGlvbiBpbnRlcmZhY2UsIGlmCiMgeGVuZC1yZWxvY2F0aW9uLXNzbC1zZXJ2ZXIgaXMg c2V0LgojKHhlbmQtcmVsb2NhdGlvbi1zc2wtcG9ydCA4MDAzKQoKIyBTU0wga2V5IGFuZCBjZXJ0 aWZpY2F0ZSB0byB1c2UgZm9yIHRoZSBzc2wgcmVsb2NhdGlvbiBpbnRlcmZhY2UsIGlmCiMgeGVu ZC1yZWxvY2F0aW9uLXNzbC1zZXJ2ZXIgaXMgc2V0LgojKHhlbmQtcmVsb2NhdGlvbi1zZXJ2ZXIt c3NsLWtleS1maWxlICAgeG1scnBjLmtleSkKIyh4ZW5kLXJlbG9jYXRpb24tc2VydmVyLXNzbC1j ZXJ0LWZpbGUgIHhtbHJwYy5jcnQpCgojIFdoZXRoZXIgdG8gdXNlIHNzbCBhcyBkZWZhdWx0IHdo ZW4gcmVsb2NhdGluZy4KIyh4ZW5kLXJlbG9jYXRpb24tc3NsIG5vKQoKIyBBZGRyZXNzIHhlbmQg c2hvdWxkIGxpc3RlbiBvbiBmb3IgSFRUUCBjb25uZWN0aW9ucywgaWYgeGVuZC1odHRwLXNlcnZl ciBpcwojIHNldC4KIyBTcGVjaWZ5aW5nICdsb2NhbGhvc3QnIHByZXZlbnRzIHJlbW90ZSBjb25u ZWN0aW9ucy4KIyBTcGVjaWZ5aW5nIHRoZSBlbXB0eSBzdHJpbmcgJycgKHRoZSBkZWZhdWx0KSBh bGxvd3MgYWxsIGNvbm5lY3Rpb25zLgojKHhlbmQtYWRkcmVzcyAnJykKIyh4ZW5kLWFkZHJlc3Mg bG9jYWxob3N0KQoKIyBBZGRyZXNzIHhlbmQgc2hvdWxkIGxpc3RlbiBvbiBmb3IgcmVsb2NhdGlv bi1zb2NrZXQgY29ubmVjdGlvbnMsIGlmCiMgeGVuZC1yZWxvY2F0aW9uLXNlcnZlciBpcyBzZXQu CiMgTWVhbmluZyBhbmQgZGVmYXVsdCBhcyBmb3IgeGVuZC1hZGRyZXNzIGFib3ZlLgojIEFsc28s IGludGVyZmFjZSBuYW1lIGlzIGFsbG93ZWQgKGUuZy4gZXRoMCkgdGhlcmUgdG8gZ2V0IHRoZQoj IHJlbG9jYXRpb24gYWRkcmVzcyB0byBiZSBib3VuZCBvbi4KIyh4ZW5kLXJlbG9jYXRpb24tYWRk cmVzcyAnJykKCiMgVGhlIGhvc3RzIGFsbG93ZWQgdG8gdGFsayB0byB0aGUgcmVsb2NhdGlvbiBw b3J0LiAgSWYgdGhpcyBpcyBlbXB0eSAodGhlCiMgZGVmYXVsdCksIHRoZW4gYWxsIGNvbm5lY3Rp b25zIGFyZSBhbGxvd2VkIChhc3N1bWluZyB0aGF0IHRoZSBjb25uZWN0aW9uCiMgYXJyaXZlcyBv biBhIHBvcnQgYW5kIGludGVyZmFjZSBvbiB3aGljaCB3ZSBhcmUgbGlzdGVuaW5nOyBzZWUKIyB4 ZW5kLXJlbG9jYXRpb24tcG9ydCBhbmQgeGVuZC1yZWxvY2F0aW9uLWFkZHJlc3MgYWJvdmUpLiAg T3RoZXJ3aXNlLCB0aGlzCiMgc2hvdWxkIGJlIGEgc3BhY2Utc2VwYXJhdGVkIHNlcXVlbmNlIG9m IHJlZ3VsYXIgZXhwcmVzc2lvbnMuICBBbnkgaG9zdCB3aXRoCiMgYSBmdWxseS1xdWFsaWZpZWQg ZG9tYWluIG5hbWUgb3IgYW4gSVAgYWRkcmVzcyB0aGF0IG1hdGNoZXMgb25lIG9mIHRoZXNlCiMg cmVndWxhciBleHByZXNzaW9ucyB3aWxsIGJlIGFjY2VwdGVkLgojCiMgRm9yIGV4YW1wbGU6CiMg ICh4ZW5kLXJlbG9jYXRpb24taG9zdHMtYWxsb3cgJ15sb2NhbGhvc3QkIF4uKlxcLmV4YW1wbGVc XC5vcmckJykKIwojKHhlbmQtcmVsb2NhdGlvbi1ob3N0cy1hbGxvdyAnJykKKHhlbmQtcmVsb2Nh dGlvbi1ob3N0cy1hbGxvdyAnXmxvY2FsaG9zdCQgXmxvY2FsaG9zdFxcLmxvY2FsZG9tYWluJCcp CgojIFRoZSBsaW1pdCAoaW4ga2lsb2J5dGVzKSBvbiB0aGUgc2l6ZSBvZiB0aGUgY29uc29sZSBi dWZmZXIKIyhjb25zb2xlLWxpbWl0IDEwMjQpCgojIwojIFRvIGJyaWRnZSBuZXR3b3JrIHRyYWZm aWMsIGxpa2UgdGhpczoKIwojIGRvbTA6IC0tLS0tLS0tLS0tLS0tLS0tIGJyaWRnZSAtPiByZWFs IGV0aDAgLT4gdGhlIG5ldHdvcmsKIyAgICAgICAgICAgICAgICAgICAgICAgICAgICB8CiMgZG9t VTogZmFrZSBldGgwIC0+IHZpZk4uMCAtKwojCiMgdXNlCiMKIyAobmV0d29yay1zY3JpcHQgbmV0 d29yay1icmlkZ2UpCiMKIyBZb3VyIGRlZmF1bHQgZXRoZXJuZXQgZGV2aWNlIGlzIHVzZWQgYXMg dGhlIG91dGdvaW5nIGludGVyZmFjZSwgYnkgZGVmYXVsdC4gCiMgVG8gdXNlIGEgZGlmZmVyZW50 IG9uZSAoZS5nLiBldGgxKSB1c2UKIwojIChuZXR3b3JrLXNjcmlwdCAnbmV0d29yay1icmlkZ2Ug bmV0ZGV2PWV0aDEnKQojCiMgVGhlIGJyaWRnZSBpcyBuYW1lZCBldGgwLCBieSBkZWZhdWx0ICh5 ZXMsIHJlYWxseSEpCiMKCiMgSXQgaXMgbm9ybWFsbHkgbXVjaCBiZXR0ZXIgdG8gY3JlYXRlIHRo ZSBicmlkZ2UgeW91cnNlbGYgaW4KIyAvZXRjL25ldHdvcmsvaW50ZXJmYWNlcy4gIG5ldHdvcmst YnJpZGdlIHN0YXJ0IGRvZXMgbm90aGluZyBpZiB5b3UKIyBhbHJlYWR5IGhhdmUgYSBicmlkZ2Us IGFuZCBuZXR3b3JrLWJyaWRnZSBzdG9wIGRvZXMgbm90aGluZyBpZiB0aGUKIyBkZWZhdWx0IGJy aWRnZSBuYW1lIChub3JtYWxseSBldGgwKSBpcyBub3QgYSBicmlkZ2UuICBTZWUKIyBicmlkZ2Ut dXRpbHMtaW50ZXJmYWNlcyg1KSBmb3IgZnVsbCBpbmZvcm1hdGlvbiBvbiB0aGUgc3ludGF4IGlu CiMgL2V0Yy9uZXR3b3JrL2ludGVyZmFjZXMsIGJ1dCB5b3UgcHJvYmFibHkgd2FudCBzb21ldGhp bmcgbGlrZSB0aGlzOgojICAgIGlmYWNlIHhlbmJyMCBpbmV0IHN0YXRpYwojICAgICAgICBhZGRy ZXNzIFtldGNdCiMgICAgICAgIG5ldG1hc2sgW2V0Y10KIyAgICAgICAgW2V0Y10KIyAgICAgICAg YnJpZGdlX3BvcnRzIGV0aDAKIwojIFRvIGhhdmUgbmV0d29yay1icmlkZ2UgY3JlYXRlIGEgZGlm ZmVyZW50bHktbmFtZWQgYnJpZGdlLCB1c2U6CiMgKG5ldHdvcmstc2NyaXB0ICduZXR3b3JrLWJy aWRnZSBicmlkZ2U9PG5hbWU+JykKIwojIEl0IGlzIHBvc3NpYmxlIHRvIHVzZSB0aGUgbmV0d29y ay1icmlkZ2Ugc2NyaXB0IGluIG1vcmUgY29tcGxpY2F0ZWQKIyBzY2VuYXJpb3MsIHN1Y2ggYXMg aGF2aW5nIHR3byBvdXRnb2luZyBpbnRlcmZhY2VzLCB3aXRoIHR3byBicmlkZ2VzLCBhbmQKIyB0 d28gZmFrZSBpbnRlcmZhY2VzIHBlciBndWVzdCBkb21haW4uICBUbyBkbyB0aGluZ3MgbGlrZSB0 aGlzLCB3cml0ZQojIHlvdXJzZWxmIGEgd3JhcHBlciBzY3JpcHQsIGFuZCBjYWxsIG5ldHdvcmst YnJpZGdlIGZyb20gaXQsIGFzIGFwcHJvcHJpYXRlLgojCiMobmV0d29yay1zY3JpcHQgbmV0d29y ay1icmlkZ2UpCgojIFRoZSBzY3JpcHQgdXNlZCB0byBjb250cm9sIHZpcnR1YWwgaW50ZXJmYWNl cy4gIFRoaXMgY2FuIGJlIG92ZXJyaWRkZW4gb24gYQojIHBlci12aWYgYmFzaXMgd2hlbiBjcmVh dGluZyBhIGRvbWFpbiBvciBhIGNvbmZpZ3VyaW5nIGEgbmV3IHZpZi4gIFRoZQojIHZpZi1icmlk Z2Ugc2NyaXB0IGlzIGRlc2lnbmVkIGZvciB1c2Ugd2l0aCB0aGUgbmV0d29yay1icmlkZ2Ugc2Ny aXB0LCBvcgojIHNpbWlsYXIgY29uZmlndXJhdGlvbnMuCiMKIyBJZiB5b3UgaGF2ZSBvdmVycmlk ZGVuIHRoZSBicmlkZ2UgbmFtZSB1c2luZwojIChuZXR3b3JrLXNjcmlwdCAnbmV0d29yay1icmlk Z2UgYnJpZGdlPTxuYW1lPicpIHRoZW4geW91IG1heSB3aXNoIHRvIGRvIHRoZQojIHNhbWUgaGVy ZS4gIFRoZSBicmlkZ2UgbmFtZSBjYW4gYWxzbyBiZSBzZXQgd2hlbiBjcmVhdGluZyBhIGRvbWFp biBvcgojIGNvbmZpZ3VyaW5nIGEgbmV3IHZpZiwgYnV0IGEgdmFsdWUgc3BlY2lmaWVkIGhlcmUg d291bGQgYWN0IGFzIGEgZGVmYXVsdC4KIwojIElmIHlvdSBhcmUgdXNpbmcgb25seSBvbmUgYnJp ZGdlLCB0aGUgdmlmLWJyaWRnZSBzY3JpcHQgd2lsbCBkaXNjb3ZlciB0aGF0LAojIHNvIHRoZXJl IGlzIG5vIG5lZWQgdG8gc3BlY2lmeSBpdCBleHBsaWNpdGx5LiAgVGhlIGRlZmF1bHQgaXMgdG8g dXNlCiMgdGhlIGJyaWRnZSB3aGljaCBpcyBsaXN0ZWQgZmlyc3QgaW4gdGhlIG91dHB1dCBmcm9t IGJyY3RsLgojCih2aWYtc2NyaXB0IHZpZi1icmlkZ2UpCgoKIyMgVXNlIHRoZSBmb2xsb3dpbmcg aWYgbmV0d29yayB0cmFmZmljIGlzIHJvdXRlZCwgYXMgYW4gYWx0ZXJuYXRpdmUgdG8gdGhlCiMg c2V0dGluZ3MgZm9yIGJyaWRnZWQgbmV0d29ya2luZyBnaXZlbiBhYm92ZS4KIyhuZXR3b3JrLXNj cmlwdCBuZXR3b3JrLXJvdXRlKQojKHZpZi1zY3JpcHQgICAgIHZpZi1yb3V0ZSkKCgojIyBVc2Ug dGhlIGZvbGxvd2luZyBpZiBuZXR3b3JrIHRyYWZmaWMgaXMgcm91dGVkIHdpdGggTkFULCBhcyBh biBhbHRlcm5hdGl2ZQojIHRvIHRoZSBzZXR0aW5ncyBmb3IgYnJpZGdlZCBuZXR3b3JraW5nIGdp dmVuIGFib3ZlLgojKG5ldHdvcmstc2NyaXB0IG5ldHdvcmstbmF0KQojKHZpZi1zY3JpcHQgICAg IHZpZi1uYXQpCgojIGRvbTAtbWluLW1lbSBpcyB0aGUgbG93ZXN0IHBlcm1pc3NpYmxlIG1lbW9y eSBsZXZlbCAoaW4gTUIpIGZvciBkb20wLgojIFRoaXMgaXMgYSBtaW5pbXVtIGJvdGggZm9yIGF1 dG8tYmFsbG9vbmluZyAoYXMgZW5hYmxlZCBieQojIGVuYWJsZS1kb20wLWJhbGxvb25pbmcgYmVs b3cpIGFuZCBmb3IgeG0gbWVtLXNldCB3aGVuIGFwcGxpZWQgdG8gZG9tMC4KKGRvbTAtbWluLW1l bSAxOTYpCgojIFdoZXRoZXIgdG8gZW5hYmxlIGF1dG8tYmFsbG9vbmluZyBvZiBkb20wIHRvIGFs bG93IGRvbVVzIHRvIGJlIGNyZWF0ZWQuCiMgSWYgZW5hYmxlLWRvbTAtYmFsbG9vbmluZyA9IG5v LCBkb20wIHdpbGwgbmV2ZXIgYmFsbG9vbiBvdXQuCihlbmFibGUtZG9tMC1iYWxsb29uaW5nIHll cykKCiMgMzItYml0IHBhcmF2aXJ0dWFsIGRvbWFpbnMgY2FuIG9ubHkgY29uc3VtZSBwaHlzaWNh bAojIG1lbW9yeSBiZWxvdyAxNjhHQi4gT24gc3lzdGVtcyB3aXRoIG1lbW9yeSBiZXlvbmQgdGhh dCBhZGRyZXNzLAojIHRoZXknbGwgYmUgY29uZmluZWQgdG8gbWVtb3J5IGJlbG93IDEyOEdCLgoj IFVzaW5nIHRvdGFsX2F2YWlsYWJsZV9tZW1vcnkgKGluIEdCKSB0byBzcGVjaWZ5IHRoZSBhbW91 bnQgb2YgbWVtb3J5IHJlc2VydmVkCiMgaW4gdGhlIG1lbW9yeSBwb29sIGV4Y2x1c2l2ZWx5IGZv ciAzMi1iaXQgcGFyYXZpcnR1YWwgZG9tYWlucy4KIyBBZGRpdGlvbmFsbHkgeW91IHNob3VsZCB1 c2UgZG9tMF9tZW0gPSA8LVZhbHVlPiBhcyBhIHBhcmFtZXRlciBpbiAKIyB4ZW4ga2VybmVsIHRv IHJlc2VydmUgdGhlIG1lbW9yeSBmb3IgMzItYml0IHBhcmF2aXJ0dWFsIGRvbWFpbnMsIGRlZmF1 bHQgCiMgaXMgIjAiICgwR0IpLiAgCih0b3RhbF9hdmFpbGFibGVfbWVtb3J5IDApIAoKIyBJbiBT TVAgc3lzdGVtLCBkb20wIHdpbGwgdXNlIGRvbTAtY3B1cyAjIG9mIENQVVMKIyBJZiBkb20wLWNw dXMgPSAwLCBkb20wIHdpbGwgdGFrZSBhbGwgY3B1cyBhdmFpbGFibGUKKGRvbTAtY3B1cyAwKQoK IyBXaGV0aGVyIHRvIGVuYWJsZSBjb3JlLWR1bXBzIHdoZW4gZG9tYWlucyBjcmFzaC4KIyhlbmFi bGUtZHVtcCBubykKCiMgVGhlIHRvb2wgdXNlZCBmb3IgaW5pdGlhdGluZyB2aXJ0dWFsIFRQTSBt aWdyYXRpb24KIyhleHRlcm5hbC1taWdyYXRpb24tdG9vbCAnJykKCiMgVGhlIGludGVyZmFjZSBm b3IgVk5DIHNlcnZlcnMgdG8gbGlzdGVuIG9uLiBEZWZhdWx0cwojIHRvIDEyNy4wLjAuMSAgVG8g cmVzdG9yZSBvbGQgJ2xpc3RlbiBldmVyeXdoZXJlJyBiZWhhdmlvdXIKIyBzZXQgdGhpcyB0byAw LjAuMC4wCiModm5jLWxpc3RlbiAnMTI3LjAuMC4xJykKCiMgVGhlIGRlZmF1bHQgcGFzc3dvcmQg Zm9yIFZOQyBjb25zb2xlIG9uIEhWTSBkb21haW4uCiMgRW1wdHkgc3RyaW5nIGlzIG5vIGF1dGhl bnRpY2F0aW9uLgoodm5jcGFzc3dkICcnKQoKIyBUaGUgVk5DIHNlcnZlciBjYW4gYmUgdG9sZCB0 byBuZWdvdGlhdGUgYSBUTFMgc2Vzc2lvbgojIHRvIGVuY3J5cHRpb24gYWxsIHRyYWZmaWMsIGFu ZCBwcm92aWRlIHg1MDkgY2VydCB0bwojIGNsaWVudHMgZW5hYmxpbmcgdGhlbSB0byB2ZXJpZnkg c2VydmVyIGlkZW50aXR5LiBUaGUKIyBHVEstVk5DIHdpZGdldCwgdmlydC12aWV3ZXIsIHZpcnQt bWFuYWdlciBhbmQgVmVOQ3J5cHQKIyBhbGwgc3VwcG9ydCB0aGUgVk5DIGV4dGVuc2lvbiBmb3Ig VExTIHVzZWQgaW4gUUVNVS4gVGhlCiMgVGlnaHRWTkMvUmVhbFZOQy9VbHRyYVZOQyBjbGllbnRz IGRvIG5vdC4KIwojIFRvIGVuYWJsZSB0aGlzIGNyZWF0ZSB4NTA5IGNlcnRpZmljYXRlcyAvIGtl eXMgaW4gdGhlCiMgZGlyZWN0b3J5ICR7WEVOX0NPTkZJR19ESVJ9ICsgdm5jCiMKIyAgY2EtY2Vy dC5wZW0gICAgICAgLSBUaGUgQ0EgY2VydGlmaWNhdGUKIyAgc2VydmVyLWNlcnQucGVtICAgLSBU aGUgU2VydmVyIGNlcnRpZmljYXRlIHNpZ25lZCBieSB0aGUgQ0EKIyAgc2VydmVyLWtleS5wZW0g ICAgLSBUaGUgc2VydmVyIHByaXZhdGUga2V5CiMKIyBhbmQgdGhlbiB1bmNvbW1lbnQgdGhpcyBu ZXh0IGxpbmUKIyAodm5jLXRscyAxKQoKIyBUaGUgY2VydGlmaWNhdGUgZGlyIGNhbiBiZSBwb2lu dGVkIGVsc2V3aGVyZS4uCiMKIyAodm5jLXg1MDktY2VydC1kaXIgdm5jKQoKIyBUaGUgc2VydmVy IGNhbiBiZSB0b2xkIHRvIHJlcXVlc3QgJiB2YWxpZGF0ZSBhbiB4NTA5CiMgY2VydGlmaWNhdGUg ZnJvbSB0aGUgY2xpZW50LiBPbmx5IGNsaWVudHMgd2l0aCBhIGNlcnQKIyBzaWduZWQgYnkgdGhl IHRydXN0ZWQgQ0Egd2lsbCBiZSBhYmxlIHRvIGNvbm5lY3QuIFRoaXMKIyBpcyBtb3JlIHNlY3Vy ZSB0aGUgcGFzc3dvcmQgYXV0aCBhbG9uZS4gUGFzc3dkIGF1dGggY2FuCiMgdXNlZCBhdCB0aGUg c2FtZSB0aW1lIGlmIGRlc2lyZWQuIFRvIGVuYWJsZSBjbGllbnQgY2VydAojIGNoZWNraW5nIHVu Y29tbWVudCB0aGlzOgojCiMgKHZuYy14NTA5LXZlcmlmeSAxKQoKIyBUaGUgZGVmYXVsdCBrZXlt YXAgdG8gdXNlIGZvciB0aGUgVk0ncyB2aXJ0dWFsIGtleWJvYXJkCiMgd2hlbiBub3Qgc3BlY2lm aWZlZCBpbiBWTSdzIGNvbmZpZ3VyYXRpb24KIyhrZXltYXAgJ2VuLXVzJykKCiMgU2NyaXB0IHRv IHJ1biB3aGVuIHRoZSBsYWJlbCBvZiBhIHJlc291cmNlIGhhcyBjaGFuZ2VkLgojKHJlc291cmNl LWxhYmVsLWNoYW5nZS1zY3JpcHQgJycpCgojIFJvdGF0aW9uIGNvdW50IG9mIHFlbXUtZG0gbG9n IGZpbGUuCiMocWVtdS1kbS1sb2dyb3RhdGUtY291bnQgMTApCgojIFBhdGggd2hlcmUgcGVyc2lz dGVudCBkb21haW4gY29uZmlndXJhdGlvbiBpcyBzdG9yZWQuCiMgRGVmYXVsdCBpcyAvdmFyL2xp Yi94ZW5kL2RvbWFpbnMvCiMoeGVuZC1kb21haW5zLXBhdGggL3Zhci9saWIveGVuZC9kb21haW5z KQoKIyBOdW1iZXIgb2Ygc2Vjb25kcyB4ZW5kIHdpbGwgd2FpdCBmb3IgZGV2aWNlIGNyZWF0aW9u IGFuZAojIGRlc3RydWN0aW9uCiMoZGV2aWNlLWNyZWF0ZS10aW1lb3V0IDEwMCkKIyhkZXZpY2Ut ZGVzdHJveS10aW1lb3V0IDEwMCkKCiMgV2hlbiBhc3NpZ25pbmcgZGV2aWNlIHRvIEhWTSBndWVz dCwgd2UgdXNlIHRoZSBzdHJpY3QgY2hlY2sgZm9yIEhWTSBndWVzdCBieQojIGRlZmF1bHQuIChG b3IgUFYgZ3Vlc3QsIHdlIHVzZSBsb29zZSBjaGVjayBhdXRvbWF0aWNhbGx5IGlmIG5lY2Vzc2Fy eS4pCiMgV2hlbiB3ZSBhc3NpZ24gZGV2aWNlIHRvIEhWTSBndWVzdCwgaWYgd2UgbWVldCB3aXRo IHRoZSBjby1hc3NpZ25tZW50CiMgaXNzdWVzIG9yIHRoZSBBQ1MgaXNzdWUsIHdlIGNvdWxkIHRy eSBjaGFuZ2luZyB0aGUgb3B0aW9uIHRvICdubycgLS0gaG93ZXZlciwKIyB3ZSBoYXZlIHRvIHJl YWxpemUgdGhpcyBtYXkgaW5jdXIgc2VjdXJpdHkgaXNzdWUgYW5kIHdlIGNhbid0IG1ha2Ugc3Vy ZSB0aGUKIyBkZXZpY2UgYXNzaWdubWVudCBjb3VsZCByZWFsbHkgd29yayBwcm9wZXJseSBldmVu IGFmdGVyIHdlIGRvIHRoaXMuCiMocGNpLXBhc3N0aHJvdWdoLXN0cmljdC1jaGVjayB5ZXMpCihw Y2ktcGFzc3Rocm91Z2gtc3RyaWN0LWNoZWNrIG5vKQoKIyBJZiB3ZSBoYXZlIGEgdmVyeSBiaWcg c2NzaSBkZXZpY2UgY29uZmlndXJhdGlvbiwgc3RhcnQgb2YgeGVuZCBpcyBzbG93LAojIGJlY2F1 c2UgeGVuZCBzY2FucyBhbGwgdGhlIGRldmljZSBwYXRocyB0byBidWlsZCBpdHMgaW50ZXJuYWwg UFNDU0kgZGV2aWNlCiMgbGlzdC4gIElmIHdlIG5lZWQgb25seSBhIGZldyBkZXZpY2VzIGZvciBh c3NpZ25pbmcgdG8gYSBndWVzdCwgd2UgY2FuIHJlZHVjZQojIHRoZSBzY2FuIHRvIHRoaXMgZGV2 aWNlLiBTZXQgbGlzdCBsaXN0IG9mIGRldmljZSBwYXRocyBpbiBzYW1lIHN5bnRheCBsaWtlIGlu CiMgY29tbWFuZCBsc3Njc2ksIGUuZy4gKCcxNjowOjA6MCcgJzE1OjAnKSAKIyAocHNjc2ktZGV2 aWNlLW1hc2sgKCcqJykpCgo= --0015174a0e763beb6804a285c00d Content-Type: application/octet-stream; name="~xl-W7Test.log" Content-Disposition: attachment; filename="~xl-W7Test.log" Content-Transfer-Encoding: base64 X-Attachment-Id: f_gn8gjttu5 V2FpdGluZyBmb3IgZG9tYWluIFc3VGVzdCAoZG9taWQgMTApIHRvIGRpZSBbcGlkIDUyNjNdCkRv bWFpbiAxMCBpcyBkZWFkClVuYWJsZSB0byBnZXQgZG9tYWluIGRlYXRoIGluZm8sIHF1aXR0aW5n Cg== --0015174a0e763beb6804a285c00d 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 --0015174a0e763beb6804a285c00d--