diff --git a/tools/xen/functions b/tools/xen/functions
index 5b4a661..a7d7798 100644
--- a/tools/xen/functions
+++ b/tools/xen/functions
@@ -1,10 +1,8 @@
 #!/bin/bash
 
 function xapi_plugin_location {
-    for PLUGIN_DIR in "/etc/xapi.d/plugins/" "/usr/lib/xcp/plugins/"
-    do
-        if [ -d $PLUGIN_DIR ]
-        then
+    for PLUGIN_DIR in "/etc/xapi.d/plugins/" "/usr/lib/xcp/plugins/"; do
+        if [ -d $PLUGIN_DIR ]; then
             echo $PLUGIN_DIR
             return 0
         fi
@@ -17,7 +15,13 @@
 }
 
 function create_directory_for_kernels {
-    mkdir -p "/boot/guest"
+    if [ -d "/boot/guest" ]; then
+        echo "INFO: /boot/guest directory already exists, using that" >&2
+    else
+        local LOCALPATH="$(get_local_sr_path)/os-guest-kernels"
+        mkdir -p $LOCALPATH
+        ln -s $LOCALPATH /boot/guest
+    fi
 }
 
 function extract_remote_zipball {
@@ -53,3 +57,11 @@
     rm -rf $EXTRACTED_FILES
     chmod a+x ${XAPI_PLUGIN_DIR}*
 }
+
+function get_local_sr {
+    xe sr-list name-label="Local storage" --minimal
+}
+
+function get_local_sr_path {
+    echo "/var/run/sr-mount/$(get_local_sr)"
+}
