def initialize(self, hugetlbfs_dir=None, pages_requested=20): self.hugetlbfs_dir = None # check if basic utilities are present self.job.require_gcc() utils.check_kernel_ver("2.6.16") os_dep.library('libpthread.a') # Check huge page number pages_available = 0 if os.path.exists('/proc/sys/vm/nr_hugepages'): utils.write_one_line('/proc/sys/vm/nr_hugepages', str(pages_requested)) nr_hugepages = utils.read_one_line('/proc/sys/vm/nr_hugepages') pages_available = int(nr_hugepages) else: raise error.TestNAError('Kernel does not support hugepages') if pages_available < pages_requested: raise error.TestError('%d pages available, < %d pages requested' % (pages_available, pages_requested)) # Check if hugetlbfs has been mounted if not utils.file_contains_pattern('/proc/mounts', 'hugetlbfs'): if not hugetlbfs_dir: hugetlbfs_dir = os.path.join(self.tmpdir, 'hugetlbfs') os.makedirs(hugetlbfs_dir) utils.system('mount -t hugetlbfs none %s' % hugetlbfs_dir) self.hugetlbfs_dir = hugetlbfs_dir
def initialize(self, dir = None, pages_requested = 20): self.dir = None self.job.require_gcc() utils.check_kernel_ver("2.6.16") # Check huge page number pages_available = 0 if os.path.exists('/proc/sys/vm/nr_hugepages'): utils.write_one_line('/proc/sys/vm/nr_hugepages', str(pages_requested)) nr_hugepages = utils.read_one_line('/proc/sys/vm/nr_hugepages') pages_available = int(nr_hugepages) else: raise error.TestNAError('Kernel does not support hugepages') if pages_available < pages_requested: raise error.TestError('%d huge pages available, < %d pages requested' % (pages_available, pages_requested)) # Check if hugetlbfs has been mounted if not utils.file_contains_pattern('/proc/mounts', 'hugetlbfs'): if not dir: dir = os.path.join(self.tmpdir, 'hugetlbfs') os.makedirs(dir) utils.system('mount -t hugetlbfs none %s' % dir) self.dir = dir
def initialize(self, hugetlbfs_dir=None, pages_requested=20): self.install_required_pkgs() self.hugetlbfs_dir = None # check if basic utilities are present self.job.require_gcc() utils.check_kernel_ver("2.6.16") os_dep.library('libpthread.a') # Check huge page number pages_available = 0 if os.path.exists('/proc/sys/vm/nr_hugepages'): utils.write_one_line('/proc/sys/vm/nr_hugepages', str(pages_requested)) nr_hugepages = utils.read_one_line('/proc/sys/vm/nr_hugepages') pages_available = int(nr_hugepages) else: raise error.TestNAError('Kernel does not support hugepages') if pages_available < pages_requested: raise error.TestError('%d pages available, < %d pages requested' % (pages_available, pages_requested)) # Check if hugetlbfs has been mounted if not utils.file_contains_pattern('/proc/mounts', 'hugetlbfs'): if not hugetlbfs_dir: hugetlbfs_dir = os.path.join(self.tmpdir, 'hugetlbfs') os.makedirs(hugetlbfs_dir) utils.system('mount -t hugetlbfs none %s' % hugetlbfs_dir) self.hugetlbfs_dir = hugetlbfs_dir
def test_output_option(self): """ This method will verify the whether output file is created or not using '-o' option Ex:/usr/bin/time -o time_out.txt <cmd> """ cmd_invoked = "sleep %s" % self.seconds self.output_file = '%s/time-output-%s' % ( self.tmpdir, time.strftime('%Y-%m-%d-%H.%M.%S')) cmd = "%s -v -o %s %s" % (self.time_exe, self.output_file, cmd_invoked) utils.system(cmd) if os.path.exists(self.output_file) and \ utils.file_contains_pattern(self.output_file, cmd_invoked): logging.info("Output file is created successfully using -o option") else: self.nfail += 1 raise error.TestError( "Failed to create output file using -o option")
def test_append_option(self): """ This method will verify the --append option of time utility Ex:/usr/bin/time -v -a -o time_out.txt <cmd> """ cmd_invoked = "pwd" cmd = "%s -v -a -o %s %s" % (self.time_exe, self.output_file, cmd_invoked) utils.system(cmd) if os.path.exists(self.output_file) and \ utils.file_contains_pattern(self.output_file, cmd_invoked): logging.info( "Output is appended to the output file successfully" + " using -a option of time utility") else: self.nfail += 1 raise error.TestError( "Failed to append the output to a file using -a option")