From mboxrd@z Thu Jan 1 00:00:00 1970 From: James Dingwall Subject: =?utf-8?q?pygrub/hvm_boot_with_alternate_script=3D_fo?= =?utf-8?q?r_block_devices?= Date: Sat, 19 Jan 2013 15:46:32 +0000 Message-ID: Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii"; Format="flowed" Content-Transfer-Encoding: 7bit Return-path: List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Sender: xen-devel-bounces@lists.xen.org Errors-To: xen-devel-bounces@lists.xen.org To: xen-devel@lists.xen.org List-Id: xen-devel@lists.xenproject.org Hi, I am doing some experimentation with xen and Ceph and have a problem booting my guest when my disk = [] uses an alternate block script. Installation from a .iso was ok since the boot device was a file but now trying to boot from the rbd neither the hvmbuilder or pygrub can start as they treat the first value after target= as the /dev node to try and use. My disk parameter looks like: disk = [ 'format=raw, script=block-rbd, vdev=xvda, access=w, target=image=ubuntu-test' ] In the pygrub log: OSError: [Errno 2] No such file or directory: 'image=ubuntu-test' and there is a similar error trying an HVM boot. My block-rbd script parses the value passed after target= to dynamically rbd map the image and then call the write_dev function from block-common.sh to save the corresponding /dev name in xenstore. According to the logging that I have in my block-rbd script this isn't even called before pygrub is executed. Is there a good reason that the block devices aren't connected before pygrub is called so that it can then be invoked with the appropriate /dev device that has been written in xenstore? Thanks, James