46 lines
		
	
	
		
			1.1 KiB
		
	
	
	
		
			Bash
		
	
	
		
			Executable File
		
	
	
			
		
		
	
	
			46 lines
		
	
	
		
			1.1 KiB
		
	
	
	
		
			Bash
		
	
	
		
			Executable File
		
	
	
| #!/bin/sh
 | |
| # SPDX-License-Identifier: GPL-2.0-or-later
 | |
| # Copyright (c) 2016-2018 Oracle and/or its affiliates. All Rights Reserved.
 | |
| # Copyright (c) International Business Machines  Corp., 2003
 | |
| #
 | |
| #  PURPOSE: Runs fsstress over an NFS mount point for a specified amount
 | |
| #           of time. The purpose of this test is to stress the NFS kernel
 | |
| #           code and possibly the underlying filesystem where the export
 | |
| #           resides.  A PASS is if the test completes.
 | |
| 
 | |
| TST_TESTFUNC="do_test"
 | |
| TST_CLEANUP="do_cleanup"
 | |
| . nfs_lib.sh
 | |
| 
 | |
| THREAD_NUM=${THREAD_NUM:-"2"}
 | |
| 
 | |
| do_cleanup()
 | |
| {
 | |
| 	[ -n "$pids" ] && kill -9 $pids
 | |
| 	nfs_cleanup
 | |
| }
 | |
| 
 | |
| do_test()
 | |
| {
 | |
| 	tst_res TINFO "Starting fsstress processes on NFS mounts"
 | |
| 
 | |
| 	local n=0
 | |
| 	local pids
 | |
| 	for i in $VERSION; do
 | |
| 		fsstress -l 1 -d $TST_TMPDIR/$i/$n -n 1000 -p $THREAD_NUM -r -c > /dev/null &
 | |
| 		pids="$pids $!"
 | |
| 		n=$(( n + 1 ))
 | |
| 	done
 | |
| 
 | |
| 	tst_res TINFO "waiting for pids:$pids"
 | |
| 	for p in $pids; do
 | |
| 		wait $p || tst_brk TFAIL "fsstress process failed"
 | |
| 		tst_res TINFO "fsstress '$p' completed"
 | |
| 	done
 | |
| 	pids=
 | |
| 
 | |
| 	tst_res TPASS "all fsstress processes completed on '$n' NFS mounts"
 | |
| }
 | |
| 
 | |
| tst_run
 |