)]}'
{
  "log": [
    {
      "commit": "10247179a7af4f000468e12ae73f3cf657b66235",
      "tree": "2055e9de62cd8f3621cf7f5745aabb657a763dc7",
      "parents": [
        "24a54f7974a616385b96cd939e004592e2cea484"
      ],
      "author": {
        "name": "Julia Lawall",
        "email": "julia@diku.dk",
        "time": "Sun Oct 24 23:37:31 2010 +0200"
      },
      "committer": {
        "name": "Michal Marek",
        "email": "mmarek@suse.cz",
        "time": "Thu Oct 28 00:32:22 2010 +0200"
      },
      "message": "Coccinelle: Find nested lock+irqsave functions that use the same flags variables.\n\nSigned-off-by: Julia Lawall \u003cjulia@diku.dk\u003e\nSigned-off-by: Nicolas Palix \u003cnpalix.work@gmail.com\u003e\nSigned-off-by: Michal Marek \u003cmmarek@suse.cz\u003e\n"
    },
    {
      "commit": "54c056280e0dfcd39b33c4ed75116ce98697511c",
      "tree": "d8c16d5288045ffaf8f46a9fd03d5f1659f8feeb",
      "parents": [
        "8aa6273106756c30e5349b58eed28d93d8d88164"
      ],
      "author": {
        "name": "Nicolas Palix",
        "email": "npalix@diku.dk",
        "time": "Tue Aug 24 17:39:00 2010 +0200"
      },
      "committer": {
        "name": "Michal Marek",
        "email": "mmarek@suse.cz",
        "time": "Tue Aug 31 11:37:53 2010 +0200"
      },
      "message": "Coccinelle: Add locks/mini_lock.cocci\n\nFind missing unlocks.  This semantic match considers the specific case\nwhere the unlock is missing from an if branch, and there is a lock\nbefore the if and an unlock after the if.  False positives are due to\ncases where the if branch represents a case where the function is\nsupposed to exit with the lock held, or where there is some preceding\nfunction call that releases the lock.\n\nSigned-off-by: Nicolas Palix \u003cnpalix@diku.dk\u003e\nSigned-off-by: Julia Lawall \u003cjulia@diku.dk\u003e\nSigned-off-by: Michal Marek \u003cmmarek@suse.cz\u003e\n"
    },
    {
      "commit": "8aa6273106756c30e5349b58eed28d93d8d88164",
      "tree": "1ca3c148c28af01655bfd69dd657b70da35e041a",
      "parents": [
        "e105007c1271243568d58c8a4285b19c8eea48d1"
      ],
      "author": {
        "name": "Nicolas Palix",
        "email": "npalix@diku.dk",
        "time": "Tue Aug 24 17:38:59 2010 +0200"
      },
      "committer": {
        "name": "Michal Marek",
        "email": "mmarek@suse.cz",
        "time": "Tue Aug 31 11:37:53 2010 +0200"
      },
      "message": "Coccinelle: Add locks/double_lock.cocci\n\nFind double locks.  False positives may occur when some paths cannot\noccur at execution, due to the values of variables, and when there is\nan intervening function call that releases the lock.\n\nSigned-off-by: Nicolas Palix \u003cnpalix@diku.dk\u003e\nSigned-off-by: Julia Lawall \u003cjulia@diku.dk\u003e\nSigned-off-by: Michal Marek \u003cmmarek@suse.cz\u003e\n"
    },
    {
      "commit": "e105007c1271243568d58c8a4285b19c8eea48d1",
      "tree": "bbc640aea054a967e7d9674d408aa738ad6feecb",
      "parents": [
        "7703692ef8d6356c32fbe9665d8cbe5b040eec09"
      ],
      "author": {
        "name": "Nicolas Palix",
        "email": "npalix@diku.dk",
        "time": "Tue Aug 24 17:38:58 2010 +0200"
      },
      "committer": {
        "name": "Michal Marek",
        "email": "mmarek@suse.cz",
        "time": "Tue Aug 31 11:37:53 2010 +0200"
      },
      "message": "Coccinelle: Add locks/call_kern.cocci\n\nFind functions that refer to GFP_KERNEL but are called with locks held.\nThe proposed change of converting the GFP_KERNEL is not necessarily the\ncorrect one.  It may be desired to unlock the lock, or to not call the\nfunction under the lock in the first place.\n\nSigned-off-by: Nicolas Palix \u003cnpalix@diku.dk\u003e\nSigned-off-by: Julia Lawall \u003cjulia@diku.dk\u003e\nSigned-off-by: Michal Marek \u003cmmarek@suse.cz\u003e\n"
    }
  ]
}
