From: Masaki Kanno Subject: [PATCH] Fix error message and wait time for xm block-detach command Date: Tue, 04 Sep 2007 19:48:21 +0900 Message-ID: Mime-Version: 1.0 Content-Type: multipart/mixed; boundary="Boundary-yKwdhUX5bRy4p3HgikHpF" 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: jfehlig@novell.com List-Id: xen-devel@lists.xenproject.org --Boundary-yKwdhUX5bRy4p3HgikHpF Content-Type: text/plain; charset=iso-2022-jp Content-Transfer-Encoding: 7bit Content-Description: Mail message body Hi, I tested xm block-detach command with latest xen-unstable and changeset:15736 in the staging tree. Test cases are as follows. I found some problems in the following test case 1, 3 and 8. +--+----------+----------+----------+----------+ | |A |B |C |D | | +----------+----------+----------+----------+ | |Domain |Already |Disk Type |Disk | | | Status| Attached?| | on Guest| +--+----------+----------+----------+----------+ | 1|Active |Yes |VBD |Mounted | +--+----------+----------+----------+----------+ | 2|Inactive |No |TAP |Unmounted | | |(Managed) | | | | +--+----------+----------+----------+----------+ Test case 1:A1+B1+C1+D1 # xm block-detach vm1 hda1 << Wait 200 seconds >> Error: Device hda1 (tap) could not be disconnected. Usage: xm block-detach [-f|--force] Destroy a domain's virtual block device. # ** The keyword "(tap)" in the error message is misleading. ** The wait time is 200 seconds. It's long, isn't it? Test case 2:A1+B1+C1+D2 # xm block-detach vm1 hdb1 # ** Good Test case 3:A1+B1+C2+D1 # xm block-detach vm2 hda1 << Wait 200 seconds >> Error: Device hda1 (tap) could not be disconnected. Usage: xm block-detach [-f|--force] Destroy a domain's virtual block device. ** The wait time is 200 seconds. It's long, isn't it? Test case 4:A1+B1+C2+D2 # xm block-detach vm2 hdb1 # ** Good Test case 5:A1+B2 # xm block-detach vm2 hdb2 Error: Device 834 not connected Usage: xm block-detach [-f|--force] Destroy a domain's virtual block device. ** Good Test case 6:A2+B1+C1 # xm block-detach vm1 hda1 # ** Good Test case 7:A2+B1+C2 # xm block-detach vm2 hda1 # ** Good Test case 8:A2+B2 # xm block-detach vm2 hdb2 # ** Error message is not shown. About the problem of test case 1 and 3: - Wait time There is a cause in xm. When xm requires a block device detaching to xend, xm requires the block device detaching two times. At first, xm requires the block device detaching by device class 'vbd'. Next, xm requires the block device detaching by device class 'tap'. As the result, the wait time is 200 seconds because each of the block device detaching requests causes time-out. - Misleading error message Because the last request is by device class 'tap' to xend, the keyword "(tap)" is included in the error message of test case 1. This patch fixes the number of times of the block device detaching request to one time. At first, xm makes inquiries about device class of a detaching target device to xend. Then xm requires the block device detaching by xend returned device class. The wait time becomes 100 seconds because the block device detaching request is one time. And the error message is also fixed. About the problem of test case 8: There is a cause in xend. In the test case, xend does not show error message. This patch fixes to show the following error message in test case. # xm block-detach vm2 hdb2 Error: Device hdb2 is not defined Usage: xm block-detach [-f|--force] Destroy a domain's virtual block device. Signed-off-by: Masaki Kanno Best regards, Kan --Boundary-yKwdhUX5bRy4p3HgikHpF Content-Type: application/octet-stream; name="error_message_for_xm_block-detach.patch" Content-Disposition: attachment; filename="error_message_for_xm_block-detach.patch" Content-Transfer-Encoding: base64 ZGlmZiAtciBlOGI3MWQ1ZTU4NGQgdG9vbHMvcHl0aG9uL3hlbi94ZW5kL1hlbmREb21haW5J bmZvLnB5Ci0tLSBhL3Rvb2xzL3B5dGhvbi94ZW4veGVuZC9YZW5kRG9tYWluSW5mby5weQlN b24gU2VwIDAzIDE1OjA0OjAzIDIwMDcgKzAxMDAKKysrIGIvdG9vbHMvcHl0aG9uL3hlbi94 ZW5kL1hlbmREb21haW5JbmZvLnB5CVR1ZSBTZXAgMDQgMTk6Mzg6NDggMjAwNyArMDkwMApA QCAtNjAyLDE2ICs2MDIsMTYgQEAgY2xhc3MgWGVuZERvbWFpbkluZm86CiAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICBtYWMgPSB4WzFdCiAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICBicmVhawogICAgICAgICAgICAgICAgICAgICAgICAgICAg IGJyZWFrCi0gICAgICAgICAgICAgICAgICAgIGRldl9pbmZvID0gc2VsZi5nZXREZXZpY2VJ bmZvX3ZpZihtYWMpCisgICAgICAgICAgICAgICAgICAgIGRldl9pbmZvID0gc2VsZi5fZ2V0 RGV2aWNlSW5mb192aWYobWFjKQogICAgICAgICAgICAgICAgIGVsc2U6CiAgICAgICAgICAg ICAgICAgICAgIF8sIGRldl9pbmZvID0gc3hwcnNbZGV2XQogICAgICAgICAgICAgZWxzZTog ICMgJ3ZiZCcgb3IgJ3RhcCcKLSAgICAgICAgICAgICAgICBkZXZfaW5mbyA9IHNlbGYuZ2V0 RGV2aWNlSW5mb192YmQoZGV2KQorICAgICAgICAgICAgICAgIGRldl9pbmZvID0gc2VsZi5f Z2V0RGV2aWNlSW5mb192YmQoZGV2KQogICAgICAgICAgICAgICAgICMgVG8gcmVtb3ZlIHRo ZSBVVUlEIG9mIHRoZSBkZXZpY2UgZnJvbSByZWZzLAogICAgICAgICAgICAgICAgICMgZGV2 aWNlQ2xhc3MgbXVzdCBiZSBhbHdheXMgJ3ZiZCcuCiAgICAgICAgICAgICAgICAgZGV2aWNl Q2xhc3MgPSAndmJkJwogICAgICAgICAgICAgaWYgZGV2X2luZm8gaXMgTm9uZToKLSAgICAg ICAgICAgICAgICByZXR1cm4gcmMKKyAgICAgICAgICAgICAgICByYWlzZSBYZW5kRXJyb3Io IkRldmljZSAlcyBpcyBub3QgZGVmaW5lZCIgJSBkZXZpZCkKIAogICAgICAgICAgICAgZGV2 X3V1aWQgPSBzeHAuY2hpbGRfdmFsdWUoZGV2X2luZm8sICd1dWlkJykKICAgICAgICAgICAg IGRlbCBzZWxmLmluZm9bJ2RldmljZXMnXVtkZXZfdXVpZF0KQEAgLTYzMiwxNCArNjMyLDIy IEBAIGNsYXNzIFhlbmREb21haW5JbmZvOgogICAgICAgICAgICAgICAgICAgICBkZXZfbnVt ICs9IDEKICAgICAgICAgICAgIHJldHVybiBzeHBycwogCi0gICAgZGVmIGdldERldmljZUlu Zm9fdmlmKHNlbGYsIG1hYyk6CisgICAgZGVmIGdldEJsb2NrRGV2aWNlQ2xhc3Moc2VsZiwg ZGV2aWQpOgorICAgICAgICAjIFRvIGdldCBhIGRldmljZSBudW1iZXIgZnJvbSB0aGUgZGV2 aWQsCisgICAgICAgICMgd2UgdGVtcG9yYXJpbHkgdXNlIHRoZSBkZXZpY2UgY29udHJvbGxl ciBvZiBWQkQuCisgICAgICAgIGRldiA9IHNlbGYuZ2V0RGV2aWNlQ29udHJvbGxlcigndmJk JykuY29udmVydFRvRGV2aWNlTnVtYmVyKGRldmlkKQorICAgICAgICBkZXZfaW5mbyA9IHNl bGYuX2dldERldmljZUluZm9fdmJkKGRldikKKyAgICAgICAgaWYgZGV2X2luZm86CisgICAg ICAgICAgICByZXR1cm4gZGV2X2luZm9bMF0KKworICAgIGRlZiBfZ2V0RGV2aWNlSW5mb192 aWYoc2VsZiwgbWFjKToKICAgICAgICAgZm9yIGRldl90eXBlLCBkZXZfaW5mbyBpbiBzZWxm LmluZm8uYWxsX2RldmljZXNfc3hwcigpOgogICAgICAgICAgICAgaWYgZGV2X3R5cGUgIT0g J3ZpZic6CiAgICAgICAgICAgICAgICAgY29udGludWUKICAgICAgICAgICAgIGlmIG1hYyA9 PSBzeHAuY2hpbGRfdmFsdWUoZGV2X2luZm8sICdtYWMnKToKICAgICAgICAgICAgICAgICBy ZXR1cm4gZGV2X2luZm8KIAotICAgIGRlZiBnZXREZXZpY2VJbmZvX3ZiZChzZWxmLCBkZXZp ZCk6CisgICAgZGVmIF9nZXREZXZpY2VJbmZvX3ZiZChzZWxmLCBkZXZpZCk6CiAgICAgICAg IGZvciBkZXZfdHlwZSwgZGV2X2luZm8gaW4gc2VsZi5pbmZvLmFsbF9kZXZpY2VzX3N4cHIo KToKICAgICAgICAgICAgIGlmIGRldl90eXBlICE9ICd2YmQnIGFuZCBkZXZfdHlwZSAhPSAn dGFwJzoKICAgICAgICAgICAgICAgICBjb250aW51ZQpkaWZmIC1yIGU4YjcxZDVlNTg0ZCB0 b29scy9weXRob24veGVuL3hlbmQvc2VydmVyL1hNTFJQQ1NlcnZlci5weQotLS0gYS90b29s cy9weXRob24veGVuL3hlbmQvc2VydmVyL1hNTFJQQ1NlcnZlci5weQlNb24gU2VwIDAzIDE1 OjA0OjAzIDIwMDcgKzAxMDAKKysrIGIvdG9vbHMvcHl0aG9uL3hlbi94ZW5kL3NlcnZlci9Y TUxSUENTZXJ2ZXIucHkJVHVlIFNlcCAwNCAxOToxNzo0NyAyMDA3ICswOTAwCkBAIC04Nyw3 ICs4Nyw3IEBAIG1ldGhvZHMgPSBbJ2RldmljZV9jcmVhdGUnLCAnZGV2aWNlX2NvbmYKICAg ICAgICAgICAgJ2Rlc3Ryb3lEZXZpY2UnLCdnZXREZXZpY2VTeHBycycsCiAgICAgICAgICAg ICdzZXRNZW1vcnlUYXJnZXQnLCAnc2V0TmFtZScsICdzZXRWQ3B1Q291bnQnLCAnc2h1dGRv d24nLAogICAgICAgICAgICAnc2VuZF9zeXNycScsICdnZXRWQ1BVSW5mbycsICd3YWl0Rm9y RGV2aWNlcycsCi0gICAgICAgICAgICdnZXRSZXN0YXJ0Q291bnQnXQorICAgICAgICAgICAn Z2V0UmVzdGFydENvdW50JywgJ2dldEJsb2NrRGV2aWNlQ2xhc3MnXQogCiBleGNsdWRlID0g Wydkb21haW5fY3JlYXRlJywgJ2RvbWFpbl9yZXN0b3JlJ10KIApkaWZmIC1yIGU4YjcxZDVl NTg0ZCB0b29scy9weXRob24veGVuL3htL21haW4ucHkKLS0tIGEvdG9vbHMvcHl0aG9uL3hl bi94bS9tYWluLnB5CU1vbiBTZXAgMDMgMTU6MDQ6MDMgMjAwNyArMDEwMAorKysgYi90b29s cy9weXRob24veGVuL3htL21haW4ucHkJVHVlIFNlcCAwNCAxOToxNzo0NyAyMDA3ICswOTAw CkBAIC0yMjE3LDEyICsyMjE3LDEzIEBAIGRlZiB4bV9ibG9ja19kZXRhY2goYXJncyk6CiAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAlIChkZXYsZG9tKSkKICAgICBlbHNlOgog ICAgICAgICBhcmdfY2hlY2soYXJncywgJ2Jsb2NrLWRldGFjaCcsIDIsIDMpCi0gICAgICAg IHRyeToKKyAgICAgICAgZG9tID0gYXJnc1swXQorICAgICAgICBkZXYgPSBhcmdzWzFdCisg ICAgICAgIGRjID0gc2VydmVyLnhlbmQuZG9tYWluLmdldEJsb2NrRGV2aWNlQ2xhc3MoZG9t LCBkZXYpCisgICAgICAgIGlmIGRjID09ICJ0YXAiOgorICAgICAgICAgICAgZGV0YWNoKGFy Z3MsICd0YXAnKQorICAgICAgICBlbHNlOgogICAgICAgICAgICAgZGV0YWNoKGFyZ3MsICd2 YmQnKQotICAgICAgICAgICAgcmV0dXJuCi0gICAgICAgIGV4Y2VwdDoKLSAgICAgICAgICAg IHBhc3MKLSAgICAgICAgZGV0YWNoKGFyZ3MsICd0YXAnKQogCiBkZWYgeG1fbmV0d29ya19k ZXRhY2goYXJncyk6CiAgICAgaWYgc2VydmVyVHlwZSA9PSBTRVJWRVJfWEVOX0FQSToK --Boundary-yKwdhUX5bRy4p3HgikHpF 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 --Boundary-yKwdhUX5bRy4p3HgikHpF--