)]}'
{
  "commit": "21e292e34c48c03fb6638c2d1295ca12dac97b03",
  "tree": "ba7de4f8fdac94c211b946544cd6a35cf9bd74e0",
  "parents": [
    "76cb69279f83889cf98fd9f16f5d50bcc2779442"
  ],
  "author": {
    "name": "Alex Elder",
    "email": "elder@inktank.com",
    "time": "Fri Sep 21 17:59:58 2012 -0500"
  },
  "committer": {
    "name": "Greg Kroah-Hartman",
    "email": "gregkh@linuxfoundation.org",
    "time": "Mon Nov 26 11:38:43 2012 -0800"
  },
  "message": "libceph: only kunmap kmapped pages\n\n(cherry picked from commit 5ce765a540f34d1e2005e1210f49f67fdf11e997)\n\nIn write_partial_msg_pages(), pages need to be kmapped in order to\nperform a CRC-32c calculation on them.  As an artifact of the way\nthis code used to be structured, the kunmap() call was separated\nfrom the kmap() call and both were done conditionally.  But the\nconditions under which the kmap() and kunmap() calls were made\ndiffered, so there was a chance a kunmap() call would be done on a\npage that had not been mapped.\n\nThe symptom of this was tripping a BUG() in kunmap_high() when\npkmap_count[nr] became 0.\n\nReported-by: Bryan K. Wright \u003cbryan@virginia.edu\u003e\nSigned-off-by: Alex Elder \u003celder@inktank.com\u003e\nReviewed-by: Sage Weil \u003csage@inktank.com\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@linuxfoundation.org\u003e\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "5f312510f49caf1cc525d44dd084ce281dda0ec1",
      "old_mode": 33188,
      "old_path": "net/ceph/messenger.c",
      "new_id": "6577a9fc6ce7bd1c7555b183daca389feb02fb4d",
      "new_mode": 33188,
      "new_path": "net/ceph/messenger.c"
    }
  ]
}
