File tree Expand file tree Collapse file tree 2 files changed +16
-4
lines changed
Expand file tree Collapse file tree 2 files changed +16
-4
lines changed Original file line number Diff line number Diff line change @@ -63,21 +63,27 @@ def _setup_scsi_debug(self):
6363 res , _out , _err = run_command ('modprobe scsi_debug' )
6464 self .assertEqual (res , 0 )
6565 dirs = []
66- while len (dirs ) < 1 :
66+ num_tries = 0
67+ while len (dirs ) < 1 and num_tries < 10 :
6768 dirs = glob .glob ('/sys/bus/pseudo/drivers/scsi_debug/adapter*/host*/target*/*:*/block' )
6869 time .sleep (0.1 )
70+ num_tries += 1
71+ if len (dirs ) < 1 :
72+ raise RuntimeError ("Failed to setup SCSI debug device for testing" )
6973 self .scsi_debug_dev = os .listdir (dirs [0 ])
7074 self .assertEqual (len (self .scsi_debug_dev ), 1 )
7175 self .scsi_debug_dev = '/dev/' + self .scsi_debug_dev [0 ]
7276 self .assertTrue (os .path .exists (self .scsi_debug_dev ))
7377
7478 def _clean_scsi_debug (self ):
7579 try :
80+ num_tries = 0
7681 device = self .scsi_debug_dev .split ('/' )[- 1 ]
7782 if os .path .exists ('/sys/block/' + device ):
7883 write_file ('/sys/block/%s/device/delete' % device , '1' )
79- while os .path .exists (device ):
84+ while os .path .exists (device ) and num_tries < 10 :
8085 time .sleep (0.1 )
86+ num_tries += 1
8187 run_command ('modprobe -r scsi_debug' )
8288 except :
8389 pass
Original file line number Diff line number Diff line change @@ -63,21 +63,27 @@ def _setup_scsi_debug(self):
6363 res , _out , _err = run_command ('modprobe scsi_debug' )
6464 self .assertEqual (res , 0 )
6565 dirs = []
66- while len (dirs ) < 1 :
66+ num_tries = 0
67+ while len (dirs ) < 1 and num_tries < 10 :
6768 dirs = glob .glob ('/sys/bus/pseudo/drivers/scsi_debug/adapter*/host*/target*/*:*/block' )
6869 time .sleep (0.1 )
70+ num_tries += 1
71+ if len (dirs ) < 1 :
72+ raise RuntimeError ("Failed to setup SCSI debug device for testing" )
6973 self .scsi_debug_dev = os .listdir (dirs [0 ])
7074 self .assertEqual (len (self .scsi_debug_dev ), 1 )
7175 self .scsi_debug_dev = '/dev/' + self .scsi_debug_dev [0 ]
7276 self .assertTrue (os .path .exists (self .scsi_debug_dev ))
7377
7478 def _clean_scsi_debug (self ):
7579 try :
80+ num_tries = 0
7681 device = self .scsi_debug_dev .split ('/' )[- 1 ]
7782 if os .path .exists ('/sys/block/' + device ):
7883 write_file ('/sys/block/%s/device/delete' % device , '1' )
79- while os .path .exists (device ):
84+ while os .path .exists (device ) and num_tries < 10 :
8085 time .sleep (0.1 )
86+ num_tries += 1
8187 run_command ('modprobe -r scsi_debug' )
8288 except :
8389 pass
You can’t perform that action at this time.
0 commit comments