)]}'
{
  "log": [
    {
      "commit": "ada3fa15057205b7d3f727bba5cd26b5912e350f",
      "tree": "60962fc9e4021b92f484d1a58e72cd3906d4f3db",
      "parents": [
        "2f82af08fcc7dc01a7e98a49a5995a77e32a2925",
        "5579fd7e6aed8860ea0c8e3f11897493153b10ad"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Sep 15 09:39:44 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Sep 15 09:39:44 2009 -0700"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tj/percpu\n\n* \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tj/percpu: (46 commits)\n  powerpc64: convert to dynamic percpu allocator\n  sparc64: use embedding percpu first chunk allocator\n  percpu: kill lpage first chunk allocator\n  x86,percpu: use embedding for 64bit NUMA and page for 32bit NUMA\n  percpu: update embedding first chunk allocator to handle sparse units\n  percpu: use group information to allocate vmap areas sparsely\n  vmalloc: implement pcpu_get_vm_areas()\n  vmalloc: separate out insert_vmalloc_vm()\n  percpu: add chunk-\u003ebase_addr\n  percpu: add pcpu_unit_offsets[]\n  percpu: introduce pcpu_alloc_info and pcpu_group_info\n  percpu: move pcpu_lpage_build_unit_map() and pcpul_lpage_dump_cfg() upward\n  percpu: add @align to pcpu_fc_alloc_fn_t\n  percpu: make @dyn_size mandatory for pcpu_setup_first_chunk()\n  percpu: drop @static_size from first chunk allocators\n  percpu: generalize first chunk allocator selection\n  percpu: build first chunk allocators selectively\n  percpu: rename 4k first chunk allocator to page\n  percpu: improve boot messages\n  percpu: fix pcpu_reclaim() locking\n  ...\n\nFix trivial conflict as by Tejun Heo in kernel/sched.c\n"
    },
    {
      "commit": "55e0715f612f19b44c17497929091df2f3357e5d",
      "tree": "31e139ebb4fcd98357b3af7af6c4becb41fa9563",
      "parents": [
        "7dfd54a905be0242bd604557d543c3a2d7b0a540",
        "bdf977b37418cdf8a2252504779a7e12a09b7575"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Sep 14 08:01:28 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Sep 14 08:01:28 2009 -0700"
      },
      "message": "Merge branch \u0027x86-percpu-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip\n\n* \u0027x86-percpu-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:\n  x86, percpu: Collect hot percpu variables into one cacheline\n  x86, percpu: Fix DECLARE/DEFINE_PER_CPU_PAGE_ALIGNED()\n  x86, percpu: Add \u0027percpu_read_stable()\u0027 interface for cacheable accesses\n"
    },
    {
      "commit": "53f824520b6d84ca5b4a8fd71addc91dbf64357e",
      "tree": "fc62733de8040f13cf450b6cae967976da31827b",
      "parents": [
        "1ea0d14e480c245683927eecc03a70faf06e80c8"
      ],
      "author": {
        "name": "Jeremy Fitzhardinge",
        "email": "jeremy@goop.org",
        "time": "Thu Sep 03 14:31:44 2009 -0700"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Sep 04 07:10:31 2009 +0200"
      },
      "message": "x86/i386: Put aligned stack-canary in percpu shared_aligned section\n\nPack aligned things together into a special section to minimize\npadding holes.\n\nSuggested-by: Eric Dumazet \u003ceric.dumazet@gmail.com\u003e\nSigned-off-by: Jeremy Fitzhardinge \u003cjeremy.fitzhardinge@citrix.com\u003e\nCc: Tejun Heo \u003ctj@kernel.org\u003e\nLKML-Reference: \u003c4AA035C0.9070202@goop.org\u003e\n[ queued up in tip:x86/asm because it depends on this commit:\n  x86/i386: Make sure stack-protector segment base is cache aligned ]\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "3e352aa8ee2bd48f1a19c7742810b3a4a7ba605e",
      "tree": "a90566108225efefb1aaedc425b8bdcb72b389df",
      "parents": [
        "ed8d9adf357ec331603fa1049510399812cea7e5"
      ],
      "author": {
        "name": "Tejun Heo",
        "email": "tj@kernel.org",
        "time": "Mon Aug 03 14:10:11 2009 +0900"
      },
      "committer": {
        "name": "Tejun Heo",
        "email": "tj@kernel.org",
        "time": "Tue Aug 04 01:29:24 2009 +0900"
      },
      "message": "x86, percpu: Fix DECLARE/DEFINE_PER_CPU_PAGE_ALIGNED()\n\nDECLARE/DEFINE_PER_CPU_PAGE_ALIGNED() put percpu variables in\n.page_aligned section without adding any alignment restrictions.\nCurrently, this doesn\u0027t cause any problem because all users of the\nmacros have explicit page alignment and page-sized but it\u0027s much safer\nto enforce page alignment from the macros.  After all, it\u0027s what they\nclaim to do.\n\nAdd __aligned(PAGE_SIZE) to DECLARE/DEFINE_PER_CPU_PAGE_ALIGNED() and\ndrop explicit alignment from it users.\n\nSigned-off-by: Tejun Heo \u003ctj@kernel.org\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: H. Peter Anvin \u003chpa@zytor.com\u003e\n"
    },
    {
      "commit": "c43768cbb7655ea5ff782ae250f6e2ef4297cf98",
      "tree": "3982e41dde3eecaa3739a5d1a8ed18d04bd74f01",
      "parents": [
        "1a8dd307cc0a2119be4e578c517795464e6dabba",
        "746a99a5af60ee676afa2ba469ccd1373493c7e7"
      ],
      "author": {
        "name": "Tejun Heo",
        "email": "tj@kernel.org",
        "time": "Sat Jul 04 07:13:18 2009 +0900"
      },
      "committer": {
        "name": "Tejun Heo",
        "email": "tj@kernel.org",
        "time": "Sat Jul 04 07:13:18 2009 +0900"
      },
      "message": "Merge branch \u0027master\u0027 into for-next\n\nPull linus#master to merge PER_CPU_DEF_ATTRIBUTES and alpha build fix\nchanges.  As alpha in percpu tree uses \u0027weak\u0027 attribute instead of\ninline assembly, there\u0027s no need for __used attribute.\n\nConflicts:\n\tarch/alpha/include/asm/percpu.h\n\tarch/mn10300/kernel/vmlinux.lds.S\n\tinclude/linux/percpu-defs.h\n"
    },
    {
      "commit": "b01e8dc34379f4ba2f454390e340a025edbaaa7e",
      "tree": "8498a81a819180b7308e2dcbc4d078b45898ccdf",
      "parents": [
        "15e3252464432a29c5461325cb5243471bd2a219"
      ],
      "author": {
        "name": "Tejun Heo",
        "email": "tj@kernel.org",
        "time": "Tue Jun 30 11:41:18 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Jun 30 18:55:59 2009 -0700"
      },
      "message": "alpha: fix percpu build breakage\n\nalpha percpu access requires custom SHIFT_PERCPU_PTR() definition for\nmodules to work around addressing range limitation.  This is done via\ngenerating inline assembly using C preprocessing which forces the\nassembler to generate external reference.  This happens behind the\ncompiler\u0027s back and makes the compiler think that static percpu variables\nin modules are unused.\n\nThis used to be worked around by using __unused attribute for percpu\nvariables which prevent the compiler from omitting the variable; however,\nrecent declare/definition attribute unification change broke this as\n__used can\u0027t be used for declaration.  Also, in the process,\nPER_CPU_ATTRIBUTES definition in alpha percpu.h got broken.\n\nThis patch adds PER_CPU_DEF_ATTRIBUTES which is only used for definitions\nand make alpha use it to add __used for percpu variables in modules.  This\nalso fixes the PER_CPU_ATTRIBUTES double definition bug.\n\nSigned-off-by: Tejun Heo \u003ctj@kernel.org\u003e\nTested-by: maximilian attems \u003cmax@stro.at\u003e\nAcked-by: Ivan Kokshaysky \u003cink@jurassic.park.msu.ru\u003e\nCc: Richard Henderson \u003crth@twiddle.net\u003e\nCc: \u003cstable@kernel.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "1a8dd307cc0a2119be4e578c517795464e6dabba",
      "tree": "c98117633ce514891016f4343c284b3e861e3f6d",
      "parents": [
        "bf4bb2b1f285ec56e7f3cbf0190761b42131871c"
      ],
      "author": {
        "name": "Tejun Heo",
        "email": "tj@kernel.org",
        "time": "Mon Jun 29 17:45:39 2009 +0900"
      },
      "committer": {
        "name": "Tejun Heo",
        "email": "tj@kernel.org",
        "time": "Mon Jun 29 17:45:39 2009 +0900"
      },
      "message": "percpu: use __weak only in the definition of weak percpu variables\n\n__weak is necessary only for definition and might even not work in\ndeclaration.  Drop it from declaration.\n\nThis change was suggested by Ivan Kokshaysky.\n\nSigned-off-by: Tejun Heo \u003ctj@kernel.org\u003e\nAcked-by: Ivan Kokshaysky \u003cink@jurassic.park.msu.ru\u003e\n"
    },
    {
      "commit": "7c756e6e19e71f0327760d8955f7077118ebb2b1",
      "tree": "e561b364701e974d44511445cb237d0039d3603b",
      "parents": [
        "245b2e70eabd797932adb263a65da0bab3711753"
      ],
      "author": {
        "name": "Tejun Heo",
        "email": "tj@kernel.org",
        "time": "Wed Jun 24 15:13:50 2009 +0900"
      },
      "committer": {
        "name": "Tejun Heo",
        "email": "tj@kernel.org",
        "time": "Wed Jun 24 15:13:50 2009 +0900"
      },
      "message": "percpu: implement optional weak percpu definitions\n\nSome archs (alpha and s390) need to use weak definitions for percpu\nvariables in modules so that the compiler generates external\nreferences for them.\n\nThis patch implements weak percpu definitions which arch can enable by\ndefining ARCH_NEEDS_WEAK_PER_CPU in arch percpu header file.  This\nweak definition adds the following two restrictions on percpu variable\ndefinitions.\n\n  1. percpu symbols must be unique whether static or not\n  2. percpu variables can\u0027t be defined inside a function\n\nTo ensure that these restrictions are observed in generic code, config\noption DEBUG_FORCE_WEAK_PER_CPU enables weak percpu definitions for\nall cases.\n\nThis patch is inspired by Ivan Kokshaysky\u0027s alpha percpu patch.\n\n[ Impact: stricter rules for percpu variables, one more debug config option ]\n\nSigned-off-by: Tejun Heo \u003ctj@kernel.org\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: David Howells \u003cdhowells@redhat.com\u003e\nCc: Ivan Kokshaysky \u003cink@jurassic.park.msu.ru\u003e\n"
    },
    {
      "commit": "5028eaa97dd1dab9cd7c30c4d38f71c708ca64bc",
      "tree": "ff416e9ecb00ab2b616bce6acc4e2579c45b06b9",
      "parents": [
        "9b8de7479d0dbab1ed98b5b015d44232c9d3d08e"
      ],
      "author": {
        "name": "David Howells",
        "email": "dhowells@redhat.com",
        "time": "Tue Apr 21 23:00:29 2009 +0100"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Apr 21 19:40:00 2009 -0700"
      },
      "message": "PERCPU: Collect the DECLARE/DEFINE declarations together\n\nCollect the DECLARE/DEFINE declarations together in linux/percpu-defs.h so\nthat they\u0027re in one place, and give them descriptive comments, particularly\nthe SHARED_ALIGNED variant.\n\nIt would be nice to collect these in linux/percpu.h, but that\u0027s not possible\nwithout sorting out the severe #include recursion between the x86 arch headers\nand the general headers (and possibly other arches too).\n\nSigned-off-by: David Howells \u003cdhowells@redhat.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    }
  ]
}
