1. 14 3月, 2015 1 次提交
    • M
      selftests: Introduce minimal shared logic for running tests · 5e29a910
      Michael Ellerman 提交于
      This adds a Make include file which most selftests can then include to
      get the run_tests logic.
      
      On its own this has the advantage of some reduction in repetition, and
      also means the pass/fail message is defined in fewer places.
      
      However the key advantage is it will allow us to implement install very
      simply in a subsequent patch.
      
      The default implementation just executes each program in $(TEST_PROGS).
      
      We use a variable to hold the default implementation of $(RUN_TESTS)
      because that gives us a clean way to override it if necessary, ie. using
      override. The mount, memory-hotplug and mqueue tests use that to provide
      a different implementation.
      
      Tests are not run via /bin/bash, so if they are scripts they must be
      executable, we add a+x to several.
      Signed-off-by: NMichael Ellerman <mpe@ellerman.id.au>
      Signed-off-by: NShuah Khan <shuahkh@osg.samsung.com>
      5e29a910
  2. 09 1月, 2015 1 次提交
  3. 10 10月, 2014 1 次提交
    • K
      selftests/vm/transhuge-stress: stress test for memory compaction · 0085d61f
      Konstantin Khlebnikov 提交于
      This tool induces memory fragmentation via sequential allocation of
      transparent huge pages and splitting off everything except their last
      sub-pages.  It easily generates pressure to the memory compaction code.
      
      $ perf stat -e 'compaction:*' -e 'migrate:*' ./transhuge-stress
      transhuge-stress: allocate 7858 transhuge pages, using 15716 MiB virtual memory and 61 MiB of ram
      transhuge-stress: 1.653 s/loop, 0.210 ms/page,   9504.828 MiB/s	7858 succeed,    0 failed, 2439 different pages
      transhuge-stress: 1.537 s/loop, 0.196 ms/page,  10226.227 MiB/s	7858 succeed,    0 failed, 2364 different pages
      transhuge-stress: 1.658 s/loop, 0.211 ms/page,   9479.215 MiB/s	7858 succeed,    0 failed, 2179 different pages
      transhuge-stress: 1.617 s/loop, 0.206 ms/page,   9716.992 MiB/s	7858 succeed,    0 failed, 2421 different pages
      ^C./transhuge-stress: Interrupt
      
       Performance counter stats for './transhuge-stress':
      
               1.744.051      compaction:mm_compaction_isolate_migratepages
                   1.014      compaction:mm_compaction_isolate_freepages
               1.744.051      compaction:mm_compaction_migratepages
                   1.647      compaction:mm_compaction_begin
                   1.647      compaction:mm_compaction_end
               1.744.051      migrate:mm_migrate_pages
                       0      migrate:mm_numa_migrate_ratelimit
      
             7,964696835 seconds time elapsed
      Signed-off-by: NKonstantin Khlebnikov <koct9i@gmail.com>
      Cc: Rafael Aquini <aquini@redhat.com>
      Cc: Andrey Ryabinin <ryabinin.a.a@gmail.com>
      Cc: Shuah Khan <shuahkh@osg.samsung.com>
      Signed-off-by: NAndrew Morton <akpm@linux-foundation.org>
      Signed-off-by: NLinus Torvalds <torvalds@linux-foundation.org>
      0085d61f
  4. 04 7月, 2013 3 次提交
  5. 18 12月, 2012 1 次提交
    • D
      vm selftests: print failure status instead of cause make error · 000e06b0
      Dave Young 提交于
      Original behavior:
        bash-4.1$ make -C vm run_tests
        make: Entering directory `/home/dave/git/linux-2.6/tools/testing/selftests/vm'
        /bin/sh ./run_vmtests
        ./run_vmtests: line 24: /proc/sys/vm/nr_hugepages: Permission denied
        Please run this test as root
        make: *** [run_tests] Error 1
        make: Leaving directory `/home/dave/git/linux-2.6/tools/testing/selftests/vm'
      
      After applying the patch:
        bash-4.1$ make -C vm run_tests
        make: Entering directory `/home/dave/git/linux-2.6/tools/testing/selftests/vm'
        ./run_vmtests: line 24: /proc/sys/vm/nr_hugepages: Permission denied
        Please run this test as root
        vmtests: [FAIL]
        make: Leaving directory `/home/dave/git/linux-2.6/tools/testing/selftests/vm'
      Signed-off-by: NDave Young <dyoung@redhat.com>
      Cc: Pekka Enberg <penberg@kernel.org>
      Signed-off-by: NAndrew Morton <akpm@linux-foundation.org>
      Signed-off-by: NLinus Torvalds <torvalds@linux-foundation.org>
      000e06b0
  6. 12 12月, 2012 1 次提交
  7. 29 3月, 2012 1 次提交
    • D
      mm: move hugepage test examples to tools/testing/selftests/vm · f0f57b2b
      Dave Young 提交于
      hugepage-mmap.c, hugepage-shm.c and map_hugetlb.c in Documentation/vm are
      simple pass/fail tests, It's better to promote them to
      tools/testing/selftests.
      
      Thanks suggestion of Andrew Morton about this.  They all need firstly
      setting up proper nr_hugepages and hugepage-mmap need to mount hugetlbfs.
      So I add a shell script run_vmtests to do such work which will call the
      three test programs and check the return value of them.
      
      Changes to original code including below:
      a. add run_vmtests script
      b. return error when read_bytes mismatch with writed bytes.
      c. coding style fixes: do not use assignment in if condition
      
      [akpm@linux-foundation.org: build the targets before trying to execute them]
      [akpm@linux-foundation.org: Documentation/vm/ no longer has a Makefile. Fixes "make clean"]
      Signed-off-by: NDave Young <dyoung@redhat.com>
      Cc: Wu Fengguang <fengguang.wu@intel.com>
      Cc: Christoph Lameter <cl@linux.com>
      Cc: Pekka Enberg <penberg@cs.helsinki.fi>
      Cc: Frederic Weisbecker <fweisbec@gmail.com>
      Signed-off-by: NAndrew Morton <akpm@linux-foundation.org>
      Signed-off-by: NLinus Torvalds <torvalds@linux-foundation.org>
      f0f57b2b