)]}'
{
  "commit": "af32b36095147e1828496b58987c1e24ef40487d",
  "tree": "377f57e77ef19d5b4dd206c343259cc8a5e6a207",
  "parents": [
    "775c32208708de3e2e2379c85e429ab11957f864"
  ],
  "author": {
    "name": "Julia Lawall",
    "email": "julia@diku.dk",
    "time": "Mon Dec 26 18:38:01 2011 +0100"
  },
  "committer": {
    "name": "David Woodhouse",
    "email": "David.Woodhouse@intel.com",
    "time": "Mon Jan 09 18:24:05 2012 +0000"
  },
  "message": "mtd: lantiq-flash: drop iounmap for devm_ allocated data\n\nData allocated with devm_ioremap or devm_ioremap_nocache should not be\nfreed using iounmap, because doing so causes a dangling pointer, and a\nsubsequent double free.\n\nThe semantic match that finds this problem is as follows:\n(http://coccinelle.lip6.fr/)\n\n// \u003csmpl\u003e\n@r@\nexpression x;\n@@\n(\n x \u003d devm_ioremap(...)\n|\n x \u003d devm_ioremap_nocache(...)\n)\n\n@@\nexpression r.x;\n@@\n* iounmap(x)\n// \u003c/smpl\u003e\n\nSigned-off-by: Julia Lawall \u003cjulia@diku.dk\u003e\nSigned-off-by: Artem Bityutskiy \u003cartem.bityutskiy@intel.com\u003e\nSigned-off-by: David Woodhouse \u003cDavid.Woodhouse@intel.com\u003e\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "4f10e27ada551d12f77cfd4d72b02f15ef9c5c8d",
      "old_mode": 33188,
      "old_path": "drivers/mtd/maps/lantiq-flash.c",
      "new_id": "7b889de9477bcf4b0bf6c9936c38e6246e039a3a",
      "new_mode": 33188,
      "new_path": "drivers/mtd/maps/lantiq-flash.c"
    }
  ]
}
