Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 9 Apr 2019 16:20:36 +0000 (UTC)
From:      Enji Cooper <ngie@FreeBSD.org>
To:        src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org
Subject:   svn commit: r346057 - head/tests/sys/geom/class/eli
Message-ID:  <201904091620.x39GKamM049855@repo.freebsd.org>

next in thread | raw e-mail | index | archive | help
Author: ngie
Date: Tue Apr  9 16:20:36 2019
New Revision: 346057
URL: https://svnweb.freebsd.org/changeset/base/346057

Log:
  Fix geli device cleanup
  
  Final cleanup routines shouldn't be called from testcases; it should be called
  from the testcase cleanup routine.
  
  Furthermore, `geli_test_cleanup` should take care of cleaning up geli providers
  and the memory disks used for the geli providers. `geli_test_cleanup` will always
  be executed whereas the equivalent logic in `geli_test_body`, may not have been
  executed if the test failed prior to the logic being run.
  
  Prior to this change, the test case was trying to clean up `$md` twice: once in
  at the end of the test case body function, and the other in the cleanup function.
  The cleanup function logic was failing because there wasn't anything to clean up
  in the cleanup function and the errors weren't being ignored.
  
  This fixes FreeBSD test suite runs after r345864.
  
  PR:		237128
  Reviewed by:	asomers, pjd
  Approved by:	emaste (mentor)
  MFC with:	r345864
  Differential Revision:	https://reviews.freebsd.org/D19854

Modified:
  head/tests/sys/geom/class/eli/online_resize_test.sh

Modified: head/tests/sys/geom/class/eli/online_resize_test.sh
==============================================================================
--- head/tests/sys/geom/class/eli/online_resize_test.sh	Tue Apr  9 16:17:31 2019	(r346056)
+++ head/tests/sys/geom/class/eli/online_resize_test.sh	Tue Apr  9 16:20:36 2019	(r346057)
@@ -172,22 +172,18 @@ online_resize_body()
 		atf_check -s exit:0 -o match:'^Flags: .*AUTORESIZE' geli list ${md}p1.eli
 		atf_check -s exit:0 -o match:resized gpart resize -i 1 -s 30${prefix} ${md}
 		atf_check -s exit:0 -o match:"^[[:space:]]${osize30}[[:space:]]+# mediasize in bytes" diskinfo -v ${md}p1.eli
-		atf_check geli detach ${md}p1.eli
-
-		# Cleanup.
-		atf_check -s exit:0 -o match:deleted gpart delete -i 1 ${md}
-		atf_check -s exit:0 -o match:destroyed gpart destroy ${md}
-		atf_check -s exit:0 -o ignore mdconfig -d -u ${md}
 	done
 }
 online_resize_cleanup()
 {
 	if [ -f "$TEST_MDS_FILE" ]; then
 		while read md; do
-			[ -c /dev/${md}p1.eli ] && geli detach ${md}p1.eli
-			mdconfig -d -u ${md} 2>/dev/null
+			atf_check -s ignore -e ignore -o ignore geli detach ${md}p1.eli
+			atf_check -s ignore -e ignore -o ignore gpart delete -i 1 ${md}
+			atf_check -s ignore -e ignore -o ignore gpart destroy ${md}
 		done < $TEST_MDS_FILE
 	fi
+	geli_test_cleanup
 }
 
 atf_init_test_cases()



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