)]}'
{
  "commit": "3fc98b1ac036675b95f6e3fafd5ef147b97d4d30",
  "tree": "1710b6e0140a12a6e20ef0494b11e42b9f0fcfc6",
  "parents": [
    "a5f9be58c2b87106100a6053d09b1f9f8d551c6e"
  ],
  "author": {
    "name": "Dave Chinner",
    "email": "david@fromorbit.com",
    "time": "Mon Dec 14 23:11:57 2009 +0000"
  },
  "committer": {
    "name": "Alex Elder",
    "email": "aelder@sgi.com",
    "time": "Wed Dec 16 13:41:20 2009 -0600"
  },
  "message": "XFS: Free buffer pages array unconditionally\n\nThe code in xfs_free_buf() only attempts to free the b_pages array if the\nbuffer is a page cache backed or page allocated buffer. The extra log buffer\nthat is used when the log wraps uses pages that are allocated to a different\nlog buffer, but it still has a b_pages array allocated when those pages\nare associated to with the extra buffer in xfs_buf_associate_memory.\n\nHence we need to always attempt to free the b_pages array when tearing\ndown a buffer, not just on buffers that are explicitly marked as page bearing\nbuffers. This fixes a leak detected by the kernel memory leak code.\n\nSigned-off-by: Dave Chinner \u003cdavid@fromorbit.com\u003e\nSigned-off-by: Alex Elder \u003caelder@sgi.com\u003e\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "162359b664cadee15ba5f35e5628979662edac0d",
      "old_mode": 33188,
      "old_path": "fs/xfs/linux-2.6/xfs_buf.c",
      "new_id": "77b8be81c76900559d8e382ee9e7a42710ae86e5",
      "new_mode": 33188,
      "new_path": "fs/xfs/linux-2.6/xfs_buf.c"
    }
  ]
}
