aboutsummaryrefslogtreecommitdiffstats
path: root/tools/hotplug
diff options
context:
space:
mode:
authorRoger Pau Monne <roger.pau@citrix.com>2012-08-31 10:42:07 +0100
committerRoger Pau Monne <roger.pau@citrix.com>2012-08-31 10:42:07 +0100
commitc6c1fd29e93566c2ddf6e2e0c040444b82918d28 (patch)
tree2be7807956de5d637f30ba71ebdd90046412edc3 /tools/hotplug
parentf38549dbe470cdf7baa65d81f29668ad15f97a6e (diff)
downloadxen-c6c1fd29e93566c2ddf6e2e0c040444b82918d28.tar.gz
xen-c6c1fd29e93566c2ddf6e2e0c040444b82918d28.tar.bz2
xen-c6c1fd29e93566c2ddf6e2e0c040444b82918d28.zip
hotplug/NetBSD: check type of file to attach from params
xend used to set the xenbus backend entry "type" to either "phy" or "file", but now libxl sets it to "phy" for both file and block device. We have to manually check for the type of the "param" field in order to detect if we are trying to attach a file or a block device. Signed-off-by: Christoph Egger <Christoph.Egger@amd.com> Signed-off-by: Roger Pau Monne <roger.pau@citrix.com> Acked-by: Ian Jackson <ian.jackson@eu.citrix.com> Committed-by: Ian Campbell <ian.campbell@citrix.com>
Diffstat (limited to 'tools/hotplug')
-rw-r--r--tools/hotplug/NetBSD/block11
1 files changed, 10 insertions, 1 deletions
diff --git a/tools/hotplug/NetBSD/block b/tools/hotplug/NetBSD/block
index 2c10ed70ab..f1146b51c1 100644
--- a/tools/hotplug/NetBSD/block
+++ b/tools/hotplug/NetBSD/block
@@ -20,8 +20,17 @@ error() {
xpath=$1
xstatus=$2
-xtype=$(xenstore-read "$xpath/type")
xparams=$(xenstore-read "$xpath/params")
+if [ -b "$xparams" ]; then
+ xtype="phy"
+elif [ -f "$xparams" ]; then
+ xtype="file"
+elif [ -z "$xparams" ]; then
+ error "$xpath/params is empty, unable to attach block device."
+else
+ error "$xparams is not a valid file type to use as block device." \
+ "Only block and regular image files accepted."
+fi
case $xstatus in
6)