)]}'
{
  "log": [
    {
      "commit": "dbdcf6a48a40e6c9d7081393d793c4f1c5bb4fcf",
      "tree": "d50b179dbbe1a62ea98a0b65ecf33c9a86d906b0",
      "parents": [
        "cbee7e1a6a1a2a3d6eda1f76ffc38a3ed3eeb6cc"
      ],
      "author": {
        "name": "Joel Becker",
        "email": "joel.becker@oracle.com",
        "time": "Fri Feb 13 03:41:26 2009 -0800"
      },
      "committer": {
        "name": "Joel Becker",
        "email": "joel.becker@oracle.com",
        "time": "Fri Sep 04 16:08:10 2009 -0700"
      },
      "message": "ocfs2: ocfs2_remove_extent() no longer needs struct inode.\n\nOne more generic btree function that is isolated from struct inode.\n\nSigned-off-by: Joel Becker \u003cjoel.becker@oracle.com\u003e\n"
    },
    {
      "commit": "cbee7e1a6a1a2a3d6eda1f76ffc38a3ed3eeb6cc",
      "tree": "438ac4917675c27ecd3dce694ae3affd7ebf6c91",
      "parents": [
        "cc79d8c19e9d39446525a1026f1a21761f5d3cd2"
      ],
      "author": {
        "name": "Joel Becker",
        "email": "joel.becker@oracle.com",
        "time": "Fri Feb 13 03:34:15 2009 -0800"
      },
      "committer": {
        "name": "Joel Becker",
        "email": "joel.becker@oracle.com",
        "time": "Fri Sep 04 16:08:09 2009 -0700"
      },
      "message": "ocfs2: ocfs2_add_clusters_in_btree() no longer needs struct inode.\n\nOne more function that doesn\u0027t need a struct inode to pass to its\nchildren.\n\nSigned-off-by: Joel Becker \u003cjoel.becker@oracle.com\u003e\n"
    },
    {
      "commit": "cc79d8c19e9d39446525a1026f1a21761f5d3cd2",
      "tree": "3c9788c2e5ef0c51734dad8186ecd83bf4dd6584",
      "parents": [
        "92ba470c44c1404ff18ca0f4ecce1e5b116bb933"
      ],
      "author": {
        "name": "Joel Becker",
        "email": "joel.becker@oracle.com",
        "time": "Fri Feb 13 03:24:43 2009 -0800"
      },
      "committer": {
        "name": "Joel Becker",
        "email": "joel.becker@oracle.com",
        "time": "Fri Sep 04 16:08:09 2009 -0700"
      },
      "message": "ocfs2: ocfs2_insert_extent() no longer needs struct inode.\n\nOne more function down, no inode in the entire insert-extent chain.\n\nSigned-off-by: Joel Becker \u003cjoel.becker@oracle.com\u003e\n"
    },
    {
      "commit": "92ba470c44c1404ff18ca0f4ecce1e5b116bb933",
      "tree": "76e29703dfc37acb9ad3d129936ae4d1ddfee258",
      "parents": [
        "627961b77e68b725851cb227db10084bf15f6920"
      ],
      "author": {
        "name": "Joel Becker",
        "email": "joel.becker@oracle.com",
        "time": "Fri Feb 13 03:18:34 2009 -0800"
      },
      "committer": {
        "name": "Joel Becker",
        "email": "joel.becker@oracle.com",
        "time": "Fri Sep 04 16:08:08 2009 -0700"
      },
      "message": "ocfs2: Make extent map insertion an extent_tree_operation.\n\nocfs2_insert_extent() wants to insert a record into the extent map if\nit\u0027s an inode data extent.  But since many btrees can call that\nfunction, let\u0027s make it an op on ocfs2_extent_tree.  Other tree types\ncan leave it empty.\n\nSigned-off-by: Joel Becker \u003cjoel.becker@oracle.com\u003e\n"
    },
    {
      "commit": "627961b77e68b725851cb227db10084bf15f6920",
      "tree": "2569de1a07782a3d65161b018e90335d844112f0",
      "parents": [
        "1ef61b33148a6b32b6d28383cd72ceeddfc7054d"
      ],
      "author": {
        "name": "Joel Becker",
        "email": "joel.becker@oracle.com",
        "time": "Fri Feb 13 03:14:38 2009 -0800"
      },
      "committer": {
        "name": "Joel Becker",
        "email": "joel.becker@oracle.com",
        "time": "Fri Sep 04 16:08:08 2009 -0700"
      },
      "message": "ocfs2: ocfs2_figure_insert_type() no longer needs struct inode.\n\nIt\u0027s not using it, so remove it from the parameter list.\n\nSigned-off-by: Joel Becker \u003cjoel.becker@oracle.com\u003e\n"
    },
    {
      "commit": "1ef61b33148a6b32b6d28383cd72ceeddfc7054d",
      "tree": "8e0c3e6131fc72847f37f1ac963b7ba7efe9be3c",
      "parents": [
        "a29702914ad36443d83b5250b3bfa1bf91e6b239"
      ],
      "author": {
        "name": "Joel Becker",
        "email": "joel.becker@oracle.com",
        "time": "Fri Feb 13 03:12:33 2009 -0800"
      },
      "committer": {
        "name": "Joel Becker",
        "email": "joel.becker@oracle.com",
        "time": "Fri Sep 04 16:08:07 2009 -0700"
      },
      "message": "ocfs2: Remove inode from ocfs2_figure_extent_contig().\n\nIt already has an ocfs2_extent_tree and doesn\u0027t need the inode.\n\nSigned-off-by: Joel Becker \u003cjoel.becker@oracle.com\u003e\n"
    },
    {
      "commit": "a29702914ad36443d83b5250b3bfa1bf91e6b239",
      "tree": "74937c792f6ff893dd108497119895127a16f053",
      "parents": [
        "b4a176515c715f0c6db1759a39cd9c4175e5a23a"
      ],
      "author": {
        "name": "Joel Becker",
        "email": "joel.becker@oracle.com",
        "time": "Fri Feb 13 03:09:54 2009 -0800"
      },
      "committer": {
        "name": "Joel Becker",
        "email": "joel.becker@oracle.com",
        "time": "Fri Sep 04 16:08:07 2009 -0700"
      },
      "message": "ocfs2: Swap inode for extent_tree in ocfs2_figure_merge_contig_type().\n\nWe don\u0027t want struct inode in generic btree operations.\n\nSigned-off-by: Joel Becker \u003cjoel.becker@oracle.com\u003e\n"
    },
    {
      "commit": "b4a176515c715f0c6db1759a39cd9c4175e5a23a",
      "tree": "e929ed1a0acb1c16755d8584f11e186cf35bc1b4",
      "parents": [
        "3505bec01829a8f690259517add55c7941a4d3d5"
      ],
      "author": {
        "name": "Joel Becker",
        "email": "joel.becker@oracle.com",
        "time": "Fri Feb 13 03:07:09 2009 -0800"
      },
      "committer": {
        "name": "Joel Becker",
        "email": "joel.becker@oracle.com",
        "time": "Fri Sep 04 16:08:05 2009 -0700"
      },
      "message": "ocfs2: ocfs2_extent_contig() only requires the superblock.\n\nDon\u0027t pass the inode in.  We don\u0027t want it around for generic btree\noperations.\n\nSigned-off-by: Joel Becker \u003cjoel.becker@oracle.com\u003e\n"
    },
    {
      "commit": "3505bec01829a8f690259517add55c7941a4d3d5",
      "tree": "981a67f2b16e1aaa03339e9920252b1e6ba173c8",
      "parents": [
        "c38e52bb1c0187186bd3c4a2b318ffe69cd2fdf8"
      ],
      "author": {
        "name": "Joel Becker",
        "email": "joel.becker@oracle.com",
        "time": "Fri Feb 13 02:57:58 2009 -0800"
      },
      "committer": {
        "name": "Joel Becker",
        "email": "joel.becker@oracle.com",
        "time": "Fri Sep 04 16:08:05 2009 -0700"
      },
      "message": "ocfs2: ocfs2_do_insert_extent() and ocfs2_insert_path() no longer need an inode.\n\nThey aren\u0027t using it, so remove it from their parameter lists.\n\nSigned-off-by: Joel Becker \u003cjoel.becker@oracle.com\u003e\n"
    },
    {
      "commit": "c38e52bb1c0187186bd3c4a2b318ffe69cd2fdf8",
      "tree": "16f8c548f3797822e1a2da68b902ef1a5f8fa8b3",
      "parents": [
        "d562862314a7b131a630f7b912490312387542fb"
      ],
      "author": {
        "name": "Joel Becker",
        "email": "joel.becker@oracle.com",
        "time": "Fri Feb 13 02:56:23 2009 -0800"
      },
      "committer": {
        "name": "Joel Becker",
        "email": "joel.becker@oracle.com",
        "time": "Fri Sep 04 16:08:05 2009 -0700"
      },
      "message": "ocfs2: Give ocfs2_split_record() an extent_tree instead of an inode.\n\nAnother on the way to generic btree functions.\n\nSigned-off-by: Joel Becker \u003cjoel.becker@oracle.com\u003e\n"
    },
    {
      "commit": "d562862314a7b131a630f7b912490312387542fb",
      "tree": "1ddad8ba544ac712ac1f889729a19511aaefdf22",
      "parents": [
        "4c911eefca316f580f174940cd67d561b4b7e6e8"
      ],
      "author": {
        "name": "Joel Becker",
        "email": "joel.becker@oracle.com",
        "time": "Fri Feb 13 02:54:36 2009 -0800"
      },
      "committer": {
        "name": "Joel Becker",
        "email": "joel.becker@oracle.com",
        "time": "Fri Sep 04 16:08:04 2009 -0700"
      },
      "message": "ocfs2: ocfs2_insert_at_leaf() doesn\u0027t need struct inode.\n\nGive it an ocfs2_extent_tree and it is happy.\n\nSigned-off-by: Joel Becker \u003cjoel.becker@oracle.com\u003e\n"
    },
    {
      "commit": "4c911eefca316f580f174940cd67d561b4b7e6e8",
      "tree": "785ae90d5e2f0fe71c37aa39027c7144abab3d0c",
      "parents": [
        "043beebb6c467a07ccd7aa666095f87fade1c28e"
      ],
      "author": {
        "name": "Joel Becker",
        "email": "joel.becker@oracle.com",
        "time": "Fri Feb 13 02:50:12 2009 -0800"
      },
      "committer": {
        "name": "Joel Becker",
        "email": "joel.becker@oracle.com",
        "time": "Fri Sep 04 16:08:03 2009 -0700"
      },
      "message": "ocfs2: Make truncating the extent map an extent_tree_operation.\n\nocfs2_remove_extent() wants to truncate the extent map if it\u0027s\ntruncating an inode data extent.  But since many btrees can call that\nfunction, let\u0027s make it an op on ocfs2_extent_tree.  Other tree types\ncan leave it empty.\n\nSigned-off-by: Joel Becker \u003cjoel.becker@oracle.com\u003e\n"
    },
    {
      "commit": "043beebb6c467a07ccd7aa666095f87fade1c28e",
      "tree": "6e62d3e03ff20a633bd213420bc67ec2cb25b0bb",
      "parents": [
        "d401dc12fcced123909eba10334fb5d78866d1a9"
      ],
      "author": {
        "name": "Joel Becker",
        "email": "joel.becker@oracle.com",
        "time": "Fri Feb 13 02:42:30 2009 -0800"
      },
      "committer": {
        "name": "Joel Becker",
        "email": "joel.becker@oracle.com",
        "time": "Fri Sep 04 16:08:03 2009 -0700"
      },
      "message": "ocfs2: ocfs2_truncate_rec() doesn\u0027t need struct inode.\n\nIt\u0027s not using it anymore.  Remove it from the parameter list.\n\nSigned-off-by: Joel Becker \u003cjoel.becker@oracle.com\u003e\n"
    },
    {
      "commit": "d401dc12fcced123909eba10334fb5d78866d1a9",
      "tree": "fb0c3042753937d64eeb3d4b60a9dd4ff6ee8150",
      "parents": [
        "c495dd24ac00654f99540f533185e1fcc9534009"
      ],
      "author": {
        "name": "Joel Becker",
        "email": "joel.becker@oracle.com",
        "time": "Fri Feb 13 02:24:10 2009 -0800"
      },
      "committer": {
        "name": "Joel Becker",
        "email": "joel.becker@oracle.com",
        "time": "Fri Sep 04 16:08:02 2009 -0700"
      },
      "message": "ocfs2: ocfs2_grow_branch() and ocfs2_append_rec_to_path() lose struct inode.\n\nocfs2_grow_branch() not really using it other than to pass it to the\nsubfunctions ocfs2_shift_tree_depth(), ocfs2_find_branch_target(), and\nocfs2_add_branch().  The first two weren\u0027t it either, so they drop the\nargument.  ocfs2_add_branch() only passed it to\nocfs2_adjust_rightmost_branch(), which drops the inode argument and uses\nthe ocfs2_extent_tree as well.\n\nocfs2_append_rec_to_path() can be take an ocfs2_extent_tree instead of\nthe inode.  The function ocfs2_adjust_rightmost_records() goes along for\nthe ride.\n\nSigned-off-by: Joel Becker \u003cjoel.becker@oracle.com\u003e\n"
    },
    {
      "commit": "c495dd24ac00654f99540f533185e1fcc9534009",
      "tree": "2c9837964f002e76011ee06f83b8bcee74a78c23",
      "parents": [
        "4fe82c312a7d975a9d0f591dc9180c1197ee4270"
      ],
      "author": {
        "name": "Joel Becker",
        "email": "joel.becker@oracle.com",
        "time": "Fri Feb 13 02:19:11 2009 -0800"
      },
      "committer": {
        "name": "Joel Becker",
        "email": "joel.becker@oracle.com",
        "time": "Fri Sep 04 16:08:02 2009 -0700"
      },
      "message": "ocfs2: ocfs2_try_to_merge_extent() doesn\u0027t need struct inode.\n\nIt\u0027s not using it, so remove it from the parameter list.\n\nSigned-off-by: Joel Becker \u003cjoel.becker@oracle.com\u003e\n"
    },
    {
      "commit": "4fe82c312a7d975a9d0f591dc9180c1197ee4270",
      "tree": "53ca5d0aeeeb92768ee993ec69324b3b6767f09f",
      "parents": [
        "70f18c08b476e315c8ee17ea34b55ea1957e7e7d"
      ],
      "author": {
        "name": "Joel Becker",
        "email": "joel.becker@oracle.com",
        "time": "Fri Feb 13 02:16:08 2009 -0800"
      },
      "committer": {
        "name": "Joel Becker",
        "email": "joel.becker@oracle.com",
        "time": "Fri Sep 04 16:08:01 2009 -0700"
      },
      "message": "ocfs2: ocfs2_merge_rec_left/right() no longer need struct inode.\n\nDrop it from the parameters - they already have ocfs2_extent_list.\n\nSigned-off-by: Joel Becker \u003cjoel.becker@oracle.com\u003e\n"
    },
    {
      "commit": "70f18c08b476e315c8ee17ea34b55ea1957e7e7d",
      "tree": "e53645ea3a3ff2e3d45a31c0f963815f3cfa7fb9",
      "parents": [
        "e46f74dc357947e2aed9bdd63cf335c5fd23810b"
      ],
      "author": {
        "name": "Joel Becker",
        "email": "joel.becker@oracle.com",
        "time": "Fri Feb 13 02:09:31 2009 -0800"
      },
      "committer": {
        "name": "Joel Becker",
        "email": "joel.becker@oracle.com",
        "time": "Fri Sep 04 16:08:00 2009 -0700"
      },
      "message": "ocfs2: ocfs2_rotate_tree_left() no longer needs struct inode.\n\nIt already gets ocfs2_extent_tree, so we can just use that.  This chains\nto the same modification for ocfs2_remove_rightmost_path() and\nocfs2_rotate_rightmost_leaf_left().\n\nSigned-off-by: Joel Becker \u003cjoel.becker@oracle.com\u003e\n"
    },
    {
      "commit": "e46f74dc357947e2aed9bdd63cf335c5fd23810b",
      "tree": "2223c4659223d10415a72760a80981e4f784a235",
      "parents": [
        "1e2dd63fe0b6e99b81904a61090db801978b9520"
      ],
      "author": {
        "name": "Joel Becker",
        "email": "joel.becker@oracle.com",
        "time": "Thu Feb 12 19:47:43 2009 -0800"
      },
      "committer": {
        "name": "Joel Becker",
        "email": "joel.becker@oracle.com",
        "time": "Fri Sep 04 16:07:59 2009 -0700"
      },
      "message": "ocfs2: __ocfs2_rotate_tree_left() doesn\u0027t need struct inode.\n\nIt already has struct ocfs2_extent_tree, which has the caching info.  So\nwe don\u0027t need to pass it struct inode.\n\nSigned-off-by: Joel Becker \u003cjoel.becker@oracle.com\u003e\n"
    },
    {
      "commit": "1e2dd63fe0b6e99b81904a61090db801978b9520",
      "tree": "af22705466dda6be2e18d8a23a267e97ea57147b",
      "parents": [
        "09106bae05c3350e8d0ef0ede90b1c3da4bda2f8"
      ],
      "author": {
        "name": "Joel Becker",
        "email": "joel.becker@oracle.com",
        "time": "Thu Feb 12 19:45:28 2009 -0800"
      },
      "committer": {
        "name": "Joel Becker",
        "email": "joel.becker@oracle.com",
        "time": "Fri Sep 04 16:07:59 2009 -0700"
      },
      "message": "ocfs2: ocfs2_rotate_subtree_left() doesn\u0027t need struct inode.\n\nIt already has struct ocfs2_extent_tree, which has the caching info.  So\nwe don\u0027t need to pass it struct inode.\n\nSigned-off-by: Joel Becker \u003cjoel.becker@oracle.com\u003e\n"
    },
    {
      "commit": "09106bae05c3350e8d0ef0ede90b1c3da4bda2f8",
      "tree": "73e216e39897e9519b0e30843cddbd20074fcdca",
      "parents": [
        "1bbf0b8d606645c7596ee641acfbf042765c9719"
      ],
      "author": {
        "name": "Joel Becker",
        "email": "joel.becker@oracle.com",
        "time": "Thu Feb 12 19:43:57 2009 -0800"
      },
      "committer": {
        "name": "Joel Becker",
        "email": "joel.becker@oracle.com",
        "time": "Fri Sep 04 16:07:58 2009 -0700"
      },
      "message": "ocfs2: ocfs2_update_edge_lengths() doesn\u0027t need struct inode.\n\nPass in the extent tree, which is all we need.\n\nSigned-off-by: Joel Becker \u003cjoel.becker@oracle.com\u003e\n"
    },
    {
      "commit": "1bbf0b8d606645c7596ee641acfbf042765c9719",
      "tree": "7d0f4fd611b4617ed52ed6dad7332334381dbe0e",
      "parents": [
        "6136ca5f5f9fd38da399e9ff9380f537c1b3b901"
      ],
      "author": {
        "name": "Joel Becker",
        "email": "joel.becker@oracle.com",
        "time": "Thu Feb 12 19:42:08 2009 -0800"
      },
      "committer": {
        "name": "Joel Becker",
        "email": "joel.becker@oracle.com",
        "time": "Fri Sep 04 16:07:58 2009 -0700"
      },
      "message": "ocfs2: ocfs2_rotate_tree_right() doesn\u0027t need struct inode.\n\nWe don\u0027t need struct inode in ocfs2_rotate_tree_right() anymore.\n\nSigned-off-by: Joel Becker \u003cjoel.becker@oracle.com\u003e\n"
    },
    {
      "commit": "6136ca5f5f9fd38da399e9ff9380f537c1b3b901",
      "tree": "e2927c3b6084a7ea16f872a61011cbcf505f570c",
      "parents": [
        "7dc028056750328e74ca807041c822068384fe16"
      ],
      "author": {
        "name": "Joel Becker",
        "email": "joel.becker@oracle.com",
        "time": "Thu Feb 12 19:32:43 2009 -0800"
      },
      "committer": {
        "name": "Joel Becker",
        "email": "joel.becker@oracle.com",
        "time": "Fri Sep 04 16:07:57 2009 -0700"
      },
      "message": "ocfs2: Drop struct inode from ocfs2_extent_tree_operations.\n\nWe can get to the inode from the caching information.  Other parent\ntypes don\u0027t need it.\n\nSigned-off-by: Joel Becker \u003cjoel.becker@oracle.com\u003e\n"
    },
    {
      "commit": "7dc028056750328e74ca807041c822068384fe16",
      "tree": "507d64e5d1136afea9ad54b9011fea4dfbe8b15f",
      "parents": [
        "5c601aba8c5d9d5f944cf02b59e3288dd72ae6cf"
      ],
      "author": {
        "name": "Joel Becker",
        "email": "joel.becker@oracle.com",
        "time": "Thu Feb 12 19:20:13 2009 -0800"
      },
      "committer": {
        "name": "Joel Becker",
        "email": "joel.becker@oracle.com",
        "time": "Fri Sep 04 16:07:55 2009 -0700"
      },
      "message": "ocfs2: Pass ocfs2_extent_tree to ocfs2_get_subtree_root()\n\nGet rid of the inode argument.  Use extent_tree instead.  This means a\nfew more functions have to pass an extent_tree around.\n\nSigned-off-by: Joel Becker \u003cjoel.becker@oracle.com\u003e\n"
    },
    {
      "commit": "5c601aba8c5d9d5f944cf02b59e3288dd72ae6cf",
      "tree": "7b2a8f2daecfa433a6fa73a7cfecd594fe87dfaf",
      "parents": [
        "4619c73e7c9bd10bac6b60925fa28d5a2eeaf6ed"
      ],
      "author": {
        "name": "Joel Becker",
        "email": "joel.becker@oracle.com",
        "time": "Thu Feb 12 19:10:13 2009 -0800"
      },
      "committer": {
        "name": "Joel Becker",
        "email": "joel.becker@oracle.com",
        "time": "Fri Sep 04 16:07:55 2009 -0700"
      },
      "message": "ocfs2: Get inode out of ocfs2_rotate_subtree_root_right().\n\nPass the ocfs2_extent_list down through ocfs2_rotate_tree_right() and\nget rid of struct inode in ocfs2_rotate_subtree_root_right().\n\nSigned-off-by: Joel Becker \u003cjoel.becker@oracle.com\u003e\n"
    },
    {
      "commit": "4619c73e7c9bd10bac6b60925fa28d5a2eeaf6ed",
      "tree": "1e280a72eac74615bd298574d747ca543051b766",
      "parents": [
        "6641b0ce3274d979338cb67b2f562189dcbc1c28"
      ],
      "author": {
        "name": "Joel Becker",
        "email": "joel.becker@oracle.com",
        "time": "Thu Feb 12 19:02:36 2009 -0800"
      },
      "committer": {
        "name": "Joel Becker",
        "email": "joel.becker@oracle.com",
        "time": "Fri Sep 04 16:07:54 2009 -0700"
      },
      "message": "ocfs2: ocfs2_complete_edge_insert() doesn\u0027t need struct inode at all.\n\nCompletely unused argument.  Get rid of it.\n\nSigned-off-by: Joel Becker \u003cjoel.becker@oracle.com\u003e\n"
    },
    {
      "commit": "6641b0ce3274d979338cb67b2f562189dcbc1c28",
      "tree": "840466924b7c88fe6959eb4373708198c507f554",
      "parents": [
        "42a5a7a9a5abf9a566b91c51137921957b9a14e4"
      ],
      "author": {
        "name": "Joel Becker",
        "email": "joel.becker@oracle.com",
        "time": "Thu Feb 12 18:57:52 2009 -0800"
      },
      "committer": {
        "name": "Joel Becker",
        "email": "joel.becker@oracle.com",
        "time": "Fri Sep 04 16:07:54 2009 -0700"
      },
      "message": "ocfs2: Pass ocfs2_extent_tree to ocfs2_unlink_path()\n\nocfs2_unlink_path() doesn\u0027t need struct inode, so let\u0027s pass it struct\nocfs2_extent_tree.\n\nSigned-off-by: Joel Becker \u003cjoel.becker@oracle.com\u003e\n"
    },
    {
      "commit": "42a5a7a9a5abf9a566b91c51137921957b9a14e4",
      "tree": "ec676255875d1290ac994f73e3a4dc09fb705b48",
      "parents": [
        "facdb77f54f09a33baf6b649496f5dd1d7922a7e"
      ],
      "author": {
        "name": "Joel Becker",
        "email": "joel.becker@oracle.com",
        "time": "Thu Feb 12 18:49:19 2009 -0800"
      },
      "committer": {
        "name": "Joel Becker",
        "email": "joel.becker@oracle.com",
        "time": "Fri Sep 04 16:07:53 2009 -0700"
      },
      "message": "ocfs2: ocfs2_create_new_meta_bhs() doesn\u0027t need struct inode.\n\nPass struct ocfs2_extent_tree into ocfs2_create_new_meta_bhs().  It no\nlonger needs struct inode or ocfs2_super.\n\nSigned-off-by: Joel Becker \u003cjoel.becker@oracle.com\u003e\n"
    },
    {
      "commit": "facdb77f54f09a33baf6b649496f5dd1d7922a7e",
      "tree": "676de8877773ae38b8379bc3d50073c0710e2d8c",
      "parents": [
        "3d03a305ded8057155bd3c801e64ffef9f534827"
      ],
      "author": {
        "name": "Joel Becker",
        "email": "joel.becker@oracle.com",
        "time": "Thu Feb 12 18:08:48 2009 -0800"
      },
      "committer": {
        "name": "Joel Becker",
        "email": "joel.becker@oracle.com",
        "time": "Fri Sep 04 16:07:53 2009 -0700"
      },
      "message": "ocfs2: ocfs2_find_path() only needs the caching info\n\nocfs2_find_path and ocfs2_find_leaf() walk our btrees, reading extent\nblocks.  They need struct ocfs2_caching_info for that, but not struct\ninode.\n\nSigned-off-by: Joel Becker \u003cjoel.becker@oracle.com\u003e\n"
    },
    {
      "commit": "3d03a305ded8057155bd3c801e64ffef9f534827",
      "tree": "4f220711f42c1abbd80a9fe8c2b6ee47e846a587",
      "parents": [
        "d9a0a1f83bf083b55b3c1f16efddecc31abace61"
      ],
      "author": {
        "name": "Joel Becker",
        "email": "joel.becker@oracle.com",
        "time": "Thu Feb 12 17:49:26 2009 -0800"
      },
      "committer": {
        "name": "Joel Becker",
        "email": "joel.becker@oracle.com",
        "time": "Fri Sep 04 16:07:52 2009 -0700"
      },
      "message": "ocfs2: Pass ocfs2_caching_info to ocfs2_read_extent_block().\n\nextent blocks belong to btrees on more than just inodes, so we want to\npass the ocfs2_caching_info structure directly to\nocfs2_read_extent_block().  A number of places in alloc.c can now drop\nstruct inode from their argument list.\n\nSigned-off-by: Joel Becker \u003cjoel.becker@oracle.com\u003e\n"
    },
    {
      "commit": "d9a0a1f83bf083b55b3c1f16efddecc31abace61",
      "tree": "7e75311f678fb943f2a0b14c91a0877fd7813efe",
      "parents": [
        "0cf2f7632b1789b811ab20b611c4156e6de2b055"
      ],
      "author": {
        "name": "Joel Becker",
        "email": "joel.becker@oracle.com",
        "time": "Thu Feb 12 17:32:34 2009 -0800"
      },
      "committer": {
        "name": "Joel Becker",
        "email": "joel.becker@oracle.com",
        "time": "Fri Sep 04 16:07:51 2009 -0700"
      },
      "message": "ocfs2: Store the ocfs2_caching_info on ocfs2_extent_tree.\n\nWhat do we cache?  Metadata blocks.  What are most of our non-inode metadata\nblocks?  Extent blocks for our btrees.  struct ocfs2_extent_tree is the\nmain structure for managing those.  So let\u0027s store the associated\nocfs2_caching_info there.\n\nThis means that ocfs2_et_root_journal_access() doesn\u0027t need struct inode\nanymore, and any place that has an et can refer to et-\u003eet_ci instead of\nINODE_CACHE(inode).\n\nSigned-off-by: Joel Becker \u003cjoel.becker@oracle.com\u003e\n"
    },
    {
      "commit": "0cf2f7632b1789b811ab20b611c4156e6de2b055",
      "tree": "34f7cf3584e4fa2bc187d4b75ce052cb98739b0e",
      "parents": [
        "292dd27ec76b96cebcef576f330ab121f59ccf05"
      ],
      "author": {
        "name": "Joel Becker",
        "email": "joel.becker@oracle.com",
        "time": "Thu Feb 12 16:41:25 2009 -0800"
      },
      "committer": {
        "name": "Joel Becker",
        "email": "joel.becker@oracle.com",
        "time": "Fri Sep 04 16:07:50 2009 -0700"
      },
      "message": "ocfs2: Pass struct ocfs2_caching_info to the journal functions.\n\nThe next step in divorcing metadata I/O management from struct inode is\nto pass struct ocfs2_caching_info to the journal functions.  Thus the\njournal locks a metadata cache with the cache io_lock function.  It also\ncan compare ci_last_trans and ci_created_trans directly.\n\nThis is a large patch because of all the places we change\nocfs2_journal_access..(handle, inode, ...) to\nocfs2_journal_access..(handle, INODE_CACHE(inode), ...).\n\nSigned-off-by: Joel Becker \u003cjoel.becker@oracle.com\u003e\n"
    },
    {
      "commit": "292dd27ec76b96cebcef576f330ab121f59ccf05",
      "tree": "d98f4d359f610e7dad53eb5b68fdb1517a043fb3",
      "parents": [
        "66fb345ddd2d343e36692da0ff66126d7a99dc1b"
      ],
      "author": {
        "name": "Joel Becker",
        "email": "joel.becker@oracle.com",
        "time": "Thu Feb 12 15:41:59 2009 -0800"
      },
      "committer": {
        "name": "Joel Becker",
        "email": "joel.becker@oracle.com",
        "time": "Fri Sep 04 16:07:49 2009 -0700"
      },
      "message": "ocfs2: move ip_created_trans to struct ocfs2_caching_info\n\nSimilar ip_last_trans, ip_created_trans tracks the creation of a journal\nmanaged inode.  This specifically tracks what transaction created the\ninode.  This is so the code can know if the inode has ever been written\nto disk.\n\nThis behavior is desirable for any journal managed object.  We move it\nto struct ocfs2_caching_info as ci_created_trans so that any object\nusing ocfs2_caching_info can rely on this behavior.\n\nSigned-off-by: Joel Becker \u003cjoel.becker@oracle.com\u003e\n"
    },
    {
      "commit": "66fb345ddd2d343e36692da0ff66126d7a99dc1b",
      "tree": "7e53f68bbf4c910cd81be7e39378d9552bbce4c3",
      "parents": [
        "8cb471e8f82506937fe5e2e9fb0bf90f6b1f1170"
      ],
      "author": {
        "name": "Joel Becker",
        "email": "joel.becker@oracle.com",
        "time": "Thu Feb 12 15:24:40 2009 -0800"
      },
      "committer": {
        "name": "Joel Becker",
        "email": "joel.becker@oracle.com",
        "time": "Fri Sep 04 16:07:49 2009 -0700"
      },
      "message": "ocfs2: move ip_last_trans to struct ocfs2_caching_info\n\nWe have the read side of metadata caching isolated to struct\nocfs2_caching_info, now we need the write side.  This means the journal\nfunctions.  The journal only does a couple of things with struct inode.\n\nThis change moves the ip_last_trans field onto struct\nocfs2_caching_info as ci_last_trans.  This field tells the journal\nwhether a pending journal flush is required.\n\nSigned-off-by: Joel Becker \u003cjoel.becker@oracle.com\u003e\n"
    },
    {
      "commit": "8cb471e8f82506937fe5e2e9fb0bf90f6b1f1170",
      "tree": "e275a8f5db101a9990ba44931cfd116123112b11",
      "parents": [
        "6e5a3d7538ad4e46a976862f593faf65750e37cc"
      ],
      "author": {
        "name": "Joel Becker",
        "email": "joel.becker@oracle.com",
        "time": "Tue Feb 10 20:00:41 2009 -0800"
      },
      "committer": {
        "name": "Joel Becker",
        "email": "joel.becker@oracle.com",
        "time": "Fri Sep 04 16:07:48 2009 -0700"
      },
      "message": "ocfs2: Take the inode out of the metadata read/write paths.\n\nWe are really passing the inode into the ocfs2_read/write_blocks()\nfunctions to get at the metadata cache.  This commit passes the cache\ndirectly into the metadata block functions, divorcing them from the\ninode.\n\nSigned-off-by: Joel Becker \u003cjoel.becker@oracle.com\u003e\n"
    },
    {
      "commit": "6e5a3d7538ad4e46a976862f593faf65750e37cc",
      "tree": "e87ce6d69bdbcce23eed0a195a7f80a59c01d3d9",
      "parents": [
        "47460d65a483529b3bc2bf6ccf461ad45f94df83"
      ],
      "author": {
        "name": "Joel Becker",
        "email": "joel.becker@oracle.com",
        "time": "Tue Feb 10 19:00:37 2009 -0800"
      },
      "committer": {
        "name": "Joel Becker",
        "email": "joel.becker@oracle.com",
        "time": "Fri Sep 04 16:07:48 2009 -0700"
      },
      "message": "ocfs2: Change metadata caching locks to an operations structure.\n\nWe don\u0027t really want to cart around too many new fields on the\nocfs2_caching_info structure.  So let\u0027s wrap all our access of the\nparent object in a set of operations.  One pointer on caching_info, and\nmore flexibility to boot.\n\nSigned-off-by: Joel Becker \u003cjoel.becker@oracle.com\u003e\n"
    },
    {
      "commit": "47460d65a483529b3bc2bf6ccf461ad45f94df83",
      "tree": "0727cae9477749e5f2596e86253a210e79c96a83",
      "parents": [
        "8379e7c46cc48f51197dd663fc6676f47f2a1e71"
      ],
      "author": {
        "name": "Joel Becker",
        "email": "joel.becker@oracle.com",
        "time": "Tue Feb 10 16:05:07 2009 -0800"
      },
      "committer": {
        "name": "Joel Becker",
        "email": "joel.becker@oracle.com",
        "time": "Fri Sep 04 16:07:47 2009 -0700"
      },
      "message": "ocfs2: Make the ocfs2_caching_info structure self-contained.\n\nWe want to use the ocfs2_caching_info structure in places that are not\ninodes.  To do that, it can no longer rely on referencing the inode\ndirectly.\n\nThis patch moves the flags to ocfs2_caching_info-\u003eci_flags, stores\npointers to the parent\u0027s locks on the ocfs2_caching_info, and renames\nthe constants and flags to reflect its independant state.\n\nSigned-off-by: Joel Becker \u003cjoel.becker@oracle.com\u003e\n"
    },
    {
      "commit": "8379e7c46cc48f51197dd663fc6676f47f2a1e71",
      "tree": "ee6ae04dd7014bfe311ea0f48a0aea734a96c2ed",
      "parents": [
        "a1b08e75dff3dc18a88444803753e667bb1d126e"
      ],
      "author": {
        "name": "Sunil Mushran",
        "email": "sunil.mushran@oracle.com",
        "time": "Fri Sep 04 11:12:01 2009 -0700"
      },
      "committer": {
        "name": "Joel Becker",
        "email": "joel.becker@oracle.com",
        "time": "Fri Sep 04 14:28:31 2009 -0700"
      },
      "message": "ocfs2: ocfs2_write_begin_nolock() should handle len\u003d0\n\nBug introduced by mainline commit e7432675f8ca868a4af365759a8d4c3779a3d922\nThe bug causes ocfs2_write_begin_nolock() to oops when len\u003d0.\n\nSigned-off-by: Sunil Mushran \u003csunil.mushran@oracle.com\u003e\nCc: stable@kernel.org\nSigned-off-by: Joel Becker \u003cjoel.becker@oracle.com\u003e\n"
    },
    {
      "commit": "a1b08e75dff3dc18a88444803753e667bb1d126e",
      "tree": "b782aaa5e2775c693bb711647e9e2b2331003fb4",
      "parents": [
        "c795b33ba171e41563ab7e25105c0cd4edd81cd7"
      ],
      "author": {
        "name": "Tao Ma",
        "email": "tao.ma@oracle.com",
        "time": "Thu Aug 27 14:46:56 2009 +0800"
      },
      "committer": {
        "name": "Joel Becker",
        "email": "joel.becker@oracle.com",
        "time": "Thu Aug 27 18:10:54 2009 -0700"
      },
      "message": "ocfs2: invalidate dentry if its dentry_lock isn\u0027t initialized.\n\nIn commit a5a0a630922a2f6a774b6dac19f70cb5abd86bb0, when\nocfs2_attch_dentry_lock fails, we call an extra iput and reset\ndentry-\u003ed_fsdata to NULL. This resolve a bug, but it isn\u0027t\ncompleted and the dentry is still there. When we want to use\nit again, ocfs2_dentry_revalidate doesn\u0027t catch it and return\ntrue. That make future ocfs2_dentry_lock panic out.\nOne bug is http://oss.oracle.com/bugzilla/show_bug.cgi?id\u003d1162.\n\nThe resolution is to add a check for dentry-\u003ed_fsdata in\nrevalidate process and return false if dentry-\u003ed_fsdata is NULL,\nso that a new ocfs2_lookup will be called again.\n\nSigned-off-by: Tao Ma \u003ctao.ma@oracle.com\u003e\nSigned-off-by: Joel Becker \u003cjoel.becker@oracle.com\u003e\n"
    },
    {
      "commit": "c795b33ba171e41563ab7e25105c0cd4edd81cd7",
      "tree": "e845674493883656d44b825e5ff70256d5af6356",
      "parents": [
        "a8b88d3d49623ac701b5dc996cbd61219c793c7c"
      ],
      "author": {
        "name": "Goldwyn Rodrigues",
        "email": "rgoldwyn@gmail.com",
        "time": "Thu Aug 20 13:43:19 2009 -0500"
      },
      "committer": {
        "name": "Joel Becker",
        "email": "joel.becker@oracle.com",
        "time": "Thu Aug 20 18:42:34 2009 -0700"
      },
      "message": "ocfs2/dlm: Wait on lockres instead of erroring cancel requests\n\nIn case a downconvert is queued, and a flock receives a signal,\nBUG_ON(lockres-\u003el_action !\u003d OCFS2_AST_INVALID) is triggered\nbecause a lock cancel triggers a dlmunlock while an AST is\nscheduled.\n\nTo avoid this, allow a LKM_CANCEL to pass through, and let it\nwait on __dlm_wait_on_lockres().\n\nSigned-off-by: Goldwyn Rodrigues \u003crgoldwyn@suse.de\u003e\nAcked-off-by: Mark Fasheh \u003cmfasheh@suse.com\u003e\nSigned-off-by: Joel Becker \u003cjoel.becker@oracle.com\u003e\n"
    },
    {
      "commit": "a8b88d3d49623ac701b5dc996cbd61219c793c7c",
      "tree": "3eae2cbcb6e61b1af9902ff1ad7a8780d3c02b63",
      "parents": [
        "5fd131893793567c361ae64cbeb28a2a753bbe35"
      ],
      "author": {
        "name": "Jan Kara",
        "email": "jack@suse.cz",
        "time": "Thu Aug 20 18:26:52 2009 +0200"
      },
      "committer": {
        "name": "Joel Becker",
        "email": "joel.becker@oracle.com",
        "time": "Thu Aug 20 16:41:53 2009 -0700"
      },
      "message": "ocfs2: Add missing lock name\n\nThere is missing name for NFSSync cluster lock. This makes lockdep unhappy\nbecause we end up passing NULL to lockdep when initializing lock key. Fix it.\n\nSigned-off-by: Jan Kara \u003cjack@suse.cz\u003e\nSigned-off-by: Joel Becker \u003cjoel.becker@oracle.com\u003e\n"
    },
    {
      "commit": "5fd131893793567c361ae64cbeb28a2a753bbe35",
      "tree": "962a79225308d855ee7b1d27e5c49864af78e108",
      "parents": [
        "60e2ec48665b8495360ca4a6004c5cd52beb2bc1"
      ],
      "author": {
        "name": "Jan Kara",
        "email": "jack@suse.cz",
        "time": "Thu Jul 30 17:01:53 2009 +0200"
      },
      "committer": {
        "name": "Joel Becker",
        "email": "joel.becker@oracle.com",
        "time": "Mon Aug 17 14:32:24 2009 -0700"
      },
      "message": "ocfs2: Don\u0027t oops in ocfs2_kill_sb on a failed mount\n\nIf we fail to mount the filesystem, we have to be careful not to dereference\nuninitialized structures in ocfs2_kill_sb.\n\nSigned-off-by: Jan Kara \u003cjack@suse.cz\u003e\nSigned-off-by: Joel Becker \u003cjoel.becker@oracle.com\u003e\n"
    },
    {
      "commit": "60e2ec48665b8495360ca4a6004c5cd52beb2bc1",
      "tree": "dbd938e337b3191bbe16336cb414b9d55c5fdc81",
      "parents": [
        "ada508274b8698a33cb0e5bd037db0f9dc781795"
      ],
      "author": {
        "name": "Tao Ma",
        "email": "tao.ma@oracle.com",
        "time": "Wed Aug 12 14:42:47 2009 +0800"
      },
      "committer": {
        "name": "Joel Becker",
        "email": "joel.becker@oracle.com",
        "time": "Mon Aug 17 12:50:35 2009 -0700"
      },
      "message": "ocfs2: release the buffer head in ocfs2_do_truncate.\n\nIn ocfs2_do_truncate, we forget to release last_eb_bh which\nwill cause memleak. So call brelse in the end.\n\nSigned-off-by: Tao Ma \u003ctao.ma@oracle.com\u003e\nSigned-off-by: Joel Becker \u003cjoel.becker@oracle.com\u003e\n"
    },
    {
      "commit": "ada508274b8698a33cb0e5bd037db0f9dc781795",
      "tree": "43788f6393117159d75897bb75496c0ddb6c4e1b",
      "parents": [
        "b409d7a0ab46fe530efe52734984b4ed5d46c3eb"
      ],
      "author": {
        "name": "Jan Kara",
        "email": "jack@suse.cz",
        "time": "Mon Aug 03 18:24:21 2009 +0200"
      },
      "committer": {
        "name": "Joel Becker",
        "email": "joel.becker@oracle.com",
        "time": "Mon Aug 17 12:50:12 2009 -0700"
      },
      "message": "ocfs2: Handle quota file corruption more gracefully\n\nocfs2_read_virt_blocks() does BUG when we try to read a block from a file\nbeyond its end. Since this can happen due to filesystem corruption, it\nis not really an appropriate answer. Make ocfs2_read_quota_block() check\nthe condition and handle it by calling ocfs2_error() and returning EIO.\n\n[ Modified to print ip_blkno in the error - Joel ]\n\nReported-by: Tristan Ye \u003ctristan.ye@oracle.com\u003e\nSigned-off-by: Jan Kara \u003cjack@suse.cz\u003e\nSigned-off-by: Joel Becker \u003cjoel.becker@oracle.com\u003e\n"
    },
    {
      "commit": "b409d7a0ab46fe530efe52734984b4ed5d46c3eb",
      "tree": "f9f7861ff8b943ee905dc16a8290cac757df391e",
      "parents": [
        "8a57a9dda760ea7845390f1cd36f3eb2a49391d8"
      ],
      "author": {
        "name": "Jan Kara",
        "email": "jack@suse.cz",
        "time": "Thu Aug 06 23:29:34 2009 +0200"
      },
      "committer": {
        "name": "Joel Becker",
        "email": "joel.becker@oracle.com",
        "time": "Mon Aug 10 12:20:22 2009 -0700"
      },
      "message": "ocfs2: Fix possible deadlock when extending quota file\n\nIn OCFS2, allocator locks rank above transaction start. Thus we\ncannot extend quota file from inside a transaction less we could\ndeadlock.\n\nWe solve the problem by starting transaction not already in\nocfs2_acquire_dquot() but only in ocfs2_local_read_dquot() and\nocfs2_global_read_dquot() and we allocate blocks to quota files before starting\nthe transaction.  In case we crash, quota files will just have a few blocks\nmore but that\u0027s no problem since we just use them next time we extend the\nquota file.\n\nSigned-off-by: Jan Kara \u003cjack@suse.cz\u003e\nSigned-off-by: Joel Becker \u003cjoel.becker@oracle.com\u003e\n"
    },
    {
      "commit": "8a57a9dda760ea7845390f1cd36f3eb2a49391d8",
      "tree": "67c6566851787cd5836e763d63b069144743e4da",
      "parents": [
        "e7432675f8ca868a4af365759a8d4c3779a3d922"
      ],
      "author": {
        "name": "Roel Kluin",
        "email": "roel.kluin@gmail.com",
        "time": "Thu Aug 06 16:07:50 2009 -0700"
      },
      "committer": {
        "name": "Joel Becker",
        "email": "joel.becker@oracle.com",
        "time": "Fri Aug 07 13:16:50 2009 -0700"
      },
      "message": "ocfs2: keep index within status_map[]\n\nDo not exceed array status_map[]\n\nSigned-off-by: Roel Kluin \u003croel.kluin@gmail.com\u003e\nCc: Mark Fasheh \u003cmfasheh@suse.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Joel Becker \u003cjoel.becker@oracle.com\u003e\n"
    },
    {
      "commit": "e7432675f8ca868a4af365759a8d4c3779a3d922",
      "tree": "238d57e12fae632c9baeca98ddec701b3391ff29",
      "parents": [
        "ab57a40827d99e2d8e59066a56b93bf6c844c916"
      ],
      "author": {
        "name": "Sunil Mushran",
        "email": "sunil.mushran@oracle.com",
        "time": "Thu Aug 06 16:12:58 2009 -0700"
      },
      "committer": {
        "name": "Joel Becker",
        "email": "joel.becker@oracle.com",
        "time": "Fri Aug 07 13:16:23 2009 -0700"
      },
      "message": "ocfs2: Initialize the cluster we\u0027re writing to in a non-sparse extend\n\nIn a non-sparse extend, we correctly allocate (and zero) the clusters between\nthe old_i_size and pos, but we don\u0027t zero the portions of the cluster we\u0027re\nwriting to outside of pos\u003c-\u003elen.\n\nIt handles clustersize \u003e pagesize and blocksize \u003c pagesize.\n\n[Cleaned up by Joel Becker.]\n\nSigned-off-by: Sunil Mushran \u003csunil.mushran@oracle.com\u003e\nSigned-off-by: Joel Becker \u003cjoel.becker@oracle.com\u003e\n"
    },
    {
      "commit": "ab57a40827d99e2d8e59066a56b93bf6c844c916",
      "tree": "eed0b61db8addf2aac7113dd78d187ddf1a47959",
      "parents": [
        "e9956fae7dbce6ac770e7a00436c496ddbbd3215"
      ],
      "author": {
        "name": "Goldwyn Rodrigues",
        "email": "rgoldwyn@gmail.com",
        "time": "Fri Jul 31 14:28:02 2009 -0500"
      },
      "committer": {
        "name": "Joel Becker",
        "email": "joel.becker@oracle.com",
        "time": "Fri Jul 31 13:43:44 2009 -0700"
      },
      "message": "ocfs2: Remove redundant BUG_ON in __dlm_queue_ast()\n\nWe BUG_ON() the same thing twice.\n\nSigned-off-by: Goldwyn Rodrigues \u003crgoldwyn@suse.de\u003e\nSigned-off-by: Joel Becker \u003cjoel.becker@oracle.com\u003e\n"
    },
    {
      "commit": "e9956fae7dbce6ac770e7a00436c496ddbbd3215",
      "tree": "e1b1cd0c59a598ec671e563a732f6935133a1520",
      "parents": [
        "0584974a77796581eb3a64b6c5005edac4a95128"
      ],
      "author": {
        "name": "Tao Ma",
        "email": "tao.ma@oracle.com",
        "time": "Thu Jul 30 16:07:10 2009 +0800"
      },
      "committer": {
        "name": "Joel Becker",
        "email": "joel.becker@oracle.com",
        "time": "Thu Jul 30 11:06:06 2009 -0700"
      },
      "message": "ocfs2/quota: Release lock for error in ocfs2_quota_write.\n\nocfs2_quota_write needs to release the lock if it fails to\nread quota block. So use \"goto out\" instead of \"return err\".\n\nSigned-off-by: Tao Ma \u003ctao.ma@oracle.com\u003e\nAcked-by: Jan Kara \u003cjack@suse.cz\u003e\nSigned-off-by: Joel Becker \u003cjoel.becker@oracle.com\u003e\n"
    },
    {
      "commit": "0584974a77796581eb3a64b6c5005edac4a95128",
      "tree": "8ae9e0fb7fa73bcdd1efefe0ecf82da1b55ba66e",
      "parents": [
        "4539f1df25bcd0fdf0d8a5e2c92de6bece83c7a0"
      ],
      "author": {
        "name": "Jan Kara",
        "email": "jack@suse.cz",
        "time": "Wed Jul 22 13:17:21 2009 +0200"
      },
      "committer": {
        "name": "Joel Becker",
        "email": "joel.becker@oracle.com",
        "time": "Thu Jul 23 10:59:31 2009 -0700"
      },
      "message": "ocfs2: Define credit counts for quota operations\n\nNumbers of needed credits for some quota operations were written\nas raw numbers. Create appropriate defines instead.\n\nSigned-off-by: Jan Kara \u003cjack@suse.cz\u003e\nSigned-off-by: Joel Becker \u003cjoel.becker@oracle.com\u003e\n"
    },
    {
      "commit": "4539f1df25bcd0fdf0d8a5e2c92de6bece83c7a0",
      "tree": "fb3a2429f8759816fd15877ec0c0ab3c567dbb51",
      "parents": [
        "1c1d9793ff6720531c0125a28d321f283716e32f"
      ],
      "author": {
        "name": "Jan Kara",
        "email": "jack@suse.cz",
        "time": "Wed Jul 22 13:17:20 2009 +0200"
      },
      "committer": {
        "name": "Joel Becker",
        "email": "joel.becker@oracle.com",
        "time": "Thu Jul 23 10:59:27 2009 -0700"
      },
      "message": "ocfs2: Remove syncjiff field from quota info\n\nsyncjiff is just a converted value of syncms. Some places which\nare updating syncms forgot to update syncjiff as well. Since the\nconversion is just a simple division / multiplication and it does\nnot happen frequently, just remove the syncjiff field to avoid\nforgotten conversions.\n\nSigned-off-by: Jan Kara \u003cjack@suse.cz\u003e\nSigned-off-by: Joel Becker \u003cjoel.becker@oracle.com\u003e\n"
    },
    {
      "commit": "1c1d9793ff6720531c0125a28d321f283716e32f",
      "tree": "64316a07d5c0b434c852b3fdc8e4c9e42a363730",
      "parents": [
        "7669f54c55df225cbb2db939a6c9f111445ffc1c"
      ],
      "author": {
        "name": "Jan Kara",
        "email": "jack@suse.cz",
        "time": "Wed Jul 22 13:17:19 2009 +0200"
      },
      "committer": {
        "name": "Joel Becker",
        "email": "joel.becker@oracle.com",
        "time": "Thu Jul 23 10:59:24 2009 -0700"
      },
      "message": "ocfs2: Fix initialization of blockcheck stats\n\nWe just set blockcheck stats to zeros but we should also\nproperly initialize the spinlock there.\n\nSigned-off-by: Jan Kara \u003cjack@suse.cz\u003e\nSigned-off-by: Joel Becker \u003cjoel.becker@oracle.com\u003e\n"
    },
    {
      "commit": "7669f54c55df225cbb2db939a6c9f111445ffc1c",
      "tree": "f19010d2ecedfac169ab447fe02b3d7bedba1801",
      "parents": [
        "0e7f387bf386c99e8ee322649fe4fc23b9cccc6c"
      ],
      "author": {
        "name": "Jan Kara",
        "email": "jack@suse.cz",
        "time": "Wed Jul 22 13:17:18 2009 +0200"
      },
      "committer": {
        "name": "Joel Becker",
        "email": "joel.becker@oracle.com",
        "time": "Thu Jul 23 10:59:17 2009 -0700"
      },
      "message": "ocfs2: Zero out padding of on disk dquot structure\n\nPadding fields of on-disk dquot structure were not zeroed. Zero them\nso that it\u0027s easier to use them later.\n\nSigned-off-by: Jan Kara \u003cjack@suse.cz\u003e\nSigned-off-by: Joel Becker \u003cjoel.becker@oracle.com\u003e\n"
    },
    {
      "commit": "0e7f387bf386c99e8ee322649fe4fc23b9cccc6c",
      "tree": "9e970c95fe96be086e4741fb02560e1afe433103",
      "parents": [
        "4b3fa1904c0d192461ebba692e4940a334b74353"
      ],
      "author": {
        "name": "Jan Kara",
        "email": "jack@suse.cz",
        "time": "Wed Jul 22 13:17:17 2009 +0200"
      },
      "committer": {
        "name": "Joel Becker",
        "email": "joel.becker@oracle.com",
        "time": "Thu Jul 23 10:59:11 2009 -0700"
      },
      "message": "ocfs2: Initialize blocks allocated to local quota file\n\nWhen we extend local quota file, we should initialize data\nin newly allocated block. Firstly because on recovery we could\nparse bogus data, secondly so that block checksums are properly\ncomputed.\n\nSigned-off-by: Jan Kara \u003cjack@suse.cz\u003e\nSigned-off-by: Joel Becker \u003cjoel.becker@oracle.com\u003e\n"
    },
    {
      "commit": "4b3fa1904c0d192461ebba692e4940a334b74353",
      "tree": "f95a515b92fed5072b82b4848f469214d8a9d90f",
      "parents": [
        "b57ac2c43e66cb4aa76c9d2d0e9e0e04f19cc5a6"
      ],
      "author": {
        "name": "Jan Kara",
        "email": "jack@suse.cz",
        "time": "Wed Jul 22 13:17:16 2009 +0200"
      },
      "committer": {
        "name": "Joel Becker",
        "email": "joel.becker@oracle.com",
        "time": "Thu Jul 23 10:59:05 2009 -0700"
      },
      "message": "ocfs2: Mark buffer uptodate before calling ocfs2_journal_access_dq()\n\nIn a code path extending local quota files we marked new header\nbuffer uptodate only after calling ocfs2_journal_access_dq() which\ntriggers a bug. Fix it and also call ocfs2 variant of the function\nmarking buffer uptodate.\n\nSigned-off-by: Jan Kara \u003cjack@suse.cz\u003e\nSigned-off-by: Joel Becker \u003cjoel.becker@oracle.com\u003e\n"
    },
    {
      "commit": "b57ac2c43e66cb4aa76c9d2d0e9e0e04f19cc5a6",
      "tree": "e377a53fe3aab4034c6f24fd439eb4f3bed51745",
      "parents": [
        "82e12644cf5227dab15201fbcaf0ca6330ebd70f"
      ],
      "author": {
        "name": "Jan Kara",
        "email": "jack@suse.cz",
        "time": "Wed Jul 22 13:17:15 2009 +0200"
      },
      "committer": {
        "name": "Joel Becker",
        "email": "joel.becker@oracle.com",
        "time": "Thu Jul 23 10:58:59 2009 -0700"
      },
      "message": "ocfs2: Make global quota files blocksize aligned\n\nChange i_size of global quota files so that it always remains aligned to block\nsize. This is mainly because the end of quota block may contain checksum (if\nchecksumming is enabled) and it\u0027s a bit awkward for it to be \"outside\" of quota\nfile (and it makes life harder for ocfs2-tools).\n\nSigned-off-by: Jan Kara \u003cjack@suse.cz\u003e\nSigned-off-by: Joel Becker \u003cjoel.becker@oracle.com\u003e\n"
    },
    {
      "commit": "82e12644cf5227dab15201fbcaf0ca6330ebd70f",
      "tree": "11485e6192c3e5f0e6c2aa95c2deeb8130b61cc1",
      "parents": [
        "f7b1aa69be138ad9d7d3f31fa56f4c9407f56b6a"
      ],
      "author": {
        "name": "Tao Ma",
        "email": "tao.ma@oracle.com",
        "time": "Thu Jul 23 08:12:58 2009 +0800"
      },
      "committer": {
        "name": "Joel Becker",
        "email": "joel.becker@oracle.com",
        "time": "Thu Jul 23 10:58:46 2009 -0700"
      },
      "message": "ocfs2: Use ocfs2_rec_clusters in ocfs2_adjust_adjacent_records.\n\nIn ocfs2_adjust_adjacent_records, we will adjust adjacent records\naccording to the extent_list in the lower level. But actually\nthe lower level tree will either be a leaf or a branch. If we only\nuse ocfs2_is_empty_extent we will meet with some problem if the lower\ntree is a branch (tree_depth \u003e 1). So use !ocfs2_rec_clusters instead.\nAnd actually only the leaf record can have holes. So add a BUG_ON\nfor non-leaf branch.\n\nSigned-off-by: Tao Ma \u003ctao.ma@oracle.com\u003e\nSigned-off-by: Joel Becker \u003cjoel.becker@oracle.com\u003e\n"
    },
    {
      "commit": "f7b1aa69be138ad9d7d3f31fa56f4c9407f56b6a",
      "tree": "3d3ca30071d9d92ff3ad5c6d522ea6c05efb3885",
      "parents": [
        "3c5e10683e684ef45614c9071847e48f633d9806"
      ],
      "author": {
        "name": "Jan Kara",
        "email": "jack@suse.cz",
        "time": "Mon Jul 20 12:12:36 2009 +0200"
      },
      "committer": {
        "name": "Joel Becker",
        "email": "joel.becker@oracle.com",
        "time": "Tue Jul 21 15:47:55 2009 -0700"
      },
      "message": "ocfs2: Fix deadlock on umount\n\nIn commit ea455f8ab68338ba69f5d3362b342c115bea8e13, we moved the dentry lock\nput process into ocfs2_wq. This causes problems during umount because ocfs2_wq\ncan drop references to inodes while they are being invalidated by\ninvalidate_inodes() causing all sorts of nasty things (invalidate_inodes()\nending in an infinite loop, \"Busy inodes after umount\" messages etc.).\n\nWe fix the problem by stopping ocfs2_wq from doing any further releasing of\ninode references on the superblock being unmounted, wait until it finishes\nthe current round of releasing and finally cleaning up all the references in\ndentry_lock_list from ocfs2_put_super().\n\nThe issue was tracked down by Tao Ma \u003ctao.ma@oracle.com\u003e.\n\nSigned-off-by: Jan Kara \u003cjack@suse.cz\u003e\nSigned-off-by: Joel Becker \u003cjoel.becker@oracle.com\u003e\n"
    },
    {
      "commit": "3c5e10683e684ef45614c9071847e48f633d9806",
      "tree": "2861ea95385422c50afc818dd6bb2d2c6cb9d46a",
      "parents": [
        "1f4cea3790bf44137192f441ee84af256e3bf809"
      ],
      "author": {
        "name": "Tao Ma",
        "email": "tao.ma@oracle.com",
        "time": "Tue Jul 21 15:42:05 2009 +0800"
      },
      "committer": {
        "name": "Joel Becker",
        "email": "joel.becker@oracle.com",
        "time": "Tue Jul 21 14:41:54 2009 -0700"
      },
      "message": "ocfs2: Add extra credits and access the modified bh in update_edge_lengths.\n\nIn normal tree rotation left process, we will never touch the tree\nbranch above subtree_index and ocfs2_extend_rotate_transaction doesn\u0027t\nreserve the credits for them either.\n\nBut when we want to delete the rightmost extent block, we have to update\nthe rightmost records for all the rightmost branch(See\nocfs2_update_edge_lengths), so we have to allocate extra credits for them.\nWhat\u0027s more, we have to access them also.\n\nSigned-off-by: Tao Ma \u003ctao.ma@oracle.com\u003e\nSigned-off-by: Joel Becker \u003cjoel.becker@oracle.com\u003e\n"
    },
    {
      "commit": "1f4cea3790bf44137192f441ee84af256e3bf809",
      "tree": "64c83d47e0ea24f14b0237d9d63426e7e5af9227",
      "parents": [
        "cbfa9639aea5007313b75ec43b689d5f9e0c037d"
      ],
      "author": {
        "name": "Wengang Wang",
        "email": "wen.gang.wang@oracle.com",
        "time": "Mon Jul 13 11:38:58 2009 +0800"
      },
      "committer": {
        "name": "Joel Becker",
        "email": "joel.becker@oracle.com",
        "time": "Mon Jul 20 17:36:07 2009 -0700"
      },
      "message": "ocfs2: Fail ocfs2_get_block() immediately when a block needs allocation\n\nocfs2_get_block() does no allocation.  Hole filling for writes should\nhave happened farther up in the call chain.  We detect this case and\nprint an error, but we then continue with the function.  We should be\nexiting immediately.\n\nSigned-off-by: Wengang Wang \u003cwen.gang.wang@oracle.com\u003e\nSigned-off-by: Joel Becker \u003cjoel.becker@oracle.com\u003e\n"
    },
    {
      "commit": "cbfa9639aea5007313b75ec43b689d5f9e0c037d",
      "tree": "ba34b17b9bc7a248d800d3786bde73633da46756",
      "parents": [
        "44d8e4e1e9b941065eb7578669fe51eb65c73e63"
      ],
      "author": {
        "name": "Wengang Wang",
        "email": "wen.gang.wang@oracle.com",
        "time": "Mon Jul 13 11:38:23 2009 +0800"
      },
      "committer": {
        "name": "Joel Becker",
        "email": "joel.becker@oracle.com",
        "time": "Mon Jul 20 17:32:55 2009 -0700"
      },
      "message": "ocfs2: Fix error return in ocfs2_write_cluster()\n\nA typo caused ocfs2_write_cluster() to return 0 in some error cases.\nFix it.\n\nSigned-off-by: Wengang Wang \u003cwen.gang.wang@oracle.com\u003e\nSigned-off-by: Joel Becker \u003cjoel.becker@oracle.com\u003e\n"
    },
    {
      "commit": "44d8e4e1e9b941065eb7578669fe51eb65c73e63",
      "tree": "6e0be67a3b6be743db1dde36692ab051b7498849",
      "parents": [
        "cefcb800fa9536bb6f29485c53e6c82a65b0c022"
      ],
      "author": {
        "name": "Subrata Modak",
        "email": "subrata@linux.vnet.ibm.com",
        "time": "Tue Jul 14 01:19:31 2009 +0530"
      },
      "committer": {
        "name": "Joel Becker",
        "email": "joel.becker@oracle.com",
        "time": "Mon Jul 20 15:52:57 2009 -0700"
      },
      "message": "ocfs2: Fix compilation warning for fs/ocfs2/xattr.c\n\ngcc 4.4.1 generates the following build warning on i386:\n\nCC [M]  fs/ocfs2/xattr.o\nfs/ocfs2/xattr.c: In function ‘ocfs2_xattr_block_get’:\nfs/ocfs2/xattr.c:1055: warning: ‘block_off’ may be used uninitialized in this function\n\nThe following fix is based on a similar approach by David Howells\nfew days back: http://lkml.org/lkml/2009/7/9/109,\n\nSigned-off-by: Subrata Modak\u003csubrata@linux.vnet.ibm.com\u003e,\nSigned-off-by: Joel Becker \u003cjoel.becker@oracle.com\u003e\n"
    },
    {
      "commit": "cefcb800fa9536bb6f29485c53e6c82a65b0c022",
      "tree": "2ec23ec56afc83b0462d1ea141b13fd615962e41",
      "parents": [
        "812e7a6a43fc34bc8f70c2b80db4ea5997d66ea8"
      ],
      "author": {
        "name": "Goldwyn Rodrigues",
        "email": "rgoldwyn@gmail.com",
        "time": "Sat Jul 11 10:57:27 2009 -0500"
      },
      "committer": {
        "name": "Joel Becker",
        "email": "joel.becker@oracle.com",
        "time": "Mon Jul 20 15:47:58 2009 -0700"
      },
      "message": "ocfs2: Initialize count in aio_write before generic_write_checks\n\ngeneric_write_checks() expects count to be initialized to the size of\nthe write.  Writes to files open with O_DIRECT|O_LARGEFILE write 0 bytes\nbecause count is uninitialized.\n\nSigned-off-by: Goldwyn Rodrigues \u003crgoldwyn@suse.de\u003e\nSigned-off-by: Joel Becker \u003cjoel.becker@oracle.com\u003e\n"
    },
    {
      "commit": "812e7a6a43fc34bc8f70c2b80db4ea5997d66ea8",
      "tree": "e6bb0b870f7b17690ec81c118119afc910bcabec",
      "parents": [
        "17ae26b669886efe237b77439e43eb390fceb119"
      ],
      "author": {
        "name": "Wengang Wang",
        "email": "wen.gang.wang@oracle.com",
        "time": "Fri Jul 10 13:26:04 2009 +0800"
      },
      "committer": {
        "name": "Joel Becker",
        "email": "joel.becker@oracle.com",
        "time": "Fri Jul 10 16:53:52 2009 -0700"
      },
      "message": "ocfs2: log the actual return value of ocfs2_file_aio_write()\n\nin ocfs2_file_aio_write(), log_exit() could don\u0027t log the value\nwhich is really returned. this patch fixes it.\n\nSigned-off-by: Wengang Wang \u003cwen.gang.wang@oracle.com\u003e\nSigned-off-by: Joel Becker \u003cjoel.becker@oracle.com\u003e\n"
    },
    {
      "commit": "17ae26b669886efe237b77439e43eb390fceb119",
      "tree": "d157cde12d2306a8d735953a23f7d23540fee399",
      "parents": [
        "8b712cd58adfe6aeeb0be4ecc011dc35620719e7"
      ],
      "author": {
        "name": "Jeff Liu",
        "email": "jeff.liu@oracle.com",
        "time": "Tue Jul 07 15:51:40 2009 +0800"
      },
      "committer": {
        "name": "Joel Becker",
        "email": "joel.becker@oracle.com",
        "time": "Wed Jul 08 15:34:40 2009 -0700"
      },
      "message": "ocfs2: trivial fix for s/migrate/migration/ in dlmrecovery.c logging\n\nin dlmrecovery.c:1121, replace \u0027migrate\u0027 to \u0027migration\u0027 to keep the consistency\nby comparing to other lines with the similar log info in the same file.\n\nSigned-off-by: Jeff Liu \u003cjeff.liu@oracle.com\u003e\nSigned-off-by: Joel Becker \u003cjoel.becker@oracle.com\u003e\n"
    },
    {
      "commit": "8b712cd58adfe6aeeb0be4ecc011dc35620719e7",
      "tree": "98a0cdc0b210392fc0fd0feb464603224c2863b1",
      "parents": [
        "44b572809581d5a10dbe35aa6bf689f32b9c5ad6"
      ],
      "author": {
        "name": "Jeff Mahoney",
        "email": "jeffm@suse.com",
        "time": "Tue Jul 07 17:22:12 2009 -0400"
      },
      "committer": {
        "name": "Joel Becker",
        "email": "joel.becker@oracle.com",
        "time": "Wed Jul 08 15:34:02 2009 -0700"
      },
      "message": "ocfs2: Fixup orphan scan cleanup after failed mount\n\nIf the mount fails for any reason, ocfs2_dismount_volume calls\nocfs2_orphan_scan_stop. It requires that ocfs2_orphan_scan_init\nbe called to setup the mutex and work queues, but that doesn\u0027t\nhappen if the mount has failed and we oops accessing an uninitialized\nwork queue.\n\nThis patch splits the init and startup of the orphan scan, eliminating\nthe oops.\n\nSigned-off-by: Jeff Mahoney \u003cjeffm@suse.com\u003e\nSigned-off-by: Joel Becker \u003cjoel.becker@oracle.com\u003e\n"
    },
    {
      "commit": "44b572809581d5a10dbe35aa6bf689f32b9c5ad6",
      "tree": "6f515fd9bb6434092ed73d2c8fbdd85c29d0e001",
      "parents": [
        "ad361c9884e809340f6daca80d56a9e9c871690a"
      ],
      "author": {
        "name": "Yinghai Lu",
        "email": "yinghai@kernel.org",
        "time": "Wed Jul 08 09:50:19 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Jul 08 10:32:50 2009 -0700"
      },
      "message": "x86: don\u0027t clear nodes_states[N_NORMAL_MEMORY] when numa is not compiled in\n\nAlex found that specjbb2005 still can not run with hugepages on an\nx86-64 machine.  This only happens when numa is not compiled in.\n\nThe root cause: node_set_state will not set it back for us in that case,\nso don\u0027t clear that when numa is not select in config\n\n[ v2: use node_clear_state instead ]\nReported-and-Tested-by: Alex Shi \u003calex.shi@intel.com\u003e\nSigned-off-by: Yinghai Lu \u003cyinghai@kernel.org\u003e\nReviewed-by: Christoph Lameter \u003ccl@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "ad361c9884e809340f6daca80d56a9e9c871690a",
      "tree": "7ec02c9934964fecdc791a0df0fc722d3bda5c53",
      "parents": [
        "e3288775ff63900fbb7db505f2b9a1bee98f07df"
      ],
      "author": {
        "name": "Joe Perches",
        "email": "joe@perches.com",
        "time": "Mon Jul 06 13:05:40 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Jul 08 10:30:03 2009 -0700"
      },
      "message": "Remove multiple KERN_ prefixes from printk formats\n\nCommit 5fd29d6ccbc98884569d6f3105aeca70858b3e0f (\"printk: clean up\nhandling of log-levels and newlines\") changed printk semantics.  printk\nlines with multiple KERN_\u003clevel\u003e prefixes are no longer emitted as\nbefore the patch.\n\n\u003clevel\u003e is now included in the output on each additional use.\n\nRemove all uses of multiple KERN_\u003clevel\u003es in formats.\n\nSigned-off-by: Joe Perches \u003cjoe@perches.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "e3288775ff63900fbb7db505f2b9a1bee98f07df",
      "tree": "057d046df4f1ef9d42ce8ce79439eec9db35dc22",
      "parents": [
        "d945cb9cce20ac7143c2de8d88b187f62db99bdc"
      ],
      "author": {
        "name": "Alan Cox",
        "email": "alan@linux.intel.com",
        "time": "Tue Jul 07 16:39:54 2009 +0100"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Jul 08 09:47:59 2009 -0700"
      },
      "message": "tty: maintainers data was edited wrongly by someone\n\nMove tty entries to tty not trivial. Noted by David Brownell.\n\nSigned-off-by: Alan Cox \u003calan@linux.intel.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "d945cb9cce20ac7143c2de8d88b187f62db99bdc",
      "tree": "88f8cc4b4e545c4e8ce998c9400767fffe5ddc94",
      "parents": [
        "b4b21cac88caa4078f5755b0bd3770af5fe9c146"
      ],
      "author": {
        "name": "Alan Cox",
        "email": "alan@linux.intel.com",
        "time": "Tue Jul 07 16:39:41 2009 +0100"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Jul 08 09:47:59 2009 -0700"
      },
      "message": "pty: Rework the pty layer to use the normal buffering logic\n\nThis fixes the ppp problems and various other issues with call locking\ncaused by one side of a pty called in one locking context trying to match\nanother with differing rules on the other side. We also get a big slack\nspace to work with that means we can bury the flow control deadlock case\nfor any conceivable real world situation.\n\nSigned-off-by: Alan Cox \u003calan@linux.intel.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "b4b21cac88caa4078f5755b0bd3770af5fe9c146",
      "tree": "fb5cccef61d0ed80adf4b0d1d03ddb3e80ff701d",
      "parents": [
        "728b690fd5c185c639a5db0819bd6e0385b14188",
        "a2e1b4c31257c07f148a89eb7eea7ca959fd0642"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Jul 08 09:36:46 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Jul 08 09:36:46 2009 -0700"
      },
      "message": "Merge branch \u0027fixes\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/davej/cpufreq\n\n* \u0027fixes\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/davej/cpufreq:\n  [CPUFREQ] Powernow-k8: support family 0xf with 2 low p-states\n  [CPUFREQ] fix (utter) cpufreq_add_dev mess\n  [CPUFREQ] Cleanup locking in conservative governor\n  [CPUFREQ] Cleanup locking in ondemand governor\n  [CPUFREQ] Mark policy_rwsem as going static in cpufreq.c wont be exported\n  [CPUFREQ] Eliminate the recent lockdep warnings in cpufreq\n"
    },
    {
      "commit": "728b690fd5c185c639a5db0819bd6e0385b14188",
      "tree": "ee5d5c9791a88bfe71bba747979d05af7bd28090",
      "parents": [
        "ed7ba2ef09254b2fd9698708b407f4652d26e36a",
        "d01730d74d2b0155da50d44555001706294014f7"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Jul 08 09:35:50 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Jul 08 09:35:50 2009 -0700"
      },
      "message": "Merge branch \u0027for_linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/jack/linux-quota-2.6\n\n* \u0027for_linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/jack/linux-quota-2.6:\n  quota: Fix possible deadlock during parallel quotaon and quotaoff\n"
    },
    {
      "commit": "ed7ba2ef09254b2fd9698708b407f4652d26e36a",
      "tree": "d16ea988b54d906704003ab086498c184afe1a1f",
      "parents": [
        "4b99d3527041bec1abe9903263a3a1b7d2ba0c4a",
        "886a7a3371da8ee46a13f8e598a536bd8765b837"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Jul 08 09:35:22 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Jul 08 09:35:22 2009 -0700"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/suspend-2.6\n\n* \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/suspend-2.6:\n  PM: Clear -EAGAIN in dpm_prepare\n  x86: Fix resume from suspend when CONFIG_CC_STACKPROTECTOR\n"
    },
    {
      "commit": "4b99d3527041bec1abe9903263a3a1b7d2ba0c4a",
      "tree": "c28eb8558d7cdc56607f9eff4c8073928b32d202",
      "parents": [
        "0f2f2221b4ad816567394a52643963428fd353cd"
      ],
      "author": {
        "name": "Sheng Yang",
        "email": "sheng@linux.intel.com",
        "time": "Wed Jul 08 11:52:52 2009 +0100"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Jul 08 09:35:10 2009 -0700"
      },
      "message": "intel-iommu: Fix intel_iommu_unmap_range() with size 0\n\nAfter some API change, intel_iommu_unmap_range() introduced a assumption that\nparameter size !\u003d 0, otherwise the dma_pte_clean_range() would have a\noverflowed argument. But the user like KVM don\u0027t have this assumption before,\nthen some BUG() triggered.\n\nFix it by ignoring size \u003d 0.\n\nSigned-off-by: Sheng Yang \u003csheng@linux.intel.com\u003e\nSigned-off-by: David Woodhouse \u003cDavid.Woodhouse@intel.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "0f2f2221b4ad816567394a52643963428fd353cd",
      "tree": "9677b25ca9df0bfb59e0bc70e8c19e2b4d3cc0af",
      "parents": [
        "d5ce5b40bc66880d1732461d4b47d7fc3331ed30"
      ],
      "author": {
        "name": "Catalin Marinas",
        "email": "catalin.marinas@arm.com",
        "time": "Wed Jul 08 11:17:40 2009 +0100"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Jul 08 09:34:08 2009 -0700"
      },
      "message": "Free struct device in fw_dev_release()\n\nThe f_dev in _request_firmware() is allocated via the fw_setup_device()\nand fw_register_device() calls and its class set to firmware_class (the\nclass release function is fw_dev_release).\n\nCommit 6acf70f078ca replaced the kfree(dev) in fw_dev_release() with a\nput_device() call but my understanding is that the release function is\ncalled via put_device -\u003e kobject_put -\u003e kref_put -\u003e koject_release etc.\nand it should call kfree since it\u0027s the last to see this device\nstructure alive.\n\nBecause of that, the _request_firmware() function on its -ENOENT error\npath only calls device_unregister(f_dev) which would eventually call\nfw_dev_release() but there is no kfree (the subsequent put_device call\nwould just make the kref negative).\n\nSigned-off-by: Catalin Marinas \u003ccatalin.marinas@arm.com\u003e\nAcked-by: Cornelia Huck \u003ccornelia.huck@de.ibm.com\u003e\nAcked-by: Ming Lei \u003ctom.leiming@gmail.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "d5ce5b40bc66880d1732461d4b47d7fc3331ed30",
      "tree": "981ce8897febe8c0691247a5312f14c381359853",
      "parents": [
        "5e75c5f5d723074b1ceefe916c3005888e431d12"
      ],
      "author": {
        "name": "Catalin Marinas",
        "email": "catalin.marinas@arm.com",
        "time": "Wed Jul 08 11:17:34 2009 +0100"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Jul 08 09:34:07 2009 -0700"
      },
      "message": "Free the memory allocated by memdup_user() in fs/sysfs/bin.c\n\nCommit 1c8542c7bb replaced kmalloc() with memdup_user() in the write()\nfunction but also dropped the kfree(temp). The memdup_user() function\nallocates memory which is never freed.\n\nSigned-off-by: Catalin Marinas \u003ccatalin.marinas@arm.com\u003e\nCc: Parag Warudkar \u003cparag.warudkar@gmail.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "5e75c5f5d723074b1ceefe916c3005888e431d12",
      "tree": "d929d72d9e4f0abcd74cd65922b35123cd3455d5",
      "parents": [
        "d6d4655172f9c5b9402bb453ed9145a7ab5c46d0",
        "eeafa5ef6de5acf678624a21f7dba7d43ba73845"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Jul 08 09:32:41 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Jul 08 09:32:41 2009 -0700"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/dtor/input\n\n* \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/dtor/input:\n  Input: gpio_mouse - use standard driver registration method\n  Input: mark serio and i8042 as suspended when hibernating too\n  Input: add support for generic GPIO-based matrix keypad\n  Input: arrange keyboards alphabetically\n  Input: gpio-keys - avoid possibility of sleeping in timer function\n  Input: gpio-keys - revert \u0027change timer to workqueue\u0027\n  Input: dm355evm_keys - fix kconfig symbol names\n  Input: wacom - add DTF720a support and fix rotation on Intuos3\n  Input: i8042 - more reset quirks for MSI Wind-clone netbooks\n"
    },
    {
      "commit": "d6d4655172f9c5b9402bb453ed9145a7ab5c46d0",
      "tree": "22f487b6711c42cae4222657e4f0b3f6caaf0944",
      "parents": [
        "b43f3cbd21ffbd719fd4fa6642bfe6af255ded34",
        "ea96025a26ab8949adab1a8e81419202f92f3f7f"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Jul 08 09:32:20 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Jul 08 09:32:20 2009 -0700"
      },
      "message": "Merge branch \u0027merge\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/benh/powerpc\n\n* \u0027merge\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/benh/powerpc:\n  powerpc: Don\u0027t use alloc_bootmem() in init_IRQ() path\n  powerpc: Fix spin_event_timeout() to be robust over context switches\n  powerpc: Use pr_devel() in do_dcache_icache_coherency()\n  powerpc/cell: Use pr_devel() in axon_msi.c\n  powerpc: Use pr_devel() in arch/powerpc/mm/gup.c\n  powerpc: Cleanup \u0026 use pr_devel() in arch/powerpc/mm/slb.c\n  powerpc/perf_counter: Remove duplicated #include\n  powerpc: Use pr_devel() in arch/powerpc/mm/mmu_context_nohash.c\n  powerpc/pseries: Use pr_devel() in xics.c\n  powerpc: Remove unnecessary semicolons\n  powerpc/pseries: Use pr_devel() in pseries LPAR HPTE routines\n  powerpc/44x: Fix build error with -Werror for Warp platform\n  powerpc/4xx: Have Warp take advantage of GPIO LEDs default-state \u003d keep\n  powerpc/44x: Update Warp defconfig\n"
    },
    {
      "commit": "b43f3cbd21ffbd719fd4fa6642bfe6af255ded34",
      "tree": "f09372f7aa3057a4cca32d5c7fc19032bd7cda5a",
      "parents": [
        "622f8061a68d3f7a576c20a47b7f3bae7c8cfbef"
      ],
      "author": {
        "name": "Alexey Dobriyan",
        "email": "adobriyan@gmail.com",
        "time": "Wed Jul 08 01:54:37 2009 +0400"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Jul 08 09:31:56 2009 -0700"
      },
      "message": "headers: mnt_namespace.h redux\n\nFix various silly problems wrt mnt_namespace.h:\n\n - exit_mnt_ns() isn\u0027t used, remove it\n - done that, sched.h and nsproxy.h inclusions aren\u0027t needed\n - mount.h inclusion was need for vfsmount_lock, but no longer\n - remove mnt_namespace.h inclusion from files which don\u0027t use anything\n   from mnt_namespace.h\n\nSigned-off-by: Alexey Dobriyan \u003cadobriyan@gmail.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "622f8061a68d3f7a576c20a47b7f3bae7c8cfbef",
      "tree": "b9fa9f4d92d80eaae27f5a6f6cb2ff8b5d007024",
      "parents": [
        "6c96895e999f5c44a95a5cad6a6e32e7bd6e28b6",
        "dd4da3a55f99efbfd46674ebefdcc2878a57ef2a"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Jul 08 09:24:01 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Jul 08 09:24:01 2009 -0700"
      },
      "message": "Merge branch \u0027sh/for-2.6.31\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/lethal/sh-2.6\n\n* \u0027sh/for-2.6.31\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/lethal/sh-2.6:\n  serial: sh-sci: fix sci interrupt handler\n  video: hitfb: Move over to dev_pm_ops.\n  video: hitfb: Convert to framebuffer_alloc().\n  video: sh_mobile_lcdcfb: Convert to framebuffer_alloc().\n  sh: add r8a66597 usb0 host to the se7724 board\n  usb: allow sh7724 to enable on-chip r8a66597\n  sh-sci: update receive error handling for muxed irqs\n  sh: define PERF_COUNTER_INDEX_OFFSET.\n"
    },
    {
      "commit": "6c96895e999f5c44a95a5cad6a6e32e7bd6e28b6",
      "tree": "5f7ca73877e79431e36a96c658120ee89af39b6f",
      "parents": [
        "99f5d48b98fb52db6da379c1b1fd6c87438ee45a"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Jul 08 09:20:11 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Jul 08 09:20:11 2009 -0700"
      },
      "message": "Revert \"fb: Initialize fb_info mutexes in framebuffer_alloc()\"\n\nThis reverts commit 4148df9b0f38bdd362dd91d52076926c11cbe5a9.\n\nLet\u0027s hope that the mm_lock initialization is now correct with all\ndrivers, following Krzysztof\u0027s patches.\n\nRequested-by: Krzysztof Helt \u003ckrzysztof.h1@poczta.fm\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "99f5d48b98fb52db6da379c1b1fd6c87438ee45a",
      "tree": "4144f5f470ed6679bd8183971c214acf5d2fe87f",
      "parents": [
        "d7272e5bd9ead4389849db9749b8c4dabd459dd1"
      ],
      "author": {
        "name": "Krzysztof Helt",
        "email": "krzysztof.h1@wp.pl",
        "time": "Tue Jul 07 22:34:13 2009 +0200"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Jul 08 09:19:50 2009 -0700"
      },
      "message": "matroxfb: fix regression with uninitalized fb_info-\u003emm_lock mutex (second head)\n\nRemove redundant locking by the mm_lock mutex before a second head of\nmatrox framebuffer is registered.\n\nThis fixes a problem with uninitialized the fb_info-\u003emm_lock mutex\nintroduced by the commit 537a1bf059f \" fbdev: add mutex for fb_mmap\nlocking\"\n\nSigned-off-by: Krzysztof Helt \u003ckrzysztof.h1@wp.pl\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "d7272e5bd9ead4389849db9749b8c4dabd459dd1",
      "tree": "c6ab8bf22323aff457d484260bd35849312dc34f",
      "parents": [
        "f1b9c339bf30c90114b7c8f285d25e67c7080f90"
      ],
      "author": {
        "name": "Krzysztof Helt",
        "email": "krzysztof.h1@wp.pl",
        "time": "Tue Jul 07 22:06:48 2009 +0200"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Jul 08 09:19:49 2009 -0700"
      },
      "message": "matroxfb: fix regression with uninitalized fb_info-\u003emm_lock mutex\n\nRemove redundant call to the matroxfb_update_fix() before matrox\nframbuffer is registered.\n\nThis fixes a problem with uninitialized the fb_info-\u003emm_lock mutex\nintroduced by the commit 537a1bf059f \" fbdev: add mutex for fb_mmap\nlocking\"\n\nSigned-off-by: Krzysztof Helt \u003ckrzysztof.h1@wp.pl\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "f1b9c339bf30c90114b7c8f285d25e67c7080f90",
      "tree": "8ffded592903f2581fcbc3ad22c2c7552d9d1f21",
      "parents": [
        "feaa61e49b126c2206051a234b8f14ccc75b9f61"
      ],
      "author": {
        "name": "Krzysztof Helt",
        "email": "krzysztof.h1@wp.pl",
        "time": "Tue Jul 07 19:24:54 2009 +0200"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Jul 08 09:19:49 2009 -0700"
      },
      "message": "w100fb: fix regression with uninitalized fb_info-\u003emm_lock mutex\n\nRemove redundant call to the w100fb_set_par() before w100 frambuffer is\nregistered.\n\nThis fixes a problem with uninitialized the fb_info-\u003emm_lock mutex\nintroduced by the commit 537a1bf059f \" fbdev: add mutex for fb_mmap\nlocking\"\n\nSigned-off-by: Krzysztof Helt \u003ckrzysztof.h1@wp.pl\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "feaa61e49b126c2206051a234b8f14ccc75b9f61",
      "tree": "f1b02b85d08b5b60a0278a6711a1ed1d14cd7c5c",
      "parents": [
        "0c8ddf7f8bf770cf49086af85078c4660d387c55"
      ],
      "author": {
        "name": "Krzysztof Helt",
        "email": "krzysztof.h1@wp.pl",
        "time": "Tue Jul 07 19:15:16 2009 +0200"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Jul 08 09:19:49 2009 -0700"
      },
      "message": "atafb: fix regression with uninitalized fb_info-\u003emm_lock mutex\n\nRemove redundant locking of the fb_info-\u003emm_lock mutex before the\nframbuffer is registered.\n\nThis fixes a problem with uninitialized the fb_info-\u003emm_lock mutex\nintroduced by the commit 537a1bf059f \" fbdev: add mutex for fb_mmap\nlocking\"\n\nSigned-off-by: Krzysztof Helt \u003ckrzysztof.h1@wp.pl\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "0c8ddf7f8bf770cf49086af85078c4660d387c55",
      "tree": "e8cf88b11e514766f232ef11a556f06b1e16e6fc",
      "parents": [
        "e9bf0cc7cbfbf3952cdf8028aa0d348d09ecdba1"
      ],
      "author": {
        "name": "Krzysztof Helt",
        "email": "krzysztof.h1@wp.pl",
        "time": "Tue Jul 07 19:07:57 2009 +0200"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Jul 08 09:19:49 2009 -0700"
      },
      "message": "i810fb: fix regression with uninitalized fb_info-\u003emm_lock mutex\n\nRemove redundant call to the encode_fix() before i810 frambuffer is\nregistered.\n\nThis fixes a problem with uninitialized the fb_info-\u003emm_lock mutex\nintroduced by the commit 537a1bf059f \" fbdev: add mutex for fb_mmap\nlocking\"\n\nSigned-off-by: Krzysztof Helt \u003ckrzysztof.h1@wp.pl\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "e9bf0cc7cbfbf3952cdf8028aa0d348d09ecdba1",
      "tree": "3d44e78af85ce720091ed7d0a8e1307d5d54e364",
      "parents": [
        "faf80d62e44dc627efb741f48db50c1858d1667c"
      ],
      "author": {
        "name": "Parag Warudkar",
        "email": "parag.lkml@gmail.com",
        "time": "Wed Jul 08 11:46:02 2009 -0400"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Jul 08 09:18:05 2009 -0700"
      },
      "message": "elfcore.h : Fix UML build breakage\n\nCommit a65e7bfcd74e4c0939f235d2bf9f48ddb3a57991 broke the UML build with\nthe following error -\n\n  In file included from fs/proc/kcore.c:17:\n  include/linux/elfcore.h: In function \u0027elf_core_copy_task_regs\u0027:\n  include/linux/elfcore.h:129: error: implicit declaration of function \u0027task_pt_regs\u0027\n\nFix this by restoring the previous behavior of returning 0 for all arches\nlike UML that don\u0027t define task_pt_regs.\n\nSigned-off-by: Parag Warudkar \u003cparag.lkml@gmail.com\u003e\nAcked-by: Amerigo Wang \u003cxiyou.wangcong@gmail.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "886a7a3371da8ee46a13f8e598a536bd8765b837",
      "tree": "5b6b9fb297cc3f59cd1777548e2fa82d4e1bb5f9",
      "parents": [
        "00024be9689963c55cf2ab10ce3fb4502016c09a"
      ],
      "author": {
        "name": "Sebastian Ott",
        "email": "sebott@linux.vnet.ibm.com",
        "time": "Wed Jul 08 13:26:05 2009 +0200"
      },
      "committer": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Wed Jul 08 13:26:05 2009 +0200"
      },
      "message": "PM: Clear -EAGAIN in dpm_prepare\n\nWhen the last device in the dpm list is unregistered directly after its\nprepare() callback returned with -EAGAIN, the return code is passed to\nthe calling function, resulting in a suspend failure. Prevent this by\nclearing the return code after -EAGAIN.\n\nSigned-off-by: Sebastian Ott \u003csebott@linux.vnet.ibm.com\u003e\nSigned-off-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\n"
    },
    {
      "commit": "00024be9689963c55cf2ab10ce3fb4502016c09a",
      "tree": "bd672db137500c8760581fe0a31b80f77ba16165",
      "parents": [
        "faf80d62e44dc627efb741f48db50c1858d1667c"
      ],
      "author": {
        "name": "Peter Chubb",
        "email": "peter.chubb@nicta.com.au",
        "time": "Wed Jul 08 13:20:13 2009 +0200"
      },
      "committer": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Wed Jul 08 13:20:13 2009 +0200"
      },
      "message": "x86: Fix resume from suspend when CONFIG_CC_STACKPROTECTOR\n\nPatch 08687aec71bc9134fe336e561f6did877bacf74fc0a (x86: unify\npower/cpu_(32|64).c)  renamed cpu_32.c to cpu.c, but did not update\nthe special compilation flags for the file for the new name.\n\nThis patch fixes the compilation flags, and therefore fixes resume\nfrom suspend on my Acer Aspire One.\n\n[rjw: The regression from 2.6.30 fixed by this patch is tracked as\n http://bugzilla.kernel.org/show_bug.cgi?id\u003d13661]\n\nSigned-off-by: Peter Chubb \u003cpeterc@nicta.com.au\u003e\nSigned-off-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\n"
    },
    {
      "commit": "eeafa5ef6de5acf678624a21f7dba7d43ba73845",
      "tree": "01ed711c43e518c571b6f46eeffd9302f32d2717",
      "parents": [
        "ddaa43433dd77535e4e132787f199f58ce224f44"
      ],
      "author": {
        "name": "Saeed Bishara",
        "email": "saeed@marvell.com",
        "time": "Tue Jul 07 22:11:52 2009 -0700"
      },
      "committer": {
        "name": "Dmitry Torokhov",
        "email": "dmitry.torokhov@gmail.com",
        "time": "Tue Jul 07 22:47:14 2009 -0700"
      },
      "message": "Input: gpio_mouse - use standard driver registration method\n\nThis patch is needed when the gpio\u0027s became available only at late\nstages, for example, when using i2c gpio expander.\n\nSigned-off-by: Saeed Bishara \u003csaeed@marvell.com\u003e\nSigned-off-by: Dmitry Torokhov \u003cdtor@mail.ru\u003e\n"
    },
    {
      "commit": "ddaa43433dd77535e4e132787f199f58ce224f44",
      "tree": "dbad5b4caa825aa3d89f7b8fda014ea72feabffc",
      "parents": [
        "bab7614d6d1b1fc96ec6c5a7ca34c8641060e659"
      ],
      "author": {
        "name": "Thadeu Lima de Souza Cascardo",
        "email": "cascardo@holoscopio.com",
        "time": "Tue Jul 07 22:10:02 2009 -0700"
      },
      "committer": {
        "name": "Dmitry Torokhov",
        "email": "dmitry.torokhov@gmail.com",
        "time": "Tue Jul 07 22:46:58 2009 -0700"
      },
      "message": "Input: mark serio and i8042 as suspended when hibernating too\n\nSerio ports are not being restarted any longer because resume operations\nafter hibernate do nothing, since the device has not been marked as\nsuspended. This happens because suspend is only considering the SUSPEND\nevent but not the FREEZE event.\n\nNote that this driver has still to migrate to dev_pm_ops, but this fixes\nthis particular bug now.\n\nSigned-off-by: Thadeu Lima de Souza Cascardo \u003ccascardo@holoscopio.com\u003e\nSigned-off-by: Dmitry Torokhov \u003cdtor@mail.ru\u003e\n"
    },
    {
      "commit": "ea96025a26ab8949adab1a8e81419202f92f3f7f",
      "tree": "635711cca0aea548d339c436f9a3a730d1dc78e7",
      "parents": [
        "ad9064d5e22a6a24f828dad63c4775c4d7280bd4"
      ],
      "author": {
        "name": "Anton Vorontsov",
        "email": "avorontsov@ru.mvista.com",
        "time": "Wed Jul 01 10:59:57 2009 +0000"
      },
      "committer": {
        "name": "Benjamin Herrenschmidt",
        "email": "benh@kernel.crashing.org",
        "time": "Wed Jul 08 13:50:25 2009 +1000"
      },
      "message": "powerpc: Don\u0027t use alloc_bootmem() in init_IRQ() path\n\nThis patch fixes various badnesses like this for all interrupt\ncontrollers:\n\n------------[ cut here ]------------\nBadness at c04db9dc [verbose debug info unavailable]\nNIP: c04db9dc LR: c04db9ac CTR: 00000000\nREGS: c053de30 TRAP: 0700   Not tainted  (2.6.31-rc1-00432-ge69b2b5-dirty)\nMSR: 00021000 \u003cME,CE\u003e  CR: 22020084  XER: 00000000\nTASK \u003d c0500480[0] \u0027swapper\u0027 THREAD: c053c000\nGPR00: 00000001 c053dee0 c0500480 00000000 00000050 00000020 3fffffff 00000000\nGPR08: 00000001 c0540000 e0080080 00000000 22000084 64183600 3ff8f800 00000000\nGPR16: 841b0240 449a0303 00000000 00000000 00000000 00000000 00000000 c04f5bf4\nGPR24: 00000000 00000000 00000000 00000050 00000020 00000000 3fffffff 00000050\nNIP [c04db9dc] alloc_arch_preferred_bootmem+0x48/0x74\nLR [c04db9ac] alloc_arch_preferred_bootmem+0x18/0x74\nCall Trace:\n[c053dee0] [c000a5a4] __of_address_to_resource+0x44/0xd0 (unreliable)\n[c053def0] [c04dba58] ___alloc_bootmem_nopanic+0x50/0x108\n[c053df20] [c04dbb28] ___alloc_bootmem+0x18/0x50\n[c053df30] [c04d5de0] qe_ic_init+0x5c/0x1b0\n[c053df70] [c04d77b0] mpc85xx_mds_pic_init+0xb8/0x10c\n[c053dfb0] [c04cf374] init_IRQ+0x28/0x3c\n\np.s. commit 85355bb272db31a3f2dd99d547eef794805e1319 (\"powerpc: Fix\nmpic alloc warning\") missed some alloc_bootmem() instances, this is\nnow fixed.\n\nSigned-off-by: Anton Vorontsov \u003cavorontsov@ru.mvista.com\u003e\nAcked-by: Timur Tabi \u003ctimur@freescale.com\u003e\nSigned-off-by: Benjamin Herrenschmidt \u003cbenh@kernel.crashing.org\u003e\n"
    },
    {
      "commit": "ad9064d5e22a6a24f828dad63c4775c4d7280bd4",
      "tree": "d3e91b73dd737efa36cdb8191069dc200a5a79e5",
      "parents": [
        "30c5af435b2e3e5700b0e4a53ac37a39b3b3516e"
      ],
      "author": {
        "name": "Grant Likely",
        "email": "grant.likely@secretlab.ca",
        "time": "Mon Jun 29 13:40:51 2009 +0000"
      },
      "committer": {
        "name": "Benjamin Herrenschmidt",
        "email": "benh@kernel.crashing.org",
        "time": "Wed Jul 08 13:50:24 2009 +1000"
      },
      "message": "powerpc: Fix spin_event_timeout() to be robust over context switches\n\nCurrent implementation of spin_event_timeout can be interrupted by an\nIRQ or context switch after testing the condition, but before checking\nthe timeout.  This can cause the loop to report a timeout when the\ncondition actually became true in the middle.\n\nThis patch adds one final check of the condition upon exit of the loop\nif the last test of the condition was still false.\n\nSigned-off-by: Grant Likely \u003cgrant.likely@secretlab.ca\u003e\nAcked-by: Timur Tabi \u003ctimur@freescale.com\u003e\nSigned-off-by: Benjamin Herrenschmidt \u003cbenh@kernel.crashing.org\u003e\n"
    },
    {
      "commit": "30c5af435b2e3e5700b0e4a53ac37a39b3b3516e",
      "tree": "52c870ee4cdd02f05588ec942732a3827f34ecdf",
      "parents": [
        "33875f03307452650309a7d071678b2ca5f2fc26"
      ],
      "author": {
        "name": "Michael Ellerman",
        "email": "michael@ellerman.id.au",
        "time": "Wed Jun 17 18:13:52 2009 +0000"
      },
      "committer": {
        "name": "Benjamin Herrenschmidt",
        "email": "benh@kernel.crashing.org",
        "time": "Wed Jul 08 13:50:24 2009 +1000"
      },
      "message": "powerpc: Use pr_devel() in do_dcache_icache_coherency()\n\npr_debug() can now result in code being generated even when DEBUG\nis not defined. That\u0027s not really desirable in some places.\n\nWith CONFIG_DYNAMIC_DEBUG\u003dy:\n\nsize before:\n   text    data     bss     dec     hex filename\n   2036     368       8    2412     96c arch/powerpc/mm/pgtable.o\n\nsize after:\n   text    data     bss     dec     hex filename\n   1677     248       8    1933     78d arch/powerpc/mm/pgtable.o\n\nSigned-off-by: Michael Ellerman \u003cmichael@ellerman.id.au\u003e\nSigned-off-by: Benjamin Herrenschmidt \u003cbenh@kernel.crashing.org\u003e\n"
    },
    {
      "commit": "33875f03307452650309a7d071678b2ca5f2fc26",
      "tree": "8e33ec3932388d1fcabb20bbde2f55d7e4916842",
      "parents": [
        "29e5fa59e5ebe06d6bd7e04e7752a47ead23f89e"
      ],
      "author": {
        "name": "Michael Ellerman",
        "email": "michael@ellerman.id.au",
        "time": "Wed Jun 17 18:13:53 2009 +0000"
      },
      "committer": {
        "name": "Benjamin Herrenschmidt",
        "email": "benh@kernel.crashing.org",
        "time": "Wed Jul 08 13:50:23 2009 +1000"
      },
      "message": "powerpc/cell: Use pr_devel() in axon_msi.c\n\npr_debug() can now result in code being generated even when DEBUG\nis not defined. That\u0027s not really desirable in some places.\n\nWith CONFIG_DYNAMIC_DEBUG\u003dy:\n\nsize before:\n   text    data     bss     dec     hex filename\n   7083    1616       0    8699    21fb arch/powerpc/../axon_msi.o\n\nsize after:\n   text    data     bss     dec     hex filename\n   5772    1208       0    6980    1b44 arch/powerpc/../axon_msi.o\n\nSigned-off-by: Michael Ellerman \u003cmichael@ellerman.id.au\u003e\nSigned-off-by: Benjamin Herrenschmidt \u003cbenh@kernel.crashing.org\u003e\n"
    },
    {
      "commit": "29e5fa59e5ebe06d6bd7e04e7752a47ead23f89e",
      "tree": "c31773cb4d84f5df3a6bca5080cc86a4d69937dc",
      "parents": [
        "651e2dd2a1c47bb078d446f123a9ae950ba7a1f0"
      ],
      "author": {
        "name": "Michael Ellerman",
        "email": "michael@ellerman.id.au",
        "time": "Wed Jun 17 18:13:51 2009 +0000"
      },
      "committer": {
        "name": "Benjamin Herrenschmidt",
        "email": "benh@kernel.crashing.org",
        "time": "Wed Jul 08 13:50:23 2009 +1000"
      },
      "message": "powerpc: Use pr_devel() in arch/powerpc/mm/gup.c\n\npr_debug() can now result in code being generated even when DEBUG\nis not defined. That\u0027s not really desirable in some places.\n\nWith CONFIG_DYNAMIC_DEBUG\u003dy:\n\nsize before:\n   text    data     bss     dec     hex filename\n   3252     384       0    3636     e34 arch/powerpc/mm/gup.o\n\nsize after:\n   text    data     bss     dec     hex filename\n   2576      96       0    2672     a70 arch/powerpc/mm/gup.o\n\nSigned-off-by: Michael Ellerman \u003cmichael@ellerman.id.au\u003e\nSigned-off-by: Benjamin Herrenschmidt \u003cbenh@kernel.crashing.org\u003e\n"
    },
    {
      "commit": "651e2dd2a1c47bb078d446f123a9ae950ba7a1f0",
      "tree": "d18de17d4940b59f9c219a7a64dd3fe8857e7a4b",
      "parents": [
        "3665ee36fac936b2ad0ab170d101a3e2c8eb3fd2"
      ],
      "author": {
        "name": "Michael Ellerman",
        "email": "michael@ellerman.id.au",
        "time": "Wed Jun 17 18:13:51 2009 +0000"
      },
      "committer": {
        "name": "Benjamin Herrenschmidt",
        "email": "benh@kernel.crashing.org",
        "time": "Wed Jul 08 13:50:22 2009 +1000"
      },
      "message": "powerpc: Cleanup \u0026 use pr_devel() in arch/powerpc/mm/slb.c\n\npr_debug() can now result in code being generated even when DEBUG\nis not defined. That\u0027s not really desirable in some places.\n\nWith CONFIG_DYNAMIC_DEBUG\u003dy:\n\nsize before:\n   text    data     bss     dec     hex filename\n   3261     416       4    3681     e61 arch/powerpc/mm/slb.o\n\nsize after:\n   text    data     bss     dec     hex filename\n   2861     248       4    3113     c29 arch/powerpc/mm/slb.o\n\nSigned-off-by: Michael Ellerman \u003cmichael@ellerman.id.au\u003e\nSigned-off-by: Benjamin Herrenschmidt \u003cbenh@kernel.crashing.org\u003e\n"
    },
    {
      "commit": "3665ee36fac936b2ad0ab170d101a3e2c8eb3fd2",
      "tree": "11ba0521b9ef0984ff5ff5ea84a3ee98f2329c64",
      "parents": [
        "a1ac38ab98e8a79ce225347b725f3b9751c70f1e"
      ],
      "author": {
        "name": "Huang Weiyi",
        "email": "weiyi.huang@gmail.com",
        "time": "Sat Jun 20 13:37:00 2009 +0000"
      },
      "committer": {
        "name": "Benjamin Herrenschmidt",
        "email": "benh@kernel.crashing.org",
        "time": "Wed Jul 08 13:50:22 2009 +1000"
      },
      "message": "powerpc/perf_counter: Remove duplicated #include\n\nRemove duplicated #include(\u0027s) in\n  arch/powerpc/kernel/mpc7450-pmu.c\n  arch/powerpc/kernel/ppc970-pmu.c\n\nSigned-off-by: Huang Weiyi \u003cweiyi.huang@gmail.com\u003e\nSigned-off-by: Benjamin Herrenschmidt \u003cbenh@kernel.crashing.org\u003e\n"
    },
    {
      "commit": "a1ac38ab98e8a79ce225347b725f3b9751c70f1e",
      "tree": "0213205a85e173d5228f2e6de5e629de69f92afd",
      "parents": [
        "b69e9e931d2c6116921fdb260684e0546285c3c8"
      ],
      "author": {
        "name": "Michael Ellerman",
        "email": "michael@ellerman.id.au",
        "time": "Wed Jun 17 18:13:54 2009 +0000"
      },
      "committer": {
        "name": "Benjamin Herrenschmidt",
        "email": "benh@kernel.crashing.org",
        "time": "Wed Jul 08 13:50:22 2009 +1000"
      },
      "message": "powerpc: Use pr_devel() in arch/powerpc/mm/mmu_context_nohash.c\n\npr_debug() can now result in code being generated even when DEBUG\nis not defined. That\u0027s not really desirable in some places.\n\nWith CONFIG_DYNAMIC_DEBUG\u003dy:\n\nsize before:\n   text\t   data\t    bss\t    dec\t    hex\tfilename\n   1508\t     48\t     28\t   1584\t    630\tpowerpc/mm/mmu_context_nohash.o\n\nsize after:\n   text\t   data\t    bss\t    dec\t    hex\tfilename\n   1088\t      0\t     28\t   1116\t    45c\tpowerpc/mm/mmu_context_nohash.o\n\nSigned-off-by: Michael Ellerman \u003cmichael@ellerman.id.au\u003e\nSigned-off-by: Benjamin Herrenschmidt \u003cbenh@kernel.crashing.org\u003e\n"
    },
    {
      "commit": "b69e9e931d2c6116921fdb260684e0546285c3c8",
      "tree": "2af68826eb70ac4a33dde16569b2d3978d48e9e0",
      "parents": [
        "d258e64ef595792d6f749518354b69583e9a97f4"
      ],
      "author": {
        "name": "Michael Ellerman",
        "email": "michael@ellerman.id.au",
        "time": "Wed Jun 17 18:13:53 2009 +0000"
      },
      "committer": {
        "name": "Benjamin Herrenschmidt",
        "email": "benh@kernel.crashing.org",
        "time": "Wed Jul 08 13:50:21 2009 +1000"
      },
      "message": "powerpc/pseries: Use pr_devel() in xics.c\n\npr_debug() can now result in code being generated even when DEBUG\nis not defined. That\u0027s not really desirable in some places.\n\nWith CONFIG_DYNAMIC_DEBUG\u003dy:\n\nsize before:\n   text    data     bss     dec     hex filename\n   7720    5488     296   13504    34c0 platforms/pseries/xics.o\n\nsize after:\n   text    data     bss     dec     hex filename\n   7535\t   5456\t    296\t  13287\t   33e7\tplatforms/pseries/xics.o\n\nSigned-off-by: Michael Ellerman \u003cmichael@ellerman.id.au\u003e\nSigned-off-by: Benjamin Herrenschmidt \u003cbenh@kernel.crashing.org\u003e\n"
    },
    {
      "commit": "d258e64ef595792d6f749518354b69583e9a97f4",
      "tree": "cdd0ba72fe37ed6eac872d33311b144ac094497a",
      "parents": [
        "551a232c87b7781712c57c31f3e0851303d9f591"
      ],
      "author": {
        "name": "Joe Perches",
        "email": "joe@perches.com",
        "time": "Sun Jun 28 06:26:10 2009 +0000"
      },
      "committer": {
        "name": "Benjamin Herrenschmidt",
        "email": "benh@kernel.crashing.org",
        "time": "Wed Jul 08 13:50:21 2009 +1000"
      },
      "message": "powerpc: Remove unnecessary semicolons\n\nSigned-off-by: Joe Perches \u003cjoe@perches.com\u003e\nAcked-by: Geoff Levand \u003cgeoffrey.levand@am.sony.com\u003e\nSigned-off-by: Benjamin Herrenschmidt \u003cbenh@kernel.crashing.org\u003e\n"
    }
  ],
  "next": "551a232c87b7781712c57c31f3e0851303d9f591"
}
