Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 18 Apr 2017 16:17:38 +0000 (UTC)
From:      Alan Somers <asomers@FreeBSD.org>
To:        src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-10@freebsd.org
Subject:   svn commit: r317093 - stable/10/tests/sys/netinet
Message-ID:  <201704181617.v3IGHcpl078811@repo.freebsd.org>

next in thread | raw e-mail | index | archive | help
Author: asomers
Date: Tue Apr 18 16:17:38 2017
New Revision: 317093
URL: https://svnweb.freebsd.org/changeset/base/317093

Log:
  MFC r285117
  
  Make cleanup routines idempotent
  
  cleanup routines can be executed at any point during the execution of the
  body, including even before the body has done any real work.  In those
  cases, cleanup routines should be careful to not raise spurious errors so
  as to not "override" the actual result of the test case.
  
  This is just general good coding style but is not a problem in practice
  for these specific tests.  (The way I discovered the issue, though, was
  due to a regression I introduced in Kyua itself while refactoring some
  internals.)
  
  MFC after:      1 week

Modified:
  stable/10/tests/sys/netinet/fibs_test.sh
Directory Properties:
  stable/10/   (props changed)

Modified: stable/10/tests/sys/netinet/fibs_test.sh
==============================================================================
--- stable/10/tests/sys/netinet/fibs_test.sh	Tue Apr 18 15:43:47 2017	(r317092)
+++ stable/10/tests/sys/netinet/fibs_test.sh	Tue Apr 18 16:17:38 2017	(r317093)
@@ -98,9 +98,12 @@ arpresolve_checks_interface_fib_body()
 }
 arpresolve_checks_interface_fib_cleanup()
 {
-	for PID in `cat "processes_to_kill"`; do
-		kill $PID
-	done
+	if [ -f processes_to_kill ]; then
+		for pid in $(cat processes_to_kill); do
+			kill "${pid}"
+		done
+		rm -f processes_to_kill
+	fi
 	cleanup_tap
 }
 
@@ -477,8 +480,10 @@ setup_tap()
 
 cleanup_tap()
 {
-	for TAPD in `cat "tap_devices_to_cleanup"`; do
-		ifconfig ${TAPD} destroy
-	done
-	rm "tap_devices_to_cleanup"
+	if [ -f tap_devices_to_cleanup ]; then
+		for tap_device in $(cat tap_devices_to_cleanup); do
+			ifconfig "${tap_device}" destroy
+		done
+		rm -f tap_devices_to_cleanup
+	fi
 }



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201704181617.v3IGHcpl078811>