)]}'
{
  "log": [
    {
      "commit": "d6e05edc59ecd79e8badf440c0d295a979bdfa3e",
      "tree": "50362161f69317242ab603c51a18a818a4c93285",
      "parents": [
        "f18190bd3407554ba6df30a1927e07e6cba93e56"
      ],
      "author": {
        "name": "Andreas Mohr",
        "email": "andi@lisas.de",
        "time": "Mon Jun 26 18:35:02 2006 +0200"
      },
      "committer": {
        "name": "Adrian Bunk",
        "email": "bunk@stusta.de",
        "time": "Mon Jun 26 18:35:02 2006 +0200"
      },
      "message": "spelling fixes\n\nacquired (aquired)\ncontiguous (contigious)\nsuccessful (succesful, succesfull)\nsurprise (suprise)\nwhether (weather)\nsome other misspellings\n\nSigned-off-by: Andreas Mohr \u003candi@lisas.de\u003e\nSigned-off-by: Adrian Bunk \u003cbunk@stusta.de\u003e\n"
    },
    {
      "commit": "62c4f0a2d5a188f73a94f2cb8ea0dba3e7cf0a7f",
      "tree": "e85ca2d0dd43f90dccf758338764c3caa55f333f",
      "parents": [
        "089f26d5e31b7bf42a9a8fefec08b30cd27f4b0e"
      ],
      "author": {
        "name": "David Woodhouse",
        "email": "dwmw2@infradead.org",
        "time": "Wed Apr 26 12:56:16 2006 +0100"
      },
      "committer": {
        "name": "David Woodhouse",
        "email": "dwmw2@infradead.org",
        "time": "Wed Apr 26 12:56:16 2006 +0100"
      },
      "message": "Don\u0027t include linux/config.h from anywhere else in include/\n\nSigned-off-by: David Woodhouse \u003cdwmw2@infradead.org\u003e\n"
    },
    {
      "commit": "cdb0452789d365695b5b173542af9c7e3d24f185",
      "tree": "f8594a754736aecfb52d835a2e12f46a923e6ed6",
      "parents": [
        "008accbbae6b2f18c2039d563f28d46ff4388d36"
      ],
      "author": {
        "name": "Adrian Bunk",
        "email": "bunk@stusta.de",
        "time": "Fri Mar 24 03:15:57 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Fri Mar 24 07:33:21 2006 -0800"
      },
      "message": "[PATCH] kill include/linux/platform.h, default_idle() cleanup\n\ninclude/linux/platform.h contained nothing that was actually used except\nthe default_idle() prototype, and is therefore removed by this patch.\n\nThis patch does the following with the platform specific default_idle()\nfunctions on different architectures:\n- remove the unused function:\n  - parisc\n  - sparc64\n- make the needlessly global function static:\n  - arm\n  - h8300\n  - m68k\n  - m68knommu\n  - s390\n  - v850\n  - x86_64\n- add a prototype in asm/system.h:\n  - cris\n  - i386\n  - ia64\n\nSigned-off-by: Adrian Bunk \u003cbunk@stusta.de\u003e\nAcked-by: Patrick Mochel \u003cmochel@digitalimplant.org\u003e\nAcked-by: Kyle McMartin \u003ckyle@parisc-linux.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "9a0b5817ad97bb718ab85322759d19a238712b47",
      "tree": "39bd21eb69c4001b99096d96a76a2e5d37904108",
      "parents": [
        "4d7d8c82c181711d28c8336108330a9121f5ef07"
      ],
      "author": {
        "name": "Gerd Hoffmann",
        "email": "kraxel@suse.de",
        "time": "Thu Mar 23 02:59:32 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Thu Mar 23 07:38:04 2006 -0800"
      },
      "message": "[PATCH] x86: SMP alternatives\n\nImplement SMP alternatives, i.e.  switching at runtime between different\ncode versions for UP and SMP.  The code can patch both SMP-\u003eUP and UP-\u003eSMP.\nThe UP-\u003eSMP case is useful for CPU hotplug.\n\nWith CONFIG_CPU_HOTPLUG enabled the code switches to UP at boot time and\nwhen the number of CPUs goes down to 1, and switches to SMP when the number\nof CPUs goes up to 2.\n\nWithout CONFIG_CPU_HOTPLUG or on non-SMP-capable systems the code is\npatched once at boot time (if needed) and the tables are released\nafterwards.\n\nThe changes in detail:\n\n  * The current alternatives bits are moved to a separate file,\n    the SMP alternatives code is added there.\n\n  * The patch adds some new elf sections to the kernel:\n    .smp_altinstructions\n\tlike .altinstructions, also contains a list\n\tof alt_instr structs.\n    .smp_altinstr_replacement\n\tlike .altinstr_replacement, but also has some space to\n\tsave original instruction before replaving it.\n    .smp_locks\n\tlist of pointers to lock prefixes which can be nop\u0027ed\n\tout on UP.\n    The first two are used to replace more complex instruction\n    sequences such as spinlocks and semaphores.  It would be possible\n    to deal with the lock prefixes with that as well, but by handling\n    them as special case the table sizes become much smaller.\n\n * The sections are page-aligned and padded up to page size, so they\n   can be free if they are not needed.\n\n * Splitted the code to release init pages to a separate function and\n   use it to release the elf sections if they are unused.\n\nSigned-off-by: Gerd Hoffmann \u003ckraxel@suse.de\u003e\nSigned-off-by: Chuck Ebbert \u003c76306.1226@compuserve.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "911b0ad25d167fede6aadc05065b414ec7ab5086",
      "tree": "8e85fd8a70a75aa8b2d18b89b2ebd8fc843c361c",
      "parents": [
        "b53e8f68e07fb8f3ba9ab1812c9c186c09a50c16"
      ],
      "author": {
        "name": "Takashi Iwai",
        "email": "tiwai@suse.de",
        "time": "Sat Feb 04 23:28:05 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sun Feb 05 11:06:54 2006 -0800"
      },
      "message": "[PATCH] Fix \"value computed is not used\" compile warnings with gcc-4.1\n\nFix gcc4.1 compile warnings \"value computed is not used\" with\nset_current_state() and set_task_state() on i386/SMP and x86-64.\n\nSigned-off-by: Takashi Iwai \u003ctiwai@suse.de\u003e\nCc: Nick Piggin \u003cnickpiggin@yahoo.com.au\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": "4dc7a0bbeb6882ad665e588e82fabe5bb4645f2f",
      "tree": "8c034f802157d7f449e76f45086c0e13e0ea4711",
      "parents": [
        "c6b44d10f25e5a93eca5135b686a35775c63546e"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Jan 12 01:05:27 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Thu Jan 12 09:08:49 2006 -0800"
      },
      "message": "[PATCH] sched: add cacheflush() asm\n\nAdd per-arch sched_cacheflush() which is a write-back cacheflush used by\nthe migration-cost calibration code at bootup time.\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: Nick Piggin \u003cnickpiggin@yahoo.com.au\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "5fe9fe3c6f9a1ae7aa224bb7a66eb9aad9e4abef",
      "tree": "ec120ce6e72700fe49720127bc76228c51bd406b",
      "parents": [
        "3fae1c37eea98097de34ba665796fea93b29f4aa"
      ],
      "author": {
        "name": "Zachary Amsden",
        "email": "zach@vmware.com",
        "time": "Fri Jan 06 00:11:55 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Fri Jan 06 08:33:35 2006 -0800"
      },
      "message": "[PATCH] x86: Pnp byte granularity\n\nThe one remaining caller of set_limit, the PnP BIOS code, calls into the PnP\nBIOS, passing kernel parameters in and out.  These parameteres may be passed\nfrom arbitrary kernel virtual memory, so they deserve strict protection to\nstop a bad BIOS from smashing beyond the object size.\n\nUnfortunately, the use of set_limit was badly botching this by setting the\nlimit in terms of pages, when it really should have byte granularity.\n\nWhen doing this, I discovered my BIOS had the buggy code during the \"get\nsystem device node\" call:\n\n mov ax, es:[bx]\n\nWhich is harmless, but has a trivial workaround.\n\nSigned-off-by: Zachary Amsden \u003czach@vmware.com\u003e\nCc: \"Seth, Rohit\" \u003crohit.seth@intel.com\u003e\nCc: Stephen Rothwell \u003csfr@canb.auug.org.au\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "3fae1c37eea98097de34ba665796fea93b29f4aa",
      "tree": "bc31e7e6a3b88f422a70c1d936a806625dcab137",
      "parents": [
        "99022c4695d3f45fcf7f3827aa46dd2d9e53e365"
      ],
      "author": {
        "name": "Zachary Amsden",
        "email": "zach@vmware.com",
        "time": "Fri Jan 06 00:11:54 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Fri Jan 06 08:33:35 2006 -0800"
      },
      "message": "[PATCH] x86: Deprecate obsolete ldt accessors\n\nOld accessors to fetch LDT descriptors are unused and outdated and in the\nwrong header file.\n\nSigned-off-by: Zachary Amsden \u003czach@vmware.com\u003e\nCc: \"Seth, Rohit\" \u003crohit.seth@intel.com\u003e\nCc: Stephen Rothwell \u003csfr@canb.auug.org.au\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "ff6e8c0d5e47f0ceeebde86ec2f5919dbd5beb67",
      "tree": "f7e50b5962b7b38ca025c0bf9ee48b618424cc6b",
      "parents": [
        "eb05c3249a8e8a675e79d221f4a0874dc10ec903"
      ],
      "author": {
        "name": "Zachary Amsden",
        "email": "zach@vmware.com",
        "time": "Fri Jan 06 00:11:50 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Fri Jan 06 08:33:34 2006 -0800"
      },
      "message": "[PATCH] x86: Cr4 is valid on some 486s\n\nSo some 486 processors do have CR4 register.  Allow them to present it in\nregister dumps by using the old fault technique rather than testing processor\nfamily.\n\nThanks to Maciej for noticing this.\n\nSigned-off-by: Zachary Amsden \u003czach@vmware.com\u003e\nCc: \"Seth, Rohit\" \u003crohit.seth@intel.com\u003e\nCc: Stephen Rothwell \u003csfr@canb.auug.org.au\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "53e86b91b7ae66d4c2757195cbd42e00d9199cf2",
      "tree": "80c44aeb046ac91a5bc7465da91a7b2519c53096",
      "parents": [
        "dbdf65b1b7f8ec48bda1604cfea7ac09ce583d6b"
      ],
      "author": {
        "name": "Nick Piggin",
        "email": "nickpiggin@yahoo.com.au",
        "time": "Sun Nov 13 16:07:23 2005 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sun Nov 13 18:14:15 2005 -0800"
      },
      "message": "[PATCH] i386: generic cmpxchg\n\n- Make cmpxchg generally available on the i386 platform.\n\n- Provide emulation of cmpxchg suitable for uniprocessor if built and run on\n  386.\n\nFrom: Christoph Lameter \u003cclameter@sgi.com\u003e\n\n- Cut down patch and small style changes.\n\nSigned-off-by: Nick Piggin \u003cnpiggin@suse.de\u003e\nSigned-off-by: Christoph Lameter \u003cclameter@sgi.com\u003e\nCc: \"Paul E. McKenney\" \u003cpaulmck@us.ibm.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "8896fab35e62aa748a5ce62ac773508e51f10be1",
      "tree": "bb8f2dce7b5d0aa6ffe68aa6b97920d2ce32e164",
      "parents": [
        "dacb16b1a034fa7a0b868ee30758119fbfd90bc1"
      ],
      "author": {
        "name": "Jan Beulich",
        "email": "JBeulich@novell.com",
        "time": "Sun Oct 30 14:59:27 2005 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sun Oct 30 17:37:11 2005 -0800"
      },
      "message": "[PATCH] x86: cmpxchg improvements\n\nThis adjusts i386\u0027s cmpxchg patterns so that\n\n- for word and long cmpxchg-es the compiler can utilize all possible\n  registers\n\n- cmpxchg8b gets disabled when the minimum specified hardware architectur\n  doesn\u0027t support it (like was already happening for the byte, word, and\n  long ones).\n\nSigned-off-by: Jan Beulich \u003cjbeulich@novell.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "a5201129307f414890f9a4410e38da205f5d7359",
      "tree": "ad70c5f1d3b336ef5665a7fd5ad8707aaec23847",
      "parents": [
        "0998e4228aca046fbd747c3fed909791d52e88eb"
      ],
      "author": {
        "name": "Zachary Amsden",
        "email": "zach@vmware.com",
        "time": "Sat Sep 03 15:56:44 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@evo.osdl.org",
        "time": "Mon Sep 05 00:06:12 2005 -0700"
      },
      "message": "[PATCH] x86: make IOPL explicit\n\nThe pushf/popf in switch_to are ONLY used to switch IOPL.  Making this\nexplicit in C code is more clear.  This pushf/popf pair was added as a\nbugfix for leaking IOPL to unprivileged processes when using\nsysenter/sysexit based system calls (sysexit does not restore flags).\n\nWhen requesting an IOPL change in sys_iopl(), it is just as easy to change\nthe current flags and the flags in the stack image (in case an IRET is\nrequired), but there is no reason to force an IRET if we came in from the\nSYSENTER path.\n\nThis change is the minimal solution for supporting a paravirtualized Linux\nkernel that allows user processes to run with I/O privilege.  Other\nsolutions require radical rewrites of part of the low level fault / system\ncall handling code, or do not fully support sysenter based system calls.\n\nUnfortunately, this added one field to the thread_struct.  But as a bonus,\non P4, the fastest time measured for switch_to() went from 312 to 260\ncycles, a win of about 17% in the fast case through this performance\ncritical path.\n\nSigned-off-by: Zachary Amsden \u003czach@vmware.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "4d37e7e3fd851428dede4d05d3e69d03795a744a",
      "tree": "f830928a0baf81f462bc9176dacbaad2dac2bb65",
      "parents": [
        "245067d1674d451855692fcd4647daf9fd47f82d"
      ],
      "author": {
        "name": "Zachary Amsden",
        "email": "zach@vmware.com",
        "time": "Sat Sep 03 15:56:38 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@evo.osdl.org",
        "time": "Mon Sep 05 00:06:11 2005 -0700"
      },
      "message": "[PATCH] i386: inline assembler: cleanup and encapsulate descriptor and task register management\n\ni386 inline assembler cleanup.\n\nThis change encapsulates descriptor and task register management.  Also,\nit is possible to improve assembler generation in two cases; savesegment\nmay store the value in a register instead of a memory location, which\nallows GCC to optimize stack variables into registers, and MOV MEM, SEG\nis always a 16-bit write to memory, making the casting in math-emu\nunnecessary.\n\nSigned-off-by: Zachary Amsden \u003czach@vmware.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "4bb0d3ec3e5b1e9e2399cdc641b3b6521ac9cdaa",
      "tree": "5e8d7646f5c6a2cec990b6d591f230d496b20664",
      "parents": [
        "2a0694d15d55d0deed928786a6393d5e45e37d76"
      ],
      "author": {
        "name": "Zachary Amsden",
        "email": "zach@vmware.com",
        "time": "Sat Sep 03 15:56:36 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@evo.osdl.org",
        "time": "Mon Sep 05 00:06:11 2005 -0700"
      },
      "message": "[PATCH] i386: inline asm cleanup\n\ni386 Inline asm cleanup.  Use cr/dr accessor functions.\n\nAlso, a potential bugfix.  Also, some CR accessors really should be volatile.\nReads from CR0 (numeric state may change in an exception handler), writes to\nCR4 (flipping CR4.TSD) and reads from CR2 (page fault) prevent instruction\nre-ordering.  I did not add memory clobber to CR3 / CR4 / CR0 updates, as it\nwas not there to begin with, and in no case should kernel memory be clobbered,\nexcept when doing a TLB flush, which already has memory clobber.\n\nI noticed that page invalidation does not have a memory clobber.  I can\u0027t find\na bug as a result, but there is definitely a potential for a bug here:\n\n#define __flush_tlb_single(addr) \\\n\t__asm__ __volatile__(\"invlpg %0\": :\"m\" (*(char *) addr))\n\nSigned-off-by: Zachary Amsden \u003czach@vmware.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "fd51f666fa591294bd7462447512666e61c56ea0",
      "tree": "0addf0006900152975c38bd75fdfd238c9179013",
      "parents": [
        "d5b63d78f1e75f6c6f04862dfb2f2a4aeffafd4c"
      ],
      "author": {
        "name": "H. J. Lu",
        "email": "hjl@lucon.org",
        "time": "Sun May 01 08:58:48 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@ppc970.osdl.org",
        "time": "Sun May 01 08:58:48 2005 -0700"
      },
      "message": "[PATCH] i386/x86_64 segment register access update\n\nThe new i386/x86_64 assemblers no longer accept instructions for moving\nbetween a segment register and a 32bit memory location, i.e.,\n\n        movl (%eax),%ds\n        movl %ds,(%eax)\n\nTo generate instructions for moving between a segment register and a\n16bit memory location without the 16bit operand size prefix, 0x66,\n\n        mov (%eax),%ds\n        mov %ds,(%eax)\n\nshould be used. It will work with both new and old assemblers. The\nassembler starting from 2.16.90.0.1 will also support\n\n        movw (%eax),%ds\n        movw %ds,(%eax)\n\nwithout the 0x66 prefix. I am enclosing patches for 2.4 and 2.6 kernels\nhere. The resulting kernel binaries should be unchanged as before, with\nold and new assemblers, if gcc never generates memory access for\n\n               unsigned gsindex;\n               asm volatile(\"movl %%gs,%0\" : \"\u003dg\" (gsindex));\n\nIf gcc does generate memory access for the code above, the upper bits\nin gsindex are undefined and the new assembler doesn\u0027t allow it.\n\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "1da177e4c3f41524e886b7f1b8a0c1fc7321cac2",
      "tree": "0bba044c4ce775e45a88a51686b5d9f90697ea9d",
      "parents": [],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@ppc970.osdl.org",
        "time": "Sat Apr 16 15:20:36 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@ppc970.osdl.org",
        "time": "Sat Apr 16 15:20:36 2005 -0700"
      },
      "message": "Linux-2.6.12-rc2\n\nInitial git repository build. I\u0027m not bothering with the full history,\neven though we have it. We can create a separate \"historical\" git\narchive of that later if we want to, and in the meantime it\u0027s about\n3.2GB when imported into git - space that would just make the early\ngit days unnecessarily complicated, when we don\u0027t have a lot of good\ninfrastructure for it.\n\nLet it rip!\n"
    }
  ]
}
