diff options
authorMariano Lopez <mariano.lopez@linux.intel.com>2015-10-22 13:39:20 +0000
committerRichard Purdie <richard.purdie@linuxfoundation.org>2015-10-24 12:20:21 +0100
commit52f6bacffc517198f0d1f24e5418ee4c9cb5442a (patch)
parent751a3fec83792037aff23c8cca1bc60664f7b581 (diff)
runqemu-ifup: Check if the tap interface is set up correctly
The process to set up a tap interface is as follows: - tap interface is created - An IP address is assigned to the tap interface - The interface is bring up - A route is added to the target using the tap interface Of all the previous steps, only the first one is check if it was sucessful. The status of the others are ignored and all of them are required to have basic connectivity in the target. This patch adds the checks for the rest of the stpes needed to set up the tap interface. [YOCTO #8550] Signed-off-by: Mariano Lopez <mariano.lopez@linux.intel.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
1 files changed, 15 insertions, 0 deletions
diff --git a/scripts/runqemu-ifup b/scripts/runqemu-ifup
index b5a3db964b4..d9bd8941239 100755
--- a/scripts/runqemu-ifup
+++ b/scripts/runqemu-ifup
@@ -91,10 +91,25 @@ fi
n=$[ (`echo $TAP | sed 's/tap//'` * 2) + 1 ]
$IFCONFIG addr add 192.168.7.$n/32 broadcast dev $TAP
+if [ $STATUS -ne 0 ]; then
+ echo "Failed to set up IP addressing on $TAP"
+ exit 1
$IFCONFIG link set dev $TAP up
+if [ $STATUS -ne 0 ]; then
+ echo "Failed to bring up $TAP"
+ exit 1
dest=$[ (`echo $TAP | sed 's/tap//'` * 2) + 2 ]
$IFCONFIG route add to 192.168.7.$dest dev $TAP
+if [ $STATUS -ne 0 ]; then
+ echo "Failed to add route to 192.168.7.$dest using $TAP"
+ exit 1
# setup NAT for tap0 interface to have internet access in QEMU
$IPTABLES -A POSTROUTING -t nat -j MASQUERADE -s 192.168.7.$n/32