runqemu: add user mode (SLIRP) support to x86 QEMU targets

Using 'slirp' as a command line option to runqemu will start QEMU
with user mode networking instead of creating tun/tap devices.
SLIRP does not require root access. By default port 2222 on the
host will be mapped to port 22 in the guest. The default port
mapping can be overwritten with the QB_SLIRP_OPT variable e.g.

QB_SLIRP_OPT = "-net nic,model=e1000 -net user,hostfwd=tcp::2222-:22"

(From OE-Core rev: 80e6fc678f3dcd774d9376cdf2a6afcba2cd0b09)

Signed-off-by: Todor Minchev <todor.minchev@linux.intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This commit is contained in:
Todor Minchev 2016-10-26 10:05:59 -07:00 committed by Richard Purdie
parent 81386beaf0
commit 33ceab7979
2 changed files with 3 additions and 1 deletions

View File

@ -13,3 +13,4 @@ QB_AUDIO_OPT = "-soundhw ac97,es1370"
QB_KERNEL_CMDLINE_APPEND = "vga=0 uvesafb.mode_option=640x480-32 oprofile.timer=1 uvesafb.task_timeout=-1"
# Add the 'virtio-rng-pci' device otherwise the guest may run out of entropy
QB_OPT_APPEND = "-vga vmware -show-cursor -usb -usbdevice tablet -device virtio-rng-pci"
QB_SLIRP_OPT = "-net nic,model=e1000 -net user,hostfwd=tcp::2222-:22"

View File

@ -542,7 +542,8 @@ class BaseConfig(object):
def check_and_set(self):
"""Check configs sanity and set when needed"""
self.validate_paths()
check_tun()
if not self.slirp_enabled:
check_tun()
# Check audio
if self.audio_enabled:
if not self.get('QB_AUDIO_DRV'):