* [PATCH V2 0/3] runqemu fixes about iptables rules and preconfigured tap
@ 2013-08-28 2:52 Qi.Chen
2013-08-28 2:52 ` [PATCH V2 1/3] runqemu-ifdown: clean up the remaining iptables rules Qi.Chen
` (2 more replies)
0 siblings, 3 replies; 4+ messages in thread
From: Qi.Chen @ 2013-08-28 2:52 UTC (permalink / raw)
To: openembedded-core
From: Chen Qi <Qi.Chen@windriver.com>
The following changes since commit 44c3f72684c5c920ce8af1da54a2268047342589:
lib/oeqa/runtime: smart: add checks for smart output (2013-08-26 16:29:18 +0100)
are available in the git repository at:
git://git.pokylinux.org/poky-contrib ChenQi/runqemu-fixes
http://git.pokylinux.org/cgit.cgi/poky-contrib/log/?h=ChenQi/runqemu-fixes
Chen Qi (3):
runqemu-ifdown: clean up the remaining iptables rules
runqemu-internal: don't bring down preconfigured tap interface
runqemu-internal: provide more info if a preconfigured tap is used
scripts/runqemu-ifdown | 14 ++++++++++++++
scripts/runqemu-internal | 5 ++++-
2 files changed, 18 insertions(+), 1 deletion(-)
--
1.7.9.5
^ permalink raw reply [flat|nested] 4+ messages in thread
* [PATCH V2 1/3] runqemu-ifdown: clean up the remaining iptables rules
2013-08-28 2:52 [PATCH V2 0/3] runqemu fixes about iptables rules and preconfigured tap Qi.Chen
@ 2013-08-28 2:52 ` Qi.Chen
2013-08-28 2:52 ` [PATCH V2 2/3] runqemu-internal: don't bring down preconfigured tap interface Qi.Chen
2013-08-28 2:52 ` [PATCH V2 3/3] runqemu-internal: provide more info if a preconfigured tap is used Qi.Chen
2 siblings, 0 replies; 4+ messages in thread
From: Qi.Chen @ 2013-08-28 2:52 UTC (permalink / raw)
To: openembedded-core
From: Chen Qi <Qi.Chen@windriver.com>
The iptables rules for the tap interface are added by runqemu-ifup
everytime we use runqemu to start a qemu target. But it's not cleaned
up when runqemu exits.
This patch cleans up the remaining iptables rules for the tap interface
in runqemu-ifdown.
[YOCTO #5047]
Signed-off-by: Chen Qi <Qi.Chen@windriver.com>
---
scripts/runqemu-ifdown | 14 ++++++++++++++
1 file changed, 14 insertions(+)
diff --git a/scripts/runqemu-ifdown b/scripts/runqemu-ifdown
index 8b8c5a4..8f66cfa2 100755
--- a/scripts/runqemu-ifdown
+++ b/scripts/runqemu-ifdown
@@ -50,3 +50,17 @@ if [ ! -e "$TUNCTL" ]; then
fi
$TUNCTL -d $TAP
+
+# cleanup the remaining iptables rules
+IPTABLES=`which iptables 2> /dev/null`
+if [ "x$IPTABLES" = "x" ]; then
+ IPTABLES=/sbin/iptables
+fi
+if [ ! -x "$IPTABLES" ]; then
+ echo "$IPTABLES cannot be executed"
+ exit 1
+fi
+n=$[ (`echo $TAP | sed 's/tap//'` * 2) + 1 ]
+dest=$[ (`echo $TAP | sed 's/tap//'` * 2) + 2 ]
+$IPTABLES -D POSTROUTING -t nat -j MASQUERADE -s 192.168.7.$n/32
+$IPTABLES -D POSTROUTING -t nat -j MASQUERADE -s 192.168.7.$dest/32
--
1.7.9.5
^ permalink raw reply related [flat|nested] 4+ messages in thread
* [PATCH V2 2/3] runqemu-internal: don't bring down preconfigured tap interface
2013-08-28 2:52 [PATCH V2 0/3] runqemu fixes about iptables rules and preconfigured tap Qi.Chen
2013-08-28 2:52 ` [PATCH V2 1/3] runqemu-ifdown: clean up the remaining iptables rules Qi.Chen
@ 2013-08-28 2:52 ` Qi.Chen
2013-08-28 2:52 ` [PATCH V2 3/3] runqemu-internal: provide more info if a preconfigured tap is used Qi.Chen
2 siblings, 0 replies; 4+ messages in thread
From: Qi.Chen @ 2013-08-28 2:52 UTC (permalink / raw)
To: openembedded-core
From: Chen Qi <Qi.Chen@windriver.com>
runqemu-ifup and runqemu-ifdown should be pairs. If we're using a
preconfigured tap interface, the runqemu-ifdown should not be invoked
to bring it down.
Signed-off-by: Chen Qi <Qi.Chen@windriver.com>
---
scripts/runqemu-internal | 4 +++-
1 file changed, 3 insertions(+), 1 deletion(-)
diff --git a/scripts/runqemu-internal b/scripts/runqemu-internal
index 8a6e551..8165e13 100755
--- a/scripts/runqemu-internal
+++ b/scripts/runqemu-internal
@@ -175,12 +175,14 @@ else
POSSIBLE=`$IFCONFIG link | grep 'tap' | awk '{print $2}' | sed s/://`
TAP=""
LOCKFILE=""
+ USE_PRECONF_TAP="no"
for tap in $POSSIBLE; do
LOCKFILE="$LOCKDIR/$tap"
echo "Acquiring lockfile for $tap..."
acquire_lock $LOCKFILE
if [ $? -eq 0 ]; then
TAP=$tap
+ USE_PRECONF_TAP="yes"
break
fi
done
@@ -215,7 +217,7 @@ else
fi
cleanup() {
- if [ ! -e "$NOSUDO_FLAG" ]; then
+ if [ ! -e "$NOSUDO_FLAG" -a "$USE_PRECONF_TAP" = "no" ]; then
# Redirect stderr since we could see a LD_PRELOAD warning here if pseudo is loaded
# but inactive. This looks scary but is harmless
sudo $QEMUIFDOWN $TAP $OECORE_NATIVE_SYSROOT 2> /dev/null
--
1.7.9.5
^ permalink raw reply related [flat|nested] 4+ messages in thread
* [PATCH V2 3/3] runqemu-internal: provide more info if a preconfigured tap is used
2013-08-28 2:52 [PATCH V2 0/3] runqemu fixes about iptables rules and preconfigured tap Qi.Chen
2013-08-28 2:52 ` [PATCH V2 1/3] runqemu-ifdown: clean up the remaining iptables rules Qi.Chen
2013-08-28 2:52 ` [PATCH V2 2/3] runqemu-internal: don't bring down preconfigured tap interface Qi.Chen
@ 2013-08-28 2:52 ` Qi.Chen
2 siblings, 0 replies; 4+ messages in thread
From: Qi.Chen @ 2013-08-28 2:52 UTC (permalink / raw)
To: openembedded-core
From: Chen Qi <Qi.Chen@windriver.com>
We should provide the user more information if a preconfigured tap
is used. This is because the user might have manually set up the tap
interface to be used by other qemu binaries.
So at a minimum, we should let the user know how to make runqemu skip
that tap interface.
[YOCTO #5047]
Signed-off-by: Chen Qi <Qi.Chen@windriver.com>
---
scripts/runqemu-internal | 1 +
1 file changed, 1 insertion(+)
diff --git a/scripts/runqemu-internal b/scripts/runqemu-internal
index 8165e13..f9d8728 100755
--- a/scripts/runqemu-internal
+++ b/scripts/runqemu-internal
@@ -214,6 +214,7 @@ else
fi
else
echo "Using preconfigured tap device '$TAP'"
+ echo "If this is not intended, use flock on $LOCKFILE.lock to make runqemu skip $TAP."
fi
cleanup() {
--
1.7.9.5
^ permalink raw reply related [flat|nested] 4+ messages in thread
end of thread, other threads:[~2013-08-28 2:51 UTC | newest]
Thread overview: 4+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2013-08-28 2:52 [PATCH V2 0/3] runqemu fixes about iptables rules and preconfigured tap Qi.Chen
2013-08-28 2:52 ` [PATCH V2 1/3] runqemu-ifdown: clean up the remaining iptables rules Qi.Chen
2013-08-28 2:52 ` [PATCH V2 2/3] runqemu-internal: don't bring down preconfigured tap interface Qi.Chen
2013-08-28 2:52 ` [PATCH V2 3/3] runqemu-internal: provide more info if a preconfigured tap is used Qi.Chen
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.