)]}'
{
  "log": [
    {
      "commit": "b3c2ded99b52ff92cafc408e407a6e1b22c96487",
      "tree": "096abf3159fb681d97c9fd5f265c90dfe2a8868b",
      "parents": [
        "18f8690144bf6c22a73bdee3699f64a8d492e372"
      ],
      "author": {
        "name": "Huang Ying",
        "email": "ying.huang@linux.alibaba.com",
        "time": "Sun Oct 12 10:48:01 2025 +0800"
      },
      "committer": {
        "name": "Wu Fengguang",
        "email": "wfg@mail.ustc.edu.cn",
        "time": "Sun Oct 12 10:48:01 2025 +0800"
      },
      "message": "Add swap read test cases\n\nSimilar as case-swap-w-*, except reading page fault is used for\nswapin.  This has some impact on page reclaiming because the\nswapped-in pages will be clean.\n\nSigned-off-by: Huang Ying \u003cying.huang@linux.alibaba.com\u003e\n"
    },
    {
      "commit": "18f8690144bf6c22a73bdee3699f64a8d492e372",
      "tree": "9e8a690d1c571b91e60674767c0e90f3b44c3dc2",
      "parents": [
        "6f4ef164eef69f2533dac9d56df469e61923f789"
      ],
      "author": {
        "name": "Huang Ying",
        "email": "ying.huang@linux.alibaba.com",
        "time": "Sat Sep 27 16:18:28 2025 +0800"
      },
      "committer": {
        "name": "Wu Fengguang",
        "email": "wfg@mail.ustc.edu.cn",
        "time": "Sat Sep 27 16:18:28 2025 +0800"
      },
      "message": "Support to write protect memory with fork/exec periodically\n\nTo test the performance of the kernel write protect and reuse page\npath.  One example is\n\nTIMED_WP\u003d40 ./case-anon-w-rand-mt\n\nSigned-off-by: Huang Ying \u003cying.huang@linux.alibaba.com\u003e\n"
    },
    {
      "commit": "6f4ef164eef69f2533dac9d56df469e61923f789",
      "tree": "bedcea3fd4133196e6f80512dd2f14151328365d",
      "parents": [
        "08f498bb57615e594259a1fd870aca082908a452"
      ],
      "author": {
        "name": "Aaron Lu",
        "email": "aaron.lu@intel.com",
        "time": "Thu Mar 03 19:13:18 2022 +0800"
      },
      "committer": {
        "name": "Wu Fengguang",
        "email": "wfg@mail.ustc.edu.cn",
        "time": "Thu Mar 03 19:13:18 2022 +0800"
      },
      "message": "case-truncate-seq: truncate sequentially\n\nMel Gorman suggested LKP to cover a case where sparsefiles are removed\nsequentially so add a case based on case-truncate, which did the remove\nconcurrently.\n\nIn the meantime, this script will also report faultin time.\n\nNote the example script provided by Mel in the below link has a \u0027sync\u0027\nafter reading of the sparsefile and before removing of it. I failed to\nunderstand the intent of the \u0027sync\u0027 so I omitted.\n\nLINK: https://lore.kernel.org/linux-mm/20220217093113.GU3366@techsingularity.net/\nSuggested-by: Mel Gorman \u003cmgorman@techsingularity.net\u003e\nSigned-off-by: Aaron Lu \u003caaron.lu@intel.com\u003e\n"
    },
    {
      "commit": "08f498bb57615e594259a1fd870aca082908a452",
      "tree": "9134730310a6d84ed9de52d9246d5e2e4e044763",
      "parents": [
        "357b2e411fe5c03c81817aea9b321e1027f587fe"
      ],
      "author": {
        "name": "Aaron Lu",
        "email": "aaron.lu@intel.com",
        "time": "Thu Mar 03 19:13:06 2022 +0800"
      },
      "committer": {
        "name": "Wu Fengguang",
        "email": "wfg@mail.ustc.edu.cn",
        "time": "Thu Mar 03 19:13:06 2022 +0800"
      },
      "message": "case-truncate: use cat for sparsefile to consume memory\n\nThe intent of \"cp sparsefile /dev/null\" is to fill page cache with\nsparsefile\u0027s content, but since cp will recognize the src file\nbeing sparse and skip doing any read of it but just writing zeros to\n/dev/null, it kind of failed the purpose.\n\nFix this by using \u0027cat sparsefile \u003e /dev/null\u0027.\n\nSigned-off-by: Aaron Lu \u003caaron.lu@intel.com\u003e\n"
    },
    {
      "commit": "357b2e411fe5c03c81817aea9b321e1027f587fe",
      "tree": "d46fcac21d35289b77e1058d922c7a46900f839e",
      "parents": [
        "bd40585ad77dc6ccc422485d87dca51aa3031829"
      ],
      "author": {
        "name": "Hui Zhu",
        "email": "teawater@antfin.com",
        "time": "Wed Apr 28 17:29:01 2021 +0800"
      },
      "committer": {
        "name": "Wu Fengguang",
        "email": "wfg@mail.ustc.edu.cn",
        "time": "Sat May 01 17:11:18 2021 +0800"
      },
      "message": "usemem: Update the usage of touch-alloc\n\nThe touch-alloc was updated to write memory in commit\n3f9c6c227120db43873d1af20cea3f374eb99592.\n\nThis commit updates the usage of touch-alloc.\n\nSigned-off-by: Hui Zhu \u003cteawater@antfin.com\u003e\nSigned-off-by: Wu Fengguang \u003cwfg@mail.ustc.edu.cn\u003e\n"
    },
    {
      "commit": "bd40585ad77dc6ccc422485d87dca51aa3031829",
      "tree": "6d78fd79eeab48014c5a27255c10f3b84e018a3a",
      "parents": [
        "3f9c6c227120db43873d1af20cea3f374eb99592"
      ],
      "author": {
        "name": "Hui Zhu",
        "email": "teawater@antfin.com",
        "time": "Wed Apr 14 10:44:36 2021 +0800"
      },
      "committer": {
        "name": "Wu Fengguang",
        "email": "wfg@mail.ustc.edu.cn",
        "time": "Fri Apr 16 16:46:18 2021 +0800"
      },
      "message": "usemem: Output a message after punch holes done\n\nWhen I use punch holes to setup a test page fragmentation environment, I\ndidn\u0027t know when the punch holes done.  I can only get this information\nthrough top or something else.\n\nThis commit add code to output a message after punch holes done to\nhandle this issue.\n\nSigned-off-by: Hui Zhu \u003cteawater@antfin.com\u003e\nSigned-off-by: Wu Fengguang \u003cwfg@mail.ustc.edu.cn\u003e\n"
    },
    {
      "commit": "3f9c6c227120db43873d1af20cea3f374eb99592",
      "tree": "182a5aae89e3b13d387471eb1604e2b09de90b24",
      "parents": [
        "ef16f000ce67ae825c98b85cb8fafc6a17e3de1a"
      ],
      "author": {
        "name": "Hui Zhu",
        "email": "teawater@gmail.com",
        "time": "Sat Apr 10 09:02:44 2021 +0800"
      },
      "committer": {
        "name": "Wu Fengguang",
        "email": "wfg@mail.ustc.edu.cn",
        "time": "Sat Apr 10 09:02:44 2021 +0800"
      },
      "message": "usemem: Add code for touch-alloc\n\nAdd code for touch-alloc.\nAnd Change read memory to write memory to avoid use the zero-page for\nreads in do_anonymous_page.\n\nSigned-off-by: Hui Zhu \u003cteawater@gmail.com\u003e\n"
    },
    {
      "commit": "ef16f000ce67ae825c98b85cb8fafc6a17e3de1a",
      "tree": "698912969675c181d22b71142c619533e734c37d",
      "parents": [
        "8c931f0fe125d5d71f92cc38d764ba37044da857"
      ],
      "author": {
        "name": "Hui Zhu",
        "email": "teawaterz@linux.alibaba.com",
        "time": "Tue Jan 19 14:43:13 2021 +0800"
      },
      "committer": {
        "name": "Wu Fengguang",
        "email": "wfg@mail.ustc.edu.cn",
        "time": "Thu Jan 21 21:19:32 2021 +0800"
      },
      "message": "usemem: Remove the duplicate do_access\n\nGot following error when build usemem:\ngcc -O -c -Wall -g  usemem.c -o usemem.o\nusemem.c:451:15: error: redefinition of ‘do_access’\n unsigned long do_access(unsigned long *p, unsigned long idx, int read)\n               ^~~~~~~~~\nusemem.c:332:15: note: previous definition of ‘do_access’ was here\n unsigned long do_access(unsigned long *p, unsigned long idx, int read)\n               ^~~~~~~~~\nmake: *** [usemem.o] Error 1\n\nRemove the duplicate do_access to fix this error.\n\nSigned-off-by: Hui Zhu \u003cteawaterz@linux.alibaba.com\u003e\n"
    },
    {
      "commit": "8c931f0fe125d5d71f92cc38d764ba37044da857",
      "tree": "f84803e3f5ff5cd8aca3645f44352fadd928c095",
      "parents": [
        "98e1853270ec204e21cf64c61af16866d9a67fd4"
      ],
      "author": {
        "name": "Hui Zhu",
        "email": "teawaterz@linux.alibaba.com",
        "time": "Fri Dec 18 21:18:48 2020 +0800"
      },
      "committer": {
        "name": "Wu Fengguang",
        "email": "wfg@mail.ustc.edu.cn",
        "time": "Fri Dec 18 21:18:48 2020 +0800"
      },
      "message": "usemem: Add option touch-alloc\n\nSome environment will not fault in memory even if MAP_POPULATE is set.\nSo add option touch-alloc to read memory after allocate it to make\nsure the pages is fault in.\n\nSigned-off-by: Hui Zhu \u003cteawaterz@linux.alibaba.com\u003e\n"
    },
    {
      "commit": "98e1853270ec204e21cf64c61af16866d9a67fd4",
      "tree": "96fe54a71e67f87c24cd3f7f4fd6bd9b9ff16fbf",
      "parents": [
        "2ad0bfa97c0396fa53933dfbf734a350d1e4347f"
      ],
      "author": {
        "name": "Hui Zhu",
        "email": "teawaterz@linux.alibaba.com",
        "time": "Fri Dec 18 21:05:44 2020 +0800"
      },
      "committer": {
        "name": "Wu Fengguang",
        "email": "wfg@mail.ustc.edu.cn",
        "time": "Fri Dec 18 21:05:44 2020 +0800"
      },
      "message": "usemem: Add option init-time\n\nAdd a new option init-time to remove the initialization\ntime from the run time and show the initialization time.\n\nSigned-off-by: Hui Zhu \u003cteawaterz@linux.alibaba.com\u003e\n"
    },
    {
      "commit": "2ad0bfa97c0396fa53933dfbf734a350d1e4347f",
      "tree": "2e71c633da04d18f06b285bb0b7e2cf48f14a83d",
      "parents": [
        "0b057c87ae336580df8b80e1ecde829b83ec84b3"
      ],
      "author": {
        "name": "Fengguang Wu",
        "email": "wufengguang@huawei.com",
        "time": "Thu Mar 05 14:00:49 2020 +0800"
      },
      "committer": {
        "name": "Fengguang Wu",
        "email": "wufengguang@huawei.com",
        "time": "Thu Mar 05 14:01:35 2020 +0800"
      },
      "message": "usemem: minor cleanups\n\nChange pagesize to \"unsigned long\" since it\u0027s used\nin comparison with other unsigned long variables.\n\nSigned-off-by: Fengguang Wu \u003cwufengguang@huawei.com\u003e\n"
    },
    {
      "commit": "0b057c87ae336580df8b80e1ecde829b83ec84b3",
      "tree": "53fcbac5881cd31dba4e2df98245441008bc21e3",
      "parents": [
        "9b8c7fa79441e8d9708ead507f37964447874880"
      ],
      "author": {
        "name": "Hui Zhu",
        "email": "teawater@gmail.com",
        "time": "Thu Mar 05 10:36:04 2020 +0800"
      },
      "committer": {
        "name": "Fengguang Wu",
        "email": "wufengguang@huawei.com",
        "time": "Thu Mar 05 13:55:23 2020 +0800"
      },
      "message": "usemem: Add new option --punch-holes for generating fragmented pages\n\nHi Fengguang,\n\nThanks for your review.  This is the new version that was updated\naccording to you comments.\n\nThis commit adds new option --punch-holes.  usemem will free every\nother page after allocation.  Then it will generate size/2/pagesize\nfragmented pages with this option.\nIts implementation is to use madvise to release a page every other page.\n\nFor example:\nusemem --punch-holes -s -1 400m\nIdeally, this command will generate 200m fragmented pages in the system.\n\nThis command can help test anti-fragmentation function and other features\nthat are affected by fragmentation issues of the Linux kernel.\n\nSigned-off-by: Hui Zhu \u003cteawaterz@linux.alibaba.com\u003e\nSigned-off-by: Fengguang Wu \u003cwufengguang@huawei.com\u003e\n"
    },
    {
      "commit": "9b8c7fa79441e8d9708ead507f37964447874880",
      "tree": "663db2ea13287e87dea70d157a1af2abb74ec019",
      "parents": [
        "ca4b1eb502ffc53aaf657a3c8e3487ddbc9f048b"
      ],
      "author": {
        "name": "Hui Zhu",
        "email": "teawater@gmail.com",
        "time": "Tue Mar 03 14:24:44 2020 +0800"
      },
      "committer": {
        "name": "Fengguang Wu",
        "email": "wufengguang@huawei.com",
        "time": "Wed Mar 04 15:14:13 2020 +0800"
      },
      "message": "Makefile: Add static build option\n\nSometimes vm-scalability needs to work in an environment without an\nlibraries.  Supporting static build is helpful.\n\nThis commit add static build option:\nmake STATIC\u003d1\n\nSigned-off-by: Hui Zhu \u003cteawaterz@linux.alibaba.com\u003e\nSigned-off-by: Fengguang Wu \u003cwufengguang@huawei.com\u003e\n"
    },
    {
      "commit": "ca4b1eb502ffc53aaf657a3c8e3487ddbc9f048b",
      "tree": "880518b461135c6e877cc1f313c6dd4aa59ff547",
      "parents": [
        "95081d4aeff089ff2891ae5e1334e475a634bc53"
      ],
      "author": {
        "name": "Hui Zhu",
        "email": "teawater@gmail.com",
        "time": "Wed Dec 25 16:40:28 2019 +0800"
      },
      "committer": {
        "name": "Fengguang Wu",
        "email": "fengguang.wu@intel.com",
        "time": "Wed Dec 25 16:45:25 2019 +0800"
      },
      "message": "usemem: Fix the build warning\n\nGot:\ngcc -O -c -Wall -g  usemem.c -o usemem.o\nusemem.c: In function ‘output_statistics’:\nusemem.c:638:2: warning: ignoring return value of ‘write’, declared with attribute warn_unused_result [-Wunused-result]\n  write(1, buf, len);\n\nThis commit fixes this warning.\n\nSigned-off-by: Hui Zhu \u003cteawaterz@linux.alibaba.com\u003e\n"
    },
    {
      "commit": "95081d4aeff089ff2891ae5e1334e475a634bc53",
      "tree": "c478d73f06fbd981f1950b7ac47755d963fdb96f",
      "parents": [
        "4b12da9f8a403ea5a31f578dc90805e60bf8dcd5"
      ],
      "author": {
        "name": "Xiao Yang",
        "email": "xiaox.yang@intel.com",
        "time": "Fri Nov 29 16:55:23 2019 +0800"
      },
      "committer": {
        "name": "Fengguang Wu",
        "email": "fengguang.wu@intel.com",
        "time": "Fri Nov 29 19:06:40 2019 +0800"
      },
      "message": "usemem.c: Add missing opt_repeat\n\nFix the following compiler error:\n----------------------------------------\nusemem.c:711:17: error: too many arguments to function ‘do_rw_once’\n     rw_bytes +\u003d do_rw_once(ptrs[i], lens[i], \u0026rand_data, 1, \u0026rep, opt_repeat);\n                 ^~~~~~~~~~\n...\nusemem.c:763:16: error: too many arguments to function ‘do_rw_once’\n   unit_bytes \u003d do_rw_once(buffer, opt_bytes, \u0026rand_data, 1, NULL, 0);\n                ^~~~~~~~~~\nusemem.c:463:22: note: declared here\n static unsigned long do_rw_once(unsigned long *p, unsigned long bytes,\n                      ^~~~~~~~~~\n----------------------------------------\n\nFixes: 4b12da9(\"usemem: rename reps to opt_repeat\")\nReported-by: kernel test robot \u003clkp@intel.com\u003e\nSigned-off-by: Xiao Yang \u003cxiaox.yang@intel.com\u003e\n\nSigned-off-by: Fengguang Wu \u003cfengguang.wu@intel.com\u003e\n"
    },
    {
      "commit": "4b12da9f8a403ea5a31f578dc90805e60bf8dcd5",
      "tree": "914a8708367db6d0f823f4b5595e142010c2a503",
      "parents": [
        "eb261e3649d276e43ea029866b8083caa77b4703"
      ],
      "author": {
        "name": "Fengguang Wu",
        "email": "fengguang.wu@intel.com",
        "time": "Sat Sep 14 16:09:33 2019 +0800"
      },
      "committer": {
        "name": "Fengguang Wu",
        "email": "fengguang.wu@intel.com",
        "time": "Sat Sep 14 16:09:33 2019 +0800"
      },
      "message": "usemem: rename reps to opt_repeat\n\nSigned-off-by: Fengguang Wu \u003cfengguang.wu@intel.com\u003e\n"
    },
    {
      "commit": "eb261e3649d276e43ea029866b8083caa77b4703",
      "tree": "fd02393bcc4d133d5e0dbe8409a760a08a4362e3",
      "parents": [
        "63281524a22596e7ccf8895453c44bf3b75bb38d"
      ],
      "author": {
        "name": "Hui Zhu",
        "email": "teawaterz@linux.alibaba.com",
        "time": "Sat Sep 14 16:04:33 2019 +0800"
      },
      "committer": {
        "name": "Fengguang Wu",
        "email": "fengguang.wu@intel.com",
        "time": "Sat Sep 14 16:04:33 2019 +0800"
      },
      "message": "usemem: Add new option -Z|--read-again\n\nusemem will read memory again after access the memory with this option.\nIt can help test the speed that load page from swap to memory.\n\nSigned-off-by: Hui Zhu \u003cteawaterz@linux.alibaba.com\u003e\n"
    },
    {
      "commit": "63281524a22596e7ccf8895453c44bf3b75bb38d",
      "tree": "aecda322962521296d23a94134306ed59a7032f2",
      "parents": [
        "ccdeba0b9c8bca3c37dd81af7354c4fe039526a6"
      ],
      "author": {
        "name": "Fengguang Wu",
        "email": "fengguang.wu@intel.com",
        "time": "Thu Dec 20 14:25:01 2018 +0800"
      },
      "committer": {
        "name": "Fengguang Wu",
        "email": "fengguang.wu@intel.com",
        "time": "Mon Dec 24 18:57:23 2018 +0800"
      },
      "message": "usemem: mlock after rw and detach\n\nThis fixes the seemingly mlock() does not take effect issue.\n\n- mlock() only takes effect for existing pages\n- fork() will auto unlock them\n\nSigned-off-by: Fengguang Wu \u003cfengguang.wu@intel.com\u003e\n"
    },
    {
      "commit": "ccdeba0b9c8bca3c37dd81af7354c4fe039526a6",
      "tree": "8f2df4fd95676e7e8955bb380abb31e8196c7bc7",
      "parents": [
        "aca1bb4f8b4f6e17417e5b8e61a09991ae4cc923"
      ],
      "author": {
        "name": "Fengguang Wu",
        "email": "fengguang.wu@intel.com",
        "time": "Thu Dec 20 14:18:56 2018 +0800"
      },
      "committer": {
        "name": "Fengguang Wu",
        "email": "fengguang.wu@intel.com",
        "time": "Mon Dec 24 11:29:18 2018 +0800"
      },
      "message": "usemem: actually parse --hugetlb\n\nSigned-off-by: Fengguang Wu \u003cfengguang.wu@intel.com\u003e\n"
    },
    {
      "commit": "aca1bb4f8b4f6e17417e5b8e61a09991ae4cc923",
      "tree": "6d4edbb90e1e554391f5a79135e4b957ba42626c",
      "parents": [
        "421cf7db2b44ac9eb508840bcbfbb6076c8d90a6"
      ],
      "author": {
        "name": "Fengguang Wu",
        "email": "fengguang.wu@intel.com",
        "time": "Wed Dec 19 15:15:32 2018 +0800"
      },
      "committer": {
        "name": "Fengguang Wu",
        "email": "fengguang.wu@intel.com",
        "time": "Mon Dec 24 11:29:15 2018 +0800"
      },
      "message": "usemem: warn on invalid option combinations\n\nSigned-off-by: Fengguang Wu \u003cfengguang.wu@intel.com\u003e\n"
    },
    {
      "commit": "421cf7db2b44ac9eb508840bcbfbb6076c8d90a6",
      "tree": "777fe0c8111669976ec34461a19531d93b325af6",
      "parents": [
        "7d160818912161ce71bea42d216391fce7c9702d"
      ],
      "author": {
        "name": "Fengguang Wu",
        "email": "fengguang.wu@intel.com",
        "time": "Wed Dec 19 12:34:46 2018 +0800"
      },
      "committer": {
        "name": "Fengguang Wu",
        "email": "fengguang.wu@intel.com",
        "time": "Wed Dec 19 12:35:01 2018 +0800"
      },
      "message": "usemem: quiet \"may be used uninitialized\" warnings\n\nSigned-off-by: Fengguang Wu \u003cfengguang.wu@intel.com\u003e\n"
    },
    {
      "commit": "7d160818912161ce71bea42d216391fce7c9702d",
      "tree": "cd9508eaea4624a846f280d19efbd2fd80e9a8af",
      "parents": [
        "7350ec835526b6f7a98b72aaedd7ef38082ab3a1"
      ],
      "author": {
        "name": "Fengguang Wu",
        "email": "fengguang.wu@intel.com",
        "time": "Wed Dec 19 12:32:11 2018 +0800"
      },
      "committer": {
        "name": "Fengguang Wu",
        "email": "fengguang.wu@intel.com",
        "time": "Wed Dec 19 12:32:11 2018 +0800"
      },
      "message": "usemem: add sleep_secs checks\n\nSigned-off-by: Fengguang Wu \u003cfengguang.wu@intel.com\u003e\n"
    },
    {
      "commit": "7350ec835526b6f7a98b72aaedd7ef38082ab3a1",
      "tree": "e9432868314111007f5b4e51241b464d5fbd17b1",
      "parents": [
        "f9bbfa8ea722559f2fac4c2b14057c6a58658d70"
      ],
      "author": {
        "name": "Fengguang Wu",
        "email": "fengguang.wu@intel.com",
        "time": "Tue Dec 18 19:24:03 2018 +0800"
      },
      "committer": {
        "name": "Fengguang Wu",
        "email": "fengguang.wu@intel.com",
        "time": "Tue Dec 18 19:24:03 2018 +0800"
      },
      "message": "Revert \"Avoid memory allocation/sync time when calculate throughput\"\n\nThis reverts commit fe0353b13482d879c48d3841d15457a0fd5eca2c.\n"
    },
    {
      "commit": "f9bbfa8ea722559f2fac4c2b14057c6a58658d70",
      "tree": "39731c1382673816f6618e78f9fe7d6ab096f338",
      "parents": [
        "c8ec30c34feced387bc4a889af36d6ed51571773"
      ],
      "author": {
        "name": "Fengguang Wu",
        "email": "fengguang.wu@intel.com",
        "time": "Mon Dec 17 20:15:22 2018 +0800"
      },
      "committer": {
        "name": "Fengguang Wu",
        "email": "fengguang.wu@intel.com",
        "time": "Tue Dec 18 19:03:07 2018 +0800"
      },
      "message": "usemem: exactly detach before sleeping\n\nThis fixes blocked parent usemem when child is OOM killed.\n\nSigned-off-by: Fengguang Wu \u003cfengguang.wu@intel.com\u003e\n"
    },
    {
      "commit": "c8ec30c34feced387bc4a889af36d6ed51571773",
      "tree": "771fea00933d96ac763ce646e364fc0aa5bf0684",
      "parents": [
        "8d507ccd2990920ce9c4456aa5b5fab0a2a2885c"
      ],
      "author": {
        "name": "yuanyao",
        "email": "yuan.yao@linux.intel.com",
        "time": "Tue Dec 18 09:36:22 2018 +0800"
      },
      "committer": {
        "name": "Fengguang Wu",
        "email": "fengguang.wu@intel.com",
        "time": "Tue Dec 18 18:55:41 2018 +0800"
      },
      "message": "Add break when parse -O option\n\nSigned-off-by: Fengguang Wu \u003cfengguang.wu@intel.com\u003e\n"
    },
    {
      "commit": "8d507ccd2990920ce9c4456aa5b5fab0a2a2885c",
      "tree": "38dc1137971fdaebb5e1dd388cda9b1ff013484b",
      "parents": [
        "341c06e080bf96ff313039be7aa060a40cfadd89"
      ],
      "author": {
        "name": "Fengguang Wu",
        "email": "fengguang.wu@intel.com",
        "time": "Sun Dec 16 18:43:31 2018 +0800"
      },
      "committer": {
        "name": "Fengguang Wu",
        "email": "fengguang.wu@intel.com",
        "time": "Sun Dec 16 18:43:31 2018 +0800"
      },
      "message": "usemem: avoid unnecessary nr_cpu query\n\nopenat(AT_FDCWD, \"/sys/devices/system/cpu/online\", O_RDONLY|O_CLOEXEC) \u003d 11\nread(11, \"0-3\\n\", 8192)                 \u003d 4\n\nSigned-off-by: Fengguang Wu \u003cfengguang.wu@intel.com\u003e\n"
    },
    {
      "commit": "341c06e080bf96ff313039be7aa060a40cfadd89",
      "tree": "13dcb6b102bf69add1907c77d6a72e23d4a3f005",
      "parents": [
        "62f2d0962054be966d302cacbbcb9dac433f2932"
      ],
      "author": {
        "name": "Fengguang Wu",
        "email": "fengguang.wu@intel.com",
        "time": "Tue Dec 04 19:28:42 2018 +0800"
      },
      "committer": {
        "name": "Fengguang Wu",
        "email": "fengguang.wu@intel.com",
        "time": "Tue Dec 04 19:28:42 2018 +0800"
      },
      "message": "usemem: use more robust MAP_LOCKED\n\nmlock() tend to fail on large allocations.\n\nSigned-off-by: Fengguang Wu \u003cfengguang.wu@intel.com\u003e\n"
    },
    {
      "commit": "62f2d0962054be966d302cacbbcb9dac433f2932",
      "tree": "4af5f3f10cc934459bd6d545cbba6b1e8ce2cd0d",
      "parents": [
        "d8b6d3c51d1c4de6c0f6f4ef1c59d657c574a182"
      ],
      "author": {
        "name": "Daniel Jordan",
        "email": "daniel.m.jordan@oracle.com",
        "time": "Thu Oct 11 21:19:00 2018 +0800"
      },
      "committer": {
        "name": "Fengguang Wu",
        "email": "fengguang.wu@intel.com",
        "time": "Thu Oct 11 21:19:00 2018 +0800"
      },
      "message": "case-swap-w-seq: fix ignored --random, keep swap cases dedup\u0027ed\n\ncase-swap-w-seq tests for the string -rand in the testcase name to\nenable usemem\u0027s --random option, but the test breaks when -rand doesn\u0027t\nappear last, so case-swap-w-rand-mt isn\u0027t actually random.\n\nJust change the way we search the testcase name, which keeps case-swap-*\ndeduplicated.\n\nFixes: f35dd1388bfb (\"case-swap: add multithreaded test case for case-swap-w-seq/rand\")\nCc: Aaron Lu \u003caaron.lu@intel.com\u003e\nCc: Ying Huang \u003cying.huang@intel.com\u003e\nSuggested-by: Fengguang Wu \u003cfengguang.wu@intel.com\u003e\nSigned-off-by: Daniel Jordan \u003cdaniel.m.jordan@oracle.com\u003e\n"
    },
    {
      "commit": "d8b6d3c51d1c4de6c0f6f4ef1c59d657c574a182",
      "tree": "4f0a55b04f105ed02b6567655fc13745fde12e33",
      "parents": [
        "203658fb11d324e83c93550970fc6365a2ccc9d6"
      ],
      "author": {
        "name": "Daniel Jordan",
        "email": "daniel.m.jordan@oracle.com",
        "time": "Thu Oct 11 21:18:54 2018 +0800"
      },
      "committer": {
        "name": "Fengguang Wu",
        "email": "fengguang.wu@intel.com",
        "time": "Thu Oct 11 21:18:54 2018 +0800"
      },
      "message": "Revert \"case-swap-w-seq: fix ignored --random in case-swap-w-rand-mt\"\n\nThis reverts commit 203658fb11d324e83c93550970fc6365a2ccc9d6.\n\nOthers prefer to keep the duplication down, and I\u0027m all for that.  Let\u0027s\nfix it a different way.\n\nCc: Aaron Lu \u003caaron.lu@intel.com\u003e\nCc: Ying Huang \u003cying.huang@intel.com\u003e\nCc: Fengguang Wu \u003cfengguang.wu@intel.com\u003e\nSigned-off-by: Daniel Jordan \u003cdaniel.m.jordan@oracle.com\u003e\n"
    },
    {
      "commit": "203658fb11d324e83c93550970fc6365a2ccc9d6",
      "tree": "f5b344c56b00efaf1c79fae1f4c5670bcad1edba",
      "parents": [
        "40e59e99ebe2d169de27bd8e45363c39b0c8752c"
      ],
      "author": {
        "name": "Daniel Jordan",
        "email": "daniel.m.jordan@oracle.com",
        "time": "Tue Oct 09 09:42:36 2018 +0800"
      },
      "committer": {
        "name": "Fengguang Wu",
        "email": "fengguang.wu@intel.com",
        "time": "Tue Oct 09 09:42:48 2018 +0800"
      },
      "message": "case-swap-w-seq: fix ignored --random in case-swap-w-rand-mt\n\ncase-swap-w-seq tests for the string -rand in the testcase name to\nenable usemem\u0027s --random option, but the test breaks when -rand doesn\u0027t\nappear last, so case-swap-w-rand-mt isn\u0027t actually random.\n\nWe could search for -rand inside the string, but let\u0027s just duplicate\ntestcase code to avoid similar breakage in the future as more test cases\nare added.\n\nFixes: f35dd1388bfb (\"case-swap: add multithreaded test case for case-swap-w-seq/rand\")\nAcked-by: Aaron Lu \u003caaron.lu@intel.com\u003e\nSigned-off-by: Daniel Jordan \u003cdaniel.m.jordan@oracle.com\u003e\n"
    },
    {
      "commit": "40e59e99ebe2d169de27bd8e45363c39b0c8752c",
      "tree": "4f0a55b04f105ed02b6567655fc13745fde12e33",
      "parents": [
        "acefc2bab5860fe1aa7672428d095559eb58e17f"
      ],
      "author": {
        "name": "Daniel Jordan",
        "email": "daniel.m.jordan@oracle.com",
        "time": "Wed Oct 03 08:50:28 2018 +0800"
      },
      "committer": {
        "name": "Fengguang Wu",
        "email": "fengguang.wu@intel.com",
        "time": "Wed Oct 03 08:50:28 2018 +0800"
      },
      "message": "usemem: add --offset option for mmap\n\nusemem hardcodes 0 as the offset for mmap, so add an option to specify\nthis.  Use bytes for consistency with what mmap accepts.\n\nHow to parse the offset?  The POSIX standard is vague about off_t\n(\"Signed integer type used for file sizes.\"), but in the absence of a\nstrtoofft, it seems reasonably safe to use strtol.  On 64-bit Arch and\nOracle Linux systems, off_t is the same size as long when compiling in\nboth 32-bit and 64-bit modes.\n\nSigned-off-by: Daniel Jordan \u003cdaniel.m.jordan@oracle.com\u003e\n"
    },
    {
      "commit": "acefc2bab5860fe1aa7672428d095559eb58e17f",
      "tree": "908cf7bb462631659c11d2b20ab70ad69aa3f153",
      "parents": [
        "f22de75338ff65d357364b4c973f79755cee43e1"
      ],
      "author": {
        "name": "Daniel Jordan",
        "email": "daniel.m.jordan@oracle.com",
        "time": "Wed Oct 03 08:50:20 2018 +0800"
      },
      "committer": {
        "name": "Fengguang Wu",
        "email": "fengguang.wu@intel.com",
        "time": "Wed Oct 03 08:50:20 2018 +0800"
      },
      "message": "usemem: fix warning about unused ptr variable\n\ngcc rightly complains,\n\nusemem.c: In function ‘main’:\nusemem.c:1183:18: warning: variable ‘ptr’ set but not used [-Wunused-but-set-variable]\n   unsigned char *ptr;\n                  ^\n\nSimply remove ptr to silence the warning.\n\nSigned-off-by: Daniel Jordan \u003cdaniel.m.jordan@oracle.com\u003e\n"
    },
    {
      "commit": "f22de75338ff65d357364b4c973f79755cee43e1",
      "tree": "45be580e7cee4c9e9f4b34bca0f6e2a3cd959fa2",
      "parents": [
        "144498144d363f9a8f998d12a619f5f86ec21ae7"
      ],
      "author": {
        "name": "Daniel Jordan",
        "email": "daniel.m.jordan@oracle.com",
        "time": "Thu Jun 07 16:22:49 2018 -0400"
      },
      "committer": {
        "name": "Fengguang Wu",
        "email": "fengguang.wu@intel.com",
        "time": "Fri Jun 08 06:51:36 2018 +0800"
      },
      "message": "usemem: fix build on systems with old glibc\u0027s\n\nHeaders from old versions of glibc don\u0027t have MAP_HUGE_SHIFT, which\nleads to this:\n\n usemem.c:60:32: error: \u0027MAP_HUGE_SHIFT\u0027 undeclared (first use in this function)\n  #define MAP_HUGE_2MB    (21 \u003c\u003c MAP_HUGE_SHIFT)\n\nWith newer glibc\u0027s, MAP_HUGE_SHIFT is pulled in thusly:\n\n  usemem.c\n   sys/mman.h\n    bits/mman.h\n     bits/mman-linux.h\n      # define MAP_HUGE_SHIFT 26\n\nAs a workaround, define MAP_HUGE_SHIFT manually just as usemem does with\nMAP_HUGE_2MB.  While we\u0027re at it, remove the unused definition of\nMAP_HUGE_1GB.  Tested on arch, debian, and oracle linux with\n  ./usemem -UO $((2**21)).\n\nSigned-off-by: Daniel Jordan \u003cdaniel.m.jordan@oracle.com\u003e\nSigned-off-by: Fengguang Wu \u003cfengguang.wu@intel.com\u003e\n"
    },
    {
      "commit": "144498144d363f9a8f998d12a619f5f86ec21ae7",
      "tree": "7eeefda68c4aaea13edd777fea60c76fc59ea9e0",
      "parents": [
        "7afdeab54a58825ba346ad83615afd1ac105c1b0"
      ],
      "author": {
        "name": "Aaron Lu",
        "email": "aaron.lu@intel.com",
        "time": "Tue May 29 14:56:19 2018 +0800"
      },
      "committer": {
        "name": "Fengguang Wu",
        "email": "fengguang.wu@intel.com",
        "time": "Tue Jun 05 14:50:23 2018 +0800"
      },
      "message": "mmap-pread-seq: limit page table consumption\n\ncommit f11b2901356f(\"hw_vars: limit pagetable to half available memory\")\nhas calculated the biggest possible ROTATE_BYTES value that will limit\npage table consumption under 1/2 of MemAvail.\n\nFor multi-process test, each process will have its own page table\nsetup so we need to divide nr_task from ROTATE_BYTES.\n\nReported-by: Rong Chen \u003crongx.a.chen@intel.com\u003e\nSigned-off-by: Aaron Lu \u003caaron.lu@intel.com\u003e\nSigned-off-by: Fengguang Wu \u003cfengguang.wu@intel.com\u003e\n"
    },
    {
      "commit": "7afdeab54a58825ba346ad83615afd1ac105c1b0",
      "tree": "9754d41d220382751a4db836bf16f671ffb655f4",
      "parents": [
        "5a31b990bf0265e6faddea15216a169515a4781a"
      ],
      "author": {
        "name": "Aaron Lu",
        "email": "aaron.lu@intel.com",
        "time": "Thu May 24 10:49:28 2018 +0800"
      },
      "committer": {
        "name": "Fengguang Wu",
        "email": "fengguang.wu@intel.com",
        "time": "Thu May 24 11:15:01 2018 +0800"
      },
      "message": "small-allocs-common: update naming\n\nOn Mon, Apr 02, 2018 at 12:37:36PM +0800, Fengguang Wu wrote:\n\u003e On Mon, Apr 02, 2018 at 12:26:47PM +0800, Aaron Lu wrote:\n\u003e \u003e On Mon, 2018-04-02 at 12:19 +0800, Fengguang Wu wrote:\n\u003e \u003e \u003e \u003e case-small-allocs        | 20 +-------------------\n\u003e \u003e \u003e \u003e case-small-allocs-common | 21 +++++++++++++++++++++\n\u003e \u003e \u003e \u003e case-small-allocs-mt     |  7 ++-----\n\u003e \u003e \u003e\n\u003e \u003e \u003e Applied. It may be better to rename the -common script\n\u003e \u003e \u003e so that case-* won\u0027t match it -- it\u0027s not a real test case,\n\u003e \u003e \u003e after all. Do you have a better file name in mind?\n\u003e \u003e\n\u003e \u003e What about removing the case prefix and name it as small-allocs-common?\n\u003e\n\u003e OK, I just renamed the file and deployed.\n\nTurnes out there are other places need updating too to reflect the\nfile\u0027s name change.\n\nFrom f3369cb9e8e594b55946ac54c5ab6a7efe703faf Mon Sep 17 00:00:00 2001\nFrom: Aaron Lu \u003caaron.lu@intel.com\u003e\nDate: Thu, 24 May 2018 10:39:46 +0800\nSubject: [PATCH] small-allocs-common: fix mis naming\n\nI used to name the common file as case-small-allocs-common but\ndecided to use the name of small-allocs-common in the end after\ntalking to Fengguang. The file is renamed but other scripts that\ncall it didn\u0027t see the update so this patch fix it or an error:\nstderr: ./case-small-allocs-mt: 3: .: Can\u0027t open ./case-small-allocs-common\nwould occur.\n\nReported-by: Hailin Gu \u003chailinx.gu@intel.com\u003e\nSigned-off-by: Aaron Lu \u003caaron.lu@intel.com\u003e\nSigned-off-by: Fengguang Wu \u003cfengguang.wu@intel.com\u003e\n"
    },
    {
      "commit": "5a31b990bf0265e6faddea15216a169515a4781a",
      "tree": "2ea21d58c8d4baa2b9d7248e43c3a2a5fb907e56",
      "parents": [
        "f218124ddd60fbd37fc9610aac78783c4742678f"
      ],
      "author": {
        "name": "Huang Ying",
        "email": "ying.huang@intel.com",
        "time": "Fri May 11 15:58:53 2018 +0800"
      },
      "committer": {
        "name": "Fengguang Wu",
        "email": "fengguang.wu@intel.com",
        "time": "Fri May 11 16:20:20 2018 +0800"
      },
      "message": "Add some hugetlb cases\n\nSigned-off-by: Huang Ying \u003cying.huang@intel.com\u003e\nSigned-off-by: Fengguang Wu \u003cfengguang.wu@intel.com\u003e\n"
    },
    {
      "commit": "f218124ddd60fbd37fc9610aac78783c4742678f",
      "tree": "4861dd8f28dbb9da61c0ed0c329010a45ff123af",
      "parents": [
        "ed7b37de564ae7c1cb0e456b7a7a023821e27c16"
      ],
      "author": {
        "name": "Huang Ying",
        "email": "ying.huang@intel.com",
        "time": "Fri May 11 15:58:52 2018 +0800"
      },
      "committer": {
        "name": "Fengguang Wu",
        "email": "fengguang.wu@intel.com",
        "time": "Fri May 11 16:20:19 2018 +0800"
      },
      "message": "usemem: Support allocate hugetlbfs memory\n\nSigned-off-by: Huang Ying \u003cying.huang@intel.com\u003e\nSigned-off-by: Fengguang Wu \u003cfengguang.wu@intel.com\u003e\n"
    },
    {
      "commit": "ed7b37de564ae7c1cb0e456b7a7a023821e27c16",
      "tree": "e95dcd291f3d4c8a3d7b357f5a89c7e2051e6072",
      "parents": [
        "7a6ce56cf1b4ffe983eef57ea07b150c817b9d18"
      ],
      "author": {
        "name": "Huang Ying",
        "email": "ying.huang@intel.com",
        "time": "Fri May 11 15:58:51 2018 +0800"
      },
      "committer": {
        "name": "Fengguang Wu",
        "email": "fengguang.wu@intel.com",
        "time": "Fri May 11 16:20:17 2018 +0800"
      },
      "message": "usemem: Support MAP_ANONYMOUS flags\n\nTo support MAP_HUGETLB.\n\nSigned-off-by: Huang Ying \u003cying.huang@intel.com\u003e\nSigned-off-by: Fengguang Wu \u003cfengguang.wu@intel.com\u003e\n"
    },
    {
      "commit": "7a6ce56cf1b4ffe983eef57ea07b150c817b9d18",
      "tree": "34fee9238c02436089f25f5b11da22989d033277",
      "parents": [
        "f11b2901356f3c15d917059e54184e546f342177"
      ],
      "author": {
        "name": "Aaron Lu",
        "email": "aaron.lu@intel.com",
        "time": "Mon Apr 02 15:44:52 2018 +0800"
      },
      "committer": {
        "name": "Fengguang Wu",
        "email": "fengguang.wu@intel.com",
        "time": "Mon Apr 02 15:44:52 2018 +0800"
      },
      "message": "hw_vars: comment how PTE_LIMIT is calculated\n\nSigned-off-by: Aaron Lu \u003caaron.lu@intel.com\u003e\n"
    },
    {
      "commit": "f11b2901356f3c15d917059e54184e546f342177",
      "tree": "5480742e8bf7b64c266a54d7bab884d8974393cb",
      "parents": [
        "97d93f1e3f4099e2615561add306537cc5d55ca4"
      ],
      "author": {
        "name": "Aaron Lu",
        "email": "aaron.lu@intel.com",
        "time": "Mon Apr 02 15:44:45 2018 +0800"
      },
      "committer": {
        "name": "Fengguang Wu",
        "email": "fengguang.wu@intel.com",
        "time": "Mon Apr 02 15:44:45 2018 +0800"
      },
      "message": "hw_vars: limit pagetable to half available memory\n\nWe used to use half memory to limit page table, this is OK for setup\nthat doesn\u0027t have other unreclaimable memory consumptions, but consider\nif rootfs is hosted on ram and there is no swap, the rootfs consumed\nmemory is also unreclaimable and can be huge. That can cause some test\nOOM.\n\nSolve this by using MemAvailable from /proc/meminfo instead of the\nprevious MemTotal. This also impacts PTE_LIMIT.\n\nSigned-off-by: Aaron Lu \u003caaron.lu@intel.com\u003e\n"
    },
    {
      "commit": "97d93f1e3f4099e2615561add306537cc5d55ca4",
      "tree": "fe15f88d3cd1d24a03688f7e379f0202fd9297f3",
      "parents": [
        "302e9c65c67ce4c1b57c34623125dca7eb02bf9e"
      ],
      "author": {
        "name": "Aaron Lu",
        "email": "aaron.lu@intel.com",
        "time": "Mon Apr 02 11:26:40 2018 +0800"
      },
      "committer": {
        "name": "Fengguang Wu",
        "email": "fengguang.wu@intel.com",
        "time": "Mon Apr 02 12:36:58 2018 +0800"
      },
      "message": "case-small-allocs: restrict slab usage\n\ncommit c079cd0e70ad(\"small-allocs: restrict vm_area_struct slab\nmemory usage\") fixed the excessive slab size problem but didn\u0027t\nhandle -mt case. This commit fixes the same problem for -mt case.\n\nWe may want to tune the limited size in future, to avoid changing\ntwo files, make the restrict_slab_size part a common file and\ninclude it for both test cases.\n\nSigned-off-by: Aaron Lu \u003caaron.lu@intel.com\u003e\nSigned-off-by: Fengguang Wu \u003cfengguang.wu@intel.com\u003e\n"
    },
    {
      "commit": "302e9c65c67ce4c1b57c34623125dca7eb02bf9e",
      "tree": "3990d4a41243135375fd7e07b979906819491225",
      "parents": [
        "8214cd45d08363646364ce502671daedae1ddf36"
      ],
      "author": {
        "name": "Aaron Lu",
        "email": "aaron.lu@intel.com",
        "time": "Thu Mar 29 16:25:03 2018 +0800"
      },
      "committer": {
        "name": "Fengguang Wu",
        "email": "fengguang.wu@intel.com",
        "time": "Thu Mar 29 16:35:47 2018 +0800"
      },
      "message": "case-anon-cow-*: adjust per task test size\n\nDue to --prealloc, the main process will also consume one share of\nmemory so each process\u0027 test size should be unit_size/(nr_task+1)\nor OOM could occur.\n\nSigned-off-by: Aaron Lu \u003caaron.lu@intel.com\u003e\nSigned-off-by: Fengguang Wu \u003cfengguang.wu@intel.com\u003e\n"
    },
    {
      "commit": "8214cd45d08363646364ce502671daedae1ddf36",
      "tree": "0088f6ba9cdad6aeed1602f0935d7d4edc454e58",
      "parents": [
        "f95df6b630cdf22108bab5859ce9a86ad5924516"
      ],
      "author": {
        "name": "Aaron Lu",
        "email": "aaron.lu@intel.com",
        "time": "Mon Mar 26 13:13:07 2018 +0800"
      },
      "committer": {
        "name": "Fengguang Wu",
        "email": "fengguang.wu@intel.com",
        "time": "Wed Mar 28 19:33:56 2018 +0800"
      },
      "message": "case-shm-pread: use unit_size to control working set\n\nFor multi-threaded case, when it needs to exit, these threads will\nneed to free their memories. Due to the global mmap_sem, the free\nhas to be done one by one in serial mode. On large servers, due to\nthe high number of CPU, the free can take more than 1 hour.\n\nTo avoid this problem, limit the workingset by letting user to\nspecify the size. The non-mt case does not need this but it doesn\u0027t\nhurt(the default size keeps the same as before if unit_size isn\u0027t\nspecified).\n\nSigned-off-by: Aaron Lu \u003caaron.lu@intel.com\u003e\nSigned-off-by: Fengguang Wu \u003cfengguang.wu@intel.com\u003e\n"
    },
    {
      "commit": "f95df6b630cdf22108bab5859ce9a86ad5924516",
      "tree": "b5896d7f985ee5744147ee7c66480a413ed66924",
      "parents": [
        "567e0b1b70258d790065c5a0685b92c4eaaad119"
      ],
      "author": {
        "name": "Aaron Lu",
        "email": "aaron.lu@intel.com",
        "time": "Tue Dec 12 15:24:17 2017 +0800"
      },
      "committer": {
        "name": "Fengguang Wu",
        "email": "fengguang.wu@intel.com",
        "time": "Wed Dec 13 13:48:24 2017 +0800"
      },
      "message": "anon-cow-*-mt: reduce unit_size to 1/4 mem\n\nThough this is a thread test, we will still fork once: the main process will\nprealloc and prefault unit_size memory and then fork a child to create threads.\nThen the child process will pthread_create() multiple threads and consume\nanother unit_size memory. So if unit_size is 1/2 mem, the main process and\nits child process will consume all memory, which will easily cause OOM.\n\nFix this by reducing default unit_size to 1/4 memory.\n\nReported-by: Philip Li \u003cphilip.li@intel.com\u003e\nReported-by: Li Zhijian \u003czhijianx.li@intel.com\u003e\nSigned-off-by: Aaron Lu \u003caaron.lu@intel.com\u003e\nSigned-off-by: Fengguang Wu \u003cfengguang.wu@intel.com\u003e\n"
    },
    {
      "commit": "567e0b1b70258d790065c5a0685b92c4eaaad119",
      "tree": "18c6e41f5409ed990943cce7fa0d5efc753b228e",
      "parents": [
        "67505517cd515758f7f9fbfd53dcfe1c45916bb6"
      ],
      "author": {
        "name": "Aaron Lu",
        "email": "aaron.lu@intel.com",
        "time": "Tue Aug 01 16:00:21 2017 +0800"
      },
      "committer": {
        "name": "Fengguang Wu",
        "email": "fengguang.wu@intel.com",
        "time": "Thu Aug 03 09:53:13 2017 +0800"
      },
      "message": "case-migrate: ignore error message from \u0027cat /proc/$pid/comm\u0027\n\nThe process could be gone when we cat it, so ignore its error message or\nwe will have an useless stderr file:\n\u003d\u003d\u003e /tmp/stderr \u003c\u003d\u003d\ncat: /proc/10465/comm: No such file or directory\n\nSigned-off-by: Aaron Lu \u003caaron.lu@intel.com\u003e\nSigned-off-by: Fengguang Wu \u003cfengguang.wu@intel.com\u003e\n"
    },
    {
      "commit": "67505517cd515758f7f9fbfd53dcfe1c45916bb6",
      "tree": "b035f3a630ab8107eb93719974dbd3d37b3c8d3c",
      "parents": [
        "0e9966617e76245ce98d8dbac22b54d765098dd7"
      ],
      "author": {
        "name": "Nadav Amit",
        "email": "namit@vmware.com",
        "time": "Fri Oct 21 03:46:52 2016 -0700"
      },
      "committer": {
        "name": "Fengguang Wu",
        "email": "fengguang.wu@intel.com",
        "time": "Wed May 24 09:37:15 2017 +0800"
      },
      "message": "case-migrate test did not migrate back from last node\n\nThe case-migrate test did not migrate back from the last node to the\nfirst node. In addition, the counter of the migrations did not advance.\n\nAcked-by: Aaron Lu \u003caaron.lu@intel.com\u003e\nSigned-off-by: Nadav Amit \u003cnamit@vmware.com\u003e\nSigned-off-by: Fengguang Wu \u003cfengguang.wu@intel.com\u003e\n"
    },
    {
      "commit": "0e9966617e76245ce98d8dbac22b54d765098dd7",
      "tree": "97d595be4c59c504d387e9075d94b451384ad00e",
      "parents": [
        "fdf3db9ef42398769a4c1cbd5638c07d49f730a1"
      ],
      "author": {
        "name": "Huang Ying",
        "email": "ying.huang@intel.com",
        "time": "Thu Apr 27 16:51:15 2017 +0800"
      },
      "committer": {
        "name": "Fengguang Wu",
        "email": "fengguang.wu@intel.com",
        "time": "Thu Apr 27 16:51:15 2017 +0800"
      },
      "message": "usemem: Support synchronize before freeing memory\n\nTo measure lock contention during memory freeing.\n\nSigned-off-by: Huang Ying \u003cying.huang@intel.com\u003e\n"
    },
    {
      "commit": "fdf3db9ef42398769a4c1cbd5638c07d49f730a1",
      "tree": "3abb4988235112d35ac9c7bbbe082af6a1f2234c",
      "parents": [
        "81cfae6d3da6f91d829369454d34fbe6b7b608f6"
      ],
      "author": {
        "name": "Huang Ying",
        "email": "ying.huang@intel.com",
        "time": "Thu Apr 27 16:51:07 2017 +0800"
      },
      "committer": {
        "name": "Fengguang Wu",
        "email": "fengguang.wu@intel.com",
        "time": "Thu Apr 27 16:51:07 2017 +0800"
      },
      "message": "Fix tasks synchronization when nr_thread \u003d\u003d 0\n\nnr_thread may be zero, which makes tasks synchronization not work for\nprocess running mode.\n\nSigned-off-by: Huang Ying \u003cying.huang@intel.com\u003e\n"
    },
    {
      "commit": "81cfae6d3da6f91d829369454d34fbe6b7b608f6",
      "tree": "e8d7a6106c108ee581bdda1eb77228a305ffbecc",
      "parents": [
        "fe0353b13482d879c48d3841d15457a0fd5eca2c"
      ],
      "author": {
        "name": "Aaron Lu",
        "email": "aaron.lu@intel.com",
        "time": "Tue Apr 18 16:17:32 2017 +0800"
      },
      "committer": {
        "name": "Fengguang Wu",
        "email": "fengguang.wu@intel.com",
        "time": "Tue Apr 18 16:17:32 2017 +0800"
      },
      "message": "usemem_remap: use unsigned long for pagesize\n\nThere are several places for pagesize doing arithmetic operations and\ndue to its int type, the result could overflow and yielding strange\nresult like end is calculated with a smaller value than start, etc.\nThe subsequent file_remap_pages will then fail with -EINVAL.\n\nI also changed the type of no_of_pages from int to unsigned long for\nsimilar reasons(although it\u0027s not required for this fix).\n\nhttps://jira01.devtools.intel.com/browse/OLT-1605\nReported-by: Philip Li \u003cphilip.li@intel.com\u003e\nSigned-off-by: Aaron Lu \u003caaron.lu@intel.com\u003e\n"
    },
    {
      "commit": "fe0353b13482d879c48d3841d15457a0fd5eca2c",
      "tree": "68cc90527de515e14f2800a2654fd27fec72a81f",
      "parents": [
        "c1bb226a1bfcebe1d116a1627575c4b0ebf4545a"
      ],
      "author": {
        "name": "Huang Ying",
        "email": "ying.huang@intel.com",
        "time": "Wed Apr 12 10:29:18 2017 +0800"
      },
      "committer": {
        "name": "Fengguang Wu",
        "email": "fengguang.wu@intel.com",
        "time": "Wed Apr 12 10:29:18 2017 +0800"
      },
      "message": "Avoid memory allocation/sync time when calculate throughput\n\nThe start time is changed to after allocate memory and sync between\ntasks.\n\nSigned-off-by: Huang Ying \u003cying.huang@intel.com\u003e\n"
    },
    {
      "commit": "c1bb226a1bfcebe1d116a1627575c4b0ebf4545a",
      "tree": "9b914ded4c6ea2f62d9e3c85bbead9beb8fd6085",
      "parents": [
        "ca3035658d99e8d5e044d4375f9d63bcc964762f"
      ],
      "author": {
        "name": "Huang Ying",
        "email": "ying.huang@intel.com",
        "time": "Wed Apr 12 10:02:23 2017 +0800"
      },
      "committer": {
        "name": "Fengguang Wu",
        "email": "fengguang.wu@intel.com",
        "time": "Wed Apr 12 10:02:23 2017 +0800"
      },
      "message": "Fix free memory size\n\nThe original free memory size is incorrect, fixed via using unit size\nand last unit size.\n\nSigned-off-by: Huang Ying \u003cying.huang@intel.com\u003e\n"
    },
    {
      "commit": "ca3035658d99e8d5e044d4375f9d63bcc964762f",
      "tree": "63f628917b79250a9bf057d86d26ce3b41201448",
      "parents": [
        "f35dd1388bfb156dc553fda398385c230c373ac6"
      ],
      "author": {
        "name": "Huang Ying",
        "email": "ying.huang@intel.com",
        "time": "Tue Apr 11 16:16:06 2017 +0800"
      },
      "committer": {
        "name": "Fengguang Wu",
        "email": "fengguang.wu@intel.com",
        "time": "Tue Apr 11 16:22:27 2017 +0800"
      },
      "message": "usemem: Support timing free memory\n\nTo measure time taken to free memory.\n\nSigned-off-by: Huang Ying \u003cying.huang@intel.com\u003e\nSigned-off-by: Fengguang Wu \u003cfengguang.wu@intel.com\u003e\n"
    },
    {
      "commit": "f35dd1388bfb156dc553fda398385c230c373ac6",
      "tree": "df5bec4579c9c43158b4b62e9cd931ee35b9be79",
      "parents": [
        "b4f8f4eabebe21d6e9b90e51950238d7a04ef1b7"
      ],
      "author": {
        "name": "Aaron Lu",
        "email": "aaron.lu@intel.com",
        "time": "Fri Apr 07 13:32:24 2017 +0800"
      },
      "committer": {
        "name": "Fengguang Wu",
        "email": "fengguang.wu@intel.com",
        "time": "Fri Apr 07 13:55:16 2017 +0800"
      },
      "message": "case-swap: add multithreaded test case for case-swap-w-seq/rand\n\nThe existing case-swap-seq can handle both process and thread modes but\nwe need to have the case file available.\n\nSigned-off-by: Aaron Lu \u003caaron.lu@intel.com\u003e\nSigned-off-by: Fengguang Wu \u003cfengguang.wu@intel.com\u003e\n"
    },
    {
      "commit": "b4f8f4eabebe21d6e9b90e51950238d7a04ef1b7",
      "tree": "64624ab012444baef9147699963d8f819f532dce",
      "parents": [
        "96dede76eb7861920387ed0b4bd950f6699ac10e"
      ],
      "author": {
        "name": "Aaron Lu",
        "email": "aaron.lu@intel.com",
        "time": "Fri Apr 07 13:32:23 2017 +0800"
      },
      "committer": {
        "name": "Fengguang Wu",
        "email": "fengguang.wu@intel.com",
        "time": "Fri Apr 07 13:55:16 2017 +0800"
      },
      "message": "case-anon-*w*: use unit_size instead of fixed mem/2\n\nLike commit 195e6559d20e (\"case-anon-w-rand: use unit_size instead of\nfixed $((mem / 2))\"), this patch converts all anon write cases to respect\nunit_size environment variable.\n\nSigned-off-by: Aaron Lu \u003caaron.lu@intel.com\u003e\nSigned-off-by: Fengguang Wu \u003cfengguang.wu@intel.com\u003e\n"
    },
    {
      "commit": "96dede76eb7861920387ed0b4bd950f6699ac10e",
      "tree": "3506032970eef2c5db526478c5ba9d37bcd98f81",
      "parents": [
        "8998ad1b08b92e7e17f2b65ed559eb6dc9a8649f"
      ],
      "author": {
        "name": "Aaron Lu",
        "email": "aaron.lu@intel.com",
        "time": "Fri Apr 07 13:32:22 2017 +0800"
      },
      "committer": {
        "name": "Fengguang Wu",
        "email": "fengguang.wu@intel.com",
        "time": "Fri Apr 07 13:55:16 2017 +0800"
      },
      "message": "case-anon-cow-rand-mt: remove the /N for thread case\n\nAs with commit 37f440c6eb71(\"case-anon-cow-seq-mt: remove the /N for\nthread case\"), we do not need to decide the size by nr_task since this\nis a thread mode test.\n\nSigned-off-by: Aaron Lu \u003caaron.lu@intel.com\u003e\nSigned-off-by: Fengguang Wu \u003cfengguang.wu@intel.com\u003e\n"
    },
    {
      "commit": "8998ad1b08b92e7e17f2b65ed559eb6dc9a8649f",
      "tree": "537abd40ef30736d3c6888fc37242b15a58f15fc",
      "parents": [
        "59ac26e1b4c76d7747670987f3a2a4eb3c8830ea"
      ],
      "author": {
        "name": "Aaron Lu",
        "email": "aaron.lu@intel.com",
        "time": "Mon Feb 06 15:29:59 2017 +0800"
      },
      "committer": {
        "name": "Fengguang Wu",
        "email": "fengguang.wu@intel.com",
        "time": "Tue Feb 07 09:49:46 2017 +0800"
      },
      "message": "case-mremap-xread-rand-mt: correct the sparse file name to be removed\n\nThe sparse file we created in this case does not have any -$index so\nwe shouldn\u0027t add that part when removing sparse files. Fix it.\n\n/result/vm-scalability/300s-mremap-xread-rand-mt-performance/lkp-hsw-4ep1/debian-x86_64-2016-08-31.cgz/x86_64-rhel-7.2/gcc-6/v4.8/1\nstderr: rm: cannot remove \u0027/tmp/vm-scalability-tmp/vm-scalability/sparse-mremap-xread-rand-mt-*\u0027: No such file or directory\n\nBuglink: https://jira01.devtools.intel.com/browse/OLT-1554\nReported-by: Philip Li \u003cphilip.li@intel.com\u003e\nSigned-off-by: Aaron Lu \u003caaron.lu@intel.com\u003e\nSigned-off-by: Fengguang Wu \u003cfengguang.wu@intel.com\u003e\n"
    },
    {
      "commit": "59ac26e1b4c76d7747670987f3a2a4eb3c8830ea",
      "tree": "93506edb2aa16da362cd73bcfd2a7704a3da1e55",
      "parents": [
        "c886ad08e2777060bf887e5f8a7f778cb654fa09"
      ],
      "author": {
        "name": "Huang Ying",
        "email": "ying.huang@intel.com",
        "time": "Sat Feb 04 11:13:27 2017 +0800"
      },
      "committer": {
        "name": "Fengguang Wu",
        "email": "fengguang.wu@intel.com",
        "time": "Mon Feb 06 15:17:49 2017 +0800"
      },
      "message": "hw_vars: Fix a typo about DELAY parameter\n\nSigned-off-by: Huang Ying \u003cying.huang@intel.com\u003e\nSigned-off-by: Fengguang Wu \u003cfengguang.wu@intel.com\u003e\n"
    },
    {
      "commit": "c886ad08e2777060bf887e5f8a7f778cb654fa09",
      "tree": "148639b0de6a659b51934d158aca8d43a2685ca9",
      "parents": [
        "211faec98efbcf04c54d9318d34d026d469e3a06"
      ],
      "author": {
        "name": "Huang Ying",
        "email": "ying.huang@intel.com",
        "time": "Wed Jan 25 13:12:25 2017 +0800"
      },
      "committer": {
        "name": "Fengguang Wu",
        "email": "fengguang.wu@intel.com",
        "time": "Thu Jan 26 10:56:25 2017 +0800"
      },
      "message": "Support to add some delay when accessing each page\n\nTo simulate CPU intensive work done between memory accessing.  This is\nuseful for readahead testing.\n\nChangelog:\n\nv2:\n\n- Keep accessing the page during delay to avoid the page be reclaimed\n  during delay.\n\nSigned-off-by: Huang Ying \u003cying.huang@intel.com\u003e\nSigned-off-by: Fengguang Wu \u003cfengguang.wu@intel.com\u003e\n"
    },
    {
      "commit": "211faec98efbcf04c54d9318d34d026d469e3a06",
      "tree": "b4891a67a137e6fef7bd105b5f815e43d7c0eba9",
      "parents": [
        "e16597d368253095d16e331ab07baf8b443d2254"
      ],
      "author": {
        "name": "Huang Ying",
        "email": "ying.huang@intel.com",
        "time": "Thu Jan 12 16:19:43 2017 +0800"
      },
      "committer": {
        "name": "Fengguang Wu",
        "email": "fengguang.wu@intel.com",
        "time": "Mon Jan 16 11:25:21 2017 +0800"
      },
      "message": "hw_vars: Support specify repeat count for usemem test\n\nSigned-off-by: Huang Ying \u003cying.huang@intel.com\u003e\nSigned-off-by: Fengguang Wu \u003cfengguang.wu@intel.com\u003e\n"
    },
    {
      "commit": "e16597d368253095d16e331ab07baf8b443d2254",
      "tree": "489a53bcba36c0ee5ca4f7dbb99c53a03cd70a62",
      "parents": [
        "4e789c9ce3bf9d6d4c70f52bfe13c60110190bdd"
      ],
      "author": {
        "name": "Huang Ying",
        "email": "ying.huang@intel.com",
        "time": "Thu Dec 22 16:37:15 2016 +0800"
      },
      "committer": {
        "name": "Fengguang Wu",
        "email": "fengguang.wu@intel.com",
        "time": "Wed Dec 28 22:58:38 2016 +0800"
      },
      "message": "Support binding tasks to CPU\n\nSigned-off-by: \"Huang, Ying\" \u003cying.huang@intel.com\u003e\nSigned-off-by: Huang Ying \u003cying.huang@intel.com\u003e\nSigned-off-by: Fengguang Wu \u003cfengguang.wu@intel.com\u003e\n"
    },
    {
      "commit": "4e789c9ce3bf9d6d4c70f52bfe13c60110190bdd",
      "tree": "48bc914659daa0d5c8abe273617a02cc1224586e",
      "parents": [
        "bc76b0a113936cddb9ab6270f21cdcdf1b699a8d"
      ],
      "author": {
        "name": "Huang Ying",
        "email": "ying.huang@intel.com",
        "time": "Thu Dec 22 16:37:14 2016 +0800"
      },
      "committer": {
        "name": "Fengguang Wu",
        "email": "fengguang.wu@intel.com",
        "time": "Wed Dec 28 22:58:38 2016 +0800"
      },
      "message": "Add option to synchronize between tasks after allocating memory\n\nFor some test cases, what we care about is the read/write operation\nspeed after allocation, so add a option to synchronize between tasks\nafter allocating memory to avoid timing issue between tasks because of\nmemory allocation.\n\nSigned-off-by: \"Huang, Ying\" \u003cying.huang@intel.com\u003e\nSigned-off-by: Huang Ying \u003cying.huang@intel.com\u003e\nSigned-off-by: Fengguang Wu \u003cfengguang.wu@intel.com\u003e\n"
    },
    {
      "commit": "bc76b0a113936cddb9ab6270f21cdcdf1b699a8d",
      "tree": "f3675e95550989858d9efd7f2a92a3df248dd32d",
      "parents": [
        "5e4897ac9067243d723ca115ef6f9d0faeddc489"
      ],
      "author": {
        "name": "Huang Ying",
        "email": "ying.huang@intel.com",
        "time": "Thu Dec 22 16:37:13 2016 +0800"
      },
      "committer": {
        "name": "Fengguang Wu",
        "email": "fengguang.wu@intel.com",
        "time": "Wed Dec 28 22:58:38 2016 +0800"
      },
      "message": "Synchronize between control task and worker tasks\n\nSigned-off-by: \"Huang, Ying\" \u003cying.huang@intel.com\u003e\nSigned-off-by: Huang Ying \u003cying.huang@intel.com\u003e\nSigned-off-by: Fengguang Wu \u003cfengguang.wu@intel.com\u003e\n"
    },
    {
      "commit": "5e4897ac9067243d723ca115ef6f9d0faeddc489",
      "tree": "bbafb6208582a20c0fe496cb835581deb921d388",
      "parents": [
        "67dc2bc43f43ff592339f429acfed3c45a9f4e86"
      ],
      "author": {
        "name": "Huang Ying",
        "email": "ying.huang@intel.com",
        "time": "Thu Dec 22 16:37:12 2016 +0800"
      },
      "committer": {
        "name": "Fengguang Wu",
        "email": "fengguang.wu@intel.com",
        "time": "Wed Dec 28 22:58:38 2016 +0800"
      },
      "message": "Add .gitignore\n\nSigned-off-by: \"Huang, Ying\" \u003cying.huang@intel.com\u003e\nSigned-off-by: Huang Ying \u003cying.huang@intel.com\u003e\nSigned-off-by: Fengguang Wu \u003cfengguang.wu@intel.com\u003e\n"
    },
    {
      "commit": "67dc2bc43f43ff592339f429acfed3c45a9f4e86",
      "tree": "b0ce1425d32ee99f3a15fe799c137894e190dc38",
      "parents": [
        "0ef7ce5ec7bfaf524638c3db05b81986cccb150d"
      ],
      "author": {
        "name": "Aaron Lu",
        "email": "aaron.lu@intel.com",
        "time": "Mon Oct 10 16:39:39 2016 +0800"
      },
      "committer": {
        "name": "Fengguang Wu",
        "email": "fengguang.wu@intel.com",
        "time": "Wed Oct 12 11:07:23 2016 +0800"
      },
      "message": "mremap-xread-rand-mt: correct thread number\n\nI believe we should start nr_task thread number instead of\nnr_task*nr_task thread number.\n\nSigned-off-by: Aaron Lu \u003caaron.lu@intel.com\u003e\nSigned-off-by: Fengguang Wu \u003cfengguang.wu@intel.com\u003e\n"
    },
    {
      "commit": "0ef7ce5ec7bfaf524638c3db05b81986cccb150d",
      "tree": "39e6fb03f2ece59ca0d696686a6a4adce84d9d08",
      "parents": [
        "dddafc918d897c2acfabaddb1dabc67e4284e2d0"
      ],
      "author": {
        "name": "Nadav Amit",
        "email": "namit@vmware.com",
        "time": "Mon Oct 10 03:36:47 2016 -0700"
      },
      "committer": {
        "name": "Fengguang Wu",
        "email": "fengguang.wu@intel.com",
        "time": "Wed Oct 12 10:54:24 2016 +0800"
      },
      "message": "Base random seed on thread ID instead on PID\n\nThe random seed was previously based on process ID. This caused the\nrandom multi-threaded benchmarks to mostly practice very strange\nbehavior, in which all threads access the same memory, in some\nbenchmarks in a lockstep behavior.\n\nChanging the getpid to gettid to get the expected behavior, which is\nalso in line with the multi-process benchmarks.\n\nSigned-off-by: Nadav Amit \u003cnamit@vmware.com\u003e\nSigned-off-by: Fengguang Wu \u003cfengguang.wu@intel.com\u003e\n"
    },
    {
      "commit": "dddafc918d897c2acfabaddb1dabc67e4284e2d0",
      "tree": "9fc7d7ef6af5d2538ba02994131a6220a3bce120",
      "parents": [
        "f2a5432692f922b4ff170892b2ce324064f9b9a0"
      ],
      "author": {
        "name": "Aaron Lu",
        "email": "aaron.lu@intel.com",
        "time": "Tue Oct 11 16:30:56 2016 +0800"
      },
      "committer": {
        "name": "Fengguang Wu",
        "email": "fengguang.wu@intel.com",
        "time": "Wed Oct 12 10:52:55 2016 +0800"
      },
      "message": "case-swapin: add swapin test case\n\nSigned-off-by: Aaron Lu \u003caaron.lu@intel.com\u003e\nSigned-off-by: Fengguang Wu \u003cfengguang.wu@intel.com\u003e\n"
    },
    {
      "commit": "f2a5432692f922b4ff170892b2ce324064f9b9a0",
      "tree": "285b5feca983ab3e0d7601ff45f8d082269835ff",
      "parents": [
        "c357a069e66c2e9e84904bba605aecfca5fa38c6"
      ],
      "author": {
        "name": "Aaron Lu",
        "email": "aaron.lu@intel.com",
        "time": "Fri Sep 30 14:39:08 2016 +0800"
      },
      "committer": {
        "name": "Fengguang Wu",
        "email": "fengguang.wu@intel.com",
        "time": "Sat Oct 08 14:16:23 2016 +0800"
      },
      "message": "usemem: add write-signal-read mode\n\nAs suggested by Ying, a new switch is added to usemem:\n-W|--write-signal-read\n  Let processes do read when received a signal after write.\n  usemem should be started as:\n  usemem -n $nr_task -W -d -p pidfile $memsize\n  -d to detach and -W to specify these detached processes need to do\n  read when received the SIGUSR1 signal after the normal write. -p to\n  specify where to save these detached process IDs so that they can\n  be signalled later.\n\nWith the above added switch, the swap in case can be done as:\n1 start N processes to do write and then detach and wait for signal to\n  resume to do read;\n2 start N processes to do write to push the memory occupided in 1) to\n  swap space. When done, send SIGUSR1 with kill to those detached\n  processes to resume them to do read(hence, causing swap in).\n\nNote that for swap in case, the start time has to be set after the\ndetached processes got the resume signal SIGUSR1.\n\nSigned-off-by: Aaron Lu \u003caaron.lu@intel.com\u003e\nSigned-off-by: Fengguang Wu \u003cfengguang.wu@intel.com\u003e\n"
    },
    {
      "commit": "c357a069e66c2e9e84904bba605aecfca5fa38c6",
      "tree": "25b7bb99d04a3c4866f6989a23b36e9cb240c49d",
      "parents": [
        "75cc5d3d4413d9916f1d441c58cca3724d8089b5"
      ],
      "author": {
        "name": "Aaron Lu",
        "email": "aaron.lu@intel.com",
        "time": "Fri Sep 30 14:38:52 2016 +0800"
      },
      "committer": {
        "name": "Fengguang Wu",
        "email": "fengguang.wu@intel.com",
        "time": "Sat Oct 08 14:16:23 2016 +0800"
      },
      "message": "usemem: introduce output_statistics\n\nThe code to output statistics is useful later so make a new function for\nit. There should be no functional change.\n\nSigned-off-by: Aaron Lu \u003caaron.lu@intel.com\u003e\nSigned-off-by: Fengguang Wu \u003cfengguang.wu@intel.com\u003e\n"
    },
    {
      "commit": "75cc5d3d4413d9916f1d441c58cca3724d8089b5",
      "tree": "92692dbdf0ea42517d7a0541630b2624ff56fbaf",
      "parents": [
        "7d864b2df83f935272577826d2909c4182a896f5"
      ],
      "author": {
        "name": "Aaron Lu",
        "email": "aaron.lu@intel.com",
        "time": "Fri Sep 30 14:38:35 2016 +0800"
      },
      "committer": {
        "name": "Fengguang Wu",
        "email": "fengguang.wu@intel.com",
        "time": "Sat Oct 08 14:16:23 2016 +0800"
      },
      "message": "usemem: introduce do_rw_once\n\nThe code to do RW for one rep is useful later so extract it to make a\nnew function named do_rw_once.\n\nThere should be no functionality change.\n\nSigned-off-by: Aaron Lu \u003caaron.lu@intel.com\u003e\nSigned-off-by: Fengguang Wu \u003cfengguang.wu@intel.com\u003e\n"
    },
    {
      "commit": "7d864b2df83f935272577826d2909c4182a896f5",
      "tree": "31dda2010a8b8713a0c65ae3b8e862911d55d715",
      "parents": [
        "24cf56be04a0c0ea8a288d10c56a6895aae745a7"
      ],
      "author": {
        "name": "Aaron Lu",
        "email": "aaron.lu@intel.com",
        "time": "Fri Sep 30 14:38:19 2016 +0800"
      },
      "committer": {
        "name": "Fengguang Wu",
        "email": "fengguang.wu@intel.com",
        "time": "Sat Oct 08 14:16:23 2016 +0800"
      },
      "message": "usemem: do not pass opt_bytes to do_units\n\nThe param bytes in function do_units serves two purpose:\n1 As the passed param to tell the function how many bytes need to be processed;\n2 As a local variable that gets decremented each time a unit is processed\n  and break the loop once it gets zero.\n\nSince do_units is always called with the global opt_bytes as its param,\nthe 1st purpose isn\u0027t much useful as we can always get the value from\nthe global opt_bytes. For purpose 2, we probably should be using a local\nvariable instead.\n\nThere should be no functionality change.\n\nSigned-off-by: Aaron Lu \u003caaron.lu@intel.com\u003e\nSigned-off-by: Fengguang Wu \u003cfengguang.wu@intel.com\u003e\n"
    },
    {
      "commit": "24cf56be04a0c0ea8a288d10c56a6895aae745a7",
      "tree": "1d5e5a26773b73c14dd6d6cbfc9a3d2ea322e709",
      "parents": [
        "c079cd0e70adc7c99a8bdb11a22e28feab21cde7"
      ],
      "author": {
        "name": "Aaron Lu",
        "email": "aaron.lu@intel.com",
        "time": "Fri Sep 30 14:37:57 2016 +0800"
      },
      "committer": {
        "name": "Fengguang Wu",
        "email": "fengguang.wu@intel.com",
        "time": "Sat Oct 08 14:16:23 2016 +0800"
      },
      "message": "usemem: rename the global bytes variable to opt_bytes\n\nThe variable bytes is defined as a global one, but some function also\nuse it as their param. It\u0027s difficult to tell if it is the global one\nor the local one when one sees bytes. To avoid confusion, rename the\nglobal bytes to opt_bytes.\n\nThere should be no functionality change.\n\nSigned-off-by: Aaron Lu \u003caaron.lu@intel.com\u003e\nSigned-off-by: Fengguang Wu \u003cfengguang.wu@intel.com\u003e\n"
    },
    {
      "commit": "c079cd0e70adc7c99a8bdb11a22e28feab21cde7",
      "tree": "2a02292f68b84d4006ce84793f3e78cbe19d2d9a",
      "parents": [
        "cd690069bc126d462314de487f6a56cc2e2ea0bc"
      ],
      "author": {
        "name": "Aaron Lu",
        "email": "aaron.lu@intel.com",
        "time": "Wed Sep 21 14:35:10 2016 +0800"
      },
      "committer": {
        "name": "Fengguang Wu",
        "email": "fengguang.wu@intel.com",
        "time": "Wed Sep 21 16:29:52 2016 +0800"
      },
      "message": "small-allocs: restrict vm_area_struct slab memory usage\n\nFor this small allocs test, a lot of vma will be allocated. Each vma\nwill need a vm_area_struct slab object and these objects will fill up\nall memory and then OOM.\n\nThese slabs are unreclaimable.\n\nRestrict the memory consumption by this slab to 1/3 MemTotal.\n\nJira-link: https://jira01.devtools.intel.com/browse/OLT-1479\nSigned-off-by: Aaron Lu \u003caaron.lu@intel.com\u003e\nSigned-off-by: Fengguang Wu \u003cfengguang.wu@intel.com\u003e\n"
    },
    {
      "commit": "cd690069bc126d462314de487f6a56cc2e2ea0bc",
      "tree": "1d169f660eb59d4bc03de0e39a6b73e5d3faa770",
      "parents": [
        "935dd54042aa3136d8056b68d51295d1e7faba3f"
      ],
      "author": {
        "name": "Huang Ying",
        "email": "ying.huang@intel.com",
        "time": "Tue Aug 02 10:23:36 2016 -0700"
      },
      "committer": {
        "name": "Fengguang Wu",
        "email": "fengguang.wu@intel.com",
        "time": "Wed Aug 03 07:40:50 2016 +0800"
      },
      "message": "case-swap-w-seq: Rename pass_size to unit_size\n\nTo be consistent with other test cases.\n\nSigned-off-by: Huang Ying \u003cying.huang@intel.com\u003e\nSigned-off-by: Fengguang Wu \u003cfengguang.wu@intel.com\u003e\n"
    },
    {
      "commit": "935dd54042aa3136d8056b68d51295d1e7faba3f",
      "tree": "f83ba925277fa02db0abaf6acac687bff27f5464",
      "parents": [
        "0507846f479dbf41177a680fa95850605564e735"
      ],
      "author": {
        "name": "Aaron Lu",
        "email": "aaron.lu@intel.com",
        "time": "Fri Jul 29 10:39:21 2016 +0800"
      },
      "committer": {
        "name": "Fengguang Wu",
        "email": "fengguang.wu@intel.com",
        "time": "Fri Jul 29 10:44:22 2016 +0800"
      },
      "message": "ROTATE_BYTES: prevent OOM due to page table size too large\n\nCases that use ROTATE_BYTES as its unit_size use all the memory as\nfile backed read only memory and are easily reclaimed; but the memory\nconsumed by page table is not reclaimable and could cause OOM since\nROTATE_BYTES is pretty large.\nRefine ROTATE_BYTES in hw_vars as is done in case-anon-r-rand so that\nother test cases will also avoid the OOM issue.\n\nSigned-off-by: Aaron Lu \u003caaron.lu@intel.com\u003e\nSigned-off-by: Fengguang Wu \u003cfengguang.wu@intel.com\u003e\n"
    },
    {
      "commit": "0507846f479dbf41177a680fa95850605564e735",
      "tree": "aeb712209d7a4e2eab96cc97feaaf061cfa078c6",
      "parents": [
        "195e6559d20ecf53c4ea8cb4dade47d7162775ac"
      ],
      "author": {
        "name": "Aaron Lu",
        "email": "aaron.lu@intel.com",
        "time": "Wed Jul 27 14:44:44 2016 +0800"
      },
      "committer": {
        "name": "Fengguang Wu",
        "email": "fengguang.wu@intel.com",
        "time": "Wed Jul 27 14:49:32 2016 +0800"
      },
      "message": "hw_vars: remove the default 300s runtime setting\n\nIt could be a surprise for people to find their test cases that doesn\u0027t\nspecify runtime in cmdline to have their run stopped prematurely and\nonly find the runtime is set in hw_vars.\n\nTests that have a need to be stopped at 300s should set the runtime\nenvironment variable, unconditionally timeout after 300s in hw_vars\ndoesn\u0027t seem appropriate.\n\nSigned-off-by: Aaron Lu \u003caaron.lu@intel.com\u003e\nSigned-off-by: Fengguang Wu \u003cfengguang.wu@intel.com\u003e\n"
    },
    {
      "commit": "195e6559d20ecf53c4ea8cb4dade47d7162775ac",
      "tree": "b0da8b8d80169ca60f5a112657c4b15a64c7203d",
      "parents": [
        "37f440c6eb7140ac780aa1685651159124b88ed3"
      ],
      "author": {
        "name": "Aaron Lu",
        "email": "aaron.lu@intel.com",
        "time": "Mon Jul 18 17:15:00 2016 +0800"
      },
      "committer": {
        "name": "Fengguang Wu",
        "email": "fengguang.wu@intel.com",
        "time": "Mon Jul 18 17:19:46 2016 +0800"
      },
      "message": "case-anon-w-rand: use unit_size instead of fixed $((mem / 2))\n\nSo that we can control the write size for vm-scalability run from the\nLKP environment.\n\nSigned-off-by: Aaron Lu \u003caaron.lu@intel.com\u003e\nSigned-off-by: Fengguang Wu \u003cfengguang.wu@intel.com\u003e\n"
    },
    {
      "commit": "37f440c6eb7140ac780aa1685651159124b88ed3",
      "tree": "ce80e1883286d5c3e30c68b1b46833a5f5b6fa5d",
      "parents": [
        "7a3b33dfb8d439bb3ec6cdc4d579bd259365876c"
      ],
      "author": {
        "name": "Aaron Lu",
        "email": "aaron.lu@intel.com",
        "time": "Thu Jul 07 10:43:30 2016 +0800"
      },
      "committer": {
        "name": "Fengguang Wu",
        "email": "fengguang.wu@intel.com",
        "time": "Tue Jul 12 15:55:41 2016 +0800"
      },
      "message": "case-anon-cow-seq-mt: remove the /N for thread case\n\nSince threads share the same VM, there will be no COW so no need to\ndivide the memory size by N.\n\nSigned-off-by: Aaron Lu \u003caaron.lu@intel.com\u003e\nSigned-off-by: Fengguang Wu \u003cfengguang.wu@intel.com\u003e\n"
    },
    {
      "commit": "7a3b33dfb8d439bb3ec6cdc4d579bd259365876c",
      "tree": "49a9234b8093a77fe24bc5dc1fcd46854e3f7ca3",
      "parents": [
        "72ae4f9f748af33daa9257b0b2012ea80fb9d25c"
      ],
      "author": {
        "name": "Aaron Lu",
        "email": "aaron.lu@intel.com",
        "time": "Thu Jul 07 16:54:20 2016 +0800"
      },
      "committer": {
        "name": "Fengguang Wu",
        "email": "fengguang.wu@intel.com",
        "time": "Thu Jul 07 19:15:12 2016 +0800"
      },
      "message": "Documentation: add case description\n\nMost of the descripton are reviewed last time with Fengguang and Ying\nbut I also added some more.\n\nPlease feel free to change the description if you see anything\ninappropriate or incorrect, thanks.\n\nSigned-off-by: Aaron Lu \u003caaron.lu@intel.com\u003e\nSigned-off-by: Fengguang Wu \u003cfengguang.wu@intel.com\u003e\n"
    },
    {
      "commit": "72ae4f9f748af33daa9257b0b2012ea80fb9d25c",
      "tree": "a61fd38647377ef13229aceea5273c18ce74d5f0",
      "parents": [
        "c5a1d2a6a0d54e4b1e900307b504e9294cb6a34f"
      ],
      "author": {
        "name": "Aaron Lu",
        "email": "aaron.lu@intel.com",
        "time": "Thu Jul 07 16:01:33 2016 +0800"
      },
      "committer": {
        "name": "Fengguang Wu",
        "email": "fengguang.wu@intel.com",
        "time": "Thu Jul 07 18:15:28 2016 +0800"
      },
      "message": "case-msync-mt: remove the /N for thread case\n\nThe msync-mt case will preallocate and prefault a mmap space with a\nsparse file as its backing store and then create N threads to write data\nthere. Since these threads share the same VM, we do not need /N for the\nsize of the preallocated space.\n\nSigned-off-by: Aaron Lu \u003caaron.lu@intel.com\u003e\nSigned-off-by: Fengguang Wu \u003cfengguang.wu@intel.com\u003e\n"
    },
    {
      "commit": "c5a1d2a6a0d54e4b1e900307b504e9294cb6a34f",
      "tree": "ddaf16a9d99b89df9445f30f9cad156cd1f2309e",
      "parents": [
        "6bee547bdcbbf9e84e7b0eb9c477b26272c9948b"
      ],
      "author": {
        "name": "Aaron Lu",
        "email": "aaron.lu@intel.com",
        "time": "Thu Jul 07 10:53:02 2016 +0800"
      },
      "committer": {
        "name": "Fengguang Wu",
        "email": "fengguang.wu@intel.com",
        "time": "Thu Jul 07 11:41:41 2016 +0800"
      },
      "message": "case-anon-wx-seq-mt: remove the /N for thread case\n\nSince this is a preallocate and all threads will use the same memory,\nthere is no need to divide the memory size by N.\n\nSigned-off-by: Aaron Lu \u003caaron.lu@intel.com\u003e\nSigned-off-by: Fengguang Wu \u003cfengguang.wu@intel.com\u003e\n"
    },
    {
      "commit": "6bee547bdcbbf9e84e7b0eb9c477b26272c9948b",
      "tree": "87f8e6812f4b58fd837c2f8be802430c11348729",
      "parents": [
        "94d0f324adbf33e85e891ac89d7c743a2e2cebb9"
      ],
      "author": {
        "name": "Yanbing Jiang",
        "email": "yanbing.jiang@intel.com",
        "time": "Wed Mar 16 09:36:26 2016 +0800"
      },
      "committer": {
        "name": "Fengguang Wu",
        "email": "fengguang.wu@intel.com",
        "time": "Wed Mar 16 09:36:26 2016 +0800"
      },
      "message": "hw_vars: add one choice to the parameter \"SPARSE_ROOT\".\n\nWe support setup disk/file system out of vm-scalability and specify that via SPARSE_ROOT environment variable.\n\nIf SPARSE_ROOT is empty, we use its original value in vm-scalability.\n\nSigned-off-by: Yanbing Jiang \u003cyanbing.jiang@intel.com\u003e\n"
    },
    {
      "commit": "94d0f324adbf33e85e891ac89d7c743a2e2cebb9",
      "tree": "a068f94d2eed430b4b9fdb2b1454d995c7d3d66c",
      "parents": [
        "b143340d6d812ab591c8a3c1669cd8f64bc69537"
      ],
      "author": {
        "name": "Aaron Lu",
        "email": "aaron.lu@intel.com",
        "time": "Wed Feb 17 09:54:25 2016 +0800"
      },
      "committer": {
        "name": "Fengguang Wu",
        "email": "fengguang.wu@intel.com",
        "time": "Wed Feb 17 09:54:25 2016 +0800"
      },
      "message": "swap: give user the ability to control size\n\nUser can specify a value in the job file. This is mostly useful to do\nvarious testing, where the written size(pass_size) can play a role.\n\nSigned-off-by: Aaron Lu \u003caaron.lu@intel.com\u003e\n"
    },
    {
      "commit": "b143340d6d812ab591c8a3c1669cd8f64bc69537",
      "tree": "7880f1430484a915e541f31b9a5e5cfc66c61591",
      "parents": [
        "a5006817a51a093ba88c44449215c51b461c852d"
      ],
      "author": {
        "name": "Xiaolong Ye",
        "email": "xiaolong.ye@intel.com",
        "time": "Thu Feb 04 10:49:12 2016 +0800"
      },
      "committer": {
        "name": "Fengguang Wu",
        "email": "fengguang.wu@intel.com",
        "time": "Thu Feb 04 10:49:12 2016 +0800"
      },
      "message": "usemem_remap.c: remap the whole mmap pages\n\nSigned-off-by: Xiaolong Ye \u003cxiaolong.ye@intel.com\u003e\n"
    },
    {
      "commit": "a5006817a51a093ba88c44449215c51b461c852d",
      "tree": "4f4af75531250a3918852d2db2e671d283e96d73",
      "parents": [
        "828f30884a5f875b8b029983b1b1e1042dc6a5b6"
      ],
      "author": {
        "name": "Xiaolong Ye",
        "email": "xiaolong.ye@intel.com",
        "time": "Thu Feb 04 10:49:01 2016 +0800"
      },
      "committer": {
        "name": "Fengguang Wu",
        "email": "fengguang.wu@intel.com",
        "time": "Thu Feb 04 10:49:01 2016 +0800"
      },
      "message": "usemem_remap.c: fix remap failed issue when size is pagesize aligned\n\n2015-11-09 09:56:42 truncate /tmp/vm-scalability-tmp/vm-scalability/sparse-remap-1 -s 514191360\n2015-11-09 09:56:42 truncate /tmp/vm-scalability-tmp/vm-scalability/sparse-remap-2 -s 514191360\n2015-11-09 09:56:42 truncate /tmp/vm-scalability-tmp/vm-scalability/sparse-remap-3 -s 514191360\n2015-11-09 09:56:43 truncate /tmp/vm-scalability-tmp/vm-scalability/sparse-remap-4 -s 514191360\n\n\u003d\u003d\u003e /tmp/stderr \u003c\u003d\u003d\nremap failed with error Invalid argument\nremap failed with error Invalid argument\nremap failed with error Invalid argument\nremap failed with error Invalid argument\n\nSigned-off-by: Xiaolong Ye \u003cxiaolong.ye@intel.com\u003e\n"
    },
    {
      "commit": "828f30884a5f875b8b029983b1b1e1042dc6a5b6",
      "tree": "723a7de75ef80a4f68b023787563aa51f986ff30",
      "parents": [
        "edbf2067e8216dc759d29c863491f4d25b0c1774"
      ],
      "author": {
        "name": "Yanbing Jiang",
        "email": "yanbing.jiang@intel.com",
        "time": "Thu Jan 21 18:37:17 2016 +0800"
      },
      "committer": {
        "name": "Fengguang Wu",
        "email": "fengguang.wu@intel.com",
        "time": "Thu Jan 21 18:37:17 2016 +0800"
      },
      "message": "case-swap-w-rand: a symbolic link to case-swap-w-seq.\n\nmodify case-swap-w-seq for random write option.\n\nSigned-off-by: Yanbing Jiang \u003cyanbing.jiang@intel.com\u003e\n"
    },
    {
      "commit": "edbf2067e8216dc759d29c863491f4d25b0c1774",
      "tree": "fe4732c47c8e8d6c3839384096cadab49730ef08",
      "parents": [
        "2101ac141f007cb76e5dcd631fefdab9d0d3a815"
      ],
      "author": {
        "name": "Yanbing Jiang",
        "email": "yanbing.jiang@intel.com",
        "time": "Thu Dec 24 12:11:26 2015 +0800"
      },
      "committer": {
        "name": "Fengguang Wu",
        "email": "fengguang.wu@intel.com",
        "time": "Thu Dec 24 12:43:03 2015 +0800"
      },
      "message": "case-swap-w-seq: swap write sequential performance\n\nThis is done via eating memory of size (MemAvailable + SwapTotal) * 3 / 4.\n\n-n nr_processes is the number of multi-process\n-t nr_threads is the number of multi-threads when eating memory\n\nTheir default value is nr_cpu.\n\nv4: fix the error message.\n\nSigned-off-by: Yanbing Jiang \u003cyanbing.jiang@intel.com\u003e\nReviewed-by: Huang, Ying \u003c ying.huang@intel.com\u003e\nSigned-off-by: Fengguang Wu \u003cfengguang.wu@intel.com\u003e\n"
    },
    {
      "commit": "2101ac141f007cb76e5dcd631fefdab9d0d3a815",
      "tree": "5284f86bded4c8695dadadc03132b3458ae11099",
      "parents": [
        "4553926dcdd8d76d98227a55dbb912285a375a89"
      ],
      "author": {
        "name": "Aaron Lu",
        "email": "aaron.lu@intel.com",
        "time": "Wed Dec 23 14:59:31 2015 +0800"
      },
      "committer": {
        "name": "Fengguang Wu",
        "email": "fengguang.wu@intel.com",
        "time": "Wed Dec 23 15:00:46 2015 +0800"
      },
      "message": "copying: add license and copyright information\n\nThe REAME is updated to describe the copyright and license information.\nThe COPYING file is for GNU GPL v2.\nThe copyright information for usemem_migrate.c is taken from the header\nof migrate_pages.c of the numactl\u0027s test directory.\nThe copyright infromation for usemem.c is taken from Andrew\u0027s agreement\nemail replied to Fengguang.\n\nSigned-off-by: Aaron Lu \u003caaron.lu@intel.com\u003e\nSigned-off-by: Fengguang Wu \u003cfengguang.wu@intel.com\u003e\n"
    },
    {
      "commit": "4553926dcdd8d76d98227a55dbb912285a375a89",
      "tree": "2e0b88ce59b2da881c3fc35686eac953bf79a9bc",
      "parents": [
        "a41f88ab9ec8d2c46982e62bcb66709f6b20bcb5"
      ],
      "author": {
        "name": "Aaron Lu",
        "email": "aaron.lu@intel.com",
        "time": "Fri Dec 18 09:44:27 2015 +0800"
      },
      "committer": {
        "name": "Fengguang Wu",
        "email": "fengguang.wu@intel.com",
        "time": "Fri Dec 18 09:50:33 2015 +0800"
      },
      "message": "usemem_migrate.c: add a comment stating the origin of the code\n\nSigned-off-by: Aaron Lu \u003caaron.lu@intel.com\u003e\nSigned-off-by: Fengguang Wu \u003cfengguang.wu@intel.com\u003e\n"
    },
    {
      "commit": "a41f88ab9ec8d2c46982e62bcb66709f6b20bcb5",
      "tree": "469ebb11a74b3652c3effea2ed3f64c4e70c7be8",
      "parents": [
        "f60ede71bad7691eaf7c23a082ea3afec5ee70c5"
      ],
      "author": {
        "name": "Huang Ying",
        "email": "ying.huang@intel.com",
        "time": "Tue May 26 11:13:04 2015 +0800"
      },
      "committer": {
        "name": "Fengguang Wu",
        "email": "fengguang.wu@intel.com",
        "time": "Tue May 26 11:13:04 2015 +0800"
      },
      "message": "hw_vars: Add more debug information for losetup failure\n\nSigned-off-by: Huang, Ying \u003cying.huang@intel.com\u003e\n"
    },
    {
      "commit": "f60ede71bad7691eaf7c23a082ea3afec5ee70c5",
      "tree": "aceefd0a81f7512d726d848b77bf0e7a25424534",
      "parents": [
        "124eb93a07aa6996c9407d177e9b9a3f6d7f782c"
      ],
      "author": {
        "name": "Huang Ying",
        "email": "ying.huang@intel.com",
        "time": "Fri May 22 09:58:33 2015 +0800"
      },
      "committer": {
        "name": "Fengguang Wu",
        "email": "fengguang.wu@intel.com",
        "time": "Fri May 22 09:58:33 2015 +0800"
      },
      "message": "put SPARSE_ROOT.img and SPARSE_ROOT under TMPFS_MNT\n\nBecause files under SPARSE_ROOT may be larger than 50% memory size\nwhich is default for tmpfs mount.  So use TMPFS_MNT instead, which is\n100% memory size.\n\nSigned-off-by: Huang, Ying \u003cying.huang@intel.com\u003e\n"
    },
    {
      "commit": "124eb93a07aa6996c9407d177e9b9a3f6d7f782c",
      "tree": "90e27bba97fae6358341338495fc08d2ee52e021",
      "parents": [
        "6fe4abe9281925b2bfb14d670a5e961553eb9ee6"
      ],
      "author": {
        "name": "Huang Ying",
        "email": "ying.huang@intel.com",
        "time": "Wed Jan 21 20:09:58 2015 -0800"
      },
      "committer": {
        "name": "Fengguang Wu",
        "email": "fengguang.wu@intel.com",
        "time": "Wed Jan 21 20:09:58 2015 -0800"
      },
      "message": "Add support to specify processes/threads via nr_task\n\nDo that via the command line as below:\n\nsed -i s/nr_cpu/nr_task/g [^h]*\n\nThen modify hw_vars manually.\n\nSigned-off-by: Huang, Ying \u003cying.huang@intel.com\u003e\n"
    },
    {
      "commit": "6fe4abe9281925b2bfb14d670a5e961553eb9ee6",
      "tree": "9f54c9a2b301008ebcb2230573a9ed61c77bfd6e",
      "parents": [
        "fdf8b02bcadc7ad36ebacc56a50e00632430edba"
      ],
      "author": {
        "name": "Fengguang Wu",
        "email": "fengguang.wu@intel.com",
        "time": "Tue Jan 13 10:35:29 2015 -0800"
      },
      "committer": {
        "name": "Fengguang Wu",
        "email": "fengguang.wu@intel.com",
        "time": "Wed Jan 14 11:25:02 2015 -0800"
      },
      "message": "hw_vars: fix $val quotation\n\n./hw_vars: line 104: [: too many arguments\n\nSigned-off-by: Fengguang Wu \u003cfengguang.wu@intel.com\u003e\n"
    },
    {
      "commit": "fdf8b02bcadc7ad36ebacc56a50e00632430edba",
      "tree": "f840311e7a8534f6180b1e87b8ea81999ce08b2c",
      "parents": [
        "9348f077ca2d319b60f7249d71e3a2d20f85dbbe"
      ],
      "author": {
        "name": "Fengguang Wu",
        "email": "fengguang.wu@intel.com",
        "time": "Wed Jan 07 10:27:12 2015 -0800"
      },
      "committer": {
        "name": "Fengguang Wu",
        "email": "fengguang.wu@intel.com",
        "time": "Wed Jan 07 10:27:12 2015 -0800"
      },
      "message": "case-migrate: fix bashism\n\n./case-migrate: 38: ./case-migrate: [[: not found\n\nSigned-off-by: Fengguang Wu \u003cfengguang.wu@intel.com\u003e\n"
    },
    {
      "commit": "9348f077ca2d319b60f7249d71e3a2d20f85dbbe",
      "tree": "9329d88bd4190e7481e16fb2ba15471e5cb26369",
      "parents": [
        "08ebd2e227da0f4d2ed373d3cb7915fb3ea2536f"
      ],
      "author": {
        "name": "Fengguang Wu",
        "email": "fengguang.wu@intel.com",
        "time": "Sun Jan 04 11:55:59 2015 -0800"
      },
      "committer": {
        "name": "Fengguang Wu",
        "email": "fengguang.wu@intel.com",
        "time": "Sun Jan 04 11:55:59 2015 -0800"
      },
      "message": "hw_vars: fix meminfo var names\n\nSigned-off-by: Fengguang Wu \u003cfengguang.wu@intel.com\u003e\n"
    },
    {
      "commit": "08ebd2e227da0f4d2ed373d3cb7915fb3ea2536f",
      "tree": "291d6924f7b510ab7c6175891e921e66cf781026",
      "parents": [
        "ee5b55e6c07763eb78df3a4860bd618caf750995"
      ],
      "author": {
        "name": "Fengguang Wu",
        "email": "fengguang.wu@intel.com",
        "time": "Sat Jan 03 22:12:48 2015 -0800"
      },
      "committer": {
        "name": "Fengguang Wu",
        "email": "fengguang.wu@intel.com",
        "time": "Sat Jan 03 22:12:48 2015 -0800"
      },
      "message": "hw_vars: fix illegal shm_size in dash\n\n/lkp/lkp/src/tests/vm-scalability: 28: /lkp/lkp/src/tests/vm-scalability: Illegal number: 16466156*4096\n\nSigned-off-by: Fengguang Wu \u003cfengguang.wu@intel.com\u003e\n"
    },
    {
      "commit": "ee5b55e6c07763eb78df3a4860bd618caf750995",
      "tree": "7f04544e65a1ed41dbf2fd59d4124b43d630f260",
      "parents": [
        "ccf4438f87902d2520b8ae60b035d48a45b51e6b"
      ],
      "author": {
        "name": "Fengguang Wu",
        "email": "fengguang.wu@intel.com",
        "time": "Sat Jan 03 21:38:09 2015 -0800"
      },
      "committer": {
        "name": "Fengguang Wu",
        "email": "fengguang.wu@intel.com",
        "time": "Sat Jan 03 21:38:09 2015 -0800"
      },
      "message": "run: switch to /bin/sh\n\nSigned-off-by: Fengguang Wu \u003cfengguang.wu@intel.com\u003e\n"
    },
    {
      "commit": "ccf4438f87902d2520b8ae60b035d48a45b51e6b",
      "tree": "3199a54e06ec4be298184f00427e22c6d01d5a77",
      "parents": [
        "868f1f28ae131d1944900c96726f00478c79b653"
      ],
      "author": {
        "name": "Fengguang Wu",
        "email": "fengguang.wu@intel.com",
        "time": "Sat Jan 03 21:33:02 2015 -0800"
      },
      "committer": {
        "name": "Fengguang Wu",
        "email": "fengguang.wu@intel.com",
        "time": "Sat Jan 03 21:33:02 2015 -0800"
      },
      "message": "switch cases to /bin/sh\n\nSigned-off-by: Fengguang Wu \u003cfengguang.wu@intel.com\u003e\n"
    },
    {
      "commit": "868f1f28ae131d1944900c96726f00478c79b653",
      "tree": "592f8d79f7005410664cabda720ee5b2d6076ab3",
      "parents": [
        "81acff3224431355039715ccb48ca4eff15e3c40"
      ],
      "author": {
        "name": "Fengguang Wu",
        "email": "fengguang.wu@intel.com",
        "time": "Sat Jan 03 21:27:44 2015 -0800"
      },
      "committer": {
        "name": "Fengguang Wu",
        "email": "fengguang.wu@intel.com",
        "time": "Sat Jan 03 21:27:44 2015 -0800"
      },
      "message": "hw_vars: switch to /bin/sh\n\nSigned-off-by: Fengguang Wu \u003cfengguang.wu@intel.com\u003e\n"
    },
    {
      "commit": "81acff3224431355039715ccb48ca4eff15e3c40",
      "tree": "85614d3a846dd9b0fe08406b1d567a092e6eb6de",
      "parents": [
        "5f2306517c82940c55731ed05a38da52a45958d7"
      ],
      "author": {
        "name": "Fengguang Wu",
        "email": "fengguang.wu@intel.com",
        "time": "Wed Oct 08 12:50:24 2014 +0800"
      },
      "committer": {
        "name": "Fengguang Wu",
        "email": "fengguang.wu@intel.com",
        "time": "Wed Oct 08 12:54:37 2014 +0800"
      },
      "message": "more accurate memory limit calculation for anon-r-seq cases\n\nSigned-off-by: Fengguang Wu \u003cfengguang.wu@intel.com\u003e\n"
    },
    {
      "commit": "5f2306517c82940c55731ed05a38da52a45958d7",
      "tree": "1671e33236c88938beddc48decfd1690d3bccc2d",
      "parents": [
        "70c91e7aa20ad7b76049f5392395324899e73c72"
      ],
      "author": {
        "name": "Fengguang Wu",
        "email": "fengguang.wu@intel.com",
        "time": "Mon Oct 06 20:46:35 2014 +0800"
      },
      "committer": {
        "name": "Fengguang Wu",
        "email": "fengguang.wu@intel.com",
        "time": "Mon Oct 06 20:55:31 2014 +0800"
      },
      "message": "case-truncate: show throughput\n\nSigned-off-by: Fengguang Wu \u003cfengguang.wu@intel.com\u003e\n"
    }
  ],
  "next": "70c91e7aa20ad7b76049f5392395324899e73c72"
}
