)]}'
{
  "commit": "31a72bce0bd6f3e0114009288bccbc96376eeeca",
  "tree": "14a817fbe0b47511d3119360c47959d48f851140",
  "parents": [
    "d120f65f3aaf306c957bc4c82e510f5b0f1e9b27"
  ],
  "author": {
    "name": "Paul E. McKenney",
    "email": "paulmck@linux.vnet.ibm.com",
    "time": "Wed Jun 18 09:26:49 2008 -0700"
  },
  "committer": {
    "name": "Ingo Molnar",
    "email": "mingo@elte.hu",
    "time": "Thu Jun 19 11:22:15 2008 +0200"
  },
  "message": "rcu: make rcutorture more vicious: reinstate boot-time testing\n\nThis patch re-institutes the ability to build rcutorture directly into\nthe Linux kernel.  The reason that this capability was removed was that\nthis could result in your kernel being pretty much useless, as rcutorture\nwould be running starting from early boot.  This problem has been avoided\nby (1) making rcutorture run only three seconds of every six by default,\n(2) adding a CONFIG_RCU_TORTURE_TEST_RUNNABLE that permits rcutorture\nto be quiesced at boot time, and (3) adding a sysctl in /proc named\n/proc/sys/kernel/rcutorture_runnable that permits rcutorture to be\nquiesced and unquiesced when built into the kernel.\n\nPlease note that this /proc file is -not- available when rcutorture\nis built as a module.  Please also note that to get the earlier\ntake-no-prisoners behavior, you must use the boot command line to set\nrcutorture\u0027s \"stutter\" parameter to zero.\n\nThe rcutorture quiescing mechanism is currently quite crude: loops\nin each rcutorture process that poll a global variable once per tick.\nSuggestions for improvement are welcome.  The default action will\nbe to reduce the polling rate to a few times per second.\n\nSigned-off-by: Paul E. McKenney \u003cpaulmck@linux.vnet.ibm.com\u003e\nSuggested-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "02b3d14c0209e964b495dbd5228ddf154d8e4b22",
      "old_mode": 33188,
      "old_path": "Documentation/RCU/torture.txt",
      "new_id": "516527d4bc5546e4b20b321f1bedffdcc67c404f",
      "new_mode": 33188,
      "new_path": "Documentation/RCU/torture.txt"
    },
    {
      "type": "modify",
      "old_id": "98ae7d1682252f300d3aca7bb9cdf4348934d373",
      "old_mode": 33188,
      "old_path": "kernel/rcutorture.c",
      "new_id": "27003e2421c77d20181cdc1aa45fb603ca5cc3d9",
      "new_mode": 33188,
      "new_path": "kernel/rcutorture.c"
    },
    {
      "type": "modify",
      "old_id": "29116652dca825943ed7cb8e70350108542ce641",
      "old_mode": 33188,
      "old_path": "kernel/sysctl.c",
      "new_id": "c6887cf135c824d9e302727be4d7b590ca39c8f1",
      "new_mode": 33188,
      "new_path": "kernel/sysctl.c"
    },
    {
      "type": "modify",
      "old_id": "f51ba2fa26629a7dd6db5b573d756d2262512866",
      "old_mode": 33188,
      "old_path": "lib/Kconfig.debug",
      "new_id": "c35a86a516a022d553cbc502940e1dd77d5b5e8c",
      "new_mode": 33188,
      "new_path": "lib/Kconfig.debug"
    }
  ]
}
