From mboxrd@z Thu Jan 1 00:00:00 1970 From: Josep Subirats Subject: Arndale: domU not booting Date: Tue, 22 Oct 2013 18:07:00 +0200 Message-ID: <5266A2A4.6030501@bsc.es> Mime-Version: 1.0 Content-Type: multipart/mixed; boundary="------------020903000802080900010703" 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 List-Id: xen-devel@lists.xenproject.org This is a multi-part message in MIME format. --------------020903000802080900010703 Content-Type: multipart/alternative; boundary="------------030304080502080407000900" --------------030304080502080407000900 Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit Dear all, I followed the steps described in the wiki in order to get an Arnadle board running Xen, but I'm having trouble in starting a domU. Let me describe you the steps I followed. Sorry for such a long mail, but I think that a verbose description is necessary so you can point me what I'm doing wrong. I couldn't boot properly over the network. This is why I modified the boot script so everything was loaded from the microSD (assuming it only contains one partition, which starts at sector 10240 and has all the necessary files in it at its root, along with the filesystem). To achieve it, simply take the source file I attach in this mail and convert it to an img file with: /mkimage -T script -C none -d load-xen-mmc.scr.txt load-xen-mmc.img/ Then set up the environment variables in the board with: /setenv xen_addr_r 0x50000000// //setenv kernel_addr_r 0x60000000// //setenv dtb_addr_r 0x42000000// //setenv script_addr_r 0x40080000// // //setenv bootcmd_load_linux_mmc 'ext2load mmc 0:1 $kernel_addr_r /zImage'// //setenv bootcmd_load_xen_mmc 'ext2load mmc 0:1 $xen_addr_r /xen-uImage'// //setenv bootcmd_load_dtb_mmc 'ext2load mmc 0:1 $dtb_addr_r /exynos5250-arndale.dtb'// //setenv bootcmd_load_script_mmc 'ext2load mmc 0:1 $script_addr_r /load-xen-mmc.img'// // //setenv bootcmd 'run bootcmd_load_script_mmc; source $script_addr_r'// //setenv xen_bootargs 'sync_console console=dtuart dtuart=/serial@12C20000'// //setenv dom0_bootargs 'console=hvc0 ignore_loglevel psci=enable clk_ignore_unused root=/dev/mmcblk1p1 rw rootwait earlyprintk'/ Save the changes with saveenv and simply boot. At this point, I was able to launch the kernel and Xen successfully, and to log into the dom0. I couldn't find any reference on the exact steps to follow in order to be able to execute the "xl" command properly, as the wiki only says that a native compilation of the tools is necessary. So, what I did was to copy the xen source code in the board and compiled it with "make install-tools" (after running ./configure and installing the required packages). I had to modify some library paths (apend "include /usr/local/lib/" to /etc/ld.so.conf and run ldconfig), start xencommons manually (/etc/init.d/xencommons start) and finally I've been able to run "xl list". Nevertheless, when xencommons is started, it outputs: / //root@arndale:/# /etc/init.d/xencommons start// //Starting C xenstored...WARNING: Failed to open connection to gnttab// //Setting domain 0 name...// //Starting xenconsoled...// //Starting QEMU as disk backend for dom0// ///etc/init.d/xencommons: line 120: /usr/local/lib/xen/bin/qemu-system-i386: No such file or directory/ At this point, xl list displays: /root@arndale:/# xl list// //Name ID Mem VCPUs State Time(s)// //Domain-0 0 128 2 r----- 309.8/ Then I tried to create the VM described in the wiki, but to no avail. I copied all the necessary files, concatenated the domU kernel with the xenvm dtb, but in the end I get the following output: / //root@arndale:~# xl create -c vmDescriptor.cfg // //Parsing config from vmDescriptor.cfg// ///etc/xen/scripts/block: line 3: dirname: command not found// ///etc/xen/scripts/block: line 4: /block-common.sh: No such file or directory// ///etc/xen/scripts/block: line 208: xenstore_read_default: command not found// //libxl: error: libxl_exec.c:118:libxl_report_child_exitstatus: /etc/xen/scripts/block add [15289] exited with error status 1// //libxl: error: libxl_create.c:935:domcreate_launch_dm: unable to add disk devices// ///etc/xen/scripts/block: line 3: dirname: command not found// ///etc/xen/scripts/block: line 4: /block-common.sh: No such file or directory// ///etc/xen/scripts/block: line 208: xenstore_read_default: command not found// //libxl: error: libxl_exec.c:118:libxl_report_child_exitstatus: /etc/xen/scripts/block remove [15297] exited with error status 1// //Aborted/ Could you please tell me what is happening? Is there a step I'm not taking into consideration? Many thanks. Best regards, Josep Subirats WARNING / LEGAL TEXT: This message is intended only for the use of the individual or entity to which it is addressed and may contain information which is privileged, confidential, proprietary, or exempt from disclosure under applicable law. If you are not the intended recipient or the person responsible for delivering the message to the intended recipient, you are strictly prohibited from disclosing, distributing, copying, or in any way using this message. If you have received this communication in error, please notify the sender and destroy and delete any copies you may have received. http://www.bsc.es/disclaimer --------------030304080502080407000900 Content-Type: text/html; charset=ISO-8859-1 Content-Transfer-Encoding: 7bit Dear all,

I followed the steps described in the wiki in order to get an Arnadle board running Xen, but I'm having trouble in starting a domU. Let me describe you the steps I followed. Sorry for such a long mail, but I think that a verbose description is necessary so you can point me what I'm doing wrong.

I couldn't boot properly over the network. This is why I modified the boot script so everything was loaded from the microSD (assuming it only contains one partition, which starts at sector 10240 and has all the necessary files in it at its root, along with the filesystem). To achieve it, simply take the source file I attach in this mail and convert it to an img file with:

