From mboxrd@z Thu Jan 1 00:00:00 1970 From: Tetsu Yamamoto Subject: Re: [PATCH] xm reboot/shutdown/sysrq to HVM domain Date: Tue, 10 Oct 2006 16:43:22 +0900 Message-ID: <452B4F1A.4050109@jp.fujitsu.com> References: <4526005B.1020906@jp.fujitsu.com> <20061006095902.GA2767@cam.ac.uk> Mime-Version: 1.0 Content-Type: multipart/mixed; boundary="------------040703030504010200030009" Return-path: In-Reply-To: <20061006095902.GA2767@cam.ac.uk> List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Sender: xen-devel-bounces@lists.xensource.com Errors-To: xen-devel-bounces@lists.xensource.com To: Steven Smith Cc: xen-devel@lists.xensource.com, sos22@srcf.ucam.org List-Id: xen-devel@lists.xenproject.org This is a multi-part message in MIME format. --------------040703030504010200030009 Content-Type: text/plain; charset=ISO-2022-JP Content-Transfer-Encoding: 7bit Hi Steven, Thank you for your comments. Steven Smith wrote: >> This patch enhances 'xm reboot'/'xm shutdown' commands to >> reboot/shutdown guest Linux on HVM domain as gracefully as para-Linux. >> In addtion, sysrq key signal can be sent to HVM domain by 'xm sysrq' >> command. > Thanks, that's really useful. I have a couple of comments about the > patch, though: > > -- It looks like you had some problems with ctrl_alt_del(), and instead > used kill_proc(cad_pid, SIGINT, 1). What was the reason for this? The symbol ctrl_alt_del() can't be found when it is used in loadable module. On build, the warning message is shown that ctrl_alt_del() is undefined, and on loading, the error message is shown that it is unknown symbol. I'm not sure why this happens, but I tried kill_proc(), which is called in ctrl_alt_del(), it works correctly. > -- You've introduced a lot of #ifdefs into reboot.c. It might be > easier to just split the file in two; did you look at this at all? reboot.c has common process to deal with reboot/shutdown/sysrq for para-linux (built in kernel) and full-linux (loadable module), so I think that it would be better to be one file in consideration of code maintenance. > -- You set reboot_module from within a xenbus transaction. I don't > think that's necessary, since xenbus_writes are supposed to be > atomic anyway. The reason why I use xenbus_write is that I could not find other interface to write xenstore through xenbus module for HVM. I'm not sure which interface you suggest to use, but for example, xb_write() is not exported, so it can not be called from reboot module. If I should use other interface, please let me know. > -- Because of the way mkbuildtree works, you're going to create > symlinks from unmodified-drivers to all of the files in > linux-2.6-xen-sparse/drivers/core, rather than just to reboot.c. > It's a trivial aesthetic issue, but it'd be nice not to create lots > of useless symlinks. The modified patch is attached. Regards, Tetsu Yamamoto Signed-off-by: Tetsu Yamamoto > > Apart from that, it looks pretty reasonable. > > Steven. --------------040703030504010200030009 Content-Type: text/plain; name="reboot.patch" Content-Transfer-Encoding: base64 Content-Disposition: inline; filename="reboot.patch" ZGlmZiAtciAzOGY5YmQ3YTRjZTYgbGludXgtMi42LXhlbi1zcGFyc2UvZHJpdmVycy94ZW4v Y29yZS9yZWJvb3QuYwotLS0gYS9saW51eC0yLjYteGVuLXNwYXJzZS9kcml2ZXJzL3hlbi9j b3JlL3JlYm9vdC5jCVR1ZSBPY3QgMDMgMTE6Mzk6MjIgMjAwNiArMDEwMAorKysgYi9saW51 eC0yLjYteGVuLXNwYXJzZS9kcml2ZXJzL3hlbi9jb3JlL3JlYm9vdC5jCVR1ZSBPY3QgMTAg MTU6MDY6MjcgMjAwNiArMDkwMApAQCAtMTksNyArMTksMTMgQEAKICNpbmNsdWRlIDx4ZW4v eGVuY29ucy5oPgogI2luY2x1ZGUgPHhlbi9jcHVfaG90cGx1Zy5oPgogCisjaWZkZWYgQ09O RklHX1hFTgogZXh0ZXJuIHZvaWQgY3RybF9hbHRfZGVsKHZvaWQpOworI2VuZGlmIC8qIENP TkZJR19YRU4gKi8KKworI2lmbmRlZiBDT05GSUdfWEVOCitNT0RVTEVfTElDRU5TRSgiRHVh bCBCU0QvR1BMIik7CisjZW5kaWYgLyogIUNPTkZJR19YRU4gKi8KIAogI2RlZmluZSBTSFVU RE9XTl9JTlZBTElEICAtMQogI2RlZmluZSBTSFVURE9XTl9QT1dFUk9GRiAgMApAQCAtMzEs NiArMzcsNyBAQCBleHRlcm4gdm9pZCBjdHJsX2FsdF9kZWwodm9pZCk7CiAgKi8KICNkZWZp bmUgU0hVVERPV05fSEFMVCAgICAgIDQKIAorI2lmZGVmIENPTkZJR19YRU4KICNpZiBkZWZp bmVkKF9faTM4Nl9fKSB8fCBkZWZpbmVkKF9feDg2XzY0X18pCiAKIC8qCkBAIC03MSw2ICs3 OCw3IEBAIEVYUE9SVF9TWU1CT0wobWFjaGluZV9wb3dlcl9vZmYpOwogRVhQT1JUX1NZTUJP TChtYWNoaW5lX3Bvd2VyX29mZik7CiAKICNlbmRpZiAvKiBkZWZpbmVkKF9faTM4Nl9fKSB8 fCBkZWZpbmVkKF9feDg2XzY0X18pICovCisjZW5kaWYgLyogQ09ORklHX1hFTiAqLwogCiAv KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq KioqKioqKioqKioqKioqKioqKioqKioqCiAgKiBTdG9wL3BpY2tsZSBjYWxsYmFjayBoYW5k bGluZy4KQEAgLTgxLDYgKzg5LDcgQEAgc3RhdGljIHZvaWQgX19zaHV0ZG93bl9oYW5kbGVy KHZvaWQgKnVudQogc3RhdGljIHZvaWQgX19zaHV0ZG93bl9oYW5kbGVyKHZvaWQgKnVudXNl ZCk7CiBzdGF0aWMgREVDTEFSRV9XT1JLKHNodXRkb3duX3dvcmssIF9fc2h1dGRvd25faGFu ZGxlciwgTlVMTCk7CiAKKyNpZmRlZiBDT05GSUdfWEVOCiAjaWYgZGVmaW5lZChfX2kzODZf XykgfHwgZGVmaW5lZChfX3g4Nl82NF9fKQogCiAvKiBFbnN1cmUgd2UgcnVuIG9uIHRoZSBp ZGxlIHRhc2sgcGFnZSB0YWJsZXMgc28gdGhhdCB3ZSB3aWxsCkBAIC0yMTAsNiArMjE5LDcg QEAgc3RhdGljIGludCBfX2RvX3N1c3BlbmQodm9pZCAqaWdub3JlKQogCiAJcmV0dXJuIGVy cjsKIH0KKyNlbmRpZiAvKiBDT05GSUdfWEVOICovCiAKIHN0YXRpYyBpbnQgc2h1dGRvd25f cHJvY2Vzcyh2b2lkICpfX3VudXNlZCkKIHsKQEAgLTIyMiwxMiArMjMyLDE3IEBAIHN0YXRp YyBpbnQgc2h1dGRvd25fcHJvY2Vzcyh2b2lkICpfX3VudXMKIAogCWlmICgoc2h1dHRpbmdf ZG93biA9PSBTSFVURE9XTl9QT1dFUk9GRikgfHwKIAkgICAgKHNodXR0aW5nX2Rvd24gPT0g U0hVVERPV05fSEFMVCkpIHsKKyNpZmRlZiBDT05GSUdfWEVOCiAJCWlmIChleGVjdmUoIi9z YmluL3Bvd2Vyb2ZmIiwgcG93ZXJvZmZfYXJndiwgZW52cCkgPCAwKSB7CiAJCQlzeXNfcmVi b290KExJTlVYX1JFQk9PVF9NQUdJQzEsCiAJCQkJICAgTElOVVhfUkVCT09UX01BR0lDMiwK IAkJCQkgICBMSU5VWF9SRUJPT1RfQ01EX1BPV0VSX09GRiwKIAkJCQkgICBOVUxMKTsKIAkJ fQorI2Vsc2UgLyogIUNPTkZJR19YRU4gKi8KKwkJY2FsbF91c2VybW9kZWhlbHBlcl9rZXlz KCIvc2Jpbi9wb3dlcm9mZiIsIHBvd2Vyb2ZmX2FyZ3YsIGVudnAsIE5VTEwsIDApOworCisj ZW5kaWYgLyogIUNPTkZJR19YRU4gKi8KIAl9CiAKIAlzaHV0dGluZ19kb3duID0gU0hVVERP V05fSU5WQUxJRDsgLyogY291bGQgdHJ5IGFnYWluICovCkBAIC0yMzUsNiArMjUwLDcgQEAg c3RhdGljIGludCBzaHV0ZG93bl9wcm9jZXNzKHZvaWQgKl9fdW51cwogCXJldHVybiAwOwog fQogCisjaWZkZWYgQ09ORklHX1hFTgogc3RhdGljIGludCBrdGhyZWFkX2NyZWF0ZV9vbl9j cHUoaW50ICgqZikodm9pZCAqYXJnKSwKIAkJCQkgdm9pZCAqYXJnLAogCQkJCSBjb25zdCBj aGFyICpuYW1lLApAQCAtMjQ4LDE3ICsyNjQsMjQgQEAgc3RhdGljIGludCBrdGhyZWFkX2Ny ZWF0ZV9vbl9jcHUoaW50ICgqZgogCXdha2VfdXBfcHJvY2VzcyhwKTsKIAlyZXR1cm4gMDsK IH0KKyNlbmRpZiAvKiBDT05GSUdfWEVOICovCiAKIHN0YXRpYyB2b2lkIF9fc2h1dGRvd25f aGFuZGxlcih2b2lkICp1bnVzZWQpCiB7CiAJaW50IGVycjsKIAorI2lmZGVmIENPTkZJR19Y RU4KIAlpZiAoc2h1dHRpbmdfZG93biAhPSBTSFVURE9XTl9TVVNQRU5EKQogCQllcnIgPSBr ZXJuZWxfdGhyZWFkKHNodXRkb3duX3Byb2Nlc3MsIE5VTEwsCiAJCQkJICAgIENMT05FX0ZT IHwgQ0xPTkVfRklMRVMpOwogCWVsc2UKIAkJZXJyID0ga3RocmVhZF9jcmVhdGVfb25fY3B1 KF9fZG9fc3VzcGVuZCwgTlVMTCwgInN1c3BlbmQiLCAwKTsKIAorI2Vsc2UgLyogIUNPTkZJ R19YRU4gKi8KKwllcnIgPSBrZXJuZWxfdGhyZWFkKHNodXRkb3duX3Byb2Nlc3MsIE5VTEws CisJCQkgICAgQ0xPTkVfRlMgfCBDTE9ORV9GSUxFUyk7CisjZW5kaWYgLyogIUNPTkZJR19Y RU4gKi8KKwogCWlmIChlcnIgPCAwKSB7CiAJCXByaW50ayhLRVJOX1dBUk5JTkcgIkVycm9y IGNyZWF0aW5nIHNodXRkb3duIHByb2Nlc3MgKCVkKTogIgogCQkgICAgICAgInJldHJ5aW5n Li4uXG4iLCAtZXJyKTsKQEAgLTI3Miw2ICsyOTUsOSBAQCBzdGF0aWMgdm9pZCBzaHV0ZG93 bl9oYW5kbGVyKHN0cnVjdCB4ZW5iCiAJY2hhciAqc3RyOwogCXN0cnVjdCB4ZW5idXNfdHJh bnNhY3Rpb24geGJ0OwogCWludCBlcnI7CisjaWZuZGVmIENPTkZJR19YRU4KKwlpbnQgY2Fk X3BpZCA9IDE7IAorI2VuZGlmIC8qICFDT05GSUdfWEVOICovCiAKIAlpZiAoc2h1dHRpbmdf ZG93biAhPSBTSFVURE9XTl9JTlZBTElEKQogCQlyZXR1cm47CkBAIC0yOTgsNyArMzI0LDEx IEBAIHN0YXRpYyB2b2lkIHNodXRkb3duX2hhbmRsZXIoc3RydWN0IHhlbmIKIAlpZiAoc3Ry Y21wKHN0ciwgInBvd2Vyb2ZmIikgPT0gMCkKIAkJc2h1dHRpbmdfZG93biA9IFNIVVRET1dO X1BPV0VST0ZGOwogCWVsc2UgaWYgKHN0cmNtcChzdHIsICJyZWJvb3QiKSA9PSAwKQorI2lm ZGVmIENPTkZJR19YRU4gIAogCQljdHJsX2FsdF9kZWwoKTsKKyNlbHNlIC8qICFDT05GSUdf WEVOICovCisJCWtpbGxfcHJvYyhjYWRfcGlkLCBTSUdJTlQsIDEpOworI2VuZGlmIC8qICFD T05GSUdfWEVOICovCiAJZWxzZSBpZiAoc3RyY21wKHN0ciwgInN1c3BlbmQiKSA9PSAwKQog CQlzaHV0dGluZ19kb3duID0gU0hVVERPV05fU1VTUEVORDsKIAllbHNlIGlmIChzdHJjbXAo c3RyLCAiaGFsdCIpID09IDApCkBAIC0zNzQsMTAgKzQwNCwyNyBAQCBzdGF0aWMgaW50IHNl dHVwX3NodXRkb3duX3dhdGNoZXIoc3RydWN0CiAKIHN0YXRpYyBpbnQgX19pbml0IHNldHVw X3NodXRkb3duX2V2ZW50KHZvaWQpCiB7CisjaWZuZGVmIENPTkZJR19YRU4KKwlpbnQgZXJy OworCXN0cnVjdCB4ZW5idXNfdHJhbnNhY3Rpb24geGJ0OworI2VuZGlmIC8qICFDT05GSUdf WEVOICovCisKIAlzdGF0aWMgc3RydWN0IG5vdGlmaWVyX2Jsb2NrIHhlbnN0b3JlX25vdGlm aWVyID0gewogCQkubm90aWZpZXJfY2FsbCA9IHNldHVwX3NodXRkb3duX3dhdGNoZXIKIAl9 OwogCXJlZ2lzdGVyX3hlbnN0b3JlX25vdGlmaWVyKCZ4ZW5zdG9yZV9ub3RpZmllcik7Cisj aWZuZGVmIENPTkZJR19YRU4KKyBhZ2FpbjoKKwllcnIgPSB4ZW5idXNfdHJhbnNhY3Rpb25f c3RhcnQoJnhidCk7CisJaWYgKGVycikKKwkJcmV0dXJuIC0xOworCXhlbmJ1c193cml0ZSh4 YnQsICJjb250cm9sIiwgInJlYm9vdF9tb2R1bGUiLCAiaW5zdGFsbGVkIik7CisKKwllcnIg PSB4ZW5idXNfdHJhbnNhY3Rpb25fZW5kKHhidCwgMCk7CisJaWYgKGVyciA9PSAtRUFHQUlO KSB7CisJCWdvdG8gYWdhaW47CisJfQorI2VuZGlmIC8qICFDT05GSUdfWEVOICovCiAJcmV0 dXJuIDA7CiB9CiAKZGlmZiAtciAzOGY5YmQ3YTRjZTYgdG9vbHMvcHl0aG9uL3hlbi94ZW5k L2ltYWdlLnB5Ci0tLSBhL3Rvb2xzL3B5dGhvbi94ZW4veGVuZC9pbWFnZS5weQlUdWUgT2N0 IDAzIDExOjM5OjIyIDIwMDYgKzAxMDAKKysrIGIvdG9vbHMvcHl0aG9uL3hlbi94ZW5kL2lt YWdlLnB5CVR1ZSBPY3QgMTAgMTU6MDY6MjcgMjAwNiArMDkwMApAQCAtMjgxLDYgKzI4MSw3 IEBAIGNsYXNzIEhWTUltYWdlSGFuZGxlcihJbWFnZUhhbmRsZXIpOgogICAgICAgICBsb2cu ZGVidWcoImFwaWMgICAgICAgICAgID0gJWQiLCBzZWxmLmFwaWMpCiAKICAgICAgICAgc2Vs Zi5yZWdpc3Rlcl9zaHV0ZG93bl93YXRjaCgpCisgICAgICAgIHNlbGYucmVnaXN0ZXJfcmVi b290X21vZHVsZV93YXRjaCgpCiAKICAgICAgICAgcmV0dXJuIHhjLmh2bV9idWlsZChkb20g ICAgICAgICAgICA9IHNlbGYudm0uZ2V0RG9taWQoKSwKICAgICAgICAgICAgICAgICAgICAg ICAgICAgICBpbWFnZSAgICAgICAgICA9IHNlbGYua2VybmVsLApAQCAtMzgzLDYgKzM4NCw3 IEBAIGNsYXNzIEhWTUltYWdlSGFuZGxlcihJbWFnZUhhbmRsZXIpOgogCiAgICAgZGVmIGRl c3Ryb3koc2VsZik6CiAgICAgICAgIHNlbGYudW5yZWdpc3Rlcl9zaHV0ZG93bl93YXRjaCgp OworICAgICAgICBzZWxmLnVucmVnaXN0ZXJfcmVib290X21vZHVsZV93YXRjaCgpOwogICAg ICAgICBpbXBvcnQgc2lnbmFsCiAgICAgICAgIGlmIG5vdCBzZWxmLnBpZDoKICAgICAgICAg ICAgIHJldHVybgpAQCAtNDI1LDYgKzQyNywzOSBAQCBjbGFzcyBIVk1JbWFnZUhhbmRsZXIo SW1hZ2VIYW5kbGVyKToKICAgICAgICAgICAgICAgICB2bS5yZWZyZXNoU2h1dGRvd24odm0u aW5mbykKIAogICAgICAgICByZXR1cm4gMSAjIEtlZXAgd2F0Y2hpbmcKKworICAgIGRlZiBy ZWdpc3Rlcl9yZWJvb3RfbW9kdWxlX3dhdGNoKHNlbGYpOgorICAgICAgICAiIiIgYWRkIHhl biBzdG9yZSB3YXRjaCBvbiBjb250cm9sL3JlYm9vdF9tb2R1bGUgIiIiCisgICAgICAgIHNl bGYucmVib290TW9kdWxlV2F0Y2ggPSB4c3dhdGNoKHNlbGYudm0uZG9tcGF0aCArICIvY29u dHJvbC9yZWJvb3RfbW9kdWxlIiwgXAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgc2VsZi5odm1fcmVib290X21vZHVsZSkKKyAgICAgICAgbG9nLmRlYnVnKCJodm0g cmVib290IG1vZHVsZSB3YXRjaCByZWdpc3RlcmVkIikKKworICAgIGRlZiB1bnJlZ2lzdGVy X3JlYm9vdF9tb2R1bGVfd2F0Y2goc2VsZik6CisgICAgICAgICIiIlJlbW92ZSB0aGUgd2F0 Y2ggb24gdGhlIGNvbnRyb2wvcmVib290X21vZHVsZSwgaWYgYW55LiBOb3Rocm93CisgICAg ICAgIGd1YXJhbnRlZS4iIiIKKworICAgICAgICB0cnk6CisgICAgICAgICAgICBpZiBzZWxm LnJlYm9vdE1vZHVsZVdhdGNoOgorICAgICAgICAgICAgICAgIHNlbGYucmVib290TW9kdWxl V2F0Y2gudW53YXRjaCgpCisgICAgICAgIGV4Y2VwdDoKKyAgICAgICAgICAgIGxvZy5leGNl cHRpb24oIlVud2F0Y2hpbmcgaHZtIHJlYm9vdCBtb2R1bGUgd2F0Y2ggZmFpbGVkLiIpCisg ICAgICAgIHNlbGYucmVib290TW9kdWxlV2F0Y2ggPSBOb25lCisgICAgICAgIGxvZy5kZWJ1 ZygiaHZtIHJlYm9vdCBtb2R1bGUgd2F0Y2ggdW5yZWdpc3RlcmVkIikKKworICAgIGRlZiBo dm1fcmVib290X21vZHVsZShzZWxmLCBfKToKKyAgICAgICAgIiIiIHdhdGNoIGNhbGwgYmFj ayBvbiBub2RlIGNvbnRyb2wvcmVib290X21vZHVsZSwKKyAgICAgICAgICAgIGlmIG5vZGUg Y2hhbmdlZCwgdGhpcyBmdW5jdGlvbiB3aWxsIGJlIGNhbGxlZAorICAgICAgICAiIiIKKyAg ICAgICAgeGQgPSB4ZW4ueGVuZC5YZW5kRG9tYWluLmluc3RhbmNlKCkKKyAgICAgICAgdm0g PSB4ZC5kb21haW5fbG9va3VwKCBzZWxmLnZtLmdldERvbWlkKCkgKQorCisgICAgICAgIHJl Ym9vdF9tb2R1bGVfc3RhdHVzID0gdm0ucmVhZERvbSgnY29udHJvbC9yZWJvb3RfbW9kdWxl JykKKyAgICAgICAgbG9nLmRlYnVnKCJodm1fcmVib290X21vZHVsZSBmaXJlZCwgbW9kdWxl IHN0YXR1cz0lcyIsIHJlYm9vdF9tb2R1bGVfc3RhdHVzKQorICAgICAgICBpZiByZWJvb3Rf bW9kdWxlX3N0YXR1cyA9PSAnaW5zdGFsbGVkJzoKKyAgICAgICAgICAgIHNlbGYudW5yZWdp c3Rlcl9zaHV0ZG93bl93YXRjaCgpCisKKyAgICAgICAgcmV0dXJuIDEgIyBLZWVwIHdhdGNo aW5nCisKIAogY2xhc3MgSUE2NF9IVk1fSW1hZ2VIYW5kbGVyKEhWTUltYWdlSGFuZGxlcik6 CiAKZGlmZiAtciAzOGY5YmQ3YTRjZTYgdW5tb2RpZmllZF9kcml2ZXJzL2xpbnV4LTIuNi9N YWtlZmlsZQotLS0gYS91bm1vZGlmaWVkX2RyaXZlcnMvbGludXgtMi42L01ha2VmaWxlCVR1 ZSBPY3QgMDMgMTE6Mzk6MjIgMjAwNiArMDEwMAorKysgYi91bm1vZGlmaWVkX2RyaXZlcnMv bGludXgtMi42L01ha2VmaWxlCVR1ZSBPY3QgMTAgMTU6MDY6MjcgMjAwNiArMDkwMApAQCAt NCwzICs0LDQgQEAgb2JqLW0gKz0geGVuYnVzLwogb2JqLW0gKz0geGVuYnVzLwogb2JqLW0g Kz0gYmxrZnJvbnQvCiBvYmotbSArPSBuZXRmcm9udC8KK29iai1tICs9IHV0aWwvCmRpZmYg LXIgMzhmOWJkN2E0Y2U2IHVubW9kaWZpZWRfZHJpdmVycy9saW51eC0yLjYvbWtidWlsZHRy ZWUKLS0tIGEvdW5tb2RpZmllZF9kcml2ZXJzL2xpbnV4LTIuNi9ta2J1aWxkdHJlZQlUdWUg T2N0IDAzIDExOjM5OjIyIDIwMDYgKzAxMDAKKysrIGIvdW5tb2RpZmllZF9kcml2ZXJzL2xp bnV4LTIuNi9ta2J1aWxkdHJlZQlUdWUgT2N0IDEwIDE1OjA2OjI3IDIwMDYgKzA5MDAKQEAg LTE0LDYgKzE0LDcgQEAgbG4gLXNmICR7WEx9L2RyaXZlcnMveGVuL2NvcmUvZ250dGFiLmMg cAogbG4gLXNmICR7WEx9L2RyaXZlcnMveGVuL2NvcmUvZ250dGFiLmMgcGxhdGZvcm0tcGNp CiBsbiAtc2YgJHtYTH0vZHJpdmVycy94ZW4vY29yZS9mZWF0dXJlcy5jIHBsYXRmb3JtLXBj aQogbG4gLXNmICR7WEx9L2RyaXZlcnMveGVuL2NvcmUveGVuX3Byb2MuYyB4ZW5idXMKK2xu IC1zZiAke1hMfS9kcml2ZXJzL3hlbi9jb3JlL3JlYm9vdC5jIHV0aWwKIAogbWtkaXIgLXAg aW5jbHVkZQogbWtkaXIgLXAgaW5jbHVkZS94ZW4KZGlmZiAtciAzOGY5YmQ3YTRjZTYgdW5t b2RpZmllZF9kcml2ZXJzL2xpbnV4LTIuNi91dGlsL0tidWlsZAotLS0gL2Rldi9udWxsCVRo dSBKYW4gMDEgMDA6MDA6MDAgMTk3MCArMDAwMAorKysgYi91bm1vZGlmaWVkX2RyaXZlcnMv bGludXgtMi42L3V0aWwvS2J1aWxkCVR1ZSBPY3QgMTAgMTU6MTE6MjkgMjAwNiArMDkwMApA QCAtMCwwICsxLDMgQEAKK2luY2x1ZGUgJChNKS9vdmVycmlkZXMubWsKKworb2JqLW0gOj0g cmVib290Lm8K --------------040703030504010200030009 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 --------------040703030504010200030009--