summaryrefslogtreecommitdiffstats
path: root/scripts
diff options
context:
space:
mode:
authorJason Wessel <jason.wessel@windriver.com>2014-01-23 08:32:46 -0600
committerRichard Purdie <richard.purdie@linuxfoundation.org>2014-01-28 00:52:36 +0000
commit2fedfdca12983cf3240dd7b22ae53d7ee3b2b372 (patch)
treef3baa65f90107d1ea54c43408a75866e752b43d9 /scripts
parent96b24e7bd550cf8a3fc2fffa89349600d1a6280a (diff)
downloadpoky-2fedfdca12983cf3240dd7b22ae53d7ee3b2b372.tar.gz
runqemu, runqemu-internal: Allow slirp for NFS and KVM use
The default slirp address for the NFS server is 10.0.2.2. If not using a tap interface this address must be used or the target system cannot connect properly. Also the ip=... kernel arguments need to be set to dhcp when using slirp or the root NFS will not get setup properly. The call to cleanup() results in a routine which is not defined when setting up the NFS because it is called before acquire() for the locking of the tap interfaces, the solution being to simply not call cleanup() that early. When using slirp, kvm should not execute the vhost net checks because the vhost net will not be configure or used. (From OE-Core rev: 1ea04d87525f26c2cd32ba29c0f14c6226f60729) Signed-off-by: Jason Wessel <jason.wessel@windriver.com> Signed-off-by: Saul Wold <sgw@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'scripts')
-rwxr-xr-xscripts/runqemu10
-rwxr-xr-xscripts/runqemu-internal19
2 files changed, 17 insertions, 12 deletions
diff --git a/scripts/runqemu b/scripts/runqemu
index dcb2931cac..9272b6f2d5 100755
--- a/scripts/runqemu
+++ b/scripts/runqemu
@@ -279,10 +279,12 @@ if [ "x$KVM_ENABLED" = "xyes" ]; then
279 exit 1; 279 exit 1;
280 fi 280 fi
281 if [ ! -w /dev/vhost-net -o ! -r /dev/vhost-net ]; then 281 if [ ! -w /dev/vhost-net -o ! -r /dev/vhost-net ]; then
282 echo "You have no rights on /dev/vhost-net." 282 if [ "$SLIRP_ENABLED" != "yes" ] ; then
283 echo "Please change the ownership of this file as described at:" 283 echo "You have no rights on /dev/vhost-net."
284 echo "$YOCTO_PARAVIRT_KVM_WIKI"; 284 echo "Please change the ownership of this file as described at:"
285 exit 1; 285 echo "$YOCTO_PARAVIRT_KVM_WIKI";
286 exit 1;
287 fi
286 fi 288 fi
287fi 289fi
288 290
diff --git a/scripts/runqemu-internal b/scripts/runqemu-internal
index cecb527dfc..e3b0729030 100755
--- a/scripts/runqemu-internal
+++ b/scripts/runqemu-internal
@@ -114,7 +114,7 @@ NFSRUNNING="false"
114ORIG_STTY=$(stty -g) 114ORIG_STTY=$(stty -g)
115 115
116if [ "$SLIRP_ENABLED" = "yes" ]; then 116if [ "$SLIRP_ENABLED" = "yes" ]; then
117 KERNEL_NETWORK_CMD="" 117 KERNEL_NETWORK_CMD="ip=dhcp"
118 QEMU_TAP_CMD="" 118 QEMU_TAP_CMD=""
119 QEMU_UI_OPTIONS="-show-cursor -usb -usbdevice wacom-tablet" 119 QEMU_UI_OPTIONS="-show-cursor -usb -usbdevice wacom-tablet"
120 if [ "$KVM_ACTIVE" = "yes" ]; then 120 if [ "$KVM_ACTIVE" = "yes" ]; then
@@ -301,9 +301,18 @@ if [ "$FSTYPE" != "nfs" -a "$FSTYPE" != "vmdk" -a ! -f "$ROOTFS" ]; then
301 return 1 301 return 1
302fi 302fi
303 303
304if [ "$FSTYPE" = "nfs" ]; then 304if [ "$NFS_SERVER" = "" ]; then
305 NFS_SERVER="192.168.7.1" 305 NFS_SERVER="192.168.7.1"
306 if [ "$SLIRP_ENABLED" = "yes" ]; then
307 NFS_SERVER="10.0.2.2"
308 fi
309fi
310
311if [ "$FSTYPE" = "nfs" ]; then
306 NFS_DIR=`echo $ROOTFS | sed 's/^[^:]*:\(.*\)/\1/'` 312 NFS_DIR=`echo $ROOTFS | sed 's/^[^:]*:\(.*\)/\1/'`
313 if [ "$NFS_INSTANCE" = "" ] ; then
314 NFS_INSTANCE=0
315 fi
307 MOUNTD_RPCPORT=$[ 21111 + $NFS_INSTANCE ] 316 MOUNTD_RPCPORT=$[ 21111 + $NFS_INSTANCE ]
308 NFSD_RPCPORT=$[ 11111 + $NFS_INSTANCE ] 317 NFSD_RPCPORT=$[ 11111 + $NFS_INSTANCE ]
309 NFSD_PORT=$[ 3049 + 2 * $NFS_INSTANCE ] 318 NFSD_PORT=$[ 3049 + 2 * $NFS_INSTANCE ]
@@ -317,17 +326,11 @@ if [ "$FSTYPE" = "nfs" ]; then
317 echo "runqemu-export-rootfs restart $ROOTFS" 326 echo "runqemu-export-rootfs restart $ROOTFS"
318 runqemu-export-rootfs restart $ROOTFS 327 runqemu-export-rootfs restart $ROOTFS
319 if [ $? != 0 ]; then 328 if [ $? != 0 ]; then
320 cleanup
321 return 1 329 return 1
322 fi 330 fi
323 NFSRUNNING="true" 331 NFSRUNNING="true"
324fi 332fi
325 333
326if [ "$NFS_SERVER" = "" ]; then
327 NFS_SERVER="192.168.7.1"
328 NFS_DIR=$ROOTFS
329fi
330
331if [ "$MACHINE" = "qemuarm" -o "$MACHINE" = "qemuarmv6" -o "$MACHINE" = "qemuarmv7" ]; then 334if [ "$MACHINE" = "qemuarm" -o "$MACHINE" = "qemuarmv6" -o "$MACHINE" = "qemuarmv7" ]; then
332 QEMU=qemu-system-arm 335 QEMU=qemu-system-arm
333 MACHINE_SUBTYPE=versatilepb 336 MACHINE_SUBTYPE=versatilepb