VirtualBox

vbox的更動 62052 路徑 trunk/src/VBox/ValidationKit


忽略:
時間撮記:
2016-7-6 下午12:41:01 (8 年 以前)
作者:
vboxsync
訊息:

ValidationKit/tests/storage: Fixes to get the testcase working on a host

位置:
trunk/src/VBox/ValidationKit/tests/storage
檔案:
修改 2 筆資料

圖例:

未更動
新增
刪除
  • trunk/src/VBox/ValidationKit/tests/storage/storagecfg.py

    r62037 r62052  
    117117        fRc = True;
    118118        if sZPoolRaid is not None:
    119             fRc = oExec.execBinary('zpool', ('create', sPool, sZPoolRaid,) + asDisks);
     119            fRc = oExec.execBinary('zpool', ('create', '-f', sPool, sZPoolRaid,) + tuple(asDisks));
    120120        else:
    121121            fRc = False;
     
    214214
    215215    kdStorageCfgs = {
    216         'testboxstor1': ('solaris', 'c[3-9]t*d0')
     216        'testboxstor1.de.oracle.com': ('solaris', 'c[3-9]t\dd0\Z')
    217217    };
    218218
     
    315315
    316316            # Find a name for the pool
    317             sPool = 'pool' + self.iPoolId;
     317            sPool = 'pool' + str(self.iPoolId);
    318318            self.iPoolId += 1;
    319319
     
    359359        sMountPoint = None;
    360360        if self.dPools.has_key(sPool):
    361             sVol = 'vol' + self.iVolId;
     361            sVol = 'vol' + str(self.iVolId);
    362362            sMountPoint = self.oStorOs.getMntBase() + '/' + sVol;
    363363            self.iVolId += 1;
     
    382382            fRc = self.oStorOs.destroyVolume(self.oExec, sPool, sVol);
    383383            if fRc:
    384                 self.dVols.pop(sVol);
    385         else:
    386             fRc = False;
    387 
    388         return fRc;
    389 
     384                self.dVols.pop(sMountPoint);
     385        else:
     386            fRc = False;
     387
     388        return fRc;
     389
  • trunk/src/VBox/ValidationKit/tests/storage/tdStorageBenchmark1.py

    r62039 r62052  
    7474
    7575    kdHostIoEngine = {
    76         'solaris': 'solarisaio',
    77         'linux':   'libaio'
     76        'solaris': ('solarisaio', False),
     77        'linux':   ('libaio', True)
    7878    };
    7979
     
    8787
    8888        sTargetOs = self.dCfg.get('TargetOs', 'linux');
    89         sIoEngine = self.kdHostIoEngine.get(sTargetOs);
     89        sIoEngine, fDirectIo = self.kdHostIoEngine.get(sTargetOs);
    9090        if sIoEngine is None:
    9191            return False;
     
    9797        cfgBuf.write('iodepth=' + self.dCfg.get('QueueDepth', '32') + '\n');
    9898        cfgBuf.write('size=' + self.dCfg.get('TestsetSize', '2g') + '\n');
    99         cfgBuf.write('direct=1\n');
     99        if fDirectIo:
     100            cfgBuf.write('direct=1\n');
     101        else:
     102            cfgBuf.write('direct=0\n');
    100103        cfgBuf.write('directory=' + self.dCfg.get('FilePath', '/mnt') + '\n');
    101104
     
    116119        cfgBuf.write('stonewall\n');
    117120
    118         self.sCfgFileId = self.oExecutor.copyString(cfgBuf, 'aio-test', cMsTimeout);
     121        self.sCfgFileId = self.oExecutor.copyString(cfgBuf.getvalue(), 'aio-test', cMsTimeout);
    119122        return self.sCfgFileId is not None;
    120123
     
    157160        self.sQueueDepth  = dCfg.get('QueueDepth',  '32');
    158161        self.sFilePath    = dCfg.get('FilePath',    '/mnt/iozone');
     162        self.fDirectIo    = True;
     163
     164        sTargetOs = dCfg.get('TargetOs');
     165        if sTargetOs == 'solaris':
     166            self.fDirectIo = False;
    159167
    160168    def prepare(self, cMsTimeout = 30000):
     
    165173    def run(self, cMsTimeout = 30000):
    166174        """ Runs the testcase """
    167         fRc, sOutput = self.oExecutor.execBinary('iozone', ('-r', self.sRecordSize, '-s', self.sTestsetSize, \
    168                                                             '-t', '1', '-T', '-I', \
    169                                                             '-H', self.sQueueDepth,'-F', self.sFilePath));
     175        tupArgs = ('-r', self.sRecordSize, '-s', self.sTestsetSize, \
     176                   '-t', '1', '-T', '-H', self.sQueueDepth, '-F', self.sFilePath + '/iozone.tmp');
     177        if self.fDirectIo:
     178            tupArgs += ('-I',);
     179        fRc, sOutput = self.oExecutor.execBinary('iozone', tupArgs);
    170180        if fRc:
    171181            self.sResult = sOutput;
     
    389399        # Create a basic pool with the default configuration.
    390400        oStorCfg = storagecfg.StorageCfg(oExecutor, socket.gethostname().lower());
    391         fRc, sPoolId = oStorCfg.createStoragePool(oExecutor);
     401        fRc, sPoolId = oStorCfg.createStoragePool();
    392402        if fRc:
    393403            fRc, sMountpoint = oStorCfg.createVolume(sPoolId);
    394404            if fRc:
    395 
    396405                # Create a basic config
    397406                dCfg = {
     
    424433                    reporter.testDone();
    425434            else:
    426                 reporter.testFailure('Creating a storage pool on the target failed');
     435                reporter.testFailure('Creating a storage volume on the target failed');
    427436
    428437            oStorCfg.cleanup();
     438        else:
     439            reporter.testFailure('Creating a storage pool on the target failed');
    429440
    430441        return fRc;
注意: 瀏覽 TracChangeset 來幫助您使用更動檢視器

© 2024 Oracle Support Privacy / Do Not Sell My Info Terms of Use Trademark Policy Automated Access Etiquette