mkimage -T script -C none -d load-xen-mmc.scr.txt load-xen-mmc.img

Then set up the environment variables in the board with:

setenv xen_addr_r 0x50000000
setenv kernel_addr_r 0x60000000
setenv dtb_addr_r 0x42000000
setenv script_addr_r 0x40080000

setenv bootcmd_load_linux_mmc 'ext2load mmc 0:1 $kernel_addr_r /zImage'
setenv bootcmd_load_xen_mmc 'ext2load mmc 0:1 $xen_addr_r /xen-uImage'
setenv bootcmd_load_dtb_mmc 'ext2load mmc 0:1 $dtb_addr_r /exynos5250-arndale.dtb'
setenv bootcmd_load_script_mmc 'ext2load mmc 0:1 $script_addr_r /load-xen-mmc.img'

setenv bootcmd 'run bootcmd_load_script_mmc; source $script_addr_r'
setenv xen_bootargs 'sync_console console=dtuart dtuart=/serial@12C20000'
setenv dom0_bootargs 'console=hvc0 ignore_loglevel psci=enable clk_ignore_unused root=/dev/mmcblk1p1 rw rootwait earlyprintk'

Save the changes with saveenv and simply boot.

At this point, I was able to launch the kernel and Xen successfully, and to log into the dom0. I couldn't find any reference on the exact steps to follow in order to be able to execute the "xl" command properly, as the wiki only says that a native compilation of the tools is necessary. So, what I did was to copy the xen source code in the board and compiled it with "make install-tools" (after running ./configure and installing the required packages).

I had to modify some library paths (apend "include /usr/local/lib/" to /etc/ld.so.conf and run ldconfig), start xencommons manually (/etc/init.d/xencommons start) and finally I've been able to run "xl list". Nevertheless, when xencommons is started, it outputs:

root@arndale:/# /etc/init.d/xencommons start
Starting C xenstored...WARNING: Failed to open connection to gnttab
Setting domain 0 name...
Starting xenconsoled...
Starting QEMU as disk backend for dom0
/etc/init.d/xencommons: line 120: /usr/local/lib/xen/bin/qemu-system-i386: No such file or directory

At this point, xl list displays:

root@arndale:/# xl list
Name                                        ID   Mem VCPUs      State   Time(s)
Domain-0                                     0   128     2     r-----     309.8

Then I tried to create the VM described in the wiki, but to no avail. I copied all the necessary files, concatenated the domU kernel with the xenvm dtb, but in the end I get the following output:

root@arndale:~# xl create -c vmDescriptor.cfg
Parsing config from vmDescriptor.cfg
/etc/xen/scripts/block: line 3: dirname: command not found
/etc/xen/scripts/block: line 4: /block-common.sh: No such file or directory
/etc/xen/scripts/block: line 208: xenstore_read_default: command not found
libxl: error: libxl_exec.c:118:libxl_report_child_exitstatus: /etc/xen/scripts/block add [15289] exited with error status 1
libxl: error: libxl_create.c:935:domcreate_launch_dm: unable to add disk devices
/etc/xen/scripts/block: line 3: dirname: command not found
/etc/xen/scripts/block: line 4: /block-common.sh: No such file or directory
/etc/xen/scripts/block: line 208: xenstore_read_default: command not found
libxl: error: libxl_exec.c:118:libxl_report_child_exitstatus: /etc/xen/scripts/block remove [15297] exited with error status 1
Aborted

Could you please tell me what is happening? Is there a step I'm not taking into consideration?

Many thanks. Best regards,

Josep Subirats


WARNING / LEGAL TEXT: This message is intended only for the use of the individual or entity to which it is addressed and may contain information which is privileged, confidential, proprietary, or exempt from disclosure under applicable law. If you are not the intended recipient or the person responsible for delivering the message to the intended recipient, you are strictly prohibited from disclosing, distributing, copying, or in any way using this message. If you have received this communication in error, please notify the sender and destroy and delete any copies you may have received.

http://www.bsc.es/disclaimer
--------------030304080502080407000900-- --------------020903000802080900010703 Content-Type: text/plain; charset=UTF-8; name="load-xen-mmc.scr.txt" Content-Transfer-Encoding: 7bit Content-Disposition: attachment; filename="load-xen-mmc.scr.txt" # Load Linux in memory run bootcmd_load_linux_mmc # Load Xen in memory run bootcmd_load_xen_mmc # Load the device tree in memory run bootcmd_load_dtb_mmc ## Fixup the device tree # Be sure U-boot is using our FDT fdt addr $dtb_addr_r # Resize the FDT just in case fdt resize # Set Xen arguments based on $xen_bootargs fdt set /chosen xen,xen-bootargs \"$xen_bootargs\" #setenv bootargs $xen_bootargs # On Xen unstable, xen cmdline is in bootargs # Set Dom0 arguments based on $dom0_bootargs fdt set /chosen xen,dom0-bootargs \"$dom0_bootargs\" # Create modules node fdt mknode /chosen modules fdt set /chosen/modules '#address-cells' <1> fdt set /chosen/modules '#size-cells' <1> # Create node for the linux located at $kernel_addr_r # It seems U-boot doesn't have command to retrieve the size, so the size is # set to a big value (10Mb) fdt mknode /chosen/modules module@0 fdt set /chosen/modules/module@0 compatible xen,linux-zimage xen,multiboot-module fdt set /chosen/modules/module@0 reg <$kernel_addr_r 0x00a00000> ## Boot Xen bootm $xen_addr_r - $dtb_addr_r --------------020903000802080900010703 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.xen.org http://lists.xen.org/xen-devel --------------020903000802080900010703--