Hi Todor,
On 10/27/2016 01:05 AM, Todor Minchev wrote:
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"
Signed-off-by: Todor Minchev <todor.minc...@linux.intel.com>
---
meta/conf/machine/include/qemuboot-x86.inc | 1 +
scripts/runqemu | 3 ++-
2 files changed, 3 insertions(+), 1 deletion(-)
diff --git a/meta/conf/machine/include/qemuboot-x86.inc
b/meta/conf/machine/include/qemuboot-x86.inc
index 06ac983..0870294 100644
--- a/meta/conf/machine/include/qemuboot-x86.inc
+++ b/meta/conf/machine/include/qemuboot-x86.inc
@@ -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"
It will causes errors when multiple qemus are running:
qemu-system-x86_64: -net user,hostfwd=tcp::2222-:22: could not set up host
forwarding rule 'tcp::2222-:22'
qemu-system-x86_64: -net user,hostfwd=tcp::2222-:22: Device 'user' could not be
initialized
This because the port are used by another qemu. I will move these
code into runqemu, and check whether the port is available, add 1 if not
until find a usable port. Default to forward 22, and user can add other
ports.
// Robert
diff --git a/scripts/runqemu b/scripts/runqemu
index dbe17ab..6952f32 100755
--- a/scripts/runqemu
+++ b/scripts/runqemu
@@ -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'):
--
_______________________________________________
Openembedded-core mailing list
Openembedded-core@lists.openembedded.org
http://lists.openembedded.org/mailman/listinfo/openembedded-core