)]}'
{
  "log": [
    {
      "commit": "0962f402af1bb0b53ccee626785d202a10c12fff",
      "tree": "26fa57193f16e45c6e0557049d02164f129077ed",
      "parents": [
        "19268ed7449c561694d048a34601a30e2d1aaf79",
        "8d7ccaa545490cdffdfaff0842436a8dd85cf47b"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Oct 06 16:18:26 2008 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Oct 06 18:06:53 2008 +0200"
      },
      "message": "Merge branch \u0027x86/prototypes\u0027 into x86-v28-for-linus-phase1\n\nConflicts:\n\tarch/x86/kernel/process_32.c\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "77ef50a522717fa040636ee1017179ceba12ff62",
      "tree": "57b082ad5b314605d5d9dab50068737f324cae60",
      "parents": [
        "a656c8efb40a8700046df20da2195f8aa39ce38a"
      ],
      "author": {
        "name": "Vegard Nossum",
        "email": "vegard.nossum@gmail.com",
        "time": "Wed Jun 18 17:08:48 2008 +0200"
      },
      "committer": {
        "name": "Vegard Nossum",
        "email": "vegard.nossum@gmail.com",
        "time": "Tue Jul 22 21:31:34 2008 +0200"
      },
      "message": "x86: consolidate header guards\n\nThis patch is the result of an automatic script that consolidates the\nformat of all the headers in include/asm-x86/.\n\nThe format:\n\n1. No leading underscore. Names with leading underscores are reserved.\n2. Pathname components are separated by two underscores. So we can\n   distinguish between mm_types.h and mm/types.h.\n3. Everything except letters and numbers are turned into single\n   underscores.\n\nSigned-off-by: Vegard Nossum \u003cvegard.nossum@gmail.com\u003e\n"
    },
    {
      "commit": "cc0384917bf69079088701a0725c5fc6b554bf35",
      "tree": "d6c5666421b5efd1ef2e492c88416f07e0c8d123",
      "parents": [
        "b994b6c0332a5499b33880855dadad04d74cde54"
      ],
      "author": {
        "name": "Jaswinder Singh",
        "email": "jaswinder@infradead.org",
        "time": "Mon Jul 21 21:52:51 2008 +0530"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Jul 22 14:36:01 2008 +0200"
      },
      "message": "x86: time_XX.c declare functions before they get used\n\nDeclare time_init() in asm-x86/time.h\n\nAlso did cleanup in asm-x86/timer.h :\ntimer_ack is only required for X86_32\nint recalibrate_cpu_khz(void) is for X86_32\n\nSigned-off-by: Jaswinder Singh \u003cjaswinder@infradead.org\u003e\n"
    },
    {
      "commit": "8fbbc4b45ce3e4c0eeb15004c79c72b6896a79c2",
      "tree": "3b7c8e4ee74ef5fec07f64ea56bff60afb433c2c",
      "parents": [
        "2dbe06faf37b39f9ecffc054dd173b2a1dc2adcd"
      ],
      "author": {
        "name": "Alok Kataria",
        "email": "akataria@vmware.com",
        "time": "Tue Jul 01 11:43:34 2008 -0700"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Jul 09 07:43:27 2008 +0200"
      },
      "message": "x86: merge tsc_init and clocksource code\n\nUnify the clocksource code.\nUnify the tsc_init code.\n\nSigned-off-by: Alok N Kataria \u003cakataria@vmware.com\u003e\nSigned-off-by: Dan Hecht \u003cdhecht@vmware.com\u003e\nCc: Dan Hecht \u003cdhecht@vmware.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "7d195a5409120277b800c42e846ee29cc667b777",
      "tree": "18d6f9780421788289ddf143bd0c1061bd1d4c0e",
      "parents": [
        "175a06ae300188af8a61db68a78e1af44dc7d44f"
      ],
      "author": {
        "name": "Adrian Bunk",
        "email": "bunk@kernel.org",
        "time": "Tue Apr 29 00:59:18 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Apr 29 08:06:03 2008 -0700"
      },
      "message": "proper extern for late_time_init\n\nAdd a proper extern for late_time_init in include/linux/init.h\n\nSigned-off-by: Adrian Bunk \u003cbunk@kernel.org\u003e\nAcked-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nCc: john stultz \u003cjohnstul@us.ibm.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "ee238e5ca66858f80170f87724f84d67183b069a",
      "tree": "c08fe7edeac9b55fad0be5f7050cc3ddf8796232",
      "parents": [
        "49a697871e2edcbc9cc682466bc4f2316b854d23"
      ],
      "author": {
        "name": "Glauber de Oliveira Costa",
        "email": "gcosta@redhat.com",
        "time": "Wed Jan 30 13:31:10 2008 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Jan 30 13:31:10 2008 +0100"
      },
      "message": "x86: prepare time related functions for paravirt\n\nThis patch add provisions for time related functions so they\ncan be later replaced by paravirt versions.\n\nit basically encloses {g,s}et_wallclock inside the\nalready existent functions update_persistent_clock and\nread_persistent_clock, and defines {s,g}et_wallclock\nto the core of such functions.\n\nit also allow for a later-on-game time initialization, as done\nby i386. Paravirt guests can set a function to do their own\ninitialization this way.\n\nSigned-off-by: Glauber de Oliveira Costa \u003cgcosta@redhat.com\u003e\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\nAcked-by: Jeremy Fitzhardinge \u003cjeremy@xensource.com\u003e\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\n"
    },
    {
      "commit": "fe599f9fbc5d470ec5b55d08f2bbb991ddecbbc8",
      "tree": "be07dcd4062fbcb801ae833678b3818d2fd47ceb",
      "parents": [
        "6ce60b07e670e800c4c5cfe984ed5188e7a64135"
      ],
      "author": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Wed Jan 30 13:30:26 2008 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Jan 30 13:30:26 2008 +0100"
      },
      "message": "x86: isolate the rtc code for sharing\n\nThe mach-default/mach_time.h code inline is moved to arch/x86/kernel/rtc.c\nand the header files are adjusted.\n\nShrink the 3 dozen includes to the ones we really need.\n\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "96a388de5dc53a8b234b3fd41f3ae2cedc9ffd42",
      "tree": "d947a467aa2da3140279617bc4b9b101640d7bf4",
      "parents": [
        "27bd0c955648646abf2a353a8371d28c37bcd982"
      ],
      "author": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Thu Oct 11 11:20:03 2007 +0200"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Thu Oct 11 11:20:03 2007 +0200"
      },
      "message": "i386/x86_64: move headers to include/asm-x86\n\nMove the headers to include/asm-x86 and fixup the\nheader install make rules\n\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "e30fab3ad34aa8bfb55c9f0337d4a92a0595f41f",
      "tree": "7c38e6060ce0f1f02b43454585f1c14e524e9fa7",
      "parents": [
        "eda08b1befaabcdfea1a9216ae13f9065e69baa7"
      ],
      "author": {
        "name": "Zachary Amsden",
        "email": "zach@vmware.com",
        "time": "Mon Mar 05 00:30:39 2007 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Mon Mar 05 07:57:52 2007 -0800"
      },
      "message": "[PATCH] vmi: pit override\n\nThe time_init_hook in paravirt-ops no longer functions in the correct manner\nafter the integration of the hrtimers code.  The problem is that now the call\npath for time initialization is:\n\n  time_init :\n       late_time_init \u003d hpet_time_init;\n\n  late_time_init -\u003e hpet_time_init:\n       setup_pit_timer (BAD)\n       do_time_init --\u003e (via paravirt.h)\n          time_init_hook --\u003e (via arch_hooks.h)\n              time_init_hook (in SUBARCH/setup.c)\n\nIf this isn\u0027t confusing enough, the paravirt case goes through an indirect\nfunction pointer in the paravirt-ops table.  The problem is, by the time the\nparavirt hook is called, the pit timer is already enabled.\n\nBut paravirt guests have their own timer, and don\u0027t want to use the PIT.\nRather than intensify the struggle for power going on here, just make it all\nnice and simple and just unconditionally do all timer setup in the\nlate_time_init hook.  This also has the advantage of enabling timers in the\nsame place in all code paths, so everyone has the same bugs and we don\u0027t have\noutliers who break other code because they turn on timer too early or too\nlate.\n\nSo the paravirt-ops time init function is now by default hpet_time_init, which\nis the time init function used for native hardware.  Paravirt guests have the\nchance to override this when they setup the paravirt-ops table, and should\nneed no change.\n\nSigned-off-by: Zachary Amsden \u003czach@vmware.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "6cb9a8350aee789100a365794272ed20cc8f2401",
      "tree": "c2e319b30ebcb6c9d247382303f7fcff1ab0d641",
      "parents": [
        "7507ba34e827ca3c6bbcd34d20a8df8ba365fca6"
      ],
      "author": {
        "name": "Zachary Amsden",
        "email": "zach@vmware.com",
        "time": "Mon Mar 05 00:30:35 2007 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Mon Mar 05 07:57:52 2007 -0800"
      },
      "message": "[PATCH] vmi: sched clock paravirt op fix\n\nThe custom_sched_clock hook is broken.  The result from sched_clock needs to\nbe in nanoseconds, not in CPU cycles.  The TSC is insufficient for this\npurpose, because TSC is poorly defined in a virtual environment, and mostly\nrepresents real world time instead of scheduled process time (which can be\ninterrupted without notice when a virtual machine is descheduled).\n\nTo make the scheduler consistent, we must expose a different nature of time,\nthat is scheduled time.  So deprecate this custom_sched_clock hack and turn it\ninto a paravirt-op, as it should have been all along.  This allows the tsc.c\ncode which converts cycles to nanoseconds to be shared by all paravirt-ops\nbackends.\n\nIt is unfortunate to add a new paravirt-op, but this is a very distinct\nabstraction which is clearly different for all virtual machine\nimplementations, and it gets rid of an ugly indirect function which I\nashamedly admit I hacked in to try to get this to work earlier, and then even\ngot in the wrong units.\n\nSigned-off-by: Zachary Amsden \u003czach@vmware.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "bbab4f3bb7f528d2b8ccb5de9ae5f6ff3fb29684",
      "tree": "141d035b9d79711e6679fadc31c9583f908dfedb",
      "parents": [
        "7ce0bcfd1667736f1293cff845139bbee53186de"
      ],
      "author": {
        "name": "Zachary Amsden",
        "email": "zach@vmware.com",
        "time": "Tue Feb 13 13:26:21 2007 +0100"
      },
      "committer": {
        "name": "Andi Kleen",
        "email": "andi@basil.nowhere.org",
        "time": "Tue Feb 13 13:26:21 2007 +0100"
      },
      "message": "[PATCH] i386: vMI timer patches\n\nVMI timer code.  It works by taking over the local APIC clock when APIC is\nconfigured, which requires a couple hooks into the APIC code.  The backend\ntimer code could be commonized into the timer infrastructure, but there are\nsome pieces missing (stolen time, in particular), and the exact semantics of\nwhen to do accounting for NO_IDLE need to be shared between different\nhypervisors as well.  So for now, VMI timer is a separate module.\n\n[Adrian Bunk: cleanups]\n\nSubject: VMI timer patches\nSigned-off-by: Zachary Amsden \u003czach@vmware.com\u003e\nSigned-off-by: Andi Kleen \u003cak@suse.de\u003e\nCc: Andi Kleen \u003cak@suse.de\u003e\nCc: Jeremy Fitzhardinge \u003cjeremy@xensource.com\u003e\nCc: Rusty Russell \u003crusty@rustcorp.com.au\u003e\nCc: Chris Wright \u003cchrisw@sous-sol.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\n"
    },
    {
      "commit": "d3561b7fa0fb0fc583bab0eeda32bec9e4c4056d",
      "tree": "39d835965878622d052ef3b3c7b759d83b6bc327",
      "parents": [
        "db91b882aabd0b3b55a87cbfb344f2798bb740b4"
      ],
      "author": {
        "name": "Rusty Russell",
        "email": "rusty@rustcorp.com.au",
        "time": "Thu Dec 07 02:14:07 2006 +0100"
      },
      "committer": {
        "name": "Andi Kleen",
        "email": "andi@basil.nowhere.org",
        "time": "Thu Dec 07 02:14:07 2006 +0100"
      },
      "message": "[PATCH] paravirt: header and stubs for paravirtualisation\n\nCreate a paravirt.h header for all the critical operations which need to be\nreplaced with hypervisor calls, and include that instead of defining native\noperations, when CONFIG_PARAVIRT.\n\nThis patch does the dumbest possible replacement of paravirtualized\ninstructions: calls through a \"paravirt_ops\" structure.  Currently these are\nfunction implementations of native hardware: hypervisors will override the ops\nstructure with their own variants.\n\nAll the pv-ops functions are declared \"fastcall\" so that a specific\nregister-based ABI is used, to make inlining assember easier.\n\nAnd:\n\n+From: Andy Whitcroft \u003capw@shadowen.org\u003e\n\nThe paravirt ops introduce a \u0027weak\u0027 attribute onto memory_setup().\nCode ordering leads to the following warnings on x86:\n\n    arch/i386/kernel/setup.c:651: warning: weak declaration of\n                `memory_setup\u0027 after first use results in unspecified behavior\n\nMove memory_setup() to avoid this.\n\nSigned-off-by: Rusty Russell \u003crusty@rustcorp.com.au\u003e\nSigned-off-by: Chris Wright \u003cchrisw@sous-sol.org\u003e\nSigned-off-by: Andi Kleen \u003cak@suse.de\u003e\nCc: Jeremy Fitzhardinge \u003cjeremy@goop.org\u003e\nCc: Zachary Amsden \u003czach@vmware.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Andy Whitcroft \u003capw@shadowen.org\u003e\n"
    }
  ]
}
