Author: ngie
Date: Fri Sep  8 04:39:59 2017
New Revision: 323300
URL: https://svnweb.freebsd.org/changeset/base/323300

Log:
  MFC r321702,r321703:
  
  r321702:
  
  Load geom_gate(4) if necessary before running tests; skip if it can't be 
loaded
  
  The test code prior to r311893 loaded geom_gate at test start if necessary and
  skipped the tests if it couldn't be loaded.
  
  The ATF-ifcation of this test done in r311893 unfortunately dropped this
  functionality.
  
  This change restores the geom_gate module load and skips the test(s) if 
unavailable
  in an ATF-like way.
  
  PR:           220164
  
  r321703:
  
  Remove superfluous `exit 0` added in r321702
  
  atf_skip triggers equivalent functionality, which means the `exit 0`
  is unreachable code.
  
  PR:           220164
  MFC with:     r321702

Modified:
  stable/11/tests/sys/geom/class/gate/ggate_test.sh
Directory Properties:
  stable/11/   (props changed)

Modified: stable/11/tests/sys/geom/class/gate/ggate_test.sh
==============================================================================
--- stable/11/tests/sys/geom/class/gate/ggate_test.sh   Fri Sep  8 04:37:49 
2017        (r323299)
+++ stable/11/tests/sys/geom/class/gate/ggate_test.sh   Fri Sep  8 04:39:59 
2017        (r323300)
@@ -16,6 +16,8 @@ ggated_head()
 
 ggated_body()
 {
+       load_ggate
+
        us=$(alloc_ggate_dev)
        work=$(alloc_md)
        src=$(alloc_md)
@@ -57,6 +59,8 @@ ggatel_file_head()
 
 ggatel_file_body()
 {
+       load_ggate
+
        us=$(alloc_ggate_dev)
 
        echo src work >> ${PLAINFILES}
@@ -91,6 +95,8 @@ ggatel_md_head()
 
 ggatel_md_body()
 {
+       load_ggate
+
        us=$(alloc_ggate_dev)
        work=$(alloc_md)
        src=$(alloc_md)
@@ -193,6 +199,18 @@ common_cleanup()
                rm md.devs
        fi
        true
+}
+
+load_ggate()
+{
+       local class=gate
+
+       # If the geom class isn't already loaded, try loading it.
+       if ! kldstat -q -m g_${class}; then
+               if ! geom ${class} load; then
+                       atf_skip "could not load module for geom class=${class}"
+               fi
+       fi
 }
 
 # Bug 204616: ggatel(8) creates /dev/ggate* asynchronously if `ggatel create`
_______________________________________________
[email protected] mailing list
https://lists.freebsd.org/mailman/listinfo/svn-src-all
To unsubscribe, send any mail to "[email protected]"

Reply via email to