)]}'
{
  "log": [
    {
      "commit": "0a82a6239beecc95db6e05fe43ee62d16b381d38",
      "tree": "524f6417ae8128f5b1da322872e860bd4af5840d",
      "parents": [
        "b2f46fd8ef3dff2ab30f31126833f78b7480283a"
      ],
      "author": {
        "name": "Dan Williams",
        "email": "dan.j.williams@intel.com",
        "time": "Tue Jul 14 12:20:37 2009 -0700"
      },
      "committer": {
        "name": "Dan Williams",
        "email": "dan.j.williams@intel.com",
        "time": "Sat Aug 29 19:09:27 2009 -0700"
      },
      "message": "async_tx: add support for asynchronous RAID6 recovery operations\n\n async_raid6_2data_recov() recovers two data disk failures\n\n async_raid6_datap_recov() recovers a data disk and the P disk\n\nThese routines are a port of the synchronous versions found in\ndrivers/md/raid6recov.c.  The primary difference is breaking out the xor\noperations into separate calls to async_xor.  Two helper routines are\nintroduced to perform scalar multiplication where needed.\nasync_sum_product() multiplies two sources by scalar coefficients and\nthen sums (xor) the result.  async_mult() simply multiplies a single\nsource by a scalar.\n\nThis implemention also includes, in contrast to the original\nsynchronous-only code, special case handling for the 4-disk and 5-disk\narray cases.  In these situations the default N-disk algorithm will\npresent 0-source or 1-source operations to dma devices.  To cover for\ndma devices where the minimum source count is 2 we implement 4-disk and\n5-disk handling in the recovery code.\n\n[ Impact: asynchronous raid6 recovery routines for 2data and datap cases ]\n\nCc: Yuri Tikhonov \u003cyur@emcraft.com\u003e\nCc: Ilya Yanok \u003cyanok@emcraft.com\u003e\nCc: H. Peter Anvin \u003chpa@zytor.com\u003e\nCc: David Woodhouse \u003cDavid.Woodhouse@intel.com\u003e\nReviewed-by: Andre Noll \u003cmaan@systemlinux.org\u003e\nAcked-by: Maciej Sosnowski \u003cmaciej.sosnowski@intel.com\u003e\nSigned-off-by: Dan Williams \u003cdan.j.williams@intel.com\u003e\n\n\n"
    },
    {
      "commit": "b2f46fd8ef3dff2ab30f31126833f78b7480283a",
      "tree": "9f111e3e313b4d142c12d2d8156a2704a36904f8",
      "parents": [
        "95475e57113c66aac7583925736ed2e2d58c990d"
      ],
      "author": {
        "name": "Dan Williams",
        "email": "dan.j.williams@intel.com",
        "time": "Tue Jul 14 12:20:36 2009 -0700"
      },
      "committer": {
        "name": "Dan Williams",
        "email": "dan.j.williams@intel.com",
        "time": "Sat Aug 29 19:09:27 2009 -0700"
      },
      "message": "async_tx: add support for asynchronous GF multiplication\n\n[ Based on an original patch by Yuri Tikhonov ]\n\nThis adds support for doing asynchronous GF multiplication by adding\ntwo additional functions to the async_tx API:\n\n async_gen_syndrome() does simultaneous XOR and Galois field\n    multiplication of sources.\n\n async_syndrome_val() validates the given source buffers against known P\n    and Q values.\n\nWhen a request is made to run async_pq against more than the hardware\nmaximum number of supported sources we need to reuse the previous\ngenerated P and Q values as sources into the next operation.  Care must\nbe taken to remove Q from P\u0027 and P from Q\u0027.  For example to perform a 5\nsource pq op with hardware that only supports 4 sources at a time the\nfollowing approach is taken:\n\np, q \u003d PQ(src0, src1, src2, src3, COEF({01}, {02}, {04}, {08}))\np\u0027, q\u0027 \u003d PQ(p, q, q, src4, COEF({00}, {01}, {00}, {10}))\n\np\u0027 \u003d p + q + q + src4 \u003d p + src4\nq\u0027 \u003d {00}*p + {01}*q + {00}*q + {10}*src4 \u003d q + {10}*src4\n\nNote: 4 is the minimum acceptable maxpq otherwise we punt to\nsynchronous-software path.\n\nThe DMA_PREP_CONTINUE flag indicates to the driver to reuse p and q as\nsources (in the above manner) and fill the remaining slots up to maxpq\nwith the new sources/coefficients.\n\nNote1: Some devices have native support for P+Q continuation and can skip\nthis extra work.  Devices with this capability can advertise it with\ndma_set_maxpq.  It is up to each driver how to handle the\nDMA_PREP_CONTINUE flag.\n\nNote2: The api supports disabling the generation of P when generating Q,\nthis is ignored by the synchronous path but is implemented by some dma\ndevices to save unnecessary writes.  In this case the continuation\nalgorithm is simplified to only reuse Q as a source.\n\nCc: H. Peter Anvin \u003chpa@zytor.com\u003e\nCc: David Woodhouse \u003cDavid.Woodhouse@intel.com\u003e\nSigned-off-by: Yuri Tikhonov \u003cyur@emcraft.com\u003e\nSigned-off-by: Ilya Yanok \u003cyanok@emcraft.com\u003e\nReviewed-by: Andre Noll \u003cmaan@systemlinux.org\u003e\nAcked-by: Maciej Sosnowski \u003cmaciej.sosnowski@intel.com\u003e\nSigned-off-by: Dan Williams \u003cdan.j.williams@intel.com\u003e\n\n"
    },
    {
      "commit": "95475e57113c66aac7583925736ed2e2d58c990d",
      "tree": "933aa0ca3bffef5b1457c516fbe3e8690b4c4cb1",
      "parents": [
        "af1f951eb6ef27b01cbfb3f6c21b770af4368a6d"
      ],
      "author": {
        "name": "Dan Williams",
        "email": "dan.j.williams@intel.com",
        "time": "Tue Jul 14 12:19:02 2009 -0700"
      },
      "committer": {
        "name": "Dan Williams",
        "email": "dan.j.williams@intel.com",
        "time": "Sat Aug 29 19:09:27 2009 -0700"
      },
      "message": "async_tx: remove walk of tx-\u003eparent chain in dma_wait_for_async_tx\n\nWe currently walk the parent chain when waiting for a given tx to\ncomplete however this walk may race with the driver cleanup routine.\nThe routines in async_raid6_recov.c may fall back to the synchronous\npath at any point so we need to be prepared to call async_tx_quiesce()\n(which calls  dma_wait_for_async_tx).  To remove the -\u003eparent walk we\nguarantee that every time a dependency is attached -\u003eissue_pending() is\ninvoked, then we can simply poll the initial descriptor until\ncompletion.\n\nThis also allows for a lighter weight \u0027issue pending\u0027 implementation as\nthere is no longer a requirement to iterate through all the channels\u0027\n-\u003eissue_pending() routines as long as operations have been submitted in\nan ordered chain.  async_tx_issue_pending() is added for this case.\n\nSigned-off-by: Dan Williams \u003cdan.j.williams@intel.com\u003e\n\n"
    },
    {
      "commit": "ad283ea4a3ce82cda2efe33163748a397b31b1eb",
      "tree": "11cd739195f336895abe9e4a62d824e49a41c24f",
      "parents": [
        "d6f38f31f3ad4b0dd33fe970988f14e7c65ef702"
      ],
      "author": {
        "name": "Dan Williams",
        "email": "dan.j.williams@intel.com",
        "time": "Sat Aug 29 19:09:26 2009 -0700"
      },
      "committer": {
        "name": "Dan Williams",
        "email": "dan.j.williams@intel.com",
        "time": "Sat Aug 29 19:09:26 2009 -0700"
      },
      "message": "async_tx: add sum check flags\n\nReplace the flat zero_sum_result with a collection of flags to contain\nthe P (xor) zero-sum result, and the soon to be utilized Q (raid6 reed\nsolomon syndrome) zero-sum result.  Use the SUM_CHECK_ namespace instead\nof DMA_ since these flags will be used on non-dma-zero-sum enabled\nplatforms.\n\nReviewed-by: Andre Noll \u003cmaan@systemlinux.org\u003e\nAcked-by: Maciej Sosnowski \u003cmaciej.sosnowski@intel.com\u003e\nSigned-off-by: Dan Williams \u003cdan.j.williams@intel.com\u003e\n\n"
    },
    {
      "commit": "a08abd8ca890a377521d65d493d174bebcaf694b",
      "tree": "987c149a2d7d6ab345f426ac28191627b4a02a3e",
      "parents": [
        "88ba2aa586c874681c072101287e15d40de7e6e2"
      ],
      "author": {
        "name": "Dan Williams",
        "email": "dan.j.williams@intel.com",
        "time": "Wed Jun 03 11:43:59 2009 -0700"
      },
      "committer": {
        "name": "Dan Williams",
        "email": "dan.j.williams@intel.com",
        "time": "Wed Jun 03 14:07:35 2009 -0700"
      },
      "message": "async_tx: structify submission arguments, add scribble\n\nPrepare the api for the arrival of a new parameter, \u0027scribble\u0027.  This\nwill allow callers to identify scratchpad memory for dma address or page\naddress conversions.  As this adds yet another parameter, take this\nopportunity to convert the common submission parameters (flags,\ndependency, callback, and callback argument) into an object that is\npassed by reference.\n\nAlso, take this opportunity to fix up the kerneldoc and add notes about\nthe relevant ASYNC_TX_* flags for each routine.\n\n[ Impact: moves api pass-by-value parameters to a pass-by-reference struct ]\n\nSigned-off-by: Andre Noll \u003cmaan@systemlinux.org\u003e\nAcked-by: Maciej Sosnowski \u003cmaciej.sosnowski@intel.com\u003e\nSigned-off-by: Dan Williams \u003cdan.j.williams@intel.com\u003e\n\n"
    },
    {
      "commit": "88ba2aa586c874681c072101287e15d40de7e6e2",
      "tree": "69a124fcd0a8a75ef9aae0cc4081bad83c770374",
      "parents": [
        "099f53cb50e45ef617a9f1d63ceec799e489418b"
      ],
      "author": {
        "name": "Dan Williams",
        "email": "dan.j.williams@intel.com",
        "time": "Thu Apr 09 16:16:18 2009 -0700"
      },
      "committer": {
        "name": "Dan Williams",
        "email": "dan.j.williams@intel.com",
        "time": "Wed Jun 03 14:07:34 2009 -0700"
      },
      "message": "async_tx: kill ASYNC_TX_DEP_ACK flag\n\nIn support of inter-channel chaining async_tx utilizes an ack flag to\ngate whether a dependent operation can be chained to another.  While the\nflag is not set the chain can be considered open for appending.  Setting\nthe ack flag closes the chain and flags the descriptor for garbage\ncollection.  The ASYNC_TX_DEP_ACK flag essentially means \"close the\nchain after adding this dependency\".  Since each operation can only have\none child the api now implicitly sets the ack flag at dependency\nsubmission time.  This removes an unnecessary management burden from\nclients of the api.\n\n[ Impact: clean up and enforce one dependency per operation ]\n\nReviewed-by: Andre Noll \u003cmaan@systemlinux.org\u003e\nAcked-by: Maciej Sosnowski \u003cmaciej.sosnowski@intel.com\u003e\nSigned-off-by: Dan Williams \u003cdan.j.williams@intel.com\u003e\n\n"
    },
    {
      "commit": "099f53cb50e45ef617a9f1d63ceec799e489418b",
      "tree": "fd57f259f58bcf615fe2b17734ed0cbec612782d",
      "parents": [
        "fd74ea65883c7e6903e9b652795f72b723a2be69"
      ],
      "author": {
        "name": "Dan Williams",
        "email": "dan.j.williams@intel.com",
        "time": "Wed Apr 08 14:28:37 2009 -0700"
      },
      "committer": {
        "name": "Dan Williams",
        "email": "dan.j.williams@intel.com",
        "time": "Wed Apr 08 14:28:37 2009 -0700"
      },
      "message": "async_tx: rename zero_sum to val\n\n\u0027zero_sum\u0027 does not properly describe the operation of generating parity\nand checking that it validates against an existing buffer.  Change the\nname of the operation to \u0027val\u0027 (for \u0027validate\u0027).  This is in\nanticipation of the p+q case where it is a requirement to identify the\ntarget parity buffers separately from the source buffers, because the\ntarget parity buffers will not have corresponding pq coefficients.\n\nReviewed-by: Andre Noll \u003cmaan@systemlinux.org\u003e\nAcked-by: Maciej Sosnowski \u003cmaciej.sosnowski@intel.com\u003e\nSigned-off-by: Dan Williams \u003cdan.j.williams@intel.com\u003e\n"
    },
    {
      "commit": "fd74ea65883c7e6903e9b652795f72b723a2be69",
      "tree": "0792ad598080eae201d2836ac3c5a8fc46d0d03e",
      "parents": [
        "c8f517c444e4f9f55b5b5ca202b8404691a35805",
        "8c6db1bbf80123839ec87bdd6cb364aea384623d"
      ],
      "author": {
        "name": "Dan Williams",
        "email": "dan.j.williams@intel.com",
        "time": "Wed Apr 08 14:28:13 2009 -0700"
      },
      "committer": {
        "name": "Dan Williams",
        "email": "dan.j.williams@intel.com",
        "time": "Wed Apr 08 14:28:13 2009 -0700"
      },
      "message": "Merge branch \u0027dmaengine\u0027 into async-tx-raid6\n"
    },
    {
      "commit": "d9de451989a88a2003ca06e524aca4665c0c7f06",
      "tree": "a926d4ff1b73da88d5112324611a579a94e28095",
      "parents": [
        "0f571515c332e00b3515dbe0859ceaa30ab66e00"
      ],
      "author": {
        "name": "Hans-Christian Egtvedt",
        "email": "hans-christian.egtvedt@atmel.com",
        "time": "Wed Apr 01 15:47:02 2009 +0200"
      },
      "committer": {
        "name": "Dan Williams",
        "email": "dan.j.williams@intel.com",
        "time": "Wed Apr 01 15:42:34 2009 -0700"
      },
      "message": "dw_dmac: add cyclic API to DW DMA driver\n\nThis patch adds a cyclic DMA interface to the DW DMA driver. This is\nvery useful if you want to use the DMA controller in combination with a\nsound device which uses cyclic buffers.\n\nUsing a DMA channel for cyclic DMA will disable the possibility to use\nit as a normal DMA engine until the user calls the cyclic free function\non the DMA channel. Also a cyclic DMA list can not be prepared if the\nchannel is already active.\n\nSigned-off-by: Hans-Christian Egtvedt \u003chans-christian.egtvedt@atmel.com\u003e\nAcked-by: Haavard Skinnemoen \u003chaavard.skinnemoen@atmel.com\u003e\nAcked-by: Maciej Sosnowski \u003cmaciej.sosnowski@intel.com\u003e\nSigned-off-by: Dan Williams \u003cdan.j.williams@intel.com\u003e\n"
    },
    {
      "commit": "f701d589aa34d7531183c9ac6f7713ba14212b02",
      "tree": "d388cd7fa54c520f12233470a35ebb0676677e7a",
      "parents": [
        "18b0033491f584a2d79697da714b1ef9d6b27d22"
      ],
      "author": {
        "name": "Dan Williams",
        "email": "dan.j.williams@intel.com",
        "time": "Tue Mar 31 15:09:39 2009 +1100"
      },
      "committer": {
        "name": "NeilBrown",
        "email": "neilb@suse.de",
        "time": "Tue Mar 31 15:09:39 2009 +1100"
      },
      "message": "md/raid6: move raid6 data processing to raid6_pq.ko\n\nMove the raid6 data processing routines into a standalone module\n(raid6_pq) to prepare them to be called from async_tx wrappers and other\nnon-md drivers/modules.  This precludes a circular dependency of raid456\nneeding the async modules for data processing while those modules in\nturn depend on raid456 for the base level synchronous raid6 routines.\n\nTo support this move:\n1/ The exportable definitions in raid6.h move to include/linux/raid/pq.h\n2/ The raid6_call, recovery calls, and table symbols are exported\n3/ Extra #ifdef __KERNEL__ statements to enable the userspace raid6test to\n   compile\n\nSigned-off-by: Dan Williams \u003cdan.j.williams@intel.com\u003e\nSigned-off-by: NeilBrown \u003cneilb@suse.de\u003e\n"
    },
    {
      "commit": "43b2e5d86d8bdd77386226db0bc961529492c043",
      "tree": "601a885b1410324678cf319eee77cc54a02f2cf3",
      "parents": [
        "bff61975b3d6c18ee31457cc5b4d73042f44915f"
      ],
      "author": {
        "name": "NeilBrown",
        "email": "neilb@suse.de",
        "time": "Tue Mar 31 14:33:13 2009 +1100"
      },
      "committer": {
        "name": "NeilBrown",
        "email": "neilb@suse.de",
        "time": "Tue Mar 31 14:33:13 2009 +1100"
      },
      "message": "md: move md_k.h from include/linux/raid/ to drivers/md/\n\nIt really is nicer to keep related code together..\n\nSigned-off-by: NeilBrown \u003cneilb@suse.de\u003e\n"
    },
    {
      "commit": "bff61975b3d6c18ee31457cc5b4d73042f44915f",
      "tree": "3aff48088b35172e74f56ae54f0b53e76a0c2150",
      "parents": [
        "92022950c6b1bb3da90b2976b20271cdfd98b8a3"
      ],
      "author": {
        "name": "NeilBrown",
        "email": "neilb@suse.de",
        "time": "Tue Mar 31 14:33:13 2009 +1100"
      },
      "committer": {
        "name": "NeilBrown",
        "email": "neilb@suse.de",
        "time": "Tue Mar 31 14:33:13 2009 +1100"
      },
      "message": "md: move lots of #include lines out of .h files and into .c\n\nThis makes the includes more explicit, and is preparation for moving\nmd_k.h to drivers/md/md.h\n\nRemove include/raid/md.h as its only remaining use was to #include\nother files.\n\nSigned-off-by: NeilBrown \u003cneilb@suse.de\u003e\n"
    },
    {
      "commit": "92022950c6b1bb3da90b2976b20271cdfd98b8a3",
      "tree": "5405257242ddcadef6e90ea597289558de4e03f2",
      "parents": [
        "8b2b5c217c20b5460218ab8731295f2e46c7dd29"
      ],
      "author": {
        "name": "NeilBrown",
        "email": "neilb@suse.de",
        "time": "Tue Mar 31 14:33:13 2009 +1100"
      },
      "committer": {
        "name": "NeilBrown",
        "email": "neilb@suse.de",
        "time": "Tue Mar 31 14:33:13 2009 +1100"
      },
      "message": "md: move most content from md.h to md_k.h\n\nThe extern function definitions are kernel-internal definitions, so\nthey belong in md_k.h\n\nThe MD_*_VERSION values could reasonably go in a number of places,\nbut md_u.h seems most reasonable.\n\nThis leaves almost nothing in md.h.  It will go soon.\n\nSigned-off-by: NeilBrown \u003cneilb@suse.de\u003e\n"
    },
    {
      "commit": "8b2b5c217c20b5460218ab8731295f2e46c7dd29",
      "tree": "f5da8b06b3d2a53e80c31e0c0aa386e381b3a841",
      "parents": [
        "ef740c372dfd80e706dbf955d4e4aedda6c0c148"
      ],
      "author": {
        "name": "NeilBrown",
        "email": "neilb@suse.de",
        "time": "Tue Mar 31 14:27:03 2009 +1100"
      },
      "committer": {
        "name": "NeilBrown",
        "email": "neilb@suse.de",
        "time": "Tue Mar 31 14:27:03 2009 +1100"
      },
      "message": "md: move LEVEL_* definition from md_k.h to md_u.h\n\n.. as they are part of the user-space interface.\nAlso move MdpMinorShift into there so we can remove duplication.\n\nLastly move mdp_major in.  It is less obviously part of the user-space\ninterface, but do_mounts_md.c uses it, and it is acting a bit like\nuser-space.\n\nSigned-off-by: NeilBrown \u003cneilb@suse.de\u003e\n"
    },
    {
      "commit": "ef740c372dfd80e706dbf955d4e4aedda6c0c148",
      "tree": "8d9ef9db346ee1ba319a125c9de83cdde049510d",
      "parents": [
        "2a40a8aed083d988df6822bb9b1b08fb7ce21e1d"
      ],
      "author": {
        "name": "Christoph Hellwig",
        "email": "hch@lst.de",
        "time": "Tue Mar 31 14:27:03 2009 +1100"
      },
      "committer": {
        "name": "NeilBrown",
        "email": "neilb@suse.de",
        "time": "Tue Mar 31 14:27:03 2009 +1100"
      },
      "message": "md: move headers out of include/linux/raid/\n\nMove the headers with the local structures for the disciplines and\nbitmap.h into drivers/md/ so that they are more easily grepable for\nhacking and not far away.  md.h is left where it is for now as there\nare some uses from the outside.\n\nSigned-off-by: Christoph Hellwig \u003chch@lst.de\u003e\nSigned-off-by: NeilBrown \u003cneilb@suse.de\u003e\n"
    },
    {
      "commit": "eea1bf384e05b5ab747f8530c4fba9e9e6907fff",
      "tree": "ed4c05f8bd7e5805092e9c6a2c257ca71dc0fe2d",
      "parents": [
        "99adcd9d67aaf04e28f5ae96df280f236bde4b66"
      ],
      "author": {
        "name": "NeilBrown",
        "email": "neilb@suse.de",
        "time": "Tue Mar 31 14:27:02 2009 +1100"
      },
      "committer": {
        "name": "NeilBrown",
        "email": "neilb@suse.de",
        "time": "Tue Mar 31 14:27:02 2009 +1100"
      },
      "message": "md: Fix is_mddev_idle test (again).\n\nThere are two problems with is_mddev_idle.\n\n1/ sync_io is \u0027atomic_t\u0027 and hence \u0027int\u0027.  curr_events and all the\n   rest are \u0027long\u0027.\n   So if sync_io were to wrap on a 64bit host, the value of\n   curr_events would go very negative suddenly, and take a very\n   long time to return to positive.\n\n   So do all calculations as \u0027int\u0027.  That gives us plenty of precision\n   for what we need.\n\n2/ To initialise rdev-\u003elast_events we simply call is_mddev_idle, on\n   the assumption that it will make sure that last_events is in a\n   suitable range.  It used to do this, but now it does not.\n   So now we need to be more explicit about initialisation.\n\nSigned-off-by: NeilBrown \u003cneilb@suse.de\u003e\n"
    },
    {
      "commit": "0f571515c332e00b3515dbe0859ceaa30ab66e00",
      "tree": "6d67c555714264dda749e387cee6738f770abc5d",
      "parents": [
        "e44e0aa3cfa97cddff01704751a4b25151830c72"
      ],
      "author": {
        "name": "Atsushi Nemoto",
        "email": "anemo@mba.ocn.ne.jp",
        "time": "Fri Mar 06 20:07:14 2009 +0900"
      },
      "committer": {
        "name": "Dan Williams",
        "email": "dan.j.williams@intel.com",
        "time": "Thu Mar 26 09:48:09 2009 -0700"
      },
      "message": "dmaengine: Add privatecnt to revert DMA_PRIVATE property\n\nCurrently dma_request_channel() set DMA_PRIVATE capability but never\nclear it.  So if a public channel was once grabbed by\ndma_request_channel(), the device stay PRIVATE forever.  Add\nprivatecnt member to dma_device to correctly revert it.\n\n[lg@denx.de: fix bad usage of \u0027chan\u0027 in dma_async_device_register]\nSigned-off-by: Atsushi Nemoto \u003canemo@mba.ocn.ne.jp\u003e\nAcked-by: Maciej Sosnowski \u003cmaciej.sosnowski@intel.com\u003e\nSigned-off-by: Dan Williams \u003cdan.j.williams@intel.com\u003e\n"
    },
    {
      "commit": "729b5d1b8ec72c28e99840b3f300ba67726e3ab9",
      "tree": "8eac6444ea80bf05f461eb77243f56b008ee5083",
      "parents": [
        "06164f3194e01ea4c76941ac60f541d656c8975f"
      ],
      "author": {
        "name": "Dan Williams",
        "email": "dan.j.williams@intel.com",
        "time": "Wed Mar 25 09:13:25 2009 -0700"
      },
      "committer": {
        "name": "Dan Williams",
        "email": "dan.j.williams@intel.com",
        "time": "Wed Mar 25 09:13:25 2009 -0700"
      },
      "message": "dmaengine: allow dma support for async_tx to be toggled\n\nProvide a config option for blocking the allocation of dma channels to\nthe async_tx api.\n\nSigned-off-by: Dan Williams \u003cdan.j.williams@intel.com\u003e\n"
    },
    {
      "commit": "06164f3194e01ea4c76941ac60f541d656c8975f",
      "tree": "0a5edc96e053ce0cf90139b48bc2ca7c7c130186",
      "parents": [
        "54aee6a5f560d0e1bf3f39987c6ebe06daeb0ce1"
      ],
      "author": {
        "name": "Dan Williams",
        "email": "dan.j.williams@intel.com",
        "time": "Wed Mar 25 09:13:25 2009 -0700"
      },
      "committer": {
        "name": "Dan Williams",
        "email": "dan.j.williams@intel.com",
        "time": "Wed Mar 25 09:13:25 2009 -0700"
      },
      "message": "async_tx: provide __async_inline for HAS_DMA\u003dn archs\n\nTo allow an async_tx routine to be compiled away on HAS_DMA\u003dn arch it\nneeds to be declared __always_inline otherwise the compiler may emit\ncode and cause a link error.\n\nSigned-off-by: Dan Williams \u003cdan.j.williams@intel.com\u003e\n"
    },
    {
      "commit": "54aee6a5f560d0e1bf3f39987c6ebe06daeb0ce1",
      "tree": "b1cab9a10387f12305f5e92ce5e91eabdfc78367",
      "parents": [
        "ccccce229c633a92c42cd1a40c0738d7b0d12644"
      ],
      "author": {
        "name": "Dan Williams",
        "email": "dan.j.williams@intel.com",
        "time": "Wed Mar 25 09:13:24 2009 -0700"
      },
      "committer": {
        "name": "Dan Williams",
        "email": "dan.j.williams@intel.com",
        "time": "Wed Mar 25 09:13:24 2009 -0700"
      },
      "message": "dmaengine: kill some unused headers\n\nThe dmaengine redux left some unneeded headers in\ninclude/linux/dmaengine.h, clean them up.\n\nSigned-off-by: Dan Williams \u003cdan.j.williams@intel.com\u003e\n\n"
    },
    {
      "commit": "45e575ab9bfada5a5ef1b6174f8e749b1ecf0864",
      "tree": "00d1346d11fe554cf505b287eb2b9445d97c3596",
      "parents": [
        "76e6eee03353f01bfca707d4dbb1f10a4ee27dc0"
      ],
      "author": {
        "name": "Rusty Russell",
        "email": "rusty@rustcorp.com.au",
        "time": "Thu Mar 12 14:35:44 2009 -0600"
      },
      "committer": {
        "name": "Rusty Russell",
        "email": "rusty@rustcorp.com.au",
        "time": "Thu Mar 12 14:35:44 2009 +1030"
      },
      "message": "cpumask: mm_cpumask for accessing the struct mm_struct\u0027s cpu_vm_mask.\n\nThis allows us to change the representation (to a dangling bitmap or\ncpumask_var_t) without breaking all the callers: they can use\nmm_cpumask() now and won\u0027t see a difference as the changes roll into\nlinux-next.\n\nSigned-off-by: Rusty Russell \u003crusty@rustcorp.com.au\u003e\n"
    },
    {
      "commit": "76e6eee03353f01bfca707d4dbb1f10a4ee27dc0",
      "tree": "6b0378b1da6ae16e04d19f3c742b7863716b8e14",
      "parents": [
        "99adcd9d67aaf04e28f5ae96df280f236bde4b66"
      ],
      "author": {
        "name": "Rusty Russell",
        "email": "rusty@rustcorp.com.au",
        "time": "Thu Mar 12 14:35:43 2009 -0600"
      },
      "committer": {
        "name": "Rusty Russell",
        "email": "rusty@rustcorp.com.au",
        "time": "Thu Mar 12 14:35:44 2009 +1030"
      },
      "message": "cpumask: tsk_cpumask for accessing the struct task_struct\u0027s cpus_allowed.\n\nThis allows us to change the representation (to a dangling bitmap or\ncpumask_var_t) without breaking all the callers: they can use\ntsk_cpumask() now and won\u0027t see a difference as the changes roll into\nlinux-next.\n\nSigned-off-by: Rusty Russell \u003crusty@rustcorp.com.au\u003e\n"
    },
    {
      "commit": "99adcd9d67aaf04e28f5ae96df280f236bde4b66",
      "tree": "4fd43e20697199bd2884a21a8d469f0ff6632cbd",
      "parents": [
        "2d5516cbb9daf7d0e342a2e3b0fc6f8c39a81205",
        "753b7aea8e4611433c13ac157f944d8b4bf42482"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Mar 09 13:23:59 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Mar 09 13:23:59 2009 -0700"
      },
      "message": "Merge branch \u0027fixes\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/davej/cpufreq\n\n* \u0027fixes\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/davej/cpufreq:\n  [CPUFREQ] Add p4-clockmod sysfs-ui removal to feature-removal schedule.\n  Revert \"[CPUFREQ] Disable sysfs ui for p4-clockmod.\"\n"
    },
    {
      "commit": "129f8ae9b1b5be94517da76009ea956e89104ce8",
      "tree": "f79cbe8397dd2578349d3aefe25dc72f26eab291",
      "parents": [
        "694593e3374a67d95ece6a275a1f181644c2c4d8"
      ],
      "author": {
        "name": "Dave Jones",
        "email": "davej@redhat.com",
        "time": "Mon Mar 09 15:07:33 2009 -0400"
      },
      "committer": {
        "name": "Dave Jones",
        "email": "davej@redhat.com",
        "time": "Mon Mar 09 15:07:33 2009 -0400"
      },
      "message": "Revert \"[CPUFREQ] Disable sysfs ui for p4-clockmod.\"\n\nThis reverts commit e088e4c9cdb618675874becb91b2fd581ee707e6.\n\nRemoving the sysfs interface for p4-clockmod was flagged as a\nregression in bug 12826.\n\nCourse of action:\n - Find out the remaining causes of overheating, and fix them\n   if possible. ACPI should be doing the right thing automatically.\n   If it isn\u0027t, we need to fix that.\n - mark p4-clockmod ui as deprecated\n - try again with the removal in six months.\n\nIt\u0027s not really feasible to printk about the deprecation, because\nit needs to happen at all the sysfs entry points, which means adding\na lot of strcmp(\"p4-clockmod\".. calls to the core, which.. bleuch.\n\nSigned-off-by: Dave Jones \u003cdavej@redhat.com\u003e\n"
    },
    {
      "commit": "df0b4a5080ca668636831b641a6356500fb5c637",
      "tree": "aaab82b392b4e1fdc672ab55efb017c91fdc6616",
      "parents": [
        "39a3478c1c0122640b1a0ead0d7cccd0804b1750",
        "c0350024723b4a69e38655816484d934aca8eb30"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Mar 09 09:15:40 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Mar 09 09:15:40 2009 -0700"
      },
      "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: (29 commits)\n  p54: fix race condition in memory management\n  cfg80211: test before subtraction on unsigned\n  iwlwifi: fix error flow in iwl*_pci_probe\n  rt2x00 : more devices to rt73usb.c\n  rt2x00 : more devices to rt2500usb.c\n  bonding: Fix device passed into -\u003endo_neigh_setup().\n  vlan: Fix vlan-in-vlan crashes.\n  net: Fix missing dev-\u003eneigh_setup in register_netdevice().\n  tmspci: fix request_irq race\n  pkt_sched: act_police: Fix a rate estimator test.\n  tg3: Fix 5906 link problems\n  SCTP: change sctp_ctl_sock_init() to try IPv4 if IPv6 fails\n  IPv6: add \"disable\" module parameter support to ipv6.ko\n  sungem: another error printed one too early\n  aoe: error printed 1 too early\n  net pcmcia: worklimit reaches -1\n  net: more timeouts that reach -1\n  net: fix tokenring license\n  dm9601: new vendor/product IDs\n  netlink: invert error code in netlink_set_err()\n  ...\n"
    },
    {
      "commit": "5dc18f51a2c06ddab708184e30b7967fb71c1784",
      "tree": "b080f2a651f694f523491487bf92d28c3c63d981",
      "parents": [
        "fd6ec5f3acfe7e94469d83374b83ff183953fa45",
        "7cbd4877e5b167b56a3d6033b926a9f925186e12"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun Mar 08 10:23:05 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun Mar 08 10:23:05 2009 -0700"
      },
      "message": "Merge branch \u0027fixes\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/djbw/async_tx\n\n* \u0027fixes\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/djbw/async_tx:\n  dmatest: fix use after free in dmatest_exit\n  ipu_idmac: fix spinlock type\n  iop-adma, mv_xor: fix mem leak on self-test setup failure\n  fsldma: fix off by one in dma_halt\n  I/OAT: fail self-test if callback test reaches timeout\n  I/OAT: update driver version and copyright dates\n  I/OAT: list usage cleanup\n  I/OAT: set tcp_dma_copybreak to 256k for I/OAT ver.3\n  I/OAT: cancel watchdog before dma remove\n  I/OAT: fail initialization on zero channels detection\n  I/OAT: do not set DCACTRL_CMPL_WRITE_ENABLE for I/OAT ver.3\n  I/OAT: add verification for proper APICID_TAG_MAP setting by BIOS\n  dmaengine: update kerneldoc\n"
    },
    {
      "commit": "fd6ec5f3acfe7e94469d83374b83ff183953fa45",
      "tree": "6f7aa80a8e95c054424d9e8229da3df0dd694ecd",
      "parents": [
        "83d5a325107cd0befa2b863e795675bc8ff881d7",
        "d42ad15b759d05a87f22b484af63987eff38ea88"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun Mar 08 10:22:22 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun Mar 08 10:22:22 2009 -0700"
      },
      "message": "Merge git://git.kernel.org/pub/scm/linux/kernel/git/bart/ide-2.6\n\n* git://git.kernel.org/pub/scm/linux/kernel/git/bart/ide-2.6:\n  ata: add CFA specific identify data words\n  remove stale comment from \u003clinux/hdreg.h\u003e\n  AT91: initialize Compact Flash on AT91SAM9263 cpu\n  ide: add at91_ide driver\n  ide: allow to wrap interrupt handler\n  ide-iops: fix odd-length ATAPI PIO transfers\n  ide: NULL noise: drivers/ide/ide-*.c\n  ide: expiry() returns int, negative expiry() return values won\u0027t be noticed\n"
    },
    {
      "commit": "83d5a325107cd0befa2b863e795675bc8ff881d7",
      "tree": "64cd1a69d726b19e70783f2b350baf3f8aa38489",
      "parents": [
        "d0cdb070ced5453fd1790d83c32bdc59d8ff9375",
        "968e594afdbc40b4270f9d4032ae8350475749d6"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun Mar 08 10:22:01 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun Mar 08 10:22:01 2009 -0700"
      },
      "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: Don\u0027t trust current capacity values in identify words 57-58\n  libata: make sure port is thawed when skipping resets\n  sata_nv: fix module parameter description\n  ahci: Add the Device IDs for MCP89 and remove IDs of MCP7B to/from ahci.c\n  libata: don\u0027t use on-stack sense buffer\n  libata: align ap-\u003esector_buf\n  libata: fix dma_unmap_sg misuse\n  libata: change drive ready wait after hard reset to 5s\n"
    },
    {
      "commit": "2a50b2560ee956808da0b644cb529608dee65274",
      "tree": "7065f72e76919f571580378b3758acc1355564dd",
      "parents": [
        "ba933beb11b46b6d90d53b7220858148d8687ab1",
        "ab96ddec7213004b632d24dc2cdcd2df5f16f50b"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun Mar 08 10:14:19 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun Mar 08 10:14:19 2009 -0700"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/dtor/input\n\n* \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/dtor/input:\n  Input: serio - fix protocol number for TouchIT213\n"
    },
    {
      "commit": "ab96ddec7213004b632d24dc2cdcd2df5f16f50b",
      "tree": "49ed4e8989cd16a033b5d4318a6d1fbd24e8c416",
      "parents": [
        "9ab7b25e6a30d2292bd6d4913b71c918ee1e21b4"
      ],
      "author": {
        "name": "Dmitry Torokhov",
        "email": "dmitry.torokhov@gmail.com",
        "time": "Sat Mar 07 13:39:22 2009 -0800"
      },
      "committer": {
        "name": "Dmitry Torokhov",
        "email": "dmitry.torokhov@gmail.com",
        "time": "Sat Mar 07 18:41:38 2009 -0800"
      },
      "message": "Input: serio - fix protocol number for TouchIT213\n\nProtocol 0x37 has been reserved for iNexio devices and Sahara\nwas supposed to get 0x38.\n\nReported-by: Claudio Nieder \u003cprivate@claudio.ch\u003e\nSigned-off-by: Dmitry Torokhov \u003cdtor@mail.ru\u003e\n"
    },
    {
      "commit": "d42ad15b759d05a87f22b484af63987eff38ea88",
      "tree": "51ee423598e434624b8dc0db41d9b88022ea4833",
      "parents": [
        "ebcad5aaea26da3cb2ca90b7f31a67a027eb60db"
      ],
      "author": {
        "name": "Sergei Shtylyov",
        "email": "sshtylyov@ru.mvista.com",
        "time": "Thu Mar 05 17:20:55 2009 +0100"
      },
      "committer": {
        "name": "Bartlomiej Zolnierkiewicz",
        "email": "bzolnier@gmail.com",
        "time": "Thu Mar 05 17:20:55 2009 +0100"
      },
      "message": "ata: add CFA specific identify data words\n\nDeclare CFA specific identify data words 162 and 163 for future use.\n\nSigned-off-by: Sergei Shtylyov \u003csshtylyov@ru.mvista.com\u003e\nSigned-off-by: Jeff Garzik \u003cjgarzik@redhat.com\u003e\n[bart: update patch summary/description]\nSigned-off-by: Bartlomiej Zolnierkiewicz \u003cbzolnier@gmail.com\u003e\n"
    },
    {
      "commit": "ebcad5aaea26da3cb2ca90b7f31a67a027eb60db",
      "tree": "cff7c96fa8573c241074689cf8c399e71bc97fb5",
      "parents": [
        "e565f206082a725108a75bcf00bbe3db21a56474"
      ],
      "author": {
        "name": "Bartlomiej Zolnierkiewicz",
        "email": "bzolnier@gmail.com",
        "time": "Thu Mar 05 16:10:59 2009 +0100"
      },
      "committer": {
        "name": "Bartlomiej Zolnierkiewicz",
        "email": "bzolnier@gmail.com",
        "time": "Thu Mar 05 16:10:59 2009 +0100"
      },
      "message": "remove stale comment from \u003clinux/hdreg.h\u003e\n\nHDIO_GET_IDENTITY returns 256 words currently.\n\nNoticed by Norman Diamond.\n\nSigned-off-by: Bartlomiej Zolnierkiewicz \u003cbzolnier@gmail.com\u003e\n"
    },
    {
      "commit": "849d7130001ab740a5a4778a561049841fdd77c9",
      "tree": "c7031ed3d3aa24270d0f001d3616698aeb3fe39a",
      "parents": [
        "a509538d4fb4f99cdf0a095213d57cc3b2347615"
      ],
      "author": {
        "name": "Stanislaw Gruszka",
        "email": "stf_xl@wp.pl",
        "time": "Thu Mar 05 16:10:57 2009 +0100"
      },
      "committer": {
        "name": "Bartlomiej Zolnierkiewicz",
        "email": "bzolnier@gmail.com",
        "time": "Thu Mar 05 16:10:57 2009 +0100"
      },
      "message": "ide: allow to wrap interrupt handler\n\nSigned-off-by: Stanislaw Gruszka \u003cstf_xl@wp.pl\u003e\nCc: Andrew Victor \u003clinux@maxim.org.za\u003e\n[bart: minor checkpatch.pl / CodingStyle fixups]\nSigned-off-by: Bartlomiej Zolnierkiewicz \u003cbzolnier@gmail.com\u003e\n"
    },
    {
      "commit": "84bda12af31f930e4200c5244aa111de2485d7b0",
      "tree": "08d214bf7a1ce56e8c994e7970513bfb4b215e3d",
      "parents": [
        "5825627c9463581fd9e70f8285685889ae5bb9bb"
      ],
      "author": {
        "name": "Tejun Heo",
        "email": "tj@kernel.org",
        "time": "Mon Mar 02 18:53:26 2009 +0900"
      },
      "committer": {
        "name": "Jeff Garzik",
        "email": "jgarzik@redhat.com",
        "time": "Thu Mar 05 07:25:02 2009 -0500"
      },
      "message": "libata: align ap-\u003esector_buf\n\nap-\u003esector_buf is used as DMA target and should at least be aligned on\ncacheline.  This caused problems on some embedded machines.\n\nSigned-off-by: Tejun Heo \u003ctj@kernel.org\u003e\nSigned-off-by: Jeff Garzik \u003cjgarzik@redhat.com\u003e\n"
    },
    {
      "commit": "5825627c9463581fd9e70f8285685889ae5bb9bb",
      "tree": "321a20a0e25aee8f32254b13730f423f6b434486",
      "parents": [
        "e7d3ef13d52a126438f687a1a32da65ff926ed57"
      ],
      "author": {
        "name": "FUJITA Tomonori",
        "email": "fujita.tomonori@lab.ntt.co.jp",
        "time": "Fri Feb 27 17:35:43 2009 +0900"
      },
      "committer": {
        "name": "Jeff Garzik",
        "email": "jgarzik@redhat.com",
        "time": "Thu Mar 05 07:24:57 2009 -0500"
      },
      "message": "libata: fix dma_unmap_sg misuse\n\nlibata passes the returned value of dma_map_sg() to\ndma_unmap_sg(),which is the misuse of dma_unmap_sg().\n\nDMA-mapping.txt says:\n\nTo unmap a scatterlist, just call:\n\n\tpci_unmap_sg(pdev, sglist, nents, direction);\n\nAgain, make sure DMA activity has already finished.\n\nPLEASE NOTE:  The \u0027nents\u0027 argument to the pci_unmap_sg call must be\n              the _same_ one you passed into the pci_map_sg call,\n\t      it should _NOT_ be the \u0027count\u0027 value _returned_ from the\n              pci_map_sg call.\n\nSigned-off-by: FUJITA Tomonori \u003cfujita.tomonori@lab.ntt.co.jp\u003e\nAcked-by: Bartlomiej Zolnierkiewicz \u003cbzolnier@gmail.com\u003e\nAcked-by: Tejun Heo \u003ctj@kernel.org\u003e\nSigned-off-by: Jeff Garzik \u003cjgarzik@redhat.com\u003e\n"
    },
    {
      "commit": "e7d3ef13d52a126438f687a1a32da65ff926ed57",
      "tree": "b4eb90e422f33fe6bb8756fcaadbd19863eae649",
      "parents": [
        "559595a985e106d2fa9f0c79b7f5805453fed593"
      ],
      "author": {
        "name": "Stuart Hayes",
        "email": "stuart_hayes@dell.com",
        "time": "Wed Mar 04 11:59:46 2009 -0800"
      },
      "committer": {
        "name": "Jeff Garzik",
        "email": "jgarzik@redhat.com",
        "time": "Thu Mar 05 07:24:42 2009 -0500"
      },
      "message": "libata: change drive ready wait after hard reset to 5s\n\nThis fixes problems during resume with drives that take longer than 1s to\nbe ready.  The ATA-6 spec appears to allow 5 seconds for a drive to be\nready.\n\nOn one affected system, this patch changes \"PM: resume devices took...\"\nmessage from 17 seconds to 4 seconds, and gets rid of a lot of ugly\ntimeout/error messages.\n\nWithout this patch, the libata code moves on after 1s, tries to send a\nsoft reset (which the drive doesn\u0027t see because it isn\u0027t ready) which also\ntimes out, then an IDENTIFY command is sent to the drive which times out,\nand finally the error handler will try to send another hard reset which\nwill finally get things working.\n\nSigned-off-by: Stuart Hayes \u003cstuart_hayes@dell.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Jeff Garzik \u003cjgarzik@redhat.com\u003e\n"
    },
    {
      "commit": "77827a7cf3aa415f8afec6d9d0537dda8de90ef1",
      "tree": "503ab81e2b997e3625360b380f1cd18f923a6454",
      "parents": [
        "9d40bbda599def1e1d155d7f7dca14fe8744bd2b",
        "559595a985e106d2fa9f0c79b7f5805453fed593"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Mar 04 23:59:54 2009 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Mar 04 23:59:54 2009 -0800"
      },
      "message": "Merge branch \u0027master\u0027 of /home/davem/src/GIT/linux-2.6/\n"
    },
    {
      "commit": "9d40bbda599def1e1d155d7f7dca14fe8744bd2b",
      "tree": "d246fbaec294830ecab0bb4b3b38d925abb5ffd8",
      "parents": [
        "54acd0efab072cb70e87206329d561b297f93bbb"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Mar 04 23:46:25 2009 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Mar 04 23:46:25 2009 -0800"
      },
      "message": "vlan: Fix vlan-in-vlan crashes.\n\nAs analyzed by Patrick McHardy, vlan needs to reset it\u0027s\nnetdev_ops pointer in it\u0027s -\u003einit() function but this\nleaves the compat method pointers stale.\n\nAdd a netdev_resync_ops() and call it from the vlan code.\n\nAny other driver which changes -\u003enetdev_ops after register_netdevice()\nwill need to call this new function after doing so too.\n\nWith help from Patrick McHardy.\n\nTested-by: Patrick McHardy \u003ckaber@trash.net\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "219f170a85fee524fa528ef75a0432b79af95d0b",
      "tree": "13489998c59c5d7ac6d46b7835c7f4a6ccfab2e6",
      "parents": [
        "3024e4a99744f5b59704a6570524a312f94f010f",
        "54e991242850edc8c53f71fa5aa3ba7a93ce38f5"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Mar 03 14:33:20 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Mar 03 14:33:20 2009 -0800"
      },
      "message": "Merge branch \u0027sched-fixes-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip\n\n* \u0027sched-fixes-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:\n  sched: don\u0027t allow setuid to succeed if the user does not have rt bandwidth\n  sched_rt: don\u0027t start timer when rt bandwidth disabled\n"
    },
    {
      "commit": "b24746c7be75384d182845375c96433d713981bb",
      "tree": "fdb0371d9e59c94e18c946a88c4aa3bcfa4af9b1",
      "parents": [
        "f41bf2ab998daaa2ac27348d5813e0ae21c57ded",
        "a682604838763981613e42015cd0e39f2989d6bb"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Mar 03 14:32:04 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Mar 03 14:32:04 2009 -0800"
      },
      "message": "Merge branch \u0027core-fixes-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip\n\n* \u0027core-fixes-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:\n  rcu: Teach RCU that idle task is not quiscent state at boot\n"
    },
    {
      "commit": "2d44947a56f7a567f2e9250dc458a6288d774f9c",
      "tree": "9156958b53ef544b314c9af708f43a6e425dfc72",
      "parents": [
        "359aa09be9b2b343e01306cb4a6f29d7159d7498",
        "5ce04e3de8c36ba37c56e94e3c4dc7973c7f546c"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Mar 02 15:47:01 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Mar 02 15:47:01 2009 -0800"
      },
      "message": "Merge branch \u0027x86-fixes-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip\n\n* \u0027x86-fixes-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:\n  fix warning in io_mapping_map_wc()\n  x86: i915 needs pgprot_writecombine() and is_io_mapping_possible()\n"
    },
    {
      "commit": "5ce04e3de8c36ba37c56e94e3c4dc7973c7f546c",
      "tree": "3a87dd2eeb07fe9fc5eaa10479a14cfbe9d07008",
      "parents": [
        "92b9af9e4f144535c65aee673cfad309f25fa465"
      ],
      "author": {
        "name": "Pallipadi, Venkatesh",
        "email": "venkatesh.pallipadi@intel.com",
        "time": "Sun Mar 01 08:53:27 2009 -0800"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Mar 02 09:43:32 2009 +0100"
      },
      "message": "fix warning in io_mapping_map_wc()\n\nSigned-off-by: Venkatesh Pallipadi \u003cvenkatesh.pallipadi@intel.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "709ab3261e3ed789c0bb31c6ab53c9eccb276522",
      "tree": "206e2d9fb761b01ff33c6633ed9f5a668f12422a",
      "parents": [
        "5c2522218059ca1f4174a568923b988aad3ddfda"
      ],
      "author": {
        "name": "Chris Leech",
        "email": "christopher.leech@intel.com",
        "time": "Fri Feb 27 10:01:42 2009 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun Mar 01 00:19:36 2009 -0800"
      },
      "message": "net headers: export dcbnl.h\n\nThe DCB netlink interface is required for building the userspace tools\navailable at e1000.sourceforge.net\n\nSigned-off-by: Chris Leech \u003cchristopher.leech@intel.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "5c2522218059ca1f4174a568923b988aad3ddfda",
      "tree": "37f76dee62bbfb94b42a8f38b372942ef5c803c4",
      "parents": [
        "4ead443163b798661c2a2ede5e512e116a9e41e7"
      ],
      "author": {
        "name": "Chris Leech",
        "email": "christopher.leech@intel.com",
        "time": "Fri Feb 27 10:01:36 2009 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun Mar 01 00:19:35 2009 -0800"
      },
      "message": "net headers: cleanup dcbnl.h\n\n1) add an include for \u003clinux/types.h\u003e\n2) change dcbmsg.dcb_family from unsigned char to __u8 to be more\n   consistent with use of kernel types\n\nSigned-off-by: Chris Leech \u003cchristopher.leech@intel.com\u003e\nAcked-by: Sam Ravnborg \u003csam@ravnborg.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "18963caaf55240d6a0491bdb27b7fef2882ffb15",
      "tree": "d0e4365cae0ce401ba826809f4eef0bd755f4f2d",
      "parents": [
        "98f8948f13b4d27c3695c49ac9a970a77166f9ee",
        "778ef1e6cbb049c9bcbf405936ee6f2b6e451892"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sat Feb 28 15:36:58 2009 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sat Feb 28 15:36:58 2009 -0800"
      },
      "message": "Merge branch \u0027master\u0027 of /home/davem/src/GIT/linux-2.6/\n"
    },
    {
      "commit": "535d8e8f19376518e52e64f511440e502acda150",
      "tree": "06c1ab74b5e7b319a2474cae73cb1a6e77d281e0",
      "parents": [
        "6febf65b2965858507e4d55afad20b24b2ad9a91",
        "f6be37fdc62d0c0214bc49815d1180ebfbd716e2"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Feb 27 16:43:05 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Feb 27 16:43:05 2009 -0800"
      },
      "message": "Merge branch \u0027x86-fixes-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip\n\n* \u0027x86-fixes-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:\n  x86: enable DMAR by default\n  xen: disable interrupts early, as start_kernel expects\n  gpu/drm, x86, PAT: io_mapping_create_wc and resource_size_t\n  gpu/drm, x86, PAT: Handle io_mapping_create_wc() errors in a clean way\n  x86, Voyager: fix compile by lifting the degeneracy of phys_cpu_present_map\n  x86, doc: fix references to Documentation/x86/i386/boot.txt\n"
    },
    {
      "commit": "5170836679185357dc1b7660bad13287b39e1e33",
      "tree": "0b470820e11df7c7eef7e3161657aefe90c7c35e",
      "parents": [
        "8ca2f156b06bdcbfd1ab543355279246d05e2499"
      ],
      "author": {
        "name": "David Howells",
        "email": "dhowells@redhat.com",
        "time": "Fri Feb 27 14:03:03 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Feb 27 16:26:21 2009 -0800"
      },
      "message": "Fix recursive lock in free_uid()/free_user_ns()\n\nfree_uid() and free_user_ns() are corecursive when CONFIG_USER_SCHED\u003dn,\nbut free_user_ns() is called from free_uid() by way of uid_hash_remove(),\nwhich requires uidhash_lock to be held.  free_user_ns() then calls\nfree_uid() to complete the destruction.\n\nFix this by deferring the destruction of the user_namespace.\n\nSigned-off-by: David Howells \u003cdhowells@redhat.com\u003e\nAcked-by: Serge Hallyn \u003cserue@us.ibm.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "54e991242850edc8c53f71fa5aa3ba7a93ce38f5",
      "tree": "7f136214aab690a8ee4a294ca9c1a7e01de0dc49",
      "parents": [
        "cac64d00c256e65776d575e82aaf540632b66178"
      ],
      "author": {
        "name": "Dhaval Giani",
        "email": "dhaval@linux.vnet.ibm.com",
        "time": "Fri Feb 27 15:13:54 2009 +0530"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Feb 27 11:11:53 2009 +0100"
      },
      "message": "sched: don\u0027t allow setuid to succeed if the user does not have rt bandwidth\n\nImpact: fix hung task with certain (non-default) rt-limit settings\n\nCorey Hickey reported that on using setuid to change the uid of a\nrt process, the process would be unkillable and not be running.\nThis is because there was no rt runtime for that user group. Add\nin a check to see if a user can attach an rt task to its task group.\nOn failure, return EINVAL, which is also returned in\nCONFIG_CGROUP_SCHED.\n\nReported-by: Corey Hickey \u003cbugfood-ml@fatooh.org\u003e\nSigned-off-by: Dhaval Giani \u003cdhaval@linux.vnet.ibm.com\u003e\nAcked-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "1e42807918d17e8c93bf14fbb74be84b141334c1",
      "tree": "55b15f0f6b2c666efeb938d064f24fdd268faf40",
      "parents": [
        "5e4c91c84b194b26cf592779e451f4b5be777cba"
      ],
      "author": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Mon Feb 23 09:03:10 2009 +0100"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Thu Feb 26 10:45:48 2009 +0100"
      },
      "message": "block: reduce stack footprint of blk_recount_segments()\n\nblk_recalc_rq_segments() requires a request structure passed in, which\nwe don\u0027t have from blk_recount_segments(). So the latter allocates one on\nthe stack, using \u003e 400 bytes of stack for that. This can cause us to spill\nover one page of stack from ext4 at least:\n\n 0)     4560     400   blk_recount_segments+0x43/0x62\n 1)     4160      32   bio_phys_segments+0x1c/0x24\n 2)     4128      32   blk_rq_bio_prep+0x2a/0xf9\n 3)     4096      32   init_request_from_bio+0xf9/0xfe\n 4)     4064     112   __make_request+0x33c/0x3f6\n 5)     3952     144   generic_make_request+0x2d1/0x321\n 6)     3808      64   submit_bio+0xb9/0xc3\n 7)     3744      48   submit_bh+0xea/0x10e\n 8)     3696     368   ext4_mb_init_cache+0x257/0xa6a [ext4]\n 9)     3328     288   ext4_mb_regular_allocator+0x421/0xcd9 [ext4]\n10)     3040     160   ext4_mb_new_blocks+0x211/0x4b4 [ext4]\n11)     2880     336   ext4_ext_get_blocks+0xb61/0xd45 [ext4]\n12)     2544      96   ext4_get_blocks_wrap+0xf2/0x200 [ext4]\n13)     2448      80   ext4_da_get_block_write+0x6e/0x16b [ext4]\n14)     2368     352   mpage_da_map_blocks+0x7e/0x4b3 [ext4]\n15)     2016     352   ext4_da_writepages+0x2ce/0x43c [ext4]\n16)     1664      32   do_writepages+0x2d/0x3c\n17)     1632     144   __writeback_single_inode+0x162/0x2cd\n18)     1488      96   generic_sync_sb_inodes+0x1e3/0x32b\n19)     1392      16   sync_sb_inodes+0xe/0x10\n20)     1376      48   writeback_inodes+0x69/0xb3\n21)     1328     208   balance_dirty_pages_ratelimited_nr+0x187/0x2f9\n22)     1120     224   generic_file_buffered_write+0x1d4/0x2c4\n23)      896     176   __generic_file_aio_write_nolock+0x35f/0x393\n24)      720      80   generic_file_aio_write+0x6c/0xc8\n25)      640      80   ext4_file_write+0xa9/0x137 [ext4]\n26)      560     320   do_sync_write+0xf0/0x137\n27)      240      48   vfs_write+0xb3/0x13c\n28)      192      64   sys_write+0x4c/0x74\n29)      128     128   system_call_fastpath+0x16/0x1b\n\nSplit the segment counting out into a __blk_recalc_rq_segments() helper\nto avoid allocating an onstack request just for checking the physical\nsegment count.\n\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\n"
    },
    {
      "commit": "a682604838763981613e42015cd0e39f2989d6bb",
      "tree": "29eae425e484edc494807702696c240ce09ba3f5",
      "parents": [
        "694593e3374a67d95ece6a275a1f181644c2c4d8"
      ],
      "author": {
        "name": "Paul E. McKenney",
        "email": "paulmck@linux.vnet.ibm.com",
        "time": "Wed Feb 25 18:03:42 2009 -0800"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Feb 26 04:08:14 2009 +0100"
      },
      "message": "rcu: Teach RCU that idle task is not quiscent state at boot\n\nThis patch fixes a bug located by Vegard Nossum with the aid of\nkmemcheck, updated based on review comments from Nick Piggin,\nIngo Molnar, and Andrew Morton.  And cleans up the variable-name\nand function-name language.  ;-)\n\nThe boot CPU runs in the context of its idle thread during boot-up.\nDuring this time, idle_cpu(0) will always return nonzero, which will\nfool Classic and Hierarchical RCU into deciding that a large chunk of\nthe boot-up sequence is a big long quiescent state.  This in turn causes\nRCU to prematurely end grace periods during this time.\n\nThis patch changes the rcutree.c and rcuclassic.c rcu_check_callbacks()\nfunction to ignore the idle task as a quiescent state until the\nsystem has started up the scheduler in rest_init(), introducing a\nnew non-API function rcu_idle_now_means_idle() to inform RCU of this\ntransition.  RCU maintains an internal rcu_idle_cpu_truthful variable\nto track this state, which is then used by rcu_check_callback() to\ndetermine if it should believe idle_cpu().\n\nBecause this patch has the effect of disallowing RCU grace periods\nduring long stretches of the boot-up sequence, this patch also introduces\nJosh Triplett\u0027s UP-only optimization that makes synchronize_rcu() be a\nno-op if num_online_cpus() returns 1.  This allows boot-time code that\ncalls synchronize_rcu() to proceed normally.  Note, however, that RCU\ncallbacks registered by call_rcu() will likely queue up until later in\nthe boot sequence.  Although rcuclassic and rcutree can also use this\nsame optimization after boot completes, rcupreempt must restrict its\nuse of this optimization to the portion of the boot sequence before the\nscheduler starts up, given that an rcupreempt RCU read-side critical\nsection may be preeempted.\n\nIn addition, this patch takes Nick Piggin\u0027s suggestion to make the\nsystem_state global variable be __read_mostly.\n\nChanges since v4:\n\no\tChanges the name of the introduced function and variable to\n\tbe less emotional.  ;-)\n\nChanges since v3:\n\no\tWARN_ON(nr_context_switches() \u003e 0) to verify that RCU\n\tswitches out of boot-time mode before the first context\n\tswitch, as suggested by Nick Piggin.\n\nChanges since v2:\n\no\tCreated rcu_blocking_is_gp() internal-to-RCU API that\n\tdetermines whether a call to synchronize_rcu() is itself\n\ta grace period.\n\no\tThe definition of rcu_blocking_is_gp() for rcuclassic and\n\trcutree checks to see if but a single CPU is online.\n\no\tThe definition of rcu_blocking_is_gp() for rcupreempt\n\tchecks to see both if but a single CPU is online and if\n\tthe system is still in early boot.\n\n\tThis allows rcupreempt to again work correctly if running\n\ton a single CPU after booting is complete.\n\no\tAdded check to rcupreempt\u0027s synchronize_sched() for there\n\tbeing but one online CPU.\n\nTested all three variants both SMP and !SMP, booted fine, passed a short\nrcutorture test on both x86 and Power.\n\nLocated-by: Vegard Nossum \u003cvegard.nossum@gmail.com\u003e\nTested-by: Vegard Nossum \u003cvegard.nossum@gmail.com\u003e\nTested-by: Paul E. McKenney \u003cpaulmck@linux.vnet.ibm.com\u003e\nSigned-off-by: Paul E. McKenney \u003cpaulmck@linux.vnet.ibm.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "8fed43684174b68f04d01d1210fd00536af790df",
      "tree": "df8d5f87c68526267d0ae320173814ed3f417fd5",
      "parents": [
        "d3dd7107f4d843d0f01d0f77d49a7c5449130577"
      ],
      "author": {
        "name": "Bartlomiej Zolnierkiewicz",
        "email": "bzolnier@gmail.com",
        "time": "Wed Feb 25 20:28:24 2009 +0100"
      },
      "committer": {
        "name": "Bartlomiej Zolnierkiewicz",
        "email": "bzolnier@gmail.com",
        "time": "Wed Feb 25 20:28:24 2009 +0100"
      },
      "message": "ide: fix refcounting in device drivers\n\nDuring host driver module removal del_gendisk() results in a final\nput on drive-\u003egendev and freeing the drive by drive_release_dev().\n\nConvert device drivers from using struct kref to use struct device\nso device driver\u0027s object holds reference on -\u003egendev and prevents\ndrive from prematurely going away.\n\nAlso fix -\u003eremove methods to not erroneously drop reference on a\nhost driver by using only put_device() instead of ide*_put().\n\nReported-by: Stanislaw Gruszka \u003cstf_xl@wp.pl\u003e\nTested-by: Stanislaw Gruszka \u003cstf_xl@wp.pl\u003e\nSigned-off-by: Bartlomiej Zolnierkiewicz \u003cbzolnier@gmail.com\u003e\n"
    },
    {
      "commit": "60042600c57be5737cd9d6869e7144f7fe786274",
      "tree": "8b789dd736a98e3671be6e7c405c4800625fb30d",
      "parents": [
        "6aa03ab06978e97b3e0720f83280d7841051916b",
        "084eb960e81505680a9963665722d1bfd94af6a7"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Feb 25 09:31:21 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Feb 25 09:31:21 2009 -0800"
      },
      "message": "Merge git://git.infradead.org/iommu-2.6\n\n* git://git.infradead.org/iommu-2.6:\n  intel-iommu: fix endless \"Unknown DMAR structure type\" loop\n  VT-d: handle Invalidation Queue Error to avoid system hang\n  intel-iommu: fix build error with INTR_REMAP\u003dy and DMAR\u003dn\n"
    },
    {
      "commit": "4ab0d47d0ab311eb181532c1ecb6d02905685071",
      "tree": "48b1a6cc01b65bab1442e05a971220366f998976",
      "parents": [
        "6644107d57a8fa82b47e4c55da4d9d91a612f29c"
      ],
      "author": {
        "name": "Venkatesh Pallipadi",
        "email": "venkatesh.pallipadi@intel.com",
        "time": "Tue Feb 24 17:35:12 2009 -0800"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Feb 25 13:09:51 2009 +0100"
      },
      "message": "gpu/drm, x86, PAT: io_mapping_create_wc and resource_size_t\n\nio_mapping_create_wc should take a resource_size_t parameter in place of\nunsigned long. With unsigned long, there will be no way to map greater than 4GB\naddress in i386/32 bit.\n\nOn x86, greater than 4GB addresses cannot be mapped on i386 without PAE. Return\nerror for such a case.\n\nPatch also adds a structure for io_mapping, that saves the base, size and\ntype on HAVE_ATOMIC_IOMAP archs, that can be used to verify the offset on\nio_mapping_map calls.\n\nSigned-off-by: Venkatesh Pallipadi \u003cvenkatesh.pallipadi@intel.com\u003e\nSigned-off-by: Suresh Siddha \u003csuresh.b.siddha@intel.com\u003e\nCc: Dave Airlie \u003cairlied@redhat.com\u003e\nCc: Jesse Barnes \u003cjbarnes@virtuousgeek.org\u003e\nCc: Eric Anholt \u003ceric@anholt.net\u003e\nCc: Keith Packard \u003ckeithp@keithp.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "8b6f92b1bd187b4f57296e5cf2e43ba883dd1968",
      "tree": "c40dd93f36c1859c3cf610f1f6065ce75aedb1c0",
      "parents": [
        "467388f29fc9cebfb70e7a187107b6b5d772cb44",
        "325fb5b4d26038cba665dd0d8ee09555321061f0"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Feb 24 13:49:05 2009 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Feb 24 13:49:05 2009 -0800"
      },
      "message": "Merge branch \u0027master\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/kaber/nf-2.6\n"
    },
    {
      "commit": "cd97f39b7cdf1c8a9c9f52865eec795b7f0c811d",
      "tree": "010cd2255376a95120da810a1600bbd8d4d7d1c3",
      "parents": [
        "a746b578d8406b2db0e9f0d040061bc1f78433cf"
      ],
      "author": {
        "name": "Jean Delvare",
        "email": "khali@linux-fr.org",
        "time": "Tue Feb 24 19:19:49 2009 +0100"
      },
      "committer": {
        "name": "Jean Delvare",
        "email": "khali@linux-fr.org",
        "time": "Tue Feb 24 19:19:49 2009 +0100"
      },
      "message": "i2c-dev: Clarify the unit of ioctl I2C_TIMEOUT\n\nThe unit in which user-space can set the bus timeout value is jiffies\nfor historical reasons (back when HZ was always 100.) This is however\nnot good because user-space doesn\u0027t know how long a jiffy lasts. The\ntimeout value should instead be set in a fixed time unit. Given the\noriginal value of HZ, this unit should be 10 ms, for compatibility.\n\nSigned-off-by: Jean Delvare \u003ckhali@linux-fr.org\u003e\nAcked-by: Wolfram Sang \u003cw.sang@pengutronix.de\u003e\n"
    },
    {
      "commit": "d38e84ee39783e00bd0b83a8dd19e54709950912",
      "tree": "c98f6804c6fd7c32238602173a78b04210703042",
      "parents": [
        "20f4d6c3a2a23c5d7d9cc7f42fbb943ca7a03d1f",
        "486a87f1e5624096bd1c09e9e716239597d48dca"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Feb 23 14:36:05 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Feb 23 14:36:05 2009 -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:\n  netns: fix double free at netns creation\n  veth : add the set_mac_address capability\n  sunlance: Beyond ARRAY_SIZE of ib-\u003ebtx_ring\n  sungem: another error printed one too early\n  ISDN: fix sc/shmem printk format warning\n  SMSC: timeout reaches -1\n  smsc9420: handle magic field of ethtool_eeprom\n  sundance: missing parentheses?\n  smsc9420: fix another postfixed timeout\n  wimax/i2400m: driver loads firmware v1.4 instead of v1.3\n  vlan: Update skb-\u003emac_header in __vlan_put_tag().\n  cxgb3: Add support for PCI ID 0x35.\n  tcp: remove obsoleted comment about different passes\n  TG3: \u0026\u0026/|| confusion\n  ATM: misplaced parentheses?\n  net/mv643xx: don\u0027t disable the mib timer too early and lock properly\n  net/mv643xx: use GFP_ATOMIC while atomic\n  atl1c: Atheros L1C Gigabit Ethernet driver\n  net: Kill skb_truesize_check(), it only catches false-positives.\n  net: forcedeth: Fix wake-on-lan regression\n"
    },
    {
      "commit": "770824bdc421ff58a64db608294323571c949f4c",
      "tree": "2fbeef604fe982bf322249a53a95dd2ff851d5f4",
      "parents": [
        "936577c61d0c10b8929608a92c98d839b22053bc"
      ],
      "author": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Sun Feb 22 18:38:50 2009 +0100"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun Feb 22 10:33:44 2009 -0800"
      },
      "message": "PM: Split up sysdev_[suspend|resume] from device_power_[down|up]\n\nMove the sysdev_suspend/resume from the callee to the callers, with\nno real change in semantics, so that we can rework the disabling of\ninterrupts during suspend/hibernation.\n\nThis is based on an earlier patch from Linus.\n\nSigned-off-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "adfafefd104d840ee4461965f22624d77532675b",
      "tree": "6c6ba553a2b11703bf5952bd789905ea37c4fc4f",
      "parents": [
        "460c1338fc05add0e8050d4945a46f207b13a5fc",
        "403f307576396f3362fbb65af190885b6036c72c"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Feb 21 14:17:26 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Feb 21 14:17:26 2009 -0800"
      },
      "message": "Merge branch \u0027hibernate\u0027\n\n* hibernate:\n  PM: Fix suspend_console and resume_console to use only one semaphore\n  PM: Wait for console in resume\n  PM: Fix pm_notifiers during user mode hibernation\n  swsusp: clean up shrink_all_zones()\n  swsusp: dont fiddle with swappiness\n  PM: fix build for CONFIG_PM unset\n  PM/hibernate: fix \"swap breaks after hibernation failures\"\n  PM/resume: wait for device probing to finish\n  Consolidate driver_probe_done() loops into one place\n"
    },
    {
      "commit": "216773a787c3c46ef26bf1742c1fdba37d26be45",
      "tree": "aac387553fd53cb0c06b5cc2ee86329ce793bed6",
      "parents": [
        "d2f8d7ee1a9b4650b4e43325b321801264f7c37a"
      ],
      "author": {
        "name": "Arjan van de Ven",
        "email": "arjan@linux.intel.com",
        "time": "Sat Feb 14 01:59:06 2009 +0100"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Feb 21 14:17:17 2009 -0800"
      },
      "message": "Consolidate driver_probe_done() loops into one place\n\nthere\u0027s a few places that currently loop over driver_probe_done(), and\nI\u0027m about to add another one. This patch abstracts it into a helper\nto reduce duplication.\n\nSigned-off-by: Arjan van de Ven \u003carjan@linux.intel.com\u003e\nSigned-off-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\nCc: Len Brown \u003clenb@kernel.org\u003e\nAcked-by: Greg KH \u003cgregkh@suse.de\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "b6adea334c6c89d5e6c94f9196bbf3a279cb53bd",
      "tree": "fa4360d5522309a8dd9a3fced5e0f8b53de90d85",
      "parents": [
        "3cf311409d37d904335eb720e8a6b2c17bee6698"
      ],
      "author": {
        "name": "Mauro Carvalho Chehab",
        "email": "mchehab@redhat.com",
        "time": "Fri Feb 20 15:38:52 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Feb 20 17:57:50 2009 -0800"
      },
      "message": "8250: fix boot hang with serial console when using with Serial Over Lan port\n\nIntel 8257x Ethernet boards have a feature called Serial Over Lan.\n\nThis feature works by emulating a serial port, and it is detected by\nkernel as a normal 8250 port.  However, this emulation is not perfect, as\nalso noticed on changeset 7500b1f602aad75901774a67a687ee985d85893f.\n\nBefore this patch, the kernel were trying to check if the serial TX is\ncapable of work using IRQ\u0027s.\n\nThis were done with a code similar this:\n\n        serial_outp(up, UART_IER, UART_IER_THRI);\n        lsr \u003d serial_in(up, UART_LSR);\n        iir \u003d serial_in(up, UART_IIR);\n        serial_outp(up, UART_IER, 0);\n\n        if (lsr \u0026 UART_LSR_TEMT \u0026\u0026 iir \u0026 UART_IIR_NO_INT)\n\t\tup-\u003ebugs |\u003d UART_BUG_TXEN;\n\nThis works fine for other 8250 ports, but, on 8250-emulated SoL port, the\nchip is a little lazy to down UART_IIR_NO_INT at UART_IIR register.\n\nDue to that, UART_BUG_TXEN is sometimes enabled.  However, as TX IRQ keeps\nworking, and the TX polling is now enabled, the driver miss-interprets the\nIRQ received later, hanging up the machine until a key is pressed at the\nserial console.\n\nThis is the 6 version of this patch.  Previous versions were trying to\nintroduce a large enough delay between serial_outp and serial_in(up,\nUART_IIR), but not taking forever.  However, the needed delay couldn\u0027t be\nsafely determined.\n\nAt the experimental tests, a delay of 1us solves most of the cases, but\nstill hangs sometimes.  Increasing the delay to 5us was better, but still\ndoesn\u0027t solve.  A very high delay of 50 ms seemed to work every time.\n\nHowever, poking around with delays and pray for it to be enough doesn\u0027t\nseem to be a good approach, even for a quirk.\n\nSo, instead of playing with random large arbitrary delays, let\u0027s just\ndisable UART_BUG_TXEN for all SoL ports.\n\n[akpm@linux-foundation.org: fix warnings]\nSigned-off-by: Mauro Carvalho Chehab \u003cmchehab@redhat.com\u003e\nCc: Alan Cox \u003calan@lxorguk.ukuu.org.uk\u003e\nCc: \u003cstable@kernel.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "01b24fee285b098c74318a8be801ef3711ec18d7",
      "tree": "60403f86f2198f4c5f81a1447e4bf3f107ede7d3",
      "parents": [
        "f6fcba7014f9cc535fa75ef98c008b24e49e2212"
      ],
      "author": {
        "name": "Michael Buesch",
        "email": "mb@bu3sch.de",
        "time": "Fri Feb 20 15:38:49 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Feb 20 17:57:49 2009 -0800"
      },
      "message": "spi_bitbang: add more lowlevel function documentation\n\nThis adds more documentation of the lowlevel API to avoid future bugs.\n\nSigned-off-by: Michael Buesch \u003cmb@bu3sch.de\u003e\nAcked-by: David Brownell \u003cdbrownell@users.sourceforge.net\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "3ef0e5ba467366125f04b423f4638baca54a4fc1",
      "tree": "cfe7b95c7b19b1d5b2a8534fa9791d6026e49dcd",
      "parents": [
        "d9190913b71831f5e3d04de62cfb1fd069a9db35"
      ],
      "author": {
        "name": "Johannes Weiner",
        "email": "hannes@cmpxchg.org",
        "time": "Fri Feb 20 15:38:41 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Feb 20 17:57:48 2009 -0800"
      },
      "message": "slab: introduce kzfree()\n\nkzfree() is a wrapper for kfree() that additionally zeroes the underlying\nmemory before releasing it to the slab allocator.\n\nCurrently there is code which memset()s the memory region of an object\nbefore releasing it back to the slab allocator to make sure\nsecurity-sensitive data are really zeroed out after use.\n\nThese callsites can then just use kzfree() which saves some code, makes\nusers greppable and allows for a stupid destructor that isn\u0027t necessarily\naware of the actual object size.\n\nSigned-off-by: Johannes Weiner \u003channes@cmpxchg.org\u003e\nReviewed-by: Pekka Enberg \u003cpenberg@cs.helsinki.fi\u003e\nCc: Matt Mackall \u003cmpm@selenic.com\u003e\nAcked-by: Christoph Lameter \u003ccl@linux-foundation.org\u003e\nCc: Nick Piggin \u003cnpiggin@suse.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "e4dd61882e2cfe47ea72ecd825671e8e5ae29038",
      "tree": "10ea65c6294aa1e2de304c4b14c828e1c42fc1d7",
      "parents": [
        "ce03aaddd4d67371494b36c8e8a57bc789e934d6"
      ],
      "author": {
        "name": "Jarek Poplawski",
        "email": "jarkao2@gmail.com",
        "time": "Wed Feb 18 23:31:11 2009 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Feb 18 23:31:11 2009 -0800"
      },
      "message": "vlan: Update skb-\u003emac_header in __vlan_put_tag().\n\nAfter moving mac addresses in __vlan_put_tag() skb-\u003emac_header needs\nto be updated.\n\nReported-by: Karl Hiramoto \u003ckarl@hiramoto.org\u003e\nSigned-off-by: Jarek Poplawski \u003cjarkao2@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "ba95fd47d177d46743ad94055908d22840370e06",
      "tree": "f29e6921fefba2728c3b7f6854ac7f7729f602b2",
      "parents": [
        "59af0a0b5848caf38f1bf7013905c3e9cdba4d1d",
        "be987fdb55a4726e2fcbab7501f89276bdb57288"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Feb 18 18:33:04 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Feb 18 18:33:04 2009 -0800"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://git.kernel.dk/linux-2.6-block\n\n* \u0027for-linus\u0027 of git://git.kernel.dk/linux-2.6-block:\n  block: fix deadlock in blk_abort_queue() for drivers that readd to timeout list\n  block: fix booting from partitioned md array\n  block: revert part of 18ce3751ccd488c78d3827e9f6bf54e6322676fb\n  cciss: PCI power management reset for kexec\n  paride/pg.c: xs(): \u0026\u0026/|| confusion\n  fs/bio: bio_alloc_bioset: pass right object ptr to mempool_free\n  block: fix bad definition of BIO_RW_SYNC\n  bsg: Fix sense buffer bug in SG_IO\n"
    },
    {
      "commit": "97bef7dd05563807539122c488a5dd93ed327722",
      "tree": "9e4d6e7bcd71a3278765f8763d399de543a80477",
      "parents": [
        "310d8c93f9f07499cd7ca82d7997774a89de00e7"
      ],
      "author": {
        "name": "Bernhard Walle",
        "email": "bernhard.walle@gmx.de",
        "time": "Wed Feb 18 14:48:40 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Feb 18 15:37:56 2009 -0800"
      },
      "message": "Bernhard has moved\n\nSince I don\u0027t work for SUSE any more and the bwalle@suse.de address is\ninvalid, correct it in the copyright headers and documentation.\n\nSigned-off-by: Bernhard Walle \u003cbernhard.walle@gmx.de\u003e\nCc: Greg KH \u003cgreg@kroah.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "ffa7525c13eb3db0fd19a3e1cffe2ce6f561f5f3",
      "tree": "e954d699cd7d92bb12bd4465a41c4ef8431faa9b",
      "parents": [
        "cc2559bccc72767cb446f79b071d96c30c26439b"
      ],
      "author": {
        "name": "Adam Lackorzynski",
        "email": "adam@os.inf.tu-dresden.de",
        "time": "Wed Feb 18 14:48:34 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Feb 18 15:37:55 2009 -0800"
      },
      "message": "jsm: additional device support\n\nI have a Digi Neo 8 PCI card (114f:00b1) Serial controller: Digi\nInternational Digi Neo 8 (rev 05)\n\nthat works with the jsm driver after using the following patch.\n\nSigned-off-by: Adam Lackorzynski \u003cadam@os.inf.tu-dresden.de\u003e\nCc: Scott H Kilau \u003cScott_Kilau@digi.com\u003e\nCc: Wendy Xiong \u003cwendyx@us.ibm.com\u003e\nAcked-by: Alan Cox \u003calan@lxorguk.ukuu.org.uk\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "cc2559bccc72767cb446f79b071d96c30c26439b",
      "tree": "aacdeee5368e0eef72ed1d7a7cbd7e6ee4837941",
      "parents": [
        "f2dbcfa738368c8a40d4a5f0b65dc9879577cb21"
      ],
      "author": {
        "name": "KAMEZAWA Hiroyuki",
        "email": "kamezawa.hiroyu@jp.fujitsu.com",
        "time": "Wed Feb 18 14:48:33 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Feb 18 15:37:55 2009 -0800"
      },
      "message": "mm: fix memmap init for handling memory hole\n\nNow, early_pfn_in_nid(PFN, NID) may returns false if PFN is a hole.\nand memmap initialization was not done. This was a trouble for\nsparc boot.\n\nTo fix this, the PFN should be initialized and marked as PG_reserved.\nThis patch changes early_pfn_in_nid() return true if PFN is a hole.\n\nSigned-off-by: KAMEZAWA Hiroyuki \u003ckamezawa.hiroyu@jp.fujitsu.com\u003e\nReported-by: David Miller \u003cdavem@davemlloft.net\u003e\nTested-by: KOSAKI Motohiro \u003ckosaki.motohiro@jp.fujitsu.com\u003e\nCc: Mel Gorman \u003cmel@csn.ul.ie\u003e\nCc: Heiko Carstens \u003cheiko.carstens@de.ibm.com\u003e\nCc: \u003cstable@kernel.org\u003e\t\t[2.6.25.x, 2.6.26.x, 2.6.27.x, 2.6.28.x]\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "f2dbcfa738368c8a40d4a5f0b65dc9879577cb21",
      "tree": "bdea32c637fa572a9c356cddd202a57530b2a45c",
      "parents": [
        "ada723dcd681e2dffd7d73345cc8fda0eb0df9bd"
      ],
      "author": {
        "name": "KAMEZAWA Hiroyuki",
        "email": "kamezawa.hiroyu@jp.fujitsu.com",
        "time": "Wed Feb 18 14:48:32 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Feb 18 15:37:55 2009 -0800"
      },
      "message": "mm: clean up for early_pfn_to_nid()\n\nWhat\u0027s happening is that the assertion in mm/page_alloc.c:move_freepages()\nis triggering:\n\n\tBUG_ON(page_zone(start_page) !\u003d page_zone(end_page));\n\nOnce I knew this is what was happening, I added some annotations:\n\n\tif (unlikely(page_zone(start_page) !\u003d page_zone(end_page))) {\n\t\tprintk(KERN_ERR \"move_freepages: Bogus zones: \"\n\t\t       \"start_page[%p] end_page[%p] zone[%p]\\n\",\n\t\t       start_page, end_page, zone);\n\t\tprintk(KERN_ERR \"move_freepages: \"\n\t\t       \"start_zone[%p] end_zone[%p]\\n\",\n\t\t       page_zone(start_page), page_zone(end_page));\n\t\tprintk(KERN_ERR \"move_freepages: \"\n\t\t       \"start_pfn[0x%lx] end_pfn[0x%lx]\\n\",\n\t\t       page_to_pfn(start_page), page_to_pfn(end_page));\n\t\tprintk(KERN_ERR \"move_freepages: \"\n\t\t       \"start_nid[%d] end_nid[%d]\\n\",\n\t\t       page_to_nid(start_page), page_to_nid(end_page));\n ...\n\nAnd here\u0027s what I got:\n\n\tmove_freepages: Bogus zones: start_page[2207d0000] end_page[2207dffc0] zone[fffff8103effcb00]\n\tmove_freepages: start_zone[fffff8103effcb00] end_zone[fffff8003fffeb00]\n\tmove_freepages: start_pfn[0x81f600] end_pfn[0x81f7ff]\n\tmove_freepages: start_nid[1] end_nid[0]\n\nMy memory layout on this box is:\n\n[    0.000000] Zone PFN ranges:\n[    0.000000]   Normal   0x00000000 -\u003e 0x0081ff5d\n[    0.000000] Movable zone start PFN for each node\n[    0.000000] early_node_map[8] active PFN ranges\n[    0.000000]     0: 0x00000000 -\u003e 0x00020000\n[    0.000000]     1: 0x00800000 -\u003e 0x0081f7ff\n[    0.000000]     1: 0x0081f800 -\u003e 0x0081fe50\n[    0.000000]     1: 0x0081fed1 -\u003e 0x0081fed8\n[    0.000000]     1: 0x0081feda -\u003e 0x0081fedb\n[    0.000000]     1: 0x0081fedd -\u003e 0x0081fee5\n[    0.000000]     1: 0x0081fee7 -\u003e 0x0081ff51\n[    0.000000]     1: 0x0081ff59 -\u003e 0x0081ff5d\n\nSo it\u0027s a block move in that 0x81f600--\u003e0x81f7ff region which triggers\nthe problem.\n\nThis patch:\n\nDeclaration of early_pfn_to_nid() is scattered over per-arch include\nfiles, and it seems it\u0027s complicated to know when the declaration is used.\n I think it makes fix-for-memmap-init not easy.\n\nThis patch moves all declaration to include/linux/mm.h\n\nAfter this,\n  if !CONFIG_NODES_POPULATES_NODE_MAP \u0026\u0026 !CONFIG_HAVE_ARCH_EARLY_PFN_TO_NID\n     -\u003e Use static definition in include/linux/mm.h\n  else if !CONFIG_HAVE_ARCH_EARLY_PFN_TO_NID\n     -\u003e Use generic definition in mm/page_alloc.c\n  else\n     -\u003e per-arch back end function will be called.\n\nSigned-off-by: KAMEZAWA Hiroyuki \u003ckamezawa.hiroyu@jp.fujitsu.com\u003e\nTested-by: KOSAKI Motohiro \u003ckosaki.motohiro@jp.fujitsu.com\u003e\nReported-by: David Miller \u003cdavem@davemlloft.net\u003e\nCc: Mel Gorman \u003cmel@csn.ul.ie\u003e\nCc: Heiko Carstens \u003cheiko.carstens@de.ibm.com\u003e\nCc: \u003cstable@kernel.org\u003e\t\t[2.6.25.x, 2.6.26.x, 2.6.27.x, 2.6.28.x]\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "287d859222e0adbc67666a6154aaf42d7d5bbb54",
      "tree": "a3e00f7b42f91c0d00f9d5a8d79414939b3c566f",
      "parents": [
        "9ccf3b5e8409927835c4d38cb2f380c9e4349e76"
      ],
      "author": {
        "name": "Dan Williams",
        "email": "dan.j.williams@intel.com",
        "time": "Wed Feb 18 14:48:26 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Feb 18 15:37:55 2009 -0800"
      },
      "message": "atmel-mci: fix initialization of dma slave data\n\nThe conversion of atmel-mci to dma_request_channel missed the\ninitialization of the channel dma_slave information.  The filter_fn passed\nto dma_request_channel is responsible for initializing the channel\u0027s\nprivate data.  This implementation has the additional benefit of enabling\na generic client-channel data passing mechanism.\n\nReviewed-by: Atsushi Nemoto \u003canemo@mba.ocn.ne.jp\u003e\nSigned-off-by: Dan Williams \u003cdan.j.williams@intel.com\u003e\nAcked-by: Haavard Skinnemoen \u003chskinnemoen@atmel.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "1cf6e7d83bf334cc5916137862c920a97aabc018",
      "tree": "6bdbc4a98e9b332919beaeba0649797fff544795",
      "parents": [
        "610d18f4128ebbd88845d0fc60cce67b49af881e"
      ],
      "author": {
        "name": "Nick Piggin",
        "email": "npiggin@suse.de",
        "time": "Wed Feb 18 14:48:18 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Feb 18 15:37:54 2009 -0800"
      },
      "message": "mm: task dirty accounting fix\n\nYAMAMOTO-san noticed that task_dirty_inc doesn\u0027t seem to be called properly for\ncases where set_page_dirty is not used to dirty a page (eg. mark_buffer_dirty).\n\nAdditionally, there is some inconsistency about when task_dirty_inc is\ncalled.  It is used for dirty balancing, however it even gets called for\n__set_page_dirty_no_writeback.\n\nSo rather than increment it in a set_page_dirty wrapper, move it down to\nexactly where the dirty page accounting stats are incremented.\n\nCc: YAMAMOTO Takashi \u003cyamamoto@valinux.co.jp\u003e\nSigned-off-by: Nick Piggin \u003cnpiggin@suse.de\u003e\nAcked-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "610d18f4128ebbd88845d0fc60cce67b49af881e",
      "tree": "97faea373227afc42c4a8f932fb2fe3fd393a258",
      "parents": [
        "ef35ce231b3cb2a4b1808e826da263bf37ccb38a"
      ],
      "author": {
        "name": "Davide Libenzi",
        "email": "davidel@xmailserver.org",
        "time": "Wed Feb 18 14:48:18 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Feb 18 15:37:53 2009 -0800"
      },
      "message": "timerfd: add flags check\n\nAs requested by Michael, add a missing check for valid flags in\ntimerfd_settime(), and make it return EINVAL in case some extra bits are\nset.\n\nMichael said:\nIf this is to be any use to userland apps that want to check flag\nsupport (perhaps it is too late already), then the sooner we get it\ninto the kernel the better: 2.6.29 would be good; earlier stables as\nwell would be even better.\n\n[akpm@linux-foundation.org: remove unused TFD_FLAGS_SET]\nAcked-by: Michael Kerrisk \u003cmtk.manpages@gmail.com\u003e\nSigned-off-by: Davide Libenzi \u003cdavidel@xmailserver.org\u003e\nCc: \u003cstable@kernel.org\u003e\t\t[2.6.27.x, 2.6.28.x]\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "8f19d472935c83d823fa4cf02bcc0a7b9952db30",
      "tree": "25cabc0b48ad0acb05fa69f92de617cf588fec8d",
      "parents": [
        "55ec82176eca52e4e0530a82a0eb59160a1a95a1"
      ],
      "author": {
        "name": "Eric Biederman",
        "email": "ebiederm@xmission.com",
        "time": "Wed Feb 18 14:48:16 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Feb 18 15:37:53 2009 -0800"
      },
      "message": "seq_file: properly cope with pread\n\nCurrently seq_read assumes that the offset passed to it is always the\noffset it passed to user space.  In the case pread this assumption is\nbroken and we do the wrong thing when presented with pread.\n\nTo solve this I introduce an offset cache inside of struct seq_file so we\nknow where our logical file position is.  Then in seq_read if we try to\nread from another offset we reset our data structures and attempt to go to\nthe offset user space wanted.\n\n[akpm@linux-foundation.org: restore FMODE_PWRITE]\n[pjt@google.com: seq_open needs its fmode opened up to take advantage of this]\nSigned-off-by: Eric Biederman \u003cebiederm@xmission.com\u003e\nCc: Alexey Dobriyan \u003cadobriyan@gmail.com\u003e\nCc: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\nCc: Paul Turner \u003cpjt@google.com\u003e\nCc: \u003cstable@kernel.org\u003e\t\t[2.6.25.x, 2.6.26.x, 2.6.27.x, 2.6.28.x]\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "55ec82176eca52e4e0530a82a0eb59160a1a95a1",
      "tree": "2d052ca4cf055fbcfc4b019ec45f8df5eea13749",
      "parents": [
        "b851ee7921fabdd7dfc96ffc4e9609f5062bd12b"
      ],
      "author": {
        "name": "Paul Turner",
        "email": "pjt@google.com",
        "time": "Wed Feb 18 14:48:15 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Feb 18 15:37:53 2009 -0800"
      },
      "message": "vfs: separate FMODE_PREAD/FMODE_PWRITE into separate flags\n\nSeparate FMODE_PREAD and FMODE_PWRITE into separate flags to reflect the\nreality that the read and write paths may have independent restrictions.\n\nA git grep verifies that these flags are always cleared together so this\nnew behavior will only apply to interfaces that change to clear flags\nindividually.\n\nThis is required for \"seq_file: properly cope with pread\", a post-2.6.25\nregression fix.\n\n[akpm@linux-foundation.org: add comment]\nSigned-off-by: Paul Turner \u003cpjt@google.com\u003e\nCc: Eric Biederman \u003cebiederm@xmission.com\u003e\nCc:  Alexey Dobriyan \u003cadobriyan@gmail.com\u003e\nCc: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\nCc: \u003cstable@kernel.org\u003e\t\t[2.6.25.x, 2.6.26.x, 2.6.27.x, 2.6.28.x]\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "c296861291669f305deef19b78042330d7135017",
      "tree": "a623faa7815c0eb70ea463966c8a8715e7e69246",
      "parents": [
        "5955c7a2cfb6a35429adea5dc480002b15ca8cfc"
      ],
      "author": {
        "name": "Benjamin Herrenschmidt",
        "email": "benh@kernel.crashing.org",
        "time": "Wed Feb 18 14:48:12 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Feb 18 15:37:53 2009 -0800"
      },
      "message": "vmalloc: add __get_vm_area_caller()\n\nWe have get_vm_area_caller() and __get_vm_area() but not\n__get_vm_area_caller()\n\nOn powerpc, I use __get_vm_area() to separate the ranges of addresses\ngiven to vmalloc vs.  ioremap (various good reasons for that) so in order\nto be able to implement the new caller tracking in /proc/vmallocinfo, I\nneed a \"_caller\" variant of it.\n\n(akpm: needed for ongoing powerpc development, so merge it early)\n\n[akpm@linux-foundation.org: coding-style fixes]\nSigned-off-by: Benjamin Herrenschmidt \u003cbenh@kernel.crashing.org\u003e\nReviewed-by: KOSAKI Motohiro \u003ckosaki.motohiro@jp.fujitsu.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "5ca431f9ae8db8c6edb9c64bebe6d6521077afd6",
      "tree": "3458815f1b4ce2ff6961e99015b88f33571f0d38",
      "parents": [
        "4aa3b2ee1945ed082430ae1fb988d60eef64ca07"
      ],
      "author": {
        "name": "Eric Leblond",
        "email": "eric@inl.fr",
        "time": "Wed Feb 18 15:29:23 2009 +0100"
      },
      "committer": {
        "name": "Patrick McHardy",
        "email": "kaber@trash.net",
        "time": "Wed Feb 18 15:29:23 2009 +0100"
      },
      "message": "netfilter: nfnetlink_log: fix per-rule qthreshold override\n\nIn NFLOG the per-rule qthreshold should overrides per-instance only\nit is set. With current code, the per-rule qthreshold is 1 if not set\nand it overrides the per-instance qthreshold.\n\nThis patch modifies the default xt_NFLOG threshold from 1 to\n0. Thus a value of 0 means there is no per-rule setting and the instance\nparameter has to apply.\n\nSigned-off-by: Eric Leblond \u003ceric@inl.fr\u003e\nSigned-off-by: Patrick McHardy \u003ckaber@trash.net\u003e\n"
    },
    {
      "commit": "4667ba15119fea265b79502a019a2e75b8c9dfe1",
      "tree": "1df39006489a48bb575200f41e11895cba915238",
      "parents": [
        "5955c7a2cfb6a35429adea5dc480002b15ca8cfc",
        "92a0acce186cde8ead56c6915d9479773673ea1a"
      ],
      "author": {
        "name": "Patrick McHardy",
        "email": "kaber@trash.net",
        "time": "Wed Feb 18 15:16:18 2009 +0100"
      },
      "committer": {
        "name": "Patrick McHardy",
        "email": "kaber@trash.net",
        "time": "Wed Feb 18 15:16:18 2009 +0100"
      },
      "message": "Merge branch \u0027master\u0027 of /repos/git/net-2.6\n"
    },
    {
      "commit": "93dbb393503d53cd226e5e1f0088fe8f4dbaa2b8",
      "tree": "790365e207951cf6810e8995f3141ddc0b74519b",
      "parents": [
        "c1c201200a359cf3b6e2e36a4236cdca77a3cd8e"
      ],
      "author": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Mon Feb 16 10:25:40 2009 +0100"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Wed Feb 18 10:32:00 2009 +0100"
      },
      "message": "block: fix bad definition of BIO_RW_SYNC\n\nWe can\u0027t OR shift values, so get rid of BIO_RW_SYNC and use BIO_RW_SYNCIO\nand BIO_RW_UNPLUG explicitly. This brings back the behaviour from before\n213d9417fec62ef4c3675621b9364a667954d4dd.\n\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\n"
    },
    {
      "commit": "92a0acce186cde8ead56c6915d9479773673ea1a",
      "tree": "97b7663f77f8274cb52d429c8a7db97c70daf745",
      "parents": [
        "34edaa88324004baf4884fb0388f86059d9c4878"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Feb 17 21:24:05 2009 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Feb 17 21:24:05 2009 -0800"
      },
      "message": "net: Kill skb_truesize_check(), it only catches false-positives.\n\nA long time ago we had bugs, primarily in TCP, where we would modify\nskb-\u003etruesize (for TSO queue collapsing) in ways which would corrupt\nthe socket memory accounting.\n\nskb_truesize_check() was added in order to try and catch this error\nmore systematically.\n\nHowever this debugging check has morphed into a Frankenstein of sorts\nand these days it does nothing other than catch false-positives.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "5955c7a2cfb6a35429adea5dc480002b15ca8cfc",
      "tree": "40b3e756177c41134539dd7fbc1281a49552edad",
      "parents": [
        "3494252d5644993f407a45f01c3e8ad5ae38f93c"
      ],
      "author": {
        "name": "Zlatko Calusic",
        "email": "zlatko.calusic@iskon.hr",
        "time": "Wed Feb 18 01:33:34 2009 +0100"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Feb 17 16:56:31 2009 -0800"
      },
      "message": "Add support for VT6415 PCIE PATA IDE Host Controller\n\nSigned-off-by: Zlatko Calusic \u003czlatko.calusic@iskon.hr\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "35010334aa007480a833401b80922299cb1a15ef",
      "tree": "6e318eb89da45d37ea8dceddd1ae6858b74dee1e",
      "parents": [
        "8ce9a75a307e142a8871c649627555e0e4a1eefb",
        "be716615fe596ee117292dc615e95f707fb67fd1"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Feb 17 14:27:39 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Feb 17 14:27:39 2009 -0800"
      },
      "message": "Merge branch \u0027x86-fixes-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip\n\n* \u0027x86-fixes-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:\n  x86, vm86: fix preemption bug\n  x86, olpc: fix model detection without OFW\n  x86, hpet: fix for LS21 + HPET \u003d boot hang\n  x86: CPA avoid repeated lazy mmu flush\n  x86: warn if arch_flush_lazy_mmu_cpu is called in preemptible context\n  x86/paravirt: make arch_flush_lazy_mmu/cpu disable preemption\n  x86, pat: fix warn_on_once() while mapping 0-1MB range with /dev/mem\n  x86/cpa: make sure cpa is safe to call in lazy mmu mode\n  x86, ptrace, mm: fix double-free on race\n"
    },
    {
      "commit": "3512a79dbcc90e6edac98717607bd821bba50a14",
      "tree": "9038e3545ccdfec77ec24d982f8cc24701fb532d",
      "parents": [
        "39a65762d4c48fd8a498f34b7fec74a6b0aebd55",
        "090542641de833c6f756895fc2f139f046e298f9"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Feb 17 14:05:05 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Feb 17 14:05:05 2009 -0800"
      },
      "message": "Merge branch \u0027for_linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tytso/ext4\n\n* \u0027for_linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tytso/ext4:\n  ext4: Fix NULL dereference in ext4_ext_migrate()\u0027s error handling\n  ext4: Implement range_cyclic in ext4_da_writepages instead of write_cache_pages\n  ext4: Initialize preallocation list_head\u0027s properly\n  ext4: Fix lockdep warning\n  ext4: Fix to read empty directory blocks correctly in 64k\n  jbd2: Avoid possible NULL dereference in jbd2_journal_begin_ordered_truncate()\n  Revert \"ext4: wait on all pending commits in ext4_sync_fs()\"\n  jbd2: Fix return value of jbd2_journal_start_commit()\n"
    },
    {
      "commit": "ad8ba2cd44d4d39fb3fe55d5dcc565b19fc3a7fb",
      "tree": "74dfd501fc541b7d55eecec7b9469f1db8225507",
      "parents": [
        "85db06e514422ae429b5f85742d8111b70bd56f3"
      ],
      "author": {
        "name": "Sheng Yang",
        "email": "sheng@linux.intel.com",
        "time": "Tue Jan 06 10:03:02 2009 +0800"
      },
      "committer": {
        "name": "Avi Kivity",
        "email": "avi@redhat.com",
        "time": "Sun Feb 15 02:47:36 2009 +0200"
      },
      "message": "KVM: Add kvm_arch_sync_events to sync with asynchronize events\n\nkvm_arch_sync_events is introduced to quiet down all other events may happen\ncontemporary with VM destroy process, like IRQ handler and work struct for\nassigned device.\n\nFor kvm_arch_sync_events is called at the very beginning of kvm_destroy_vm(), so\nthe state of KVM here is legal and can provide a environment to quiet down other\nevents.\n\nSigned-off-by: Sheng Yang \u003csheng@linux.intel.com\u003e\nSigned-off-by: Avi Kivity \u003cavi@redhat.com\u003e\n"
    },
    {
      "commit": "7a0eb1960e8ddcb68ea631caf16815485af0e228",
      "tree": "0614c3c2265ed02072a082dea68a86e31f71dd7f",
      "parents": [
        "d39123a486524fed9b4e43e08a8757fd90a5859a"
      ],
      "author": {
        "name": "Avi Kivity",
        "email": "avi@redhat.com",
        "time": "Mon Jan 19 14:57:52 2009 +0200"
      },
      "committer": {
        "name": "Avi Kivity",
        "email": "avi@redhat.com",
        "time": "Sun Feb 15 02:47:35 2009 +0200"
      },
      "message": "KVM: Avoid using CONFIG_ in userspace visible headers\n\nKconfig symbols are not available in userspace, and are not stripped by\nheaders-install.  Avoid their use by adding #defines in \u003casm/kvm.h\u003e to\nsuit each architecture.\n\nSigned-off-by: Avi Kivity \u003cavi@redhat.com\u003e\n"
    },
    {
      "commit": "b51ebdc40cf3a9eb4d3ace48dbd254bb0184481d",
      "tree": "3ed377006b9659e9045eb2d0df995342a6ccca2f",
      "parents": [
        "fb5ae64fdde29236e1a15e0366946df7060f41f2",
        "99cbb86180bccd77f331f6e8eb7ce26aeea2cb72"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Feb 13 08:19:11 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Feb 13 08:19:11 2009 -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  ASoC: Only register AC97 bus if it\u0027s not done already\n  ALSA: hda - Add snd_hda_multi_out_dig_cleanup()\n  ALSA: hda - Add missing terminator in slave dig-out array\n  ALSA: hda - Change HP dv7 (103c:30f4) quirk from hp-m4 to hp-dv5 model\n  ALSA: hda - Register (new) devices at reconfig\n  ALSA: mtpav - Fix initial value for input hwport\n  ALSA: hda - add id for Intel IbexPeak integrated HDMI codec\n  ALSA: hda - compute checksum in HDMI audio infoframe\n  ALSA: hda - enable HDMI audio pin out at module loading time\n  ALSA: hda - allow multi-channel HDMI audio playback when ELD is not present\n  ASoC: Update SDP3430 machine driver for snd_soc_card\n  ALSA: hda - Add quirk for Asus z37e (1043:8284)\n  sound: Remove OSSlib stuff from linux/soundcard.h\n  ASoC: WM8990: Fix kcontrol\u0027s private value use in put callback\n  ASoC: TLV320AIC3X: Fix kcontrol\u0027s private value use in put callback\n"
    },
    {
      "commit": "37bed90094fdb1eea6e4afec6a200d4e60143e55",
      "tree": "4590075dbc03c13dd532a974f040f18a07b1d130",
      "parents": [
        "071a0bc2ceace31266836801510879407a3701fa",
        "1d7b33f77b2d8b0b1ee767e6f8f05cbd9d72cb7c"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Feb 12 17:47:15 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Feb 12 17:47:15 2009 -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: (32 commits)\n  wimax: fix oops in wimax_dev_get_by_genl_info() when looking up non-wimax iface\n  net: 4 bytes kernel memory disclosure in SO_BSDCOMPAT gsopt try #2\n  netxen: fix compile waring \"label ‘set_32_bit_mask’ defined but not used\" on IA64 platform\n  bnx2: Update version to 1.9.2 and copyright.\n  bnx2: Fix jumbo frames error handling.\n  bnx2: Update 5709 firmware.\n  bnx2: Update 5706/5708 firmware.\n  3c505: do not set pcb-\u003edata.raw beyond its size\n  Documentation/connector/cn_test.c: don\u0027t use gfp_any()\n  net: don\u0027t use in_atomic() in gfp_any()\n  IRDA: cnt is off by 1\n  netxen: remove pcie workaround\n  sun3: print when lance_open() fails\n  qlge: bugfix: Add missing rx buf clean index on early exit.\n  qlge: bugfix: Fix RX scaling values.\n  qlge: bugfix: Fix TSO breakage.\n  qlge: bugfix: Add missing dev_kfree_skb_any() call.\n  qlge: bugfix: Add missing put_page() call.\n  qlge: bugfix: Fix fatal error recovery hang.\n  qlge: bugfix: Use netif_receive_skb() and vlan_hwaccel_receive_skb().\n  ...\n"
    },
    {
      "commit": "1d93e52eb48df986a3c4d5ad8a520bf1f6837367",
      "tree": "cb173060e2aa73d2a77058a40a35cae5942b5184",
      "parents": [
        "6c6f1f0f4db31a192916eaa31ec2f114fda7d5e5"
      ],
      "author": {
        "name": "Johannes Weiner",
        "email": "jw@emlix.com",
        "time": "Wed Feb 11 08:47:19 2009 -0700"
      },
      "committer": {
        "name": "Dan Williams",
        "email": "dan.j.williams@intel.com",
        "time": "Wed Feb 11 17:12:27 2009 -0700"
      },
      "message": "dmaengine: update kerneldoc\n\nSome of the kerneldoc comments in the dmaengine header describe\nalready removed structure members.  Remove them.\n\nAlso add a short description for dma_device-\u003edevice_is_tx_complete.\n\nSigned-off-by: Johannes Weiner \u003cjw@emlix.com\u003e\nSigned-off-by: Dan Williams \u003cdan.j.williams@intel.com\u003e\n"
    },
    {
      "commit": "6c5979631b4b03c9288776562c18036765e398c1",
      "tree": "00b7546bc54658b3d1d166b75eb1e498b3ee8475",
      "parents": [
        "0e4a9b59282914fe057ab17027f55123964bc2e2"
      ],
      "author": {
        "name": "Heiko Carstens",
        "email": "heiko.carstens@de.ibm.com",
        "time": "Wed Feb 11 13:04:38 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Feb 11 14:25:36 2009 -0800"
      },
      "message": "syscall define: fix uml compile bug\n\nWith the new system call defines we get this on uml:\n\narch/um/sys-i386/built-in.o: In function `sys_call_table\u0027:\n(.rodata+0x308): undefined reference to `sys_sigprocmask\u0027\n\nReason for this is that uml passes the preprocessor option\n-Dsigprocmask\u003dkernel_sigprocmask to gcc when compiling the kernel.\nThis causes SYSCALL_DEFINE3(sigprocmask, ...) to be expanded to\nSYSCALL_DEFINEx(3, kernel_sigprocmask, ...) and finally to a system\ncall named sys_kernel_sigprocmask.  However sys_sigprocmask is missing\nbecause of this.\n\nTo avoid macro expansion for the system call name just concatenate the\nname at first define instead of carrying it through severel levels.\nThis was pointed out by Al Viro.\n\nSigned-off-by: Heiko Carstens \u003cheiko.carstens@de.ibm.com\u003e\nCc: Geert Uytterhoeven \u003cgeert@linux-m68k.org\u003e\nCc: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\nReviewed-by: WANG Cong \u003cwangcong@zeuux.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "cfebe563bd0a3ff97e1bc167123120d59c7a84db",
      "tree": "6178bf45bcccaf3d43d87cfe0eef059d849c7140",
      "parents": [
        "01c4a4283137d24c9cc3785f1f312e895a18f273"
      ],
      "author": {
        "name": "Li Zefan",
        "email": "lizf@cn.fujitsu.com",
        "time": "Wed Feb 11 13:04:36 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Feb 11 14:25:36 2009 -0800"
      },
      "message": "cgroups: fix lockdep subclasses overflow\n\nI enabled all cgroup subsystems when compiling kernel, and then:\n # mount -t cgroup -o net_cls xxx /mnt\n # mkdir /mnt/0\n\nThis showed up immediately:\n BUG: MAX_LOCKDEP_SUBCLASSES too low!\n turning off the locking correctness validator.\n\nIt\u0027s caused by the cgroup hierarchy lock:\n\tfor (i \u003d 0; i \u003c CGROUP_SUBSYS_COUNT; i++) {\n\t\tstruct cgroup_subsys *ss \u003d subsys[i];\n\t\tif (ss-\u003eroot \u003d\u003d root)\n\t\t\tmutex_lock_nested(\u0026ss-\u003ehierarchy_mutex, i);\n\t}\n\nNow we have 9 cgroup subsystems, and the above \u0027i\u0027 for net_cls is 8, but\nMAX_LOCKDEP_SUBCLASSES is 8.\n\nThis patch uses different lockdep keys for different subsystems.\n\nSigned-off-by: Li Zefan \u003clizf@cn.fujitsu.com\u003e\nAcked-by: Paul Menage \u003cmenage@google.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "94dba895333a4321f27360e42b807260ae36bda4",
      "tree": "7b6381da7ea9fc176001dda0714725c3a1dd6cc7",
      "parents": [
        "9ce04f9238cafcfd09a502f2bc8c13b5f44ec590",
        "4da94d49b2ecb0a26e716a8811c3ecc542c2a65d"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Feb 11 08:24:32 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Feb 11 08:24:32 2009 -0800"
      },
      "message": "Merge branch \u0027timers-fixes-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip\n\n* \u0027timers-fixes-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:\n  timers: fix TIMER_ABSTIME for process wide cpu timers\n  timers: split process wide cpu clocks/timers, fix\n  x86: clean up hpet timer reinit\n  timers: split process wide cpu clocks/timers, remove spurious warning\n  timers: split process wide cpu clocks/timers\n  signal: re-add dead task accumulation stats.\n  x86: fix hpet timer reinit for x86_64\n  sched: fix nohz load balancer on cpu offline\n"
    },
    {
      "commit": "9f339e7028e2855717af3193c938f9960ad13b38",
      "tree": "76e0e9181f4ee2b324742d517518e837d5c250bf",
      "parents": [
        "06eb23b1ba39c61ee5d5faeb42a097635693e370"
      ],
      "author": {
        "name": "Markus Metzger",
        "email": "markus.t.metzger@intel.com",
        "time": "Wed Feb 11 15:10:27 2009 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Feb 11 15:44:20 2009 +0100"
      },
      "message": "x86, ptrace, mm: fix double-free on race\n\nPtrace_detach() races with __ptrace_unlink() if the traced task is\nreaped while detaching. This might cause a double-free of the BTS\nbuffer.\n\nChange the ptrace_detach() path to only do the memory accounting in\nptrace_bts_detach() and leave the buffer free to ptrace_bts_untrace()\nwhich will be called from __ptrace_unlink().\n\nThe fix follows a proposal from Oleg Nesterov.\n\nReported-by: Oleg Nesterov \u003coleg@redhat.com\u003e\nSigned-off-by: Markus Metzger \u003cmarkus.t.metzger@intel.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "4da94d49b2ecb0a26e716a8811c3ecc542c2a65d",
      "tree": "a87980822b2499021f080c2b0235f441b30413cc",
      "parents": [
        "3fccfd67df79c6351a156eb25a7a514e5f39c4d9"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "a.p.zijlstra@chello.nl",
        "time": "Wed Feb 11 11:30:27 2009 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Feb 11 14:04:21 2009 +0100"
      },
      "message": "timers: fix TIMER_ABSTIME for process wide cpu timers\n\nThe POSIX timer interface allows for absolute time expiry values through the\nTIMER_ABSTIME flag, therefore we have to synchronize the timer to the clock\nevery time we start it.\n\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "3fccfd67df79c6351a156eb25a7a514e5f39c4d9",
      "tree": "de4776e69e197119ac64097f3ff6239a55ad77be",
      "parents": [
        "ff08f76d738d0ec0f334b187f61e160caa321d54"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "a.p.zijlstra@chello.nl",
        "time": "Tue Feb 10 16:37:31 2009 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Feb 11 14:04:19 2009 +0100"
      },
      "message": "timers: split process wide cpu clocks/timers, fix\n\nTo decrease the chance of a missed enable, always enable the timer when we\nsample it, we\u0027ll always disable it when we find that there are no active timers\nin the jiffy tick.\n\nThis fixes a flood of warnings reported by Mike Galbraith.\n\nReported-by: Mike Galbraith \u003cefault@gmx.de\u003e\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "e672f7db767156bf71adf9c592cfe81b339523d6",
      "tree": "96ad97a5a3904c069b0f6797bd7f05ef633428ba",
      "parents": [
        "2ddc1ac1b9f00096869a48b97c28de72386200d2"
      ],
      "author": {
        "name": "Chuck Ebbert",
        "email": "cebbert@redhat.com",
        "time": "Tue Feb 10 17:18:17 2009 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Feb 10 17:18:17 2009 -0800"
      },
      "message": "pkt_sched: type should be __u32 in header\n\nUsing u32 in this header breaks the build of iptables.\n\nSigned-off-by: Chuck Ebbert \u003ccebbert@redhat.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "1db8508cf483dc1ecf66141f90a7c03659d69512",
      "tree": "a0a50fd483612f750c735cd2d541dbb1114d0ff1",
      "parents": [
        "c36c63c511fa088fcc247a8e888b04f248be8435"
      ],
      "author": {
        "name": "Stefan Richter",
        "email": "stefanr@s5r6.in-berlin.de",
        "time": "Tue Feb 10 23:27:32 2009 +0100"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Feb 10 14:56:59 2009 -0800"
      },
      "message": "hugetlbfs: fix build failure with !CONFIG_HUGETLBFS\n\nFix regression due to 5a6fe125950676015f5108fb71b2a67441755003,\n\"Do not account for the address space used by hugetlbfs using VM_ACCOUNT\"\nwhich added an argument to the function hugetlb_file_setup() but not to\nthe macro hugetlb_file_setup().\n\nReported-by: Chris Clayton \u003cchris2553@googlemail.com\u003e\nSigned-off-by: Stefan Richter \u003cstefanr@s5r6.in-berlin.de\u003e\nAcked-by: Mel Gorman \u003cmel@csn.ul.ie\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "29ef01179d37168a021293ede77afbf091a49af4",
      "tree": "ed6a36a9fd9294a6f71b572a55e34435a90e4348",
      "parents": [
        "5a6fe125950676015f5108fb71b2a67441755003",
        "4906f9985e310fc01f956256b0d58ac28b0dcb19"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Feb 10 11:48:11 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Feb 10 11:48:11 2009 -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: (23 commits)\n  bridge: Fix LRO crash with tun\n  IPv6: fix to set device name when new IPv6 over IPv6 tunnel device is created.\n  gianfar: Fix boot hangs while bringing up gianfar ethernet\n  netfilter: xt_sctp: sctp chunk mapping doesn\u0027t work\n  netfilter: ctnetlink: fix echo if not subscribed to any multicast group\n  netfilter: ctnetlink: allow changing NAT sequence adjustment in creation\n  netfilter: nf_conntrack_ipv6: don\u0027t track ICMPv6 negotiation message\n  netfilter: fix tuple inversion for Node information request\n  netxen: fix msi-x interrupt handling\n  de2104x: force correct order when writing to rx ring\n  tun: Fix unicast filter overflow\n  drivers/isdn: introduce missing kfree\n  drivers/atm: introduce missing kfree\n  sunhme: Don\u0027t match PCI devices in SBUS probe.\n  9p: fix endian issues [attempt 3]\n  net_dma: call dmaengine_get only if NET_DMA enabled\n  3c509: Fix resume from hibernation for PnP mode.\n  sungem: Soft lockup in sungem on Netra AC200 when switching interface up\n  RxRPC: Fix a potential NULL dereference\n  r8169: Don\u0027t update statistics counters when interface is down\n  ...\n"
    },
    {
      "commit": "5a6fe125950676015f5108fb71b2a67441755003",
      "tree": "c985fac46de39392466c4917c497b50bdc9c0757",
      "parents": [
        "4c098bcd55fad34dcf224bf8343db6a9ac58fc68"
      ],
      "author": {
        "name": "Mel Gorman",
        "email": "mel@csn.ul.ie",
        "time": "Tue Feb 10 14:02:27 2009 +0000"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Feb 10 10:48:42 2009 -0800"
      },
      "message": "Do not account for the address space used by hugetlbfs using VM_ACCOUNT\n\nWhen overcommit is disabled, the core VM accounts for pages used by anonymous\nshared, private mappings and special mappings. It keeps track of VMAs that\nshould be accounted for with VM_ACCOUNT and VMAs that never had a reserve\nwith VM_NORESERVE.\n\nOvercommit for hugetlbfs is much riskier than overcommit for base pages\ndue to contiguity requirements. It avoids overcommiting on both shared and\nprivate mappings using reservation counters that are checked and updated\nduring mmap(). This ensures (within limits) that hugepages exist in the\nfuture when faults occurs or it is too easy to applications to be SIGKILLed.\n\nAs hugetlbfs makes its own reservations of a different unit to the base page\nsize, VM_ACCOUNT should never be set. Even if the units were correct, we would\ndouble account for the usage in the core VM and hugetlbfs. VM_NORESERVE may\nbe set because an application can request no reserves be made for hugetlbfs\nat the risk of getting killed later.\n\nWith commit fc8744adc870a8d4366908221508bb113d8b72ee, VM_NORESERVE and\nVM_ACCOUNT are getting unconditionally set for hugetlbfs-backed mappings. This\nbreaks the accounting for both the core VM and hugetlbfs, can trigger an\nOOM storm when hugepage pools are too small lockups and corrupted counters\notherwise are used. This patch brings hugetlbfs more in line with how the\ncore VM treats VM_NORESERVE but prevents VM_ACCOUNT being set.\n\nSigned-off-by: Mel Gorman \u003cmel@csn.ul.ie\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "7f5aa215088b817add9c71914b83650bdd49f8a9",
      "tree": "9b811d1f0b41a2738fc68654ae605bf5d8cf2a72",
      "parents": [
        "9eddacf9e9c03578ef2c07c9534423e823d677f8"
      ],
      "author": {
        "name": "Jan Kara",
        "email": "jack@suse.cz",
        "time": "Tue Feb 10 11:15:34 2009 -0500"
      },
      "committer": {
        "name": "Theodore Tso",
        "email": "tytso@mit.edu",
        "time": "Tue Feb 10 11:15:34 2009 -0500"
      },
      "message": "jbd2: Avoid possible NULL dereference in jbd2_journal_begin_ordered_truncate()\n\nIf we race with commit code setting i_transaction to NULL, we could\npossibly dereference it.  Proper locking requires the journal pointer\n(to access journal-\u003ej_list_lock), which we don\u0027t have.  So we have to\nchange the prototype of the function so that filesystem passes us the\njournal pointer.  Also add a more detailed comment about why the\nfunction jbd2_journal_begin_ordered_truncate() does what it does and\nhow it should be used.\n\nThanks to Dan Carpenter \u003cerror27@gmail.com\u003e for pointing to the\nsuspitious code.\n\nSigned-off-by: Jan Kara \u003cjack@suse.cz\u003e\nSigned-off-by: \"Theodore Ts\u0027o\" \u003ctytso@mit.edu\u003e\nAcked-by: Joel Becker \u003cjoel.becker@oracle.com\u003e\nCC: linux-ext4@vger.kernel.org\nCC: ocfs2-devel@oss.oracle.com\nCC: mfasheh@suse.de\nCC: Dan Carpenter \u003cerror27@gmail.com\u003e\n"
    },
    {
      "commit": "43a990765a9e874350bae1009366d00809dbc9d8",
      "tree": "11fe498156180be2c690ac7dfe4195fac7a86d15",
      "parents": [
        "8e4921515c1a379539607eb443d51c30f4f7f338"
      ],
      "author": {
        "name": "Arnd Bergmann",
        "email": "arnd@arndb.de",
        "time": "Tue Feb 10 00:00:22 2009 +0100"
      },
      "committer": {
        "name": "Takashi Iwai",
        "email": "tiwai@suse.de",
        "time": "Tue Feb 10 00:02:54 2009 +0100"
      },
      "message": "sound: Remove OSSlib stuff from linux/soundcard.h\n\nRemoved OSSlib stuff from linux/soundcard.h to fix the warnings for\n\u0027make headers_check\u0027.\n\nThis patch breaks building against OSSlib with the kernel headers\ninstead of its own headers. It should still work with any\nversion of the library from the 2003 onwards which provide\ntheir own headers for the latest interface.\n\nSigned-off-by: Arnd Bergmann \u003carnd@arndb.de\u003e\nCc: Jaswinder Singh Rajput \u003cjaswinder@kernel.org\u003e\nSigned-off-by: Takashi Iwai \u003ctiwai@suse.de\u003e\n"
    },
    {
      "commit": "d7c41b616518457e3bfece12e3f59f15d7450eeb",
      "tree": "0c4031ec93d59176d5ce1aa4a296be5a0784f14f",
      "parents": [
        "a8e807f7607ab633de7be4e2f4c350923cc2cb63",
        "4f3e797ad07d52d34983354a77b365dfcd48c1b4"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Feb 09 08:52:02 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Feb 09 08:52:02 2009 -0800"
      },
      "message": "Merge git://git.kernel.org/pub/scm/linux/kernel/git/herbert/crypto-2.6\n\n* git://git.kernel.org/pub/scm/linux/kernel/git/herbert/crypto-2.6:\n  crypto: scatterwalk - Avoid flush_dcache_page on slab pages\n  crypto: shash - Fix tfm destruction\n  crypto: api - Fix zeroing on free\n  crypto: shash - Fix module refcount\n  crypto: api - Fix algorithm test race that broke aead initialisation\n"
    },
    {
      "commit": "a5ef7ca0e2636bad0ccd07b996d775348ae2b65e",
      "tree": "fcc1ef7e4bd95ce58d5bbb74ad129bdc248252ca",
      "parents": [
        "d5b562330ec766292a3ac54ae5e0673610bd5b3d"
      ],
      "author": {
        "name": "Kyle McMartin",
        "email": "kyle@redhat.com",
        "time": "Sun Feb 08 17:39:58 2009 -0500"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Feb 09 08:15:39 2009 -0800"
      },
      "message": "x86: spinlocks: define dummy __raw_spin_is_contended\n\nArchitectures other than mips and x86 are not using ticket spinlocks.\nTherefore, the contention on the lock is meaningless, since there is\nnobody known to be waiting on it (arguably /fairly/ unfair locks).\n\nDummy it out to return 0 on other architectures.\n\nSigned-off-by: Kyle McMartin \u003ckyle@redhat.com\u003e\nAcked-by: Ralf Baechle \u003cralf@linux-mips.org\u003e\nAcked-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    }
  ],
  "next": "704126ad81b8cb7d3d70adb9ecb143f4d3fb38af"
}
