)]}'
{
  "log": [
    {
      "commit": "89eaeb09ba01632511f69ce8e14c8d2abd2dbe9e",
      "tree": "f549f2f6d8f8262568302380d77673bcfec1c410",
      "parents": [
        "f654c854d1d4e0aca5389ace541647237eb7f753"
      ],
      "author": {
        "name": "Simon Horman",
        "email": "horms@verge.net.au",
        "time": "Sun Dec 10 22:35:24 2006 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Mon Dec 11 14:35:02 2006 -0800"
      },
      "message": "[IPVS]: Use msleep_interruptable() instead of ssleep() aka msleep()\n\nDean Manners notices that when an IPVS synchonisation daemons are\nstarted the system load slowly climbs up to 1. This seems to be related\nto the call to ssleep(1) (aka msleep(1000) in the main loop. Replacing\nthis with a call to msleep_interruptable() seems to make the problem go\naway. Though I\u0027m not sure that it is correct.\n\nThis is the second edition of this patch, which replaces ssleep()\nin the main loop for both the master and backup threads, as well\nas some thread synchronisation code. The latter is just for thorougness\nas it shouldn\u0027t be causing any problems.\n\nSigned-Off-By: Simon Horman \u003chorms@verge.net.au\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "f654c854d1d4e0aca5389ace541647237eb7f753",
      "tree": "1b0e12ee723795bef70723749315a780e41c7b52",
      "parents": [
        "8109b02b5397ed52a32c116163a62a34f4768b26"
      ],
      "author": {
        "name": "Ralf Baechle",
        "email": "ralf@linux-mips.org",
        "time": "Sun Dec 10 13:46:45 2006 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Mon Dec 11 14:35:01 2006 -0800"
      },
      "message": "[HAMRADIO]: Fix baycom_epp.c compile failure.\n\nFix foobar in 15b1c0e822f578306332d4f4c449250db5c5dceb and\ne8cc49bb0fdb9e18a99e6780073d1400ba2b0d1f patch series.\n\nSigned-off-by: Ralf Baechle \u003cralf@linux-mips.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "8109b02b5397ed52a32c116163a62a34f4768b26",
      "tree": "0dbeae8cc999d2f6b71807b942eda7ff686ba7d2",
      "parents": [
        "1fba78b6cba14bd37fdb12c5367f1e4d58ff2e0f"
      ],
      "author": {
        "name": "Arnaldo Carvalho de Melo",
        "email": "acme@mandriva.com",
        "time": "Sun Dec 10 16:01:18 2006 -0200"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Mon Dec 11 14:35:00 2006 -0800"
      },
      "message": "[DCCP]: Whitespace cleanups\n\nThat accumulated over the last months hackaton, shame on me for not\nusing git-apply whitespace helping hand, will do that from now on.\n\nSigned-off-by: Arnaldo Carvalho de Melo \u003cacme@mandriva.com\u003e\n"
    },
    {
      "commit": "1fba78b6cba14bd37fdb12c5367f1e4d58ff2e0f",
      "tree": "dc606497372ac469f698fa2a31d956a67a62d739",
      "parents": [
        "9e8efc824098c241a1cde81f5558d222cb6f9369"
      ],
      "author": {
        "name": "Arnaldo Carvalho de Melo",
        "email": "acme@mandriva.com",
        "time": "Sun Dec 10 15:39:29 2006 -0200"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Mon Dec 11 14:34:59 2006 -0800"
      },
      "message": "[DCCP] ccid3: Fixup some type conversions related to rtts\n\nSpotted by David Miller when compiling on sparc64, I reproduced it here on\nparisc64, that are the only platforms to define __kernel_suseconds_t as an\n\u0027int\u0027, all the others, x86_64 and x86 included typedef it as a \u0027long\u0027, but from\nthe definition of suseconds_t it should just be an \u0027int\u0027 on platforms where it\nis \u003e\u003d 32bits, it would not require all the castings from suseconds_t to (int)\nwhen printking variables of this type, that are not needed on parisc64 and\nsparc64.\n\nSigned-off-by: Arnaldo Carvalho de Melo \u003cacme@mandriva.com\u003e\n"
    },
    {
      "commit": "9e8efc824098c241a1cde81f5558d222cb6f9369",
      "tree": "443c107edcac509a93857184f1d2e00933369dcb",
      "parents": [
        "7af5af3013f84693a7af581e3c8b32f9db493cf5"
      ],
      "author": {
        "name": "Gerrit Renker",
        "email": "gerrit@erg.abdn.ac.uk",
        "time": "Sun Dec 10 00:24:57 2006 -0200"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Mon Dec 11 14:34:58 2006 -0800"
      },
      "message": "[DCCP] ccid3: BUG-FIX - conversion errors\n\nThis fixes conversion errors which arose by not properly type-casting\nfrom u32 to __u64. Fixed by explicitly casting each type which is not\n__u64, or by performing operation after assignment.\n\nThe patch further adds missing debug information to track the current\nvalue of X_recv.\n\nSigned-off-by: Gerrit Renker \u003cgerrit@erg.abdn.ac.uk\u003e\nAcked-by: Ian McDonald \u003cian.mcdonald@jandi.co.nz\u003e\nSigned-off-by: Arnaldo Carvalho de Melo \u003cacme@mandriva.com\u003e\n"
    },
    {
      "commit": "7af5af3013f84693a7af581e3c8b32f9db493cf5",
      "tree": "4434c3993e0a6da3cd5b5ade8db06c9491773ade",
      "parents": [
        "85dcb1f78039cc55ccddd9622657a338b718aafe"
      ],
      "author": {
        "name": "Gerrit Renker",
        "email": "gerrit@erg.abdn.ac.uk",
        "time": "Sun Dec 10 00:24:33 2006 -0200"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Mon Dec 11 14:34:57 2006 -0800"
      },
      "message": "[DCCP] ccid3: Reorder packet history source file\n\nNo code change at all.\n\nThis reorders the source file to follow the same order as the corresponding\nheader file.\n\nSigned-off-by: Gerrit Renker \u003cgerrit@erg.abdn.ac.uk\u003e\nAcked-by: Ian McDonald \u003cian.mcdonald@jandi.co.nz\u003e\nSigned-off-by: Arnaldo Carvalho de Melo \u003cacme@mandriva.com\u003e\n"
    },
    {
      "commit": "85dcb1f78039cc55ccddd9622657a338b718aafe",
      "tree": "66cf39fbb6c147a013588142ba5488fcd8e666d9",
      "parents": [
        "a967241129f6dc1db92fee2c808f73a90f5f47a3"
      ],
      "author": {
        "name": "Gerrit Renker",
        "email": "gerrit@erg.abdn.ac.uk",
        "time": "Sun Dec 10 00:24:11 2006 -0200"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Mon Dec 11 14:34:56 2006 -0800"
      },
      "message": "[DCCP] ccid3: Reorder packet history header file\n\nNo code change at all.\n\nTo make the header file easier to read, the following ordering is established\namong the declarations:\n\t* hist_new\n\t* hist_delete\n\t* hist_entry_new\n\t* hist_head\n\t* hist_find_entry\n\t* hist_add_entry\n\t* hist_entry_delete\n\t* hist_purge\n\nSigned-off-by: Gerrit Renker \u003cgerrit@erg.abdn.ac.uk\u003e\nAcked-by: Ian McDonald \u003cian.mcdonald@jandi.co.nz\u003e\nSigned-off-by: Arnaldo Carvalho de Melo \u003cacme@mandriva.com\u003e\n"
    },
    {
      "commit": "a967241129f6dc1db92fee2c808f73a90f5f47a3",
      "tree": "7fb9aaedfcd47260b341050bb006729df5c6ec87",
      "parents": [
        "c5a1ae9a4cc4aef1505fa0aba079f834c3ee1af1"
      ],
      "author": {
        "name": "Gerrit Renker",
        "email": "gerrit@erg.abdn.ac.uk",
        "time": "Sun Dec 10 00:14:12 2006 -0200"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Mon Dec 11 14:34:55 2006 -0800"
      },
      "message": "[DCCP] ccid3: Make debug output consistent\n\nThis patch does not alter any algorithm, just the debug message format:\n\n * s#%s, sk\u003d%p#%s(%p)#g\n\n * when a statename is present, it now uses %s(%p, state\u003d%s)\n\n * when only function entry is debugged, it adds an `- entry\u0027\n\nSigned-off-by: Gerrit Renker \u003cgerrit@erg.abdn.ac.uk\u003e\nAcked-by: Ian McDonald \u003cian.mcdonald@jandi.co.nz\u003e\nSigned-off-by: Arnaldo Carvalho de Melo \u003cacme@mandriva.com\u003e\n"
    },
    {
      "commit": "c5a1ae9a4cc4aef1505fa0aba079f834c3ee1af1",
      "tree": "ce26c29076ae01f762fd5b09becca79ac602a63b",
      "parents": [
        "e312d100f19fdfe1019512b07a9d15653f254abf"
      ],
      "author": {
        "name": "Gerrit Renker",
        "email": "gerrit@erg.abdn.ac.uk",
        "time": "Sun Dec 10 00:09:21 2006 -0200"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Mon Dec 11 14:34:54 2006 -0800"
      },
      "message": "[DCCP] ccid3: Perform history operations only after packet has been sent\n\n This migrates all packet history operations into the routine\n ccid3_hc_tx_packet_sent, thereby removing synchronization problems\n that occur when, as before, the operations are spread over multiple\n routines.\n The following minor simplifications are also applied:\n  * several simplifications now follow from this change - several tests\n    are now no longer required\n  * removal of one unnecessary variable (dp)\n\nJustification:\n\n Currently packet history operations span two different routines,\n one of which is likely to pass through several iterations of sleeping\n and awakening.\n The first routine, ccid3_hc_tx_send_packet, allocates an entry and\n sets a few fields. The remaining fields are filled in when the second\n routine (which is not within a sleeping context), ccid3_hc_tx_packet_sent,\n is called. This has several strong drawbacks:\n  * it is not necessary to split history operations - all fields can be\n    filled in by the second routine\n  * the first routine is called multiple times, until a packet can be sent,\n    and sleeps meanwhile - this causes a lot of difficulties with regard to\n    keeping the list consistent\n  * since both routines do not have a producer-consumer like synchronization,\n    it is very difficult to maintain data across calls to these routines\n  * the fact that the routines are called in different contexts (sleeping, not\n    sleeping) adds further problems\n\nSigned-off-by: Gerrit Renker \u003cgerrit@erg.abdn.ac.uk\u003e\nAcked-by: Ian McDonald \u003cian.mcdonald@jandi.co.nz\u003e\nSigned-off-by: Arnaldo Carvalho de Melo \u003cacme@mandriva.com\u003e\n"
    },
    {
      "commit": "e312d100f19fdfe1019512b07a9d15653f254abf",
      "tree": "96b3275b746b2c871ab3d2d0f6e1d683ea0ae030",
      "parents": [
        "9f8681db961de6d75e43844e9664f1f81e05e1b7"
      ],
      "author": {
        "name": "Gerrit Renker",
        "email": "gerrit@erg.abdn.ac.uk",
        "time": "Sun Dec 10 00:08:09 2006 -0200"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Mon Dec 11 14:34:53 2006 -0800"
      },
      "message": "[DCCP] ccid3: TX history - remove unused field\n\nThis removes the `dccphtx_ccval\u0027 field since it is nowhere used in the code and\nin fact not necessary for the accounting.\n\nSigned-off-by: Gerrit Renker \u003cgerrit@erg.abdn.ac.uk\u003e\nSigned-off-by: Ian McDonald \u003cian.mcdonald@jandi.co.nz\u003e\nSigned-off-by: Arnaldo Carvalho de Melo \u003cacme@mandriva.com\u003e\n"
    },
    {
      "commit": "9f8681db961de6d75e43844e9664f1f81e05e1b7",
      "tree": "07679d0ea408127119bc8b2ce74b38031da204e5",
      "parents": [
        "de553c189e3faa0d0c38f366f73379b46587b80e"
      ],
      "author": {
        "name": "Gerrit Renker",
        "email": "gerrit@erg.abdn.ac.uk",
        "time": "Sun Dec 10 00:07:37 2006 -0200"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Mon Dec 11 14:34:52 2006 -0800"
      },
      "message": "[DCCP] ccid3: Shift window counter computation\n\n This puts the window counter computation [RFC 4342, 8.1] into a separate\n function which is called whenever a new packet is ready for immediate\n transmission in ccid3_hc_tx_send_packet.\n\nJustification:\n\n The window counter update was previously computed after the packet was sent. This has\n two drawbacks, both fixed by this patch:\n   1) re-compute another timestamp almost directly after the packet was sent (expensive),\n   2) the CCVal for the window counter is needed at the instant the packet is sent.\n\nFurther details:\n\n The initialisation of the window counter is left in the state NO_SENT, as before.\n The algorithm will do nothing if either RTT is initialised to 0 (which is ok) or if\n the RTT value remains below 4 microseconds (which is almost pathological).\n\nSigned-off-by: Gerrit Renker \u003cgerrit@erg.abdn.ac.uk\u003e\nAcked-by: Ian McDonald \u003cian.mcdonald@jandi.co.nz\u003e\nSigned-off-by: Arnaldo Carvalho de Melo \u003cacme@mandriva.com\u003e\n"
    },
    {
      "commit": "de553c189e3faa0d0c38f366f73379b46587b80e",
      "tree": "0fbc7bd2c042518383ee07287812453176ae8b0d",
      "parents": [
        "fe0499ae95f5f636bda1f6e0bdba5b7b023ea827"
      ],
      "author": {
        "name": "Gerrit Renker",
        "email": "gerrit@erg.abdn.ac.uk",
        "time": "Sun Dec 10 00:06:32 2006 -0200"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Mon Dec 11 14:34:51 2006 -0800"
      },
      "message": "[DCCP] ccid3: Sanity-check RTT samples\n\nCCID3 performance depends much on the accuracy of RTT samples.  If RTT\nsamples grow too large, performance can be catastrophically poor.\n\nTo limit the amount of possible damage in such cases, the patch\n * introduces an upper limit which identifies a maximum `sane\u0027 RTT value;\n * uses a macro to enforce this upper limit.\n\nUsing a macro was given preference, since it is necessary to identify the\ncalling function in the warning message. Since exceeding this threshold\nidentifies a critical condition, DCCP_CRIT is used and not DCCP_WARN.\n\nMany thanks to Ian McDonald for collaboration on this issue.\n\nSigned-off-by: Gerrit Renker \u003cgerrit@erg.abdn.ac.uk\u003e\nAcked-by: Ian McDonald \u003cian.mcdonald@jandi.co.nz\u003e\nSigned-off-by: Arnaldo Carvalho de Melo \u003cacme@mandriva.com\u003e\n"
    },
    {
      "commit": "fe0499ae95f5f636bda1f6e0bdba5b7b023ea827",
      "tree": "d944ebcdaa0b689de58e3c98adf3d3b707385493",
      "parents": [
        "65d6c2b42ecc0ca77bb3c0fe27fcbdc84fc7a79a"
      ],
      "author": {
        "name": "Gerrit Renker",
        "email": "gerrit@erg.abdn.ac.uk",
        "time": "Sun Dec 10 00:06:01 2006 -0200"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Mon Dec 11 14:34:50 2006 -0800"
      },
      "message": "[DCCP] ccid3: Initialise RTT values\n\nIn both the sender and the receiver it is possible that the stored\nRTT value is accessed before an actual RTT estimate has been computed.\n\nThis patch\n * initialises the sender RTT to 0\n     - the sender always accesses the RTT in ccid3_hc_tx_packet_sent\n     - the RTT is further needed for the window counter algorithm\n\n * replaces the receiver initialisation of 5msec with 0\n     - which has the same effect and removes an `XXX\u0027\n     - the RTT value is needed in ccid3_hc_rx_packet_recv as rtt_prev\n\nSigned-off-by: Gerrit Renker \u003cgerrit@erg.abdn.ac.uk\u003e\nAcked-by: Ian McDonald \u003cian.mcdonald@jandi.co.nz\u003e\nSigned-off-by: Arnaldo Carvalho de Melo \u003cacme@mandriva.com\u003e\n"
    },
    {
      "commit": "65d6c2b42ecc0ca77bb3c0fe27fcbdc84fc7a79a",
      "tree": "f38a54545125cf0c736fd484f03ec3e3ee3d971a",
      "parents": [
        "f6282f4da5eb67e08eff94d73a1911c3a008846a"
      ],
      "author": {
        "name": "Gerrit Renker",
        "email": "gerrit@erg.abdn.ac.uk",
        "time": "Sun Dec 10 00:05:38 2006 -0200"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Mon Dec 11 14:34:49 2006 -0800"
      },
      "message": "[DCCP] ccid: Deprecate ccid_hc_tx_insert_options\n\n The function ccid3_hc_tx_insert_options only does a redundant no-op,\n as the operation\n\n  DCCP_SKB_CB(skb)-\u003edccpd_ccval \u003d hctx-\u003eccid3hctx_last_win_count;\n\n is already performed _unconditionally_ in ccid3_hc_tx_send_packet.\n\n Since there is further no current need for this function, it is removed\n entirely. Since furthermore, there is actually no present need for the\n entire interface function ccid_hc_tx_insert_options, it was decided to\n remove it also, to clean up the interface.\n\nSigned-off-by: Gerrit Renker \u003cgerrit@erg.abdn.ac.uk\u003e\nSigned-off-by: Arnaldo Carvalho de Melo \u003cacme@mandriva.com\u003e\n"
    },
    {
      "commit": "f6282f4da5eb67e08eff94d73a1911c3a008846a",
      "tree": "e9d0afde4f959e374caa5b8eb4c3c9d2c588eb38",
      "parents": [
        "bf58a381e8106fe73247c753e3da58fcb5eabd2e"
      ],
      "author": {
        "name": "Gerrit Renker",
        "email": "gerrit@erg.abdn.ac.uk",
        "time": "Sun Dec 10 00:05:12 2006 -0200"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Mon Dec 11 14:34:48 2006 -0800"
      },
      "message": "[DCCP]: Warn when discarding packet due to internal errors\n\nThis adds a (debug) warning message which is triggered whenever a packet is\ndiscarded due to send failure.\n\nIt also adds a conditional, so that an interruption during dccp_wait_for_ccid\nis not treated as a `BUG\u0027: the rationale is that interruptions are external,\nwhereas bug warnings are concerned with the internals.\n\nSigned-off-by: Gerrit Renker \u003cgerrit@erg.abdn.ac.uk\u003e\nAcked-by: Ian McDonald \u003cian.mcdonald@jandi.co.nz\u003e\nSigned-off-by: Arnaldo Carvalho de Melo \u003cacme@mandriva.com\u003e\n"
    },
    {
      "commit": "bf58a381e8106fe73247c753e3da58fcb5eabd2e",
      "tree": "4f0539a3d96930bddc5291b136f4fa08c1af8e77",
      "parents": [
        "d63d8364cfe17fc9bb738f554f452595f76f21d2"
      ],
      "author": {
        "name": "Gerrit Renker",
        "email": "gerrit@erg.abdn.ac.uk",
        "time": "Sun Dec 10 00:04:43 2006 -0200"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Mon Dec 11 14:34:47 2006 -0800"
      },
      "message": "[DCCP]: Only deliver to the CCID rx side in charge\n\nThis is an optimisation to reduce CPU load. The received feedback is now\nonly directed to the active CCID component, without requiring processing\nalso by the inactive one.\n\nAs a consequence, a similar test in ccid3.c is now redundant and is\nalso removed.\n\nJustification:\n\n Currently DCCP works as a unidirectional service, i.e. a listening server\n is not at the same time a connecting client.\n As far as I can see, several modifications are necessary until that\n becomes possible.\n At the present time, received feedback is both fed to the rx/tx CCID\n modules. In unidirectional service, only one of these is active at any\n one time.\n\nSigned-off-by: Gerrit Renker \u003cgerrit@erg.abdn.ac.uk\u003e\nAcked-by: Ian McDonald \u003cian.mcdonald@jandi.co.nz\u003e\nSigned-off-by: Arnaldo Carvalho de Melo \u003cacme@mandriva.com\u003e\n"
    },
    {
      "commit": "d63d8364cfe17fc9bb738f554f452595f76f21d2",
      "tree": "32bd2371deb9ddc8a7c7bd835f33c2290cc0e8bf",
      "parents": [
        "0f9e5b573f7249b0e04a03457b55081d1f60f2bf"
      ],
      "author": {
        "name": "Gerrit Renker",
        "email": "gerrit@erg.abdn.ac.uk",
        "time": "Sun Dec 10 00:04:16 2006 -0200"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Mon Dec 11 14:34:46 2006 -0800"
      },
      "message": "[DCCP]: Simplify TFRC calculation\n\nIn migrating towards using the newer functions scaled_div/scaled_div32\nfor TFRC computations mapped from floating-point onto integer arithmetic,\nthis completes the last stage of modifications.\n\nIn particular, the overflow case for computing X_calc is circumvented by\n * breaking the computation into two stages\n * the first stage, res \u003d (s*1E6)/R, cannot overflow due to use of u64\n * in the second stage, res \u003d (res*1E6)/f, overflow on u32 is avoided due\n   to (i) returning UINT_MAX in this case (which is logically appropriate)\n   and (ii) issuing a warning message into the system log (since very likely\n   there is a problem somewhere else with the parameters)\n\nLastly, all such scaling operations are now exported into tfrc.h, since\nactually this form of scaled computation is specific to TFRC and not to CCID3.\n\nSigned-off-by: Gerrit Renker \u003cgerrit@erg.abdn.ac.uk\u003e\nAcked-by: Ian McDonald \u003cian.mcdonald@jandi.co.nz\u003e\nSigned-off-by: Arnaldo Carvalho de Melo \u003cacme@mandriva.com\u003e\n"
    },
    {
      "commit": "0f9e5b573f7249b0e04a03457b55081d1f60f2bf",
      "tree": "fa33e3252d5df520348bb22d2a14aeac0e6b2bfc",
      "parents": [
        "bfe24a6cc222d27e1491f850802fa6932232b8ef"
      ],
      "author": {
        "name": "Gerrit Renker",
        "email": "gerrit@erg.abdn.ac.uk",
        "time": "Sun Dec 10 00:03:51 2006 -0200"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Mon Dec 11 14:34:45 2006 -0800"
      },
      "message": "[DCCP]: Debug timeval operations\n\nProblem:\n\n Most target types in the CCID3 code are u32, so subtle conversion errors\n can occur if signed time calculations yield negative results: the original\n values are lost in the conversion to unsigned, calculation errors go undetected.\n\n This patch therefore\n   * sets all critical time types from unsigned to suseconds_t\n   * avoids comparison between signed/unsigned via type-casting\n   * provides ample warning messages in case time calculations are negative\n\n These warning messages can be removed at a later stage when the code\n has undergone more testing.\n\nSigned-off-by: Gerrit Renker \u003cgerrit@erg.abdn.ac.uk\u003e\nAcked-by: Ian McDonald \u003cian.mcdonald@jandi.co.nz\u003e\nSigned-off-by: Arnaldo Carvalho de Melo \u003cacme@mandriva.com\u003e\n"
    },
    {
      "commit": "bfe24a6cc222d27e1491f850802fa6932232b8ef",
      "tree": "a1782cdb20b19ffb07e1e7ce1ab7aba34fddcecd",
      "parents": [
        "b9039a2a8df974d7702564318722434bb276a995"
      ],
      "author": {
        "name": "Gerrit Renker",
        "email": "gerrit@erg.abdn.ac.uk",
        "time": "Sun Dec 10 00:03:30 2006 -0200"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Mon Dec 11 14:34:44 2006 -0800"
      },
      "message": "[DCCP] ccid3: Simplify calculation for reverse lookup of p\n\n This simplifies the calculation of a value p for a given fval when the\n first loss interval is computed (RFC 3448, 6.3.1). It makes use of the\n two new functions scaled_div/scaled_div32 to provide overflow protection.\n\n Additionally, protection against divide-by-zero is extended - in this\n case the function will return the maximally possible value of p\u003d100%.\n\nBackground:\n\n The maximum fval, f(100%), is approximately 244, i.e. the scaled value of fval\n should never exceed 244E6, which fits easily into u32. The problem is the scaling\n by 10^6, since additionally R(TT) is in microseconds.\n This is resolved by breaking the division into two stages: the first stage\n computes fval\u003d(s*10^6)/R, stores that into u64; the second stage computes\n fval \u003d (fval*10^6)/X_recv and complains if overflow is reached for u32.\n This case is safe since the TFRC reverse-lookup routine then returns p\u003d100%.\n\nSigned-off-by: Gerrit Renker \u003cgerrit@erg.abdn.ac.uk\u003e\nAcked-by: Ian McDonald \u003cian.mcdonald@jandi.co.nz\u003e\nSigned-off-by: Arnaldo Carvalho de Melo \u003cacme@mandriva.com\u003e\n"
    },
    {
      "commit": "b9039a2a8df974d7702564318722434bb276a995",
      "tree": "ee67d87ec5b6e0a7f3100f63c31050270593146d",
      "parents": [
        "1a21e49a8d60f588c1276f765198b14d5688a778"
      ],
      "author": {
        "name": "Gerrit Renker",
        "email": "gerrit@erg.abdn.ac.uk",
        "time": "Sun Dec 10 00:02:51 2006 -0200"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Mon Dec 11 14:34:43 2006 -0800"
      },
      "message": "[DCCP] ccid3: Replace scaled division operations\n\nThis replaces the remaining uses of usecs_div with scaled_div32, which\ninternally uses 64bit division and produces a warning on overflow.\n\nSigned-off-by: Gerrit Renker \u003cgerrit@erg.abdn.ac.uk\u003e\nAcked-by: Ian McDonald \u003cian.mcdonald@jandi.co.nz\u003e\nSigned-off-by: Arnaldo Carvalho de Melo \u003cacme@mandriva.com\u003e\n"
    },
    {
      "commit": "1a21e49a8d60f588c1276f765198b14d5688a778",
      "tree": "4b8770be71047437f30da694649719948977b189",
      "parents": [
        "179ebc9f92da88e15ea86d7d27308c92712d8ee9"
      ],
      "author": {
        "name": "Gerrit Renker",
        "email": "gerrit@erg.abdn.ac.uk",
        "time": "Sun Dec 10 00:02:12 2006 -0200"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Mon Dec 11 14:34:42 2006 -0800"
      },
      "message": "[DCCP] ccid3: Finer-grained resolution of sending rates\n\nThis patch\n * resolves a bug where packets smaller than 32/64 bytes resulted in sending rates of 0\n * supports all sending rates from 1/64 bytes/second up to 4Gbyte/second\n * simplifies the present overflow problems in calculations\n\nCurrent sending rate X and the cached value X_recv of the receiver-estimated\nsending rate are both scaled by 64 (2^6) in order to\n * cope with low sending rates (minimally 1 byte/second)\n * allow upgrading to use a packets-per-second implementation of CCID 3\n * avoid calculation errors due to integer arithmetic cut-off\n\nThe patch implements a revised strategy from\nhttp://www.mail-archive.com/dccp@vger.kernel.org/msg01040.html\n\nThe only difference with regard to that strategy is that t_ipi is already\nused in the calculation of the nofeedback timeout, which saves one division.\n\nSigned-off-by: Gerrit Renker \u003cgerrit@erg.abdn.ac.uk\u003e\nAcked-by: Ian McDonald \u003cian.mcdonald@jandi.co.nz\u003e\nSigned-off-by: Arnaldo Carvalho de Melo \u003cacme@mandriva.com\u003e\n"
    },
    {
      "commit": "179ebc9f92da88e15ea86d7d27308c92712d8ee9",
      "tree": "6b8a18fd9e5b3447b8b32560d258f92276c358b7",
      "parents": [
        "ff58629824c068e2a75402b5b83f12af0b36d394"
      ],
      "author": {
        "name": "Gerrit Renker",
        "email": "gerrit@erg.abdn.ac.uk",
        "time": "Sun Dec 10 00:01:22 2006 -0200"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Mon Dec 11 14:34:41 2006 -0800"
      },
      "message": "[DCCP] ccid3: Fix two bugs in sending rate computation\n\nThis fixes\n 1) a bug in the recomputation of the sending rate by the nofeedback\n    timer when no feedback at all has so far been sent by the receiver:\n    min_t was used instead of max_t, which is wrong (cf. RFC 3448, p. 10);\n\n 2) an error in the computation of larger initial windows: instead of\n    min(... max()) (cf. RFC 4342, 5.), the code had used max(... max()).\n\nSigned-off-by: Gerrit Renker \u003cgerrit@erg.abdn.ac.uk\u003e\nAcked-by: Ian McDonald \u003cian.mcdonald@jandi.co.nz\u003e\nSigned-off-by: Arnaldo Carvalho de Melo \u003cacme@mandriva.com\u003e\n"
    },
    {
      "commit": "ff58629824c068e2a75402b5b83f12af0b36d394",
      "tree": "0d8f4a64dbe4e52879cac33174df406adf77da44",
      "parents": [
        "45393a66a2c30fc8ed86e6c79a63a3cd5231c69f"
      ],
      "author": {
        "name": "Gerrit Renker",
        "email": "gerrit@erg.abdn.ac.uk",
        "time": "Sun Dec 10 00:00:14 2006 -0200"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Mon Dec 11 14:34:40 2006 -0800"
      },
      "message": "[DCCP] ccid3: Two optimisations for sending rate recomputation\n\nThis performs two optimisations for the recomputation of the sending rate.\n\n1) Currently the target sending rate X_calc is recalculated whenever\n\ta) the nofeedback timer expires, or\n\tb) a feedback packet is received.\n   In the (a) case, recomputing X_calc is redundant, since\n\n    * the parameters p and RTT do not change in between the\n      reception of feedback packets;\n\n    * the parameter X_recv is either modified from received\n      feedback or via the nofeedback timer;\n\n    * a test (`p \u003d\u003d 0\u0027) in the nofeedback timer avoids using\n      a stale/undefined value of X_calc if p was previously 0.\n\n2) The nofeedback timer now only recomputes a timestamp when p \u003d\u003d 0.\n   This is according to step (4) of [RFC 3448, 4.3] and avoids\n   unnecessarily determining a timestamp.\n\nA debug statement about not updating X is also removed - it helps very\nlittle in debugging and just clutters the logs.\n\nSigned-off-by: Gerrit Renker \u003cgerrit@erg.abdn.ac.uk\u003e\nAcked-by: Ian McDonald \u003cian.mcdonald@jandi.co.nz\u003e\nSigned-off-by: Arnaldo Carvalho de Melo \u003cacme@mandriva.com\u003e\n"
    },
    {
      "commit": "45393a66a2c30fc8ed86e6c79a63a3cd5231c69f",
      "tree": "628feedd3d6d1fbdb1728d57e4bb62e1fc61e5c4",
      "parents": [
        "5fce9a2da8a3b4ed088d9c0ac7c938a638044fdb"
      ],
      "author": {
        "name": "Gerrit Renker",
        "email": "gerrit@erg.abdn.ac.uk",
        "time": "Sat Dec 09 23:59:14 2006 -0200"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Mon Dec 11 14:34:39 2006 -0800"
      },
      "message": "[DCCP] ccid3: Check against too large p\n\nThis patch follows a suggestion by Ian McDonald and ensures that in\nthe current code the value of p can not exceed 100%.  Such a value is\nillegal and would consequently cause a bug condition in tfrc_calc_x().\n\nThe receiver case is also tested, and a warning message is added.\n\nSigned-off-by: Gerrit Renker \u003cgerrit@erg.abdn.ac.uk\u003e\nAcked-by: Ian McDonald \u003cian.mcdonald@jandi.co.nz\u003e\nSigned-off-by: Arnaldo Carvalho de Melo \u003cacme@mandriva.com\u003e\n"
    },
    {
      "commit": "5fce9a2da8a3b4ed088d9c0ac7c938a638044fdb",
      "tree": "d594024e967ae7640ef18445ff9cbad8eb820882",
      "parents": [
        "5cc3741d6cc9f07d8ddd9c45cb5088460ce3364f"
      ],
      "author": {
        "name": "Ian McDonald",
        "email": "ian.mcdonald@jandi.co.nz",
        "time": "Sat Dec 09 23:58:10 2006 -0200"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Mon Dec 11 14:34:38 2006 -0800"
      },
      "message": "[DCCP]: Update documentation\n\nAs Eddie Kohler points out the RFC is Proposed Standard not experimental.\nAlso removed documentation about deprecated socket option.\n\nSigned-off-by: Ian McDonald \u003cian.mcdonald@jandi.co.nz\u003e\nSigned-off-by: Gerrit Renker \u003cgerrit@erg.abdn.ac.uk\u003e\nSigned-off-by: Arnaldo Carvalho de Melo \u003cacme@mandriva.com\u003e\n"
    },
    {
      "commit": "5cc3741d6cc9f07d8ddd9c45cb5088460ce3364f",
      "tree": "7f7f1e51e54e7f34025b60cf93e284de72740ba5",
      "parents": [
        "e37b8d931936f88e4b2af66304eb44e69510b86c"
      ],
      "author": {
        "name": "Ian McDonald",
        "email": "ian.mcdonald@jandi.co.nz",
        "time": "Sat Dec 09 23:56:09 2006 -0200"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Mon Dec 11 14:34:37 2006 -0800"
      },
      "message": "[DCCP]: Remove timeo from output.c\n\nIt simplifies waiting for the CCID module to signal that a packet\nis ready to be sent.  Other simplifications flow on from this such as\nremoving constants.\n\nAs a result of this EAGAIN is not returned any more by dccp_wait_for_ccid\n(which would otherwise lead to unnecessarily discarding the packet in\ndccp_write_xmit).\n\nSigned-off-by: Ian McDonald \u003cian.mcdonald@jandi.co.nz\u003e\nSigned-off-by: Gerrit Renker \u003cgerrit@erg.abdn.ac.uk\u003e\nSigned-off-by: Arnaldo Carvalho de Melo \u003cacme@mandriva.com\u003e\n"
    },
    {
      "commit": "e37b8d931936f88e4b2af66304eb44e69510b86c",
      "tree": "3d4dc0521dab807f11b107db494e8c0f24eeba00",
      "parents": [
        "2653a47b8953f500be13207bdcbcfe803bc40c88"
      ],
      "author": {
        "name": "Andrew Morton",
        "email": "akpm@osdl.org",
        "time": "Sat Dec 09 14:01:49 2006 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Mon Dec 11 14:34:36 2006 -0800"
      },
      "message": "[NETPOLL]: Make sure TX lock is taken with BH disabled.\n\nAcked-by: Herbert Xu \u003cherbert@gondor.apana.org.au\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "2653a47b8953f500be13207bdcbcfe803bc40c88",
      "tree": "0b2314fefa95613876fde98d7478e31b47452d12",
      "parents": [
        "ed407717852895e04f9e088e09a4f27bb56712b7"
      ],
      "author": {
        "name": "Ralf Baechle",
        "email": "ralf@linux-mips.org",
        "time": "Sat Dec 09 13:59:25 2006 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Mon Dec 11 14:34:35 2006 -0800"
      },
      "message": "[ATM]: Ignore generated file pca200e_ecd.bin2\n\nSigned-off-by: Ralf Baechle \u003cralf@linux-mips.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "ed407717852895e04f9e088e09a4f27bb56712b7",
      "tree": "9d20ed5c9fa9119b3e856b4519a40cc6f9d7e3b5",
      "parents": [
        "686106ff5ed2cbcd3fc12a22e53c880cf0943eff"
      ],
      "author": {
        "name": "Randy Dunlap",
        "email": "randy.dunlap@oracle.com",
        "time": "Sat Dec 09 13:58:42 2006 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Mon Dec 11 14:34:34 2006 -0800"
      },
      "message": "[NET]: Fix WAN routers kconfig dependency.\n\nCurrently WAN router drivers can be built in-kernel while the\nregister/unregister_wan_device interfaces are built as modules.\nThis causes:\n\ndrivers/built-in.o: In function `cycx_init\u0027:\ncycx_main.c:(.init.text+0x5c4b): undefined reference to `register_wan_device\u0027\ndrivers/built-in.o: In function `cycx_exit\u0027:\ncycx_main.c:(.exit.text+0x560): undefined reference to `unregister_wan_device\u0027\nmake: *** [.tmp_vmlinux1] Error 1\n\nThe problem is caused by tristate -\u003e bool conversion (y or m \u003d\u003e y),\nso convert WAN_ROUTER_DRIVERS to a tristate so that the correct\ndependency is preserved.\n\nSigned-off-by: Randy Dunlap \u003crandy.dunlap@oracle.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "686106ff5ed2cbcd3fc12a22e53c880cf0943eff",
      "tree": "ddc2b6250e4e2c3aeac49d61fcfedc37afea3c2b",
      "parents": [
        "e45116b8d71ece9dbe41b114368ff7aebe3ae41a"
      ],
      "author": {
        "name": "Herbert Xu",
        "email": "herbert@gondor.apana.org.au",
        "time": "Fri Dec 08 13:59:52 2006 +1100"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Mon Dec 11 14:34:33 2006 -0800"
      },
      "message": "[CRYPTO] sha512: Fix sha384 block size\n\nThe SHA384 block size should be 128 bytes, not 96 bytes.  This was\nspotted by Andrew Donofrio.\n\nFortunately the block size isn\u0027t actually used anywhere so this typo\nhas had no real impact.\n\nSigned-off-by: Herbert Xu \u003cherbert@gondor.apana.org.au\u003e\n"
    },
    {
      "commit": "e45116b8d71ece9dbe41b114368ff7aebe3ae41a",
      "tree": "c2bb88baa52429b6b76e3ba4272cb2b29713c5a8",
      "parents": [
        "022416967a814aa1b3a9476a842c0947a1a9d784"
      ],
      "author": {
        "name": "Brice Goglin",
        "email": "Brice.Goglin@ens-lyon.org",
        "time": "Mon Dec 11 20:14:15 2006 +0100"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.osdl.org",
        "time": "Mon Dec 11 12:29:27 2006 -0800"
      },
      "message": "[PATCH] Fix typo in \u0027EXPERIMENTAL\u0027 in CC_STACKPROTECTOR on x86_64\n\nFix typo in \u0027EXPERIMENTAL\u0027 in config CC_STACKPROTECTOR in arch/x86_64/Kconfig.\n\nSigned-off-by: Brice Goglin \u003cbrice@myri.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "022416967a814aa1b3a9476a842c0947a1a9d784",
      "tree": "f1a8b59dca65ed994b2de1c405eb458f9d92bdd0",
      "parents": [
        "69de7fc037c8cda6fd20a632d39461bf9d42b927"
      ],
      "author": {
        "name": "David Howells",
        "email": "dhowells@redhat.com",
        "time": "Mon Dec 11 13:16:05 2006 +0000"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.osdl.org",
        "time": "Mon Dec 11 12:29:27 2006 -0800"
      },
      "message": "[PATCH] LOG2: Make powerpc\u0027s __ilog2_u64() take a 64-bit argument\n\nMake powerpc\u0027s __ilog2_u64() take a 64-bit argument.\n\nSigned-off-by: David Howells \u003cdhowells@redhat.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "69de7fc037c8cda6fd20a632d39461bf9d42b927",
      "tree": "096e704e8f97079ec5c1edd9d1d99b01cddc920e",
      "parents": [
        "116140b7f5c9182c86a4e419f81684209357aea7",
        "99eeb8dfb1ce3df744e2e0d00dd627d7a8199ef0"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.osdl.org",
        "time": "Mon Dec 11 12:26:03 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.osdl.org",
        "time": "Mon Dec 11 12:26:03 2006 -0800"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/drzeus/mmc\n\n* \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/drzeus/mmc:\n  AT91 MMC update for 2.6.19\n  mmc: Change SDHCI iomem error to a warning\n  mmc: fix \"prev-\u003estate: 2 !\u003d TASK_RUNNING??\" problem on SD/MMC  card removal\n  AT91 MMC 5 : Minor cleanups\n  AT91 MMC 4 : Interrupt handler cleanup\n  AT91 MMC 3 : Move global mci_clk variable\n  AT91 MMC 2 : Use platform resources\n  AT91 MMC 1: Pass host structure.\n"
    },
    {
      "commit": "116140b7f5c9182c86a4e419f81684209357aea7",
      "tree": "596e6d1a3121c022afd1bf29637b6bc6bb06d086",
      "parents": [
        "8d610dd52dd1da696e199e4b4545f33a2a5de5c6",
        "8af905b4a403ce74b8d907b50bccc453a58834bc"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.osdl.org",
        "time": "Mon Dec 11 12:22:58 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.osdl.org",
        "time": "Mon Dec 11 12:22:58 2006 -0800"
      },
      "message": "Merge branch \u0027upstream-linus\u0027 of master.kernel.org:/pub/scm/linux/kernel/git/jgarzik/netdev-2.6\n\n* \u0027upstream-linus\u0027 of master.kernel.org:/pub/scm/linux/kernel/git/jgarzik/netdev-2.6:\n  [PATCH] smc91x: Kill off excessive versatile hooks.\n  [PATCH] myri10ge: update driver version to 1.1.0\n  [PATCH] myri10ge: fix big_bytes in case of vlan frames\n  [PATCH] myri10ge: Full vlan frame in small_bytes\n  [PATCH] myri10ge: drop contiguous skb routines\n  [PATCH] myri10ge: switch to page-based skb\n  [PATCH] myri10ge: add page-based skb routines\n  [PATCH] myri10ge: indentation cleanups\n  [PATCH] chelsio: working NAPI\n  [PATCH] MACB: Use __raw register access\n  [PATCH] MACB: Use struct delayed_work instead of struct work_struct\n  [PATCH] ucc_geth: Initialize mdio_lock.\n  [PATCH] ucc_geth: compilation error fixes\n"
    },
    {
      "commit": "8d610dd52dd1da696e199e4b4545f33a2a5de5c6",
      "tree": "8b2eee4dac34ff5f1374225ccba3fedb8432b579",
      "parents": [
        "8993780a6e44fb4e7ed34e33458506a775356c6e"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.osdl.org",
        "time": "Mon Dec 11 12:12:04 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.osdl.org",
        "time": "Mon Dec 11 12:12:04 2006 -0800"
      },
      "message": "Make sure we populate the initroot filesystem late enough\n\nWe should not initialize rootfs before all the core initializers have\nrun.  So do it as a separate stage just before starting the regular\ndriver initializers.\n\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "8993780a6e44fb4e7ed34e33458506a775356c6e",
      "tree": "afa29f461ab5873eb8270d1b077b927feac1a9a7",
      "parents": [
        "9202f32558601c2c99ddc438eb3218131d00d413"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.osdl.org",
        "time": "Mon Dec 11 09:28:46 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.osdl.org",
        "time": "Mon Dec 11 11:34:11 2006 -0800"
      },
      "message": "Make SLES9 \"get_kernel_version\" work on the kernel binary again\n\nAs reported by Andy Whitcroft, at least the SLES9 initrd build process\ndepends on getting the kernel version from the kernel binary.  It does\nthat by simply trawling the binary and looking for the signature of the\n\"linux_banner\" string (the string \"Linux version \" to be exact. Which\nis really broken in itself, but whatever..)\n\nThat got broken when the string was changed to allow /proc/version to\nchange the UTS release information dynamically, and \"get_kernel_version\"\nthus returned \"%s\" (see commit a2ee8649ba6d71416712e798276bf7c40b64e6e5:\n\"[PATCH] Fix linux banner utsname information\").\n\nThis just restores \"linux_banner\" as a static string, which should fix\nthe version finding.  And /proc/version simply uses a different string.\n\nTo avoid wasting even that miniscule amount of memory, the early boot\nstring should really be marked __initdata, but that just causes the same\nbug in SLES9 to re-appear, since it will then find other occurrences of\n\"Linux version \" first.\n\nCc: Andy Whitcroft \u003capw@shadowen.org\u003e\nAcked-by: Herbert Poetzl \u003cherbert@13thfloor.at\u003e\nCc: Andi Kleen \u003cak@suse.de\u003e\nCc: Andrew Morton \u003cakpm@osdl.org\u003e\nCc: Steve Fox \u003cdrfickle@us.ibm.com\u003e\nAcked-by: Olaf Hering \u003colaf@aepfle.de\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "8af905b4a403ce74b8d907b50bccc453a58834bc",
      "tree": "bd647e8ed88df86f2193020980873847eb34f7e4",
      "parents": [
        "5796df19824bef34aabf5656f447b3b170d34c3b"
      ],
      "author": {
        "name": "Paul Mundt",
        "email": "lethal@linux-sh.org",
        "time": "Mon Dec 11 19:30:06 2006 +0900"
      },
      "committer": {
        "name": "Jeff Garzik",
        "email": "jeff@garzik.org",
        "time": "Mon Dec 11 09:54:50 2006 -0500"
      },
      "message": "[PATCH] smc91x: Kill off excessive versatile hooks.\n\nThis looks like a result of too many auto-merges. The\nCONFIG_ARCH_VERSATILE case was handled a total of 6 times.\nThis kills 5 of them.\n\nSigned-off-by: Paul Mundt \u003clethal@linux-sh.org\u003e\n\n--\n\n drivers/net/smc91x.h |   90 ---------------------------------------------------\n 1 file changed, 90 deletions(-)\nSigned-off-by: Jeff Garzik \u003cjeff@garzik.org\u003e\n"
    },
    {
      "commit": "5796df19824bef34aabf5656f447b3b170d34c3b",
      "tree": "4991685a38bf5b7c13f3dc3ffe47fad097804262",
      "parents": [
        "13348beee529cd1200deeac161e1b2de0705b495"
      ],
      "author": {
        "name": "Brice Goglin",
        "email": "brice@myri.com",
        "time": "Mon Dec 11 11:27:55 2006 +0100"
      },
      "committer": {
        "name": "Jeff Garzik",
        "email": "jeff@garzik.org",
        "time": "Mon Dec 11 09:54:07 2006 -0500"
      },
      "message": "[PATCH] myri10ge: update driver version to 1.1.0\n\nUpdate driver version to 1.1.0.\n\nSigned-off-by: Brice Goglin \u003cbrice@myri.com\u003e\nSigned-off-by: Jeff Garzik \u003cjeff@garzik.org\u003e\n"
    },
    {
      "commit": "13348beee529cd1200deeac161e1b2de0705b495",
      "tree": "a68281b8d47b665199481a30431883ed8fed9dd9",
      "parents": [
        "de3c4507047f2457359551c49b093669acb4f190"
      ],
      "author": {
        "name": "Brice Goglin",
        "email": "brice@myri.com",
        "time": "Mon Dec 11 11:27:19 2006 +0100"
      },
      "committer": {
        "name": "Jeff Garzik",
        "email": "jeff@garzik.org",
        "time": "Mon Dec 11 09:54:06 2006 -0500"
      },
      "message": "[PATCH] myri10ge: fix big_bytes in case of vlan frames\n\nFix sizing of big_bytes in the case of vlan frames. The 4\nVLAN_HLEN bytes were omitted, leading to sizing the big buffer\n4 bytes smaller than it should be.  Due to how rx buffers are\ncarved from pages, this was harmless for the common (9000, 1500)\nbyte MTUs, but could lead to data corruption for some MTUs.\n\nSigned-off-by: Brice Goglin \u003cbrice@myri.com\u003e\nSigned-off-by: Jeff Garzik \u003cjeff@garzik.org\u003e\n"
    },
    {
      "commit": "de3c4507047f2457359551c49b093669acb4f190",
      "tree": "10888df6dc066e4b9809d10e7ea420819c690f9d",
      "parents": [
        "52ea6fb39b6fd08ec8718b92cddb3fed2165a921"
      ],
      "author": {
        "name": "Brice Goglin",
        "email": "brice@myri.com",
        "time": "Mon Dec 11 11:26:38 2006 +0100"
      },
      "committer": {
        "name": "Jeff Garzik",
        "email": "jeff@garzik.org",
        "time": "Mon Dec 11 09:54:06 2006 -0500"
      },
      "message": "[PATCH] myri10ge: Full vlan frame in small_bytes\n\nReceive full vlan frames into smalls when running with a jumbo MTU.\n\nSigned-off-by: Brice Goglin \u003cbrice@myri.com\u003e\nSigned-off-by: Jeff Garzik \u003cjeff@garzik.org\u003e\n"
    },
    {
      "commit": "52ea6fb39b6fd08ec8718b92cddb3fed2165a921",
      "tree": "7faa596e413510b1f6a84e683ac77e8e2bbdf395",
      "parents": [
        "c7dab99b080accb2751c96bf66cd5ab12c78f8e4"
      ],
      "author": {
        "name": "Brice Goglin",
        "email": "brice@myri.com",
        "time": "Mon Dec 11 11:26:12 2006 +0100"
      },
      "committer": {
        "name": "Jeff Garzik",
        "email": "jeff@garzik.org",
        "time": "Mon Dec 11 09:54:06 2006 -0500"
      },
      "message": "[PATCH] myri10ge: drop contiguous skb routines\n\nDrop the old routines that used the physically contigous skb now\nthat we use the physical pages. And rename myri10ge_page_rx_done()\nto myri10ge_rx_done() as it was previously.\n\nSigned-off-by: Brice Goglin \u003cbrice@myri.com\u003e\nSigned-off-by: Jeff Garzik \u003cjeff@garzik.org\u003e\n"
    },
    {
      "commit": "c7dab99b080accb2751c96bf66cd5ab12c78f8e4",
      "tree": "e8d290ede4fe7b2ce85b5d36c0d644353179fc0e",
      "parents": [
        "dd50f3361f9f0bb407658e9087947c9bdcdefffc"
      ],
      "author": {
        "name": "Brice Goglin",
        "email": "brice@myri.com",
        "time": "Mon Dec 11 11:25:42 2006 +0100"
      },
      "committer": {
        "name": "Jeff Garzik",
        "email": "jeff@garzik.org",
        "time": "Mon Dec 11 09:54:06 2006 -0500"
      },
      "message": "[PATCH] myri10ge: switch to page-based skb\n\nSwitch to physical page skb, by calling the new page-based\nallocation routines and using myri10ge_page_rx_done().\n\nSigned-off-by: Brice Goglin \u003cbrice@myri.com\u003e\nSigned-off-by: Jeff Garzik \u003cjeff@garzik.org\u003e\n"
    },
    {
      "commit": "dd50f3361f9f0bb407658e9087947c9bdcdefffc",
      "tree": "5f7315d3e94c668af539c2478d4dba5dc1933f96",
      "parents": [
        "6250223e055764efcaef3809a9f2350edfc82bbc"
      ],
      "author": {
        "name": "Brice Goglin",
        "email": "brice@myri.com",
        "time": "Mon Dec 11 11:25:09 2006 +0100"
      },
      "committer": {
        "name": "Jeff Garzik",
        "email": "jeff@garzik.org",
        "time": "Mon Dec 11 09:54:06 2006 -0500"
      },
      "message": "[PATCH] myri10ge: add page-based skb routines\n\nAdd physical page skb allocation routines and page based rx_done,\nto be used by upcoming patches.\n\nSigned-off-by: Brice Goglin \u003cbrice@myri.com\u003e\nSigned-off-by: Jeff Garzik \u003cjeff@garzik.org\u003e\n"
    },
    {
      "commit": "6250223e055764efcaef3809a9f2350edfc82bbc",
      "tree": "c81e071a1ec86eea3a07b73051c1f00e84c14745",
      "parents": [
        "7fe26a60e08f38c797851fb3b444d753af616112"
      ],
      "author": {
        "name": "Brice Goglin",
        "email": "brice@myri.com",
        "time": "Mon Dec 11 11:24:37 2006 +0100"
      },
      "committer": {
        "name": "Jeff Garzik",
        "email": "jeff@garzik.org",
        "time": "Mon Dec 11 09:54:06 2006 -0500"
      },
      "message": "[PATCH] myri10ge: indentation cleanups\n\nIndentation cleanups to synchronize to our tree which is automatically\nindent\u0027ed.\n\nSigned-off-by: Brice Goglin \u003cbrice@myri.com\u003e\nSigned-off-by: Jeff Garzik \u003cjeff@garzik.org\u003e\n"
    },
    {
      "commit": "7fe26a60e08f38c797851fb3b444d753af616112",
      "tree": "d112dd98b9db72805e57c157ac670f74cd41ad0e",
      "parents": [
        "0f0d84e52cb2a6e0b1d101484a92121410135da1"
      ],
      "author": {
        "name": "Stephen Hemminger",
        "email": "shemminger@osdl.org",
        "time": "Fri Dec 08 11:08:33 2006 -0800"
      },
      "committer": {
        "name": "Jeff Garzik",
        "email": "jeff@garzik.org",
        "time": "Mon Dec 11 09:51:07 2006 -0500"
      },
      "message": "[PATCH] chelsio: working NAPI\n\nThis driver tries to enable/disable NAPI at runtime, but\ndoes so in an unsafe manner, and the NAPI interrupt handling is\na mess. Replace it with a compile time selected NAPI implementation.\n\nSigned-off-by: Stephen Hemminger \u003cshemminger@osdl.org\u003e\nSigned-off-by: Jeff Garzik \u003cjeff@garzik.org\u003e\n"
    },
    {
      "commit": "0f0d84e52cb2a6e0b1d101484a92121410135da1",
      "tree": "995b2a031e041b4673700904840511da476814f2",
      "parents": [
        "d836cae4f683211f14c1fd8184f478622b185164"
      ],
      "author": {
        "name": "Haavard Skinnemoen",
        "email": "hskinnemoen@atmel.com",
        "time": "Fri Dec 08 14:38:30 2006 +0100"
      },
      "committer": {
        "name": "Jeff Garzik",
        "email": "jeff@garzik.org",
        "time": "Mon Dec 11 09:31:28 2006 -0500"
      },
      "message": "[PATCH] MACB: Use __raw register access\n\nSince macb is a chip-internal device, use __raw_readl and\n__raw_writel instead of readl/writel. This will perform native-endian\naccesses, which is the right thing to do on both AVR32 and ARM devices.\n\nSigned-off-by: Haavard Skinnemoen \u003chskinnemoen@atmel.com\u003e\nSigned-off-by: Jeff Garzik \u003cjeff@garzik.org\u003e\n"
    },
    {
      "commit": "d836cae4f683211f14c1fd8184f478622b185164",
      "tree": "006f96c4099116b3b0e55311f8ff33915ec30932",
      "parents": [
        "68dc44af632944dff6c8b36013d32a254fe62de4"
      ],
      "author": {
        "name": "Haavard Skinnemoen",
        "email": "hskinnemoen@atmel.com",
        "time": "Fri Dec 08 14:37:35 2006 +0100"
      },
      "committer": {
        "name": "Jeff Garzik",
        "email": "jeff@garzik.org",
        "time": "Mon Dec 11 09:31:28 2006 -0500"
      },
      "message": "[PATCH] MACB: Use struct delayed_work instead of struct work_struct\n\nThe macb driver calls schedule_delayed_work() and friends, so we need\nto use a struct delayed_work along with it. The conversion was\nexplained by David Howells on lkml Dec 5 2006:\n\nhttp://lkml.org/lkml/2006/12/5/269\n\nSigned-off-by: Haavard Skinnemoen \u003chskinnemoen@atmel.com\u003e\nSigned-off-by: Jeff Garzik \u003cjeff@garzik.org\u003e\n"
    },
    {
      "commit": "68dc44af632944dff6c8b36013d32a254fe62de4",
      "tree": "e765bf7f488e6c2eb8f1dbcf9b8707df40b1a44c",
      "parents": [
        "1083cfe11285816fb2e2e36aad097f1c3b6db915"
      ],
      "author": {
        "name": "Scott Wood",
        "email": "scottwood@freescale.com",
        "time": "Thu Dec 07 13:31:26 2006 -0600"
      },
      "committer": {
        "name": "Jeff Garzik",
        "email": "jeff@garzik.org",
        "time": "Mon Dec 11 09:31:28 2006 -0500"
      },
      "message": "[PATCH] ucc_geth: Initialize mdio_lock.\n\nSigned-off-by: Scott Wood \u003cscottwood@freescale.com\u003e\nSigned-off-by: Jeff Garzik \u003cjeff@garzik.org\u003e\n"
    },
    {
      "commit": "1083cfe11285816fb2e2e36aad097f1c3b6db915",
      "tree": "7ceb21af5a3af13ab3b14597f8a0ea45e845dce8",
      "parents": [
        "9202f32558601c2c99ddc438eb3218131d00d413"
      ],
      "author": {
        "name": "Scott Wood",
        "email": "scottwood@freescale.com",
        "time": "Thu Dec 07 13:31:07 2006 -0600"
      },
      "committer": {
        "name": "Jeff Garzik",
        "email": "jeff@garzik.org",
        "time": "Mon Dec 11 09:31:28 2006 -0500"
      },
      "message": "[PATCH] ucc_geth: compilation error fixes\n\nFix compilation failures when building the ucc_geth driver with spinlock\ndebugging.\n\nSigned-off-by: Scott Wood \u003cscottwood@freescale.com\u003e\nSigned-off-by: Jeff Garzik \u003cjeff@garzik.org\u003e\n"
    },
    {
      "commit": "99eeb8dfb1ce3df744e2e0d00dd627d7a8199ef0",
      "tree": "5c2de26997789a04ae8a92e1177922ae27945ae4",
      "parents": [
        "a98087cf81e91999a91ceedb2d2e3a95827c651f"
      ],
      "author": {
        "name": "Andrew Victor",
        "email": "andrew@sanpeople.com",
        "time": "Mon Dec 11 12:40:23 2006 +0100"
      },
      "committer": {
        "name": "Pierre Ossman",
        "email": "drzeus@drzeus.cx",
        "time": "Mon Dec 11 12:43:35 2006 +0100"
      },
      "message": "AT91 MMC update for 2.6.19\n\nThe driver is usable on the newer SAM9 processors so replace all text\nreferences to AT91RM9200 with just AT91.\n\nThe controller bug where all the words are byte-swapped is fixed on the\nAT91SAM9 processors.  The byte-swapping work-around therefore only needs\nto be done if cpu_is_at91rm9200().\n[Original patch from Wojtek Kaniewski]\n\nThe AT91RM9200 and AT91SAM9260 processors support two MMC/SD slots - the\nslot which is connected is now passed via the platform_data and the\ncorrect slot selected in the AT91_MCI_SDCR register.\n\nThe driver should not be calling at91_set_gpio_output() since the VCC\npin should have already been configured as an output in the\nprocessor/board setup code.  The driver should call\nat91_set_gpio_value().\n\nSigned-off-by: Andrew Victor \u003candrew@sanpeople.com\u003e\nSigned-off-by: Pierre Ossman \u003cdrzeus@drzeus.cx\u003e\n"
    },
    {
      "commit": "a98087cf81e91999a91ceedb2d2e3a95827c651f",
      "tree": "a2b6beae2e14f31cd0dbfb7abb5284b974708176",
      "parents": [
        "7b30d281b9c115890c75d11eaf06881261c256da"
      ],
      "author": {
        "name": "Pierre Ossman",
        "email": "drzeus@drzeus.cx",
        "time": "Thu Dec 07 19:17:20 2006 +0100"
      },
      "committer": {
        "name": "Pierre Ossman",
        "email": "drzeus@drzeus.cx",
        "time": "Mon Dec 11 09:48:42 2006 +0100"
      },
      "message": "mmc: Change SDHCI iomem error to a warning\n\nSome controllers report an invalid iomem size, but seem to work\ncorrectly anyway. Change our current error to just a warning and\nhope it doesn\u0027t cause too much problems.\n\nSigned-off-by: Pierre Ossman \u003cdrzeus@drzeus.cx\u003e\n"
    },
    {
      "commit": "7b30d281b9c115890c75d11eaf06881261c256da",
      "tree": "79fa9f88fd469fb61b796a1b4d027ef2c11425e0",
      "parents": [
        "f3a8efa90b1aab16ead76ad7e22d9c5fc2045400"
      ],
      "author": {
        "name": "Vitaly Wool",
        "email": "vitalywool@gmail.com",
        "time": "Thu Dec 07 20:08:02 2006 +0100"
      },
      "committer": {
        "name": "Pierre Ossman",
        "email": "drzeus@drzeus.cx",
        "time": "Mon Dec 11 09:48:16 2006 +0100"
      },
      "message": "mmc: fix \"prev-\u003estate: 2 !\u003d TASK_RUNNING??\" problem on SD/MMC  card removal\n\nCurrently on SD/MMC card removal the system exhibits the following message (the platform is ARM Versatile):\n\n    prev-\u003estate: 2 !\u003d TASK_RUNNING??\n    mmcqd/762[CPU#0]: BUG in __schedule at linux-2.6/kernel/sched.c:3826\n\n(akpm: someone tried to fix this, but it\u0027s still wrong)\n\nSigned-off-by: Vitaly Wool \u003cvitalywool@gmail.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Pierre Ossman \u003cdrzeus@drzeus.cx\u003e\n"
    },
    {
      "commit": "f3a8efa90b1aab16ead76ad7e22d9c5fc2045400",
      "tree": "7b7225d92f0fe595a5a5886c4049371b16c83069",
      "parents": [
        "df05a303e3b8a0c32764941200bec76d729126bc"
      ],
      "author": {
        "name": "Andrew Victor",
        "email": "andrew@sanpeople.com",
        "time": "Mon Oct 23 14:53:20 2006 +0200"
      },
      "committer": {
        "name": "Pierre Ossman",
        "email": "drzeus@drzeus.cx",
        "time": "Mon Dec 11 09:47:21 2006 +0100"
      },
      "message": "AT91 MMC 5 : Minor cleanups\n\nA number of small cleanups to the AT91RM9200 MMC driver:\n - fix warnings generated by pr_debug().\n - prepend \"AT91 MMC:\" to printk() messages.\n\nSigned-off-by: Andrew Victor \u003candrew@sanpeople.com\u003e\nSigned-off-by: Pierre Ossman \u003cdrzeus@drzeus.cx\u003e\n"
    },
    {
      "commit": "df05a303e3b8a0c32764941200bec76d729126bc",
      "tree": "099cc16615b73c72f8e0f60e6bce2b8f66804524",
      "parents": [
        "3dd3b039d489dfbc907c64a161fd2231ddcdea48"
      ],
      "author": {
        "name": "Andrew Victor",
        "email": "andrew@sanpeople.com",
        "time": "Mon Oct 23 14:50:09 2006 +0200"
      },
      "committer": {
        "name": "Pierre Ossman",
        "email": "drzeus@drzeus.cx",
        "time": "Mon Dec 11 09:47:12 2006 +0100"
      },
      "message": "AT91 MMC 4 : Interrupt handler cleanup\n\nThis patch simplifies the AT91RM9200 MMC interrupt handler code so that\nit doesn\u0027t re-read the Interrupt Status and Interrupt Mask registers\nmultiple times.\n\nAlso defined AT91_MCI_ERRORS instead of using the hard-coded 0xffff0000.\n\nSigned-off-by: Andrew Victor \u003candrew@sanpeople.com\u003e\nSigned-off-by: Pierre Ossman \u003cdrzeus@drzeus.cx\u003e\n"
    },
    {
      "commit": "3dd3b039d489dfbc907c64a161fd2231ddcdea48",
      "tree": "9472513ca1e045b2a04c0e7eba617dbcb6f6c1a4",
      "parents": [
        "17ea0595f4e89932ac9297a3850fba8b4ecb461e"
      ],
      "author": {
        "name": "Andrew Victor",
        "email": "andrew@sanpeople.com",
        "time": "Mon Oct 23 14:46:54 2006 +0200"
      },
      "committer": {
        "name": "Pierre Ossman",
        "email": "drzeus@drzeus.cx",
        "time": "Mon Dec 11 09:47:02 2006 +0100"
      },
      "message": "AT91 MMC 3 : Move global mci_clk variable\n\nMove the global \u0027mci_clk\u0027 variable into the local \u0027at91mci_host\u0027\nstructure.\n\nSigned-off-by: Andrew Victor \u003candrew@sanpeople.com\u003e\nSigned-off-by: Pierre Ossman \u003cdrzeus@drzeus.cx\u003e\n"
    },
    {
      "commit": "17ea0595f4e89932ac9297a3850fba8b4ecb461e",
      "tree": "01429d53a991ee764a3337fa724d8c5e3d234d12",
      "parents": [
        "e0b19b83656731fc93f9a82592ebcad82c3e0944"
      ],
      "author": {
        "name": "Andrew Victor",
        "email": "andrew@sanpeople.com",
        "time": "Mon Oct 23 14:44:40 2006 +0200"
      },
      "committer": {
        "name": "Pierre Ossman",
        "email": "drzeus@drzeus.cx",
        "time": "Mon Dec 11 09:46:51 2006 +0100"
      },
      "message": "AT91 MMC 2 : Use platform resources\n\nUse the I/O base-address and IRQ passed to the driver via the\nplatform_device resources instead of using hardcoded values.\n\nSigned-off-by: Andrew Victor \u003candrew@sanpeople.com\u003e\nSigned-off-by: Pierre Ossman \u003cdrzeus@drzeus.cx\u003e\n"
    },
    {
      "commit": "e0b19b83656731fc93f9a82592ebcad82c3e0944",
      "tree": "a8c0cb460bf2e697e6290a34b5ad44d10bfce1c3",
      "parents": [
        "3263263f7091eccab6fdc23f28f09b17c0466629"
      ],
      "author": {
        "name": "Andrew Victor",
        "email": "andrew@sanpeople.com",
        "time": "Wed Oct 25 19:42:38 2006 +0200"
      },
      "committer": {
        "name": "Pierre Ossman",
        "email": "drzeus@drzeus.cx",
        "time": "Mon Dec 11 09:46:37 2006 +0100"
      },
      "message": "AT91 MMC 1: Pass host structure.\n\nThe I/O base address is now stored in the \u0027at91mci_host\u0027 structure.  We\ntherefore have to pass this structure to at91_mci_read() and\nat91_mci_write().\n\nSigned-off-by: Andrew Victor \u003candrew@sanpeople.com\u003e\nSigned-off-by: Pierre Ossman \u003cdrzeus@drzeus.cx\u003e\n"
    },
    {
      "commit": "9202f32558601c2c99ddc438eb3218131d00d413",
      "tree": "f8d5c9c981fb875946b03976a695ee86b7382f49",
      "parents": [
        "f8bf35a9145b0831d7d110402662d9cff2d90bd9"
      ],
      "author": {
        "name": "Ralf Baechle",
        "email": "ralf@linux-mips.org",
        "time": "Sun Dec 10 18:43:59 2006 +0000"
      },
      "committer": {
        "name": "Ralf Baechle",
        "email": "ralf@linux-mips.org",
        "time": "Sun Dec 10 21:52:11 2006 +0000"
      },
      "message": "[MIPS] Export local_flush_data_cache_page for sake of IDE.\n\nOn a CPU with aliases the IDE core needs to flush caches in the special\nIDE variants of insw, insl etc.  If IDE support is built as a module this\nwill only work if local_flush_data_cache_page happens is exported as a\nmodule.\n\nAs per policy export local_flush_data_cache_page as GPL symbol only.\n\nSigned-off-by: Ralf Baechle \u003cralf@linux-mips.org\u003e\n"
    },
    {
      "commit": "f8bf35a9145b0831d7d110402662d9cff2d90bd9",
      "tree": "a6974e5bdefb0a698a8d0e6604ee1ba2f0f0a7de",
      "parents": [
        "ae32ffd65bbcc32795bb9b58ed12941efeb03dff"
      ],
      "author": {
        "name": "Ralf Baechle",
        "email": "ralf@linux-mips.org",
        "time": "Sun Dec 10 15:09:38 2006 +0000"
      },
      "committer": {
        "name": "Ralf Baechle",
        "email": "ralf@linux-mips.org",
        "time": "Sun Dec 10 21:52:11 2006 +0000"
      },
      "message": "[MIPS] Export pm_power_off\n\nThis is required for ipmi_poweroff.c to work as a module.\n\nSigned-off-by: Ralf Baechle \u003cralf@linux-mips.org\u003e\n"
    },
    {
      "commit": "ae32ffd65bbcc32795bb9b58ed12941efeb03dff",
      "tree": "2831d84c6c298e68d9a47fad7f5e22d991840086",
      "parents": [
        "2d911e9a4e74ddbd059f9dabea402a119ef22e3d"
      ],
      "author": {
        "name": "Ralf Baechle",
        "email": "ralf@linux-mips.org",
        "time": "Sun Dec 10 15:05:11 2006 +0000"
      },
      "committer": {
        "name": "Ralf Baechle",
        "email": "ralf@linux-mips.org",
        "time": "Sun Dec 10 21:52:11 2006 +0000"
      },
      "message": "[MIPS] Export csum_partial_copy_nocheck.\n\nibmtr.c and typhoon.c use it.\n\nSigned-off-by: Ralf Baechle \u003cralf@linux-mips.org\u003e\n"
    },
    {
      "commit": "2d911e9a4e74ddbd059f9dabea402a119ef22e3d",
      "tree": "66f94d2fd657e5958469e4d10f3c7342af79375f",
      "parents": [
        "86384d544157db23879064cde36061cdcafc6794"
      ],
      "author": {
        "name": "Ralf Baechle",
        "email": "ralf@linux-mips.org",
        "time": "Sun Dec 10 15:02:17 2006 +0000"
      },
      "committer": {
        "name": "Ralf Baechle",
        "email": "ralf@linux-mips.org",
        "time": "Sun Dec 10 21:52:11 2006 +0000"
      },
      "message": "[MIPS] Move die and die_if_kernel() from system.h to ptrace.h\n\nThis eleminates the need to include ptrace.h into system.h and fixes a\nharmless namespace conflict on the PC symbol in bpck.c.\n\nSigned-off-by: Ralf Baechle \u003cralf@linux-mips.org\u003e\n"
    },
    {
      "commit": "86384d544157db23879064cde36061cdcafc6794",
      "tree": "ead5f75f9b89f979d2e58c8e43e0dd2fa4f5838e",
      "parents": [
        "5b1d221e6292f9fcf9f12d6c9e94ee9470ee2a24"
      ],
      "author": {
        "name": "Ralf Baechle",
        "email": "ralf@linux-mips.org",
        "time": "Sun Dec 10 14:57:28 2006 +0000"
      },
      "committer": {
        "name": "Ralf Baechle",
        "email": "ralf@linux-mips.org",
        "time": "Sun Dec 10 21:52:11 2006 +0000"
      },
      "message": "[MIPS] Discard .exit.text at linktime.\n\nThis fixes fairly unobvious breakage of various drivers.\n\nSigned-off-by: Ralf Baechle \u003cralf@linux-mips.org\u003e\n"
    },
    {
      "commit": "5b1d221e6292f9fcf9f12d6c9e94ee9470ee2a24",
      "tree": "3d9366cab298b0f39e64f6b3d4f2bac94343d125",
      "parents": [
        "3263263f7091eccab6fdc23f28f09b17c0466629"
      ],
      "author": {
        "name": "Ralf Baechle",
        "email": "ralf@linux-mips.org",
        "time": "Sat Dec 09 16:12:18 2006 +0000"
      },
      "committer": {
        "name": "Ralf Baechle",
        "email": "ralf@linux-mips.org",
        "time": "Sun Dec 10 21:52:11 2006 +0000"
      },
      "message": "[MIPS] Fix build of several IDE drivers by providing pci_get_legacy_ide_irq\n\nSigned-off-by: Ralf Baechle \u003cralf@linux-mips.org\u003e\n"
    },
    {
      "commit": "3263263f7091eccab6fdc23f28f09b17c0466629",
      "tree": "72880f0ebb001c64650e2f44e0378c3ea7054a32",
      "parents": [
        "0258736a0a2cde8ab30725b601aeca4cf8bc93ab"
      ],
      "author": {
        "name": "Herbert Xu",
        "email": "herbert@gondor.apana.org.au",
        "time": "Sun Dec 10 09:50:36 2006 +1100"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.osdl.org",
        "time": "Sun Dec 10 10:18:57 2006 -0800"
      },
      "message": "[CRYPTO] dm-crypt: Select CRYPTO_CBC\n\nAs CBC is the default chaining method for cryptoloop, we should select\nit from cryptoloop to ease the transition.  Spotted by Rene Herman.\n\nSigned-off-by: Herbert Xu \u003cherbert@gondor.apana.org.au\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "0258736a0a2cde8ab30725b601aeca4cf8bc93ab",
      "tree": "1d09118c76b838b2881e619ab0bf0392291be303",
      "parents": [
        "edb16bec41db68b22799a5fbad82c3891e637565"
      ],
      "author": {
        "name": "Cal Peake",
        "email": "cp@absolutedigital.net",
        "time": "Sun Dec 10 06:22:05 2006 -0500"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.osdl.org",
        "time": "Sun Dec 10 10:07:52 2006 -0800"
      },
      "message": "[PATCH] add MODULE_* attributes to bit reversal library\n\nAdd MODULE_* attributes to the new bit reversal library. Most notably\nMODULE_LICENSE which prevents superfluous kernel tainting.\n\nSigned-off-by: Cal Peake \u003ccp@absolutedigital.net\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "edb16bec41db68b22799a5fbad82c3891e637565",
      "tree": "d019d2fa8fbf374d810f66e1a210648e53b0c593",
      "parents": [
        "bb7320d1d96dc2e479180ae8e7a112caf0726ace",
        "f0882589666440d573f657cb3a1d5f66f3caa157"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.osdl.org",
        "time": "Sun Dec 10 10:00:00 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.osdl.org",
        "time": "Sun Dec 10 10:00:00 2006 -0800"
      },
      "message": "Merge master.kernel.org:/pub/scm/linux/kernel/git/davem/sparc-2.6\n\n* master.kernel.org:/pub/scm/linux/kernel/git/davem/sparc-2.6:\n  [SPARC64]: Fix several kprobes bugs.\n  [SPARC64]: Update defconfig.\n  [SPARC64]: dma remove extra brackets\n  [SPARC{32,64}]: Propagate ptrace_traceme() return value.\n  [SPARC64]: Replace kmalloc+memset with kzalloc\n  [SPARC]: Check kzalloc() return value in SUN4D irq/iommu init.\n  [SPARC]: Replace kmalloc+memset with kzalloc\n  [SPARC64]: Run ctrl-alt-del action for sun4v powerdown request.\n  [SPARC64]: Unaligned accesses to userspace are hard errors.\n  [SPARC64]: Call do_mathemu on illegal instruction traps too.\n  [SPARC64]: Update defconfig.\n  [SPARC64]: Add irqtrace/stacktrace/lockdep support.\n"
    },
    {
      "commit": "bb7320d1d96dc2e479180ae8e7a112caf0726ace",
      "tree": "65a81fefd82d188f5496b70439db73ca911b3f76",
      "parents": [
        "6aa8b732ca01c3d7a54e93f4d701b8aabbe60fb7",
        "1de1bf06330920802d3b7646a088965bdd918356"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.osdl.org",
        "time": "Sun Dec 10 09:59:18 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.osdl.org",
        "time": "Sun Dec 10 09:59:18 2006 -0800"
      },
      "message": "Merge branch \u0027master\u0027 of master.kernel.org:/pub/scm/linux/kernel/git/mchehab/v4l-dvb\n\n* \u0027master\u0027 of master.kernel.org:/pub/scm/linux/kernel/git/mchehab/v4l-dvb: (132 commits)\n  V4L/DVB 4949b: Fix container_of pointer retreival\n  V4L/DVB (4949a): Fix INIT_WORK\n  V4L/DVB (4949): Cxusb: codingstyle cleanups\n  V4L/DVB (4948): Cxusb: Convert tuner functions to use dvb_pll_attach\n  V4L/DVB (4947): Cx88: trivial cleanups\n  V4L/DVB (4946): Cx88: Move cx88_dvb_bus_ctrl out of the card-specific area\n  V4L/DVB (4945): Cx88: consolidate cx22702_config structs\n  V4L/DVB (4944): Cx88: Convert DViCO FusionHDTV Hybrid to use dvb_pll_attach\n  V4L/DVB (4943): Cx88: cleanup dvb_pll_attach for lgdt3302 tuners\n  V4L/DVB (4953): Usbvision minor fixes\n  V4L/DVB (4951): Add version.h, since it is required for VIDIOC_QUERYCAP\n  V4L/DVB (4940): Or51211: Changed SNR and signal strength calculations\n  V4L/DVB (4939): Or51132: Changed SNR and signal strength reporting\n  V4L/DVB (4938): Cx88: Convert lgdt3302 tuning function to use dvb_pll_attach\n  V4L/DVB (4941): Remove LINUX_VERSION_CODE and fix identations\n  V4L/DVB (4942): Whitespace cleanups\n  V4L/DVB (4937): Usbvision cleanup and code reorganization\n  V4L/DVB (4936): Make MT4049FM5 tuner to set FM Gain to Normal\n  V4L/DVB (4935): Added the capability of selecting fm gain by tuner\n  V4L/DVB (4934): Usbvision radio requires GainNormal at e register\n  ...\n"
    },
    {
      "commit": "6aa8b732ca01c3d7a54e93f4d701b8aabbe60fb7",
      "tree": "23fcbe6f4918cacdae26d513a2bd13e91d8b4c38",
      "parents": [
        "f5f1a24a2caa299bb7d294aee92d7dd3410d9ed7"
      ],
      "author": {
        "name": "Avi Kivity",
        "email": "avi@qumranet.com",
        "time": "Sun Dec 10 02:21:36 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.osdl.org",
        "time": "Sun Dec 10 09:57:22 2006 -0800"
      },
      "message": "[PATCH] kvm: userspace interface\n\nweb site: http://kvm.sourceforge.net\n\nmailing list: kvm-devel@lists.sourceforge.net\n  (http://lists.sourceforge.net/lists/listinfo/kvm-devel)\n\nThe following patchset adds a driver for Intel\u0027s hardware virtualization\nextensions to the x86 architecture.  The driver adds a character device\n(/dev/kvm) that exposes the virtualization capabilities to userspace.  Using\nthis driver, a process can run a virtual machine (a \"guest\") in a fully\nvirtualized PC containing its own virtual hard disks, network adapters, and\ndisplay.\n\nUsing this driver, one can start multiple virtual machines on a host.\n\nEach virtual machine is a process on the host; a virtual cpu is a thread in\nthat process.  kill(1), nice(1), top(1) work as expected.  In effect, the\ndriver adds a third execution mode to the existing two: we now have kernel\nmode, user mode, and guest mode.  Guest mode has its own address space mapping\nguest physical memory (which is accessible to user mode by mmap()ing\n/dev/kvm).  Guest mode has no access to any I/O devices; any such access is\nintercepted and directed to user mode for emulation.\n\nThe driver supports i386 and x86_64 hosts and guests.  All combinations are\nallowed except x86_64 guest on i386 host.  For i386 guests and hosts, both pae\nand non-pae paging modes are supported.\n\nSMP hosts and UP guests are supported.  At the moment only Intel\nhardware is supported, but AMD virtualization support is being worked on.\n\nPerformance currently is non-stellar due to the naive implementation of the\nmmu virtualization, which throws away most of the shadow page table entries\nevery context switch.  We plan to address this in two ways:\n\n- cache shadow page tables across tlb flushes\n- wait until AMD and Intel release processors with nested page tables\n\nCurrently a virtual desktop is responsive but consumes a lot of CPU.  Under\nWindows I tried playing pinball and watching a few flash movies; with a recent\nCPU one can hardly feel the virtualization.  Linux/X is slower, probably due\nto X being in a separate process.\n\nIn addition to the driver, you need a slightly modified qemu to provide I/O\ndevice emulation and the BIOS.\n\nCaveats (akpm: might no longer be true):\n\n- The Windows install currently bluescreens due to a problem with the\n  virtual APIC.  We are working on a fix.  A temporary workaround is to\n  use an existing image or install through qemu\n- Windows 64-bit does not work.  That\u0027s also true for qemu, so it\u0027s\n  probably a problem with the device model.\n\n[bero@arklinux.org: build fix]\n[simon.kagstrom@bth.se: build fix, other fixes]\n[uril@qumranet.com: KVM: Expose interrupt bitmap]\n[akpm@osdl.org: i386 build fix]\n[mingo@elte.hu: i386 fixes]\n[rdreier@cisco.com: add log levels to all printks]\n[randy.dunlap@oracle.com: Fix sparse NULL and C99 struct init warnings]\n[anthony@codemonkey.ws: KVM: AMD SVM: 32-bit host support]\nSigned-off-by: Yaniv Kamay \u003cyaniv@qumranet.com\u003e\nSigned-off-by: Avi Kivity \u003cavi@qumranet.com\u003e\nCc: Simon Kagstrom \u003csimon.kagstrom@bth.se\u003e\nCc: Bernhard Rosenkraenzer \u003cbero@arklinux.org\u003e\nSigned-off-by: Uri Lublin \u003curil@qumranet.com\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: Roland Dreier \u003crolandd@cisco.com\u003e\nSigned-off-by: Randy Dunlap \u003crandy.dunlap@oracle.com\u003e\nSigned-off-by: Anthony Liguori \u003canthony@codemonkey.ws\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "f5f1a24a2caa299bb7d294aee92d7dd3410d9ed7",
      "tree": "499a2687c2e29733974d1721d238c561078b46c5",
      "parents": [
        "2b0137001de68153203dd3bc20e6d27eb7c9719c"
      ],
      "author": {
        "name": "Daniel Walker",
        "email": "dwalker@mvista.com",
        "time": "Sun Dec 10 02:21:33 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.osdl.org",
        "time": "Sun Dec 10 09:57:22 2006 -0800"
      },
      "message": "[PATCH] clocksource: small cleanup\n\nMostly changing alignment.  Just some general cleanup.\n\n[akpm@osdl.org: build fix]\nSigned-off-by: Daniel Walker \u003cdwalker@mvista.com\u003e\nAcked-by: John Stultz \u003cjohnstul@us.ibm.com\u003e\nCc: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "2b0137001de68153203dd3bc20e6d27eb7c9719c",
      "tree": "9cb5870d892f750e1baa7255067fd6085a9dd09b",
      "parents": [
        "2b2842146cb4105877c2be51d3857ec61ebd4ff9"
      ],
      "author": {
        "name": "Daniel Walker",
        "email": "dwalker@mvista.com",
        "time": "Sun Dec 10 02:21:30 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.osdl.org",
        "time": "Sun Dec 10 09:57:22 2006 -0800"
      },
      "message": "[PATCH] clocksource: add usage of CONFIG_SYSFS\n\nSimply adds some ifdefs to remove clocksoure sysfs code when CONFIG_SYSFS\nisn\u0027t turn on.\n\nSigned-off-by: Daniel Walker \u003cdwalker@mvista.com\u003e\nAcked-by: John Stultz \u003cjohnstul@us.ibm.com\u003e\nCc: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "2b2842146cb4105877c2be51d3857ec61ebd4ff9",
      "tree": "526e19452cecf8a3669713bc35afcfa4e23bb296",
      "parents": [
        "44d306e1508fef6fa7a6eb15a1aba86ef68389a6"
      ],
      "author": {
        "name": "Arjan van de Ven",
        "email": "arjan@linux.intel.com",
        "time": "Sun Dec 10 02:21:28 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.osdl.org",
        "time": "Sun Dec 10 09:57:22 2006 -0800"
      },
      "message": "[PATCH] user of the jiffies rounding patch: Slab\n\nThis patch introduces users of the round_jiffies() function in the slab code.\n\nThe slab code has a few \"run every second\" timers for background work; these\nare obviously not timing critical as long as they happen roughly at the right\nfrequency.\n\nSigned-off-by: Arjan van de Ven \u003carjan@linux.intel.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "44d306e1508fef6fa7a6eb15a1aba86ef68389a6",
      "tree": "84edb1f4d6e1e2d3926f152bad132e037da9024c",
      "parents": [
        "4c36a5dec25fb344ad76b11860da3a8b50bd1248"
      ],
      "author": {
        "name": "Arjan van de Ven",
        "email": "arjan@linux.intel.com",
        "time": "Sun Dec 10 02:21:26 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.osdl.org",
        "time": "Sun Dec 10 09:57:22 2006 -0800"
      },
      "message": "[PATCH] user of the jiffies rounding code: JBD\n\nThis patch introduces a user: of the round_jiffies() function; the \"5 second\"\next3/jbd wakeup.\n\nWhile \"every 5 seconds\" doesn\u0027t sound as a problem, there can be many of these\n(and these timers do add up over all the kernel).  The \"5 second\" wakeup isn\u0027t\nreally timing sensitive; in addition even with rounding it\u0027ll still happen\nevery 5 seconds (with the exception of the very first time, which is likely to\nbe rounded up to somewhere closer to 6 seconds)\n\nSigned-off-by: Arjan van de Ven \u003carjan@linux.intel.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "4c36a5dec25fb344ad76b11860da3a8b50bd1248",
      "tree": "facfe4ad3bb3638d8ee6f6b3e7fc75a0a02e304a",
      "parents": [
        "5466b456ed6748e0bfe02831e570004d4c04c1d7"
      ],
      "author": {
        "name": "Arjan van de Ven",
        "email": "arjan@linux.intel.com",
        "time": "Sun Dec 10 02:21:24 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.osdl.org",
        "time": "Sun Dec 10 09:57:22 2006 -0800"
      },
      "message": "[PATCH] round_jiffies infrastructure\n\nIntroduce a round_jiffies() function as well as a round_jiffies_relative()\nfunction.  These functions round a jiffies value to the next whole second.\nThe primary purpose of this rounding is to cause all \"we don\u0027t care exactly\nwhen\" timers to happen at the same jiffy.\n\nThis avoids multiple timers firing within the second for no real reason;\nwith dynamic ticks these extra timers cause wakeups from deep sleep CPU\nsleep states and thus waste power.\n\nThe exact wakeup moment is skewed by the cpu number, to avoid all cpus from\nwaking up at the exact same time (and hitting the same lock/cachelines\nthere)\n\n[akpm@osdl.org: fix variable type]\nSigned-off-by: Arjan van de Ven \u003carjan@linux.intel.com\u003e\nCc: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "5466b456ed6748e0bfe02831e570004d4c04c1d7",
      "tree": "90afd9e5142edb8f9a6facee7258ed2c556a6d9b",
      "parents": [
        "4fd45812cbe875a620c86a096a5d46c742694b7e"
      ],
      "author": {
        "name": "Vadim Lobanov",
        "email": "vlobanov@speakeasy.net",
        "time": "Sun Dec 10 02:21:22 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.osdl.org",
        "time": "Sun Dec 10 09:57:22 2006 -0800"
      },
      "message": "[PATCH] fdtable: Implement new pagesize-based fdtable allocator\n\nThis patch provides an improved fdtable allocation scheme, useful for\nexpanding fdtable file descriptor entries.  The main focus is on the fdarray,\nas its memory usage grows 128 times faster than that of an fdset.\n\nThe allocation algorithm sizes the fdarray in such a way that its memory usage\nincreases in easy page-sized chunks. The overall algorithm expands the allowed\nsize in powers of two, in order to amortize the cost of invoking vmalloc() for\nlarger allocation sizes. Namely, the following sizes for the fdarray are\nconsidered, and the smallest that accommodates the requested fd count is\nchosen:\n\n    pagesize / 4\n    pagesize / 2\n    pagesize      \u003c- memory allocator switch point\n    pagesize * 2\n    pagesize * 4\n    ...etc...\n\nUnlike the current implementation, this allocation scheme does not require a\nloop to compute the optimal fdarray size, and can be done in efficient\nstraightline code.\n\nFurthermore, since the fdarray overflows the pagesize boundary long before any\nof the fdsets do, it makes sense to optimize run-time by allocating both\nfdsets in a single swoop.  Even together, they will still be, by far, smaller\nthan the fdarray.  The fdtable-\u003eopen_fds is now used as the anchor for the\nfdset memory allocation.\n\nSigned-off-by: Vadim Lobanov \u003cvlobanov@speakeasy.net\u003e\nCc: Christoph Hellwig \u003chch@lst.de\u003e\nCc: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\nCc: Dipankar Sarma \u003cdipankar@in.ibm.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "4fd45812cbe875a620c86a096a5d46c742694b7e",
      "tree": "8d2c99caa718da6cda87229076adf708494ff251",
      "parents": [
        "bbea9f69668a3d0cf9feba15a724cd02896f8675"
      ],
      "author": {
        "name": "Vadim Lobanov",
        "email": "vlobanov@speakeasy.net",
        "time": "Sun Dec 10 02:21:17 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.osdl.org",
        "time": "Sun Dec 10 09:57:22 2006 -0800"
      },
      "message": "[PATCH] fdtable: Remove the free_files field\n\nAn fdtable can either be embedded inside a files_struct or standalone (after\nbeing expanded).  When an fdtable is being discarded after all RCU references\nto it have expired, we must either free it directly, in the standalone case,\nor free the files_struct it is contained within, in the embedded case.\n\nCurrently the free_files field controls this behavior, but we can get rid of\nit entirely, as all the necessary information is already recorded.  We can\ndistinguish embedded and standalone fdtables using max_fds, and if it is\nembedded we can divine the relevant files_struct using container_of().\n\nSigned-off-by: Vadim Lobanov \u003cvlobanov@speakeasy.net\u003e\nCc: Christoph Hellwig \u003chch@lst.de\u003e\nCc: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\nCc: Dipankar Sarma \u003cdipankar@in.ibm.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "bbea9f69668a3d0cf9feba15a724cd02896f8675",
      "tree": "bc58506e4daba4a04309181a5501ae4eb5424783",
      "parents": [
        "f3d19c90fb117a5f080310a4592929aa8e1ad8e9"
      ],
      "author": {
        "name": "Vadim Lobanov",
        "email": "vlobanov@speakeasy.net",
        "time": "Sun Dec 10 02:21:12 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.osdl.org",
        "time": "Sun Dec 10 09:57:22 2006 -0800"
      },
      "message": "[PATCH] fdtable: Make fdarray and fdsets equal in size\n\nCurrently, each fdtable supports three dynamically-sized arrays of data: the\nfdarray and two fdsets.  The code allows the number of fds supported by the\nfdarray (fdtable-\u003emax_fds) to differ from the number of fds supported by each\nof the fdsets (fdtable-\u003emax_fdset).\n\nIn practice, it is wasteful for these two sizes to differ: whenever we hit a\nlimit on the smaller-capacity structure, we will reallocate the entire fdtable\nand all the dynamic arrays within it, so any delta in the memory used by the\nlarger-capacity structure will never be touched at all.\n\nRather than hogging this excess, we shouldn\u0027t even allocate it in the first\nplace, and keep the capacities of the fdarray and the fdsets equal.  This\npatch removes fdtable-\u003emax_fdset.  As an added bonus, most of the supporting\ncode becomes simpler.\n\nSigned-off-by: Vadim Lobanov \u003cvlobanov@speakeasy.net\u003e\nCc: Christoph Hellwig \u003chch@lst.de\u003e\nCc: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\nCc: Dipankar Sarma \u003cdipankar@in.ibm.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "f3d19c90fb117a5f080310a4592929aa8e1ad8e9",
      "tree": "80dee984c0b9f06d458257e54dc7742c981d2b05",
      "parents": [
        "5eb6c7a2ab413dea1ee6c08dd58263a1c2c2efa3"
      ],
      "author": {
        "name": "Vadim Lobanov",
        "email": "vlobanov@speakeasy.net",
        "time": "Sun Dec 10 02:21:09 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.osdl.org",
        "time": "Sun Dec 10 09:57:21 2006 -0800"
      },
      "message": "[PATCH] fdtable: Delete pointless code in dup_fd()\n\nThe dup_fd() function creates a new files_struct and fdtable embedded inside\nthat files_struct, and then possibly expands the fdtable using expand_files().\n\nThe out_release error path is invoked when expand_files() returns an error\ncode.  However, when this attempt to expand fails, the fdtable is left in its\noriginal embedded form, so it is pointless to try to free the associated\nfdarray and fdsets.\n\nSigned-off-by: Vadim Lobanov \u003cvlobanov@speakeasy.net\u003e\nCc: Dipankar Sarma \u003cdipankar@in.ibm.com\u003e\nCc: Christoph Hellwig \u003chch@lst.de\u003e\nCc: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "5eb6c7a2ab413dea1ee6c08dd58263a1c2c2efa3",
      "tree": "f1e2f7994321290f4e6e641894cc21176c16767b",
      "parents": [
        "8459d86aff04fa53c2ab6a6b9f355b3063cc8014"
      ],
      "author": {
        "name": "Zach Brown",
        "email": "zach.brown@oracle.com",
        "time": "Sun Dec 10 02:21:07 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.osdl.org",
        "time": "Sun Dec 10 09:57:21 2006 -0800"
      },
      "message": "[PATCH] dio: lock refcount operations\n\nThe wait_for_more_bios() function name was poorly chosen.  While looking to\nclean it up it I noticed that the dio struct refcounting between the bio\ncompletion and dio submission paths was racey.\n\nThe bio submission path was simply freeing the dio struct if\natomic_dec_and_test() indicated that it dropped the final reference.\n\nThe aio bio completion path was dereferencing its dio struct pointer *after\ndropping its reference* based on the remaining number of references.\n\nThese two paths could race and result in the aio bio completion path\ndereferencing a freed dio, though this was not observed in the wild.\n\nThis moves the refcount under the bio lock so that bio completion can drop\nits reference and decide to wake all in one atomic step.\n\nOnce testing and waking is locked dio_await_one() can test its sleeping\ncondition and mark itself uninterruptible under the lock.  It gets simpler\nand wait_for_more_bios() disappears.\n\nThe addition of the interrupt masking spin lock acquiry in dio_bio_submit()\nlooks alarming.  This lock acquiry existed in that path before the recent\ndio completion patch set.  We shouldn\u0027t expect significant performance\nregression from returning to the behaviour that existed before the\ncompletion clean up work.\n\nThis passed 4k block ext3 O_DIRECT fsx and aio-stress on an SMP machine.\n\nSigned-off-by: Zach Brown \u003czach.brown@oracle.com\u003e\nCc: Badari Pulavarty \u003cpbadari@us.ibm.com\u003e\nCc: Suparna Bhattacharya \u003csuparna@in.ibm.com\u003e\nCc: Jeff Moyer \u003cjmoyer@redhat.com\u003e\nCc: \u003cxfs-masters@oss.sgi.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "8459d86aff04fa53c2ab6a6b9f355b3063cc8014",
      "tree": "c0584c4907f0d63a18998b7cbffdf7900609606b",
      "parents": [
        "20258b2b397031649e4a41922fe803d57017df84"
      ],
      "author": {
        "name": "Zach Brown",
        "email": "zach.brown@oracle.com",
        "time": "Sun Dec 10 02:21:05 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.osdl.org",
        "time": "Sun Dec 10 09:57:21 2006 -0800"
      },
      "message": "[PATCH] dio: only call aio_complete() after returning -EIOCBQUEUED\n\nThe only time it is safe to call aio_complete() is when the -\u003eki_retry\nfunction returns -EIOCBQUEUED to the AIO core.  direct_io_worker() has\nhistorically done this by relying on its caller to translate positive return\ncodes into -EIOCBQUEUED for the aio case.  It did this by trying to keep\nconditionals in sync.  direct_io_worker() knew when finished_one_bio() was\ngoing to call aio_complete().  It would reverse the test and wait and free the\ndio in the cases it thought that finished_one_bio() wasn\u0027t going to.\n\nNot surprisingly, it ended up getting it wrong.  \u0027ret\u0027 could be a negative\nerrno from the submission path but it failed to communicate this to\nfinished_one_bio().  direct_io_worker() would return \u003c 0, it\u0027s callers\nwouldn\u0027t raise -EIOCBQUEUED, and aio_complete() would be called.  In the\nfuture finished_one_bio()\u0027s tests wouldn\u0027t reflect this and aio_complete()\nwould be called for a second time which can manifest as an oops.\n\nThe previous cleanups have whittled the sync and async completion paths down\nto the point where we can collapse them and clearly reassert the invariant\nthat we must only call aio_complete() after returning -EIOCBQUEUED.\ndirect_io_worker() will only return -EIOCBQUEUED when it is not the last to\ndrop the dio refcount and the aio bio completion path will only call\naio_complete() when it is the last to drop the dio refcount.\ndirect_io_worker() can ensure that it is the last to drop the reference count\nby waiting for bios to drain.  It does this for sync ops, of course, and for\npartial dio writes that must fall back to buffered and for aio ops that saw\nerrors during submission.\n\nThis means that operations that end up waiting, even if they were issued as\naio ops, will not call aio_complete() from dio.  Instead we return the return\ncode of the operation and let the aio core call aio_complete().  This is\npurposely done to fix a bug where AIO DIO file extensions would call\naio_complete() before their callers have a chance to update i_size.\n\nNow that direct_io_worker() is explicitly returning -EIOCBQUEUED its callers\nno longer have to translate for it.  XFS needs to be careful not to free\nresources that will be used during AIO completion if -EIOCBQUEUED is returned.\n We maintain the previous behaviour of trying to write fs metadata for O_SYNC\naio+dio writes.\n\nSigned-off-by: Zach Brown \u003czach.brown@oracle.com\u003e\nCc: Badari Pulavarty \u003cpbadari@us.ibm.com\u003e\nCc: Suparna Bhattacharya \u003csuparna@in.ibm.com\u003e\nAcked-by: Jeff Moyer \u003cjmoyer@redhat.com\u003e\nCc: \u003cxfs-masters@oss.sgi.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "20258b2b397031649e4a41922fe803d57017df84",
      "tree": "9c5fc96367b4938474cee2789d3c98c5e37586bf",
      "parents": [
        "0273201e693fd62381f6b1e85b15ffc117d8a46e"
      ],
      "author": {
        "name": "Zach Brown",
        "email": "zach.brown@oracle.com",
        "time": "Sun Dec 10 02:21:01 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.osdl.org",
        "time": "Sun Dec 10 09:57:21 2006 -0800"
      },
      "message": "[PATCH] dio: remove duplicate bio wait code\n\nNow that we have a single refcount and waiting path we can reuse it in the\nasync \u0027should_wait\u0027 path.  It continues to rely on the fragile link between\nthe conditional in dio_complete_aio() which decides to complete the AIO and\nthe conditional in direct_io_worker() which decides to wait and free.\n\nBy waiting before dropping the reference we stop dio_bio_end_aio() from\ncalling dio_complete_aio() which used to wake up the waiter after seeing the\nreference count drop to 0.  We hoist this wake up into dio_bio_end_aio() which\nnow notices when it\u0027s left a single remaining reference that is held by the\nwaiter.\n\nSigned-off-by: Zach Brown \u003czach.brown@oracle.com\u003e\nCc: Badari Pulavarty \u003cpbadari@us.ibm.com\u003e\nCc: Suparna Bhattacharya \u003csuparna@in.ibm.com\u003e\nAcked-by: Jeff Moyer \u003cjmoyer@redhat.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "0273201e693fd62381f6b1e85b15ffc117d8a46e",
      "tree": "2dff76f33cbcaf7b7d88187da122d7aa98268b11",
      "parents": [
        "17a7b1d74b1207f8f1af40b5d184989076d08f8b"
      ],
      "author": {
        "name": "Zach Brown",
        "email": "zach.brown@oracle.com",
        "time": "Sun Dec 10 02:20:59 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.osdl.org",
        "time": "Sun Dec 10 09:57:21 2006 -0800"
      },
      "message": "[PATCH] dio: formalize bio counters as a dio reference count\n\nPreviously we had two confusing counts of bio progress.  \u0027bio_count\u0027 was\ndecremented as bios were processed and freed by the dio core.  It was used to\nindicate final completion of the dio operation.  \u0027bios_in_flight\u0027 reflected\nhow many bios were between submit_bio() and bio-\u003eend_io.  It was used by the\nsync path to decide when to wake up and finish completing bios and was ignored\nby the async path.\n\nThis patch collapses the two notions into one notion of a dio reference count.\n bios hold a dio reference when they\u0027re between submit_bio and bio-\u003eend_io.\n\nSince bios_in_flight was only used in the sync path it is now equivalent to\ndio-\u003erefcount - 1 which accounts for direct_io_worker() holding a reference\nfor the duration of the operation.\n\ndio_bio_complete() -\u003e finished_one_bio() was called from the sync path after\nfinding bios on the list that the bio-\u003eend_io function had deposited.\nfinished_one_bio() can not drop the dio reference on behalf of these bios now\nbecause bio-\u003eend_io already has.  The is_async test in finished_one_bio()\nmeant that it never actually did anything other than drop the bio_count for\nsync callers.  So we remove its refcount decrement, don\u0027t call it from\ndio_bio_complete(), and hoist its call up into the async dio_bio_complete()\ncaller after an explicit refcount decrement.  It is renamed dio_complete_aio()\nto reflect the remaining work it actually does.\n\nSigned-off-by: Zach Brown \u003czach.brown@oracle.com\u003e\nCc: Badari Pulavarty \u003cpbadari@us.ibm.com\u003e\nCc: Suparna Bhattacharya \u003csuparna@in.ibm.com\u003e\nAcked-by: Jeff Moyer \u003cjmoyer@redhat.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "17a7b1d74b1207f8f1af40b5d184989076d08f8b",
      "tree": "18dceaf00a1ae275fb770c83cec0eae81662352a",
      "parents": [
        "6d544bb4d9019c3a0d7ee4af1e4bbbd61a6e16dc"
      ],
      "author": {
        "name": "Zach Brown",
        "email": "zach.brown@oracle.com",
        "time": "Sun Dec 10 02:20:56 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.osdl.org",
        "time": "Sun Dec 10 09:57:21 2006 -0800"
      },
      "message": "[PATCH] dio: call blk_run_address_space() once per op\n\nWe only need to call blk_run_address_space() once after all the bios for the\ndirect IO op have been submitted.  This removes the chance of calling\nblk_run_address_space() after spurious wake ups as the sync path waits for\nbios to drain.  It\u0027s also one less difference betwen the sync and async paths.\n\nIn the process we remove a redundant dio_bio_submit() that its caller had\nalready performed.\n\nSigned-off-by: Zach Brown \u003czach.brown@oracle.com\u003e\nCc: Badari Pulavarty \u003cpbadari@us.ibm.com\u003e\nCc: Suparna Bhattacharya \u003csuparna@in.ibm.com\u003e\nAcked-by: Jeff Moyer \u003cjmoyer@redhat.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "6d544bb4d9019c3a0d7ee4af1e4bbbd61a6e16dc",
      "tree": "cbf528f4270b60527961633c839ef62cfa69ebdf",
      "parents": [
        "1757128438d41670ded8bc3bc735325cc07dc8f9"
      ],
      "author": {
        "name": "Zach Brown",
        "email": "zach.brown@oracle.com",
        "time": "Sun Dec 10 02:20:54 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.osdl.org",
        "time": "Sun Dec 10 09:57:21 2006 -0800"
      },
      "message": "[PATCH] dio: centralize completion in dio_complete()\n\nThere have been a lot of bugs recently due to the way direct_io_worker() tries\nto decide how to finish direct IO operations.  In the worst examples it has\nfailed to call aio_complete() at all (hang) or called it too many times\n(oops).\n\nThis set of patches cleans up the completion phase with the goal of removing\nthe complexity that lead to these bugs.  We end up with one path that\ncalculates the result of the operation after all off the bios have completed.\nWe decide when to generate a result of the operation using that path based on\nthe final release of a refcount on the dio structure.\n\nI tried to progress towards the final state in steps that were relatively easy\nto understand.  Each step should compile but I only tested the final result of\nhaving all the patches applied.\n\nI\u0027ve tested these on low end PC drives with aio-stress, the direct IO tests I\ncould manage to get running in LTP, orasim, and some home-brew functional\ntests.\n\nIn http://lkml.org/lkml/2006/9/21/103 IBM reports success with ext2 and ext3\nrunning DIO LTP tests.  They found that XFS bug which has since been addressed\nin the patch series.\n\nThis patch:\n\nThe mechanics which decide the result of a direct IO operation were duplicated\nin the sync and async paths.\n\nThe async path didn\u0027t check page_errors which can manifest as silently\nreturning success when the final pointer in an operation faults and its\nmatching file region is filled with zeros.\n\nThe sync path and async path differed in whether they passed errors to the\ncaller\u0027s dio-\u003eend_io operation.  The async path was passing errors to it which\ntrips an assertion in XFS, though it is apparently harmless.\n\nThis centralizes the completion phase of dio ops in one place.  AIO will now\nreturn EFAULT consistently and all paths fall back to the previously sync\nbehaviour of passing the number of bytes \u0027transferred\u0027 to the dio-\u003eend_io\ncallback, regardless of errors.\n\ndio_await_completion() doesn\u0027t have to propogate EIO from non-uptodate bios\nnow that it\u0027s being propogated through dio_complete() via dio-\u003eio_error.  This\nlets it return void which simplifies its sole caller.\n\nSigned-off-by: Zach Brown \u003czach.brown@oracle.com\u003e\nCc: Badari Pulavarty \u003cpbadari@us.ibm.com\u003e\nCc: Suparna Bhattacharya \u003csuparna@in.ibm.com\u003e\nAcked-by: Jeff Moyer \u003cjmoyer@redhat.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "1757128438d41670ded8bc3bc735325cc07dc8f9",
      "tree": "e85679cbe949e337616ac53ab3b3fd1a3fa14a63",
      "parents": [
        "c2b00852fbae4f8c45c2651530ded3bd01bde814"
      ],
      "author": {
        "name": "NeilBrown",
        "email": "neilb@suse.de",
        "time": "Sun Dec 10 02:20:52 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.osdl.org",
        "time": "Sun Dec 10 09:57:21 2006 -0800"
      },
      "message": "[PATCH] md: assorted md and raid1 one-liners\n\nFix few bugs that meant that:\n  - superblocks weren\u0027t alway written at exactly the right time (this\n    could show up if the array was not written to - writting to the array\n    causes lots of superblock updates and so hides these errors).\n\n  - restarting device recovery after a clean shutdown (version-1 metadata\n    only) didn\u0027t work as intended (or at all).\n\n1/ Ensure superblock is updated when a new device is added.\n2/ Remove an inappropriate test on MD_RECOVERY_SYNC in md_do_sync.\n   The body of this if takes one of two branches depending on whether\n   MD_RECOVERY_SYNC is set, so testing it in the clause of the if\n   is wrong.\n3/ Flag superblock for updating after a resync/recovery finishes.\n4/ If we find the neeed to restart a recovery in the middle (version-1\n   metadata only) make sure a full recovery (not just as guided by\n   bitmaps) does get done.\n\nSigned-off-by: Neil Brown \u003cneilb@suse.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "c2b00852fbae4f8c45c2651530ded3bd01bde814",
      "tree": "697a2087ffb1e5d3d81af628e818f9d943c4267f",
      "parents": [
        "b8c6b645563d641df91fdcfd84a9c73c91d75b61"
      ],
      "author": {
        "name": "NeilBrown",
        "email": "neilb@suse.de",
        "time": "Sun Dec 10 02:20:51 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.osdl.org",
        "time": "Sun Dec 10 09:57:21 2006 -0800"
      },
      "message": "[PATCH] md: return a non-zero error to bi_end_io as appropriate in raid5\n\nCurrently raid5 depends on clearing the BIO_UPTODATE flag to signal an error\nto higher levels.  While this should be sufficient, it is safer to explicitly\nset the error code as well - less room for confusion.\n\nSigned-off-by: Neil Brown \u003cneilb@suse.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "b8c6b645563d641df91fdcfd84a9c73c91d75b61",
      "tree": "434f057ef1523fa84d8e669661c06db569a2f030",
      "parents": [
        "fdee8ae4498c48b44c0eac592f9c6ed24c4517c1"
      ],
      "author": {
        "name": "NeilBrown",
        "email": "neilb@suse.de",
        "time": "Sun Dec 10 02:20:50 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.osdl.org",
        "time": "Sun Dec 10 09:57:21 2006 -0800"
      },
      "message": "[PATCH] md: remove some old ifdefed-out code from raid5.c\n\nThere are some vestiges of old code that was used for bypassing the stripe\ncache on reads in raid5.c.  This was never updated after the change from\nbuffer_heads to bios, but was left as a reminder.\n\nThat functionality has nowe been implemented in a completely different way, so\nthe old code can go.\n\nSigned-off-by: Neil Brown \u003cneilb@suse.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "fdee8ae4498c48b44c0eac592f9c6ed24c4517c1",
      "tree": "9d77e7fec74adb9c3689f565dfcbf2890ab5ccbe",
      "parents": [
        "b875e531fc82db592d6093594593d5cafde0a1cd"
      ],
      "author": {
        "name": "Jeff Garzik",
        "email": "jeff@garzik.org",
        "time": "Sun Dec 10 02:20:50 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.osdl.org",
        "time": "Sun Dec 10 09:57:21 2006 -0800"
      },
      "message": "[PATCH] MD: conditionalize some code\n\nThe autorun code is only used if this module is built into the static\nkernel image.  Adjust #ifdefs accordingly.\n\nSigned-off-by: Jeff Garzik \u003cjeff@garzik.org\u003e\nAcked-by: NeilBrown \u003cneilb@suse.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "b875e531fc82db592d6093594593d5cafde0a1cd",
      "tree": "4bf23fcee1a1d1675339ea7e5d671dde6dd8641f",
      "parents": [
        "5248861511d6aae4997a5aa7152824d87587b0b6"
      ],
      "author": {
        "name": "NeilBrown",
        "email": "neilb@suse.de",
        "time": "Sun Dec 10 02:20:49 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.osdl.org",
        "time": "Sun Dec 10 09:57:21 2006 -0800"
      },
      "message": "[PATCH] md: fix innocuous bug in raid6 stripe_to_pdidx\n\nstripe_to_pdidx finds the index of the parity disk for a given stripe.  It\nassumes raid5 in that it uses \"disks-1\" to determine the number of data disks.\n\nThis is incorrect for raid6 but fortunately the two usages cancel each other\nout.  The only way that \u0027data_disks\u0027 affects the calculation of pd_idx in\nraid5_compute_sector is when it is divided into the sector number.  But as\nthat sector number is calculated by multiplying in the wrong value of\n\u0027data_disks\u0027 the division produces the right value.\n\nSo it is innocuous but needs to be fixed.\n\nAlso change the calculation of raid_disks in compute_blocknr to make it\nmore obviously correct (it seems at first to always use disks-1 too).\n\nSigned-off-by: Neil Brown \u003cneilb@suse.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "5248861511d6aae4997a5aa7152824d87587b0b6",
      "tree": "a853392a6ca8fdb10a308e46b90e4ed63e66bf04",
      "parents": [
        "46031f9a38a9773021f1872abc713d62467ac22e"
      ],
      "author": {
        "name": "Raz Ben-Jehuda(caro)",
        "email": "raziebe@gmail.com",
        "time": "Sun Dec 10 02:20:48 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.osdl.org",
        "time": "Sun Dec 10 09:57:20 2006 -0800"
      },
      "message": "[PATCH] md: enable bypassing cache for reads\n\nCall the chunk_aligned_read where appropriate.\n\nSigned-off-by: Neil Brown \u003cneilb@suse.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "46031f9a38a9773021f1872abc713d62467ac22e",
      "tree": "fe91f661fe0aad5f149447797c5d31544453ca38",
      "parents": [
        "f679623f50545bc0577caf2d0f8675b61162f059"
      ],
      "author": {
        "name": "Raz Ben-Jehuda(caro)",
        "email": "raziebe@gmail.com",
        "time": "Sun Dec 10 02:20:47 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.osdl.org",
        "time": "Sun Dec 10 09:57:20 2006 -0800"
      },
      "message": "[PATCH] md: allow reads that have bypassed the cache to be retried on failure\n\nIf a bypass-the-cache read fails, we simply try again through the cache.  If\nit fails again it will trigger normal recovery precedures.\n\nupdate 1:\n\nFrom: NeilBrown \u003cneilb@suse.de\u003e\n\n1/\n  chunk_aligned_read and retry_aligned_read assume that\n      data_disks \u003d\u003d raid_disks - 1\n  which is not true for raid6.\n  So when an aligned read request bypasses the cache, we can get the wrong data.\n\n2/ The cloned bio is being used-after-free in raid5_align_endio\n   (to test BIO_UPTODATE).\n\n3/ We forgot to add rdev-\u003edata_offset when submitting\n   a bio for aligned-read\n\n4/ clone_bio calls blk_recount_segments and then we change bi_bdev,\n   so we need to invalidate the segment counts.\n\n5/ We don\u0027t de-reference the rdev when the read completes.\n   This means we need to record the rdev to so it is still\n   available in the end_io routine.  Fortunately\n   bi_next in the original bio is unused at this point so\n   we can stuff it in there.\n\n6/ We leak a cloned bio if the target rdev is not usable.\n\nFrom: NeilBrown \u003cneilb@suse.de\u003e\n\nupdate 2:\n\n1/ When aligned requests fail (read error) they need to be retried\n   via the normal method (stripe cache).  As we cannot be sure that\n   we can process a single read in one go (we may not be able to\n   allocate all the stripes needed) we store a bio-being-retried\n   and a list of bioes-that-still-need-to-be-retried.\n   When find a bio that needs to be retried, we should add it to\n   the list, not to single-bio...\n\n2/ We were never incrementing \u0027scnt\u0027 when resubmitting failed\n   aligned requests.\n\n[akpm@osdl.org: build fix]\nSigned-off-by: Neil Brown \u003cneilb@suse.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "f679623f50545bc0577caf2d0f8675b61162f059",
      "tree": "7253c48db142ec63e6f22df12dfa2babb3e6129c",
      "parents": [
        "23032a0eb97c8eaae8ac9d17373b53b19d0f5413"
      ],
      "author": {
        "name": "Raz Ben-Jehuda(caro)",
        "email": "raziebe@gmail.com",
        "time": "Sun Dec 10 02:20:46 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.osdl.org",
        "time": "Sun Dec 10 09:57:20 2006 -0800"
      },
      "message": "[PATCH] md: handle bypassing the read cache (assuming nothing fails)\n\nSigned-off-by: Neil Brown \u003cneilb@suse.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "23032a0eb97c8eaae8ac9d17373b53b19d0f5413",
      "tree": "7021309ed7a591c6ae93f7347fb23482cea85163",
      "parents": [
        "0d4ca600fcf5c5f3a0c195ccf37e989b83451dd4"
      ],
      "author": {
        "name": "Raz Ben-Jehuda(caro)",
        "email": "raziebe@gmail.com",
        "time": "Sun Dec 10 02:20:45 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.osdl.org",
        "time": "Sun Dec 10 09:57:20 2006 -0800"
      },
      "message": "[PATCH] md: define raid5_mergeable_bvec\n\nThis will encourage read request to be on only one device, so we will often be\nable to bypass the cache for read requests.\n\nSigned-off-by: Neil Brown \u003cneilb@suse.de\u003e\nCc: Jens Axboe \u003cjens.axboe@oracle.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "0d4ca600fcf5c5f3a0c195ccf37e989b83451dd4",
      "tree": "f2847c89d66b2099c3beb55647e00c0fff4fca68",
      "parents": [
        "a3d899839064b6924c3d8a6404dae14c79f657fd"
      ],
      "author": {
        "name": "NeilBrown",
        "email": "neilb@suse.de",
        "time": "Sun Dec 10 02:20:44 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.osdl.org",
        "time": "Sun Dec 10 09:57:20 2006 -0800"
      },
      "message": "[PATCH] md: tidy up device-change notification when an md array is stopped\n\nAn md array can be stopped leaving all the setting still in place, or it can\ntorn down and destroyed.  set_capacity and other change notifications only\nhappen in the latter case, but should happen in both.\n\nSigned-off-by: Neil Brown \u003cneilb@suse.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "a3d899839064b6924c3d8a6404dae14c79f657fd",
      "tree": "0d373bc6e63f5f29d5b3ea5caddbde590f91ad3a",
      "parents": [
        "ee2f344b33b507af23610c8fdfdde38d7c10fb33"
      ],
      "author": {
        "name": "Paul Mackerras",
        "email": "paulus@samba.org",
        "time": "Sun Dec 10 02:20:42 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.osdl.org",
        "time": "Sun Dec 10 09:57:20 2006 -0800"
      },
      "message": "[PATCH] Fbdev driver for IBM GXT4500P videocards\n\nThis is an fbdev driver for the IBM GXT4500P display card found in some IBM\nSystem P (pSeries) machines.  These cards have hardware 2D and 3D\ncapabilities, but the driver does not use them; it just exports a dumb\nframebuffer.\n\nSigned-off-by: Paul Mackerras \u003cpaulus@samba.org\u003e\nAcked-by: James Simmons \u003cjsimmons@infradead.org\u003e\nCc: \"Antonino A. Daplas\" \u003cadaplas@pol.net\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "ee2f344b33b507af23610c8fdfdde38d7c10fb33",
      "tree": "7908a16d267168a74178aad61e30a82590ca6aac",
      "parents": [
        "33859f7f9788da2ac9aa23be4dc8e948112809ca"
      ],
      "author": {
        "name": "Alan Cox",
        "email": "alan@lxorguk.ukuu.org.uk",
        "time": "Sun Dec 10 02:20:39 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.osdl.org",
        "time": "Sun Dec 10 09:57:20 2006 -0800"
      },
      "message": "[PATCH] ide-cd: Handle strange interrupt on the Intel ESB2\n\nThe ESB2 appears to emit spurious DMA interrupts when configured for native\nmode and handling ATAPI devices.  Stratus were able to pin this bug down and\nproduce a patch.  This is a rework which applies the fixup only to the ESB2\n(for now).  We can apply it to other chips later if the same problem is found.\n\nThis code has been tested and confirmed to fix the problem on the tested\nsystems.\n\nSigned-off-by: Alan Cox \u003calan@redhat.com\u003e\n(Most of the hard work done by Stratus however)\nCc: Jens Axboe \u003caxboe@suse.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "33859f7f9788da2ac9aa23be4dc8e948112809ca",
      "tree": "42862c87cf0577580a952e67dfa6b126e91719ac",
      "parents": [
        "62ab616d54371a65f595c199aad1e1755b837d25"
      ],
      "author": {
        "name": "Miguel Ojeda Sandonis",
        "email": "maxextreme@gmail.com",
        "time": "Sun Dec 10 02:20:38 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.osdl.org",
        "time": "Sun Dec 10 09:57:20 2006 -0800"
      },
      "message": "[PATCH] kernel/sched.c: whitespace cleanups\n\n[akpm@osdl.org: additional cleanups]\nSigned-off-by: Miguel Ojeda Sandonis \u003cmaxextreme@gmail.com\u003e\nAcked-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: Nick Piggin \u003cnickpiggin@yahoo.com.au\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "62ab616d54371a65f595c199aad1e1755b837d25",
      "tree": "5615868bc04901a48f28ecc3da7cc3de035a5662",
      "parents": [
        "06066714f6016cffcb249f6ab21b7919de1bc859"
      ],
      "author": {
        "name": "Chen, Kenneth W",
        "email": "kenneth.w.chen@intel.com",
        "time": "Sun Dec 10 02:20:36 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.osdl.org",
        "time": "Sun Dec 10 09:55:43 2006 -0800"
      },
      "message": "[PATCH] sched: optimize activate_task for RT task\n\nRT task does not participate in interactiveness priority and thus shouldn\u0027t\nbe bothered with timestamp and p-\u003esleep_type manipulation when task is\nbeing put on run queue.  Bypass all of the them with a single if (rt_task)\ntest.\n\nSigned-off-by: Ken Chen \u003ckenneth.w.chen@intel.com\u003e\nAcked-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: Nick Piggin \u003cnickpiggin@yahoo.com.au\u003e\nCc: \"Siddha, Suresh B\" \u003csuresh.b.siddha@intel.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "06066714f6016cffcb249f6ab21b7919de1bc859",
      "tree": "ef6848c94a8cf0af47bdf8534aa49b507dfc5952",
      "parents": [
        "783609c6cb4eaa23f2ac5c968a44483584ec133f"
      ],
      "author": {
        "name": "Chen, Kenneth W",
        "email": "kenneth.w.chen@intel.com",
        "time": "Sun Dec 10 02:20:35 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.osdl.org",
        "time": "Sun Dec 10 09:55:43 2006 -0800"
      },
      "message": "[PATCH] sched: remove lb_stopbalance counter\n\nRemove scheduler stats lb_stopbalance counter.  This counter can be\ncalculated by: lb_balanced - lb_nobusyg - lb_nobusyq.  There is no need to\ncreate gazillion counters while we can derive the value.\n\nSigned-off-by: Ken Chen \u003ckenneth.w.chen@intel.com\u003e\nSigned-off-by: Suresh Siddha \u003csuresh.b.siddha@intel.com\u003e\nAcked-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "783609c6cb4eaa23f2ac5c968a44483584ec133f",
      "tree": "678704bab2c69f5115ad84452e931adf4c11f3f4",
      "parents": [
        "b18ec80396834497933d77b81ec0918519f4e2a7"
      ],
      "author": {
        "name": "Siddha, Suresh B",
        "email": "suresh.b.siddha@intel.com",
        "time": "Sun Dec 10 02:20:33 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.osdl.org",
        "time": "Sun Dec 10 09:55:43 2006 -0800"
      },
      "message": "[PATCH] sched: decrease number of load balances\n\nCurrently at a particular domain, each cpu in the sched group will do a\nload balance at the frequency of balance_interval.  More the cores and\nthreads, more the cpus will be in each sched group at SMP and NUMA domain.\nAnd we endup spending quite a bit of time doing load balancing in those\ndomains.\n\nFix this by making only one cpu(first idle cpu or first cpu in the group if\nall the cpus are busy) in the sched group do the load balance at that\nparticular sched domain and this load will slowly percolate down to the\nother cpus with in that group(when they do load balancing at lower\ndomains).\n\nSigned-off-by: Suresh Siddha \u003csuresh.b.siddha@intel.com\u003e\nCc: Christoph Lameter \u003cclameter@engr.sgi.com\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "b18ec80396834497933d77b81ec0918519f4e2a7",
      "tree": "659422f11d4ed64725e321105f0465d27bb60d3d",
      "parents": [
        "08c183f31bdbb709f177f6d3110d5f288ea33933"
      ],
      "author": {
        "name": "Mike Galbraith",
        "email": "efault@gmx.de",
        "time": "Sun Dec 10 02:20:31 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.osdl.org",
        "time": "Sun Dec 10 09:55:43 2006 -0800"
      },
      "message": "[PATCH] sched: improve migration accuracy\n\nCo-opt rq-\u003etimestamp_last_tick to maintain a cache_hot_time evaluation\nreference timestamp at both tick and sched times to prevent said reference,\nformerly rq-\u003etimestamp_last_tick, from being behind task-\u003elast_ran at\nevaluation time, and to move said reference closer to current time on the\nremote processor, intent being to improve cache hot evaluation and\ntimestamp adjustment accuracy for task migration.\n\nFix minor sched_time double accounting error which occurs when a task\npassing through schedule() does not schedule off, and takes the next timer\ntick.\n\n[kenneth.w.chen@intel.com: cleanup]\nSigned-off-by: Mike Galbraith \u003cefault@gmx.de\u003e\nAcked-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nAcked-by: Ken Chen \u003ckenneth.w.chen@intel.com\u003e\nCc: Don Mullis \u003cdwm@meer.net\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    }
  ],
  "next": "08c183f31bdbb709f177f6d3110d5f288ea33933"
}
