)]}'
{
  "log": [
    {
      "commit": "b8cd9d056bbc5f2630ab1787dbf76f83bbb517c0",
      "tree": "a49c776b88db5346eaef6082c271f5d79319654f",
      "parents": [
        "fec6ed1d1f9b78a6acb4a3eb2c46c812ac2e96f0",
        "1503af661947b7a4a09355cc2ae6aa0d43f16776"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Oct 06 16:15:57 2008 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Oct 06 16:15:57 2008 +0200"
      },
      "message": "Merge branch \u0027x86/header-guards\u0027 into x86-v28-for-linus-phase1\n\nConflicts:\n\tinclude/asm-x86/dma-mapping.h\n\tinclude/asm-x86/gpio.h\n\tinclude/asm-x86/idle.h\n\tinclude/asm-x86/kvm_host.h\n\tinclude/asm-x86/namei.h\n\tinclude/asm-x86/uaccess.h\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "c6a92a2501b35880d2e357dbd7f2cbc9a06f1058",
      "tree": "d1bd8ebb75bcba533c1a55860d153d9449dd43f3",
      "parents": [
        "e532c06f2a835b5cc4f4166f467437d9b09c1d0e"
      ],
      "author": {
        "name": "Marcin Slusarz",
        "email": "marcin.slusarz@gmail.com",
        "time": "Sun Aug 17 17:50:50 2008 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Aug 18 09:10:55 2008 +0200"
      },
      "message": "x86, percpu: silence section mismatch warnings related to EARLY_PER_CPU variables\n\nQuoting Mike Travis in \"x86: cleanup early per cpu variables/accesses v4\"\n(23ca4bba3e20c6c3cb11c1bb0ab4770b724d39ac):\n\n    The DEFINE macro defines the per_cpu variable as well as the early\n    map and pointer.  It also initializes the per_cpu variable and map\n    elements to \"_initvalue\".  The early_* macros provide access to\n    the initial map (usually setup during system init) and the early\n    pointer.  This pointer is initialized to point to the early map\n    but is then NULL\u0027ed when the actual per_cpu areas are setup.  After\n    that the per_cpu variable is the correct access to the variable.\n\nAs these variables are NULL\u0027ed before __init sections are dropped\n(in setup_per_cpu_maps), they can be safely annotated as __ref.\n\nThis change silences following section mismatch warnings:\n\nWARNING: vmlinux.o(.data+0x46c0): Section mismatch in reference from the variable x86_cpu_to_apicid_early_ptr to the variable .init.data:x86_cpu_to_apicid_early_map\nThe variable x86_cpu_to_apicid_early_ptr references\nthe variable __initdata x86_cpu_to_apicid_early_map\nIf the reference is valid then annotate the\nvariable with __init* (see linux/init.h) or name the variable:\n*driver, *_template, *_timer, *_sht, *_ops, *_probe, *_probe_one, *_console,\n\nWARNING: vmlinux.o(.data+0x46c8): Section mismatch in reference from the variable x86_bios_cpu_apicid_early_ptr to the variable .init.data:x86_bios_cpu_apicid_early_map\nThe variable x86_bios_cpu_apicid_early_ptr references\nthe variable __initdata x86_bios_cpu_apicid_early_map\nIf the reference is valid then annotate the\nvariable with __init* (see linux/init.h) or name the variable:\n*driver, *_template, *_timer, *_sht, *_ops, *_probe, *_probe_one, *_console,\n\nWARNING: vmlinux.o(.data+0x46d0): Section mismatch in reference from the variable x86_cpu_to_node_map_early_ptr to the variable .init.data:x86_cpu_to_node_map_early_map\nThe variable x86_cpu_to_node_map_early_ptr references\nthe variable __initdata x86_cpu_to_node_map_early_map\nIf the reference is valid then annotate the\nvariable with __init* (see linux/init.h) or name the variable:\n*driver, *_template, *_timer, *_sht, *_ops, *_probe, *_probe_one, *_console,\n\nSigned-off-by: Marcin Slusarz \u003cmarcin.slusarz@gmail.com\u003e\nCc: Mike Travis \u003ctravis@sgi.com\u003e\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": "5b09b2876ed1a8e34a0da8f069575fc6174e2077",
      "tree": "370750e5c1d4073ed4a7525ccd0348e4154ba0d4",
      "parents": [
        "a9e7062d7339f1a1df2b6d7e5d595c7d55b56bfb"
      ],
      "author": {
        "name": "Jeremy Fitzhardinge",
        "email": "jeremy@goop.org",
        "time": "Tue Jul 08 15:06:42 2008 -0700"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Jul 16 10:58:13 2008 +0200"
      },
      "message": "x86_64: add workaround for no %gs-based percpu\n\nAs a stopgap until Mike Travis\u0027s x86-64 gs-based percpu patches are\nready, provide workaround functions for x86_read/write_percpu for\nXen\u0027s use.\n\nSpecifically, this means that we can\u0027t really make use of vcpu\nplacement, because we can\u0027t use a single gs-based memory access to get\nto vcpu fields.  So disable all that for now.\n\nSigned-off-by: Jeremy Fitzhardinge \u003cjeremy.fitzhardinge@citrix.com\u003e\nCc: Stephen Tweedie \u003csct@redhat.com\u003e\nCc: Eduardo Habkost \u003cehabkost@redhat.com\u003e\nCc: Mark McLoughlin \u003cmarkmc@redhat.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "23ca4bba3e20c6c3cb11c1bb0ab4770b724d39ac",
      "tree": "39ba5f7705e48717d7a6f2621b8ca7e7015c9802",
      "parents": [
        "1184dc2ffe2c8fb9afb766d870850f2c3165ef25"
      ],
      "author": {
        "name": "Mike Travis",
        "email": "travis@sgi.com",
        "time": "Mon May 12 21:21:12 2008 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Jul 08 11:31:20 2008 +0200"
      },
      "message": "x86: cleanup early per cpu variables/accesses v4\n\n  * Introduce a new PER_CPU macro called \"EARLY_PER_CPU\".  This is\n    used by some per_cpu variables that are initialized and accessed\n    before there are per_cpu areas allocated.\n\n    [\"Early\" in respect to per_cpu variables is \"earlier than the per_cpu\n    areas have been setup\".]\n\n    This patchset adds these new macros:\n\n\tDEFINE_EARLY_PER_CPU(_type, _name, _initvalue)\n\tEXPORT_EARLY_PER_CPU_SYMBOL(_name)\n\tDECLARE_EARLY_PER_CPU(_type, _name)\n\n\tearly_per_cpu_ptr(_name)\n\tearly_per_cpu_map(_name, _idx)\n\tearly_per_cpu(_name, _cpu)\n\n    The DEFINE macro defines the per_cpu variable as well as the early\n    map and pointer.  It also initializes the per_cpu variable and map\n    elements to \"_initvalue\".  The early_* macros provide access to\n    the initial map (usually setup during system init) and the early\n    pointer.  This pointer is initialized to point to the early map\n    but is then NULL\u0027ed when the actual per_cpu areas are setup.  After\n    that the per_cpu variable is the correct access to the variable.\n\n    The early_per_cpu() macro is not very efficient but does show how to\n    access the variable if you have a function that can be called both\n    \"early\" and \"late\".  It tests the early ptr to be NULL, and if not\n    then it\u0027s still valid.  Otherwise, the per_cpu variable is used\n    instead:\n\n\t#define early_per_cpu(_name, _cpu) \t\t\t\\\n\t\t(early_per_cpu_ptr(_name) ?\t\t\t\\\n\t\t\tearly_per_cpu_ptr(_name)[_cpu] :\t\\\n\t\t\tper_cpu(_name, _cpu))\n\n    A better method is to actually check the pointer manually.  In the\n    case below, numa_set_node can be called both \"early\" and \"late\":\n\n\tvoid __cpuinit numa_set_node(int cpu, int node)\n\t{\n\t    int *cpu_to_node_map \u003d early_per_cpu_ptr(x86_cpu_to_node_map);\n\n\t    if (cpu_to_node_map)\n\t\t    cpu_to_node_map[cpu] \u003d node;\n\t    else\n\t\t    per_cpu(x86_cpu_to_node_map, cpu) \u003d node;\n\t}\n\n  * Add a flag \"arch_provides_topology_pointers\" that indicates pointers\n    to topology cpumask_t maps are available.  Otherwise, use the function\n    returning the cpumask_t value.  This is useful if cpumask_t set size\n    is very large to avoid copying data on to/off of the stack.\n\n  * The coverage of CONFIG_DEBUG_PER_CPU_MAPS has been increased while\n    the non-debug case has been optimized a bit.\n\n  * Remove an unreferenced compiler warning in drivers/base/topology.c\n\n  * Clean up #ifdef in setup.c\n\nFor inclusion into sched-devel/latest tree.\n\nBased on:\n\tgit://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux-2.6.git\n    +   sched-devel/latest  .../mingo/linux-2.6-sched-devel.git\n\nSigned-off-by: Mike Travis \u003ctravis@sgi.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\n"
    },
    {
      "commit": "bc9e3be20bab447519e864c4f9e09aae82ed0376",
      "tree": "3a574941709fec6526a02ce3051da6755ad32895",
      "parents": [
        "46e1abc63e736644265e7ec2897f963a4ace5993"
      ],
      "author": {
        "name": "Joe Perches",
        "email": "joe@perches.com",
        "time": "Sun Mar 23 01:03:06 2008 -0700"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Apr 17 17:41:26 2008 +0200"
      },
      "message": "include/asm-x86/percpu.h: checkpatch cleanups - formatting only\n\nSigned-off-by: Joe Perches \u003cjoe@perches.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "3334052a321aca0ffecb54244d666311f98f5487",
      "tree": "7fc7cd4b99a4e5cfe5eee95fc43f55e126d7ee43",
      "parents": [
        "072a1e6953d2caffbad7d217ae51cdc61125960f"
      ],
      "author": {
        "name": "travis@sgi.com",
        "email": "travis@sgi.com",
        "time": "Wed Jan 30 13:32:53 2008 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Jan 30 13:32:53 2008 +0100"
      },
      "message": "x86: unify percpu.h\n\nForm a single percpu.h from percpu_32.h and percpu_64.h. Both are now pretty\nsmall so this is simply adding them together.\n\nCc: Rusty Russell \u003crusty@rustcorp.com.au\u003e\nSigned-off-by: Christoph Lameter \u003cclameter@sgi.com\u003e\nSigned-off-by: Mike Travis \u003ctravis@sgi.com\u003e\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"
    }
  ]
}
