)]}'
{
  "log": [
    {
      "commit": "ee8a4b7f857fe7ba243e65c8925798cf8eda5ab0",
      "tree": "8803a10dd343d13940ebfc34ce633dbacbefcd4e",
      "parents": [
        "3c66a22545dd88356bbf4efa45a7b178df8154e9"
      ],
      "author": {
        "name": "Hansjoerg Lipp",
        "email": "hjlipp@web.de",
        "time": "Sun Mar 26 01:38:32 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sun Mar 26 08:57:05 2006 -0800"
      },
      "message": "[PATCH] isdn4linux: Siemens Gigaset drivers - tty interface\n\nAnd: Tilman Schmidt \u003ctilman@imap.cc\u003e\n\nThis patch adds the tty interface to the gigaset module.  The tty interface\nprovides direct access to the AT command set of the Gigaset devices.\n\nSigned-off-by: Hansjoerg Lipp \u003chjlipp@web.de\u003e\nSigned-off-by: Tilman Schmidt \u003ctilman@imap.cc\u003e\nCc: Karsten Keil \u003ckkeil@suse.de\u003e\nCc: Greg KH \u003cgreg@kroah.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "311ac88fd2d4194a95e9e38d2fe08917be98723c",
      "tree": "321602aa5da2c18a285f31dc2dab14a7464c0483",
      "parents": [
        "b50ea74c7bc3ebe3d88a357893f0b96ae9092f13"
      ],
      "author": {
        "name": "Masami Hiramatsu",
        "email": "hiramatu@sdl.hitachi.co.jp",
        "time": "Sun Mar 26 01:38:17 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sun Mar 26 08:57:04 2006 -0800"
      },
      "message": "[PATCH] x86: kprobes-booster\n\nCurrent kprobe copies the original instruction at the probe point and replaces\nit with a breakpoint instruction (int3).  When the kernel hits the probe\npoint, kprobe handler is invoked.  And the copied instruction is single-step\nexecuted on the copied buffer (not on the original address) by kprobe.  After\nthat, the kprobe checks registers and modify it (if need) as if the\ninstructions was executed on the original address.\n\nMy proposal is based on the fact there are many instructions which do NOT\nrequire the register modification after the single-step execution.  When the\ncopied instruction is a kind of them, kprobe just jumps back to the next\ninstruction after single-step execution.  If so, why don\u0027t we execute those\ninstructions directly?\n\nWith kprobe-booster patch, kprobes will execute a copied instruction directly\nand (if need) jump back to original code.  This direct execution is executed\nwhen the kprobe don\u0027t have both post_handler and break_handler, and the copied\ninstruction can be executed directly.\n\nI sorted instructions which can be executed directly or not;\n\n- Call instructions are NG(can not be executed directly).\n  We should correct the return address pushed into top of stack.\n- Indirect instructions except for absolute indirect-jumps\n  are NG. Those instructions changes EIP randomly. We should\n  check EIP and correct it.\n- Instructions that change EIP beyond the range of the\n  instruction buffer are NG.\n- Instructions that change EIP to tail 5 bytes of the\n  instruction buffer (it is the size of a jump instruction).\n  We must write a jump instruction which backs to original\n  kernel code in the instruction buffer.\n- Break point instruction is NG. We should not touch EIP and\n  pass to other handlers.\n- Absolute direct/indirect jumps are OK.- Conditional Jumps are NG.\n- Halt and software-interruptions are NG. Because it will stay on\n  the instruction buffer of kprobes.\n- Prefixes are NG.\n- Unknown/reserved opcode is NG.\n- Other 1 byte instructions are OK. But those instructions need a\n  jump back code.\n- 2 bytes instructions are mapped sparsely. So, in this release,\n  this patch don\u0027t boost those instructions.\n\n\u003eFrom Intel\u0027s IA-32 opcode map described in IA-32 Intel Architecture Software\nDeveloper\u0027s Manual Vol.2 B, I determined that following opcodes are not\nboostable.\n\n- 0FH (2byte escape)\n- 70H - 7FH (Jump on condition)\n- 9AH (Call) and 9CH (Pushf)\n- C0H-C1H (Grp 2: includes reserved opcode)\n- C6H-C7H (Grp11: includes reserved opcode)\n- CCH-CEH (Software-interrupt)\n- D0H-D3H (Grp2: includes reserved opcode)\n- D6H (Reserved)\n- D8H-DFH (Coprocessor)\n- E0H-E3H (loop/conditional jump)\n- E8H (Call)\n- F0H-F3H (Prefixes and reserved)\n- F4H (Halt)\n- F6H-F7H (Grp3: includes reserved opcode)\n- FEH-FFH(Grp4,5: includes reserved opcode)\n\nKprobe-booster checks whether target instruction can be boosted (can be\nexecuted directly) at arch_copy_kprobe() function.  If the target instruction\ncan be boosted, it clears \"boostable\" flag.  If not, it sets \"boostable\" flag\n-1.  This is disabled status.  In resume_execution() function, If \"boostable\"\nflag is cleared, kprobe-booster measures the size of the target instruction\nand sets \"boostable\" flag 1.\n\nIn kprobe_handler(), kprobe checks the \"boostable\" flag.  If the flag is 1, it\nresets current kprobe and executes instruction buffer directly instead of\nsingle stepping.\n\nWhen unregistering a boosted kprobe, it calls synchronize_sched()\nafter \"int3\" is removed. So we can ensure followings after\nthe synchronize_sched() called.\n- interrupt handlers are finished on all CPUs.\n- instruction buffer is not executed on all CPUs.\nAnd we can release the boosted kprobe safely.\n\nAnd also, on preemptible kernel, the booster is not enabled where the kernel\npreemption is enabled.  So, there are no preempted threads on the instruction\nbuffer.\n\nThe description of kretprobe-booster:\n\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\n\nIn the normal operation, kretprobe make a target function return to trampoline\ncode.  And a kprobe (called trampoline_probe) have been inserted at the\ntrampoline code.  When the kernel hits this kprobe, it calls kretprobe\u0027s\nhandler and it returns to original return address.\n\nKretprobe-booster patch removes the trampoline_probe.  It allows the\ntram\u0018poline code to call kretprobe\u0027s handler directly instead of invoking\nkprobe.  And tranpoline code returns to original return address.\n\nThis new trampoline code stores and restores registers, so the kretprobe\nhandler is still able to access those registers.\n\nCurrent kprobe has about 1.3 usec/probe(*) overhead, and kprobe-booster patch\nreduces it to 0.6 usec/probe(*).  Also current kretprobe has about 2.0\nusec/probe(*) overhead.  Kprobe-booster patch reduces it to 1.3 usec/probe(*),\nand the combination of both kprobe-booster patch and kretprobe-booster patch\nreduces it to 0.9 usec/probe(*).\n\nI expect the combination of both patches can reduce half of a probing\noverhead.\n\nPerformance numbers strongly depend on the processor model.\n\nAndrew Morton wrote:\n\u003e These preempt tricks look rather nasty.  Can you please describe what the\n\u003e problem is, precisely?  And how this code avoids it?  Perhaps we can find\n\u003e something cleaner.\n\nThe problem is how to remove the copied instructions of the\nkprobe *safely* on the preemptable kernel (CONFIG_PREEMPT\u003dy).\n\nKprobes basically executes the following actions;\n\n(1)int3\n(2)preempt_disable()\n(3)kprobe_prehandler()\n(4)copied instructioin(single step)\n(5)kprobe_posthandler()\n(6)preempt_enable()\n(7)return to the original code\n\nDuring the execution of copied instruction, preemption is\ndisabled (from step (2) to (6)).\nWhen unregistering the probes, Kprobe waits for RCU\nquiescent state by using synchronize_sched() after removing\nint3 instruction.\nThus we can ensure the copied instruction is not executed.\n\nOn the other hand, kprobe-booster executes the following actions;\n\n(1)int3\n(2)preempt_disable()\n(3)kprobe_prehandler()\n(4)preempt_enable()             \u003c-- this one is added by my patch\n(5)copied instruction(direct execution)\n(6)jmp back to the original code\n\nThe problem is that we have no way to prevent preemption on\nstep (5) or (6). We cannot call preempt_disable() after step (6),\nbecause there are no rooms to do that. Thus, some other\nprocesses may be preempted at step(5) or (6) on preemptable kernel.\nAnd I couldn\u0027t find the easy way to ensure that other processes\u0027\nstack do *not* have the address of them. (I thought some way\nto do that, but those are very costly.)\n\nSo currently, I simply boost the kprobe only when the probe\npoint is already preemption disabled.\n\n\u003e Also, the patch adds a preempt_enable() but I don\u0027t see a corresponding\n\u003e preempt_disable().  Am I missing something?\n\nIt is corresponding to the preempt_disable() in the top of\nkprobe_handler().\nI copied the code of kprobe_handler() here:\n\nstatic int __kprobes kprobe_handler(struct pt_regs *regs)\n{\n        struct kprobe *p;\n        int ret \u003d 0;\n        kprobe_opcode_t *addr \u003d NULL;\n        unsigned long *lp;\n        struct kprobe_ctlblk *kcb;\n\n        /*\n         * We don\u0027t want to be preempted for the entire\n         * duration of kprobe processing\n         */\n        preempt_disable();             \u003c-- HERE\n        kcb \u003d get_kprobe_ctlblk();\n\nSigned-off-by: Masami Hiramatsu \u003chiramatu@sdl.hitachi.co.jp\u003e\nCc: Prasanna S Panchamukhi \u003cprasanna@in.ibm.com\u003e\nCc: Ananth N Mavinakayanahalli \u003cananth@in.ibm.com\u003e\nCc: Anil S Keshavamurthy \u003canil.s.keshavamurthy@intel.com\u003e\nCc: David S. Miller \u003cdavem@davemloft.net\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "05cfb614ddbf3181540ce09d44d96486f8ba8d6a",
      "tree": "aafed98638557a4643141d906fbb2406f0764a94",
      "parents": [
        "df869b630d9d9131c10cf073fb61646048874b2f"
      ],
      "author": {
        "name": "Roman Zippel",
        "email": "zippel@linux-m68k.org",
        "time": "Sun Mar 26 01:38:12 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sun Mar 26 08:57:03 2006 -0800"
      },
      "message": "[PATCH] hrtimers: remove data field\n\nThe nanosleep cleanup allows to remove the data field of hrtimer.  The\ncallback function can use container_of() to get it\u0027s own data.  Since the\nhrtimer structure is anyway embedded in other structures, this adds no\noverhead.\n\nSigned-off-by: Roman Zippel \u003czippel@linux-m68k.org\u003e\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "df869b630d9d9131c10cf073fb61646048874b2f",
      "tree": "37e38f934e4505ddf23569227865f47facff64e8",
      "parents": [
        "272705c5979c114e63dbfcd28ea15093038a4c42"
      ],
      "author": {
        "name": "Roman Zippel",
        "email": "zippel@linux-m68k.org",
        "time": "Sun Mar 26 01:38:11 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sun Mar 26 08:57:03 2006 -0800"
      },
      "message": "[PATCH] hrtimers: remove nsec_t typedef\n\nnsec_t predates ktime_t and has mostly been superseded by it.  In the few\nplaces that are left it\u0027s better to make it explicit that we\u0027re dealing with\n64 bit values here.\n\nSigned-off-by: Roman Zippel \u003czippel@linux-m68k.org\u003e\nAcked-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nAcked-by: John Stultz \u003cjohnstul@us.ibm.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "272705c5979c114e63dbfcd28ea15093038a4c42",
      "tree": "f23449f399cc6a693e6f7c26c4dfcce212381a20",
      "parents": [
        "4dee26b7e26eb3c78da8bf6c1c52ee5419145b28"
      ],
      "author": {
        "name": "Roman Zippel",
        "email": "zippel@linux-m68k.org",
        "time": "Sun Mar 26 01:38:10 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sun Mar 26 08:57:03 2006 -0800"
      },
      "message": "[PATCH] hrtimers: remove DEFINE_KTIME and ktime_to_clock_t()\n\nNow that it_real_value is gone, the last user of DEFINE_KTIME and\nktime_to_clock_t are also gone, so remove it before someone starts using it\nagain.\n\nSigned-off-by: Roman Zippel \u003czippel@linux-m68k.org\u003e\nAcked-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nAcked-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "b75f7a51ca75c977d7d77f735d7a7859194eb39e",
      "tree": "c8057a34970f9a6fb04bdfa37e2926df38747790",
      "parents": [
        "432569bb9d9d424d7ffe5b21f8205c55bdd1aaa8"
      ],
      "author": {
        "name": "Roman Zippel",
        "email": "zippel@linux-m68k.org",
        "time": "Sun Mar 26 01:38:09 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sun Mar 26 08:57:02 2006 -0800"
      },
      "message": "[PATCH] hrtimers: remove state field\n\nRemove the state field and encode this information in the rb_node similiar to\nnormal timer.\n\nSigned-off-by: Roman Zippel \u003czippel@linux-m68k.org\u003e\nAcked-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "432569bb9d9d424d7ffe5b21f8205c55bdd1aaa8",
      "tree": "da649d202625d061d4fca27a6a63c4f81076724e",
      "parents": [
        "3b98a5328171cebc867f70484b20bd34948cd7f6"
      ],
      "author": {
        "name": "Roman Zippel",
        "email": "zippel@linux-m68k.org",
        "time": "Sun Mar 26 01:38:08 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sun Mar 26 08:57:02 2006 -0800"
      },
      "message": "[PATCH] hrtimers: simplify nanosleep\n\nnanosleep is the only user of the expired state, so let it manage this itself,\nwhich makes the hrtimer code a bit simpler.  The remaining time is also only\ncalculated if requested.\n\nSigned-off-by: Roman Zippel \u003czippel@linux-m68k.org\u003e\nAcked-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nAcked-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "44f21475511bbc0135b52c66ad74dcc6a9026da3",
      "tree": "5cbd605c9d074f40b52a877859957432311b2399",
      "parents": [
        "92127c7a45d4d167d9b015a5f9de6b41ed66f1d0"
      ],
      "author": {
        "name": "Roman Zippel",
        "email": "zippel@linux-m68k.org",
        "time": "Sun Mar 26 01:38:06 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sun Mar 26 08:57:02 2006 -0800"
      },
      "message": "[PATCH] hrtimers: pass current time to hrtimer_forward()\n\nPass current time to hrtimer_forward().  This allows to use the softirq time\nin the timer base when the forward function is called from the timer callback.\n Other places pass current time with a call to timer-\u003ebase-\u003eget_time().\n\nSigned-off-by: Roman Zippel \u003czippel@linux-m68k.org\u003e\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "92127c7a45d4d167d9b015a5f9de6b41ed66f1d0",
      "tree": "4742cc36ff0b26c999365d1e84133886bb694096",
      "parents": [
        "a0e9285233a32edf267d27cd03fe0056951422cf"
      ],
      "author": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Sun Mar 26 01:38:05 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sun Mar 26 08:57:02 2006 -0800"
      },
      "message": "[PATCH] hrtimers: optimize softirq runqueues\n\nThe hrtimer softirq is called from the timer softirq every tick.  Retrieve the\ncurrent time from xtime and wall_to_monotonic instead of calling\nbase-\u003eget_time() for each timer base.  Store the time in the base structure\nand provide a hook once clock source abstractions are in place and to keep the\ncode open for new base clocks.\n\nBased on a patch from: Roman Zippel \u003czippel@linux-m68k.org\u003e\n\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "1d8fa7a2b9a39d18727acc5c468e870df606c852",
      "tree": "41537fe9ea5478f3243e3301184dc13980f8201f",
      "parents": [
        "fa30bd058b746c0e2318a77ff8b4977faa924c2c"
      ],
      "author": {
        "name": "Badari Pulavarty",
        "email": "pbadari@us.ibm.com",
        "time": "Sun Mar 26 01:38:02 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sun Mar 26 08:57:01 2006 -0800"
      },
      "message": "[PATCH] remove -\u003eget_blocks() support\n\nNow that get_block() can handle mapping multiple disk blocks, no need to have\n-\u003eget_blocks().  This patch removes fs specific -\u003eget_blocks() added for DIO\nand makes it users use get_block() instead.\n\nSigned-off-by: Badari Pulavarty \u003cpbadari@us.ibm.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "b0cf2321c6599138f860517745503691556d8453",
      "tree": "39ecfea09c13ce09172ab3ec5a5b6d2fef657cac",
      "parents": [
        "205f87f6b342444f722e4559d33318686f7df2ca"
      ],
      "author": {
        "name": "Badari Pulavarty",
        "email": "pbadari@us.ibm.com",
        "time": "Sun Mar 26 01:38:00 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sun Mar 26 08:57:01 2006 -0800"
      },
      "message": "[PATCH] pass b_size to -\u003eget_block()\n\nPass amount of disk needs to be mapped to get_block().  This way one can\nmodify the fs -\u003eget_block() functions to map multiple blocks at the same time.\n\n[akpm@osdl.org: performance tweak]\n[akpm@osdl.org: remove unneeded assignments]\nSigned-off-by: Badari Pulavarty \u003cpbadari@us.ibm.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "205f87f6b342444f722e4559d33318686f7df2ca",
      "tree": "61f32bb0582dde9fd62ee3d03ac3324b949b29e6",
      "parents": [
        "d48589bfad0e60bff0aa3f9e4875983f607bd44b"
      ],
      "author": {
        "name": "Badari Pulavarty",
        "email": "pbadari@us.ibm.com",
        "time": "Sun Mar 26 01:38:00 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sun Mar 26 08:57:01 2006 -0800"
      },
      "message": "[PATCH] change buffer_head.b_size to size_t\n\nIncrease the size of the buffer_head b_size field (only) for 64 bit platforms.\nUpdate some old and moldy comments in and around the structure as well.\n\nThe b_size increase allows us to perform larger mappings and allocations for\nlarge I/O requests from userspace, which tie in with other changes allowing\nthe get_block_t() interface to map multiple blocks at once.\n\nSigned-off-by: Nathan Scott \u003cnathans@sgi.com\u003e\nSigned-off-by: Badari Pulavarty \u003cpbadari@us.ibm.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "b54e41ec17ae91dce174eb5a3515e7af4a440d42",
      "tree": "aa98a38e05188b204950eb0756fb792675951b0d",
      "parents": [
        "b47b24781c59565f45acd765dc995a752d561e96"
      ],
      "author": {
        "name": "Mingming Cao",
        "email": "cmm@us.ibm.com",
        "time": "Sun Mar 26 01:37:57 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sun Mar 26 08:57:01 2006 -0800"
      },
      "message": "[PATCH] ext3_get_blocks: support multiple blocks allocation in ext3_new_block()\n\nChange ext3_try_to_allocate() (called via ext3_new_blocks()) to try to\nallocate the requested number of blocks on a best effort basis: After\nallocated the first block, it will always attempt to allocate the next few(up\nto the requested size and not beyond the reservation window) adjacent blocks\nat the same time.\n\nSigned-off-by: Mingming Cao \u003ccmm@us.ibm.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "89747d369d34e333b9b60f10f333a0b727b4e4e2",
      "tree": "26b55849e666c7f6c7a7312b100756c3b591559f",
      "parents": [
        "e2d53f9525790dfacbcf09f359536311d3913d98"
      ],
      "author": {
        "name": "Mingming Cao",
        "email": "cmm@us.ibm.com",
        "time": "Sun Mar 26 01:37:55 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sun Mar 26 08:57:00 2006 -0800"
      },
      "message": "[PATCH] ext3_get_blocks: Mapping multiple blocks at a once\n\nCurrently ext3_get_block() only maps or allocates one block at a time.  This\nis quite inefficient for sequential IO workload.\n\nI have posted a early implements a simply multiple block map and allocation\nwith current ext3.  The basic idea is allocating the 1st block in the existing\nway, and attempting to allocate the next adjacent blocks on a best effort\nbasis.  More description about the implementation could be found here:\nhttp://marc.theaimsgroup.com/?l\u003dext2-devel\u0026m\u003d112162230003522\u0026w\u003d2\n\nThe following the latest version of the patch: break the original patch into 5\npatches, re-worked some logicals, and fixed some bugs.  The break ups are:\n\n [patch 1] Adding map multiple blocks at a time in ext3_get_blocks()\n [patch 2] Extend ext3_get_blocks() to support multiple block allocation\n [patch 3] Implement multiple block allocation in ext3-try-to-allocate\n (called via ext3_new_block()).\n [patch 4] Proper accounting updates in ext3_new_blocks()\n [patch 5] Adjust reservation window size properly (by the given number\n of blocks to allocate) before block allocation to increase the\n possibility of allocating multiple blocks in a single call.\n\nTests done so far includes fsx,tiobench and dbench.  The following numbers\ncollected from Direct IO tests (1G file creation/read) shows the system time\nhave been greatly reduced (more than 50% on my 8 cpu system) with the patches.\n\n 1G file DIO write:\n \t2.6.15\t\t2.6.15+patches\n real    0m31.275s\t0m31.161s\n user    0m0.000s\t0m0.000s\n sys     0m3.384s\t0m0.564s\n\n 1G file DIO read:\n \t2.6.15\t\t2.6.15+patches\n real    0m30.733s\t0m30.624s\n user    0m0.000s\t0m0.004s\n sys     0m0.748s\t0m0.380s\n\nSome previous test we did on buffered IO with using multiple blocks allocation\nand delayed allocation shows noticeable improvement on throughput and system\ntime.\n\nThis patch:\n\nAdd support of mapping multiple blocks in one call.\n\nThis is useful for DIO reads and re-writes (where blocks are already\nallocated), also is in line with Christoph\u0027s proposal of using getblocks() in\nmpage_readpage() or mpage_readpages().\n\nSigned-off-by: Mingming Cao \u003ccmm@us.ibm.com\u003e\nCc: Badari Pulavarty \u003cpbadari@us.ibm.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "e2d53f9525790dfacbcf09f359536311d3913d98",
      "tree": "0e25006f7c99b81ba786a32795bd3e97012f043e",
      "parents": [
        "5515eff811cb807f0d3221a6e8cc223c7850d205"
      ],
      "author": {
        "name": "Takashi Sato",
        "email": "sho@tnes.nec.co.jp",
        "time": "Sun Mar 26 01:37:54 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sun Mar 26 08:57:00 2006 -0800"
      },
      "message": "[PATCH] 2TB files: change type of kstatfs entries\n\nThis fix was proposed by Trond Myklebust.  He says: The type \"sector_t\" is\nheavily tied in to the block layer interface as an offset/handle to a block,\nand is subject to a supposedly block-specific configuration option:\nCONFIG_LBD.  Despite this, it is used in struct kstatfs to save a couple of\nbytes on the stack whenever we call the filesystems\u0027 -\u003estatfs().\n\nSo kstatfs\u0027s entries related to blocks are invalid on statfs64 for a network\nfilesystem which has more than 2^32-1 blocks when CONFIG_LBD is disabled.\n\n- struct kstatfs\n  Change the type of following entries from sector_t to u64.\n  f_blocks\n  f_bfree\n  f_bavail\n  f_files\n  f_ffree\n\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\nSigned-off-by: Takashi Sato \u003csho@tnes.nec.co.jp\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "a0f62ac6362c168754cccb36f196b3dfbddc3bc3",
      "tree": "079d525cfbf9851e2cb30acda77d180388d03c69",
      "parents": [
        "abcb6c9fd13fc2ad7757b818924dc8109a0e3775"
      ],
      "author": {
        "name": "Takashi Sato",
        "email": "sho@tnes.nec.co.jp",
        "time": "Sun Mar 26 01:37:52 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sun Mar 26 08:57:00 2006 -0800"
      },
      "message": "[PATCH] 2TB files: add blkcnt_t\n\nAdd blkcnt_t as the type of inode.i_blocks.  This enables you to make the size\nof blkcnt_t either 4 bytes or 8 bytes on 32 bits architecture with CONFIG_LSF.\n\n- CONFIG_LSF\n  Add new configuration parameter.\n- blkcnt_t\n  On h8300, i386, mips, powerpc, s390 and sh that define sector_t,\n  blkcnt_t is defined as u64 if CONFIG_LSF is enabled; otherwise it is\n  defined as unsigned long.\n  On other architectures, it is defined as unsigned long.\n- inode.i_blocks\n  Change the type from sector_t to blkcnt_t.\n\nSigned-off-by: Takashi Sato \u003csho@tnes.nec.co.jp\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "abcb6c9fd13fc2ad7757b818924dc8109a0e3775",
      "tree": "39a1d5660d2bd92cffa8eef09d489b241e4072a1",
      "parents": [
        "93d2341c750cda0df48a6cc67b35fe25f1ec47df"
      ],
      "author": {
        "name": "Takashi Sato",
        "email": "sho@tnes.nec.co.jp",
        "time": "Sun Mar 26 01:37:51 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sun Mar 26 08:57:00 2006 -0800"
      },
      "message": "[PATCH] 2TB files: st_blocks is invalid when calling stat64\n\nThis patch series fixes the following problems on 32 bits architecture.\n\no stat64 returns the lower 32 bits of blocks, although userland st_blocks\n  has 64 bits, because i_blocks has only 32 bits.  The ioctl with FIOQSIZE has\n  the same problem.\n\no As Dave Kleikamp said, making \u003e2TB file on JFS results in writing an\n  invalid block number to disk inode.  The cause is the same as above too.\n\no In generic quota code dquot_transfer(), the file usage is calculated from\n  i_blocks via inode_get_bytes().  If the file is over 2TB, the change of\n  usage is less than expected.  The cause is the same as above too.\n\no As Trond Myklebust said, statfs64\u0027s entries related to blocks are invalid\n  on statfs64 for a network filesystem which has more than 2^32-1 blocks with\n  CONFIG_LBD disabled.  [PATCH 3/3]\n\nWe made patches to fix problems that occur when handling a large filesystem\nand a large file.  It was discussed on the mails titled \"stat64 for over 2TB\nfile returned invalid st_blocks\".\n\nSigned-off-by: Takashi Sato \u003csho@tnes.nec.co.jp\u003e\nCc: Dave Kleikamp \u003cshaggy@austin.ibm.com\u003e\nCc: Jan Kara \u003cjack@ucw.cz\u003e\nCc: Trond Myklebust \u003ctrond.myklebust@fys.uio.no\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "93d2341c750cda0df48a6cc67b35fe25f1ec47df",
      "tree": "f098a3bbfae65ce967591ee94d605c6e6bea21c6",
      "parents": [
        "fec433aaaae32a02329ad7d71b0f3c91b7525077"
      ],
      "author": {
        "name": "Matthew Dobson",
        "email": "colpatch@us.ibm.com",
        "time": "Sun Mar 26 01:37:50 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sun Mar 26 08:57:00 2006 -0800"
      },
      "message": "[PATCH] mempool: use mempool_create_slab_pool()\n\nModify well over a dozen mempool users to call mempool_create_slab_pool()\nrather than calling mempool_create() with extra arguments, saving about 30\nlines of code and increasing readability.\n\nSigned-off-by: Matthew Dobson \u003ccolpatch@us.ibm.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "fec433aaaae32a02329ad7d71b0f3c91b7525077",
      "tree": "cb8b700fa5c0e4ae51545bf2fbcaa37fc6bd6392",
      "parents": [
        "26b6e051bc36b968a0b5ac96903b99e050d20b87"
      ],
      "author": {
        "name": "Matthew Dobson",
        "email": "colpatch@us.ibm.com",
        "time": "Sun Mar 26 01:37:49 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sun Mar 26 08:57:00 2006 -0800"
      },
      "message": "[PATCH] mempool: add mempool_create_slab_pool()\n\nCreate a simple wrapper function for the common case of creating a slab-based\nmempool.\n\nSigned-off-by: Matthew Dobson \u003ccolpatch@us.ibm.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "f183323d3822dee4d7b3147a59b6e8987fe201e0",
      "tree": "f1cec982da7ae954af52584630c273976fd43127",
      "parents": [
        "0eaae62abaa1ad1f231932b6cdd9fb1b91df6651"
      ],
      "author": {
        "name": "Matthew Dobson",
        "email": "colpatch@us.ibm.com",
        "time": "Sun Mar 26 01:37:48 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sun Mar 26 08:56:59 2006 -0800"
      },
      "message": "[PATCH] mempool: add kzalloc allocator\n\nAdd another allocator to the common mempool code: a kzalloc/kfree allocator\n\nThis will be used by the next patch in the series to replace a mempool-backed\nkzalloc allocator.  It is also very likely that there will be more users in\nthe future.\n\nSigned-off-by: Matthew Dobson \u003ccolpatch@us.ibm.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "53184082b070dfb077218828fdf839826102ed96",
      "tree": "77aad868cb43b78195e7ca657c1e30a6934fac44",
      "parents": [
        "a19b27ce3847c3a5d4ea6b6c91b6f7154759af23"
      ],
      "author": {
        "name": "Matthew Dobson",
        "email": "colpatch@us.ibm.com",
        "time": "Sun Mar 26 01:37:46 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sun Mar 26 08:56:59 2006 -0800"
      },
      "message": "[PATCH] mempool: add kmalloc allocator\n\nAdd another allocator to the common mempool code: a kmalloc/kfree allocator\n\nThis will be used by the next patch in the series to replace duplicate\nmempool-backed kmalloc allocators in several places in the kernel.  It is also\nvery likely that there will be more users in the future.\n\nSigned-off-by: Matthew Dobson \u003ccolpatch@us.ibm.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "6e0678f394c7bd21bfa5d252b071a09e10e7a749",
      "tree": "45e9729c67b867821748414667dada0d36a8bd34",
      "parents": [
        "8219dd5710c1daec2d7a086eeeee5187decfde60"
      ],
      "author": {
        "name": "Matthew Dobson",
        "email": "colpatch@us.ibm.com",
        "time": "Sun Mar 26 01:37:44 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sun Mar 26 08:56:59 2006 -0800"
      },
      "message": "[PATCH] mempool: add page allocator\n\nThis will be used by the next patch in the series to replace duplicate\nmempool-backed page allocators in 2 places in the kernel.  It is also likely\nthat there will be more users in the future.\n\nSigned-off-by: Matthew Dobson \u003ccolpatch@us.ibm.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "22e6c1b39c648850438decd491f62d311800c7db",
      "tree": "23ec4760c7f85bbcad5ae029e5a3d65f93896ed2",
      "parents": [
        "3158e9411a66fb98d495ac441c242264f31aaf3e"
      ],
      "author": {
        "name": "Maneesh Soni",
        "email": "maneesh@in.ibm.com",
        "time": "Sun Mar 26 01:37:29 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sun Mar 26 08:56:57 2006 -0800"
      },
      "message": "[PATCH] Use loff_t for size in struct proc_dir_entry\n\nChange proc_dir_entry-\u003esize to be loff_t to represent files like\n/proc/vmcore for 32bit systems with more than 4G memory.\n\nNeeded for seeing correct size for /proc/vmcore for 32-bit systems with \u003e\n4G RAM.\n\nSigned-off-by: Maneesh Soni \u003cmaneesh@in.ibm.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "3158e9411a66fb98d495ac441c242264f31aaf3e",
      "tree": "7b3bad47214c09c9dcd7ff27316c6de23f4c7cb0",
      "parents": [
        "88959ea968709c35e8b979ac9f5a398fa748091a"
      ],
      "author": {
        "name": "Stephen Rothwell",
        "email": "sfr@canb.auug.org.au",
        "time": "Sun Mar 26 01:37:29 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sun Mar 26 08:56:57 2006 -0800"
      },
      "message": "[PATCH] consolidate sys32/compat_adjtimex\n\nCreate compat_sys_adjtimex and use it an all appropriate places.\n\nSigned-off-by: Stephen Rothwell \u003csfr@canb.auug.org.au\u003e\nCc: Arnd Bergmann \u003carnd@arndb.de\u003e\nAcked-by: Paul Mackerras \u003cpaulus@samba.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "88959ea968709c35e8b979ac9f5a398fa748091a",
      "tree": "7d93892ec8d7b15cd810e4bcb75715c797e01ab3",
      "parents": [
        "eb76b3fda1f7c2aa2d1523b36835048a15e5e5d2"
      ],
      "author": {
        "name": "Stephen Rothwell",
        "email": "sfr@canb.auug.org.au",
        "time": "Sun Mar 26 01:37:27 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sun Mar 26 08:56:57 2006 -0800"
      },
      "message": "[PATCH] create struct compat_timex and use it everywhere\n\nWe had a copy of the compatibility version of struct timex in each 64 bit\narchitecture.  This patch just creates a global one and replaces all the\nusages of the old ones.\n\nSigned-off-by: Stephen Rothwell \u003csfr@canb.auug.org.au\u003e\nCc: Arnd Bergmann \u003carnd@arndb.de\u003e\nAcked-by: Kyle McMartin \u003ckyle@parisc-linux.org\u003e\nAcked-by: Tony Luck \u003ctony.luck@intel.com\u003e\nAcked-by: Paul Mackerras \u003cpaulus@samba.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "5842add2f3b519111b6401f3a35862bd00a3aa7e",
      "tree": "299e5653ec2b7dfc9fa565920d7320bbf1c9c07e",
      "parents": [
        "6dc0fe8f8b40854982929e4f24d8c65115769b60"
      ],
      "author": {
        "name": "Andy Adamson",
        "email": "andros@citi.umich.edu",
        "time": "Sun Mar 26 01:37:26 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sun Mar 26 08:56:56 2006 -0800"
      },
      "message": "[PATCH] VFS,fs/locks.c,NFSD4: add race_free posix_lock_file_conf() interface\n\nLockd and the NFSv4 server both exercise a race condition where\nposix_test_lock() is called either before or after posix_lock_file() to\ndeal with a denied lock request due to a conflicting lock.\n\nRemove the race condition for the NFSv4 server by adding a new conflicting\nlock parameter to __posix_lock_file() , changing the name to\n__posix_lock_file_conf().\n\nKeep posix_lock_file() interface, add posix_lock_conf() interface, both\ncall __posix_lock_file_conf().\n\n[akpm@osdl.org: Put the EXPORT_SYMBOL() where it belongs]\nSigned-off-by: Andy Adamson \u003candros@citi.umich.edu\u003e\nSigned-off-by: J. Bruce Fields \u003cbfields@citi.umich.edu\u003e\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "878a9f30d7b13015f3aa4534d7877d985f150183",
      "tree": "54176c478c42c0038fecf83f9a36aac78af951da",
      "parents": [
        "a23f9a3cfeb1d37ad090a751777665fd03bc067a"
      ],
      "author": {
        "name": "Randy Dunlap",
        "email": "rdunlap@xenotime.net",
        "time": "Sun Mar 26 01:37:23 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sun Mar 26 08:56:56 2006 -0800"
      },
      "message": "[PATCH] hpet header sanitization\n\nAdd __KERNEL__ block.\nUse __KERNEL__ to allow ioctl interface to be usable.\n\nSigned-off-by: Randy Dunlap \u003crdunlap@xenotime.net\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "50c812b2b9513e3df34eae8c30cb2c221b79b2cb",
      "tree": "565f31d3b3234e5324ba9534b752ae426b4a8c92",
      "parents": [
        "b0defcdbd2b7da7694e2645da92716cea0a3c0ff"
      ],
      "author": {
        "name": "Corey Minyard",
        "email": "minyard@acm.org",
        "time": "Sun Mar 26 01:37:21 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sun Mar 26 08:56:56 2006 -0800"
      },
      "message": "[PATCH] ipmi: add full sysfs support\n\nAdd full driver model support for the IPMI driver.  It links in the proper\nbus and device support.\n\nIt adds an \"ipmi\" driver interface that has each BMC discovered by the\ndriver (as a device).  These BMCs appear in the devices/platform directory.\n If there are multiple interfaces to the same BMC, the driver should\ndiscover this and will only have one BMC entry.  The BMC entry will have\npointers to each interface device that connects to it.\n\nThe device information (statistics and config information) has not yet been\nported over to the driver model from proc, that will come later.\n\nThis work was based on work by Yani Ioannou.  I basically rewrote it using\nthat code as a guide, but he still deserves credit :).\n\n[bunk@stusta.de: make ipmi_find_bmc_guid() static]\nSigned-off-by: Corey Minyard \u003cminyard@acm.org\u003e\nSigned-off-by: Yani Ioannou \u003cyani.ioannou@gmail.com\u003e\nCc: Greg KH \u003cgreg@kroah.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "3c30b06df404c8892c225a99ecfd3f02789c0513",
      "tree": "3e98d86cdc92c91a3996afbed86250bc95b13a91",
      "parents": [
        "2ff28e22bdb8727fbc7d7889807bc5a73aae56c5"
      ],
      "author": {
        "name": "Con Kolivas",
        "email": "kernel@kolivas.org",
        "time": "Sun Mar 26 01:37:19 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sun Mar 26 08:56:55 2006 -0800"
      },
      "message": "[PATCH] cleanup smp_call_function UP build\n\nnet/core/flow.c: In function \u0027flow_cache_flush\u0027:\nnet/core/flow.c:299: warning: statement with no effect\n\nSigned-off-by: Con Kolivas \u003ckernel@kolivas.org\u003e\nCc: \"David S. Miller\" \u003cdavem@davemloft.net\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "2ff28e22bdb8727fbc7d7889807bc5a73aae56c5",
      "tree": "f7418aa963d729bf9fe8bd44d6c9b6e424a6c6bf",
      "parents": [
        "3978d7179d3849848df8a37dd0a5acc20bcb8750"
      ],
      "author": {
        "name": "NeilBrown",
        "email": "neilb@suse.de",
        "time": "Sun Mar 26 01:37:18 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sun Mar 26 08:56:55 2006 -0800"
      },
      "message": "[PATCH] Make address_space_operations-\u003einvalidatepage return void\n\nThe return value of this function is never used, so let\u0027s be honest and\ndeclare it as void.\n\nSome places where invalidatepage returned 0, I have inserted comments\nsuggesting a BUG_ON.\n\n[akpm@osdl.org: JBD BUG fix]\n[akpm@osdl.org: rework for git-nfs]\n[akpm@osdl.org: don\u0027t go BUG in block_invalidate_page()]\nSigned-off-by: Neil Brown \u003cneilb@suse.de\u003e\nAcked-by: Dave Kleikamp \u003cshaggy@austin.ibm.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "3978d7179d3849848df8a37dd0a5acc20bcb8750",
      "tree": "f6a60c588d54ffc482764e7846aabf7ba6135aa4",
      "parents": [
        "5f921ae96f1529a55966f25cd5c70fab11d38be7"
      ],
      "author": {
        "name": "NeilBrown",
        "email": "neilb@suse.de",
        "time": "Sun Mar 26 01:37:17 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sun Mar 26 08:56:55 2006 -0800"
      },
      "message": "[PATCH] Make address_space_operations-\u003esync_page return void\n\nThe only user ignores the return value, and the only instanace\n(block_sync_page) always returns 0...\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": "b2c99e3c70d77fb194df5aa1642030080d28ea48",
      "tree": "65f2a173e49b3e15e90b8cabf45b7dd4f3691e29",
      "parents": [
        "27d8e3d15bcf9d7cd99bf6ca910ea9e34328c7fb"
      ],
      "author": {
        "name": "Bjorn Helgaas",
        "email": "bjorn.helgaas@hp.com",
        "time": "Sun Mar 26 01:37:08 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sun Mar 26 08:56:54 2006 -0800"
      },
      "message": "[PATCH] EFI: keep physical table addresses in efi structure\n\nAlmost all users of the table addresses from the EFI system table want\nphysical addresses.  So rather than doing the pa-\u003eva-\u003epa conversion, just keep\nphysical addresses in struct efi.\n\nThis fixes a DMI bug: the efi structure contained the physical SMBIOS address\non x86 but the virtual address on ia64, so dmi_scan_machine() used ioremap()\non a virtual address on ia64.\n\nThis is essentially the same as an earlier patch by Matt Tolentino:\n\thttp://marc.theaimsgroup.com/?l\u003dlinux-kernel\u0026m\u003d112130292316281\u0026w\u003d2\nexcept that this changes all table addresses, not just ACPI addresses.\n\nMatt\u0027s original patch was backed out because it caused MCAs on HP sx1000\nsystems.  That problem is resolved by the ioremap() attribute checking added\nfor ia64.\n\nSigned-off-by: Bjorn Helgaas \u003cbjorn.helgaas@hp.com\u003e\nCc: Matt Domsch \u003cMatt_Domsch@dell.com\u003e\nCc: \"Tolentino, Matthew E\" \u003cmatthew.e.tolentino@intel.com\u003e\nCc: \"Brown, Len\" \u003clen.brown@intel.com\u003e\nCc: Andi Kleen \u003cak@muc.de\u003e\nAcked-by: \"Luck, Tony\" \u003ctony.luck@intel.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "e9b0a0712148abe96ff717a2b9f8dab1d433e0d5",
      "tree": "3f4415797d49f477c9c7516625c74438f31673f8",
      "parents": [
        "136939a2b5aa4302281215745ccd567e1df2e8d4"
      ],
      "author": {
        "name": "Bjorn Helgaas",
        "email": "bjorn.helgaas@hp.com",
        "time": "Sun Mar 26 01:37:06 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sun Mar 26 08:56:54 2006 -0800"
      },
      "message": "[PATCH] ia64: ioremap: check EFI for valid memory attributes\n\nCheck the EFI memory map so we can use the correct memory attributes for\nioremap().  Previously, we always used uncacheable access, which blows up on\nsome machines for regular system memory.\n\nSigned-off-by: Bjorn Helgaas \u003cbjorn.helgaas@hp.com\u003e\nCc: Matt Domsch \u003cMatt_Domsch@dell.com\u003e\nCc: \"Tolentino, Matthew E\" \u003cmatthew.e.tolentino@intel.com\u003e\nCc: \"Brown, Len\" \u003clen.brown@intel.com\u003e\nCc: Andi Kleen \u003cak@muc.de\u003e\nAcked-by: \"Luck, Tony\" \u003ctony.luck@intel.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "136939a2b5aa4302281215745ccd567e1df2e8d4",
      "tree": "384841deada5b0ceb44c255e0474866bbc8d3354",
      "parents": [
        "3ed3bce846abc7ef460104b461cac793e41afe5e"
      ],
      "author": {
        "name": "Bjorn Helgaas",
        "email": "bjorn.helgaas@hp.com",
        "time": "Sun Mar 26 01:37:05 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sun Mar 26 08:56:54 2006 -0800"
      },
      "message": "[PATCH] EFI, /dev/mem: simplify efi_mem_attribute_range()\n\nPass the size, not a pointer to the size, to efi_mem_attribute_range().\n\nThis function validates memory regions for the /dev/mem read/write/mmap paths.\nThe pointer allows arches to reduce the size of the range, but I think that\u0027s\nunnecessary complexity.  Simplifying it will let me use\nefi_mem_attribute_range() to improve the ia64 ioremap() implementation.\n\nSigned-off-by: Bjorn Helgaas \u003cbjorn.helgaas@hp.com\u003e\nCc: Matt Domsch \u003cMatt_Domsch@dell.com\u003e\nCc: \"Tolentino, Matthew E\" \u003cmatthew.e.tolentino@intel.com\u003e\nCc: \"Brown, Len\" \u003clen.brown@intel.com\u003e\nCc: Andi Kleen \u003cak@muc.de\u003e\nAcked-by: \"Luck, Tony\" \u003ctony.luck@intel.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "3ed3bce846abc7ef460104b461cac793e41afe5e",
      "tree": "6db86a6cdfd3600db4e24cd91f53ba6f4f661280",
      "parents": [
        "10dbe196a8da6b3196881269c6639c0ec11c36cb"
      ],
      "author": {
        "name": "Matt Domsch",
        "email": "Matt_Domsch@dell.com",
        "time": "Sun Mar 26 01:37:03 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sun Mar 26 08:56:54 2006 -0800"
      },
      "message": "[PATCH] ia64: use i386 dmi_scan.c\n\nEnable DMI table parsing on ia64.\n\nAndi Kleen has a patch in his x86_64 tree which enables the use of i386\ndmi_scan.c on x86_64.  dmi_scan.c functions are being used by the\ndrivers/char/ipmi/ipmi_si_intf.c driver for autodetecting the ports or\nmemory spaces where the IPMI controllers may be found.\n\nThis patch adds equivalent changes for ia64 as to what is in the x86_64\ntree.  In addition, I reworked the DMI detection, such that on EFI-capable\nsystems, it uses the efi.smbios pointer to find the table, rather than\nbrute-force searching from 0xF0000.  On non-EFI systems, it continues the\nbrute-force search.\n\nMy test system, an Intel S870BN4 \u0027Tiger4\u0027, aka Dell PowerEdge 7250, with\nlatest BIOS, does not list the IPMI controller in the ACPI namespace, nor\ndoes it have an ACPI SPMI table.  Also note, currently shipping Dell x8xx\nEM64T servers don\u0027t have these either, so DMI is the only method for\nobtaining the address of the IPMI controller.\n\nSigned-off-by: Matt Domsch \u003cMatt_Domsch@dell.com\u003e\nAcked-by: \"Luck, Tony\" \u003ctony.luck@intel.com\u003e\nCc: Andi Kleen \u003cak@muc.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "5a3a5a98b6422d05c39eaa32c8b3f83840c7b768",
      "tree": "e96a8f5543c94c57eb2b761fa94df9f7a9412e52",
      "parents": [
        "03beb07664d768db97bf454ae5c9581cd4737bb4"
      ],
      "author": {
        "name": "James Bottomley",
        "email": "James.Bottomley@SteelEye.com",
        "time": "Sun Mar 26 01:36:59 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sun Mar 26 08:56:53 2006 -0800"
      },
      "message": "[PATCH] Add flush_kernel_dcache_page() API\n\nWe have a problem in a lot of emulated storage in that it takes a page from\nget_user_pages() and does something like\n\nkmap_atomic(page)\nmodify page\nkunmap_atomic(page)\n\nHowever, nothing has flushed the kernel cache view of the page before the\nkunmap.  We need a lightweight API to do this, so this new API would\nspecifically be for flushing the kernel cache view of a user page which the\nkernel has modified.  The driver would need to add\nflush_kernel_dcache_page(page) before the final kunmap.\n\nSigned-off-by: James Bottomley \u003cJames.Bottomley@SteelEye.com\u003e\nCc: Russell King \u003crmk@arm.linux.org.uk\u003e\nCc: \"David S. Miller\" \u003cdavem@davemloft.net\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "03beb07664d768db97bf454ae5c9581cd4737bb4",
      "tree": "b906c4db3a70627a58363193f3f843e7e2132ca1",
      "parents": [
        "64a07bd82ed526d813b64b0957543eef55bdf9c0"
      ],
      "author": {
        "name": "James Bottomley",
        "email": "James.Bottomley@SteelEye.com",
        "time": "Sun Mar 26 01:36:57 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sun Mar 26 08:56:53 2006 -0800"
      },
      "message": "[PATCH] Add API for flushing Anon pages\n\nCurrently, get_user_pages() returns fully coherent pages to the kernel for\nanything other than anonymous pages.  This is a problem for things like\nfuse and the SCSI generic ioctl SG_IO which can potentially wish to do DMA\nto anonymous pages passed in by users.\n\nThe fix is to add a new memory management API: flush_anon_page() which\nis used in get_user_pages() to make anonymous pages coherent.\n\nSigned-off-by: James Bottomley \u003cJames.Bottomley@SteelEye.com\u003e\nCc: Russell King \u003crmk@arm.linux.org.uk\u003e\nCc: \"David S. Miller\" \u003cdavem@davemloft.net\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "64a07bd82ed526d813b64b0957543eef55bdf9c0",
      "tree": "451586526696bc4a80d8a9f4c50460ae2d4e92eb",
      "parents": [
        "cd7b24bb1891a10ee25168a912ff2304a9571d23"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Sun Mar 26 01:36:55 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sun Mar 26 08:56:53 2006 -0800"
      },
      "message": "[PATCH] protect remove_proc_entry\n\nIt has been discovered that the remove_proc_entry has a race in the removing\nof entries in the proc file system that are siblings.  There\u0027s no protection\naround the traversing and removing of elements that belong in the same\nsubdirectory.\n\nThis subdirectory list is protected in other areas by the BKL.  So the BKL was\nat first used to protect this area too, but unfortunately, remove_proc_entry\nmay be called with spinlocks held.  The BKL may schedule, so this was not a\nsolution.\n\nThe final solution was to add a new global spin lock to protect this list,\ncalled proc_subdir_lock.  This lock now protects the list in\nremove_proc_entry, and I also went around looking for other areas that this\nlist is modified and added this protection there too.  Care must be taken\nsince these locations call several functions that may also schedule.\n\nSince I don\u0027t see any location that these functions that modify the\nsubdirectory list are called by interrupts, the irqsave/restore versions of\nthe spin lock was _not_ used.\n\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "36ddf5bbdea7ba4582abc62f106f0f0e9f0b6b91",
      "tree": "163d637dfda12eba3f8822d3b2941869b2d0ba00",
      "parents": [
        "a41622eaa97e40c811fb7756f403c0d4caa65654",
        "104c7b03ea0913a24be103db66d8cf1f1f99a49a"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sat Mar 25 20:31:32 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sat Mar 25 20:31:32 2006 -0800"
      },
      "message": "Merge master.kernel.org:/home/rmk/linux-2.6-serial\n\n* master.kernel.org:/home/rmk/linux-2.6-serial:\n  [ARM] 3383/3: ixp2000: ixdp2x01 platform serial conversion\n  [SERIAL] amba-pl010: Remove accessor macros\n  [SERIAL] remove 8250_acpi (replaced by 8250_pnp and PNPACPI)\n  [SERIAL] icom: select FW_LOADER\n"
    },
    {
      "commit": "a41622eaa97e40c811fb7756f403c0d4caa65654",
      "tree": "43dc2d74f80fc18d0467dcd2fe2168b2fccb845d",
      "parents": [
        "0b5c59a1e41636afa77b90d34e8c394d8d929733",
        "2ce9804fbd9d4da75fb5bb53331b46b614a7d5c3"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sat Mar 25 20:29:54 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sat Mar 25 20:29:54 2006 -0800"
      },
      "message": "Merge master.kernel.org:/home/rmk/linux-2.6-arm\n\n* master.kernel.org:/home/rmk/linux-2.6-arm:\n  [ARM] 3030/2: fix permission check in the obscur cmpxchg syscall\n  [ARM] nommu: rename compressed/head.S symbols to a new style\n  [ARM] select TLS_REG_EMUL and NEEDS_SYSCALL_FOR_CMPXCHG\n  [ARM] nommu: Move hardware page table definitions to pgtable-hwdef.h\n  [ARM] Move read of processor ID out of lookup_processor_type()\n  [ARM] Fix typo in tlbflush.h\n  [ARM] noMMU: removes TLB codes in nommu mode\n  [ARM] noMMU: block sys_fork in nommu mode\n  [ARM] 3399/1: Fix link problem when CONFIG_PRINTK is disabled\n  [ARM] 3398/1: Fix the VFP registers loading/storing base address\n  [ARM] 3397/1: AT91RM9200 Header update\n  [ARM] 3385/1: Battery support for sharp zaurus sl-5500 (collie)\n  [ARM] SMP: don\u0027t set cpu_*_map in smp_prepare_boot_cpu\n  include/linux/clk.h is betraying its ARM origins\n  [ARM] Move enable_irq and disable_irq to assembler.h\n  [ARM] 3391/1: use PLAT8250_DEV_PLATFORM{,1} for platform device id instead of 0/1\n"
    },
    {
      "commit": "104c7b03ea0913a24be103db66d8cf1f1f99a49a",
      "tree": "de9a2584e7a9c36a875e2e16d5d7ee7a7ee60de7",
      "parents": [
        "98639a67a9482fbfc4f9c91b4b59bf0d06b1f6c1"
      ],
      "author": {
        "name": "Lennert Buytenhek",
        "email": "buytenh@wantstofly.org",
        "time": "Sat Mar 25 23:03:13 2006 +0000"
      },
      "committer": {
        "name": "Russell King",
        "email": "rmk+kernel@arm.linux.org.uk",
        "time": "Sat Mar 25 23:03:13 2006 +0000"
      },
      "message": "[ARM] 3383/3: ixp2000: ixdp2x01 platform serial conversion\n\nPatch from Lennert Buytenhek\n\nAdd a PLAT8250_DEV_PLATFORM2, and convert the two ixdp2x01 CPLD serial\nports to use platform serial devices with ids PLAT8250_DEV_PLATFORM[12].\n(The on-chip xscale UART is PLAT8250_DEV_PLATFORM, id #0.)\n\nSigned-off-by: Lennert Buytenhek \u003cbuytenh@wantstofly.org\u003e\nSigned-off-by: Russell King \u003crmk+kernel@arm.linux.org.uk\u003e\n"
    },
    {
      "commit": "0003cedfc577be9d679c16531f8720739e9637ed",
      "tree": "3b7a1e9087384706c8320f85f650ab96139e8c00",
      "parents": [
        "3ee357f0f38a5fddebab18500c290d3879a2d89c",
        "c76b6b41d0ae29e1127d9f81cb687cabda57c14c"
      ],
      "author": {
        "name": "Russell King",
        "email": "rmk@dyn-67.arm.linux.org.uk",
        "time": "Sat Mar 25 22:08:55 2006 +0000"
      },
      "committer": {
        "name": "Russell King",
        "email": "rmk+kernel@arm.linux.org.uk",
        "time": "Sat Mar 25 22:08:55 2006 +0000"
      },
      "message": "Merge nommu tree\n\nFix merge conflict in arch/arm/mm/proc-xscale.S\n\nSigned-off-by: Russell King \u003crmk+kernel@arm.linux.org.uk\u003e\n"
    },
    {
      "commit": "1310eda4bec331fd951a8cbe80619f050f9036fc",
      "tree": "62055625b297c06bde7bc8c5d7daf4e73d320680",
      "parents": [
        "48a03ae863e0031def037fc828d7ea1a29b6fb7b"
      ],
      "author": {
        "name": "Andrew Victor",
        "email": "andrew@sanpeople.com",
        "time": "Sat Mar 25 21:57:59 2006 +0000"
      },
      "committer": {
        "name": "Russell King",
        "email": "rmk+kernel@arm.linux.org.uk",
        "time": "Sat Mar 25 21:57:59 2006 +0000"
      },
      "message": "[ARM] 3397/1: AT91RM9200 Header update\n\nPatch from Andrew Victor\n\nThis patch updates the hardware header to include definitions for the\nMemory Controller registers.\n\nSigned-off-by: Andrew Victor \u003candrew@sanpeople.com\u003e\nSigned-off-by: Russell King \u003crmk+kernel@arm.linux.org.uk\u003e\n"
    },
    {
      "commit": "686f8c5d77149f78ff6090dde774b2e43a7319b2",
      "tree": "ae9162452f8f317875e710084ca7616f2e7dfdc1",
      "parents": [
        "9c42954dfd50d02963cd453fb84bfef3967af2f0"
      ],
      "author": {
        "name": "Todd Poynor",
        "email": "tpoynor@mvista.com",
        "time": "Sat Mar 25 18:15:24 2006 +0000"
      },
      "committer": {
        "name": "Russell King",
        "email": "rmk+kernel@arm.linux.org.uk",
        "time": "Sat Mar 25 18:15:24 2006 +0000"
      },
      "message": "include/linux/clk.h is betraying its ARM origins\n\ninclude/linux/clk.h is betraying its ARM origins.\n\nSigned-off-by: Todd Poynor \u003ctpoynor@mvista.com\u003e\nSigned-off-by: Russell King \u003crmk+kernel@arm.linux.org.uk\u003e\n"
    },
    {
      "commit": "3cbb90a9cb7854b1110663919d5bc3da3f46d5e3",
      "tree": "b7bf16e3e9b44dfaa7d5bff3c612a6ab72bd7169",
      "parents": [
        "1b9a3917366028cc451a98dd22e3bcd537d4e5c1"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sat Mar 25 09:41:40 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sat Mar 25 09:41:40 2006 -0800"
      },
      "message": "powerpc: fix strncasecmp prototype\n\nIt takes a size_t, not an int, as its third argument.\n\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "1b9a3917366028cc451a98dd22e3bcd537d4e5c1",
      "tree": "d911058720e0a9aeeaf9f407ccdc6fbf4047f47d",
      "parents": [
        "3661f00e2097676847deb01add1a0918044bd816",
        "71e1c784b24a026a490b3de01541fc5ee14ebc09"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sat Mar 25 09:24:53 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sat Mar 25 09:24:53 2006 -0800"
      },
      "message": "Merge branch \u0027audit.b3\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/viro/audit-current\n\n* \u0027audit.b3\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/viro/audit-current: (22 commits)\n  [PATCH] fix audit_init failure path\n  [PATCH] EXPORT_SYMBOL patch for audit_log, audit_log_start, audit_log_end and audit_format\n  [PATCH] sem2mutex: audit_netlink_sem\n  [PATCH] simplify audit_free() locking\n  [PATCH] Fix audit operators\n  [PATCH] promiscuous mode\n  [PATCH] Add tty to syscall audit records\n  [PATCH] add/remove rule update\n  [PATCH] audit string fields interface + consumer\n  [PATCH] SE Linux audit events\n  [PATCH] Minor cosmetic cleanups to the code moved into auditfilter.c\n  [PATCH] Fix audit record filtering with !CONFIG_AUDITSYSCALL\n  [PATCH] Fix IA64 success/failure indication in syscall auditing.\n  [PATCH] Miscellaneous bug and warning fixes\n  [PATCH] Capture selinux subject/object context information.\n  [PATCH] Exclude messages by message type\n  [PATCH] Collect more inode information during syscall processing.\n  [PATCH] Pass dentry, not just name, in fsnotify creation hooks.\n  [PATCH] Define new range of userspace messages.\n  [PATCH] Filter rule comparators\n  ...\n\nFixed trivial conflict in security/selinux/hooks.c\n"
    },
    {
      "commit": "53846a21c1766326bb14ce8ab6e997a0c120675d",
      "tree": "37b04485e29844b4e734479181276a2f4d2447e4",
      "parents": [
        "2e9abdd9bad485970b37cd53a82f92702054984c",
        "1ebbe2b20091d306453a5cf480a87e6cd28ae76f"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sat Mar 25 09:18:27 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sat Mar 25 09:18:27 2006 -0800"
      },
      "message": "Merge git://git.linux-nfs.org/pub/linux/nfs-2.6\n\n* git://git.linux-nfs.org/pub/linux/nfs-2.6: (103 commits)\n  SUNRPC,RPCSEC_GSS: spkm3--fix config dependencies\n  SUNRPC,RPCSEC_GSS: spkm3: import contexts using NID_cast5_cbc\n  LOCKD: Make nlmsvc_traverse_shares return void\n  LOCKD: nlmsvc_traverse_blocks return is unused\n  SUNRPC,RPCSEC_GSS: fix krb5 sequence numbers.\n  NFSv4: Dont list system.nfs4_acl for filesystems that don\u0027t support it.\n  SUNRPC,RPCSEC_GSS: remove unnecessary kmalloc of a checksum\n  SUNRPC: Ensure rpc_call_async() always calls tk_ops-\u003erpc_release()\n  SUNRPC: Fix memory barriers for req-\u003erq_received\n  NFS: Fix a race in nfs_sync_inode()\n  NFS: Clean up nfs_flush_list()\n  NFS: Fix a race with PG_private and nfs_release_page()\n  NFSv4: Ensure the callback daemon flushes signals\n  SUNRPC: Fix a \u0027Busy inodes\u0027 error in rpc_pipefs\n  NFS, NLM: Allow blocking locks to respect signals\n  NFS: Make nfs_fhget() return appropriate error values\n  NFSv4: Fix an oops in nfs4_fill_super\n  lockd: blocks should hold a reference to the nlm_file\n  NFSv4: SETCLIENTID_CONFIRM should handle NFS4ERR_DELAY/NFS4ERR_RESOURCE\n  NFSv4: Send the delegation stateid for SETATTR calls\n  ...\n"
    },
    {
      "commit": "f271a6f557497830f3995138b0c78d8634b33863",
      "tree": "32d2fdb8f4e95c7414bdf8a2aa339daecabe14c8",
      "parents": [
        "3076a492a5e8dd624f237886646b35d12193502d"
      ],
      "author": {
        "name": "Andi Kleen",
        "email": "ak@suse.de",
        "time": "Sat Mar 25 16:31:58 2006 +0100"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sat Mar 25 09:14:39 2006 -0800"
      },
      "message": "[PATCH] x86_64: Removed duplicated declaration of force_iommu\n\nNoticed by Andrew Morton.\n\nSigned-off-by: Andi Kleen \u003cak@suse.de\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "dcf36bfa5de6d4e37878d4c98b6986fee4eb8b4c",
      "tree": "6b18d3efd64e55f14209f40ee3232da2ea25d69e",
      "parents": [
        "40caa884650fc6931cf55918dbf7496c49b3ddf8"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "dada1@cosmosbay.com",
        "time": "Sat Mar 25 16:31:46 2006 +0100"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sat Mar 25 09:14:38 2006 -0800"
      },
      "message": "[PATCH] x86_64: group memnodemap and memnodeshift in a memnode structure\n\npfn_to_page() and others need to access both memnode_shift and the very\nfirst bytes of memnodemap[]. If we force memnode_shift to be just before the\nmemnodemap array, we can reduce the memory footprint to one cache line\ninstead of two for most setups. This patch introduce a \u0027memnode\u0027 structure\nwhere shift and map[] are carefully placed.\n\nSigned-off-by: Eric Dumazet \u003cdada1@cosmosbay.com\u003e\nSigned-off-by: Andi Kleen \u003cak@suse.de\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "94949436191f69dac735919a9698612ef6b3dbba",
      "tree": "9648177bb03f620b6333153102e5bdd7e56f47ca",
      "parents": [
        "5d05f4de414c98348219b633401ad9c9a5348a8b"
      ],
      "author": {
        "name": "Andi Kleen",
        "email": "ak@suse.de",
        "time": "Sat Mar 25 16:31:37 2006 +0100"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sat Mar 25 09:14:38 2006 -0800"
      },
      "message": "[PATCH] x86_64: Make local_t 64bit instead of 32bit\n\nFor consistency with other architectures\n\nSigned-off-by: Andi Kleen \u003cak@suse.de\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "ba22f13563de5773701fc318ccaaa37b1fb6d294",
      "tree": "e29ddeaca4c9f7b1b5ef08804980600d0e089f5b",
      "parents": [
        "9d95dd849ccc43c4b21504e1829b5bed68cdb1bc"
      ],
      "author": {
        "name": "Andi Kleen",
        "email": "ak@suse.de",
        "time": "Sat Mar 25 16:31:31 2006 +0100"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sat Mar 25 09:14:38 2006 -0800"
      },
      "message": "[PATCH] x86_64: Remove CONFIG_UNORDERED_IO\n\nIt was a failed experiment - all benchmarks done with it on both AMD\nand Intel showed it was a loss. That was probably because the store\nbuffers of the CPUs for write combining traffic weren\u0027t large enough.\n\nSigned-off-by: Andi Kleen \u003cak@suse.de\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "da7ed9f98f6f3f18664f8ab24303f9428b9d78f8",
      "tree": "692653ace76f945b130eeb991b8e3857caf866b6",
      "parents": [
        "b1fc513d81b0f50f9543428ce95ec63ae70ab184"
      ],
      "author": {
        "name": "Vivek Goyal",
        "email": "vgoyal@in.ibm.com",
        "time": "Sat Mar 25 16:31:16 2006 +0100"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sat Mar 25 09:10:57 2006 -0800"
      },
      "message": "[PATCH] x86_64: timer interrupt lockup due to pending interrupt\n\no check_timer() routine fails while second kernel is booting after a crash\n  on an opetron box. Problem happens because timer vector (0x31) seems to be\n  locked.\n\no After a system crash, it is not safe to service interrupts any more, hence\n  interrupts are disabled. This leads to pending interrupts at LAPIC. LAPIC\n  sends these interrupts to the CPU during early boot of second kernel. Other\n  pending interrupts are discarded saying unexpected trap but timer interrupt\n  is serviced and CPU does not issue an LAPIC EOI because it think this\n  interrupt came from i8259 and sends ack to 8259. This leads to vector 0x31\n  locking as LAPIC does not clear respective ISR and keeps on waiting for\n  EOI.\n\no This patch issues extra EOI for the pending interrupts who have ISR set.\n\no Though today only timer seems to be the special case because in early\n  boot it thinks interrupts are coming from i8259 and uses\n  mask_and_ack_8259A() as ack handler and does not issue LAPIC EOI. But\n  probably doing it in generic manner for all vectors makes sense.\n\nSigned-off-by: Vivek Goyal \u003cvgoyal@in.ibm.com\u003e\nSigned-off-by: Andi Kleen \u003cak@suse.de\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "267b48014a5c0c2ae90b04dad5d95ceb903365a6",
      "tree": "95f5475b7b7f6e5b4fd023f51fb2fa826d95a754",
      "parents": [
        "bd6633476922b7b51227f7f704c2546e763ae5ed"
      ],
      "author": {
        "name": "Andi Kleen",
        "email": "ak@suse.de",
        "time": "Sat Mar 25 16:31:10 2006 +0100"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sat Mar 25 09:10:56 2006 -0800"
      },
      "message": "[PATCH] x86_64: Try to allocate node memmap near the end of node\n\nThis fixes problems with very large nodes (over 128GB) filling up all of\nthe first 4GB with their mem_map and not leaving enough space for the\nswiotlb.\n\nSigned-off-by: Andi Kleen \u003cak@suse.de\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "df92004ce60a0bb60c8315903c0765873c34a702",
      "tree": "420782e1621f8d5d44dd8b4ecc640cbcfc0c4131",
      "parents": [
        "01d4bed417b5943577e9290fbf672ea9a449dc46"
      ],
      "author": {
        "name": "Arjan van de Ven",
        "email": "arjan@linux.intel.com",
        "time": "Sat Mar 25 16:31:01 2006 +0100"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sat Mar 25 09:10:56 2006 -0800"
      },
      "message": "[PATCH] x86_64: Reorder one field of the PDA to reduce padding\n\nThis reorders the mmu_state int in the pda, such that there is no more\npadding (there currently is 4 bytes of padding).  Boot tested.\n\nSigned-off-by: Arjan van de Ven \u003carjan@linux.intel.com\u003e\nSigned-off-by: Andi Kleen \u003cak@suse.de\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "554d284ba90bc2306c31e5363789f05c320969c3",
      "tree": "8fb67f8c7bed5c6525a060b094ff461fb4bfb104",
      "parents": [
        "28456edeff2ef9273c55cd12e4b193208717d4cd"
      ],
      "author": {
        "name": "Andi Kleen",
        "email": "ak@suse.de",
        "time": "Sat Mar 25 16:30:40 2006 +0100"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sat Mar 25 09:10:55 2006 -0800"
      },
      "message": "[PATCH] x86_64: Don\u0027t invoke OOM killer while allocating floppy DMA buffers\n\nFloppy can fall back to smaller buffers, so don\u0027t do OOM killing.\n\nSigned-off-by: Andi Kleen \u003cak@suse.de\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "f2d3efedbecc04dc348d723e4c90b46731b3bb48",
      "tree": "982c7838a97a5c2420de392e5a36f49eaa1778b0",
      "parents": [
        "f083a329e63d471a5e9238e837772b1b76c218db"
      ],
      "author": {
        "name": "Andi Kleen",
        "email": "ak@suse.de",
        "time": "Sat Mar 25 16:30:22 2006 +0100"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sat Mar 25 09:10:55 2006 -0800"
      },
      "message": "[PATCH] x86_64: Implement early DMI scanning\n\nThere are more and more cases where we need to know DMI information\nearly to work around bugs.  i386 already had early DMI scanning, but\nx86-64 didn\u0027t.  Implement this now.\n\nThis required some cleanup in the i386 code.\n\nSigned-off-by: Andi Kleen \u003cak@suse.de\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "f083a329e63d471a5e9238e837772b1b76c218db",
      "tree": "3d0955a4190ca886c3efa2e93e725d843e7d907b",
      "parents": [
        "e6fc99c6aba0350a3c4c0206b7047d4893491485"
      ],
      "author": {
        "name": "Andi Kleen",
        "email": "ak@suse.de",
        "time": "Sat Mar 25 16:30:19 2006 +0100"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sat Mar 25 09:10:54 2006 -0800"
      },
      "message": "[PATCH] x86_64: Clean up and tweak ACPI blacklist year code\n\n - Move the core parser into dmi_scan.c.  It can be useful for other\n   subsystems too.\n - Differentiate between field doesn\u0027t exist and field is 0 or\n   unparseable.  The first case is likely an old BIOS with broken ACPI,\n   the later is likely a slightly buggy BIOS where someone forget to\n   edit the date.  Don\u0027t blacklist in the later case.\n\nSigned-off-by: Andi Kleen \u003cak@suse.de\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "6edfba1b33c701108717f4e036320fc39abe1912",
      "tree": "48f69c4e9c103c88541d4c5e36fae9a688c45bb1",
      "parents": [
        "681558fdb5848f0a6dc248108f0f7323f7380857"
      ],
      "author": {
        "name": "Andi Kleen",
        "email": "ak@suse.de",
        "time": "Sat Mar 25 16:29:49 2006 +0100"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sat Mar 25 09:10:53 2006 -0800"
      },
      "message": "[PATCH] x86_64: Don\u0027t define string functions to builtin\n\ngcc should handle this anyways, and it causes problems when\nsprintf is turned into strcpy by gcc behind our backs and\nthe C fallback version of strcpy is actually defining __builtin_strcpy\n\nThen drop -ffreestanding from the main Makefile because it isn\u0027t\nneeded anymore and implies -fno-builtin, which is wrong now.\n(it was only added for x86-64, so dropping it should be safe)\n\nNoticed by Roman Zippel\n\nCc: Roman Zippel \u003czippel@linux-m68k.org\u003e\nSigned-off-by: Andi Kleen \u003cak@suse.de\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "86ebcea899ff01274c1e8e15bf1d1f1cf5fac471",
      "tree": "d14b575e09c71aaf6f467a28c72f943ab815dd8f",
      "parents": [
        "8c914cb704a11460eec7ed2a572bb5e9bd513d24"
      ],
      "author": {
        "name": "Jan Beulich",
        "email": "jbeulich@novell.com",
        "time": "Sat Mar 25 16:29:43 2006 +0100"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sat Mar 25 09:10:53 2006 -0800"
      },
      "message": "[PATCH] x86_64: remove dead do_softirq_thunk\n\nAppearantly a left-over...\n\nSigned-off-by: Jan Beulich \u003cjbeulich@novell.com\u003e\nSigned-off-by: Andi Kleen \u003cak@suse.de\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "8c914cb704a11460eec7ed2a572bb5e9bd513d24",
      "tree": "3d735f0e33f474b296f106dee70935d77e267a74",
      "parents": [
        "85f9eebccde51e24896f31383f5b70776362e1a6"
      ],
      "author": {
        "name": "Jan Beulich",
        "email": "jbeulich@novell.com",
        "time": "Sat Mar 25 16:29:40 2006 +0100"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sat Mar 25 09:10:53 2006 -0800"
      },
      "message": "[PATCH] x86_64: actively synchronize vmalloc area when registering certain callbacks\n\nWhile the modular aspect of the respective i386 patch doesn\u0027t apply to\nx86-64 (as the top level page directory entry is shared between modules\nand the base kernel), handlers registered with register_die_notifier()\nare still under similar constraints for touching ioremap()ed or\nvmalloc()ed memory. The likelihood of this problem becoming visible is\nof course significantly lower, as the assigned virtual addresses would\nhave to cross a 2**39 byte boundary. This is because the callback gets\ninvoked\n(a) in the page fault path before the top level page table propagation\ngets carried out (hence a fault to propagate the top level page table\nentry/entries mapping to module\u0027s code/data would nest infinitly) and\n(b) in the NMI path, where nested faults must absolutely not happen,\nsince otherwise the IRET from the nested fault re-enables NMIs,\npotentially resulting in nested NMI occurences.\n\nSigned-off-by: Jan Beulich \u003cjbeulich@novell.com\u003e\nSigned-off-by: Andi Kleen \u003cak@suse.de\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "2b514e74f4e59e3b8e54891580fef2c9ff6c7bd0",
      "tree": "106ddc876df761c2b3d9aa3ef27c576ad15ed54b",
      "parents": [
        "893efca9279d7a78bae6532de0524e53370819d5"
      ],
      "author": {
        "name": "Jan Beulich",
        "email": "jbeulich@novell.com",
        "time": "Sat Mar 25 16:29:22 2006 +0100"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sat Mar 25 09:10:52 2006 -0800"
      },
      "message": "[PATCH] x86_64: eliminate set_debug()\n\nFor consistency and to have only a single place of definition, replace\nset_debug() uses with set_debugreg(), and eliminate the definition of\nthj former.\n\nSigned-off-by: Jan Beulich \u003cjbeulich@novell.com\u003e\nSigned-off-by: Andi Kleen \u003cak@suse.de\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "abe059e7590fd4475285f2d037c70dec712a4572",
      "tree": "4c15ffcf11786a89cd87d0766c6d6717342aa722",
      "parents": [
        "913bd906019514579b3c7ec5ab9c463e89207a57"
      ],
      "author": {
        "name": "Andi Kleen",
        "email": "ak@suse.de",
        "time": "Sat Mar 25 16:29:12 2006 +0100"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sat Mar 25 09:10:52 2006 -0800"
      },
      "message": "[PATCH] x86_64: Rename struct node in x86-64 NUMA code to struct bootnode\n\nIt conflicts with the struct node in node.h\nActually the x86-64 version was there first, but ..\n\nSuggested by Jan Beulich\n\nCc: jbeulich@novell.com\nSigned-off-by: Andi Kleen \u003cak@suse.de\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "913bd906019514579b3c7ec5ab9c463e89207a57",
      "tree": "8f73c66bf2b30afb2807814d97f9307af0508454",
      "parents": [
        "dca99a38bccceda9e079d4c95abefbd9028605fe"
      ],
      "author": {
        "name": "Andi Kleen",
        "email": "ak@suse.de",
        "time": "Sat Mar 25 16:29:09 2006 +0100"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sat Mar 25 09:10:52 2006 -0800"
      },
      "message": "[PATCH] x86_64: Increase the variability of the process stack on 64bit architectures\n\n8MB is not really very random, use 1GB (or more with larger page sizes)\ninstead.\n\nAlso use the low bits of the random generator output now instead of\nthrowing them away.\n\nOnly enabled on x86-64 right now. Other architectures need to add\na suitable STACK_RND_MASK\n\nCc: mingo@elte.hu\nSigned-off-by: Andi Kleen \u003cak@suse.de\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "7d14f145f839b5d0d221ea209b4998f93267e2ec",
      "tree": "669d09ad53c9de9ef2e6cef06d256a811d509d65",
      "parents": [
        "2e1ca21d46aaef95101723fa402f39d3a95aba59",
        "4129a953ad4db379d8e07b0dd2157998653a1325"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sat Mar 25 08:49:25 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sat Mar 25 08:49:25 2006 -0800"
      },
      "message": "Merge branch \u0027release\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/aegl/linux-2.6\n\n* \u0027release\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/aegl/linux-2.6:\n  [IA64] New IA64 core/thread detection patch\n  [IA64] Increase max node count on SN platforms\n  [IA64] Increase max node count on SN platforms\n  [IA64] Increase max node count on SN platforms\n  [IA64] Increase max node count on SN platforms\n  [IA64] Tollhouse HP: IA64 arch changes\n  [IA64] cleanup dig_irq_init\n  [IA64] MCA recovery: kernel context recovery table\n  IA64: Use early_parm to handle mvec_name and nomca\n  [IA64] move patchlist and machvec into init section\n  [IA64] add init declaration - nolwsys\n  [IA64] add init declaration - gate page functions\n  [IA64] add init declaration to memory initialization functions\n  [IA64] add init declaration to cpu initialization functions\n  [IA64] add __init declaration to mca functions\n  [IA64] Ignore disabled Local SAPIC Affinity Structure in SRAT\n  [IA64] sn_check_intr: use ia64_get_irr()\n  [IA64] fix ia64 is_hugepage_only_range\n"
    },
    {
      "commit": "1e8c573933fd7975679766850252ad08667e5ca4",
      "tree": "9600d0c7ee5ea8925f3c4dc30680c819e0363805",
      "parents": [
        "d71eecf3b8e893757cc3dec560c96a32ac090890",
        "232443e2c90cc2930624dec89df327615b002c55"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sat Mar 25 08:41:09 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sat Mar 25 08:41:09 2006 -0800"
      },
      "message": "Merge git://git.kernel.org/pub/scm/linux/kernel/git/bunk/trivial\n\n* git://git.kernel.org/pub/scm/linux/kernel/git/bunk/trivial: (21 commits)\n  BUG_ON() Conversion in drivers/video/\n  BUG_ON() Conversion in drivers/parisc/\n  BUG_ON() Conversion in drivers/block/\n  BUG_ON() Conversion in sound/sparc/cs4231.c\n  BUG_ON() Conversion in drivers/s390/block/dasd.c\n  BUG_ON() Conversion in lib/swiotlb.c\n  BUG_ON() Conversion in kernel/cpu.c\n  BUG_ON() Conversion in ipc/msg.c\n  BUG_ON() Conversion in block/elevator.c\n  BUG_ON() Conversion in fs/coda/\n  BUG_ON() Conversion in fs/binfmt_elf_fdpic.c\n  BUG_ON() Conversion in input/serio/hil_mlc.c\n  BUG_ON() Conversion in md/dm-hw-handler.c\n  BUG_ON() Conversion in md/bitmap.c\n  The comment describing how MS_ASYNC works in msync.c is confusing\n  rcu: undeclared variable used in documentation\n  fix typos \"wich\" -\u003e \"which\"\n  typo patch for fs/ufs/super.c\n  Fix simple typos\n  tabify drivers/char/Makefile\n  ...\n"
    },
    {
      "commit": "d71eecf3b8e893757cc3dec560c96a32ac090890",
      "tree": "5ca3ce995f506c8659753d24b911f5502b36e201",
      "parents": [
        "b55813a2e50088ca30df33fa62aeed5d3adb1796",
        "a54123e27779049d27d21e6c8adfee73aa2c0734"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sat Mar 25 08:39:55 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sat Mar 25 08:39:55 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  [SPARC]: Try to start getting SMP back into shape.\n"
    },
    {
      "commit": "b55813a2e50088ca30df33fa62aeed5d3adb1796",
      "tree": "be50fe404e94869fe854766e190a5753dbc7dd49",
      "parents": [
        "368d17e068f691dba5a4f122c271db5ec9b2ebd6",
        "9e19bb6d7a0959f5028d46e1ab99c50f0d36eda8"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sat Mar 25 08:39:20 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sat Mar 25 08:39:20 2006 -0800"
      },
      "message": "Merge master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6\n\n* master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6:\n  [NETFILTER] x_table.c: sem2mutex\n  [IPV4]: Aggregate route entries with different TOS values\n  [TCP]: Mark tcp_*mem[] __read_mostly.\n  [TCP]: Set default max buffers from memory pool size\n  [SCTP]: Fix up sctp_rcv return value\n  [NET]: Take RTNL when unregistering notifier\n  [WIRELESS]: Fix config dependencies.\n  [NET]: Fill in a 32-bit hole in struct sock on 64-bit platforms.\n  [NET]: Ensure device name passed to SO_BINDTODEVICE is NULL terminated.\n  [MODULES]: Don\u0027t allow statically declared exports\n  [BRIDGE]: Unaligned accesses in the ethernet bridge\n"
    },
    {
      "commit": "368d17e068f691dba5a4f122c271db5ec9b2ebd6",
      "tree": "69954cea09e5efd4ad1b8268be0e1733a13b4fae",
      "parents": [
        "a9312fb839e90668d05a90024f3a7e7ff646a4a3",
        "22fe087f0139e2f5cbe004f24f84cb1c08b4711e"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sat Mar 25 08:37:36 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sat Mar 25 08:37:36 2006 -0800"
      },
      "message": "Merge master.kernel.org:/pub/scm/linux/kernel/git/mchehab/v4l-dvb\n\n* master.kernel.org:/pub/scm/linux/kernel/git/mchehab/v4l-dvb: (33 commits)\n  V4L/DVB (3604): V4l printk fix\n  V4L/DVB (3599c): Whitespace cleanups under Documentation/video4linux\n  V4L/DVB (3599b): Whitespace cleanups under drivers/media\n  V4L/DVB (3599a): Move drivers/usb/media to drivers/media/video\n  V4L/DVB (3599): Implement new routing commands for wm8775 and cs53l32a.\n  V4L/DVB (3598): Add bit algorithm adapter for the Conexant CX2341X boards.\n  V4L/DVB (3597): Vivi: fix warning: implicit declaration of function \u0027in_interrupt\u0027\n  V4L/DVB (3588): Remove VIDIOC_G/S_AUDOUT from msp3400\n  V4L/DVB (3587): Always wake thread after routing change.\n  V4L/DVB (3584): Implement V4L2_TUNER_MODE_LANG1_LANG2 audio mode\n  V4L/DVB (3582): Implement correct msp3400 input/output routing\n  V4L/DVB (3581): Add new media/msp3400.h header containing the routing macros\n  V4L/DVB (3580): Last round of msp3400 cleanups before adding routing commands\n  V4L/DVB (3579): Move msp_modus to msp3400-kthreads, add JP and KR std detection\n  V4L/DVB (3578): Make scart definitions easier to handle\n  V4L/DVB (3577): Cleanup audio input handling\n  V4L/DVB (3575): Cxusb: fix i2c debug messages for bluebird devices\n  V4L/DVB (3574): Cxusb: fix debug messages\n  V4L/DVB (3573): Cxusb: remove FIXME: comment in bluebird_patch_dvico_firmware_download\n  V4L/DVB (3572): Cxusb: conditionalize gpio write for the medion box\n  ...\n"
    },
    {
      "commit": "5ddcfa878d5b10b0ab94251a4229a8a9daaf93ed",
      "tree": "b24bbd7ccb1a8accb0bc2e6f8c0d3b92f0bf66ea",
      "parents": [
        "e4294b3ecd1da9abeb66709c89f71b1ba888b3b1"
      ],
      "author": {
        "name": "Roman Zippel",
        "email": "zippel@linux-m68k.org",
        "time": "Sat Mar 25 03:08:28 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sat Mar 25 08:23:02 2006 -0800"
      },
      "message": "[PATCH] remove pps support\n\nThis removes the support for pps.  It\u0027s completely unused within the kernel\nand is basically in the way for further cleanups.  It should be easier to\nreadd proper support for it after the rest has been converted to NTP4\n(where the pps mechanisms are quite different from NTP3 anyway).\n\nSigned-off-by: Roman Zippel \u003czippel@linux-m68k.org\u003e\nCc: Adrian Bunk \u003cbunk@stusta.de\u003e\nCc: john stultz \u003cjohnstul@us.ibm.com\u003e\nCc: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "d12ddde2bbf46b34eae3fb3fd36c0e42832b537c",
      "tree": "e3e9fd142c700154b041d75ff50075b614826c71",
      "parents": [
        "1e0a91ad52c741d09288450674fc7c7f1695200a"
      ],
      "author": {
        "name": "Pekka Enberg",
        "email": "penberg@cs.helsinki.fi",
        "time": "Sat Mar 25 03:08:21 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sat Mar 25 08:23:01 2006 -0800"
      },
      "message": "[PATCH] udf: remove duplicate definitions\n\nThis patch removes duplicate definitions from include/linux/udf_fs_i.h\nwhich are already defined in fs/udf/ecma_167.h.\n\nSigned-off-by: Pekka Enberg \u003cpenberg@cs.helsinki.fi\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "34f361ade2fb4a869f6a7714d01c04ce4cfa75d9",
      "tree": "a250999fc386ddbfe3c92e4d8ffdcf2d3393134a",
      "parents": [
        "f1a1c2dc2a956c375b432d2a9a28e52ba9d81c7c"
      ],
      "author": {
        "name": "Ashok Raj",
        "email": "ashok.raj@intel.com",
        "time": "Sat Mar 25 03:08:18 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sat Mar 25 08:23:01 2006 -0800"
      },
      "message": "[PATCH] Check if cpu can be onlined before calling smp_prepare_cpu()\n\n- Moved check for online cpu out of smp_prepare_cpu()\n\n- Moved default declaration of smp_prepare_cpu() to kernel/cpu.c\n\n- Removed lock_cpu_hotplug() from smp_prepare_cpu() to around it, since\n  its called from cpu_up() as well now.\n\n- Removed clearing from cpu_present_map during cpu_offline as it breaks\n  using cpu_up() directly during a subsequent online operation.\n\nSigned-off-by: Ashok Raj \u003cashok.raj@intel.com\u003e\nCc: Srivatsa Vaddagiri \u003cvatsa@in.ibm.com\u003e\nCc: \"Li, Shaohua\" \u003cshaohua.li@intel.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "96a9b4d31eba4722ba7aad2cc15118a7799f499f",
      "tree": "f96739e328e3e50b43122e551a36415f6e26a1e8",
      "parents": [
        "8630282070b4a52b12cfa514ba8558e2f3d56360"
      ],
      "author": {
        "name": "Andrew Morton",
        "email": "akpm@osdl.org",
        "time": "Sat Mar 25 03:08:10 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sat Mar 25 08:23:00 2006 -0800"
      },
      "message": "[PATCH] cpumask: uninline any_online_cpu()\n\n           text    data     bss     dec     hex filename\nbefore: 3605597 1363528  363328 5332453  515de5 vmlinux\nafter:  3605295 1363612  363200 5332107  515c8b vmlinux\n\n218 bytes saved.\n\nAlso, optimise any_online_cpu() out of existence on CONFIG_SMP\u003dn.\n\nThis function seems inefficient.  Can\u0027t we simply AND the two masks, then use\nfind_first_bit()?\n\nCc: Paul Jackson \u003cpj@sgi.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "8630282070b4a52b12cfa514ba8558e2f3d56360",
      "tree": "cf648185ccc0a0ba4e7cf752c1c09a0272a6d192",
      "parents": [
        "3d18bd74a22d0bed3bc81fc64c4ba6344a10f155"
      ],
      "author": {
        "name": "Andrew Morton",
        "email": "akpm@osdl.org",
        "time": "Sat Mar 25 03:08:09 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sat Mar 25 08:23:00 2006 -0800"
      },
      "message": "[PATCH] cpumask: uninline highest_possible_processor_id()\n\nShrinks the only caller (net/bridge/netfilter/ebtables.c) by 174 bytes.\n\nAlso, optimise highest_possible_processor_id() out of existence on\nCONFIG_SMP\u003dn.\n\nCc: Paul Jackson \u003cpj@sgi.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "3d18bd74a22d0bed3bc81fc64c4ba6344a10f155",
      "tree": "414b44796651db833481e17030f0b18a1be3527b",
      "parents": [
        "ccb46000f4bb459777686611157ac0eac928704e"
      ],
      "author": {
        "name": "Andrew Morton",
        "email": "akpm@osdl.org",
        "time": "Sat Mar 25 03:08:09 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sat Mar 25 08:22:59 2006 -0800"
      },
      "message": "[PATCH] cpumask: uninline next_cpu()\n\n           text    data     bss     dec     hex filename\nbefore: 3488027 1322496  360128 5170651  4ee5db vmlinux\nafter:  3485112 1322480  359968 5167560  4ed9c8 vmlinux\n\n2931 bytes saved\n\nCc: Paul Jackson \u003cpj@sgi.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "ccb46000f4bb459777686611157ac0eac928704e",
      "tree": "461e956d9e27a7afa7de64950f3186070ffa61f5",
      "parents": [
        "64b91379439ff0fb007bde90eb496299c14a9b2a"
      ],
      "author": {
        "name": "Andrew Morton",
        "email": "akpm@osdl.org",
        "time": "Sat Mar 25 03:08:08 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sat Mar 25 08:22:59 2006 -0800"
      },
      "message": "[PATCH] cpumask: uninline first_cpu()\n\n           text    data     bss     dec     hex filename\nbefore: 3490577 1322408  360000 5172985  4eeef9 vmlinux\nafter:  3488027 1322496  360128 5170651  4ee5db vmlinux\n\nCc: Paul Jackson \u003cpj@sgi.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "daff89f324755f87a060d5125a205c0755811ea9",
      "tree": "5b2734bd46c8d73a068b571ba1059e67df014825",
      "parents": [
        "57070d012cd425c3a71663528c56a436abd2d9da"
      ],
      "author": {
        "name": "Jonathan Corbet",
        "email": "corbet@lwn.net",
        "time": "Sat Mar 25 03:08:05 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sat Mar 25 08:22:59 2006 -0800"
      },
      "message": "[PATCH] radix-tree documentation cleanups\n\nDocumentation changes to help radix tree users avoid overrunning the tags\narray.  RADIX_TREE_TAGS moves to linux/radix-tree.h and is now known as\nRADIX_TREE_MAX_TAGS (Nick Piggin\u0027s idea).  Tag parameters are changed to\nunsigned, and some comments are updated.\n\nSigned-off-by: Jonathan Corbet \u003ccorbet@lwn.net\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": "962749af67b145c57917bfbff3c303ebd7d5988c",
      "tree": "ce454f8a1cb0beb89c875a11d31426a4b44ca0ba",
      "parents": [
        "231bed205879236357171e50bd8965e70797ecdc"
      ],
      "author": {
        "name": "Andrew Morton",
        "email": "akpm@osdl.org",
        "time": "Sat Mar 25 03:08:01 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sat Mar 25 08:22:58 2006 -0800"
      },
      "message": "[PATCH] roundup_pow_of_two() 64-bit fix\n\nfls() takes an integer, so roundup_pow_of_two() is busted for ulongs larger\nthan 2^32-1.\n\nFix this by implementing and using fls_long().\n\n(Why does roundup_pow_of_two() return a long?)\n\n(Why is roundup_pow_of_two() __attribute_const__ whereas long_log2() is\n__attribute_pure__?)\n\n(Why does long_log2() suck so much?  Because we were missing fls_long()?)\n\nCc: Roland Dreier \u003crdreier@cisco.com\u003e\nCc: \"Chen, Kenneth W\" \u003ckenneth.w.chen@intel.com\u003e\nCc: John Hawkes \u003chawkes@sgi.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "12b5989be10011387a9da5dee82e5c0d6f9d02e7",
      "tree": "74da71d407bf26bf97c639bb2b473de233a736ac",
      "parents": [
        "77d47582c2345e071df02afaf9191641009287c4"
      ],
      "author": {
        "name": "Chris Wright",
        "email": "chrisw@sous-sol.org",
        "time": "Sat Mar 25 03:07:41 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sat Mar 25 08:22:56 2006 -0800"
      },
      "message": "[PATCH] refactor capable() to one implementation, add __capable() helper\n\nMove capable() to kernel/capability.c and eliminate duplicate\nimplementations.  Add __capable() function which can be used to check for\ncapabiilty of any process.\n\nSigned-off-by: Chris Wright \u003cchrisw@sous-sol.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "77d47582c2345e071df02afaf9191641009287c4",
      "tree": "b166b485024deed48add518bc60bf54e5f08a592",
      "parents": [
        "f348d70a324e15afc701a494f32ec468abb7d1eb"
      ],
      "author": {
        "name": "Adrian Bunk",
        "email": "bunk@stusta.de",
        "time": "Sat Mar 25 03:07:39 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sat Mar 25 08:22:56 2006 -0800"
      },
      "message": "[PATCH] add a proper prototype for setup_arch()\n\nThis patch adds a proper prototype for setup_arch() in init.h.\n\nThis patch is based on a patch by Ben Dooks \u003cben-linux@fluff.org\u003e.\n\nSigned-off-by: Adrian Bunk \u003cbunk@stusta.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "f348d70a324e15afc701a494f32ec468abb7d1eb",
      "tree": "a4cb43429f7f08a6621c581bd99e4a03198e8c67",
      "parents": [
        "501f2499b897ca4be68b1acc7a4bc8cf66f5fd24"
      ],
      "author": {
        "name": "Davide Libenzi",
        "email": "davidel@xmailserver.org",
        "time": "Sat Mar 25 03:07:39 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sat Mar 25 08:22:56 2006 -0800"
      },
      "message": "[PATCH] POLLRDHUP/EPOLLRDHUP handling for half-closed devices notifications\n\nImplement the half-closed devices notifiation, by adding a new POLLRDHUP\n(and its alias EPOLLRDHUP) bit to the existing poll/select sets.  Since the\nexisting POLLHUP handling, that does not report correctly half-closed\ndevices, was feared to be changed, this implementation leaves the current\nPOLLHUP reporting unchanged and simply add a new bit that is set in the few\nplaces where it makes sense.  The same thing was discussed and conceptually\nagreed quite some time ago:\n\nhttp://lkml.org/lkml/2003/7/12/116\n\nSince this new event bit is added to the existing Linux poll infrastruture,\neven the existing poll/select system calls will be able to use it.  As far\nas the existing POLLHUP handling, the patch leaves it as is.  The\npollrdhup-2.6.16.rc5-0.10.diff defines the POLLRDHUP for all the existing\narchs and sets the bit in the six relevant files.  The other attached diff\nis the simple change required to sys/epoll.h to add the EPOLLRDHUP\ndefinition.\n\nThere is \"a stupid program\" to test POLLRDHUP delivery here:\n\n http://www.xmailserver.org/pollrdhup-test.c\n\nIt tests poll(2), but since the delivery is same epoll(2) will work equally.\n\nSigned-off-by: Davide Libenzi \u003cdavidel@xmailserver.org\u003e\nCc: \"David S. Miller\" \u003cdavem@davemloft.net\u003e\nCc: Michael Kerrisk \u003cmtk-manpages@gmx.net\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "c777ac5594f772ac760e02c3ac71d067616b579d",
      "tree": "3a186fd7c1b63a89bc6c6749b2b234821ee8fdc4",
      "parents": [
        "4cae59d2e85c1ee2ab1ee284db1945c5394cd965"
      ],
      "author": {
        "name": "Andrew Morton",
        "email": "akpm@osdl.org",
        "time": "Sat Mar 25 03:07:36 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sat Mar 25 08:22:55 2006 -0800"
      },
      "message": "[PATCH] irq: uninline migration functions\n\nUninline some massive IRQ migration functions.  Put them in the new\nkernel/irq/migration.c.\n\nCc: Andi Kleen \u003cak@muc.de\u003e\nCc: \"Luck, Tony\" \u003ctony.luck@intel.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "33d8675ea66e79d21da3ed64ce88dfb2a18bc6a7",
      "tree": "7283a680e122e4d15f50e818bab188b84fc852a9",
      "parents": [
        "c2f6fabb2ed3b869bc254c6cdc73d6beaaaf700f"
      ],
      "author": {
        "name": "Bjorn Helgaas",
        "email": "bjorn.helgaas@hp.com",
        "time": "Sat Mar 25 03:07:20 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sat Mar 25 08:22:53 2006 -0800"
      },
      "message": "[PATCH] amiga: fix driver_register() return handling, remove zorro_module_init()\n\nRemove the assumption that driver_register() returns the number of devices\nbound to the driver.  In fact, it returns zero for success or a negative\nerror value.\n\nzorro_module_init() used the device count to automatically unregister and\nunload drivers that found no devices.  That might have worked at one time,\nbut has been broken for some time because zorro_register_driver() returned\neither a negative error or a positive count (never zero).  So it could only\nunregister on failure, when it\u0027s not needed anyway.\n\nThis functionality could be resurrected in individual drivers by counting\ndevices in their .probe() methods.\n\nSigned-off-by: Bjorn Helgaas \u003cbjorn.helgaas@hp.com\u003e\nCc: Geert Uytterhoeven \u003cgeert@linux-m68k.org\u003e\nCc: Roman Zippel \u003czippel@linux-m68k.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "e51c01b08474ea454a965a937fff0407ab6714c7",
      "tree": "403e22aa86b4a24699df7cc1285ab915ec3eda1a",
      "parents": [
        "5930860296ca438071d3824bf7306ad0dfd33fc1"
      ],
      "author": {
        "name": "Bjorn Helgaas",
        "email": "bjorn.helgaas@hp.com",
        "time": "Sat Mar 25 03:07:17 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sat Mar 25 08:22:53 2006 -0800"
      },
      "message": "[PATCH] hp300: fix driver_register() return handling, remove dio_module_init()\n\nRemove the assumption that driver_register() returns the number of devices\nbound to the driver.  In fact, it returns zero for success or a negative\nerror value.\n\ndio_module_init() used the device count to automatically unregister and\nunload drivers that found no devices.  That might have worked at one time,\nbut has been broken for some time because dio_register_driver() returned\neither a negative error or a positive count (never zero).  So it could only\nunregister on failure, when it\u0027s not needed anyway.\n\nThis functionality could be resurrected in individual drivers by counting\ndevices in their .probe() methods.\n\nSigned-off-by: Bjorn Helgaas \u003cbjorn.helgaas@hp.com\u003e\nCc: Philip Blundell \u003cphilb@gnu.org\u003e\nCc: Jochen Friedrich \u003cjochen@scram.de\u003e\nCc: \"Antonino A. Daplas\" \u003cadaplas@pol.net\u003e\nCc: Jeff Garzik \u003cjeff@garzik.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "cd02b966bfcad12d1b2e265dc8dbc331d4c184c4",
      "tree": "f89c2c333848bb25966329397bc3856e9b8f649c",
      "parents": [
        "e6a6784627483381d012b507bb0d49809658a1fa"
      ],
      "author": {
        "name": "Vladimir V. Saveliev",
        "email": "vs@namesys.com",
        "time": "Sat Mar 25 03:07:15 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sat Mar 25 08:22:53 2006 -0800"
      },
      "message": "[PATCH] reiserfs: cleanups\n\nClean up several places where gcc issues warnings when -W is specified.\nThanks to Neil for finding that.\n\nSigned-off-by: Vladimir V. Saveliev \u003cvs@namesys.com\u003e\nCc: Neil Brown \u003cneilb@cse.unsw.edu.au\u003e\nSigned-off-by: Hans Reiser \u003creiser@namesys.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "e6a6784627483381d012b507bb0d49809658a1fa",
      "tree": "f963234f9c07940fd02f25ff53c228d9b0a0006d",
      "parents": [
        "1efa64696bc55cc396eefa9838a90d106dfab6bf"
      ],
      "author": {
        "name": "Rene Herman",
        "email": "rene.herman@keyaccess.nl",
        "time": "Sat Mar 25 03:07:13 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sat Mar 25 08:22:53 2006 -0800"
      },
      "message": "[PATCH] parport: move PP_MAJOR from ppdev.h to major.h\n\nToday I wondered about /dev/parport\u003cn\u003e after not seeing anything in\ndrivers/parport register char-major-99.  Having PP_MAJOR in\ninclude/linux/major.h would\u0027ve allowed me to more quickly determine that it\nwas the ppdev driver driving these.\n\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "c32ccd87bfd1414b0aabfcd8dbc7539ad23bcbaa",
      "tree": "612dc637976cbe36e8b72924a1f7bd76e75463fd",
      "parents": [
        "bf36b9011e3c5b2739f9da2f6de8a6fa3edded32"
      ],
      "author": {
        "name": "Nick Piggin",
        "email": "nickpiggin@yahoo.com.au",
        "time": "Sat Mar 25 03:07:09 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sat Mar 25 08:22:53 2006 -0800"
      },
      "message": "[PATCH] inotify: lock avoidance with parent watch status in dentry\n\nPrevious inotify work avoidance is good when inotify is completely unused,\nbut it breaks down if even a single watch is in place anywhere in the\nsystem.  Robin Holt notices that udev is one such culprit - it slows down a\n512-thread application on a 512 CPU system from 6 seconds to 22 minutes.\n\nSolve this by adding a flag in the dentry that tells inotify whether or not\nits parent inode has a watch on it.  Event queueing to parent will skip\ntaking locks if this flag is cleared.  Setting and clearing of this flag on\nall child dentries versus event delivery: this is no in terms of race\ncases, and that was shown to be equivalent to always performing the check.\n\nThe essential behaviour is that activity occuring _after_ a watch has been\nadded and _before_ it has been removed, will generate events.\n\nSigned-off-by: Nick Piggin \u003cnpiggin@suse.de\u003e\nCc: Robert Love \u003crml@novell.com\u003e\nCc: John McCutchan \u003cttb@tentacle.dhs.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "9871728b756646e0d758a966ba00f2c0ff812817",
      "tree": "32899f2bc1e72d6ba51665b59350e9729e7f5287",
      "parents": [
        "8d3b33f67fdc0fb364a1ef6d8fbbea7c2e4e6c98"
      ],
      "author": {
        "name": "Adrian Bunk",
        "email": "bunk@stusta.de",
        "time": "Sat Mar 25 03:07:06 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sat Mar 25 08:22:52 2006 -0800"
      },
      "message": "[PATCH] kernel/params.c: make param_array() static\n\nparam_array() in kernel/params.c can now become static.\n\nSigned-off-by: Adrian Bunk \u003cbunk@stusta.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "8d3b33f67fdc0fb364a1ef6d8fbbea7c2e4e6c98",
      "tree": "7fc48e7544ea6a6c6a7cc7685612a38f5edc25ae",
      "parents": [
        "c721bccece2b3abca4f7b0b95108e68b78445cec"
      ],
      "author": {
        "name": "Rusty Russell",
        "email": "rusty@rustcorp.com.au",
        "time": "Sat Mar 25 03:07:05 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sat Mar 25 08:22:52 2006 -0800"
      },
      "message": "[PATCH] Remove MODULE_PARM\n\nMODULE_PARM was actually breaking: recent gcc version optimize them out as\nunused.  It\u0027s time to replace the last users, which are generally in the\nmost unloved drivers anyway.\n\nSigned-off-by: Rusty Russell \u003crusty@rustcorp.com.au\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "1aef821a6b3aeca8c19d06aee012ed9db617d1e3",
      "tree": "27d43667834944a385d6f6f2280f6c6604f7af56",
      "parents": [
        "c41a24ce1fe13638732885859011321af862960a"
      ],
      "author": {
        "name": "Thomas Koeller",
        "email": "thomas@koeller.dyndns.org",
        "time": "Sat Mar 25 03:07:03 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sat Mar 25 08:22:52 2006 -0800"
      },
      "message": "[PATCH] constify tty flip buffer handling\n\nAdd a couple of \u0027const\u0027 qualifiers to the TTY flip buffer APIs, where\nappropriate.\n\nSigned-off-by: Thomas Koeller \u003cthomas@koeller.dyndns.org\u003e\nAcked-by: Alan Cox \u003calan@redhat.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "b500531e6f5f234ed267bd7060ee06d144faf0ca",
      "tree": "6d7c311c917dc9ee7d4cd57ef4a6519ea46a0c11",
      "parents": [
        "619d5d8a2b3f800ea3a0301a58ede570684956b0"
      ],
      "author": {
        "name": "Oleg Drokin",
        "email": "green@linuxhacker.ru",
        "time": "Sat Mar 25 03:07:01 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sat Mar 25 08:22:51 2006 -0800"
      },
      "message": "[PATCH] Introduce FMODE_EXEC file flag\n\nIntroduce FMODE_EXEC file flag, to indicate that file is being opened for\nexecution.  This is useful for distributed filesystems to maintain\nconsistent behavior for returning ETXTBUSY when opening for write and\nexecution happens on different nodes.\n\nakpm:\n\n  Needed by Lustre at present.  I assume their objective to to work towards\n  being able to install Lustre on an unmodified distro kernel, which seems\n  sane.  It should have zero runtime cost.\n\n  Trond and Chuck indicate that NFS4 can probably use this too, for the same\n  thing.\n\n  Steven says it\u0027s also on the GFS todo list.\n\nSigned-off-by: Oleg Drokin \u003cgreen@linuxhacker.ru\u003e\nCc: Trond Myklebust \u003ctrond.myklebust@fys.uio.no\u003e\nCc: Chuck Lever \u003ccel@citi.umich.edu\u003e\nCc: Steven Whitehouse \u003cswhiteho@redhat.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "23f9e0f891c9b159a199629d4426f6ae0c383508",
      "tree": "bc34ab7abe6de4d7b3a7741c1ab5d97ddc29f133",
      "parents": [
        "bdfc326614b90e7bc47ee4a8fed05988555f0169"
      ],
      "author": {
        "name": "Alexander Zarochentzev",
        "email": "zam@namesys.com",
        "time": "Sat Mar 25 03:06:57 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sat Mar 25 08:22:51 2006 -0800"
      },
      "message": "[PATCH] reiserfs: fix transaction overflowing\n\nThis patch fixes a bug in reiserfs truncate.  A transaction might overflow\nwhen truncating long highly fragmented file.  The fix is to split\ntruncation into several transactions to avoid overflowing.\n\nSigned-off-by: Vladimir V. Saveliev \u003cvs@namesys.com\u003e\nCc; Charles McColgan \u003ccm@chuck.net\u003e\nCc: Alexander Zarochentsev \u003czam@namesys.com\u003e\nCc: Hans Reiser \u003creiser@namesys.com\u003e\nCc: Chris Mason \u003cmason@suse.com\u003e\nCc: Jeff Mahoney \u003cjeffm@suse.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "bdfc326614b90e7bc47ee4a8fed05988555f0169",
      "tree": "d23575e690979c29c07a4c749e49150fe9aadf65",
      "parents": [
        "ca5734db60630f7c5564a61a5b9034c1bb369c3d"
      ],
      "author": {
        "name": "Adrian Bunk",
        "email": "bunk@stusta.de",
        "time": "Sat Mar 25 03:06:56 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sat Mar 25 08:22:51 2006 -0800"
      },
      "message": "[PATCH] fs/inode.c: make iprune_mutex static\n\nThere\u0027s no reason for iprune_mutex being global.\n\nSigned-off-by: Adrian Bunk \u003cbunk@stusta.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "ca5734db60630f7c5564a61a5b9034c1bb369c3d",
      "tree": "7adf89d902aa102ba441eab4481e82750eb33503",
      "parents": [
        "4af4c52f34606bdaab6930a845550c6fb02078a4"
      ],
      "author": {
        "name": "Jan Kara",
        "email": "jack@suse.cz",
        "time": "Sat Mar 25 03:06:55 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sat Mar 25 08:22:51 2006 -0800"
      },
      "message": "[PATCH] Small cleanup in quota.h\n\nRemove unused quota flag.\n\nSigned-off-by: Jan Kara \u003cjack@suse.cz\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "e3df18983ea090a2e00dd5c2c6167bb431a0e0a2",
      "tree": "99f7944da7c8c85eed6738c1ef9f357f7dcae928",
      "parents": [
        "1d9b7d97d6661edb44ce08f17e47c66d4ac20e34"
      ],
      "author": {
        "name": "Andrew Morton",
        "email": "akpm@osdl.org",
        "time": "Sat Mar 25 03:06:53 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sat Mar 25 08:22:50 2006 -0800"
      },
      "message": "[PATCH] jbd: embed j_commit_timer in journal struct\n\nThe kjournald timer is currently on the kernel thread\u0027s stack and the journal\nstructure points at it.  Save a pointer hop by moving the timer into the\njournal structure.\n\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "40c07ae8daa659b8feb149c84731629386873c16",
      "tree": "77d9e7572135de30f184103cc6dd36f9c0f8dfbf",
      "parents": [
        "a8c0f9a41f88da703ade33f9c1626a55c786e8bb"
      ],
      "author": {
        "name": "Pekka Enberg",
        "email": "penberg@cs.helsinki.fi",
        "time": "Sat Mar 25 03:06:43 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sat Mar 25 08:22:49 2006 -0800"
      },
      "message": "[PATCH] slab: optimize constant-size kzalloc calls\n\nAs suggested by Eric Dumazet, optimize kzalloc() calls that pass a\ncompile-time constant size.  Please note that the patch increases kernel\ntext slightly (~200 bytes for defconfig on x86).\n\nSigned-off-by: Pekka Enberg \u003cpenberg@cs.helsinki.fi\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "a8c0f9a41f88da703ade33f9c1626a55c786e8bb",
      "tree": "8c2904597c61b873bfd85eed4ac196dd66e6f125",
      "parents": [
        "871751e25d956ad24f129ca972b7851feaa61d53"
      ],
      "author": {
        "name": "Pekka Enberg",
        "email": "penberg@cs.helsinki.fi",
        "time": "Sat Mar 25 03:06:42 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sat Mar 25 08:22:49 2006 -0800"
      },
      "message": "[PATCH] slab: introduce kmem_cache_zalloc allocator\n\nIntroduce a memory-zeroing variant of kmem_cache_alloc.  The allocator\nalready exits in XFS and there are potential users for it so this patch\nmakes the allocator available for the general public.\n\nSigned-off-by: Pekka Enberg \u003cpenberg@cs.helsinki.fi\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "871751e25d956ad24f129ca972b7851feaa61d53",
      "tree": "c3213a17481f601339ce0c81a22eebca0946c2c7",
      "parents": [
        "f52ac8fec8a13e207f675b0c16e0d5f800c1c204"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Sat Mar 25 03:06:39 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sat Mar 25 08:22:49 2006 -0800"
      },
      "message": "[PATCH] slab: implement /proc/slab_allocators\n\nImplement /proc/slab_allocators.   It produces output like:\n\nidr_layer_cache: 80 idr_pre_get+0x33/0x4e\nbuffer_head: 2555 alloc_buffer_head+0x20/0x75\nmm_struct: 9 mm_alloc+0x1e/0x42\nmm_struct: 20 dup_mm+0x36/0x370\nvm_area_struct: 384 dup_mm+0x18f/0x370\nvm_area_struct: 151 do_mmap_pgoff+0x2e0/0x7c3\nvm_area_struct: 1 split_vma+0x5a/0x10e\nvm_area_struct: 11 do_brk+0x206/0x2e2\nvm_area_struct: 2 copy_vma+0xda/0x142\nvm_area_struct: 9 setup_arg_pages+0x99/0x214\nfs_cache: 8 copy_fs_struct+0x21/0x133\nfs_cache: 29 copy_process+0xf38/0x10e3\nfiles_cache: 30 alloc_files+0x1b/0xcf\nsignal_cache: 81 copy_process+0xbaa/0x10e3\nsighand_cache: 77 copy_process+0xe65/0x10e3\nsighand_cache: 1 de_thread+0x4d/0x5f8\nanon_vma: 241 anon_vma_prepare+0xd9/0xf3\nsize-2048: 1 add_sect_attrs+0x5f/0x145\nsize-2048: 2 journal_init_revoke+0x99/0x302\nsize-2048: 2 journal_init_revoke+0x137/0x302\nsize-2048: 2 journal_init_inode+0xf9/0x1c4\n\nCc: Manfred Spraul \u003cmanfred@colorfullife.com\u003e\nCc: Alexander Nyberg \u003calexn@telia.com\u003e\nCc: Pekka Enberg \u003cpenberg@cs.helsinki.fi\u003e\nCc: Christoph Lameter \u003cclameter@engr.sgi.com\u003e\nCc: Ravikiran Thirumalai \u003ckiran@scalex86.org\u003e\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\nDESC\nslab-leaks3-locking-fix\nEDESC\nFrom: Andrew Morton \u003cakpm@osdl.org\u003e\n\nUpdate for slab-remove-cachep-spinlock.patch\n\nCc: Al Viro \u003cviro@ftp.linux.org.uk\u003e\nCc: Manfred Spraul \u003cmanfred@colorfullife.com\u003e\nCc: Alexander Nyberg \u003calexn@telia.com\u003e\nCc: Pekka Enberg \u003cpenberg@cs.helsinki.fi\u003e\nCc: Christoph Lameter \u003cclameter@engr.sgi.com\u003e\nCc: Ravikiran Thirumalai \u003ckiran@scalex86.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "c08b8a49100715b20e6f7c997e992428b5e06078",
      "tree": "014758fb05908a3d49eeadc77f16dfa7585b12ac",
      "parents": [
        "185ae6d7a32721e9062030a9f2d24ed714fa45df"
      ],
      "author": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Sat Mar 25 03:06:33 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sat Mar 25 08:22:48 2006 -0800"
      },
      "message": "[PATCH] sys_alarm() unsigned signed conversion fixup\n\nalarm() calls the kernel with an unsigend int timeout in seconds.  The\nvalue is stored in the tv_sec field of a struct timeval to setup the\nitimer.  The tv_sec field of struct timeval is of type long, which causes\nthe tv_sec value to be negative on 32 bit machines if seconds \u003e INT_MAX.\n\nBefore the hrtimer merge (pre 2.6.16) such a negative value was converted\nto the maximum jiffies timeout by the timeval_to_jiffies conversion.  It\u0027s\nnot clear whether this was intended or just happened to be done by the\ntimeval_to_jiffies code.\n\nhrtimers expect a timeval in canonical form and treat a negative timeout as\nalready expired.  This breaks the legitimate usage of alarm() with a\ntimeout value \u003e INT_MAX seconds.\n\nFor 32 bit machines it is therefor necessary to limit the internal seconds\nvalue to avoid API breakage.  Instead of doing this in all implementations\nof sys_alarm the duplicated sys_alarm code is moved into a common function\nin itimer.c\n\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "cef2685e0053945ea0f3c02297386b040f486ea7",
      "tree": "869c11f64c5e2259342c228c80e93cbbbf8e4fc1",
      "parents": [
        "b8059eadf9f4dc24bd72da71daa832a9a9899fb4"
      ],
      "author": {
        "name": "Ilia Sotnikov",
        "email": "hostcc@gmail.com",
        "time": "Sat Mar 25 01:38:55 2006 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sat Mar 25 01:38:55 2006 -0800"
      },
      "message": "[IPV4]: Aggregate route entries with different TOS values\n\nWhen we get an ICMP need-to-frag message, the original TOS value in the\nICMP payload cannot be used as a key to look up the routes to update.\nThis is because the TOS field may have been modified by routers on the\nway.  Similarly, ip_rt_redirect should also ignore the TOS as the router\nthat gave us the message may have modified the TOS value.\n\nThe patch achieves this objective by aggregating entries with different\nTOS values (but are otherwise identical) into the same bucket.  This\nmakes it easy to update them at the same time when an ICMP message is\nreceived.\n\nIn future we should use a twin-hashing scheme where teh aggregation\noccurs at the entry level.  That is, the TOS goes back into the hash\nfor normal lookups while ICMP lookups will end up with a node that\ngives us a list that contains all other route entries that differ\nonly by TOS.\n\nSigned-off-by: Ilia Sotnikov \u003chostcc@gmail.com\u003e\nSigned-off-by: Herbert Xu \u003cherbert@gondor.apana.org.au\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "9932cf954691f20d548cd6010d89d1d48597e104",
      "tree": "cb7272b087f64b142759e61e3fdd81669f48c849",
      "parents": [
        "f67ed26f2b3e92c0450deae3ffc3fff21c878a75"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Fri Mar 24 15:12:37 2006 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Fri Mar 24 15:45:00 2006 -0800"
      },
      "message": "[NET]: Fill in a 32-bit hole in struct sock on 64-bit platforms.\n\nThis makes struct sock 8 bytes smaller on 64-bit.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    }
  ],
  "next": "a1a8feed1743ec8d2af1dafa7c5321679f0a3e4f"
}
