)]}'
{
  "log": [
    {
      "commit": "d808f617ad00a413585b806de340feda5ad9a2da",
      "tree": "ed03d4d019a9d8b566ffd454e112e9fbce70bad8",
      "parents": [
        "c854363e80b49dd04a4de18ebc379eb8c8806674"
      ],
      "author": {
        "name": "Dave Chinner",
        "email": "david@fromorbit.com",
        "time": "Tue Feb 02 10:13:42 2010 +1100"
      },
      "committer": {
        "name": "Dave Chinner",
        "email": "david@fromorbit.com",
        "time": "Tue Feb 02 10:13:42 2010 +1100"
      },
      "message": "xfs: Don\u0027t issue buffer IO direct from AIL push V2\n\nAll buffers logged into the AIL are marked as delayed write.\nWhen the AIL needs to push the buffer out, it issues an async write of the\nbuffer. This means that IO patterns are dependent on the order of\nbuffers in the AIL.\n\nInstead of flushing the buffer, promote the buffer in the delayed\nwrite list so that the next time the xfsbufd is run the buffer will\nbe flushed by the xfsbufd. Return the state to the xfsaild that the\nbuffer was promoted so that the xfsaild knows that it needs to cause\nthe xfsbufd to run to flush the buffers that were promoted.\n\nUsing the xfsbufd for issuing the IO allows us to dispatch all\nbuffer IO from the one queue. This means that we can make much more\nenlightened decisions on what order to flush buffers to disk as\nwe don\u0027t have multiple places issuing IO. Optimisations to xfsbufd\nwill be in a future patch.\n\nVersion 2\n- kill XFS_ITEM_FLUSHING as it is now unused.\n\nSigned-off-by: Dave Chinner \u003cdavid@fromorbit.com\u003e\nReviewed-by: Christoph Hellwig \u003chch@lst.de\u003e\n"
    },
    {
      "commit": "c854363e80b49dd04a4de18ebc379eb8c8806674",
      "tree": "8c8d0dec26d961631a3cd8b6c402b5d1444336e5",
      "parents": [
        "777df5afdb26c71634edd60582be620ff94e87a0"
      ],
      "author": {
        "name": "Dave Chinner",
        "email": "david@fromorbit.com",
        "time": "Sat Feb 06 12:39:36 2010 +1100"
      },
      "committer": {
        "name": "Dave Chinner",
        "email": "david@fromorbit.com",
        "time": "Sat Feb 06 12:39:36 2010 +1100"
      },
      "message": "xfs: Use delayed write for inodes rather than async V2\n\nWe currently do background inode flush asynchronously, resulting in\ninodes being written in whatever order the background writeback\nissues them. Not only that, there are also blocking and non-blocking\nasynchronous inode flushes, depending on where the flush comes from.\n\nThis patch completely removes asynchronous inode writeback. It\nremoves all the strange writeback modes and replaces them with\neither a synchronous flush or a non-blocking delayed write flush.\nThat is, inode flushes will only issue IO directly if they are\nsynchronous, and background flushing may do nothing if the operation\nwould block (e.g. on a pinned inode or buffer lock).\n\nDelayed write flushes will now result in the inode buffer sitting in\nthe delwri queue of the buffer cache to be flushed by either an AIL\npush or by the xfsbufd timing out the buffer. This will allow\naccumulation of dirty inode buffers in memory and allow optimisation\nof inode cluster writeback at the xfsbufd level where we have much\ngreater queue depths than the block layer elevators. We will also\nget adjacent inode cluster buffer IO merging for free when a later\npatch in the series allows sorting of the delayed write buffers\nbefore dispatch.\n\nThis effectively means that any inode that is written back by\nbackground writeback will be seen as flush locked during AIL\npushing, and will result in the buffers being pushed from there.\nThis writeback path is currently non-optimal, but the next patch\nin the series will fix that problem.\n\nA side effect of this delayed write mechanism is that background\ninode reclaim will no longer directly flush inodes, nor can it wait\non the flush lock. The result is that inode reclaim must leave the\ninode in the reclaimable state until it is clean. Hence attempts to\nreclaim a dirty inode in the background will simply skip the inode\nuntil it is clean and this allows other mechanisms (i.e. xfsbufd) to\ndo more optimal writeback of the dirty buffers. As a result, the\ninode reclaim code has been rewritten so that it no longer relies on\nthe ambiguous return values of xfs_iflush() to determine whether it\nis safe to reclaim an inode.\n\nPortions of this patch are derived from patches by Christoph\nHellwig.\n\nVersion 2:\n- cleanup reclaim code as suggested by Christoph\n- log background reclaim inode flush errors\n- just pass sync flags to xfs_iflush\n\nSigned-off-by: Dave Chinner \u003cdavid@fromorbit.com\u003e\nReviewed-by: Christoph Hellwig \u003chch@lst.de\u003e\n"
    },
    {
      "commit": "777df5afdb26c71634edd60582be620ff94e87a0",
      "tree": "26ed86f1ec114250230e4e090be18980c94ce73f",
      "parents": [
        "d5db0f97fbbeff11c88dec1aaf1536a975afbaeb"
      ],
      "author": {
        "name": "Dave Chinner",
        "email": "david@fromorbit.com",
        "time": "Sat Feb 06 12:37:26 2010 +1100"
      },
      "committer": {
        "name": "Dave Chinner",
        "email": "david@fromorbit.com",
        "time": "Sat Feb 06 12:37:26 2010 +1100"
      },
      "message": "xfs: Make inode reclaim states explicit\n\nA.K.A.: don\u0027t rely on xfs_iflush() return value in reclaim\n\nWe have gradually been moving checks out of the reclaim code because\nthey are duplicated in xfs_iflush(). We\u0027ve had a history of problems\nin this area, and many of them stem from the overloading of the\nreturn values from xfs_iflush() and interaction with inode flush\nlocking to determine if the inode is safe to reclaim.\n\nWith the desire to move to delayed write flushing of inodes and\nnon-blocking inode tree reclaim walks, the overloading of the\nreturn value of xfs_iflush makes it very difficult to determine\nthe correct thing to do next.\n\nThis patch explicitly re-adds the checks to the inode reclaim code,\nremoving the reliance on the return value of xfs_iflush() to\ndetermine what to do next. It also means that we can clearly\ndocument all the inode states that reclaim must handle and hence\nwe can easily see that we handled all the necessary cases.\n\nThis also removes the need for the xfs_inode_clean() check in\nxfs_iflush() as all callers now check this first (safely).\n\nSigned-off-by: Dave Chinner \u003cdavid@fromorbit.com\u003e\nReviewed-by: Christoph Hellwig \u003chch@lst.de\u003e\n"
    },
    {
      "commit": "d5db0f97fbbeff11c88dec1aaf1536a975afbaeb",
      "tree": "3e81db2cb8c5004f3c30ccaa35e54fbf1549897f",
      "parents": [
        "388f1f0c346b533b06d8bc792f7204ebc3e4b7da"
      ],
      "author": {
        "name": "Eric Sandeen",
        "email": "sandeen@sandeen.net",
        "time": "Fri Feb 05 22:59:53 2010 +0000"
      },
      "committer": {
        "name": "Alex Elder",
        "email": "aelder@sgi.com",
        "time": "Mon Feb 08 17:41:48 2010 -0600"
      },
      "message": "xfs: more reserved blocks fixups\n\nThis mangles the reserved blocks counts a little more.\n\n1) add a helper function for the default reserved count\n2) add helper functions to save/restore counts on ro/rw\n3) save/restore reserved blocks on freeze/thaw\n4) disallow changing reserved count while readonly\n\nV2: changed field name to match Dave\u0027s changes\n\nSigned-off-by: Eric Sandeen \u003csandeen@sandeen.net\u003e\nSigned-off-by: Alex Elder \u003caelder@sgi.com\u003e\n"
    },
    {
      "commit": "388f1f0c346b533b06d8bc792f7204ebc3e4b7da",
      "tree": "22222603efb46b0b6530fa65b3c60b8fa61d9800",
      "parents": [
        "cbe132a8bdcff0f9afd9060948fb50597c7400b8"
      ],
      "author": {
        "name": "Dave Chinner",
        "email": "david@fromorbit.com",
        "time": "Tue Jan 26 15:10:15 2010 +1100"
      },
      "committer": {
        "name": "Dave Chinner",
        "email": "david@fromorbit.com",
        "time": "Tue Jan 26 15:10:15 2010 +1100"
      },
      "message": "xfs: turn off sign warnings\n\nBecause they cause warnings in static inline functions conditionally\ncompiled into XFS from the VFS (e.g. fsnotify).\n\nSigned-off-by: Dave Chinner \u003cdavid@fromorbit.com\u003e\nReviewed-by: Christoph Hellwig \u003chch@lst.de\u003e\n"
    },
    {
      "commit": "cbe132a8bdcff0f9afd9060948fb50597c7400b8",
      "tree": "2bf70f1520b6cc60fb3097763dde24600466369d",
      "parents": [
        "9b00f30762fe9f914eb6e03057a616ed63a4e8ca"
      ],
      "author": {
        "name": "Dave Chinner",
        "email": "david@fromorbit.com",
        "time": "Tue Jan 26 15:08:49 2010 +1100"
      },
      "committer": {
        "name": "Dave Chinner",
        "email": "david@fromorbit.com",
        "time": "Tue Jan 26 15:08:49 2010 +1100"
      },
      "message": "xfs: don\u0027t hold onto reserved blocks on remount,ro\n\nIf we hold onto reserved blocks when doing a remount,ro we end\nup writing the blocks used count to disk that includes the reserved\nblocks. Reserved blocks are not actually used, so this results in\nthe values in the superblock being incorrect.\n\nHence if we run xfs_check or xfs_repair -n while the filesystem is\nmounted remount,ro we end up with an inconsistent filesystem being\nreported. Also, running xfs_copy on the remount,ro filesystem will\nresult in an inconsistent image being generated.\n\nTo fix this, unreserve the blocks when doing the remount,ro, and\nreserved them again on remount,rw. This way a remount,ro filesystem\nwill appear consistent on disk to all utilities.\n\nSigned-off-by: Dave Chinner \u003cdavid@fromorbit.com\u003e\nReviewed-by: Christoph Hellwig \u003chch@lst.de\u003e\n"
    },
    {
      "commit": "9b00f30762fe9f914eb6e03057a616ed63a4e8ca",
      "tree": "11644521534de9828b17e028f0d9c5d960785720",
      "parents": [
        "bdfb04301fa5fdd95f219539a9a5b9663b1e5fc2"
      ],
      "author": {
        "name": "Christoph Hellwig",
        "email": "hch@infradead.org",
        "time": "Thu Jan 21 11:17:20 2010 +0000"
      },
      "committer": {
        "name": "Alex Elder",
        "email": "aelder@sgi.com",
        "time": "Thu Jan 21 16:34:23 2010 -0600"
      },
      "message": "xfs: quota limit statvfs available blocks\n\nA \"df\" run on an NFS client of an exported XFS file system reports\nthe wrong information for \"available\" blocks.  When a block quota is\nenforced, the amount reported as free is limited by the quota, but\nthe amount reported available is not (and should be).\n\nReported-by: Guk-Bong, Kwon \u003cgbkwon@gmail.com\u003e\nSigned-off-by: Christoph Hellwig \u003chch@lst.de\u003e\nSigned-off-by: Alex Elder \u003caelder@sgi.com\u003e\n"
    },
    {
      "commit": "bdfb04301fa5fdd95f219539a9a5b9663b1e5fc2",
      "tree": "6d50b1c71d1f227cf1800ee0531a475266ef6da8",
      "parents": [
        "a14a348bff2f99471a28e5928eb6801224c053d8"
      ],
      "author": {
        "name": "Christoph Hellwig",
        "email": "hch@infradead.org",
        "time": "Wed Jan 20 21:55:30 2010 +0000"
      },
      "committer": {
        "name": "Alex Elder",
        "email": "aelder@sgi.com",
        "time": "Thu Jan 21 13:44:56 2010 -0600"
      },
      "message": "xfs: replace KM_LARGE with explicit vmalloc use\n\nWe use the KM_LARGE flag to make kmem_alloc and friends use vmalloc\nif necessary.  As we only need this for a few boot/mount time\nallocations just switch to explicit vmalloc calls there.\n\nSigned-off-by: Christoph Hellwig \u003chch@lst.de\u003e\nSigned-off-by: Alex Elder \u003caelder@sgi.com\u003e\n"
    },
    {
      "commit": "a14a348bff2f99471a28e5928eb6801224c053d8",
      "tree": "9a34d7e988cd78bc9b19369cbad3ad009b9a2bfd",
      "parents": [
        "4139b3b337cffd106744386c842b89dc86e31d4b"
      ],
      "author": {
        "name": "Christoph Hellwig",
        "email": "hch@infradead.org",
        "time": "Tue Jan 19 09:56:46 2010 +0000"
      },
      "committer": {
        "name": "Alex Elder",
        "email": "aelder@sgi.com",
        "time": "Thu Jan 21 13:44:49 2010 -0600"
      },
      "message": "xfs: cleanup up xfs_log_force calling conventions\n\nRemove the XFS_LOG_FORCE argument which was always set, and the\nXFS_LOG_URGE define, which was never used.\n\nSplit xfs_log_force into a two helpers - xfs_log_force which forces\nthe whole log, and xfs_log_force_lsn which forces up to the\nspecified LSN.  The underlying implementations already were entirely\nseparate, as were the users.\n\nAlso re-indent the new _xfs_log_force/_xfs_log_force which\npreviously had a weird coding style.\n\nSigned-off-by: Christoph Hellwig \u003chch@lst.de\u003e\nSigned-off-by: Alex Elder \u003caelder@sgi.com\u003e\n"
    },
    {
      "commit": "4139b3b337cffd106744386c842b89dc86e31d4b",
      "tree": "13e98549e956cabcaf88dd3218268ae643802c78",
      "parents": [
        "0cadda1c5f194f98a05d252ff4385d86d2ed0862"
      ],
      "author": {
        "name": "Christoph Hellwig",
        "email": "hch@infradead.org",
        "time": "Tue Jan 19 09:56:45 2010 +0000"
      },
      "committer": {
        "name": "Alex Elder",
        "email": "aelder@sgi.com",
        "time": "Thu Jan 21 13:44:43 2010 -0600"
      },
      "message": "xfs: kill XLOG_VEC_SET_TYPE\n\nThis macro only obsfucates the log item type assignments, so kill it.\n\nSigned-off-by: Christoph Hellwig \u003chch@lst.de\u003e\nReviewed-by: Dave Chinner \u003cdavid@fromorbit.com\u003e\nSigned-off-by: Alex Elder \u003caelder@sgi.com\u003e\n"
    },
    {
      "commit": "0cadda1c5f194f98a05d252ff4385d86d2ed0862",
      "tree": "a299a7a976f1478f9024f1d3aff9a2351a8397fe",
      "parents": [
        "a210c1aa7f6c90b729cc3a72d03e789b13cb6c47"
      ],
      "author": {
        "name": "Christoph Hellwig",
        "email": "hch@infradead.org",
        "time": "Tue Jan 19 09:56:44 2010 +0000"
      },
      "committer": {
        "name": "Alex Elder",
        "email": "aelder@sgi.com",
        "time": "Thu Jan 21 13:44:36 2010 -0600"
      },
      "message": "xfs: remove duplicate buffer flags\n\nCurrently we define aliases for the buffer flags in various\nnamespaces, which only adds confusion.  Remove all but the XBF_\nflags to clean this up a bit.\n\nNote that we still abuse XFS_B_ASYNC/XBF_ASYNC for some non-buffer\nuses, but I\u0027ll clean that up later.\n\nSigned-off-by: Christoph Hellwig \u003chch@lst.de\u003e\nReviewed-by: Dave Chinner \u003cdavid@fromorbit.com\u003e\nSigned-off-by: Alex Elder \u003caelder@sgi.com\u003e\n"
    },
    {
      "commit": "a210c1aa7f6c90b729cc3a72d03e789b13cb6c47",
      "tree": "ff454424108c99d97fd0797d52330b711f65154a",
      "parents": [
        "4d1f88d75b00c4d23f4c51305ab5b779a86ef74e"
      ],
      "author": {
        "name": "Christoph Hellwig",
        "email": "hch@infradead.org",
        "time": "Sun Jan 17 22:36:19 2010 +0000"
      },
      "committer": {
        "name": "Alex Elder",
        "email": "aelder@sgi.com",
        "time": "Thu Jan 21 13:44:28 2010 -0600"
      },
      "message": "xfs: implement quota warnings via netlink\n\nWire up quota_send_warning to send quota warnings over netlink.\nThis is used by various desktops to show user quota warnings.\n\nTested by running the quota_nld daemon while running the xfstest\nquota tests and observing the warnings.  I\u0027ll see how I can get a\nmore formal testcase for it written.\n\nSigned-off-by: Christoph Hellwig \u003chch@lst.de\u003e\nReviewed-by: Dave Chinner \u003cdavid@fromorbit.com\u003e\nSigned-off-by: Alex Elder \u003caelder@sgi.com\u003e\n"
    },
    {
      "commit": "4d1f88d75b00c4d23f4c51305ab5b779a86ef74e",
      "tree": "9a0aa476c2c285a1557218a14f32f41cd1013f85",
      "parents": [
        "512dd1abd9539a474f2792eeaf6783c59ad7778a"
      ],
      "author": {
        "name": "Christoph Hellwig",
        "email": "hch@infradead.org",
        "time": "Wed Jan 13 22:05:49 2010 +0000"
      },
      "committer": {
        "name": "Alex Elder",
        "email": "aelder@sgi.com",
        "time": "Thu Jan 21 13:44:22 2010 -0600"
      },
      "message": "xfs: clean up error handling in xfs_trans_dqresv\n\nMove the error code selection after the goto label and fold the\nxfs_quota_error helper into it.\n\nSigned-off-by: Christoph Hellwig \u003chch@lst.de\u003e\nReviewed-by: Dave Chinner \u003cdavid@fromorbit.com\u003e\nSigned-off-by: Alex Elder \u003caelder@sgi.com\u003e\n"
    },
    {
      "commit": "512dd1abd9539a474f2792eeaf6783c59ad7778a",
      "tree": "24508eb59f5786131abf0c3e2bca4a1e125bdd69",
      "parents": [
        "587aa0feb74ffe3239b5e26ff5d017ba9f5daec9"
      ],
      "author": {
        "name": "Christoph Hellwig",
        "email": "hch@infradead.org",
        "time": "Wed Jan 13 22:05:48 2010 +0000"
      },
      "committer": {
        "name": "Alex Elder",
        "email": "aelder@sgi.com",
        "time": "Thu Jan 21 13:44:10 2010 -0600"
      },
      "message": "xfs: kill XFS_QMOPT_ASYNC\n\nThe option is unused and one of the few remaining users of\nxfs_bawrite, so let\u0027s get rid of it.\n\nSigned-off-by: Christoph Hellwig \u003chch@lst.de\u003e\nReviewed-by: Dave Chinner \u003cdavid@fromorbit.com\u003e\nSigned-off-by: Alex Elder \u003caelder@sgi.com\u003e\n"
    },
    {
      "commit": "587aa0feb74ffe3239b5e26ff5d017ba9f5daec9",
      "tree": "3979b8690cf6364afbe51c64a628102c97315064",
      "parents": [
        "f0a0eaa8da08ebc6519cacd731df05bbb4ca47ce"
      ],
      "author": {
        "name": "Dave Chinner",
        "email": "david@fromorbit.com",
        "time": "Wed Jan 20 12:04:53 2010 +1100"
      },
      "committer": {
        "name": "Dave Chinner",
        "email": "david@fromorbit.com",
        "time": "Wed Jan 20 12:04:53 2010 +1100"
      },
      "message": "xfs: rearrange xfs_mod_sb() to avoid array subscript warning\n\ngcc warns of an array subscript out of bounds in xfs_mod_sb().\nThe code is written in such a way that if the array subscript is\nout of bounds, then it will assert fail. Rearrange the code to\navoid the bounds check warning.\n\nSigned-off-by: Dave Chinner \u003cdavid@fromorbit.com\u003e\nReviewed-by: Christoph Hellwig \u003chch@lst.de\u003e\n"
    },
    {
      "commit": "f0a0eaa8da08ebc6519cacd731df05bbb4ca47ce",
      "tree": "f737e6bd6c36a234b4046d8a42e426c306fd5626",
      "parents": [
        "58c75cfb51393a52b45262394c1fa81514b4d9bd"
      ],
      "author": {
        "name": "Dave Chinner",
        "email": "david@fromorbit.com",
        "time": "Wed Jan 20 10:50:06 2010 +1100"
      },
      "committer": {
        "name": "Dave Chinner",
        "email": "david@fromorbit.com",
        "time": "Wed Jan 20 10:50:06 2010 +1100"
      },
      "message": "xfs: suppress spurious uninitialised var warning in xfs_bmapi()\n\nInitialise the xfs_bmalloca_t structure to zero to avoid uninitialised\nvariable warnings. This is done by zeroing the arg structure rather than\nusing the uninitialised_var() trick so we know for certain that the\nstructure is correctly initialised as xfs_bmapi is a very complex\nfunction and it is difficult to prove warnings are spurious.\n\nSigned-off-by: Dave Chinner \u003cdavid@fromorbit.com\u003e\nReviewed-by: Christoph Hellwig \u003chch@lst.de\u003e\n"
    },
    {
      "commit": "58c75cfb51393a52b45262394c1fa81514b4d9bd",
      "tree": "0152d968e9a2298e4c74f8a9bae8892ce484f870",
      "parents": [
        "4a24cb71407dc25035d75dd3d118e0e55679e217"
      ],
      "author": {
        "name": "Dave Chinner",
        "email": "david@fromorbit.com",
        "time": "Wed Jan 20 10:49:18 2010 +1100"
      },
      "committer": {
        "name": "Dave Chinner",
        "email": "david@fromorbit.com",
        "time": "Wed Jan 20 10:49:18 2010 +1100"
      },
      "message": "xfs: make compile warn about char sign mismatches again\n\nThe -fno-unsigned-char directive has no effect anymore as the\nXFs build is clean. However, the kernel build hides pointer sign\ndifferences so turn that back on so that we can clean up all the\nmismatches prior to a userspace code resync.\n\nSigned-off-by: Dave Chinner \u003cdavid@fromorbit.com\u003e\nReviewed-by: Christoph Hellwig \u003chch@lst.de\u003e\n"
    },
    {
      "commit": "4a24cb71407dc25035d75dd3d118e0e55679e217",
      "tree": "47de3e791d35786e0b797b8033afe5f4320b08e3",
      "parents": [
        "a9273ca5c6814f393e18ed66645f817b2b71e9ad"
      ],
      "author": {
        "name": "Dave Chinner",
        "email": "david@fromorbit.com",
        "time": "Wed Jan 20 10:48:05 2010 +1100"
      },
      "committer": {
        "name": "Dave Chinner",
        "email": "david@fromorbit.com",
        "time": "Wed Jan 20 10:48:05 2010 +1100"
      },
      "message": "xfs: clean up sign warnings in dir2 code\n\nWe are now consistently using unsigned char strings for names\nso fix up the remaining warnings in the dir2 code to complete\nthe cleanup.\n\nSigned-off-by: Dave Chinner \u003cdavid@fromorbit.com\u003e\nReviewed-by: Christoph Hellwig \u003chch@lst.de\u003e\n"
    },
    {
      "commit": "a9273ca5c6814f393e18ed66645f817b2b71e9ad",
      "tree": "3714b7de8b233a31ea6995754f80349327738a88",
      "parents": [
        "b9c48649577dfc4a8c263c106d518effa24ea54b"
      ],
      "author": {
        "name": "Dave Chinner",
        "email": "david@fromorbit.com",
        "time": "Wed Jan 20 10:47:48 2010 +1100"
      },
      "committer": {
        "name": "Dave Chinner",
        "email": "david@fromorbit.com",
        "time": "Wed Jan 20 10:47:48 2010 +1100"
      },
      "message": "xfs: convert attr to use unsigned names\n\nTo be consistent with the directory code, the attr code should use\nunsigned names. Convert the names from the vfs at the highest level\nto unsigned, and ænsure they are consistenly used as unsigned down\nto disk.\n\nSigned-off-by: Dave Chinner \u003cdavid@fromorbit.com\u003e\nReviewed-by: Christoph Hellwig \u003chch@lst.de\u003e\n"
    },
    {
      "commit": "b9c48649577dfc4a8c263c106d518effa24ea54b",
      "tree": "deb48047076b5a97691c0b00ac65c6db96296515",
      "parents": [
        "a3380ae39fa321282c407ba5e1835e14b64853d9"
      ],
      "author": {
        "name": "Dave Chinner",
        "email": "david@fromorbit.com",
        "time": "Wed Jan 20 10:47:39 2010 +1100"
      },
      "committer": {
        "name": "Dave Chinner",
        "email": "david@fromorbit.com",
        "time": "Wed Jan 20 10:47:39 2010 +1100"
      },
      "message": "xfs: xfs_buf_iomove() doesn\u0027t care about signedness\n\nxfs_buf_iomove() uses xfs_caddr_t as it\u0027s parameter types, but it doesn\u0027t\ncare about the signedness of the variables as it is just copying the\ndata. Change the prototype to use void * so that we don\u0027t get sign\nwarnings at call sites.\n\nSigned-off-by: Dave Chinner \u003cdavid@fromorbit.com\u003e\nReviewed-by: Christoph Hellwig \u003chch@lst.de\u003e\n"
    },
    {
      "commit": "a3380ae39fa321282c407ba5e1835e14b64853d9",
      "tree": "a5d25c2eeca61eb0530dd5145d0ae4166d8174ff",
      "parents": [
        "2bc754213d40d67c39ddd58cf240f2b948e1951e"
      ],
      "author": {
        "name": "Dave Chinner",
        "email": "david@fromorbit.com",
        "time": "Wed Jan 20 10:47:25 2010 +1100"
      },
      "committer": {
        "name": "Dave Chinner",
        "email": "david@fromorbit.com",
        "time": "Wed Jan 20 10:47:25 2010 +1100"
      },
      "message": "xfs: make xfs_dir_cilookup_result use unsigned char\n\nFor consistency with the result of the code.\n\nSigned-off-by: Dave Chinner \u003cdavid@fromorbit.com\u003e\nReviewed-by: Christoph Hellwig \u003chch@lst.de\u003e\n"
    },
    {
      "commit": "2bc754213d40d67c39ddd58cf240f2b948e1951e",
      "tree": "cbb289ab5f17d3d65dfca5df5fbe65066d90c1ee",
      "parents": [
        "046ea753130fc51d885835458bf8c1d84765b9ac"
      ],
      "author": {
        "name": "Dave Chinner",
        "email": "david@fromorbit.com",
        "time": "Wed Jan 20 10:47:17 2010 +1100"
      },
      "committer": {
        "name": "Dave Chinner",
        "email": "david@fromorbit.com",
        "time": "Wed Jan 20 10:47:17 2010 +1100"
      },
      "message": "xfs: convert dirnameops to unsigned char names\n\nTo be consistent across the codebase, convert the dirnameops to pass\nthe directory names by unsigned char strings.\n\nSigned-off-by: Dave Chinner \u003cdavid@fromorbit.com\u003e\nReviewed-by: Christoph Hellwig \u003chch@lst.de\u003e\n"
    },
    {
      "commit": "046ea753130fc51d885835458bf8c1d84765b9ac",
      "tree": "16cbba96c2db1b23fd0eed5aebbc1993df920426",
      "parents": [
        "e2bcd936eb95d0019ca5e05f9fdd27e770ddded1"
      ],
      "author": {
        "name": "Dave Chinner",
        "email": "david@fromorbit.com",
        "time": "Wed Jan 20 10:47:08 2010 +1100"
      },
      "committer": {
        "name": "Dave Chinner",
        "email": "david@fromorbit.com",
        "time": "Wed Jan 20 10:47:08 2010 +1100"
      },
      "message": "xfs: convert DM ops to use unsigned char names\n\ndmops uses a signed char for it\u0027s namespace event. To be consistent\nwith the rest of the code, convert them to unsigned char for the\nnamespace string.\n\nSigned-off-by: Dave Chinner \u003cdavid@fromorbit.com\u003e\nReviewed-by: Christoph Hellwig \u003chch@lst.de\u003e\n"
    },
    {
      "commit": "e2bcd936eb95d0019ca5e05f9fdd27e770ddded1",
      "tree": "ad034312226f380c34b530765967823d31034fa9",
      "parents": [
        "4e23471a3f3aba885ea70100db47ccacb5f069f6"
      ],
      "author": {
        "name": "Dave Chinner",
        "email": "david@fromorbit.com",
        "time": "Wed Jan 20 10:44:58 2010 +1100"
      },
      "committer": {
        "name": "Dave Chinner",
        "email": "david@fromorbit.com",
        "time": "Wed Jan 20 10:44:58 2010 +1100"
      },
      "message": "xfs: directory names are unsigned\n\nConvert the struct xfs_name to use unsigned chars for the name\nstrings to match both what is stored on disk (__uint8_t) and what\nthe VFS expects (unsigned char).\n\nSigned-off-by: Dave Chinner \u003cdavid@fromorbit.com\u003e\nReviewed-by: Christoph Hellwig \u003chch@lst.de\u003e\n"
    },
    {
      "commit": "4e23471a3f3aba885ea70100db47ccacb5f069f6",
      "tree": "976d7943087e8f49fada9204b6914c84b3c25a31",
      "parents": [
        "64e0bc7d2a6609ad265757a600e2a0d93c8adb47"
      ],
      "author": {
        "name": "Christoph Hellwig",
        "email": "hch@infradead.org",
        "time": "Wed Jan 13 22:17:56 2010 +0000"
      },
      "committer": {
        "name": "Alex Elder",
        "email": "aelder@sgi.com",
        "time": "Fri Jan 15 15:35:17 2010 -0600"
      },
      "message": "xfs: move more buffer helpers into xfs_buf.c\n\nMove xfsbdstrat and xfs_bdstrat_cb from xfs_lrw.c and xfs_bioerror\nand xfs_bioerror_relse from xfs_rw.c into xfs_buf.c.  This also\nmeans xfs_bioerror and xfs_bioerror_relse can be marked static now.\n\nSigned-off-by: Christoph Hellwig \u003chch@lst.de\u003e\nSigned-off-by: Alex Elder \u003caelder@sgi.com\u003e\n"
    },
    {
      "commit": "64e0bc7d2a6609ad265757a600e2a0d93c8adb47",
      "tree": "15733d61868f4dbd59da833cd84614ff78ef1049",
      "parents": [
        "873ff5501d8cd1a21045d6c1da34f0c3876bc235"
      ],
      "author": {
        "name": "Christoph Hellwig",
        "email": "hch@infradead.org",
        "time": "Wed Jan 13 22:17:58 2010 +0000"
      },
      "committer": {
        "name": "Alex Elder",
        "email": "aelder@sgi.com",
        "time": "Fri Jan 15 15:35:07 2010 -0600"
      },
      "message": "xfs: clean up xfs_bwrite\n\nFold XFS_bwrite into it\u0027s only caller, xfs_bwrite and move it into\nxfs_buf.c instead of leaving it as a fairly large inline function.\n\nSigned-off-by: Christoph Hellwig \u003chch@lst.de\u003e\nSigned-off-by: Alex Elder \u003caelder@sgi.com\u003e\n"
    },
    {
      "commit": "873ff5501d8cd1a21045d6c1da34f0c3876bc235",
      "tree": "4bff470bffcb611d19d3fc5448d0dd7c24b8baf6",
      "parents": [
        "e57336ff7fc7520bec7b3a7741043bdebaf622ea"
      ],
      "author": {
        "name": "Christoph Hellwig",
        "email": "hch@infradead.org",
        "time": "Wed Jan 13 22:17:57 2010 +0000"
      },
      "committer": {
        "name": "Alex Elder",
        "email": "aelder@sgi.com",
        "time": "Fri Jan 15 15:34:54 2010 -0600"
      },
      "message": "xfs: clean up log buffer writes\n\nDon\u0027t bother using XFS_bwrite as it doesn\u0027t provide much code for\nour use case.  Instead opencode it and fold xlog_bdstrat_cb into the\nnew xlog_bdstrat helper.\n\nSigned-off-by: Christoph Hellwig \u003chch@lst.de\u003e\nSigned-off-by: Alex Elder \u003caelder@sgi.com\u003e\n"
    },
    {
      "commit": "e57336ff7fc7520bec7b3a7741043bdebaf622ea",
      "tree": "6a1196e925f2cb7fc2cd5b9ca5d9510166088be2",
      "parents": [
        "8b26c5825e023b1bccac7afd174ebe55b8905cb1"
      ],
      "author": {
        "name": "Dave Chinner",
        "email": "david@fromorbit.com",
        "time": "Mon Jan 11 11:47:49 2010 +0000"
      },
      "committer": {
        "name": "Alex Elder",
        "email": "aelder@sgi.com",
        "time": "Fri Jan 15 15:34:39 2010 -0600"
      },
      "message": "xfs: embed the pagb_list array in the perag structure\n\nNow that the perag structure is allocated memory rather than held in\nan array, we don\u0027t need to have the busy extent array external to\nthe structure. Embed it into the perag structure to avoid needing an\nextra allocation when setting up.\n\nSigned-off-by: Dave Chinner \u003cdavid@fromorbit.com\u003e\nReviewed-by: Christoph Hellwig \u003chch@lst.de\u003e\nSigned-off-by: Alex Elder \u003caelder@sgi.com\u003e\n"
    },
    {
      "commit": "8b26c5825e023b1bccac7afd174ebe55b8905cb1",
      "tree": "a8d27401fc943101af7eda72f2ed040664eead68",
      "parents": [
        "b657fc82a3ca6d7ad16a59e81765f0fb0e86cdbb"
      ],
      "author": {
        "name": "Dave Chinner",
        "email": "david@fromorbit.com",
        "time": "Mon Jan 11 11:47:48 2010 +0000"
      },
      "committer": {
        "name": "Alex Elder",
        "email": "aelder@sgi.com",
        "time": "Fri Jan 15 15:34:30 2010 -0600"
      },
      "message": "xfs: handle ENOMEM correctly during initialisation of perag structures\n\nAdd proper error handling in case an error occurs while initializing\nnew perag structures for a mount point.  The mount structure is\nrestored to its previous state by deleting and freeing any perag\nstructures added during the call.\n\nSigned-off-by: Dave Chinner \u003cdavid@fromorbit.com\u003e\nReviewed-by: Christoph Hellwig \u003chch@lst.de\u003e\nSigned-off-by: Alex Elder \u003caelder@sgi.com\u003e\n"
    },
    {
      "commit": "b657fc82a3ca6d7ad16a59e81765f0fb0e86cdbb",
      "tree": "55c0fa936d1b9e192917340ba833f1d72504c0a7",
      "parents": [
        "0fa800fbd549736dfdc1d7761f87e33dc8cd973b"
      ],
      "author": {
        "name": "Dave Chinner",
        "email": "david@fromorbit.com",
        "time": "Mon Jan 11 11:47:47 2010 +0000"
      },
      "committer": {
        "name": "Alex Elder",
        "email": "aelder@sgi.com",
        "time": "Fri Jan 15 15:34:22 2010 -0600"
      },
      "message": "xfs: Kill filestreams cache flush\n\nThe filestreams cache flush is not needed in the sync code as it\ndoes not affect data writeback, and it is now not used by the growfs\ncode, either, so kill it.\n\nSigned-off-by: Dave Chinner \u003cdavid@fromorbit.com\u003e\nReviewed-by: Christoph Hellwig \u003chch@lst.de\u003e\nSigned-off-by: Alex Elder \u003caelder@sgi.com\u003e\n"
    },
    {
      "commit": "0fa800fbd549736dfdc1d7761f87e33dc8cd973b",
      "tree": "3940f2f5bc4bb3bec888f7ef9ed8a8c875e02695",
      "parents": [
        "aed3bb90abaf0b42e8c8747e192f7bb97f445279"
      ],
      "author": {
        "name": "Dave Chinner",
        "email": "david@fromorbit.com",
        "time": "Mon Jan 11 11:47:46 2010 +0000"
      },
      "committer": {
        "name": "Alex Elder",
        "email": "aelder@sgi.com",
        "time": "Fri Jan 15 15:34:12 2010 -0600"
      },
      "message": "xfs: Add trace points for per-ag refcount debugging.\n\nUninline xfs_perag_{get,put} so that tracepoints can be inserted\ninto them to speed debugging of reference count problems.\n\nSigned-off-by: Dave Chinner \u003cdavid@fromorbit.com\u003e\nReviewed-by: Christoph Hellwig \u003chch@lst.de\u003e\nSigned-off-by: Alex Elder \u003caelder@sgi.com\u003e\n"
    },
    {
      "commit": "aed3bb90abaf0b42e8c8747e192f7bb97f445279",
      "tree": "4619214ed42821792b05f4417cb95bde90abb562",
      "parents": [
        "1c1c6ebcf5284aee4910f3b906ac90c20e510c82"
      ],
      "author": {
        "name": "Dave Chinner",
        "email": "david@fromorbit.com",
        "time": "Mon Jan 11 11:47:45 2010 +0000"
      },
      "committer": {
        "name": "Alex Elder",
        "email": "aelder@sgi.com",
        "time": "Fri Jan 15 15:34:04 2010 -0600"
      },
      "message": "xfs: Reference count per-ag structures\n\nReference count the per-ag structures to ensure that we keep get/put\npairs balanced. Assert that the reference counts are zero at unmount\ntime to catch leaks. In future, reference counts will enable us to\nsafely remove perag structures by allowing us to detect when they\nare no longer in use.\n\nSigned-off-by: Dave Chinner \u003cdavid@fromorbit.com\u003e\nReviewed-by: Christoph Hellwig \u003chch@lst.de\u003e\nSigned-off-by: Alex Elder \u003caelder@sgi.com\u003e\n"
    },
    {
      "commit": "1c1c6ebcf5284aee4910f3b906ac90c20e510c82",
      "tree": "bbcf74752bf7bc058a5c5bdd6bd03090c845b041",
      "parents": [
        "44b56e0a1aed522a10051645e85d300e10926fd3"
      ],
      "author": {
        "name": "Dave Chinner",
        "email": "david@fromorbit.com",
        "time": "Mon Jan 11 11:47:44 2010 +0000"
      },
      "committer": {
        "name": "Alex Elder",
        "email": "aelder@sgi.com",
        "time": "Fri Jan 15 15:33:52 2010 -0600"
      },
      "message": "xfs: Replace per-ag array with a radix tree\n\nThe use of an array for the per-ag structures requires reallocation\nof the array when growing the filesystem. This requires locking\naccess to the array to avoid use after free situations, and the\nlocking is difficult to get right. To avoid needing to reallocate an\narray, change the per-ag structures to an allocated object per ag\nand index them using a tree structure.\n\nThe AGs are always densely indexed (hence the use of an array), but\nthe number supported is 2^32 and lookups tend to be random and hence\nindexing needs to scale. A simple choice is a radix tree - it works\nwell with this sort of index.  This change also removes another\nlarge contiguous allocation from the mount/growfs path in XFS.\n\nThe growing process now needs to change to only initialise the new\nAGs required for the extra space, and as such only needs to\nexclusively lock the tree for inserts. The rest of the code only\nneeds to lock the tree while doing lookups, and hence this will\nremove all the deadlocks that currently occur on the m_perag_lock as\nit is now an innermost lock. The lock is also changed to a spinlock\nfrom a read/write lock as the hold time is now extremely short.\n\nTo complete the picture, the per-ag structures will need to be\nreference counted to ensure that we don\u0027t free/modify them while\nthey are still in use.  This will be done in subsequent patch.\n\nSigned-off-by: Dave Chinner \u003cdavid@fromorbit.com\u003e\nReviewed-by: Christoph Hellwig \u003chch@lst.de\u003e\nSigned-off-by: Alex Elder \u003caelder@sgi.com\u003e\n"
    },
    {
      "commit": "44b56e0a1aed522a10051645e85d300e10926fd3",
      "tree": "c46879f4feaec1b19456395d74a2e9c27dde530d",
      "parents": [
        "4196ac08c023c6dab90c3fa460d9c06deaa304c4"
      ],
      "author": {
        "name": "Dave Chinner",
        "email": "david@fromorbit.com",
        "time": "Mon Jan 11 11:47:43 2010 +0000"
      },
      "committer": {
        "name": "Alex Elder",
        "email": "aelder@sgi.com",
        "time": "Fri Jan 15 15:33:39 2010 -0600"
      },
      "message": "xfs: convert remaining direct references to m_perag\n\nConvert the remaining direct lookups of the per ag structures to use\nget/put accesses. Ensure that the loops across AGs and prior users\nof the interface balance gets and puts correctly.\n\nSigned-off-by: Dave Chinner \u003cdavid@fromorbit.com\u003e\nReviewed-by: Christoph Hellwig \u003chch@lst.de\u003e\nSigned-off-by: Alex Elder \u003caelder@sgi.com\u003e\n"
    },
    {
      "commit": "4196ac08c023c6dab90c3fa460d9c06deaa304c4",
      "tree": "ec73915586a45d0a2d459014560138fd499180d9",
      "parents": [
        "a862e0fdcb8862aab2538ec2fc2f0dc07a625c59"
      ],
      "author": {
        "name": "Dave Chinner",
        "email": "david@fromorbit.com",
        "time": "Mon Jan 11 11:47:42 2010 +0000"
      },
      "committer": {
        "name": "Alex Elder",
        "email": "aelder@sgi.com",
        "time": "Fri Jan 15 15:33:22 2010 -0600"
      },
      "message": "xfs: Convert filestreams code to use per-ag get/put routines\n\nUse xfs_perag_get() and xfs_perag_put() in the filestreams code.\n\nSigned-off-by: Dave Chinner \u003cdavid@fromorbit.com\u003e\nReviewed-by: Christoph Hellwig \u003chch@lst.de\u003e\nSigned-off-by: Alex Elder \u003caelder@sgi.com\u003e\n"
    },
    {
      "commit": "a862e0fdcb8862aab2538ec2fc2f0dc07a625c59",
      "tree": "41e83f478c9414e3376e99aa8565c67cc9930764",
      "parents": [
        "5017e97d52628fb8ae56e434e86ac2e72ddaac2b"
      ],
      "author": {
        "name": "Dave Chinner",
        "email": "david@fromorbit.com",
        "time": "Mon Jan 11 11:47:41 2010 +0000"
      },
      "committer": {
        "name": "Alex Elder",
        "email": "aelder@sgi.com",
        "time": "Fri Jan 15 15:33:12 2010 -0600"
      },
      "message": "xfs: Don\u0027t directly reference m_perag in allocation code\n\nStart abstracting the perag references so that the indexing of the\nstructures is not directly coded into all the places that uses the\nperag structures. This will allow us to separate the use of the\nperag structure and the way it is indexed and hence avoid the known\ndeadlocks related to growing a busy filesystem.\n\nSigned-off-by: Dave Chinner \u003cdavid@fromorbit.com\u003e\nReviewed-by: Christoph Hellwig \u003chch@lst.de\u003e\nSigned-off-by: Alex Elder \u003caelder@sgi.com\u003e\n"
    },
    {
      "commit": "5017e97d52628fb8ae56e434e86ac2e72ddaac2b",
      "tree": "bbad07b8fc75e9d309d0a4c450a886eaf7e687fd",
      "parents": [
        "c9c129714e71c890bed1bd5b61697a896c3c2d54"
      ],
      "author": {
        "name": "Dave Chinner",
        "email": "david@fromorbit.com",
        "time": "Mon Jan 11 11:47:40 2010 +0000"
      },
      "committer": {
        "name": "Alex Elder",
        "email": "aelder@sgi.com",
        "time": "Fri Jan 15 15:33:02 2010 -0600"
      },
      "message": "xfs: rename xfs_get_perag\n\nxfs_get_perag is really getting the perag that an inode belongs to\nbased on it\u0027s inode number. Convert the use of this function to just\nget the perag from a provided ag number.  Use this new function to\nobtain the per-ag structure when traversing the per AG inode trees\nfor sync and reclaim.\n\nSigned-off-by: Dave Chinner \u003cdavid@fromorbit.com\u003e\nReviewed-by: Christoph Hellwig \u003chch@lst.de\u003e\nSigned-off-by: Alex Elder \u003caelder@sgi.com\u003e\n"
    },
    {
      "commit": "c9c129714e71c890bed1bd5b61697a896c3c2d54",
      "tree": "8eff8e5ba534feb20dae7b143ea42bf0b0c24725",
      "parents": [
        "453eac8a9aa417878a38bdfbccafd5f7ce4e8e4e"
      ],
      "author": {
        "name": "Dave Chinner",
        "email": "david@fromorbit.com",
        "time": "Mon Jan 11 11:49:59 2010 +0000"
      },
      "committer": {
        "name": "Alex Elder",
        "email": "aelder@sgi.com",
        "time": "Fri Jan 15 15:32:54 2010 -0600"
      },
      "message": "xfs: Don\u0027t wake xfsbufd when idle\n\nThe xfsbufd wakes every xfsbufd_centisecs (once per second by\ndefault) for each filesystem even when the filesystem is idle.  If\nthe xfsbufd has nothing to do, put it into a long term sleep and\nonly wake it up when there is work pending (i.e. dirty buffers to\nflush soon). This will make laptop power misers happy.\n\nSigned-off-by: Dave Chinner \u003cdavid@fromorbit.com\u003e\nReviewed-by: Christoph Hellwig \u003chch@lst.de\u003e\nSigned-off-by: Alex Elder \u003caelder@sgi.com\u003e\n"
    },
    {
      "commit": "453eac8a9aa417878a38bdfbccafd5f7ce4e8e4e",
      "tree": "252e37d5b29693cc73fc1ce890c9b303d45e6efa",
      "parents": [
        "f0a7695380efa31cd281730917f7e907a724d5cb"
      ],
      "author": {
        "name": "Dave Chinner",
        "email": "david@fromorbit.com",
        "time": "Mon Jan 11 11:49:58 2010 +0000"
      },
      "committer": {
        "name": "Alex Elder",
        "email": "aelder@sgi.com",
        "time": "Fri Jan 15 15:32:46 2010 -0600"
      },
      "message": "xfs: Don\u0027t wake the aild once per second\n\nNow that the AIL push algorithm is traversal safe, we don\u0027t need a\nwatchdog function in the xfsaild to catch pushes that fail to make\nprogress. Remove the watchdog timeout and make pushes purely driven\nby demand. This will remove the once-per-second wakeup that is seen\nwhen the filesystem is idle and make laptop power misers happy.\n\nSigned-off-by: Dave Chinner \u003cdavid@fromorbit.com\u003e\nReviewed-by: Christoph Hellwig \u003chch@lst.de\u003e\nSigned-off-by: Alex Elder \u003caelder@sgi.com\u003e\n"
    },
    {
      "commit": "f0a7695380efa31cd281730917f7e907a724d5cb",
      "tree": "78cc743d1c507a7ba6a676dff576c79aef6592ab",
      "parents": [
        "5d77c0dc0c05c2c65aee16149fae06831a118730"
      ],
      "author": {
        "name": "Dave Chinner",
        "email": "david@fromorbit.com",
        "time": "Mon Jan 11 11:49:57 2010 +0000"
      },
      "committer": {
        "name": "Alex Elder",
        "email": "aelder@sgi.com",
        "time": "Fri Jan 15 15:31:51 2010 -0600"
      },
      "message": "xfs: Use list_heads for log recovery item lists\n\nRemove the roll-your-own linked list operations.\n\nSigned-off-by: Dave Chinner \u003cdavid@fromorbit.com\u003e\nReviewed-by: Christoph Hellwig \u003chch@lst.de\u003e\nSigned-off-by: Alex Elder \u003caelder@sgi.com\u003e\n"
    },
    {
      "commit": "5d77c0dc0c05c2c65aee16149fae06831a118730",
      "tree": "742ac29243b5cd00b4e3cf2a01b6aec5046912ae",
      "parents": [
        "6bded0f383fd7971b76ad6c194dda7d5b814b871"
      ],
      "author": {
        "name": "Eric Sandeen",
        "email": "sandeen@sandeen.net",
        "time": "Thu Nov 19 15:52:00 2009 +0000"
      },
      "committer": {
        "name": "Alex Elder",
        "email": "aelder@sgi.com",
        "time": "Fri Jan 15 15:31:38 2010 -0600"
      },
      "message": "xfs: make several more functions static\n\nJust minor housekeeping, a lot more functions can be trivially made\nstatic; others could if we reordered things a bit...\n\nSigned-off-by: Eric Sandeen \u003csandeen@sandeen.net\u003e\nSigned-off-by: Alex Elder \u003caelder@sgi.com\u003e\n"
    },
    {
      "commit": "6bded0f383fd7971b76ad6c194dda7d5b814b871",
      "tree": "0613dff32918534d19d322b0719ef855730fad4b",
      "parents": [
        "3a85cd96d3ab3c6dcf88b81fc6eaddb84e565a43"
      ],
      "author": {
        "name": "Dave Chinner",
        "email": "david@fromorbit.com",
        "time": "Thu Jan 14 01:33:56 2010 +0000"
      },
      "committer": {
        "name": "Alex Elder",
        "email": "aelder@sgi.com",
        "time": "Fri Jan 15 15:31:23 2010 -0600"
      },
      "message": "xfs: clean up inconsistent variable naming in xfs_swap_extent\n\nThe swap extent ioctl passes in a target inode and a temporary inode\nwhich are clearly named in the ioctl structure. The code then\nassigns temp to target and vice versa, making it extremely difficult\nto work out which inode is which later in the code.  Make this\nconsistent throughout the code.\n\nAlso make xfs_swap_extent static as there are no external users of\nthe function.\n\nSigned-off-by: Dave Chinner \u003cdavid@fromorbit.com\u003e\nSigned-off-by: Alex Elder \u003caelder@sgi.com\u003e\n"
    },
    {
      "commit": "3a85cd96d3ab3c6dcf88b81fc6eaddb84e565a43",
      "tree": "9b1cfa8db498d7e76b1aa745254261010814f676",
      "parents": [
        "e09f98606dcc156de1146c209d45a0d6d5f51c3f"
      ],
      "author": {
        "name": "Dave Chinner",
        "email": "david@fromorbit.com",
        "time": "Thu Jan 14 01:33:55 2010 +0000"
      },
      "committer": {
        "name": "Alex Elder",
        "email": "aelder@sgi.com",
        "time": "Fri Jan 15 15:20:06 2010 -0600"
      },
      "message": "xfs: add tracing to xfs_swap_extents\n\nTo be able to diagnose whether the swap extents function is\ndetecting compatible inode data fork configurations for swapping\nextents, add tracing points to the code to allow us to see the\nformat of the inode forks before and after the swap.\n\nSigned-off-by: Dave Chinner \u003cdavid@fromorbit.com\u003e\nSigned-off-by: Alex Elder \u003caelder@sgi.com\u003e\n"
    },
    {
      "commit": "e09f98606dcc156de1146c209d45a0d6d5f51c3f",
      "tree": "dd63ab7c2eaedad409fb0c72d4d675b2d3e9f533",
      "parents": [
        "3daeb42c13567e1505f233f6a699cc0e23c8ab5a"
      ],
      "author": {
        "name": "Dave Chinner",
        "email": "david@fromorbit.com",
        "time": "Thu Jan 14 01:33:54 2010 +0000"
      },
      "committer": {
        "name": "Alex Elder",
        "email": "aelder@sgi.com",
        "time": "Fri Jan 15 13:49:07 2010 -0600"
      },
      "message": "xfs: xfs_swap_extents needs to handle dynamic fork offsets\n\nWhen swapping extents, we can corrupt inodes by swapping data forks\nthat are in incompatible formats.  This is caused by the two indoes\nhaving different fork offsets due to the presence of an attribute\nfork on an attr2 filesystem.  xfs_fsr tries to be smart about\nsetting the fork offset, but the trick it plays only works on attr1\n(old fixed format attribute fork) filesystems.\n\nChanging the way xfs_fsr sets up the attribute fork will prevent\nthis situation from ever occurring, so in the kernel code we can get\nby with a preventative fix - check that the data fork in the\ndefragmented inode is in a format valid for the inode it is being\nswapped into.  This will lead to files that will silently and\npotentially repeatedly fail defragmentation, so issue a warning to\nthe log when this particular failure occurs to let us know that\nxfs_fsr needs updating/fixing.\n\nTo help identify how to improve xfs_fsr to avoid this issue, add\ntrace points for the inodes being swapped so that we can determine\nwhy the swap was rejected and to confirm that the code is making the\nright decisions and modifications when swapping forks.\n\nA further complication is even when the swap is allowed to proceed\nwhen the fork offset is different between the two inodes then value\nfor the maximum number of extents the data fork can hold can be\nwrong. Make sure these are also set correctly after the swap occurs.\n\nSigned-off-by: Dave Chinner \u003cdavid@fromorbit.com\u003e\nReviewed-by: Christoph Hellwig \u003chch@lst.de\u003e\nSigned-off-by: Alex Elder \u003caelder@sgi.com\u003e\n"
    },
    {
      "commit": "3daeb42c13567e1505f233f6a699cc0e23c8ab5a",
      "tree": "a5897b35cb4830d73089aace8abd5b2c8bae1d7f",
      "parents": [
        "4b6a46882cca8349e8942e2650c33b11bc571c92"
      ],
      "author": {
        "name": "Dave Chinner",
        "email": "david@fromorbit.com",
        "time": "Thu Jan 14 08:44:46 2010 +0000"
      },
      "committer": {
        "name": "Alex Elder",
        "email": "aelder@sgi.com",
        "time": "Fri Jan 15 13:46:19 2010 -0600"
      },
      "message": "xfs: fix missing error check in xfs_rtfree_range\n\nWhen xfs_rtfind_forw() returns an error, the block is returned\nuninitialised.  xfs_rtfree_range() is not checking the error return,\nso could be using an uninitialised block number for modifying bitmap\nsummary info.\n\nThe problem was found by gcc when compiling the *userspace* libxfs\ncode - it is an copy of the kernel code with the exact same bug.\ngcc gives an uninitialised variable warning on the userspace code\nbut not on the kernel code. You gotta love the consistency (Mmmm,\nslightly chewy today!).\n\nSigned-off-by: Dave Chinner \u003cdavid@fromorbit.com\u003e\nSigned-off-by: Alex Elder \u003caelder@sgi.com\u003e\n"
    },
    {
      "commit": "4b6a46882cca8349e8942e2650c33b11bc571c92",
      "tree": "5a5ab0783340fa4acd75a172d857d0077a527809",
      "parents": [
        "126976c7c17d3bdfbc1fe9e0af8bee9f62d14cc6"
      ],
      "author": {
        "name": "Dave Chinner",
        "email": "david@fromorbit.com",
        "time": "Mon Jan 11 11:45:21 2010 +0000"
      },
      "committer": {
        "name": "Alex Elder",
        "email": "aelder@sgi.com",
        "time": "Fri Jan 15 13:46:02 2010 -0600"
      },
      "message": "xfs: fix stale inode flush avoidance\n\nWhen reclaiming stale inodes, we need to guarantee that inodes are\nunpinned before returning with a \"clean\" status. If we don\u0027t we can\nreclaim inodes that are pinned, leading to use after free in the\ntransaction subsystem as transactions complete.\n\nSigned-off-by: Dave Chinner \u003cdavid@fromorbit.com\u003e\nReviewed-by: Christoph Hellwig \u003chch@lst.de\u003e\nSigned-off-by: Alex Elder \u003caelder@sgi.com\u003e\n"
    },
    {
      "commit": "126976c7c17d3bdfbc1fe9e0af8bee9f62d14cc6",
      "tree": "01b15c25ad8be7402a54fd090771a12084e8f425",
      "parents": [
        "57817c68229984818fea9e614d6f95249c3fb098"
      ],
      "author": {
        "name": "Dave Chinner",
        "email": "david@fromorbit.com",
        "time": "Sun Jan 10 23:51:48 2010 +0000"
      },
      "committer": {
        "name": "Alex Elder",
        "email": "aelder@sgi.com",
        "time": "Fri Jan 15 13:45:33 2010 -0600"
      },
      "message": "xfs: Remove inode iolock held check during allocation\n\nlockdep complains about a the lock not being initialised as we do an\nASSERT based check that the lock is not held before we initialise it\nto catch inodes freed with the lock held.\n\nlockdep does this check for us in the lock initialisation code, so\nremove the ASSERT to stop the lockdep warning.\n\nSigned-off-by: Dave Chinner \u003cdavid@fromorbit.com\u003e\nReviewed-by: Christoph Hellwig \u003chch@lst.de\u003e\nSigned-off-by: Alex Elder \u003caelder@sgi.com\u003e\n"
    },
    {
      "commit": "57817c68229984818fea9e614d6f95249c3fb098",
      "tree": "1c3265ae92ccf51617763a568c4c76be3a596578",
      "parents": [
        "018027be90a6946e8cf3f9b17b5582384f7ed117"
      ],
      "author": {
        "name": "Dave Chinner",
        "email": "david@fromorbit.com",
        "time": "Sun Jan 10 23:51:47 2010 +0000"
      },
      "committer": {
        "name": "Alex Elder",
        "email": "aelder@sgi.com",
        "time": "Fri Jan 15 13:44:44 2010 -0600"
      },
      "message": "xfs: reclaim all inodes by background tree walks\n\nWe cannot do direct inode reclaim without taking the flush lock to\nensure that we do not reclaim an inode under IO. We check the inode\nis clean before doing direct reclaim, but this is not good enough\nbecause the inode flush code marks the inode clean once it has\ncopied the in-core dirty state to the backing buffer.\n\nIt is the flush lock that determines whether the inode is still\nunder IO, even though it is marked clean, and the inode is still\nrequired at IO completion so we can\u0027t reclaim it even though it is\nclean in core. Hence the requirement that we need to take the flush\nlock even on clean inodes because this guarantees that the inode\nwriteback IO has completed and it is safe to reclaim the inode.\n\nWith delayed write inode flushing, we coul dend up waiting a long\ntime on the flush lock even for a clean inode. The background\nreclaim already handles this efficiently, so avoid all the problems\nby killing the direct reclaim path altogether.\n\nSigned-off-by: Dave Chinner \u003cdavid@fromorbit.com\u003e\nReviewed-by: Christoph Hellwig \u003chch@lst.de\u003e\nSigned-off-by: Alex Elder \u003caelder@sgi.com\u003e\n"
    },
    {
      "commit": "018027be90a6946e8cf3f9b17b5582384f7ed117",
      "tree": "a8816b9884e21eab9cb3342af9de9ddc28f9f0de",
      "parents": [
        "c8e20be020f234c8d492927a424a7d8bbefd5b5d"
      ],
      "author": {
        "name": "Dave Chinner",
        "email": "david@fromorbit.com",
        "time": "Sun Jan 10 23:51:46 2010 +0000"
      },
      "committer": {
        "name": "Alex Elder",
        "email": "aelder@sgi.com",
        "time": "Fri Jan 15 13:44:21 2010 -0600"
      },
      "message": "xfs: Avoid inodes in reclaim when flushing from inode cache\n\nThe reclaim code will handle flushing of dirty inodes before reclaim\noccurs, so avoid them when determining whether an inode is a\ncandidate for flushing to disk when walking the radix trees.  This\nis based on a test patch from Christoph Hellwig.\n\nSigned-off-by: Dave Chinner \u003cdavid@fromorbit.com\u003e\nReviewed-by: Christoph Hellwig \u003chch@lst.de\u003e\nSigned-off-by: Alex Elder \u003caelder@sgi.com\u003e\n"
    },
    {
      "commit": "c8e20be020f234c8d492927a424a7d8bbefd5b5d",
      "tree": "ced84d52bf87d72d36a65e3ddca6b4fc4b7f819f",
      "parents": [
        "7284ce6c9f6153d1777df5f310c959724d1bd446"
      ],
      "author": {
        "name": "Dave Chinner",
        "email": "david@fromorbit.com",
        "time": "Sun Jan 10 23:51:45 2010 +0000"
      },
      "committer": {
        "name": "Alex Elder",
        "email": "aelder@sgi.com",
        "time": "Fri Jan 15 13:43:55 2010 -0600"
      },
      "message": "xfs: reclaim inodes under a write lock\n\nMake the inode tree reclaim walk exclusive to avoid races with\nconcurrent sync walkers and lookups. This is a version of a patch\nposted by Christoph Hellwig that avoids all the code duplication.\n\nSigned-off-by: Dave Chinner \u003cdavid@fromorbit.com\u003e\nReviewed-by: Christoph Hellwig \u003chch@lst.de\u003e\nSigned-off-by: Alex Elder \u003caelder@sgi.com\u003e\n"
    },
    {
      "commit": "7284ce6c9f6153d1777df5f310c959724d1bd446",
      "tree": "7e0d37db95601a1262648b784e65238142607e01",
      "parents": [
        "53ff7095cce683813be075379160b8e4e6ea8b85"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Jan 12 21:15:00 2010 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Jan 12 21:15:00 2010 -0800"
      },
      "message": "Linux 2.6.33-rc4\n"
    },
    {
      "commit": "53ff7095cce683813be075379160b8e4e6ea8b85",
      "tree": "723754032e6eb42af3f555946b9786900a8f659c",
      "parents": [
        "bb7d3f24c71e528989501617651b669fbed798cb",
        "d54e7929d8073b0fff8af16f8ff6ebbba6fc4154"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Jan 12 21:13:06 2010 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Jan 12 21:13:06 2010 -0800"
      },
      "message": "Merge git://git.infradead.org/battery-2.6\n\n* git://git.infradead.org/battery-2.6:\n  pmu_battery: Fix battery full reporting\n"
    },
    {
      "commit": "bb7d3f24c71e528989501617651b669fbed798cb",
      "tree": "b94c2c2fcaaaf005cc7d9e78583df3131c437280",
      "parents": [
        "90aeb7c01c2da631cb611871a50980cbb6ca7149"
      ],
      "author": {
        "name": "Bryn M. Reeves",
        "email": "bmr@redhat.com",
        "time": "Thu Nov 12 18:31:54 2009 +0000"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Jan 12 21:12:36 2010 -0800"
      },
      "message": "[SCSI] megaraid_sas: remove sysfs poll_mode_io world writeable permissions\n\n/sys/bus/pci/drivers/megaraid_sas/poll_mode_io defaults to being\nworld-writable, which seems bad (letting any user affect kernel driver\nbehavior).\n\nThis turns off group and user write permissions, so that on typical\nproduction systems only root can write to it.\n\nSigned-off-by: Bryn M. Reeves \u003cbmr@redhat.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "90aeb7c01c2da631cb611871a50980cbb6ca7149",
      "tree": "0f46706d61bd5f125e351cfa3a133b88a27bdc1f",
      "parents": [
        "2c761270d5520dd84ab0b4e47c24d99ff8503c38",
        "807a7515aea421f2b340140482ed4c8811c523c6"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Jan 12 21:04:04 2010 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Jan 12 21:04:04 2010 -0800"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://gitorious.org/linux-omap-dss2/linux\n\n* \u0027for-linus\u0027 of git://gitorious.org/linux-omap-dss2/linux:\n  OMAP: DSS2: OMAPFB: fix crash when panel driver was not loaded\n  OMAP: DSS2: Reject scaling settings when they cannot be supported\n  OMAP: DSS2: Make check-delay-loops consistent\n  OMAP: DSS2: OMAPFB: fix omapfb_free_fbmem()\n  video/omap: add __init/__exit macros to drivers/video/omap/lcd_htcherald.c\n  OMAP: DSS2: Fix compile warning\n  MAINTAINERS: Combine DSS2 and OMAPFB2 into one entry\n  MAINTAINERS: change omapfb maintainer\n  OMAP: OMAPFB: add dummy release function for omapdss\n  OMAP: OMAPFB: fix clk_get for RFBI\n  OMAP: DSS2: RFBI: convert to new kfifo API\n  OMAP: DSS2: Fix crash when panel doesn\u0027t define enable_te()\n  OMAP: DSS2: Collect interrupt statistics\n  OMAP: DSS2: DSI: print debug DCS cmd in hex\n  OMAP: DSS2: DSI: fix VC channels in send_short and send_null\n"
    },
    {
      "commit": "2c761270d5520dd84ab0b4e47c24d99ff8503c38",
      "tree": "c23a51fdcc96641661b632d3b3c2c46ad7e53a91",
      "parents": [
        "dbf004d7883b3adb058c0c1a5635bc4ec27651c0"
      ],
      "author": {
        "name": "Dave Chinner",
        "email": "david@fromorbit.com",
        "time": "Tue Jan 12 17:39:16 2010 +1100"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Jan 12 21:02:00 2010 -0800"
      },
      "message": "lib: Introduce generic list_sort function\n\nThere are two copies of list_sort() in the tree already, one in the DRM\ncode, another in ubifs.  Now XFS needs this as well.  Create a generic\nlist_sort() function from the ubifs version and convert existing users\nto it so we don\u0027t end up with yet another copy in the tree.\n\nSigned-off-by: Dave Chinner \u003cdavid@fromorbit.com\u003e\nAcked-by: Dave Airlie \u003cairlied@redhat.com\u003e\nAcked-by: Artem Bityutskiy \u003cdedekind@infradead.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "dbf004d7883b3adb058c0c1a5635bc4ec27651c0",
      "tree": "cac67630ac8eaaba0ab6b7b4a24d617ae804d3f4",
      "parents": [
        "2d13c8f0682bd38c74e89a76cc550f0324b610ba"
      ],
      "author": {
        "name": "Dave Jones",
        "email": "davej@redhat.com",
        "time": "Tue Jan 12 16:59:52 2010 -0500"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Jan 12 20:56:52 2010 -0800"
      },
      "message": "remove my email address from checkpatch.\n\nMaybe this will stop people emailing me about it.\n\nSigned-off-by: Dave Jones \u003cdavej@redhat.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "2d13c8f0682bd38c74e89a76cc550f0324b610ba",
      "tree": "8e2286479c18f5ee076d26ee44ff03b44d38a299",
      "parents": [
        "1f0e14bbc065c88ddb68fec42b317f487cc85410",
        "5040ab67a2c6d5710ba497dc52a8f7035729d7b0"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Jan 12 20:56:20 2010 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Jan 12 20:56:20 2010 -0800"
      },
      "message": "Merge branch \u0027upstream-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/jgarzik/libata-dev\n\n* \u0027upstream-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/jgarzik/libata-dev:\n  libata: retry link resume if necessary\n  ata_piix: enable 32bit PIO on SATA piix\n  sata_promise: don\u0027t classify overruns as HSM errors\n"
    },
    {
      "commit": "1f0e14bbc065c88ddb68fec42b317f487cc85410",
      "tree": "ed8d6206d3362e92db3f5dd981a2e865200bde9c",
      "parents": [
        "f25bb39f8adfe980df223f415f3b845953ca1147",
        "aff7b4f86737f1ae364bf5ece9a9b8586ddb2db4"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Jan 12 20:56:01 2010 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Jan 12 20:56:01 2010 -0800"
      },
      "message": "Merge master.kernel.org:/home/rmk/linux-2.6-arm\n\n* master.kernel.org:/home/rmk/linux-2.6-arm:\n  ARM: Ensure ARMv6/7 mm files are built using appropriate assembler options\n  ARM: Fix wrong dmb\n  ARM: 5874/1: serial21285: fix disable_irq-from-interrupt-handler deadlock\n  ARM: 5873/1: ARM: Fix the reset logic for ARM RealView boards\n  ARM: 5872/1: ARM: include needed linux/cpu.h in asm/cpu.h\n  ARM: 5871/1: arch/arm: Fix build failure for lpd7a404_defconfig caused by missing includes\n  ARM: 5870/1: arch/arm: Fix build failure for defconfigs without CONFIG_ISA_DMA_API set\n  ARM: 5868/1: ARM: fix \"BUG: using smp_processor_id() in preemptible code\"\n  ARM: 5867/1: Update U300 defconfig\n  ARM: 5866/1: arm ptrace: use unsigned types for kernel pt_regs\n  [ARM] pxa: fix strange characters in zaurus gpio .desc\n  ARM: add missing recvmmsg syscall number\n  [ARM] pxa: fix compiler warnings of unused variable \u0027id\u0027 in cpu_is_pxa9*()\n  [ARM] pxa: update pwm_backlight-\u003enotify() to include missed \u0027struct device *\u0027\n  [ARM] pxa: enable L2 if present in XSC3\n  [ARM] pxa: do not enable L2 after MMU is enabled\n"
    },
    {
      "commit": "f25bb39f8adfe980df223f415f3b845953ca1147",
      "tree": "720e9a95d36061d133867d07282654dc9825b570",
      "parents": [
        "7113578a8a930259d6497976208e5b3e57141c5c",
        "9a3065c942d59afcc1b71bb75743d9f37fcc2954"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Jan 12 20:55:31 2010 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Jan 12 20:55:31 2010 -0800"
      },
      "message": "Merge branch \u0027upstream\u0027 of git://ftp.linux-mips.org/pub/scm/upstream-linus\n\n* \u0027upstream\u0027 of git://ftp.linux-mips.org/pub/scm/upstream-linus: (22 commits)\n  MIPS: Ignore vmlinux.*\n  MIPS: Move vmlinux.ecoff to arch/mips/boot\n  MIPS: cpumask_of_node() should handle -1 as a node\n  MIPS: Octeon: Use non-overflowing arithmetic in sched_clock\n  MIPS: Malta, PowerTV: Remove unnecessary \"Linux started\"\n  MIPS: BCM63xx: Remove duplicate CONFIG_CMDLINE.\n  MIPS: AR7: Remove unused prom_getchar()\n  MIPS: PowerTV: Remove extra r4k_clockevent_init() call\n  MIPS: Cobalt use strlcat() for the command line arguments\n  MIPS: Octeon: Add sched_clock() to csrc-octeon.c\n  MIPS: TXx9: Cleanup builtin-cmdline processing\n  MIPS: PowerTV: simplify prom_init_cmdline() and merge into prom_init()\n  MIPS: PowerTV: Remove unused platform_die()\n  MIPS: PowerTV: Remove mips_machine_halt()\n  MIPS: PowerTV: Remove unused ptv_memsize\n  MIPS: PowerTV: Remove unused prom_getcmdline()\n  MIPS: AR7: Remove kgdb_enabled\n  MIPS: Alchemy: Correct code taking the size of a pointer\n  MIPS: BCM63xx: Fix whitespace damaged board_bcm963xx.c\n  MIPS: VR41xx: Use strlcat() for the command line arguments\n  ...\n"
    },
    {
      "commit": "7113578a8a930259d6497976208e5b3e57141c5c",
      "tree": "4f67bc4b9ae1428c029799e5b5fcf562d1085fe3",
      "parents": [
        "597d8c717856f6094837850f3eb4850820b36451",
        "f59bb4b64eca0fa906f51f25a05054f11de94f92"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Jan 12 20:54:52 2010 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Jan 12 20:54:52 2010 -0800"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound-2.6\n\n* \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound-2.6:\n  ALSA: hda - Fix ALC861-VD capture source mixer\n  ALSA: ac97: add AC97 STMicroelectronics\u0027 codecs\n  ALSA: ac97: Add Dell Dimension 2400 to Headphone/Line Jack Sense blacklist\n  ASoC: Fix WM8350 DSP mode B configuration\n  sbawe: fix memory detection part 2\n  sound: oss: off by one bug\n  ALSA: usb-audio - Avoid Oops after disconnect\n  ALSA: test off by one in setsamplerate()\n  ALSA: atiixp: Specify codec for Foxconn RC4107MA-RS2\n"
    },
    {
      "commit": "597d8c717856f6094837850f3eb4850820b36451",
      "tree": "44c1b1115df6a80f6cee3684a01cdbc18b034134",
      "parents": [
        "682137f7e6bc78e3c324874c0c213123ddc5e261",
        "9db2f1bec36805e57a003f7bb90e003815d96de8"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Jan 12 20:53:29 2010 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Jan 12 20:53:29 2010 -0800"
      },
      "message": "Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-2.6\n\n* git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-2.6: (56 commits)\n  sky2: Fix oops in sky2_xmit_frame() after TX timeout\n  Documentation/3c509: document ethtool support\n  af_packet: Don\u0027t use skb after dev_queue_xmit()\n  vxge: use pci_dma_mapping_error to test return value\n  netfilter: ebtables: enforce CAP_NET_ADMIN\n  e1000e: fix and commonize code for setting the receive address registers\n  e1000e: e1000e_enable_tx_pkt_filtering() returns wrong value\n  e1000e: perform 10/100 adaptive IFS only on parts that support it\n  e1000e: don\u0027t accumulate PHY statistics on PHY read failure\n  e1000e: call pci_save_state() after pci_restore_state()\n  netxen: update version to 4.0.72\n  netxen: fix set mac addr\n  netxen: fix smatch warning\n  netxen: fix tx ring memory leak\n  tcp: update the netstamp_needed counter when cloning sockets\n  TI DaVinci EMAC: Handle emac module clock correctly.\n  dmfe/tulip: Let dmfe handle DM910x except for SPARC on-board chips\n  ixgbe: Fix compiler warning about variable being used uninitialized\n  netfilter: nf_ct_ftp: fix out of bounds read in update_nl_seq()\n  mv643xx_eth: don\u0027t include cache padding in rx desc buffer size\n  ...\n\nFix trivial conflict in drivers/scsi/cxgb3i/cxgb3i_offload.c\n"
    },
    {
      "commit": "682137f7e6bc78e3c324874c0c213123ddc5e261",
      "tree": "dc7abee5b6ac11bb3819f6e8432566651998afe6",
      "parents": [
        "066000dd856709b6980123eb39b957fe26993f7b"
      ],
      "author": {
        "name": "Greg Ungerer",
        "email": "gerg@uclinux.org",
        "time": "Wed Jan 13 10:42:05 2010 +1000"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Jan 12 20:51:45 2010 -0800"
      },
      "message": "m68knommu: fix definitions of __pa() and __va()\n\nFix compilation breakage of all m68knommu targets:\n\n  CC      arch/m68knommu/kernel/asm-offsets.s\nIn file included from include/linux/sched.h:77,\n                 from arch/m68knommu/kernel/asm-offsets.c:12:\ninclude/linux/percpu.h: In function \u0027per_cpu_ptr_to_phys\u0027:\ninclude/linux/percpu.h:161: error: implicit declaration of function \u0027virt_to_phy\n\nThis is broken in linux-2.6.33-rc3.\n\nChange the definitions of __pa() and __va() to not use virt_to_phys()\nand phys_to_virt(). Trivial 1:1 conversion required for the non-MMU case.\n\nA side effect if this is that the m68knommu can now use asm/virtconvert.h\nfor the definition of virt_to_phys() and phys_to_virt().\n\nAlso cleaned up the definition of page_to_phys() when moving into\nvirtconvert.h.\n\nSigned-off-by: Greg Ungerer \u003cgerg@uclinux.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "5040ab67a2c6d5710ba497dc52a8f7035729d7b0",
      "tree": "dea2290e50111fde938bfcbb83de0377e7c4d94a",
      "parents": [
        "0b67c7439fe2a5d76602de36854c88e2beab00b0"
      ],
      "author": {
        "name": "Tejun Heo",
        "email": "tj@kernel.org",
        "time": "Mon Jan 11 11:14:44 2010 +0900"
      },
      "committer": {
        "name": "Jeff Garzik",
        "email": "jgarzik@redhat.com",
        "time": "Tue Jan 12 14:34:14 2010 -0500"
      },
      "message": "libata: retry link resume if necessary\n\nInterestingly, when SIDPR is used in ata_piix, writes to DET in\nSControl sometimes get ignored leading to detection failure.  Update\nsata_link_resume() such that it reads back SControl after clearing DET\nand retry if it\u0027s not clear.\n\nSigned-off-by: Tejun Heo \u003ctj@kernel.org\u003e\nReported-by: fengxiangjun \u003cfengxiangjun@neusoft.com\u003e\nReported-by: Jim Faulkner \u003cjfaulkne@ccs.neu.edu\u003e\nCc: stable@kernel.org\nSigned-off-by: Jeff Garzik \u003cjgarzik@redhat.com\u003e\n"
    },
    {
      "commit": "0b67c7439fe2a5d76602de36854c88e2beab00b0",
      "tree": "15183a67b7e47ab55be080d433eeeee4efeb985c",
      "parents": [
        "a2342f46437cde56803a36fdf94da635a74ad41c"
      ],
      "author": {
        "name": "Tejun Heo",
        "email": "tj@kernel.org",
        "time": "Mon Jan 11 17:03:11 2010 +0900"
      },
      "committer": {
        "name": "Jeff Garzik",
        "email": "jgarzik@redhat.com",
        "time": "Tue Jan 12 14:33:23 2010 -0500"
      },
      "message": "ata_piix: enable 32bit PIO on SATA piix\n\nCommit 871af1210f13966ab911ed2166e4ab2ce775b99d enabled 32bit PIO for\nPATA piix but didn\u0027t for SATA.  There\u0027s no reason not to use 32bit PIO\non SATA piix.  Enable it.\n\nSigned-off-by: Tejun Heo \u003ctj@kernel.org\u003e\nCc: Alan Cox \u003calan@lxorguk.ukuu.org.uk\u003e\nSigned-off-by: Jeff Garzik \u003cjgarzik@redhat.com\u003e\n"
    },
    {
      "commit": "a2342f46437cde56803a36fdf94da635a74ad41c",
      "tree": "6cec79d175ca40743087a6f39a613d564a0cda10",
      "parents": [
        "066000dd856709b6980123eb39b957fe26993f7b"
      ],
      "author": {
        "name": "Mikael Pettersson",
        "email": "mikpe@it.uu.se",
        "time": "Sat Jan 09 23:32:06 2010 +0100"
      },
      "committer": {
        "name": "Jeff Garzik",
        "email": "jgarzik@redhat.com",
        "time": "Tue Jan 12 14:33:07 2010 -0500"
      },
      "message": "sata_promise: don\u0027t classify overruns as HSM errors\n\nWhen sata_promise encounters an overrun or underrun error it\ntranslates that to a libata AC_ERR_HSM, causing a hard reset.\nSince over/under-runs were thought to be rare and transient,\nthis action seemed reasonable.\n\nUnfortunately it turns out that the controller throws overrun\nerrors when e.g. hal polls a CD or DVD writer containing blank\nmedia, causing long sequences of hard resets and retries before\nEH finally gives up.\n\nThis patch updates sata_promise to classify over/under-runs as\nAC_ERR_OTHER instead. This allows libata EH and upper layers to\nretry or fail the operation as they see fit without the disruption\ncaused by repeated hard resets.\n\nThis fixes a problem using a DVD-RAM drive with sata_promise,\nreported by Thomas Schorpp. I also tested it on a DVD-RW drive.\n\nSigned-off-by: Mikael Pettersson \u003cmikpe@it.uu.se\u003e\nTested-by: thomas schorpp \u003cthomas.schorpp@googlemail.com\u003e\nSigned-off-by: Jeff Garzik \u003cjgarzik@redhat.com\u003e\n"
    },
    {
      "commit": "aff7b4f86737f1ae364bf5ece9a9b8586ddb2db4",
      "tree": "c083c9f20933c89a5d24882f69bcba410766b739",
      "parents": [
        "7511bce4069de39ea04b14c1e1d55c249f9ce808"
      ],
      "author": {
        "name": "Russell King",
        "email": "rmk+kernel@arm.linux.org.uk",
        "time": "Tue Jan 12 19:02:05 2010 +0000"
      },
      "committer": {
        "name": "Russell King",
        "email": "rmk+kernel@arm.linux.org.uk",
        "time": "Tue Jan 12 19:02:05 2010 +0000"
      },
      "message": "ARM: Ensure ARMv6/7 mm files are built using appropriate assembler options\n\nA kernel with both ARMv6 and ARMv7 selected results in build errors.\nFix this by specifying the proper architectures for these assembly\nfiles.\n\nSigned-off-by: Russell King \u003crmk+kernel@arm.linux.org.uk\u003e\n"
    },
    {
      "commit": "7511bce4069de39ea04b14c1e1d55c249f9ce808",
      "tree": "befa78be1f9631b9fc3d5cbc10cef9e8fcd641bd",
      "parents": [
        "cc20b900be7aa8e456aff82dfcb55fb15c508962"
      ],
      "author": {
        "name": "Russell King",
        "email": "rmk+kernel@arm.linux.org.uk",
        "time": "Tue Jan 12 18:59:16 2010 +0000"
      },
      "committer": {
        "name": "Russell King",
        "email": "rmk+kernel@arm.linux.org.uk",
        "time": "Tue Jan 12 18:59:16 2010 +0000"
      },
      "message": "ARM: Fix wrong dmb\n\nThe __kuser_cmpxchg code uses an ARMv6 dmb instruction, rather than\none based upon the architecture being built for.  Switch to using\nthe macro provided for this purpose, which also eliminates the\nneed for an ifdef.\n\nAcked-by: Nicolas Pitre \u003cnico@fluxnic.net\u003e\nSigned-off-by: Russell King \u003crmk+kernel@arm.linux.org.uk\u003e\n"
    },
    {
      "commit": "9a3065c942d59afcc1b71bb75743d9f37fcc2954",
      "tree": "35e3866da513fbd25dd0604b6537880e3e6b4cd1",
      "parents": [
        "17f964e881e125917cbeea8eb82271cc68485a22"
      ],
      "author": {
        "name": "Yoichi Yuasa",
        "email": "yuasa@linux-mips.org",
        "time": "Fri Dec 18 21:14:19 2009 +0900"
      },
      "committer": {
        "name": "Ralf Baechle",
        "email": "ralf@linux-mips.org",
        "time": "Tue Jan 12 18:19:38 2010 +0100"
      },
      "message": "MIPS: Ignore vmlinux.*\n\nSigned-off-by: Yoichi Yuasa \u003cyuasa@linux-mips.org\u003e\nCc: linux-mips \u003clinux-mips@linux-mips.org\u003e\nPatchwork: http://patchwork.linux-mips.org/patch/795/\nSigned-off-by: Ralf Baechle \u003cralf@linux-mips.org\u003e\n"
    },
    {
      "commit": "17f964e881e125917cbeea8eb82271cc68485a22",
      "tree": "8a1fbbb95ec46049c1dfdee0117da36cbeeed96c",
      "parents": [
        "d797396f3387c5be8f63fcc8e9be98bb884ea86a"
      ],
      "author": {
        "name": "Yoichi Yuasa",
        "email": "yuasa@linux-mips.org",
        "time": "Fri Dec 18 21:13:17 2009 +0900"
      },
      "committer": {
        "name": "Ralf Baechle",
        "email": "ralf@linux-mips.org",
        "time": "Tue Jan 12 18:19:38 2010 +0100"
      },
      "message": "MIPS: Move vmlinux.ecoff to arch/mips/boot\n\nIt moves to the same directory as the boot files in other formats.\n\nSigned-off-by: Yoichi Yuasa \u003cyuasa@linux-mips.org\u003e\nCc: linux-mips \u003clinux-mips@linux-mips.org\u003e\nPatchwork: http://patchwork.linux-mips.org/patch/796/\nSigned-off-by: Ralf Baechle \u003cralf@linux-mips.org\u003e\n"
    },
    {
      "commit": "d797396f3387c5be8f63fcc8e9be98bb884ea86a",
      "tree": "63024f12dfb080db7d8fbc73776f1bbdc68bbf7f",
      "parents": [
        "0e8a1d8262f41d6e8c1d736a408882bbb7a5c0a6"
      ],
      "author": {
        "name": "Anton Blanchard",
        "email": "anton@samba.org",
        "time": "Wed Jan 06 15:55:13 2010 +1100"
      },
      "committer": {
        "name": "Ralf Baechle",
        "email": "ralf@linux-mips.org",
        "time": "Tue Jan 12 18:19:37 2010 +0100"
      },
      "message": "MIPS: cpumask_of_node() should handle -1 as a node\n\npcibus_to_node can return -1 if we cannot determine which node a pci bus\nis on. If passed -1, cpumask_of_node will negatively index the lookup array\nand pull in random data:\n\n# cat /sys/devices/pci0000:00/0000:00:01.0/local_cpus\n00000000,00000003,00000000,00000000\n# cat /sys/devices/pci0000:00/0000:00:01.0/local_cpulist\n64-65\n\nChange cpumask_of_node to check for -1 and return cpu_all_mask in this\ncase:\n\n# cat /sys/devices/pci0000:00/0000:00:01.0/local_cpus\nffffffff,ffffffff,ffffffff,ffffffff\n# cat /sys/devices/pci0000:00/0000:00:01.0/local_cpulist\n0-127\n\nSigned-off-by: Anton Blanchard \u003canton@samba.org\u003e\nCc: linux-mips@linux-mips.org\nCc: linux-kernel@vger.kernel.org\nCc: Rusty Russell \u003crusty@rustcorp.com.au\u003e\nCc: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nPatchwork: http://patchwork.linux-mips.org/patch/831/\nSigned-off-by: Ralf Baechle \u003cralf@linux-mips.org\u003e\n"
    },
    {
      "commit": "0e8a1d8262f41d6e8c1d736a408882bbb7a5c0a6",
      "tree": "b8943db01b333cbd3629555e2de92a8670f39404",
      "parents": [
        "9b54dc5869c3989077e456c57e51810f0a1bdbcb"
      ],
      "author": {
        "name": "David Daney",
        "email": "ddaney@caviumnetworks.com",
        "time": "Fri Jan 08 14:47:36 2010 -0800"
      },
      "committer": {
        "name": "Ralf Baechle",
        "email": "ralf@linux-mips.org",
        "time": "Tue Jan 12 18:19:36 2010 +0100"
      },
      "message": "MIPS: Octeon: Use non-overflowing arithmetic in sched_clock\n\nWith typical mult and shift values, the calculation for Octeon\u0027s sched_clock\noverflows when using 64-bit arithmetic.  Use 128-bit calculations instead.\n\nSigned-off-by: David Daney \u003cddaney@caviumnetworks.com\u003e\nTo: linux-mips@linux-mips.org\nPatchwork: http://patchwork.linux-mips.org/patch/849/\nSigned-off-by: Ralf Baechle \u003cralf@linux-mips.org\u003e\n"
    },
    {
      "commit": "9b54dc5869c3989077e456c57e51810f0a1bdbcb",
      "tree": "cd897db1c1a2d0742dbd047930d399680eec9075",
      "parents": [
        "0622870a641f17f9ea10be82d5a8770d0e16c19b"
      ],
      "author": {
        "name": "Yoichi Yuasa",
        "email": "yuasa@linux-mips.org",
        "time": "Sun Jan 03 14:47:34 2010 +0900"
      },
      "committer": {
        "name": "Ralf Baechle",
        "email": "ralf@linux-mips.org",
        "time": "Tue Jan 12 18:19:36 2010 +0100"
      },
      "message": "MIPS: Malta, PowerTV: Remove unnecessary \"Linux started\"\n\nSigned-off-by: Yoichi Yuasa \u003cyuasa@linux-mips.org\u003e\nCc: linux-mips@linux-mips.org\nPatchwork: http://patchwork.linux-mips.org/patch/813/\nSigned-off-by: Ralf Baechle \u003cralf@linux-mips.org\u003e\n"
    },
    {
      "commit": "0622870a641f17f9ea10be82d5a8770d0e16c19b",
      "tree": "c50878875cd3b0dc8d9e79acf5ce8eb0f8bfa788",
      "parents": [
        "70b5c8194f1ecfab5f7e8db3590e7ef7996d893e"
      ],
      "author": {
        "name": "Yoichi Yuasa",
        "email": "yuasa@linux-mips.org",
        "time": "Sun Jan 03 14:39:11 2010 +0900"
      },
      "committer": {
        "name": "Ralf Baechle",
        "email": "ralf@linux-mips.org",
        "time": "Tue Jan 12 18:19:36 2010 +0100"
      },
      "message": "MIPS: BCM63xx: Remove duplicate CONFIG_CMDLINE.\n\nBuiltin cmdline is copied by arch_mem_init().\n\nSigned-off-by: Yoichi Yuasa \u003cyuasa@linux-mips.org\u003e\nCc: linux-mips@linux-mips.org\nPatchwork: http://patchwork.linux-mips.org/patch/812/\nSigned-off-by: Ralf Baechle \u003cralf@linux-mips.org\u003e\n"
    },
    {
      "commit": "70b5c8194f1ecfab5f7e8db3590e7ef7996d893e",
      "tree": "a97c249b88dc5b5302f3d3228aef6a1decf7cc8b",
      "parents": [
        "1dc238632bbb4283ba2c789b2aeadb1a2743eb4f"
      ],
      "author": {
        "name": "Yoichi Yuasa",
        "email": "yuasa@linux-mips.org",
        "time": "Sun Jan 03 14:13:04 2010 +0900"
      },
      "committer": {
        "name": "Ralf Baechle",
        "email": "ralf@linux-mips.org",
        "time": "Tue Jan 12 18:19:36 2010 +0100"
      },
      "message": "MIPS: AR7: Remove unused prom_getchar()\n\nSigned-off-by: Yoichi Yuasa \u003cyuasa@linux-mips.org\u003e\nCc: linux-mips@linux-mips.org\nPatchwork: http://patchwork.linux-mips.org/patch/811/\nSigned-off-by: Ralf Baechle \u003cralf@linux-mips.org\u003e\n"
    },
    {
      "commit": "1dc238632bbb4283ba2c789b2aeadb1a2743eb4f",
      "tree": "1a3b95808fc936aa0e8828fb72ca9ecc5df615d6",
      "parents": [
        "0833c76bd894b797f353e32c5eadfe16855bcf69"
      ],
      "author": {
        "name": "David VomLehn",
        "email": "dvomlehn@cisco.com",
        "time": "Mon Dec 21 17:43:42 2009 -0800"
      },
      "committer": {
        "name": "Ralf Baechle",
        "email": "ralf@linux-mips.org",
        "time": "Tue Jan 12 18:19:35 2010 +0100"
      },
      "message": "MIPS: PowerTV: Remove extra r4k_clockevent_init() call\n\nA call to r4k_clocksource_init() was added to plat_time_init(), but\nwhen init_mips_clock_source() calls the same function, boot fails in\nclockevents_register_device(). This patch removes the extraneous call.\n\nSigned-off-by: David VomLehn \u003cdvomlehn@cisco.com\u003e\nPatchwork: http://patchwork.linux-mips.org/patch/803/\nSigned-off-by: Ralf Baechle \u003cralf@linux-mips.org\u003e\n"
    },
    {
      "commit": "0833c76bd894b797f353e32c5eadfe16855bcf69",
      "tree": "21825231b2c6cb96d3962055cf27da8aaad2a33a",
      "parents": [
        "c6a3c851a287980e47b45bf191a3b78d9d8508e2"
      ],
      "author": {
        "name": "Yoichi Yuasa",
        "email": "yuasa@linux-mips.org",
        "time": "Thu Dec 24 17:06:34 2009 +0900"
      },
      "committer": {
        "name": "Ralf Baechle",
        "email": "ralf@linux-mips.org",
        "time": "Tue Jan 12 18:19:34 2010 +0100"
      },
      "message": "MIPS: Cobalt use strlcat() for the command line arguments\n\nTested with CoLo v1.22\n\nSigned-off-by: Yoichi Yuasa \u003cyuasa@linux-mips.org\u003e\nPatchwork: http://patchwork.linux-mips.org/patch/807/\nSigned-off-by: Ralf Baechle \u003cralf@linux-mips.org\u003e\n"
    },
    {
      "commit": "c6a3c851a287980e47b45bf191a3b78d9d8508e2",
      "tree": "b58339ebc32655ecff45e1f2d32c9ec26dc881f8",
      "parents": [
        "98bea6fc87390b6a12f595ad06fc686712435f94"
      ],
      "author": {
        "name": "David Daney",
        "email": "ddaney@caviumnetworks.com",
        "time": "Wed Dec 23 13:18:54 2009 -0800"
      },
      "committer": {
        "name": "Ralf Baechle",
        "email": "ralf@linux-mips.org",
        "time": "Tue Jan 12 18:19:34 2010 +0100"
      },
      "message": "MIPS: Octeon: Add sched_clock() to csrc-octeon.c\n\nWith the advent of function graph tracing on MIPS, Octeon needs a high\nprecision sched_clock() implementation.  Without it, most timing\nnumbers are reported as 0.000.\n\nThis new sched_clock just uses the 64-bit cycle counter appropriately\nscaled.\n\nSigned-off-by: David Daney \u003cddaney@caviumnetworks.com\u003e\nPatchwork: http://patchwork.linux-mips.org/patch/805/\nSigned-off-by: Ralf Baechle \u003cralf@linux-mips.org\u003e\n"
    },
    {
      "commit": "98bea6fc87390b6a12f595ad06fc686712435f94",
      "tree": "0cd549e85dc4c0d55b88ecb0dc5b38b475e10e66",
      "parents": [
        "7e326d687d182e45447c24daccaa9b60bae130d5"
      ],
      "author": {
        "name": "Atsushi Nemoto",
        "email": "anemo@mba.ocn.ne.jp",
        "time": "Tue Dec 22 00:48:57 2009 +0900"
      },
      "committer": {
        "name": "Ralf Baechle",
        "email": "ralf@linux-mips.org",
        "time": "Tue Jan 12 18:19:34 2010 +0100"
      },
      "message": "MIPS: TXx9: Cleanup builtin-cmdline processing\n\nSince commit 898d357b5262f9e26bc2418e01f8676e80d9867e (lmo) /\n6acc7d485c24c00e111c61b2e6dff9180faebcae (kernel.org) (\"Fix and enhance\nbuilt-in kernel command line\") arcs_cmdline[] does not contain built-in\ncommand line.  The commit introduce CONFIG_CMDLINE_BOOL and\nCONFIG_CMDLINE_OVERRIDE to control built-in command line, and now we can\nuse them instead of platform-specific built-in command line processing.\n\nSigned-off-by: Atsushi Nemoto \u003canemo@mba.ocn.ne.jp\u003e\nPatchwork: http://patchwork.linux-mips.org/patch/802/\nSigned-off-by: Ralf Baechle \u003cralf@linux-mips.org\u003e\n"
    },
    {
      "commit": "7e326d687d182e45447c24daccaa9b60bae130d5",
      "tree": "60958ec62e35aacc5471503a4ef3d58c6ccb93f6",
      "parents": [
        "0eb99a9354cfe73dfa76ef81c917f7655b1b306c"
      ],
      "author": {
        "name": "Yoichi Yuasa",
        "email": "yuasa@linux-mips.org",
        "time": "Fri Dec 18 21:38:37 2009 +0900"
      },
      "committer": {
        "name": "Ralf Baechle",
        "email": "ralf@linux-mips.org",
        "time": "Tue Jan 12 18:19:33 2010 +0100"
      },
      "message": "MIPS: PowerTV: simplify prom_init_cmdline() and merge into prom_init()\n\nSigned-off-by: Yoichi Yuasa \u003cyuasa@linux-mips.org\u003e\nPatchwork: http://patchwork.linux-mips.org/patch/801/\nReviewed-by: David VomLehn \u003cdvomlehn@cisco.com\u003e\nSigned-off-by: Ralf Baechle \u003cralf@linux-mips.org\u003e\n"
    },
    {
      "commit": "0eb99a9354cfe73dfa76ef81c917f7655b1b306c",
      "tree": "58a5528d31d84dbbedbb678273b71f63baf3fe27",
      "parents": [
        "2620c3570f748647afb17e095507099a309ed8f6"
      ],
      "author": {
        "name": "Yoichi Yuasa",
        "email": "yuasa@linux-mips.org",
        "time": "Fri Dec 18 21:36:32 2009 +0900"
      },
      "committer": {
        "name": "Ralf Baechle",
        "email": "ralf@linux-mips.org",
        "time": "Tue Jan 12 18:19:33 2010 +0100"
      },
      "message": "MIPS: PowerTV: Remove unused platform_die()\n\nSigned-off-by: Yoichi Yuasa \u003cyuasa@linux-mips.org\u003e\nPatchwork: http://patchwork.linux-mips.org/patch/800/\nReviewed-by: David VomLehn \u003cdvomlehn@cisco.com\u003e\nSigned-off-by: Ralf Baechle \u003cralf@linux-mips.org\u003e\n"
    },
    {
      "commit": "2620c3570f748647afb17e095507099a309ed8f6",
      "tree": "985c1dccc3c125d9e536e2105d6cc3b6c68c0824",
      "parents": [
        "09b7c9f24d8e9b772da682b52b83c88f426a849d"
      ],
      "author": {
        "name": "Yoichi Yuasa",
        "email": "yuasa@linux-mips.org",
        "time": "Fri Dec 18 21:33:46 2009 +0900"
      },
      "committer": {
        "name": "Ralf Baechle",
        "email": "ralf@linux-mips.org",
        "time": "Tue Jan 12 18:19:32 2010 +0100"
      },
      "message": "MIPS: PowerTV: Remove mips_machine_halt()\n\nmips_machine_halt() is same as mips_machine_restart().  Also delete the\nregistration of _machine_halt and pm_power_off because mips_machine_halt()\nis the restart function.\n\nSigned-off-by: Yoichi Yuasa \u003cyuasa@linux-mips.org\u003e\nPatchwork: http://patchwork.linux-mips.org/patch/798/\nReviewed-by: David VomLehn \u003cdvomlehn@cisco.com\u003e\nSigned-off-by: Ralf Baechle \u003cralf@linux-mips.org\u003e\n"
    },
    {
      "commit": "09b7c9f24d8e9b772da682b52b83c88f426a849d",
      "tree": "f3a197189fc214faa50c2517119b4b8a36b4b07f",
      "parents": [
        "99d2b173e5e14d10d2179d342d91c5bed0e8832d"
      ],
      "author": {
        "name": "Yoichi Yuasa",
        "email": "yuasa@linux-mips.org",
        "time": "Fri Dec 18 21:30:18 2009 +0900"
      },
      "committer": {
        "name": "Ralf Baechle",
        "email": "ralf@linux-mips.org",
        "time": "Tue Jan 12 18:19:32 2010 +0100"
      },
      "message": "MIPS: PowerTV: Remove unused ptv_memsize\n\nSigned-off-by: Yoichi Yuasa \u003cyuasa@linux-mips.org\u003e\nPatchwork: http://patchwork.linux-mips.org/patch/799/\nReviewed-by: David VomLehn \u003cdvomlehn@cisco.com\u003e\nSigned-off-by: Ralf Baechle \u003cralf@linux-mips.org\u003e\n"
    },
    {
      "commit": "99d2b173e5e14d10d2179d342d91c5bed0e8832d",
      "tree": "ea760aa1c7ca82b0a3a3814041b1c9da8f1578d0",
      "parents": [
        "57699407faf009f2abc33e381bc82b4c81bb0585"
      ],
      "author": {
        "name": "Yoichi Yuasa",
        "email": "yuasa@linux-mips.org",
        "time": "Fri Dec 18 21:29:17 2009 +0900"
      },
      "committer": {
        "name": "Ralf Baechle",
        "email": "ralf@linux-mips.org",
        "time": "Tue Jan 12 18:19:31 2010 +0100"
      },
      "message": "MIPS: PowerTV: Remove unused prom_getcmdline()\n\nSigned-off-by: Yoichi Yuasa \u003cyuasa@linux-mips.org\u003e\nPatchwork: http://patchwork.linux-mips.org/patch/797/\nReviewed-by: David VomLehn \u003cdvomlehn@cisco.com\u003e\nSigned-off-by: Ralf Baechle \u003cralf@linux-mips.org\u003e\n"
    },
    {
      "commit": "57699407faf009f2abc33e381bc82b4c81bb0585",
      "tree": "8380822e588104df884822c93b82a9a27e5dea1f",
      "parents": [
        "42ecda1ae80b4b19c3c7ba36e3141c4c19e1fe70"
      ],
      "author": {
        "name": "Yoichi Yuasa",
        "email": "yuasa@linux-mips.org",
        "time": "Fri Dec 18 21:20:24 2009 +0900"
      },
      "committer": {
        "name": "Ralf Baechle",
        "email": "ralf@linux-mips.org",
        "time": "Tue Jan 12 18:19:31 2010 +0100"
      },
      "message": "MIPS: AR7: Remove kgdb_enabled\n\nAn unused leftover from the old KGDB implementation.\n\nSigned-off-by: Yoichi Yuasa \u003cyuasa@linux-mips.org\u003e\nPatchwork: http://patchwork.linux-mips.org/patch/794/\nSigned-off-by: Ralf Baechle \u003cralf@linux-mips.org\u003e\n"
    },
    {
      "commit": "42ecda1ae80b4b19c3c7ba36e3141c4c19e1fe70",
      "tree": "4fafa20ecea17a6bf05675d963d4f078e2ddeab4",
      "parents": [
        "05c694681e059b9e99449bb239367ab486cd1fca"
      ],
      "author": {
        "name": "Julia Lawall",
        "email": "julia@diku.dk",
        "time": "Sun Dec 13 12:40:39 2009 +0100"
      },
      "committer": {
        "name": "Ralf Baechle",
        "email": "ralf@linux-mips.org",
        "time": "Tue Jan 12 18:19:31 2010 +0100"
      },
      "message": "MIPS: Alchemy: Correct code taking the size of a pointer\n\nsizeof(dp) is just the size of the pointer.  Change it to the size of the\nreferenced structure.\n\nA simplified version of the semantic patch that finds this problem is as\nfollows: (http://coccinelle.lip6.fr/)\n\n// \u003csmpl\u003e\n@@\nexpression *x;\nexpression f;\ntype T;\n@@\n\n*f(...,(T)x,...)\n// \u003c/smpl\u003e\n\nSigned-off-by: Julia Lawall \u003cjulia@diku.dk\u003e\nPatchwork: http://patchwork.linux-mips.org/patch/789/\nSigned-off-by: Ralf Baechle \u003cralf@linux-mips.org\u003e\n"
    },
    {
      "commit": "05c694681e059b9e99449bb239367ab486cd1fca",
      "tree": "820c83cac44f7355349a0d71a9d67eec287331c5",
      "parents": [
        "66a0f0f2a20a8df2cdf22e911839c29c462836f3"
      ],
      "author": {
        "name": "Florian Fainelli",
        "email": "ffainelli@freebox.fr",
        "time": "Sat Dec 12 17:57:39 2009 +0100"
      },
      "committer": {
        "name": "Ralf Baechle",
        "email": "ralf@linux-mips.org",
        "time": "Tue Jan 12 18:19:30 2010 +0100"
      },
      "message": "MIPS: BCM63xx: Fix whitespace damaged board_bcm963xx.c\n\nSigned-off-by: Florian Fainelli \u003cffainelli@freebox.fr\u003e\nSigned-off-by: Ralf Baechle \u003cralf@linux-mips.org\u003e\n"
    },
    {
      "commit": "66a0f0f2a20a8df2cdf22e911839c29c462836f3",
      "tree": "e5fd2280d51dd6ef550f52828cb3909e2fd98a13",
      "parents": [
        "d4d9a553d7b96e18fcfbd0b8fb5f803b3a27e4e6"
      ],
      "author": {
        "name": "Yoichi Yuasa",
        "email": "yuasa@linux-mips.org",
        "time": "Thu Dec 10 14:00:39 2009 +0900"
      },
      "committer": {
        "name": "Ralf Baechle",
        "email": "ralf@linux-mips.org",
        "time": "Tue Jan 12 18:19:30 2010 +0100"
      },
      "message": "MIPS: VR41xx: Use strlcat() for the command line arguments\n\nSigned-off-by: Yoichi Yuasa \u003cyuasa@linux-mips.org\u003e\nCc: linux-mips@linux-mips.org\nPatchwork: http://patchwork.linux-mips.org/patch/784/\nSigned-off-by: Ralf Baechle \u003cralf@linux-mips.org\u003e\n"
    },
    {
      "commit": "d4d9a553d7b96e18fcfbd0b8fb5f803b3a27e4e6",
      "tree": "999e955a181d5b1a3c6bd62796b3b0bc899fc541",
      "parents": [
        "abbdc3d88aa2d5c937b21044c336bcd056c1732f"
      ],
      "author": {
        "name": "Wu Zhangjin",
        "email": "wuzhangjin@gmail.com",
        "time": "Thu Dec 10 22:55:13 2009 +0800"
      },
      "committer": {
        "name": "Ralf Baechle",
        "email": "ralf@linux-mips.org",
        "time": "Tue Jan 12 18:19:29 2010 +0100"
      },
      "message": "MIPS: Cleanup and Fixup of compressed kernel support\n\n o Remove the .initrd section.  The initrd section was already handled\n   when vmlinux was linked.\n o Discard .MIPS.options, .options, .pdr, .reginfo, .comment and .note\n   sections.  If .MIPS.options is not removed, kernels compiled with gcc\n   3.4.6 will not boot.\n o Clean up the file format.\n o Remove several other unneeded sections.\n\nTested with GCC 3.4.6 and 4.4.1 with and without initrd.\n\nSigned-off-by: Wu Zhangjin \u003cwuzhangjin@gmail.com\u003e\nCc: linux-mips@linux-mips.org\nPatchwork: http://patchwork.linux-mips.org/patch/785/\nSigned-off-by: Ralf Baechle \u003cralf@linux-mips.org\u003e\n"
    },
    {
      "commit": "abbdc3d88aa2d5c937b21044c336bcd056c1732f",
      "tree": "c015bc3bbffcb074439fbe4c3b25f6f645774778",
      "parents": [
        "066000dd856709b6980123eb39b957fe26993f7b"
      ],
      "author": {
        "name": "David Daney",
        "email": "ddaney@caviumnetworks.com",
        "time": "Thu Dec 03 17:43:54 2009 -0800"
      },
      "committer": {
        "name": "Ralf Baechle",
        "email": "ralf@linux-mips.org",
        "time": "Tue Jan 12 18:19:29 2010 +0100"
      },
      "message": "MIPS: Cleanup forgotten label_module_alloc in tlbex.c\n\ncommit c8af165342e83a4eb078c9607d29a7c399d30a53 (lmo) rsp.\ne0cc87f59490d7d62a8ab2a76498dc8a2b64927a (kernel.org) left\nlabel_module_alloc unused.  Remove it now.\n\nSigned-off-by: David Daney \u003cddaney@caviumnetworks.com\u003e\nCc: linux-mips@linux-mips.org\nPatchwork: http://patchwork.linux-mips.org/patch/752/\nSigned-off-by: Ralf Baechle \u003cralf@linux-mips.org\u003e\n"
    },
    {
      "commit": "f59bb4b64eca0fa906f51f25a05054f11de94f92",
      "tree": "a68fc3e209905fe8f2a73db317a016a29ebface5",
      "parents": [
        "c96350a298cf5ffab6eb340ced92418cbb699da4",
        "5ee518ecbcb5934e284ea51a19a939c891f5f7ea"
      ],
      "author": {
        "name": "Takashi Iwai",
        "email": "tiwai@suse.de",
        "time": "Tue Jan 12 17:50:06 2010 +0100"
      },
      "committer": {
        "name": "Takashi Iwai",
        "email": "tiwai@suse.de",
        "time": "Tue Jan 12 17:50:06 2010 +0100"
      },
      "message": "Merge branch \u0027fix/asoc\u0027 into for-linus\n"
    },
    {
      "commit": "c96350a298cf5ffab6eb340ced92418cbb699da4",
      "tree": "079a1d43512d938b5c030477ae187d0812e78ef8",
      "parents": [
        "dba9532388b00d591d87c638a47dcc7ba3763fc5",
        "9c0afc861a7228f718cb6a79fa7f9d46bf9ff300"
      ],
      "author": {
        "name": "Takashi Iwai",
        "email": "tiwai@suse.de",
        "time": "Tue Jan 12 17:50:03 2010 +0100"
      },
      "committer": {
        "name": "Takashi Iwai",
        "email": "tiwai@suse.de",
        "time": "Tue Jan 12 17:50:03 2010 +0100"
      },
      "message": "Merge branch \u0027fix/hda\u0027 into for-linus\n"
    },
    {
      "commit": "9c0afc861a7228f718cb6a79fa7f9d46bf9ff300",
      "tree": "82f7cc34328af2c2adb85fd9a33e04c65726a306",
      "parents": [
        "74d2e4f8d79ae0c4b6ec027958d5b18058662eea"
      ],
      "author": {
        "name": "Takashi Iwai",
        "email": "tiwai@suse.de",
        "time": "Tue Jan 12 14:00:11 2010 +0100"
      },
      "committer": {
        "name": "Takashi Iwai",
        "email": "tiwai@suse.de",
        "time": "Tue Jan 12 14:02:13 2010 +0100"
      },
      "message": "ALSA: hda - Fix ALC861-VD capture source mixer\n\nThe capture source or input source mixer element wasn\u0027t created properly\nfor ALC861-VD codec due to the wrong NID passed to\nalc_auto_create_input_ctls().\n\nReferences: Novell bnc#568305\n\thttp://bugzilla.novell.com/show_bug.cgi?id\u003d568305\n\nSigned-off-by: Takashi Iwai \u003ctiwai@suse.de\u003e\nCc: \u003cstable@kernel.org\u003e\n"
    },
    {
      "commit": "9db2f1bec36805e57a003f7bb90e003815d96de8",
      "tree": "5293188063fdd95104fd1d4f0f0e5693ca99874a",
      "parents": [
        "aa4e2e171385bb77b4da8b760d26dea2aa291587"
      ],
      "author": {
        "name": "Jarek Poplawski",
        "email": "jarkao2@gmail.com",
        "time": "Mon Jan 04 08:48:41 2010 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Jan 12 02:55:24 2010 -0800"
      },
      "message": "sky2: Fix oops in sky2_xmit_frame() after TX timeout\n\nDuring TX timeout procedure dev could be awoken too early, e.g. by\nsky2_complete_tx() called from sky2_down(). Then sky2_xmit_frame()\ncan run while buffers are freed causing an oops. This patch fixes it\nby adding netif_device_present() test in sky2_tx_complete().\n\nFixes: http://bugzilla.kernel.org/show_bug.cgi?id\u003d14925\n\nWith debugging by: Mike McCormack \u003cmikem@ring3k.org\u003e\n\nReported-by: Berck E. Nash \u003cflyboy@gmail.com\u003e\nTested-by: Berck E. Nash \u003cflyboy@gmail.com\u003e\nSigned-off-by: Jarek Poplawski \u003cjarkao2@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "807a7515aea421f2b340140482ed4c8811c523c6",
      "tree": "f8ab9e4a19ad7dbf072303b7b3cbda2b3a6f6fe0",
      "parents": [
        "2d9c5597ad1408885fdef5838aa27a8a0ee9e915"
      ],
      "author": {
        "name": "Tomi Valkeinen",
        "email": "tomi.valkeinen@nokia.com",
        "time": "Thu Jan 07 17:45:03 2010 +0200"
      },
      "committer": {
        "name": "Tomi Valkeinen",
        "email": "tomi.valkeinen@nokia.com",
        "time": "Tue Jan 12 12:10:55 2010 +0200"
      },
      "message": "OMAP: DSS2: OMAPFB: fix crash when panel driver was not loaded\n\nIf the panel\u0027s probe had failed, omapfb would still go on, eventually\ncrashing.\n\nA better fix would be to handle each display properly, and leaving just\nthe failed display out. But that is a bigger change.\n\nSigned-off-by: Tomi Valkeinen \u003ctomi.valkeinen@nokia.com\u003e\n"
    },
    {
      "commit": "2d9c5597ad1408885fdef5838aa27a8a0ee9e915",
      "tree": "896ac2b767482c64802068232705c2298515fdae",
      "parents": [
        "24be78b32f0a6e14aead3eac89d768a361b091b3"
      ],
      "author": {
        "name": "Ville Syrjälä",
        "email": "ville.syrjala@nokia.com",
        "time": "Fri Jan 08 11:56:41 2010 +0200"
      },
      "committer": {
        "name": "Tomi Valkeinen",
        "email": "tomi.valkeinen@nokia.com",
        "time": "Tue Jan 12 12:10:19 2010 +0200"
      },
      "message": "OMAP: DSS2: Reject scaling settings when they cannot be supported\n\nIf the scaling ratio is below 0.5 video output width can\u0027t be identical\nto the display width. Reject such settings.\n\nSigned-off-by: Ville Syrjälä \u003cville.syrjala@nokia.com\u003e\nAcked-by: Tomi Valkeinen \u003ctomi.valkeinen@nokia.com\u003e\n"
    },
    {
      "commit": "dba9532388b00d591d87c638a47dcc7ba3763fc5",
      "tree": "cc9de8cbc40d0e927b1924d1d943208e84e21d1f",
      "parents": [
        "78b8d5d2ee280c463908fd75f3bdf246bcb6ac8d",
        "c68db7175f4dcb3d5789bb50bea6376fb81f87fe"
      ],
      "author": {
        "name": "Takashi Iwai",
        "email": "tiwai@suse.de",
        "time": "Tue Jan 12 09:40:48 2010 +0100"
      },
      "committer": {
        "name": "Takashi Iwai",
        "email": "tiwai@suse.de",
        "time": "Tue Jan 12 09:40:48 2010 +0100"
      },
      "message": "Merge remote branch \u0027alsa/fixes\u0027 into fix/misc\n"
    },
    {
      "commit": "066000dd856709b6980123eb39b957fe26993f7b",
      "tree": "ba3a3ba8d7601234f5a554fd9eff38cd476025b1",
      "parents": [
        "1b4d40a517e0657a081d5d63518c4badd31c60ea"
      ],
      "author": {
        "name": "Ananth N Mavinakayanahalli",
        "email": "ananth@in.ibm.com",
        "time": "Mon Jan 11 15:51:04 2010 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jan 11 16:47:57 2010 -0800"
      },
      "message": "Revert \"x86, apic: Use logical flat on intel with \u003c\u003d 8 logical cpus\"\n\nRevert commit 2fbd07a5f5d1295fa9b0c0564ec27da7c276a75a, as this commit\nbreaks an IBM platform with quad-core Xeon cpu\u0027s.\n\nAccording to Suresh, this might be an IBM platform issue, as on other\nIntel platforms with \u003c\u003d 8 logical cpu\u0027s, logical flat mode works fine\nirespective of physical apic id values (inline with the xapic\narchitecture).\n\nRevert this for now because of the IBM platform breakage.\n\nAnother version will be re-submitted after the complete analysis.\n\nSigned-off-by: Ananth N Mavinakayanahalli \u003cananth@in.ibm.com\u003e\nAcked-by: Suresh Siddha \u003csuresh.b.siddha@intel.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "aa4e2e171385bb77b4da8b760d26dea2aa291587",
      "tree": "5f67c0b3fadac16db3a845ad5ab507d7acb89ba3",
      "parents": [
        "eb70df13ee52dbc0f2c0ffd8ed34a8cd27440baf"
      ],
      "author": {
        "name": "Ben Hutchings",
        "email": "ben@decadent.org.uk",
        "time": "Mon Jan 11 15:53:45 2010 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Jan 11 15:53:45 2010 -0800"
      },
      "message": "Documentation/3c509: document ethtool support\n\n3c509 was changed to support ethtool in 2002, making the \u0027xcvr\u0027 module\nparameter obsolete in most cases.  More recently 3c509 was converted\nto the modern driver model and this parameter was removed.  Fix the\ndocumentation to refer to ethtool rather than the module parameter.\n\nSigned-off-by: Ben Hutchings \u003cben@decadent.org.uk\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "eb70df13ee52dbc0f2c0ffd8ed34a8cd27440baf",
      "tree": "9026781435cdaf46b8414f4596903dd7d5f2e5ae",
      "parents": [
        "fa15e99b6bb44aa86b241a43ca8c509e91f80153"
      ],
      "author": {
        "name": "Jarek Poplawski",
        "email": "jarkao2@gmail.com",
        "time": "Sun Jan 10 22:04:19 2010 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Jan 11 15:39:42 2010 -0800"
      },
      "message": "af_packet: Don\u0027t use skb after dev_queue_xmit()\n\ntpacket_snd() can change and kfree an skb after dev_queue_xmit(),\nwhich is illegal.\n\nWith debugging by: Stephen Hemminger \u003cshemminger@vyatta.com\u003e\n\nReported-by: Michael Breuer \u003cmbreuer@majjas.com\u003e\nWith help from: David S. Miller \u003cdavem@davemloft.net\u003e\nSigned-off-by: Jarek Poplawski \u003cjarkao2@gmail.com\u003e\nTested-by: Michael Breuer\u003cmbreuer@majjas.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "1b4d40a517e0657a081d5d63518c4badd31c60ea",
      "tree": "37b3f593288fd9f8fd97f60a84bd57fef8c0d87a",
      "parents": [
        "79ecb043ea0ae046463f03dea46c5e13a9312205",
        "fd45e4784164d1017521086524e3442318c67370"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jan 11 09:48:48 2010 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jan 11 09:48:48 2010 -0800"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://oss.sgi.com/xfs/xfs\n\n* \u0027for-linus\u0027 of git://oss.sgi.com/xfs/xfs:\n  xfs: Ensure we force all busy extents in range to disk\n  xfs: Don\u0027t flush stale inodes\n  xfs: fix timestamp handling in xfs_setattr\n  xfs: use DECLARE_EVENT_CLASS\n"
    }
  ],
  "next": "79ecb043ea0ae046463f03dea46c5e13a9312205"
}
