Home | History | Annotate | Download | only in kernel_fs_Inplace
      1 
      2 # Copyright (c) 2010 The Chromium OS Authors. All rights reserved.
      3 # Use of this source code is governed by a BSD-style license that can be
      4 # found in the LICENSE file.
      5 
      6 import os, shutil, re
      7 from autotest_lib.client.bin import utils, test
      8 
      9 class kernel_fs_Inplace(test.test):
     10     version = 2
     11 
     12 
     13     def setup(self, tarball='kernel_fs_Inplace.tar.gz'):
     14         tarball = utils.unmap_url(self.bindir, tarball, self.tmpdir)
     15         utils.extract_tarball_to_dir(tarball, self.srcdir)
     16         os.chdir(self.srcdir)
     17         utils.system('make build')
     18 
     19 
     20     def initialize(self):
     21         self.job.require_gcc()
     22         self.results = []
     23         self.job.drop_caches_between_iterations = True
     24 
     25 
     26     def run_once(self, dir=None, iosize=4096, num_iter=100000,
     27       scratch=None, results_file=None):
     28         if not dir:
     29            dir = os.path.join(self.srcdir, 'rdir')
     30            shutil.rmtree(dir, True)
     31            os.mkdir(dir)
     32         if not scratch:
     33            scratch = dir + '/.scratch'
     34         if not results_file:
     35            results_file = dir + '/kernel_fs_Inplace.results'
     36         args  = ' %d' % iosize
     37         args += ' %d' % num_iter
     38         args += ' ' + scratch
     39         args += ' ' + results_file
     40         self.results.append(utils.system_output(os.path.join(self.srcdir,
     41                             'inplace') + ' ' + args))
     42