)]}'
{
  "log": [
    {
      "commit": "9e1b9b80721661bd63b3662453767b22cd614fe7",
      "tree": "e1b53708f4b65c990db3b8b732dc3d984574c756",
      "parents": [
        "3e7b19efe621bcf8bfef896c9c4cc5c99c52c3ec"
      ],
      "author": {
        "name": "Alan Jenkins",
        "email": "alan-jenkins@tuffmail.co.uk",
        "time": "Sat Nov 07 21:03:54 2009 +0000"
      },
      "committer": {
        "name": "Rusty Russell",
        "email": "rusty@rustcorp.com.au",
        "time": "Tue Dec 15 16:28:26 2009 +1030"
      },
      "message": "module: make MODULE_SYMBOL_PREFIX into a CONFIG option\n\nThe next commit will require the use of MODULE_SYMBOL_PREFIX in\n.tmp_exports-asm.S.  Currently it is mixed in with C structure\ndefinitions in \"asm/module.h\".  Move the definition of this arch option\ninto Kconfig, so it can be easily accessed by any code.\n\nThis also lets modpost.c use the same definition.  Previously modpost\nrelied on a hardcoded list of architectures in mk_elfconfig.c.\n\nA build test for blackfin, one of the two MODULE_SYMBOL_PREFIX archs,\nshowed the generated code was unchanged.  vmlinux was identical save\nfor build ids, and an apparently randomized suffix on a single \"__key\"\nsymbol in the kallsyms data).\n\nSigned-off-by: Alan Jenkins \u003calan-jenkins@tuffmail.co.uk\u003e\nAcked-by: Mike Frysinger \u003cvapier@gentoo.org\u003e (blackfin)\nCC: Sam Ravnborg \u003csam@ravnborg.org\u003e\nSigned-off-by: Rusty Russell \u003crusty@rustcorp.com.au\u003e\n"
    },
    {
      "commit": "1b2086227cd1a24f748398c22ea9652c383499cf",
      "tree": "e8c7a010d4900b9bd591d93cdf176c5e8f4237a2",
      "parents": [
        "e9ea0e2d1d00959b451dfc239df126d3c6a22043"
      ],
      "author": {
        "name": "Tim Abbott",
        "email": "tabbott@ksplice.com",
        "time": "Thu Sep 24 10:36:16 2009 -0400"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Sep 24 17:16:21 2009 -0700"
      },
      "message": "Optimize the ordering of sections in RW_DATA_SECTION.\n\nThe old RW_DATA_SECTION had INIT_TASK_DATA (which was\nmore-than-PAGE_SIZE-aligned), followed by a bunch of small alignment\nstuff, followed by more PAGE_SIZE-aligned stuff, so you wasted memory\nin the middle of .data re-aligning back up to PAGE_SIZE.\n\nThis patch sorts the sections by alignment requirements, which should\npack them essentially optimally.\n\nSigned-off-by: Tim Abbott \u003ctabbott@ksplice.com\u003e\nReviewed-by: Sam Ravnborg \u003csam@ravnborg.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "45bd00d31de886f8425b4dd33204b911b0a466a9",
      "tree": "06204f2452e02ca916666173d50f5035d69065ef",
      "parents": [
        "40d9d82c8ab8c4e2373a23a1e31dc8d84c53aa01",
        "ab86e5765d41a5eb4239a1c04d613db87bea5ed8"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Sep 17 20:52:23 2009 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Sep 17 20:53:10 2009 +0200"
      },
      "message": "Merge branch \u0027linus\u0027 into tracing/core\n\nMerge reason: Pick up kernel/softirq.c update for dependent fix.\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "4b3b4c5e64ce26612646867ee354373620063534",
      "tree": "048ff75a616c83c5bd64372f4140d53c9f79f169",
      "parents": [
        "b5130b1e7d3717d03ab1916b198bf0d49fa0a619"
      ],
      "author": {
        "name": "John Reiser",
        "email": "jreiser@bitwagon.com",
        "time": "Mon Jul 27 11:23:50 2009 -0700"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Sat Sep 12 21:57:29 2009 -0400"
      },
      "message": "ftrace: __start_mcount_loc should be .init.rodata\n\n__start_mcount_loc[] is unused after init, yet occupies RAM forever\nas part of .rodata.  152kiB is typical on a 64-bit architecture.  Instead,\n__start_mcount_loc should be in the interval [__init_begin, __init_end)\nso that the space is reclaimed after init.\n\n__start_mcount_loc[] is generated during the load portion\nof kernel build, and is used only by ftrace_init().  ftrace_init is declared\n\u0027__init\u0027 and is in .init.text, which is freed after init.\n__start_mcount_loc is placed into .rodata by a call to MCOUNT_REC inside\nthe RO_DATA macro of include/asm-generic/vmlinux.lds.h.  The array *is*\nread-only, but more importantly it is not used after init.  So the call to\nMCOUNT_REC should be moved from RO_DATA to INIT_DATA.\n\nThis patch has been tested on x86_64 with CONFIG_DEBUG_PAGEALLOC\u003dy\nwhich verifies that the address range never is accessed after init.\n\nSigned-off-by: John Reiser \u003cjreiser@BitWagon.com\u003e\nLKML-Reference: \u003c4A6DF0B6.7080402@bitwagon.com\u003e\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "384be2b18a5f9475eab9ca2bdfa95cc1a04ef59c",
      "tree": "04c93f391a1b65c8bf8d7ba8643c07d26c26590a",
      "parents": [
        "a76761b621bcd8336065c4fe3a74f046858bc34c",
        "142d44b0dd6741a64a7bdbe029110e7c1dcf1d23"
      ],
      "author": {
        "name": "Tejun Heo",
        "email": "tj@kernel.org",
        "time": "Fri Aug 14 14:41:02 2009 +0900"
      },
      "committer": {
        "name": "Tejun Heo",
        "email": "tj@kernel.org",
        "time": "Fri Aug 14 14:45:31 2009 +0900"
      },
      "message": "Merge branch \u0027percpu-for-linus\u0027 into percpu-for-next\n\nConflicts:\n\tarch/sparc/kernel/smp_64.c\n\tarch/x86/kernel/cpu/perf_counter.c\n\tarch/x86/kernel/setup_percpu.c\n\tdrivers/cpufreq/cpufreq_ondemand.c\n\tmm/percpu.c\n\nConflicts in core and arch percpu codes are mostly from commit\ned78e1e078dd44249f88b1dd8c76dafb39567161 which substituted many\nnum_possible_cpus() with nr_cpu_ids.  As for-next branch has moved all\nthe first chunk allocators into mm/percpu.c, the changes are moved\nfrom arch code to mm/percpu.c.\n\nSigned-off-by: Tejun Heo \u003ctj@kernel.org\u003e\n"
    },
    {
      "commit": "04e448d9a386640a79a4aa71251aa1cdd314f662",
      "tree": "a73a00fd881ee61cf756f0edd8ffbc77abcf1e3e",
      "parents": [
        "d0e1e09568507ac771072d97f0781af82c935b3e"
      ],
      "author": {
        "name": "Tim Abbott",
        "email": "tabbott@ksplice.com",
        "time": "Sun Jul 12 18:23:33 2009 -0400"
      },
      "committer": {
        "name": "Sam Ravnborg",
        "email": "sam@ravnborg.org",
        "time": "Sat Jul 18 00:02:45 2009 +0200"
      },
      "message": "vmlinux.lds.h: restructure BSS linker script macros\n\nThe BSS section macros in vmlinux.lds.h currently place the .sbss\ninput section outside the bounds of [__bss_start, __bss_end].  On all\narchitectures except for microblaze that handle both .sbss and\n__bss_start/__bss_end, this is wrong: the .sbss input section is\nwithin the range [__bss_start, __bss_end].  Relatedly, the example\ncode at the top of the file actually has __bss_start/__bss_end defined\ntwice; I believe the right fix here is to define them in the\nBSS_SECTION macro but not in the BSS macro.\n\nAnother problem with the current macros is that several\narchitectures have an ALIGN(4) or some other small number just before\n__bss_stop in their linker scripts.  The BSS_SECTION macro currently\nhardcodes this to 4; while it should really be an argument.  It also\nignores its sbss_align argument; fix that.\n\nmn10300 is the only user at present of any of the macros touched by\nthis patch.  It looks like mn10300 actually was incorrectly converted\nto use the new BSS() macro (the alignment of 4 prior to conversion was\na __bss_stop alignment, but the argument to the BSS macro is a start\nalignment).  So fix this as well.\n\nI\u0027d like acks from Sam and David on this one.  Also CCing Paul, since\nhe has a patch from me which will need to be updated to use\nBSS_SECTION(0, PAGE_SIZE, 4) once this gets merged.\n\nSigned-off-by: Tim Abbott \u003ctabbott@ksplice.com\u003e\nCc: Paul Mundt \u003clethal@linux-sh.org\u003e\nCc: David Howells \u003cdhowells@redhat.com\u003e\nSigned-off-by: Sam Ravnborg \u003csam@ravnborg.org\u003e\n"
    },
    {
      "commit": "023bf6f1b8bf58dc4da7f0dc1cf4787b0d5297c1",
      "tree": "780331cadf207ced67dfcdf36a6479dc0e3d3c04",
      "parents": [
        "1dcdd0911b5553f0282ce8525773955b59a56919"
      ],
      "author": {
        "name": "Tejun Heo",
        "email": "tj@kernel.org",
        "time": "Thu Jul 09 11:27:40 2009 +0900"
      },
      "committer": {
        "name": "Tejun Heo",
        "email": "tj@kernel.org",
        "time": "Thu Jul 09 11:27:40 2009 +0900"
      },
      "message": "linker script: unify usage of discard definition\n\nDiscarded sections in different archs share some commonality but have\nconsiderable differences.  This led to linker script for each arch\nimplementing its own /DISCARD/ definition, which makes maintaining\ntedious and adding new entries error-prone.\n\nThis patch makes all linker scripts to move discard definitions to the\nend of the linker script and use the common DISCARDS macro.  As ld\nuses the first matching section definition, archs can include default\ndiscarded sections by including them earlier in the linker script.\n\nia64 is notable because it first throws away some ia64 specific\nsubsections and then include the rest of the sections into the final\nimage, so those sections must be discarded before the inclusion.\n\ndefconfig compile tested for x86, x86-64, powerpc, powerpc64, ia64,\nalpha, sparc, sparc64 and s390.  Michal Simek tested microblaze.\n\nSigned-off-by: Tejun Heo \u003ctj@kernel.org\u003e\nAcked-by: Paul Mundt \u003clethal@linux-sh.org\u003e\nAcked-by: Mike Frysinger \u003cvapier@gentoo.org\u003e\nTested-by: Michal Simek \u003cmonstr@monstr.eu\u003e\nCc: linux-arch@vger.kernel.org\nCc: Michal Simek \u003cmonstr@monstr.eu\u003e\nCc: microblaze-uclinux@itee.uq.edu.au\nCc: Sam Ravnborg \u003csam@ravnborg.org\u003e\nCc: Tony Luck \u003ctony.luck@intel.com\u003e\n"
    },
    {
      "commit": "29f31773e07772e73e3177a4af147244cd080554",
      "tree": "369eb6c6bec35951158fb94ac241e0c81189c5b3",
      "parents": [
        "59107c6525c0d325649eae807905d34772d5a664",
        "112942353992d95099fb5b71c679ff1046fccfcf"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Jul 04 09:46:01 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Jul 04 09:46:01 2009 -0700"
      },
      "message": "Merge git://git.kernel.org/pub/scm/linux/kernel/git/sam/kbuild-fixes\n\n* git://git.kernel.org/pub/scm/linux/kernel/git/sam/kbuild-fixes:\n  kbuild: finally remove the obsolete variable $TOPDIR\n  gitignore: ignore scripts/ihex2fw\n  Kbuild: Disable the -Wformat-security gcc flag\n  gitignore: ignore gcov output files\n  kbuild: deb-pkg ship changelog\n  Add new __init_task_data macro to be used in arch init_task.c files.\n  asm-generic/vmlinux.lds.h: shuffle INIT_TASK* macro names in vmlinux.lds.h\n  Add new macros for page-aligned data and bss sections.\n  asm-generic/vmlinux.lds.h: Fix up RW_DATA_SECTION definition.\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": "2a2325e6e8a3782795fb520220c36fd805775972",
      "tree": "e368b8b7850f34ffc6d39a8b0edc032c4b94dec9",
      "parents": [
        "133890103b9de08904f909995973e4b5c08a780e"
      ],
      "author": {
        "name": "Heiko Carstens",
        "email": "heiko.carstens@de.ibm.com",
        "time": "Tue Jun 30 11:41:13 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Jun 30 18:55:59 2009 -0700"
      },
      "message": "gcov: fix __ctors_start alignment\n\nThe ctors section for each object file is eight byte aligned (on 64 bit).\nHowever the __ctors_start symbol starts at an arbitrary address dependent\non the size of the previous sections.\n\nTherefore the linker may add some zeroes after __ctors_start to make sure\nthe ctors contents are properly aligned.  However the extra zeroes at the\nbeginning aren\u0027t expected by the code.  When walking the functions\npointers contained in there and extra zeroes are added this may result in\nrandom jumps.  So make sure that the __ctors_start symbol is always\naligned as well.\n\nFixes this crash on an allyesconfig on s390:\n\n[    0.582482] Kernel BUG at 0000000000000012 [verbose debug info unavailable]\n[    0.582489] illegal operation: 0001 [#1] SMP DEBUG_PAGEALLOC\n[    0.582496] Modules linked in:\n[    0.582501] CPU: 0 Tainted: G        W  2.6.31-rc1-dirty #273\n[    0.582506] Process swapper (pid: 1, task: 000000003f218000, ksp: 000000003f2238e8)\n[    0.582510] Krnl PSW : 0704200180000000 0000000000000012 (0x12)\n[    0.582518]            R:0 T:1 IO:1 EX:1 Key:0 M:1 W:0 P:0 AS:0 CC:2 PM:0 EA:3\n[    0.582524] Krnl GPRS: 0000000000036727 0000000000000010 0000000000000001 0000000000000001\n[    0.582529]            00000000001dfefa 0000000000000000 0000000000000000 0000000000000040\n[    0.582534]            0000000001fff0f0 0000000001790628 0000000002296048 0000000002296048\n[    0.582540]            00000000020c438e 0000000001786000 0000000002014a66 000000003f223e60\n[    0.582553] Krnl Code:\u003e0000000000000012: 0000                unknown\n[    0.582559]            0000000000000014: 0000                unknown\n[    0.582564]            0000000000000016: 0000                unknown\n[    0.582570]            0000000000000018: 0000                unknown\n[    0.582575]            000000000000001a: 0000                unknown\n[    0.582580]            000000000000001c: 0000                unknown\n[    0.582585]            000000000000001e: 0000                unknown\n[    0.582591]            0000000000000020: 0000                unknown\n[    0.582596] Call Trace:\n[    0.582599] ([\u003c0000000002014a46\u003e] kernel_init+0x622/0x7a0)\n[    0.582607]  [\u003c0000000000113e22\u003e] kernel_thread_starter+0x6/0xc\n[    0.582615]  [\u003c0000000000113e1c\u003e] kernel_thread_starter+0x0/0xc\n[    0.582621] INFO: lockdep is turned off.\n[    0.582624] Last Breaking-Event-Address:\n[    0.582627]  [\u003c0000000002014a64\u003e] kernel_init+0x640/0x7a0\n\nCc: Peter Oberparleiter \u003coberpar@linux.vnet.ibm.com\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\nSigned-off-by: Heiko Carstens \u003cheiko.carstens@de.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": "39a449d96ac3db9b6d498b6ffbf4c763746d5e8b",
      "tree": "86c0a86f309f481331cbce2bd444b3bc84bbff5c",
      "parents": [
        "d2af12aeadaedf657c9fb9c3df984d2c5ab25f4c"
      ],
      "author": {
        "name": "Tim Abbott",
        "email": "tabbott@ksplice.com",
        "time": "Tue Jun 23 18:53:15 2009 -0400"
      },
      "committer": {
        "name": "Sam Ravnborg",
        "email": "sam@ravnborg.org",
        "time": "Sat Jun 27 00:04:50 2009 +0200"
      },
      "message": "asm-generic/vmlinux.lds.h: shuffle INIT_TASK* macro names in vmlinux.lds.h\n\nWe recently added a INIT_TASK(align) in include/asm-generic/vmlinux.lds.h,\nbut there is already a macro INIT_TASK in include/linux/init_task.h, which\nis quite confusing.  We should switch the macro in the linker script to\nINIT_TASK_DATA. (Sorry that I missed this in reviewing the patch).  Since\nthe macros are new, there is only one user of the INIT_TASK in\nvmlinux.lds.h, arch/mn10300/kernel/vmlinux.lds.S.\n\nHowever, we are currently using INIT_TASK_DATA for laying down an entire\n.data.init_task section.  So rename that to INIT_TASK_DATA_SECTION.\n\nI would be worried about changing the meaning of INIT_TASK_DATA, but the\nold INIT_TASK_DATA implementation had no users, and in fact if anyone had\ntried to use it, it would have failed to compile because it didn\u0027t pass\nthe alignment to the old INIT_TASK.\n\nSigned-off-by: Tim Abbott \u003ctabbott@ksplice.com\u003e\nCc: David Howells \u003cdhowells@redhat.com\u003e\nCc: Jesper Nilsson \u003cJesper.Nilsson@axis.com\nSigned-off-by: Sam Ravnborg \u003csam@ravnborg.org\u003e\n"
    },
    {
      "commit": "73f1d9391a6aa72efdcea2f302ee7bfcd313c631",
      "tree": "44824c45de7a3ceaa9a07cc0ecc2aeb29e321f37",
      "parents": [
        "4075ea8c54a7506844a69f674990241e7766357b"
      ],
      "author": {
        "name": "Paul Mundt",
        "email": "lethal@linux-sh.org",
        "time": "Wed Jun 24 01:04:36 2009 +0900"
      },
      "committer": {
        "name": "Sam Ravnborg",
        "email": "sam@ravnborg.org",
        "time": "Fri Jun 26 23:55:27 2009 +0200"
      },
      "message": "asm-generic/vmlinux.lds.h: Fix up RW_DATA_SECTION definition.\n\nRW_DATA_SECTION is defined to take 4 different alignment parameters,\nwhile NOSAVE_DATA currently uses a fixed PAGE_SIZE alignment as noted\nin the comments.\n\nThere are presently no in-tree users of this at present, and I just\nstumbled across this while implementing the simplified script on a new\narchitecture port, which subsequently resulted in a syntax error.\n\nSigned-off-by: Paul Mundt \u003clethal@linux-sh.org\u003e\nSigned-off-by: Sam Ravnborg \u003csam@ravnborg.org\u003e\n"
    },
    {
      "commit": "405d967dc70002991f8fc35c20e0d3cbc7614f63",
      "tree": "ace31796327e9035488310d42e06acbab3a28656",
      "parents": [
        "e74e396204bfcb67570ba4517b08f5918e69afea"
      ],
      "author": {
        "name": "Tejun Heo",
        "email": "tj@kernel.org",
        "time": "Wed Jun 24 15:13:38 2009 +0900"
      },
      "committer": {
        "name": "Tejun Heo",
        "email": "tj@kernel.org",
        "time": "Wed Jun 24 15:13:38 2009 +0900"
      },
      "message": "linker script: throw away .discard section\n\nx86 throws away .discard section but no other archs do.  Also,\n.discard is not thrown away while linking modules.  Make every arch\nand module linking throw it away.  This will be used to define dummy\nvariables for percpu declarations and definitions.\n\nThis patch is based on Ivan Kokshaysky\u0027s alpha percpu patch.\n\n[ Impact: always throw away everything in .discard ]\n\nSigned-off-by: Tejun Heo \u003ctj@kernel.org\u003e\nCc: Ivan Kokshaysky \u003cink@jurassic.park.msu.ru\u003e\nCc: Richard Henderson \u003crth@twiddle.net\u003e\nCc: Russell King \u003clinux@arm.linux.org.uk\u003e\nCc: Haavard Skinnemoen \u003chskinnemoen@atmel.com\u003e\nCc: Bryan Wu \u003ccooloney@kernel.org\u003e\nCc: Mikael Starvik \u003cstarvik@axis.com\u003e\nCc: Jesper Nilsson \u003cjesper.nilsson@axis.com\u003e\nCc: David Howells \u003cdhowells@redhat.com\u003e\nCc: Yoshinori Sato \u003cysato@users.sourceforge.jp\u003e\nCc: Tony Luck \u003ctony.luck@intel.com\u003e\nCc: Hirokazu Takata \u003ctakata@linux-m32r.org\u003e\nCc: Geert Uytterhoeven \u003cgeert@linux-m68k.org\u003e\nCc: Michal Simek \u003cmonstr@monstr.eu\u003e\nCc: Ralf Baechle \u003cralf@linux-mips.org\u003e\nCc: Kyle McMartin \u003ckyle@mcmartin.ca\u003e\nCc: Benjamin Herrenschmidt \u003cbenh@kernel.crashing.org\u003e\nCc: Paul Mackerras \u003cpaulus@samba.org\u003e\nCc: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\nCc: Heiko Carstens \u003cheiko.carstens@de.ibm.com\u003e\nCc: Paul Mundt \u003clethal@linux-sh.org\u003e\nCc: David S. Miller \u003cdavem@davemloft.net\u003e\nCc: Jeff Dike \u003cjdike@addtoit.com\u003e\nCc: Chris Zankel \u003cchris@zankel.net\u003e\nCc: Rusty Russell \u003crusty@rustcorp.com.au\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "eadfe21989d728b5af936487627b4e288bd805f8",
      "tree": "bc1b7a09c6bf1e231654cb86ff64e46b9d9cbbfa",
      "parents": [
        "7e0338c0de18c50f09aea1fbef45110cf7d64a3c"
      ],
      "author": {
        "name": "David Howells",
        "email": "dhowells@redhat.com",
        "time": "Mon Jun 22 15:32:31 2009 +0100"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jun 22 13:34:49 2009 -0700"
      },
      "message": "LDSCRIPT: Name INIT_RAM_FS consistently\n\nIn asm-generic/vmlinux.lds.h, name INIT_RAM_FS consistently, no matter the\nsetting of CONFIG_BLK_DEV_INITRD.  This corrects:\n\n\tcommit ef53dae8658cf0e93d380983824a661067948d87\n\tAuthor: Sam Ravnborg \u003csam@ravnborg.org\u003e\n\tDate:   Sun Jun 7 20:46:37 2009 +0200\n\tSubject: Improve vmlinux.lds.h support for arch specific linker scripts\n\nSigned-off-by: David Howells \u003cdhowells@redhat.com\u003e\nAcked-by: Sam Ravnborg \u003csam@ravnborg.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "b99b87f70c7785ab1e253c6220f4b0b57ce3a7f7",
      "tree": "ec5688052334448ec8edd3a1a9cb95cd68501ac7",
      "parents": [
        "e24aca672ff06aff0e6a1045efab86043ea5f735"
      ],
      "author": {
        "name": "Peter Oberparleiter",
        "email": "oberpar@linux.vnet.ibm.com",
        "time": "Wed Jun 17 16:28:03 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Jun 18 13:03:57 2009 -0700"
      },
      "message": "kernel: constructor support\n\nCall constructors (gcc-generated initcall-like functions) during kernel\nstart and module load.  Constructors are e.g.  used for gcov data\ninitialization.\n\nDisable constructor support for usermode Linux to prevent conflicts with\nhost glibc.\n\nSigned-off-by: Peter Oberparleiter \u003coberpar@linux.vnet.ibm.com\u003e\nAcked-by: Rusty Russell \u003crusty@rustcorp.com.au\u003e\nAcked-by: WANG Cong \u003cxiyou.wangcong@gmail.com\u003e\nCc: Sam Ravnborg \u003csam@ravnborg.org\u003e\nCc: Jeff Dike \u003cjdike@addtoit.com\u003e\nCc: Andi Kleen \u003candi@firstfloor.org\u003e\nCc: Huang Ying \u003cying.huang@intel.com\u003e\nCc: Li Wei \u003cW.Li@Sun.COM\u003e\nCc: Michael Ellerman \u003cmichaele@au1.ibm.com\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: Heiko Carstens \u003cheicars2@linux.vnet.ibm.com\u003e\nCc: Martin Schwidefsky \u003cmschwid2@linux.vnet.ibm.com\u003e\nCc: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "45e3e1935e2857c54783291107d33323b3ef33c8",
      "tree": "26a6e3228b52d0f96f6e56e5879ca898fe909592",
      "parents": [
        "cf5046323ea254be72535648a9d090b18b8510f3",
        "3f8d9ced7746f3f329ccca0bb3f3c7a2c15c47bb"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun Jun 14 14:12:18 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun Jun 14 14:12:18 2009 -0700"
      },
      "message": "Merge branch \u0027master\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/sam/kbuild-next\n\n* \u0027master\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/sam/kbuild-next: (53 commits)\n  .gitignore: ignore *.lzma files\n  kbuild: add generic --set-str option to scripts/config\n  kbuild: simplify argument loop in scripts/config\n  kbuild: handle non-existing options in scripts/config\n  kallsyms: generalize text region handling\n  kallsyms: support kernel symbols in Blackfin on-chip memory\n  documentation: make version fix\n  kbuild: fix a compile warning\n  gitignore: Add GNU GLOBAL files to top .gitignore\n  kbuild: fix delay in setlocalversion on readonly source\n  README: fix misleading pointer to the defconf directory\n  vmlinux.lds.h update\n  kernel-doc: cleanup perl script\n  Improve vmlinux.lds.h support for arch specific linker scripts\n  kbuild: fix headers_exports with boolean expression\n  kbuild/headers_check: refine extern check\n  kbuild: fix \"Argument list too long\" error for \"make headers_check\",\n  ignore *.patch files\n  Remove bashisms from scripts\n  menu: fix embedded menu presentation\n  ...\n"
    },
    {
      "commit": "7923f90fffa8746f6457d4eea2109fd3d6414189",
      "tree": "cd262beed7fd28a20f708fdb7889d6c5d55f39d5",
      "parents": [
        "b9d97328e27b9272ed2ff2ad18de61aa1bf12af8"
      ],
      "author": {
        "name": "Sam Ravnborg",
        "email": "sam@ravnborg.org",
        "time": "Sun Jun 14 22:10:41 2009 +0200"
      },
      "committer": {
        "name": "Sam Ravnborg",
        "email": "sam@ravnborg.org",
        "time": "Sun Jun 14 22:10:41 2009 +0200"
      },
      "message": "vmlinux.lds.h update\n\nUpdated after review by Tim Abbott.\n- Use HEAD_TEXT_SECTION\n- Drop use of section-names.h and delete file\n- Introduce EXIT_CALL\n\nDeleting section-names.h required a few simple\nupdates of init.h\n\nSigned-off-by: Sam Ravnborg \u003csam@ravnborg.org\u003e\nCc: Tim Abbott \u003ctabbott@ksplice.com\u003e\n"
    },
    {
      "commit": "ef53dae8658cf0e93d380983824a661067948d87",
      "tree": "d5f16da0d7f3353db1233f6399a23d0e187b7d1d",
      "parents": [
        "eedc9d83eaab2d35fb9dd1ec25b765dec964e26c"
      ],
      "author": {
        "name": "Sam Ravnborg",
        "email": "sam@ravnborg.org",
        "time": "Sun Jun 07 20:46:37 2009 +0200"
      },
      "committer": {
        "name": "Sam Ravnborg",
        "email": "sam@ravnborg.org",
        "time": "Tue Jun 09 23:02:22 2009 +0200"
      },
      "message": "Improve vmlinux.lds.h support for arch specific linker scripts\n\nTo support alingment of the individual architecture specific linker scripts\nprovide a set of general definitions in vmlinux.lds.h\n\nWith these definitions applied the diverse linekr scripts can be reduced\nin line count and their readability are improved - IMO.\n\nA sample linker script is included to give the preferred\norder of the sections for the architectures that do not\nhave any special requirments.\n\nThese definitions are also a first step towards eventual\nsupport for -ffunction-sections.\nThe definitions makes it much easier to do a global\nrenaming of section names - but the main purpose is\nto clean up the linker scripts.\n\nTim Aboot has provided a lot of inputs to improve\nthe definitions - all faults are mine.\n\nSigned-off-by: Sam Ravnborg \u003csam@ravnborg.org\u003e\nCc: Tim Abbott \u003ctabbott@mit.edu\u003e\n"
    },
    {
      "commit": "fd6c3a8dc44329d3aff9a578b5120982f63711ee",
      "tree": "ba7b7a183d0db95a4ddb33e83a075f963a2028e3",
      "parents": [
        "6d9923219c6cd1df360f8823253717623f3ad348"
      ],
      "author": {
        "name": "Jan Beulich",
        "email": "jbeulich@novell.com",
        "time": "Thu Mar 12 10:58:33 2009 +0000"
      },
      "committer": {
        "name": "Sam Ravnborg",
        "email": "sam@ravnborg.org",
        "time": "Tue Jun 09 22:37:43 2009 +0200"
      },
      "message": "initconst adjustments\n\n- add .init.rodata to INIT_DATA, and group all initconst flavors\n  together\n- move strings generated from __setup_param() into .init.rodata\n- add .*init.rodata to modpost\u0027s sets of init sections\n- make modpost warn about references between meminit and cpuinit\n  as well as memexit and cpuexit sections (as CPU and memory\n  hotplug are independently selectable features)\n\nSigned-off-by: Jan Beulich \u003cjbeulich@novell.com\u003e\nSigned-off-by: Sam Ravnborg \u003csam@ravnborg.org\u003e\n"
    },
    {
      "commit": "44347d947f628060b92449702071bfe1d31dfb75",
      "tree": "c6ed74610d5b3295df4296659f80f5feb94b28cc",
      "parents": [
        "d94fc523f3c35bd8013f04827e94756cbc0212f4",
        "413f81eba35d6ede9289b0c8a920c013a84fac71"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu May 07 11:17:13 2009 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu May 07 11:17:34 2009 +0200"
      },
      "message": "Merge branch \u0027linus\u0027 into tracing/core\n\nMerge reason: tracing/core was on a .30-rc1 base and was missing out on\n              on a handful of tracing fixes present in .30-rc5-almost.\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "27b1833279995e7c290a40cac4ef36ccea7e9283",
      "tree": "7efbe3f8c9dad692ea7a8bc04c6be2303b1296e6",
      "parents": [
        "a0871e8cb8c3f5ee2ecc560ae73a35cd420440f9"
      ],
      "author": {
        "name": "Tim Abbott",
        "email": "tabbott@MIT.EDU",
        "time": "Mon Apr 27 14:02:27 2009 -0400"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Apr 27 19:51:58 2009 -0700"
      },
      "message": "Remove unused support code for refok sections.\n\nThe old refok sections\n\n  .text.init.refok\n  .data.init.refok\n  .exit.text.refok\n\nhave been deprecated since commit\n312b1485fb509c9bc32eda28ad29537896658cb8.  After the other patches in\nthis patch series nothing is put in these sections, so clean things up\nby eliminating all the remaining references to them.\n\nSigned-off-by: Tim Abbott \u003ctabbott@mit.edu\u003e\nAcked-by: Sam Ravnborg \u003csam@ravnborg.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "c80d471a476b6d6fe0bc1fd25293c24c66b7aaaf",
      "tree": "e7e6cf35915186c614728dadbd95c5197bff0075",
      "parents": [
        "0c8454f56623505a99463405fd7d5664adfbb094"
      ],
      "author": {
        "name": "Tim Abbott",
        "email": "tabbott@MIT.EDU",
        "time": "Sat Apr 25 22:10:56 2009 -0400"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun Apr 26 09:20:38 2009 -0700"
      },
      "message": "Add new HEAD_TEXT_SECTION macro.\n\nThis patch is preparation for replacing all uses of \".head.text\" or\n\".text.head\" in the kernel with macros, so that the section name can\nlater be changed without having to touch a lot of the kernel.\n\nSince some linker scripts do more complex things than referencing\nHEAD_TEXT, we add a HEAD_TEXT_SECTION macro that just contains the\nactual name.\n\nI\u0027ve defined HEAD_TEXT_SECTION in a new header,\ninclude/linux/section-names.h, so that this section name only needs to\nappear in one place.  I anticipate creating similar macro structures\nfor a number of other section names.\n\nThe long-term goal here is to be able to change the kernel\u0027s magic\nsection names to those that are compatible with -ffunction-sections\n-fdata-sections.  This requires renaming all magic sections with names\nof the form \".text.foo\".\n\nSigned-off-by: Tim Abbott \u003ctabbott@mit.edu\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "5f77a88b3f8268b11940b51d2e03d26a663ceb90",
      "tree": "b9540f9391b6f03860666193787619b5bdff1375",
      "parents": [
        "77d9f465d46fd67cdb82ee5e1ab99dd57a17c486"
      ],
      "author": {
        "name": "Tom Zanussi",
        "email": "tzanussi@gmail.com",
        "time": "Wed Apr 08 03:14:01 2009 -0500"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Apr 14 00:00:55 2009 +0200"
      },
      "message": "tracing/infrastructure: separate event tracer from event support\n\nAdd a new config option, CONFIG_EVENT_TRACING that gets selected\nwhen CONFIG_TRACING is selected and adds everything needed by the stuff\nin trace_export - basically all the event tracing support needed by e.g.\nbprint, minus the actual events, which are only included if\nCONFIG_EVENT_TRACER is selected.\n\nSo CONFIG_EVENT_TRACER can be used to turn on or off the generated events\n(what I think of as the \u0027event tracer\u0027), while CONFIG_EVENT_TRACING turns\non or off the base event tracing support used by both the event tracer and\nthe other things such as bprint that can\u0027t be configured out.\n\nSigned-off-by: Tom Zanussi \u003ctzanussi@gmail.com\u003e\nCc: Steven Rostedt \u003crostedt@goodmis.org\u003e\nCc: fweisbec@gmail.com\nLKML-Reference: \u003c1239178441.10295.34.camel@tropicana\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "8302294f43250dc337108c51882a6007f2b1e2e0",
      "tree": "85acd4440799c46a372df9cad170fa0c21e59096",
      "parents": [
        "4fe70410d9a219dabb47328effccae7e7f2a6e26",
        "2e572895bf3203e881356a4039ab0fa428ed2639"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Apr 01 21:54:19 2009 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Apr 02 00:49:02 2009 +0200"
      },
      "message": "Merge branch \u0027tracing/core-v2\u0027 into tracing-for-linus\n\nConflicts:\n\tinclude/linux/slub_def.h\n\tlib/Kconfig.debug\n\tmm/slob.c\n\tmm/slub.c\n"
    },
    {
      "commit": "6e15cf04860074ad032e88c306bea656bbdd0f22",
      "tree": "c346383bb7563e8d66b2f4a502f875b259c34870",
      "parents": [
        "be0ea69674ed95e1e98cb3687a241badc756d228",
        "60db56422043aaa455ac7f858ce23c273220f9d9"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Mar 26 21:39:17 2009 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Mar 27 17:28:43 2009 +0100"
      },
      "message": "Merge branch \u0027core/percpu\u0027 into percpu-cpumask-x86-for-linus-2\n\nConflicts:\n\tarch/parisc/kernel/irq.c\n\tarch/x86/include/asm/fixmap_64.h\n\tarch/x86/include/asm/setup.h\n\tkernel/irq/handle.c\n\nSemantic merge:\n        arch/x86/include/asm/fixmap.h\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "e9d376f0fa66bd630fe27403669c6ae6c22a868f",
      "tree": "6eadef32eb421647ae98d88341b9aceb259aaf22",
      "parents": [
        "095160aee954688a9bad225952c4bee546541e19"
      ],
      "author": {
        "name": "Jason Baron",
        "email": "jbaron@redhat.com",
        "time": "Thu Feb 05 11:51:38 2009 -0500"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Tue Mar 24 16:38:26 2009 -0700"
      },
      "message": "dynamic debug: combine dprintk and dynamic printk\n\nThis patch combines Greg Bank\u0027s dprintk() work with the existing dynamic\nprintk patchset, we are now calling it \u0027dynamic debug\u0027.\n\nThe new feature of this patchset is a richer /debugfs control file interface,\n(an example output from my system is at the bottom), which allows fined grained\ncontrol over the the debug output. The output can be controlled by function,\nfile, module, format string, and line number.\n\nfor example, enabled all debug messages in module \u0027nf_conntrack\u0027:\n\necho -n \u0027module nf_conntrack +p\u0027 \u003e /mnt/debugfs/dynamic_debug/control\n\nto disable them:\n\necho -n \u0027module nf_conntrack -p\u0027 \u003e /mnt/debugfs/dynamic_debug/control\n\nA further explanation can be found in the documentation patch.\n\nSigned-off-by: Greg Banks \u003cgnb@sgi.com\u003e\nSigned-off-by: Jason Baron \u003cjbaron@redhat.com\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "bed1ffca022cc876fb83161d26670e9b5d3cf36b",
      "tree": "a896c79e9ea1af11f992826f1de7e2ece52fbe33",
      "parents": [
        "f58ba100678f421bdcb000a3c71793f432dfab93"
      ],
      "author": {
        "name": "Frederic Weisbecker",
        "email": "fweisbec@gmail.com",
        "time": "Fri Mar 13 15:42:11 2009 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Mar 13 16:57:42 2009 +0100"
      },
      "message": "tracing/syscalls: core infrastructure for syscalls tracing, enhancements\n\nImpact: new feature\n\nThis adds the generic support for syscalls tracing. This is\ncurrently exploited through a devoted tracer but other tracing\nengines can use it. (They just have to play with\n{start,stop}_ftrace_syscalls() and use the display callbacks\nunless they want to override them.)\n\nThe syscalls prototypes definitions are abused here to steal\nsome metadata informations:\n\n- syscall name, param types, param names, number of params\n\nThe syscall addr is not directly saved during this definition\nbecause we don\u0027t know if its prototype is available in the\nnamespace. But we don\u0027t really need it. The arch has just to\nbuild a function able to resolve the syscall number to its\nmetadata struct.\n\nThe current tracer prints the syscall names, parameters names\nand values (and their types optionally). Currently the value is\na raw hex but higher level values diplaying is on my TODO list.\n\nSigned-off-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nLKML-Reference: \u003c1236955332-10133-2-git-send-email-fweisbec@gmail.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "12e87e36e0141c08dbc8b2177c93c75fb18ad7e5",
      "tree": "a82ac66b372ddc7ee97fe095222232875b6737d4",
      "parents": [
        "42b40b3d55f5782b00b74d9105c3565fbfa5cb80",
        "c3ffc7a40b7e94b094efe1c8ab4e24370a782b65",
        "7bffc23e56e92c14b787bf4d95249a32085bfed5",
        "7a203f3b089be4410fe065dd9927027eade94557"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Mar 10 09:56:25 2009 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Mar 10 09:56:25 2009 +0100"
      },
      "message": "Merge branches \u0027tracing/doc\u0027, \u0027tracing/ftrace\u0027, \u0027tracing/printk\u0027 and \u0027linus\u0027 into tracing/core\n"
    },
    {
      "commit": "8a20d84d09ab5d121f989cd99e4fc5f4b49f98ba",
      "tree": "ac0df056602e4be2fd70a89ac033b911667a2fae",
      "parents": [
        "9de36825b321fe9fe9cf73260554251af579f4ca"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Mar 09 10:09:06 2009 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Mar 09 10:11:08 2009 +0100"
      },
      "message": "tracing: trace_printk() fix, move format array to data section\n\nImpact: fix kernel crash when using trace_printk()\n\ntrace_printk_fmt section is defined into the readonly section.\nBut we do:\n\n\ttrace_printk_fmt \u003d fmt;\n\nto fill in that table of format strings - which is not read-only.\nUnder CONFIG_DEBUG_RODATA\u003dy this crashes ...\n\nCc: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nCc: Steven Rostedt \u003crostedt@goodmis.org\u003e\nCc: Peter Zijlstra \u003cpeterz@infradead.org\u003e\nLKML-Reference: \u003c1236356510-8381-5-git-send-email-fweisbec@gmail.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "dba58e39ced7af63f2748d12bbb2b4ac83c72391",
      "tree": "ee15a5e7667b51d0d0f7e8cb39064652f7c84c28",
      "parents": [
        "9de36825b321fe9fe9cf73260554251af579f4ca",
        "78ff7fae04554b49d29226ed12536268c2500d1f"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Sun Mar 08 16:48:51 2009 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Sun Mar 08 16:48:51 2009 +0100"
      },
      "message": "Merge branches \u0027tracing/doc\u0027, \u0027tracing/ftrace\u0027, \u0027tracing/printk\u0027 and \u0027tracing/textedit\u0027 into tracing/core\n"
    },
    {
      "commit": "1ba28e02a18cbdbea123836f6c98efb09cbf59ec",
      "tree": "41df06a06c702152902ffd7250f284a6efe9b0da",
      "parents": [
        "1427cdf0592368bdec57276edaf714040ee8744f"
      ],
      "author": {
        "name": "Lai Jiangshan",
        "email": "laijs@cn.fujitsu.com",
        "time": "Fri Mar 06 17:21:48 2009 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Mar 06 17:59:11 2009 +0100"
      },
      "message": "tracing: add trace_bprintk()\n\nImpact: add a generic printk() for tracing, like trace_printk()\n\ntrace_bprintk() uses the infrastructure to record events on ring_buffer.\n\n[ fweisbec@gmail.com: ported to latest -tip, made it work if\n  !CONFIG_MODULES, never free the format strings from modules\n  because we can\u0027t keep track of them and conditionnaly create\n  the ftrace format strings section (reported by Steven Rostedt) ]\n\nSigned-off-by: Lai Jiangshan \u003claijs@cn.fujitsu.com\u003e\nSigned-off-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nAcked-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\nLKML-Reference: \u003c1236356510-8381-4-git-send-email-fweisbec@gmail.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "f0ef03985130287c6c84ebe69416cf790e6cc00e",
      "tree": "3ecb04cc4d82e5fc3ae5f1747e6da172ae8cbcb7",
      "parents": [
        "16097439703bcd38e9fe5608c12add6dacb825ea",
        "31bbed527e7039203920c51c9fb48c27aed0820c"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Mar 06 16:44:14 2009 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Mar 06 16:45:01 2009 +0100"
      },
      "message": "Merge branch \u0027x86/core\u0027 into tracing/textedit\n\nConflicts:\n\tarch/x86/Kconfig\n\tblock/blktrace.c\n\tkernel/irq/handle.c\n\nSemantic conflict:\n\tkernel/trace/blktrace.c\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "b77e38aa240c3bd9c55c98b9f7c81541e042eae5",
      "tree": "bbb40993e76edc52d2cae1040b941ba4e4d2f965",
      "parents": [
        "7c37730cd31ddb2d3a1da142af9b18c29b8c433b"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Tue Feb 24 10:21:36 2009 -0500"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Tue Feb 24 21:54:05 2009 -0500"
      },
      "message": "tracing: add event trace infrastructure\n\nThis patch creates the event tracing infrastructure of ftrace.\nIt will create the files:\n\n /debug/tracing/available_events\n /debug/tracing/set_event\n\nThe available_events will list the trace points that have been\nregistered with the event tracer.\n\nset_events will allow the user to enable or disable an event hook.\n\nexample:\n\n # echo sched_wakeup \u003e /debug/tracing/set_event\n\nWill enable the sched_wakeup event (if it is registered).\n\n # echo \"!sched_wakeup\" \u003e\u003e /debug/tracing/set_event\n\nWill disable the sched_wakeup event (and only that event).\n\n # echo \u003e /debug/tracing/set_event\n\nWill disable all events (notice the \u0027\u003e\u0027)\n\n # cat /debug/tracing/available_events \u003e /debug/tracing/set_event\n\nWill enable all registered event hooks.\n\nSigned-off-by: Steven Rostedt \u003csrostedt@redhat.com\u003e\n"
    },
    {
      "commit": "3ac6cffea4aa18007a454a7442da2855882f403d",
      "tree": "4e784abaa1715728cb8fd2adbce793e30304d3b7",
      "parents": [
        "c43e0e46adf79c321ed3fbf0351e1005fb8a2413"
      ],
      "author": {
        "name": "Tejun Heo",
        "email": "tj@kernel.org",
        "time": "Fri Jan 30 16:32:22 2009 +0900"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Jan 30 23:27:46 2009 +0100"
      },
      "message": "linker script: use separate simpler definition for PERCPU()\n\nImpact: fix linker screwup on x86_32\n\nRecent x86_64 zerobased patches introduced PERCPU_VADDR() to put\n.data.percpu to a predefined address and re-defined PERCPU() in terms\nof it.  The new macro defined one extra symbol, __per_cpu_load, for\nLMA of the section so that the init data could be accessed.  This new\nsymbol introduced the following problems to x86_32.\n\n1. If __per_cpu_load is defined outside of .data.percpu as an absolute\n   symbol, relocation generation for relocatable kernel fails due to\n   absolute relocation.\n\n2. If __per_cpu_load is put inside .data.percpu with absolute address\n   assignment to work around #1, linker gets confused and under\n   certain configurations ends up relocating the symbol against\n   .data.percpu such that the load address gets added on top of\n   already set load address.\n\nAs x86_32 doesn\u0027t use predefined address for .data.percpu, there\u0027s no\nneed for it to care about the possibility of __per_cpu_load being\ndifferent from __per_cpu_start.\n\nThis patch defines PERCPU() separately so that __per_cpu_load is\ndefined inside .data.percpu so that everything is ordinary\nlinking-wise.\n\nSigned-off-by: Tejun Heo \u003ctj@kernel.org\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "dba3d36b2f0842ed7f25c33cd3a2ccdb3d0df9db",
      "tree": "6373a843665115872a1476f43322c2e2ac185ea3",
      "parents": [
        "4369f1fb7cd4cf777312f43e1cb9aa5504fc4125"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Jan 29 17:10:12 2009 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Jan 29 17:18:54 2009 +0100"
      },
      "message": "Revert \"generic, x86: fix __per_cpu_load relocation\"\n\nThis reverts commit 5a611268b69f05262936dd177205acbce4471358.\n\nIt is causing occasional boot crashes, caused by certain\nlinker versions (GNU ld version 2.18.50.0.6-2 20080403) messing up:\n\n 82dcc000 D __per_cpu_load\n c16e6000 A __per_cpu_load_abs\n\nThe __per_cpu_load value is out of whack. Hpa noticed the following\ndetail:\n\n  * (gdb) p/x -(0xc16e6000-0x82dcc000)\n  * $2 \u003d 0xc16e6000\n  * I.e. one is the other \u003c\u003c 1\n\nThe two symbols should be equal.\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "5a611268b69f05262936dd177205acbce4471358",
      "tree": "279e49c5b3f597790817959c63070ff989d51952",
      "parents": [
        "99d0000f710f3432182761f65f9658f1cf0bf455"
      ],
      "author": {
        "name": "Brian Gerst",
        "email": "brgerst@gmail.com",
        "time": "Mon Jan 26 08:44:05 2009 -0500"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Jan 26 15:18:10 2009 +0100"
      },
      "message": "generic, x86: fix __per_cpu_load relocation\n\nThis patch fixes this linker error:\n\n WARNING: Absolute relocations present\n Offset     Info     Type     Sym.Value Sym.Name\n c0a4e07d 00e78001   R_386_32 c0ab0000  __per_cpu_load\n\nNow, __per_cpu_load is a section-relative symbol:\n\n c0aa4000 D __per_cpu_load\n c0aa4000 A __per_cpu_load_abs\n\nSigned-off-by: Brian Gerst \u003cbrgerst@gmail.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "6b7c38d55587f43bcd2cbce3a98b1c0826982090",
      "tree": "63de0468a7bb17b3a6e3c130aeee709ca0fb4602",
      "parents": [
        "0d974d4592708f85044751817da4b7016e1b0602"
      ],
      "author": {
        "name": "Tejun Heo",
        "email": "tj@kernel.org",
        "time": "Mon Jan 19 12:21:28 2009 +0900"
      },
      "committer": {
        "name": "Tejun Heo",
        "email": "tj@kernel.org",
        "time": "Tue Jan 20 12:29:20 2009 +0900"
      },
      "message": "linker script: kill PERCPU_VADDR_PREALLOC()\n\nImpact: cleanup\n\nWith .data.percpu.first in place, PERCPU_VADDR_PREALLOC() is no longer\nnecessary.  Kill it.\n\nSigned-off-by: Tejun Heo \u003ctj@kernel.org\u003e\n"
    },
    {
      "commit": "0bd74fa8e29dcad98f7e8ffe01ec05fb3326abaf",
      "tree": "8b2768ec721d649e1c9d0c8cff4caf44a5326263",
      "parents": [
        "8ce031972b40da58c268caba8c5ea3c0856d7131"
      ],
      "author": {
        "name": "Brian Gerst",
        "email": "brgerst@gmail.com",
        "time": "Mon Jan 19 12:21:27 2009 +0900"
      },
      "committer": {
        "name": "Tejun Heo",
        "email": "tj@kernel.org",
        "time": "Tue Jan 20 12:29:19 2009 +0900"
      },
      "message": "percpu: refactor percpu.h\n\nImpact: cleanup\n\nRefactor the DEFINE_PER_CPU_* macros and add .data.percpu.first\nsection.\n\nSigned-off-by: Brian Gerst \u003cbrgerst@gmail.com\u003e\nSigned-off-by: Tejun Heo \u003ctj@kernel.org\u003e\n"
    },
    {
      "commit": "145cd30bac885dffad9db9d487baad07b68a3d04",
      "tree": "0b5f34ac563fe83f5b40adb36d7fa1e16624f5d9",
      "parents": [
        "cd3adf52309867955d6e2175246b526442235805"
      ],
      "author": {
        "name": "Tejun Heo",
        "email": "tj@kernel.org",
        "time": "Sat Jan 17 14:42:50 2009 +0900"
      },
      "committer": {
        "name": "Tejun Heo",
        "email": "tj@kernel.org",
        "time": "Sat Jan 17 15:26:12 2009 +0900"
      },
      "message": "linker script: add missing VMLINUX_SYMBOL\n\nThe newly added PERCPU_*() macros define and use __per_cpu_load but\nVMLINUX_SYMBOL() was missing from usages causing build failures on\narchs where linker visible symbol is different from C symbols\n(e.g. blackfin).\n\nSigned-off-by: Tejun Heo \u003ctj@kernel.org\u003e\n"
    },
    {
      "commit": "1a51e3a0aed18767cf2762e95456ecfeb0bca5e6",
      "tree": "2d930218ef1072a59f7dac0f97bb03aa02796c8c",
      "parents": [
        "c8f3329a0ddd751241e96b4100df7eda14b2cbc6"
      ],
      "author": {
        "name": "Tejun Heo",
        "email": "tj@kernel.org",
        "time": "Tue Jan 13 20:41:35 2009 +0900"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Jan 16 14:19:46 2009 +0100"
      },
      "message": "x86: fold pda into percpu area on SMP\n\n[ Based on original patch from Christoph Lameter and Mike Travis. ]\n\nCurrently pdas and percpu areas are allocated separately.  %gs points\nto local pda and percpu area can be reached using pda-\u003edata_offset.\nThis patch folds pda into percpu area.\n\nDue to strange gcc requirement, pda needs to be at the beginning of\nthe percpu area so that pda-\u003estack_canary is at %gs:40.  To achieve\nthis, a new percpu output section macro - PERCPU_VADDR_PREALLOC() - is\nadded and used to reserve pda sized chunk at the start of the percpu\narea.\n\nAfter this change, for boot cpu, %gs first points to pda in the\ndata.init area and later during setup_per_cpu_areas() gets updated to\npoint to the actual pda.  This means that setup_per_cpu_areas() need\nto reload %gs for CPU0 while clearing pda area for other cpus as cpu0\nalready has modified it when control reaches setup_per_cpu_areas().\n\nThis patch also removes now unnecessary get_local_pda() and its call\nsites.\n\nA lot of this patch is taken from Mike Travis\u0027 \"x86_64: Fold pda into\nper cpu area\" patch.\n\nSigned-off-by: Tejun Heo \u003ctj@kernel.org\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "3e5d8f978435bb9ba4dfe3f4514e65e7885db1a9",
      "tree": "1ce55b2ec16a0bd59a29857e05215960d463a1d8",
      "parents": [
        "a698c823e15149941b0f0281527d0c0d1daf2639"
      ],
      "author": {
        "name": "Tejun Heo",
        "email": "tj@kernel.org",
        "time": "Tue Jan 13 20:41:35 2009 +0900"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Jan 16 14:19:14 2009 +0100"
      },
      "message": "x86: make percpu symbols zerobased on SMP\n\n[ Based on original patch from Christoph Lameter and Mike Travis. ]\n\nThis patch makes percpu symbols zerobased on x86_64 SMP by adding\nPERCPU_VADDR() to vmlinux.lds.h which helps setting explicit vaddr on\nthe percpu output section and using it in vmlinux_64.lds.S.  A new\nPHDR is added as existing ones cannot contain sections near address\nzero.  PERCPU_VADDR() also adds a new symbol __per_cpu_load which\nalways points to the vaddr of the loaded percpu data.init region.\n\nThe following adjustments have been made to accomodate the address\nchange.\n\n* code to locate percpu gdt_page in head_64.S is updated to add the\n  load address to the gdt_page offset.\n\n* __per_cpu_load is used in places where access to the init data area\n  is necessary.\n\n* pda-\u003edata_offset is initialized soon after C code is entered as zero\n  value doesn\u0027t work anymore.\n\nThis patch is mostly taken from Mike Travis\u0027 \"x86_64: Base percpu\nvariables at zero\" patch.\n\nSigned-off-by: Tejun Heo \u003ctj@kernel.org\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "a0343e823184070f55364d8359f832dcb33c57c7",
      "tree": "9ec950c5881e244a741f21f0c3ab262fbae0f0fb",
      "parents": [
        "f3134de60624829a57741c1f3796847d4de165f6"
      ],
      "author": {
        "name": "Frederic Weisbecker",
        "email": "fweisbec@gmail.com",
        "time": "Tue Dec 09 23:53:16 2008 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Dec 12 11:14:07 2008 +0100"
      },
      "message": "tracing/function-graph-tracer: add a new .irqentry.text section\n\nImpact: let the function-graph-tracer be aware of the irq entrypoints\n\nAdd a new .irqentry.text section to store the irq entrypoints functions\ninside the same section. This way, the tracer will be able to signal\nan interrupts triggering on output by recognizing these entrypoints.\n\nAlso, make this section recordable for dynamic tracing.\n\nSigned-off-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "2bcd521a684cc94befbe2ce7d5b613c841b0d304",
      "tree": "63bc4dbc52defa27c8cac9e46dddadfcb36c1c7a",
      "parents": [
        "bac28bfe42ba98ee67503f78984d1d5e1ebbbb78"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Fri Nov 21 01:30:54 2008 -0500"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Sun Nov 23 11:41:01 2008 +0100"
      },
      "message": "trace: profile all if conditionals\n\nImpact: feature to profile if statements\n\nThis patch adds a branch profiler for all if () statements.\nThe results will be found in:\n\n  /debugfs/tracing/profile_branch\n\nFor example:\n\n   miss      hit    %        Function                  File              Line\n ------- ---------  -        --------                  ----              ----\n       0        1 100 x86_64_start_reservations      head64.c             127\n       0        1 100 copy_bootdata                  head64.c             69\n       1        0   0 x86_64_start_kernel            head64.c             111\n      32        0   0 set_intr_gate                  desc.h               319\n       1        0   0 reserve_ebda_region            head.c               51\n       1        0   0 reserve_ebda_region            head.c               47\n       0        1 100 reserve_ebda_region            head.c               42\n       0        0   X maxcpus                        main.c               165\n\nMiss means the branch was not taken. Hit means the branch was taken.\nThe percent is the percentage the branch was taken.\n\nThis adds a significant amount of overhead and should only be used\nby those analyzing their system.\n\nSigned-off-by: Steven Rostedt \u003csrostedt@redhat.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "45b797492a0758e64dff74e9db70e1f65e0603a5",
      "tree": "75db13ee888a6c7f90c92c17a743bff8ce42d86a",
      "parents": [
        "42f565e116e0408b5ddc21a33c4a4d41fd572420"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Fri Nov 21 00:40:40 2008 -0500"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Sun Nov 23 11:39:56 2008 +0100"
      },
      "message": "trace: consolidate unlikely and likely profiler\n\nImpact: clean up to make one profiler of like and unlikely tracer\n\nThe likely and unlikely profiler prints out the file and line numbers\nof the annotated branches that it is profiling. It shows the number\nof times it was correct or incorrect in its guess. Having two\ndifferent files or sections for that matter to tell us if it was a\nlikely or unlikely is pretty pointless. We really only care if\nit was correct or not.\n\nSigned-off-by: Steven Rostedt \u003csrostedt@redhat.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "7e066fb870fcd1025ec3ba7bbde5d541094f4ce1",
      "tree": "52acda06de25c029b9834110d7bf6b4abc50353b",
      "parents": [
        "32f85742778dfc2c74975cf0b9f5bdb13470cb32"
      ],
      "author": {
        "name": "Mathieu Desnoyers",
        "email": "mathieu.desnoyers@polymtl.ca",
        "time": "Fri Nov 14 17:47:47 2008 -0500"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Sun Nov 16 09:01:36 2008 +0100"
      },
      "message": "tracepoints: add DECLARE_TRACE() and DEFINE_TRACE()\n\nImpact: API *CHANGE*. Must update all tracepoint users.\n\nAdd DEFINE_TRACE() to tracepoints to let them declare the tracepoint\nstructure in a single spot for all the kernel. It helps reducing memory\nconsumption, especially when declaring a lot of tracepoints, e.g. for\nkmalloc tracing.\n\n*API CHANGE WARNING*: now, DECLARE_TRACE() must be used in headers for\ntracepoint declarations rather than DEFINE_TRACE(). This is the sane way\nto do it. The name previously used was misleading.\n\nUpdates scheduler instrumentation to follow this API change.\n\nSigned-off-by: Mathieu Desnoyers \u003cmathieu.desnoyers@polymtl.ca\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "2ed84eeb8808cf3c9f039213ca137ffd7d753f0e",
      "tree": "3aa22269a1fd5ed0b66826120ca9b572400962b5",
      "parents": [
        "68d119f0a66f7e3663304343b072e56a2693446b"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Wed Nov 12 15:24:24 2008 -0500"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Nov 12 22:27:58 2008 +0100"
      },
      "message": "trace: rename unlikely profiler to branch profiler\n\nImpact: name change of unlikely tracer and profiler\n\nIngo Molnar suggested changing the config from UNLIKELY_PROFILE\nto BRANCH_PROFILING. I never did like the \"unlikely\" name so I\nwent one step farther, and renamed all the unlikely configurations\nto a \"BRANCH\" variant.\n\nSigned-off-by: Steven Rostedt \u003csrostedt@redhat.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "1f0d69a9fc815db82f15722bf05227190b1d714d",
      "tree": "21e0a9664fd47827d9168938a965b39b85b6e287",
      "parents": [
        "cb9382e5a94e54d0356d730954396c746ae66d6e"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Wed Nov 12 00:14:39 2008 -0500"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Nov 12 11:52:02 2008 +0100"
      },
      "message": "tracing: profile likely and unlikely annotations\n\nImpact: new unlikely/likely profiler\n\nAndrew Morton recently suggested having an in-kernel way to profile\nlikely and unlikely macros. This patch achieves that goal.\n\nWhen configured, every(*) likely and unlikely macro gets a counter attached\nto it. When the condition is hit, the hit and misses of that condition\nare recorded. These numbers can later be retrieved by:\n\n  /debugfs/tracing/profile_likely    - All likely markers\n  /debugfs/tracing/profile_unlikely  - All unlikely markers.\n\n# cat /debug/tracing/profile_unlikely | head\n correct incorrect  %        Function                  File              Line\n ------- ---------  -        --------                  ----              ----\n    2167        0   0 do_arch_prctl                  process_64.c         832\n       0        0   0 do_arch_prctl                  process_64.c         804\n    2670        0   0 IS_ERR                         err.h                34\n   71230     5693   7 __switch_to                    process_64.c         673\n   76919        0   0 __switch_to                    process_64.c         639\n   43184    33743  43 __switch_to                    process_64.c         624\n   12740    64181  83 __switch_to                    process_64.c         594\n   12740    64174  83 __switch_to                    process_64.c         590\n\n# cat /debug/tracing/profile_unlikely | \\\n  awk \u0027{ if ($3 \u003e 25) print $0; }\u0027 |head -20\n   44963    35259  43 __switch_to                    process_64.c         624\n   12762    67454  84 __switch_to                    process_64.c         594\n   12762    67447  84 __switch_to                    process_64.c         590\n    1478      595  28 syscall_get_error              syscall.h            51\n       0     2821 100 syscall_trace_leave            ptrace.c             1567\n       0        1 100 native_smp_prepare_cpus        smpboot.c            1237\n   86338   265881  75 calc_delta_fair                sched_fair.c         408\n  210410   108540  34 calc_delta_mine                sched.c              1267\n       0    54550 100 sched_info_queued              sched_stats.h        222\n   51899    66435  56 pick_next_task_fair            sched_fair.c         1422\n       6       10  62 yield_task_fair                sched_fair.c         982\n    7325     2692  26 rt_policy                      sched.c              144\n       0     1270 100 pre_schedule_rt                sched_rt.c           1261\n    1268    48073  97 pick_next_task_rt              sched_rt.c           884\n       0    45181 100 sched_info_dequeued            sched_stats.h        177\n       0       15 100 sched_move_task                sched.c              8700\n       0       15 100 sched_move_task                sched.c              8690\n   53167    33217  38 schedule                       sched.c              4457\n       0    80208 100 sched_info_switch              sched_stats.h        270\n   30585    49631  61 context_switch                 sched.c              2619\n\n# cat /debug/tracing/profile_likely | awk \u0027{ if ($3 \u003e 25) print $0; }\u0027\n   39900    36577  47 pick_next_task                 sched.c              4397\n   20824    15233  42 switch_mm                      mmu_context_64.h     18\n       0        7 100 __cancel_work_timer            workqueue.c          560\n     617    66484  99 clocksource_adjust             timekeeping.c        456\n       0   346340 100 audit_syscall_exit             auditsc.c            1570\n      38   347350  99 audit_get_context              auditsc.c            732\n       0   345244 100 audit_syscall_entry            auditsc.c            1541\n      38     1017  96 audit_free                     auditsc.c            1446\n       0     1090 100 audit_alloc                    auditsc.c            862\n    2618     1090  29 audit_alloc                    auditsc.c            858\n       0        6 100 move_masked_irq                migration.c          9\n       1      198  99 probe_sched_wakeup             trace_sched_switch.c 58\n       2        2  50 probe_wakeup                   trace_sched_wakeup.c 227\n       0        2 100 probe_wakeup_sched_switch      trace_sched_wakeup.c 144\n    4514     2090  31 __grab_cache_page              filemap.c            2149\n   12882   228786  94 mapping_unevictable            pagemap.h            50\n       4       11  73 __flush_cpu_slab               slub.c               1466\n  627757   330451  34 slab_free                      slub.c               1731\n    2959    61245  95 dentry_lru_del_init            dcache.c             153\n     946     1217  56 load_elf_binary                binfmt_elf.c         904\n     102       82  44 disk_put_part                  genhd.h              206\n       1        1  50 dst_gc_task                    dst.c                82\n       0       19 100 tcp_mss_split_point            tcp_output.c         1126\n\nAs you can see by the above, there\u0027s a bit of work to do in rethinking\nthe use of some unlikelys and likelys. Note: the unlikely case had 71 hits\nthat were more than 25%.\n\nNote:  After submitting my first version of this patch, Andrew Morton\n  showed me a version written by Daniel Walker, where I picked up\n  the following ideas from:\n\n  1)  Using __builtin_constant_p to avoid profiling fixed values.\n  2)  Using __FILE__ instead of instruction pointers.\n  3)  Using the preprocessor to stop all profiling of likely\n       annotations from vsyscall_64.c.\n\nThanks to Andrew Morton, Arjan van de Ven, Theodore Tso and Ingo Molnar\nfor their feed back on this patch.\n\n(*) Not ever unlikely is recorded, those that are used by vsyscalls\n (a few of them) had to have profiling disabled.\n\nSigned-off-by: Steven Rostedt \u003csrostedt@redhat.com\u003e\nCc: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nCc: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nCc: Theodore Tso \u003ctytso@mit.edu\u003e\nCc: Arjan van de Ven \u003carjan@infradead.org\u003e\nCc: Steven Rostedt \u003csrostedt@redhat.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "92b29b86fe2e183d44eb467e5e74a5f718ef2e43",
      "tree": "1bac8a1aa11d47322b66d10ec3a370016d843d06",
      "parents": [
        "b9d7ccf56be1ac77b71a284a1c0e6337f9a7aff0",
        "98d9c66ab07471006fd7910cb16453581c41a3e7"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Oct 20 13:35:07 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Oct 20 13:35:07 2008 -0700"
      },
      "message": "Merge branch \u0027tracing-v28-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip\n\n* \u0027tracing-v28-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip: (131 commits)\n  tracing/fastboot: improve help text\n  tracing/stacktrace: improve help text\n  tracing/fastboot: fix initcalls disposition in bootgraph.pl\n  tracing/fastboot: fix bootgraph.pl initcall name regexp\n  tracing/fastboot: fix issues and improve output of bootgraph.pl\n  tracepoints: synchronize unregister static inline\n  tracepoints: tracepoint_synchronize_unregister()\n  ftrace: make ftrace_test_p6nop disassembler-friendly\n  markers: fix synchronize marker unregister static inline\n  tracing/fastboot: add better resolution to initcall debug/tracing\n  trace: add build-time check to avoid overrunning hex buffer\n  ftrace: fix hex output mode of ftrace\n  tracing/fastboot: fix initcalls disposition in bootgraph.pl\n  tracing/fastboot: fix printk format typo in boot tracer\n  ftrace: return an error when setting a nonexistent tracer\n  ftrace: make some tracers reentrant\n  ring-buffer: make reentrant\n  ring-buffer: move page indexes into page headers\n  tracing/fastboot: only trace non-module initcalls\n  ftrace: move pc counter in irqtrace\n  ...\n\nManually fix conflicts:\n - init/main.c: initcall tracing\n - kernel/module.c: verbose level vs tracepoints\n - scripts/bootgraph.pl: fallout from cherry-picking commits.\n"
    },
    {
      "commit": "346e15beb5343c2eb8216d820f2ed8f150822b08",
      "tree": "6433cf2980bbfbed4a9482c5edb156fc8371e071",
      "parents": [
        "33376c1c043c05077b4ac79c33804266f6c45e49"
      ],
      "author": {
        "name": "Jason Baron",
        "email": "jbaron@redhat.com",
        "time": "Tue Aug 12 16:46:19 2008 -0400"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Thu Oct 16 09:24:47 2008 -0700"
      },
      "message": "driver core: basic infrastructure for per-module dynamic debug messages\n\nBase infrastructure to enable per-module debug messages.\n\nI\u0027ve introduced CONFIG_DYNAMIC_PRINTK_DEBUG, which when enabled centralizes\ncontrol of debugging statements on a per-module basis in one /proc file,\ncurrently, \u003cdebugfs\u003e/dynamic_printk/modules. When, CONFIG_DYNAMIC_PRINTK_DEBUG,\nis not set, debugging statements can still be enabled as before, often by\ndefining \u0027DEBUG\u0027 for the proper compilation unit. Thus, this patch set has no\naffect when CONFIG_DYNAMIC_PRINTK_DEBUG is not set.\n\nThe infrastructure currently ties into all pr_debug() and dev_dbg() calls. That\nis, if CONFIG_DYNAMIC_PRINTK_DEBUG is set, all pr_debug() and dev_dbg() calls\ncan be dynamically enabled/disabled on a per-module basis.\n\nFuture plans include extending this functionality to subsystems, that define \ntheir own debug levels and flags.\n\nUsage:\n\nDynamic debugging is controlled by the debugfs file, \n\u003cdebugfs\u003e/dynamic_printk/modules. This file contains a list of the modules that\ncan be enabled. The format of the file is as follows:\n\n\t\u003cmodule_name\u003e \u003cenabled\u003d0/1\u003e\n\t\t.\n\t\t.\n\t\t.\n\n\t\u003cmodule_name\u003e : Name of the module in which the debug call resides\n\t\u003cenabled\u003d0/1\u003e : whether the messages are enabled or not\n\nFor example:\n\n\tsnd_hda_intel enabled\u003d0\n\tfixup enabled\u003d1\n\tdriver enabled\u003d0\n\nEnable a module:\n\n\t$echo \"set enabled\u003d1 \u003cmodule_name\u003e\" \u003e dynamic_printk/modules\n\nDisable a module:\n\n\t$echo \"set enabled\u003d0 \u003cmodule_name\u003e\" \u003e dynamic_printk/modules\n\nEnable all modules:\n\n\t$echo \"set enabled\u003d1 all\" \u003e dynamic_printk/modules\n\nDisable all modules:\n\n\t$echo \"set enabled\u003d0 all\" \u003e dynamic_printk/modules\n\nFinally, passing \"dynamic_printk\" at the command line enables\ndebugging for all modules. This mode can be turned off via the above\ndisable command.\n\n[gkh: minor cleanups and tweaks to make the build work quietly]\n\nSigned-off-by: Jason Baron \u003cjbaron@redhat.com\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n\n"
    },
    {
      "commit": "8da3821ba5634497da63d58a69e24a97697c4a2b",
      "tree": "47d4d097b1cd2aafae2e3596a9ae0d1293228782",
      "parents": [
        "8b1fa1d7b22f386747c7b78b918d4c680c16066f"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Thu Aug 14 15:45:07 2008 -0400"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Oct 14 10:34:40 2008 +0200"
      },
      "message": "ftrace: create __mcount_loc section\n\nThis patch creates a section in the kernel called \"__mcount_loc\".\nThis will hold a list of pointers to the mcount relocation for\neach call site of mcount.\n\nFor example:\n\nobjdump -dr init/main.o\n[...]\nDisassembly of section .text:\n\n0000000000000000 \u003cdo_one_initcall\u003e:\n   0:   55                      push   %rbp\n[...]\n000000000000017b \u003cinit_post\u003e:\n 17b:   55                      push   %rbp\n 17c:   48 89 e5                mov    %rsp,%rbp\n 17f:   53                      push   %rbx\n 180:   48 83 ec 08             sub    $0x8,%rsp\n 184:   e8 00 00 00 00          callq  189 \u003cinit_post+0xe\u003e\n                        185: R_X86_64_PC32      mcount+0xfffffffffffffffc\n[...]\n\nWe will add a section to point to each function call.\n\n   .section __mcount_loc,\"a\",@progbits\n[...]\n   .quad .text + 0x185\n[...]\n\nThe offset to of the mcount call site in init_post is an offset from\nthe start of the section, and not the start of the function init_post.\nThe mcount relocation is at the call site 0x185 from the start of the\n.text section.\n\n  .text + 0x185  \u003d\u003d init_post + 0xa\n\nWe need a way to add this __mcount_loc section in a way that we do not\nlose the relocations after final link.  The .text section here will\nbe attached to all other .text sections after final link and the\noffsets will be meaningless.  We need to keep track of where these\n.text sections are.\n\nTo do this, we use the start of the first function in the section.\ndo_one_initcall.  We can make a tmp.s file with this function as a reference\nto the start of the .text section.\n\n   .section __mcount_loc,\"a\",@progbits\n[...]\n   .quad do_one_initcall + 0x185\n[...]\n\nThen we can compile the tmp.s into a tmp.o\n\n  gcc -c tmp.s -o tmp.o\n\nAnd link it into back into main.o.\n\n  ld -r main.o tmp.o -o tmp_main.o\n  mv tmp_main.o main.o\n\nBut we have a problem.  What happens if the first function in a section\nis not exported, and is a static function. The linker will not let\nthe tmp.o use it.  This case exists in main.o as well.\n\nDisassembly of section .init.text:\n\n0000000000000000 \u003cset_reset_devices\u003e:\n   0:   55                      push   %rbp\n   1:   48 89 e5                mov    %rsp,%rbp\n   4:   e8 00 00 00 00          callq  9 \u003cset_reset_devices+0x9\u003e\n                        5: R_X86_64_PC32        mcount+0xfffffffffffffffc\n\nThe first function in .init.text is a static function.\n\n00000000000000a8 t __setup_set_reset_devices\n000000000000105f t __setup_str_set_reset_devices\n0000000000000000 t set_reset_devices\n\nThe lowercase \u0027t\u0027 means that set_reset_devices is local and is not exported.\nIf we simply try to link the tmp.o with the set_reset_devices we end\nup with two symbols: one local and one global.\n\n .section __mcount_loc,\"a\",@progbits\n .quad set_reset_devices + 0x10\n\n00000000000000a8 t __setup_set_reset_devices\n000000000000105f t __setup_str_set_reset_devices\n0000000000000000 t set_reset_devices\n                 U set_reset_devices\n\nWe still have an undefined reference to set_reset_devices, and if we try\nto compile the kernel, we will end up with an undefined reference to\nset_reset_devices, or even worst, it could be exported someplace else,\nand then we will have a reference to the wrong location.\n\nTo handle this case, we make an intermediate step using objcopy.\nWe convert set_reset_devices into a global exported symbol before linking\nit with tmp.o and set it back afterwards.\n\n00000000000000a8 t __setup_set_reset_devices\n000000000000105f t __setup_str_set_reset_devices\n0000000000000000 T set_reset_devices\n\n00000000000000a8 t __setup_set_reset_devices\n000000000000105f t __setup_str_set_reset_devices\n0000000000000000 T set_reset_devices\n\n00000000000000a8 t __setup_set_reset_devices\n000000000000105f t __setup_str_set_reset_devices\n0000000000000000 t set_reset_devices\n\nNow we have a section in main.o called __mcount_loc that we can place\nsomewhere in the kernel using vmlinux.ld.S and access it to convert\nall these locations that call mcount into nops before starting SMP\nand thus, eliminating the need to do this with kstop_machine.\n\nNote, A well documented perl script (scripts/recordmcount.pl) is used\nto do all this in one location.\n\nSigned-off-by: Steven Rostedt \u003csrostedt@redhat.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "97e1c18e8d17bd87e1e383b2e9d9fc740332c8e2",
      "tree": "5c6bfce8bacf04c2993a0029788a1370a483afa6",
      "parents": [
        "e7f2f9918c0e97aa98ba147ca387e2c7238f0711"
      ],
      "author": {
        "name": "Mathieu Desnoyers",
        "email": "mathieu.desnoyers@polymtl.ca",
        "time": "Fri Jul 18 12:16:16 2008 -0400"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Oct 14 10:28:28 2008 +0200"
      },
      "message": "tracing: Kernel Tracepoints\n\nImplementation of kernel tracepoints. Inspired from the Linux Kernel\nMarkers. Allows complete typing verification by declaring both tracing\nstatement inline functions and probe registration/unregistration static\ninline functions within the same macro \"DEFINE_TRACE\". No format string\nis required. See the tracepoint Documentation and Samples patches for\nusage examples.\n\nTaken from the documentation patch :\n\n\"A tracepoint placed in code provides a hook to call a function (probe)\nthat you can provide at runtime. A tracepoint can be \"on\" (a probe is\nconnected to it) or \"off\" (no probe is attached). When a tracepoint is\n\"off\" it has no effect, except for adding a tiny time penalty (checking\na condition for a branch) and space penalty (adding a few bytes for the\nfunction call at the end of the instrumented function and adds a data\nstructure in a separate section).  When a tracepoint is \"on\", the\nfunction you provide is called each time the tracepoint is executed, in\nthe execution context of the caller. When the function provided ends its\nexecution, it returns to the caller (continuing from the tracepoint\nsite).\n\nYou can put tracepoints at important locations in the code. They are\nlightweight hooks that can pass an arbitrary number of parameters, which\nprototypes are described in a tracepoint declaration placed in a header\nfile.\"\n\nAddition and removal of tracepoints is synchronized by RCU using the\nscheduler (and preempt_disable) as guarantees to find a quiescent state\n(this is really RCU \"classic\"). The update side uses rcu_barrier_sched()\nwith call_rcu_sched() and the read/execute side uses\n\"preempt_disable()/preempt_enable()\".\n\nWe make sure the previous array containing probes, which has been\nscheduled for deletion by the rcu callback, is indeed freed before we\nproceed to the next update. It therefore limits the rate of modification\nof a single tracepoint to one update per RCU period. The objective here\nis to permit fast batch add/removal of probes on _different_\ntracepoints.\n\nChangelog :\n- Use #name \":\" #proto as string to identify the tracepoint in the\n  tracepoint table. This will make sure not type mismatch happens due to\n  connexion of a probe with the wrong type to a tracepoint declared with\n  the same name in a different header.\n- Add tracepoint_entry_free_old.\n- Change __TO_TRACE to get rid of the \u0027i\u0027 iterator.\n\nMasami Hiramatsu \u003cmhiramat@redhat.com\u003e :\nTested on x86-64.\n\nPerformance impact of a tracepoint : same as markers, except that it\nadds about 70 bytes of instructions in an unlikely branch of each\ninstrumented function (the for loop, the stack setup and the function\ncall). It currently adds a memory read, a test and a conditional branch\nat the instrumentation site (in the hot path). Immediate values will\neventually change this into a load immediate, test and branch, which\nremoves the memory read which will make the i-cache impact smaller\n(changing the memory read for a load immediate removes 3-4 bytes per\nsite on x86_32 (depending on mov prefixes), or 7-8 bytes on x86_64, it\nalso saves the d-cache hit).\n\nAbout the performance impact of tracepoints (which is comparable to\nmarkers), even without immediate values optimizations, tests done by\nHideo Aoki on ia64 show no regression. His test case was using hackbench\non a kernel where scheduler instrumentation (about 5 events in code\nscheduler code) was added.\n\nQuoting Hideo Aoki about Markers :\n\nI evaluated overhead of kernel marker using linux-2.6-sched-fixes git\ntree, which includes several markers for LTTng, using an ia64 server.\n\nWhile the immediate trace mark feature isn\u0027t implemented on ia64, there\nis no major performance regression. So, I think that we don\u0027t have any\nissues to propose merging marker point patches into Linus\u0027s tree from\nthe viewpoint of performance impact.\n\nI prepared two kernels to evaluate. The first one was compiled without\nCONFIG_MARKERS. The second one was enabled CONFIG_MARKERS.\n\nI downloaded the original hackbench from the following URL:\nhttp://devresources.linux-foundation.org/craiger/hackbench/src/hackbench.c\n\nI ran hackbench 5 times in each condition and calculated the average and\ndifference between the kernels.\n\n    The parameter of hackbench: every 50 from 50 to 800\n    The number of CPUs of the server: 2, 4, and 8\n\nBelow is the results. As you can see, major performance regression\nwasn\u0027t found in any case. Even if number of processes increases,\ndifferences between marker-enabled kernel and marker- disabled kernel\ndoesn\u0027t increase. Moreover, if number of CPUs increases, the differences\ndoesn\u0027t increase either.\n\nCuriously, marker-enabled kernel is better than marker-disabled kernel\nin more than half cases, although I guess it comes from the difference\nof memory access pattern.\n\n* 2 CPUs\n\nNumber of | without      | with         | diff     | diff    |\nprocesses | Marker [Sec] | Marker [Sec] |   [Sec]  |   [%]   |\n--------------------------------------------------------------\n       50 |      4.811   |       4.872  |  +0.061  |  +1.27  |\n      100 |      9.854   |      10.309  |  +0.454  |  +4.61  |\n      150 |     15.602   |      15.040  |  -0.562  |  -3.6   |\n      200 |     20.489   |      20.380  |  -0.109  |  -0.53  |\n      250 |     25.798   |      25.652  |  -0.146  |  -0.56  |\n      300 |     31.260   |      30.797  |  -0.463  |  -1.48  |\n      350 |     36.121   |      35.770  |  -0.351  |  -0.97  |\n      400 |     42.288   |      42.102  |  -0.186  |  -0.44  |\n      450 |     47.778   |      47.253  |  -0.526  |  -1.1   |\n      500 |     51.953   |      52.278  |  +0.325  |  +0.63  |\n      550 |     58.401   |      57.700  |  -0.701  |  -1.2   |\n      600 |     63.334   |      63.222  |  -0.112  |  -0.18  |\n      650 |     68.816   |      68.511  |  -0.306  |  -0.44  |\n      700 |     74.667   |      74.088  |  -0.579  |  -0.78  |\n      750 |     78.612   |      79.582  |  +0.970  |  +1.23  |\n      800 |     85.431   |      85.263  |  -0.168  |  -0.2   |\n--------------------------------------------------------------\n\n* 4 CPUs\n\nNumber of | without      | with         | diff     | diff    |\nprocesses | Marker [Sec] | Marker [Sec] |   [Sec]  |   [%]   |\n--------------------------------------------------------------\n       50 |      2.586   |       2.584  |  -0.003  |  -0.1   |\n      100 |      5.254   |       5.283  |  +0.030  |  +0.56  |\n      150 |      8.012   |       8.074  |  +0.061  |  +0.76  |\n      200 |     11.172   |      11.000  |  -0.172  |  -1.54  |\n      250 |     13.917   |      14.036  |  +0.119  |  +0.86  |\n      300 |     16.905   |      16.543  |  -0.362  |  -2.14  |\n      350 |     19.901   |      20.036  |  +0.135  |  +0.68  |\n      400 |     22.908   |      23.094  |  +0.186  |  +0.81  |\n      450 |     26.273   |      26.101  |  -0.172  |  -0.66  |\n      500 |     29.554   |      29.092  |  -0.461  |  -1.56  |\n      550 |     32.377   |      32.274  |  -0.103  |  -0.32  |\n      600 |     35.855   |      35.322  |  -0.533  |  -1.49  |\n      650 |     39.192   |      38.388  |  -0.804  |  -2.05  |\n      700 |     41.744   |      41.719  |  -0.025  |  -0.06  |\n      750 |     45.016   |      44.496  |  -0.520  |  -1.16  |\n      800 |     48.212   |      47.603  |  -0.609  |  -1.26  |\n--------------------------------------------------------------\n\n* 8 CPUs\n\nNumber of | without      | with         | diff     | diff    |\nprocesses | Marker [Sec] | Marker [Sec] |   [Sec]  |   [%]   |\n--------------------------------------------------------------\n       50 |      2.094   |       2.072  |  -0.022  |  -1.07  |\n      100 |      4.162   |       4.273  |  +0.111  |  +2.66  |\n      150 |      6.485   |       6.540  |  +0.055  |  +0.84  |\n      200 |      8.556   |       8.478  |  -0.078  |  -0.91  |\n      250 |     10.458   |      10.258  |  -0.200  |  -1.91  |\n      300 |     12.425   |      12.750  |  +0.325  |  +2.62  |\n      350 |     14.807   |      14.839  |  +0.032  |  +0.22  |\n      400 |     16.801   |      16.959  |  +0.158  |  +0.94  |\n      450 |     19.478   |      19.009  |  -0.470  |  -2.41  |\n      500 |     21.296   |      21.504  |  +0.208  |  +0.98  |\n      550 |     23.842   |      23.979  |  +0.137  |  +0.57  |\n      600 |     26.309   |      26.111  |  -0.198  |  -0.75  |\n      650 |     28.705   |      28.446  |  -0.259  |  -0.9   |\n      700 |     31.233   |      31.394  |  +0.161  |  +0.52  |\n      750 |     34.064   |      33.720  |  -0.344  |  -1.01  |\n      800 |     36.320   |      36.114  |  -0.206  |  -0.57  |\n--------------------------------------------------------------\n\nSigned-off-by: Mathieu Desnoyers \u003cmathieu.desnoyers@polymtl.ca\u003e\nAcked-by: Masami Hiramatsu \u003cmhiramat@redhat.com\u003e\nAcked-by: \u0027Peter Zijlstra\u0027 \u003cpeterz@infradead.org\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "d3d0ba7b8fb8f57c33207adcb41f40c176148c03",
      "tree": "39a93460aa2c6eb8286fbba6c551f95443e175dd",
      "parents": [
        "9042763808c5285a1a61b45b0fe98a710a4c903c",
        "63cc8c75156462d4b42cbdd76c293b7eee7ddbfe"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Sep 05 09:24:30 2008 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Sep 05 09:24:30 2008 +0200"
      },
      "message": "Merge commit \u002763cc8c75156462d4b42cbdd76c293b7eee7ddbfe\u0027:\n\n  \"percpu: introduce DEFINE_PER_CPU_PAGE_ALIGNED() macro\"\n\ninto x86/core\n\nConflicts:\n\tarch/x86/kernel/cpu/common.c\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "c6de002617c199f80f9a2a713dffc263bdc69b81",
      "tree": "f86f31fcb65c2d0447e11c7f920bbb4ae1f4fbcf",
      "parents": [
        "ea44c1d60df3640bd956a67c392865c44fe9bc45"
      ],
      "author": {
        "name": "Yoshinori Sato",
        "email": "ysato@users.sourceforge.jp",
        "time": "Thu Jul 31 00:07:29 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Aug 01 12:46:41 2008 -0700"
      },
      "message": "Missing symbol prefix on vmlinux.lds.h\n\nARCH\u003dh8300:\n\ninit/main.c:781: undefined reference to `___early_initcall_end\u0027\n\nSame problem have\n__start___bug_table\n__stop___bug_table\n__tracedata_start\n__tracedata_end\n__per_cpu_start\n__per_cpu_end\n\nWhen defining a symbol in vmlinux.lds, use the VMLINUX_SYMBOL macro.\nVMLINUX_SYMBOL adds a prefix charactor.\n\nYou can\u0027t just use straight symbol names in common header files as they\ndont take into consideration weird arch-specific ABI conventions.  in the\ncase of Blackfin/h8300, the ABI dictates that any C-visible symbols have\nan underscore prefixed to them.  Thus all symbols in vmlinux.lds.h need to\nbe wrapped in VMLINUX_SYMBOL() so that each arch can put hide this magic\nin their own files.\n\n[akpm@linux-foundation.org: coding-style fixes]\nSigned-off-by: Yoshinori Sato \u003cysato@users.sourceforge.jp\u003e\nCc: Jeremy Fitzhardinge \u003cjeremy@goop.org\u003e\nCc: \"Mike Frysinger\" \u003cvapier.adi@gmail.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "6948385cbd83201fb933125c1a578b29b456605d",
      "tree": "fd08f30c84d02cfb1ad696d04605565974fae7be",
      "parents": [
        "7a76d89232f20411f32e7a79ccc1e2f95e9f826b",
        "56b2f0706d82535fd8d85503f2dcc0be40c8e55d"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun Jul 27 09:59:59 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun Jul 27 09:59:59 2008 -0700"
      },
      "message": "Merge git://git.kernel.org/pub/scm/linux/kernel/git/sam/kbuild-next\n\n* git://git.kernel.org/pub/scm/linux/kernel/git/sam/kbuild-next: (25 commits)\n  setlocalversion: do not describe if there is nothing to describe\n  kconfig: fix typos: \"Suport\" -\u003e \"Support\"\n  kconfig: make defconfig is no longer chatty\n  kconfig: make oldconfig is now less chatty\n  kconfig: speed up all*config + randconfig\n  kconfig: set all new symbols automatically\n  kconfig: add diffconfig utility\n  kbuild: remove Module.markers during mrproper\n  kbuild: sparse needs CF not CHECKFLAGS\n  kernel-doc: handle/strip __init\n  vmlinux.lds: move __attribute__((__cold__)) functions back into final .text section\n  init: fix URL of \"The GNU Accounting Utilities\"\n  kbuild: add arch/$ARCH/include to search path\n  kbuild: asm symlink support for arch/$ARCH/include\n  kbuild: support arch/$ARCH/include for tags, cscope\n  kbuild: prepare headers_* for arch/$ARCH/include\n  kbuild: install all headers when arch is changed\n  kbuild: make clean removes *.o.* as well\n  kbuild: optimize headers_* targets\n  kbuild: only one call for include/ in make headers_*\n  ...\n"
    },
    {
      "commit": "c2147a5092cfe13dbf3210e54e8a622015edeecc",
      "tree": "e34e0daee3cc0b19914a27d6f7f284b1fc22aa93",
      "parents": [
        "89081d17f7bb81d89fa1aa9b70f821c5cf4d39e9"
      ],
      "author": {
        "name": "Eduard - Gabriel Munteanu",
        "email": "eduard.munteanu@linux360.ro",
        "time": "Fri Jul 25 19:45:11 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Jul 26 12:00:04 2008 -0700"
      },
      "message": "Better interface for hooking early initcalls\n\nAdded early initcall (pre-SMP) support, using an identical interface to\nthat of regular initcalls.  Functions called from do_pre_smp_initcalls()\ncould be converted to use this cleaner interface.\n\nThis is required by CPU hotplug, because early users have to register\nnotifiers before going SMP.  One such CPU hotplug user is the relay\ninterface with buffer-only channels, which needs to register such a\nnotifier, to be usable in early code.  This in turn is used by kmemtrace.\n\nSigned-off-by: Eduard - Gabriel Munteanu \u003ceduard.munteanu@linux360.ro\u003e\nCc: Tom Zanussi \u003ctzanussi@gmail.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "fb5e2b379732e1a6ea32392980bb42e0212db842",
      "tree": "ce9506474dcd426ea0102836e9b719d7cb73a844",
      "parents": [
        "37a4c940749670671adab211a2d9c9fed9f3f757"
      ],
      "author": {
        "name": "Jan Beulich",
        "email": "jbeulich@novell.com",
        "time": "Wed Jun 18 12:36:01 2008 +0100"
      },
      "committer": {
        "name": "Sam Ravnborg",
        "email": "sam@ravnborg.org",
        "time": "Fri Jul 25 22:12:37 2008 +0200"
      },
      "message": "vmlinux.lds: move __attribute__((__cold__)) functions back into final .text section\n\nDue to the addition of __attribute__((__cold__)) to a few symbols\nwithout adjusting the linker scripts, those symbols currently may end\nup outside the [_stext,_etext) range, as they get placed in\n.text.unlikely by (at least) gcc 4.3.0. This may confuse code not only\noutside of the kernel, symbol_put_addr()\u0027s BUG() could also trigger.\nHence we need to add .text.unlikely (and for future uses of\n__attribute__((__hot__)) also .text.hot) to the TEXT_TEXT() macro.\n\nIssue observed by Lukas Lipavsky.\n\nSigned-off-by: Jan Beulich \u003cjbeulich@novell.com\u003e\nTested-by: Lukas Lipavsky \u003cllipavsky@suse.cz\u003e\nCc: \u003cstable@kernel.org\u003e\nSigned-off-by: Sam Ravnborg \u003csam@ravnborg.org\u003e\n"
    },
    {
      "commit": "dc7c65db2845a8d17432d89252c4227a9a7cb15f",
      "tree": "79030b0aaaafc04bc4303c21495134e744afc058",
      "parents": [
        "8a0ca91e1db5de5eb5b18cfa919d52ff8be375af",
        "58b6e5538460be358fdf1286d9a2fbcfcc2cfaba"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Jul 16 17:25:46 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Jul 16 17:25:46 2008 -0700"
      },
      "message": "Merge branch \u0027linux-next\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/jbarnes/pci-2.6\n\n* \u0027linux-next\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/jbarnes/pci-2.6: (72 commits)\n  Revert \"x86/PCI: ACPI based PCI gap calculation\"\n  PCI: remove unnecessary volatile in PCIe hotplug struct controller\n  x86/PCI: ACPI based PCI gap calculation\n  PCI: include linux/pm_wakeup.h for device_set_wakeup_capable\n  PCI PM: Fix pci_prepare_to_sleep\n  x86/PCI: Fix PCI config space for domains \u003e 0\n  Fix acpi_pm_device_sleep_wake() by providing a stub for CONFIG_PM_SLEEP\u003dn\n  PCI: Simplify PCI device PM code\n  PCI PM: Introduce pci_prepare_to_sleep and pci_back_from_sleep\n  PCI ACPI: Rework PCI handling of wake-up\n  ACPI: Introduce new device wakeup flag \u0027prepared\u0027\n  ACPI: Introduce acpi_device_sleep_wake function\n  PCI: rework pci_set_power_state function to call platform first\n  PCI: Introduce platform_pci_power_manageable function\n  ACPI: Introduce acpi_bus_power_manageable function\n  PCI: make pci_name use dev_name\n  PCI: handle pci_name() being const\n  PCI: add stub for pci_set_consistent_dma_mask()\n  PCI: remove unused arch pcibios_update_resource() functions\n  PCI: fix pci_setup_device()\u0027s sprinting into a const buffer\n  ...\n\nFixed up conflicts in various files (arch/x86/kernel/setup_64.c,\narch/x86/pci/irq.c, arch/x86/pci/pci.h, drivers/acpi/sleep/main.c,\ndrivers/pci/pci.c, drivers/pci/pci.h, include/acpi/acpi_bus.h) from x86\nand ACPI updates manually.\n"
    },
    {
      "commit": "5a86102248592e178a9023359ccf7f0e489d8e35",
      "tree": "9e5fdb9aafca687fa412f7c034f2cfbb834b8567",
      "parents": [
        "85082fd7cbe3173198aac0eb5e85ab1edcc6352c",
        "751851af7aae9b8bd5a60b3897209081fbc18b2b"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jul 14 16:54:07 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jul 14 16:54:07 2008 -0700"
      },
      "message": "Merge branch \u0027for-2.6.27\u0027 of git://git.infradead.org/users/dwmw2/firmware-2.6\n\n* \u0027for-2.6.27\u0027 of git://git.infradead.org/users/dwmw2/firmware-2.6: (64 commits)\n  firmware: convert sb16_csp driver to use firmware loader exclusively\n  dsp56k: use request_firmware\n  edgeport-ti: use request_firmware()\n  edgeport: use request_firmware()\n  vicam: use request_firmware()\n  dabusb: use request_firmware()\n  cpia2: use request_firmware()\n  ip2: use request_firmware()\n  firmware: convert Ambassador ATM driver to request_firmware()\n  whiteheat: use request_firmware()\n  ti_usb_3410_5052: use request_firmware()\n  emi62: use request_firmware()\n  emi26: use request_firmware()\n  keyspan_pda: use request_firmware()\n  keyspan: use request_firmware()\n  ttusb-budget: use request_firmware()\n  kaweth: use request_firmware()\n  smctr: use request_firmware()\n  firmware: convert ymfpci driver to use firmware loader exclusively\n  firmware: convert maestro3 driver to use firmware loader exclusively\n  ...\n\nFix up trivial conflicts with BKL removal in drivers/char/dsp56k.c and\ndrivers/char/ip2/ip2main.c manually.\n"
    },
    {
      "commit": "751851af7aae9b8bd5a60b3897209081fbc18b2b",
      "tree": "5cb8dbb71d691a760da61e319796800ee42cc1c5",
      "parents": [
        "a41eebab7537890409ea9dfe0fcda9b5fbdb090d",
        "d71792ac3d48df6693f7b339e02494efc27036c3"
      ],
      "author": {
        "name": "David Woodhouse",
        "email": "David.Woodhouse@intel.com",
        "time": "Mon Jul 14 15:49:04 2008 -0700"
      },
      "committer": {
        "name": "David Woodhouse",
        "email": "David.Woodhouse@intel.com",
        "time": "Mon Jul 14 15:51:11 2008 -0700"
      },
      "message": "Merge git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux-2.6.git\n\nConflicts:\n\n\tsound/pci/Kconfig\n"
    },
    {
      "commit": "d18bb9a548e550f3ced57618e75085fb3f173133",
      "tree": "ea6be1655c55422cb5a1df84ae08f150b60e6808",
      "parents": [
        "4bb0057f996b1491f93a64879f4c53c83bc0f0c7",
        "6d72b7952fa7d7c61d021398970c29afde6a4443"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jul 14 15:28:10 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jul 14 15:28:10 2008 -0700"
      },
      "message": "Merge branch \u0027core/rodata\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip\n\n* \u0027core/rodata\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:\n  move BUG_TABLE into RODATA\n"
    },
    {
      "commit": "5658c769443d543728b6c5c673dffc2df8676317",
      "tree": "539477c713c5d231fd3112e4bd8ae8aff4acefa7",
      "parents": [
        "b7a39bd0afc4021e8ad2b1189e884551e147427f"
      ],
      "author": {
        "name": "David Woodhouse",
        "email": "dwmw2@infradead.org",
        "time": "Fri May 23 13:52:42 2008 +0100"
      },
      "committer": {
        "name": "David Woodhouse",
        "email": "David.Woodhouse@intel.com",
        "time": "Thu Jul 10 14:30:13 2008 +0100"
      },
      "message": "firmware: allow firmware files to be built into kernel image\n\nSome drivers have their own hacks to bypass the kernel\u0027s firmware loader\nand build their firmware into the kernel; this renders those unnecessary.\n\nOther drivers don\u0027t use the firmware loader at all, because they always\nwant the firmware to be available. This allows them to start using the\nfirmware loader.\n\nA third set of drivers already use the firmware loader, but can\u0027t be\nused without help from userspace, which sometimes requires an initrd.\nThis allows them to work in a static kernel.\n\nSigned-off-by: David Woodhouse \u003cdwmw2@infradead.org\u003e\n"
    },
    {
      "commit": "e1a2a51e684bfe9d6165992d4a065439617a3107",
      "tree": "4d05a1b9ebadd0ab22e0e42ee3b053dddf11baf1",
      "parents": [
        "273c11270d3715c4c06d4df1607a1a60034d887b"
      ],
      "author": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Thu May 15 21:51:31 2008 +0200"
      },
      "committer": {
        "name": "Jesse Barnes",
        "email": "jbarnes@virtuousgeek.org",
        "time": "Tue Jun 10 10:59:46 2008 -0700"
      },
      "message": "Suspend/Resume bug in PCI layer wrt quirks\n\nSome quirks should be called with interrupt disabled, we can\u0027t directly\ncall them in .resume_early. Also the patch introduces\npci_fixup_resume_early and pci_fixup_suspend, which matches current\ndevice core callbacks (.suspend/.resume_early).\n\nTBD: Somebody knows why we need quirk resume should double check if a\nquirk should be called in resume or resume_early. I changed some per my\nunderstanding, but can\u0027t make sure I fixed all.\n\nSigned-off-by: Shaohua Li \u003cshaohua.li@intel.com\u003e\nSigned-off-by: Jesse Barnes \u003cjbarnes@virtuousgeek.org\u003e\n"
    },
    {
      "commit": "63687a528c39a67c1a213cdffa09feb0e6af9dbe",
      "tree": "0a21067f84d2495d37cc6fe864675db53ca56630",
      "parents": [
        "75d3bce2fc0a80f435fe12f2c9ed2632c8ac29e4"
      ],
      "author": {
        "name": "Jan Beulich",
        "email": "jbeulich@novell.com",
        "time": "Mon May 12 15:44:41 2008 +0200"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Sun May 25 07:09:47 2008 +0200"
      },
      "message": "x86: move tracedata to RODATA\n\n.. allowing it to be write-protected just as other read-only data\nunder CONFIG_DEBUG_RODATA.\n\nSigned-off-by: Jan Beulich \u003cjbeulich@novell.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\n"
    },
    {
      "commit": "6360b1fbb4a939efd34fc770c2ebd927c55506e0",
      "tree": "8cf449a7177a6060f825fc03427b4e3baa3b0672",
      "parents": [
        "75d3bce2fc0a80f435fe12f2c9ed2632c8ac29e4"
      ],
      "author": {
        "name": "Jan Beulich",
        "email": "jbeulich@novell.com",
        "time": "Mon May 12 15:44:41 2008 +0200"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Sun May 25 07:06:08 2008 +0200"
      },
      "message": "move BUG_TABLE into RODATA\n\nSigned-off-by: Jan Beulich \u003cjbeulich@novell.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\n"
    },
    {
      "commit": "63cc8c75156462d4b42cbdd76c293b7eee7ddbfe",
      "tree": "e014b4c61399f8f74347352e6ea76ddf1502dcfa",
      "parents": [
        "75d3bce2fc0a80f435fe12f2c9ed2632c8ac29e4"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "dada1@cosmosbay.com",
        "time": "Mon May 12 15:44:40 2008 +0200"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Sun May 25 07:03:46 2008 +0200"
      },
      "message": "percpu: introduce DEFINE_PER_CPU_PAGE_ALIGNED() macro\n\nWhile examining holes in percpu section I found this :\n\nc05f5000 D per_cpu__current_task\nc05f5000 D __per_cpu_start\nc05f5004 D per_cpu__cpu_number\nc05f5008 D per_cpu__irq_regs\nc05f500c d per_cpu__cpu_devices\nc05f5040 D per_cpu__cyc2ns\n\n\u003cBig Hole of about 4000 bytes\u003e\n\nc05f6000 d per_cpu__cpuid4_info\nc05f6004 d per_cpu__cache_kobject\nc05f6008 d per_cpu__index_kobject\n\n\u003cBig Hole of about 4000 bytes\u003e\n\nc05f7000 D per_cpu__gdt_page\n\nThis is because gdt_page is a percpu variable, defined with\na page alignement, and linker is doing its job, two times because of .o\nnesting in the build process.\n\nI introduced a new macro DEFINE_PER_CPU_PAGE_ALIGNED() to avoid\nwasting this space. All page aligned variables (only one at this time)\nare put in a separate\nsubsection .data.percpu.page_aligned, at the very begining of percpu zone.\n\nBefore patch , on a x86_32 machine :\n\n.data.percpu                30232   3227471872\n.data.percpu                22168   3227471872\n\nThats 8064 bytes saved for each CPU.\n\nSigned-off-by: Eric Dumazet \u003cdada1@cosmosbay.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\n"
    },
    {
      "commit": "37c514e3dfc8f55145d9c6895e2838ac31859aa4",
      "tree": "3e626badf00d003c988c318d6de860b5444f5cf2",
      "parents": [
        "b1d2675a6466090b68d4ef63f9237b4d70a18857"
      ],
      "author": {
        "name": "Sam Ravnborg",
        "email": "sam@ravnborg.org",
        "time": "Tue Feb 19 21:00:18 2008 +0100"
      },
      "committer": {
        "name": "Sam Ravnborg",
        "email": "sam@ravnborg.org",
        "time": "Tue Feb 19 21:00:18 2008 +0100"
      },
      "message": "Add missing init section definitions\n\nWhen adding __devinitconst etc. the __initconst variant\nwere missed.\nAdd this one and proper definitions for .head.text for use\nin .S files.\nThe naming .head.text is preferred over .text.head as the\nlatter will conflict for a function named head when introducing\n-ffunctions-sections.\n\nSigned-off-by: Sam Ravnborg \u003csam@ravnborg.org\u003e\n"
    },
    {
      "commit": "edeed30589f5defe63ce6aaae56f2b7c855e4520",
      "tree": "a49736ff74dcbd3feba3c8318b204fb2165f892d",
      "parents": [
        "adafdf6a4e45f2d1051e10aebe13025e89dbdf6d"
      ],
      "author": {
        "name": "Arjan van de Ven",
        "email": "arjan@infradead.org",
        "time": "Wed Jan 30 13:34:08 2008 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Jan 30 13:34:08 2008 +0100"
      },
      "message": "x86: add testcases for RODATA and NX protections/attributes\n\nLatest update; I now have 4 NX tests, but 2 fail so they\u0027re #if 0\u0027d.\nI also cleaned up the NX test code quite a bit, and got rid of the ugly\nexception table sorting stuff.\n\nFrom: Arjan van de Ven \u003carjan@linux.intel.com\u003e\n\nThis patch adds testcases for the CONFIG_DEBUG_RODATA configuration option\nas well as the NX CPU feature/mappings. Both testcases can move to tests/\nonce that patch gets merged into mainline.\n(I\u0027m half considering moving the rodata test into mm/init.c but I\u0027ll\nwait with that until init.c is unified)\n\nAs part of this I had to fix a not-quite-right alignment in the vmlinux.lds.h\nfor the RODATA sections, which lead to 1 page less being marked read only.\n\nSigned-off-by: Arjan van de Ven \u003carjan@linux.intel.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\n"
    },
    {
      "commit": "312b1485fb509c9bc32eda28ad29537896658cb8",
      "tree": "875ad50025dd230e7097a46cbab4e1a57a3696e1",
      "parents": [
        "e241a630374e06aecdae2884af8b652d3b4d6c37"
      ],
      "author": {
        "name": "Sam Ravnborg",
        "email": "sam@ravnborg.org",
        "time": "Mon Jan 28 20:21:15 2008 +0100"
      },
      "committer": {
        "name": "Sam Ravnborg",
        "email": "sam@ravnborg.org",
        "time": "Mon Jan 28 23:21:19 2008 +0100"
      },
      "message": "Introduce new section reference annotations tags: __ref, __refdata, __refconst\n\nToday we have the following annotations for functions/data\nreferencing __init/__exit functions / data:\n\n__init_refok     \u003d\u003e for init functions\n__initdata_refok \u003d\u003e for init data\n__exit_refok     \u003d\u003e for exit functions\n\nThere is really no difference between the __init and __exit\nversions and simplify it and to introduce a shorter annotation\nthe following new annotations are introduced:\n\n__ref      \u003d\u003e for functions (code) that\n              references __*init / __*exit\n__refdata  \u003d\u003e for variables\n__refconst \u003d\u003e for const variables\n\nWhit this annotation is it more obvious what the annotation\nis for and there is no longer the arbitary division\nbetween __init and __exit code.\n\nThe mechanishm is the same as before - a special section\nis created which is made part of the usual sections\nin the linker script.\n\nWe will start to see annotations like this:\n\n-static struct pci_serial_quirk pci_serial_quirks[] \u003d {\n+static const struct pci_serial_quirk pci_serial_quirks[] __refconst \u003d {\n-----------------\n-static struct notifier_block __cpuinitdata cpuid_class_cpu_notifier \u003d\n+static struct notifier_block cpuid_class_cpu_notifier __refdata \u003d\n----------------\n-static int threshold_cpu_callback(struct notifier_block *nfb,\n+static int __ref threshold_cpu_callback(struct notifier_block *nfb,\n\n[The above is just random samples].\n\nNote: No modifications were needed in modpost\nto support the new sections due to the newly introduced\nblacklisting.\n\nSigned-off-by: Sam Ravnborg \u003csam@ravnborg.org\u003e\n"
    },
    {
      "commit": "1a3fb6d481689d0482eacadcbe3205b49b423c11",
      "tree": "11ebd92f8f75b4a1459e6be536548e1d9212cea6",
      "parents": [
        "3ff6eecca4e5c49a5d1dd8b58ea0e20102ce08f0"
      ],
      "author": {
        "name": "Adrian Bunk",
        "email": "bunk@kernel.org",
        "time": "Thu Jan 24 22:20:18 2008 +0100"
      },
      "committer": {
        "name": "Sam Ravnborg",
        "email": "sam@ravnborg.org",
        "time": "Mon Jan 28 23:21:18 2008 +0100"
      },
      "message": "asm-generic/vmlix.lds.h: simplify __mem{init,exit}* dependencies\n\nSimplify the dependencies on __mem{init,exit}* (ACPI_HOTPLUG_MEMORY requires\nMEMORY_HOTPLUG).\n\nSigned-off-by: Adrian Bunk \u003cbunk@kernel.org\u003e\nSigned-off-by: Sam Ravnborg \u003csam@ravnborg.org\u003e\n"
    },
    {
      "commit": "eb8f689046b857874e964463619f09df06d59fad",
      "tree": "ec726cd06764746a07689ede3b782c36a24d3e55",
      "parents": [
        "f3fe866d59d707c7a2bba0b23add078e19edb3dc"
      ],
      "author": {
        "name": "Sam Ravnborg",
        "email": "sam@ravnborg.org",
        "time": "Sun Jan 20 20:07:28 2008 +0100"
      },
      "committer": {
        "name": "Sam Ravnborg",
        "email": "sam@ravnborg.org",
        "time": "Mon Jan 28 23:21:17 2008 +0100"
      },
      "message": "Use separate sections for __dev/__cpu/__mem code/data\n\nIntroducing separate sections for __dev* (HOTPLUG),\n__cpu* (HOTPLUG_CPU) and __mem* (MEMORY_HOTPLUG)\nallows us to do a much more reliable Section mismatch\ncheck in modpost. We are no longer dependent on the actual\nconfiguration of for example HOTPLUG.\n\nThis has the effect that all users see much more\nSection mismatch warnings than before because they\nwere almost all hidden when HOTPLUG was enabled.\nThe advantage of this is that when building a piece\nof code then it is much more likely that the Section\nmismatch errors are spotted and the warnings will be\nfelt less random of nature.\n\nSigned-off-by: Sam Ravnborg \u003csam@ravnborg.org\u003e\nCc: Greg KH \u003cgreg@kroah.com\u003e\nCc: Randy Dunlap \u003crandy.dunlap@oracle.com\u003e\nCc: Adrian Bunk \u003cbunk@kernel.org\u003e\n"
    },
    {
      "commit": "01ba2bdc6b639764745ff678caf3fb9e5bcd745a",
      "tree": "c6e7f1925687485c331189a2d55ff4f2bb0a09df",
      "parents": [
        "6c5bd235bfd0b92188915465c7dfb377c1a4d451"
      ],
      "author": {
        "name": "Sam Ravnborg",
        "email": "sam@ravnborg.org",
        "time": "Sun Jan 20 14:15:03 2008 +0100"
      },
      "committer": {
        "name": "Sam Ravnborg",
        "email": "sam@ravnborg.org",
        "time": "Mon Jan 28 23:21:17 2008 +0100"
      },
      "message": "all archs: consolidate init and exit sections in vmlinux.lds.h\n\nThis patch consolidate all definitions of .init.text, .init.data\nand .exit.text, .exit.data section definitions in\nthe generic vmlinux.lds.h.\n\nThis is a preparational patch - alone it does not buy\nus much good.\n\nSigned-off-by: Sam Ravnborg \u003csam@ravnborg.org\u003e\n"
    },
    {
      "commit": "8256e47cdc8923e9959eb1d7f95d80da538add80",
      "tree": "4702aa3ad7c9025f70314f1146e551b4e1dfcbb2",
      "parents": [
        "09cadedbdc01f1a4bea1f427d4fb4642eaa19da9"
      ],
      "author": {
        "name": "Mathieu Desnoyers",
        "email": "mathieu.desnoyers@polymtl.ca",
        "time": "Thu Oct 18 23:41:06 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Fri Oct 19 11:53:54 2007 -0700"
      },
      "message": "Linux Kernel Markers\n\nThe marker activation functions sits in kernel/marker.c.  A hash table is used\nto keep track of the registered probes and armed markers, so the markers\nwithin a newly loaded module that should be active can be activated at module\nload time.\n\nmarker_query has been removed. marker_get_first, marker_get_next and\nmarker_release should be used as iterators on the markers.\n\n[akpm@linux-foundation.org: coding-style fixes]\nSigned-off-by: Mathieu Desnoyers \u003cmathieu.desnoyers@polymtl.ca\u003e\nAcked-by: \"Frank Ch. Eigler\" \u003cfche@redhat.com\u003e\nCc: Christoph Hellwig \u003chch@infradead.org\u003e\nCc: Rusty Russell \u003crusty@rustcorp.com.au\u003e\nCc: Mike Mason \u003cmmlnx@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": "23ec23c2d3496d1cdf74f73d60ab1051405ca774",
      "tree": "ef8847acda750434ca6b7007a8c49194efd954b3",
      "parents": [
        "c5d6471ff9172e4d8f7a5b484b459c56904ae1f0"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@ftp.linux.org.uk",
        "time": "Sat Oct 13 08:40:24 2007 +0100"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Sat Oct 13 09:58:59 2007 -0700"
      },
      "message": "fix sparc32 breakage (result of vmlinux.lds.S bug)\n\nIn commit 4665079cbb2a3e17de82f2ab2940b9f97f37d65e (\"[NETNS]: Move some\ncode into __init section when CONFIG_NET_NS\u003dn\") we got a new section -\n.exit.text.refok (more of \u0027let\u0027s tell modpost that some bogus calls are\nnot bogus\u0027, a-la text.init.refok).\n\nUnfortunately, the commit in question forgot to add it to TEXT_TEXT,\nwith rather amusing results.\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "cbe87121f1545bb3e98ae114519bf0c4db27d6ab",
      "tree": "5654badf0076dad480ae5832be943930d1cfe6a6",
      "parents": [
        "b38bd33a6bf5095736620ca8e85fe61820c2d312"
      ],
      "author": {
        "name": "Roland McGrath",
        "email": "roland@redhat.com",
        "time": "Thu Jul 19 01:48:36 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Thu Jul 19 10:04:47 2007 -0700"
      },
      "message": "i386: Put allocated ELF notes in read-only data segment\n\nThis changes the i386 linker script and the asm-generic macro it uses so that\nELF note sections with SHF_ALLOC set are linked into the kernel image along\nwith other read-only data.  The PT_NOTE also points to their location.\n\nThis paves the way for putting useful build-time information into ELF notes\nthat can be found easily later in a kernel memory dump.\n\nSigned-off-by: Roland McGrath \u003croland@redhat.com\u003e\nCc: Andi Kleen \u003cak@suse.de\u003e\nCc: Paul Mackerras \u003cpaulus@samba.org\u003e\nCc: Benjamin Herrenschmidt \u003cbenh@kernel.crashing.org\u003e\nCc: Richard Henderson \u003crth@twiddle.net\u003e\nCc: Ivan Kokshaysky \u003cink@jurassic.park.msu.ru\u003e\nCc: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\nCc: Heiko Carstens \u003cheiko.carstens@de.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": "5fb7dc37dc16fbc8b80d81318a582201ef7e280d",
      "tree": "4d6bb4441ece64380e7186ebadd35ad2f5486f9f",
      "parents": [
        "3d7e33825d8799115dd2495c9944badd3272a623"
      ],
      "author": {
        "name": "Fenghua Yu",
        "email": "fenghua.yu@intel.com",
        "time": "Thu Jul 19 01:48:12 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Thu Jul 19 10:04:44 2007 -0700"
      },
      "message": "define new percpu interface for shared data\n\nper cpu data section contains two types of data.  One set which is\nexclusively accessed by the local cpu and the other set which is per cpu,\nbut also shared by remote cpus.  In the current kernel, these two sets are\nnot clearely separated out.  This can potentially cause the same data\ncacheline shared between the two sets of data, which will result in\nunnecessary bouncing of the cacheline between cpus.\n\nOne way to fix the problem is to cacheline align the remotely accessed per\ncpu data, both at the beginning and at the end.  Because of the padding at\nboth ends, this will likely cause some memory wastage and also the\ninterface to achieve this is not clean.\n\nThis patch:\n\nMoves the remotely accessed per cpu data (which is currently marked\nas ____cacheline_aligned_in_smp) into a different section, where all the data\nelements are cacheline aligned. And as such, this differentiates the local\nonly data and remotely accessed data cleanly.\n\nSigned-off-by: Fenghua Yu \u003cfenghua.yu@intel.com\u003e\nAcked-by: Suresh Siddha \u003csuresh.b.siddha@intel.com\u003e\nCc: Rusty Russell \u003crusty@rustcorp.com.au\u003e\nCc: Christoph Lameter \u003cclameter@sgi.com\u003e\nCc: \u003clinux-arch@vger.kernel.org\u003e\nCc: \"Luck, Tony\" \u003ctony.luck@intel.com\u003e\nCc: Andi Kleen \u003cak@suse.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "4096b46f01a362fe2cc83f6be25cc7be6bce2ab7",
      "tree": "7738ca7a7962dc88cc5b9e6dc3b789e73504a7c8",
      "parents": [
        "c420bc9f09a0926b708c3edb27eacba434a4f4ba"
      ],
      "author": {
        "name": "Sam Ravnborg",
        "email": "sam@ravnborg.org",
        "time": "Tue May 29 21:29:00 2007 +0200"
      },
      "committer": {
        "name": "Sam Ravnborg",
        "email": "sam@ravnborg.org",
        "time": "Tue May 29 21:29:00 2007 +0200"
      },
      "message": "sparc64: fix alignment bug in linker definition script\n\nThe RO_DATA section were hardcoded to a specific\nalignment in include/asm-generic/vmlinux.h.\nBut for sparc64 this did not match the PAGE_SIZE.\n\nIntroduce a new section definition named:\nRO_DATA that takes actual alignment as parameter.\nRODATA are provided for backward compatibility.\n\nOn top of this avoid hardcoding alignment for\nsparc64 in reset of the script\nFix is build-tested on sparc64 + x86_64.\n\nSigned-off-by: Sam Ravnborg \u003csam@ravnborg.org\u003e\n"
    },
    {
      "commit": "0e0d314e6a01bb14d303e35e6f7ba24b17020044",
      "tree": "596929a373bbbba7c2d7af4ae6e485a4c584b76f",
      "parents": [
        "ca967258b69eb65dcb07bbab90fdf964c6d2ec45"
      ],
      "author": {
        "name": "Sam Ravnborg",
        "email": "sam@ravnborg.org",
        "time": "Thu May 17 20:14:48 2007 +0200"
      },
      "committer": {
        "name": "Sam Ravnborg",
        "email": "sam@ravnborg.org",
        "time": "Sat May 19 09:11:58 2007 +0200"
      },
      "message": "kbuild: introduce __init_refok/__initdata_refok to supress section mismatch warnings\n\nThroughout the kernel there are a few legitimite references\nto init or exit sections. Most of these are covered by the\npatterns included in modpost but a few nees special attention.\nTo avoid hardcoding a lot of function names in modpost introduce\na marker so relevant function/data can be marked.\nWhen modpost see a reference to a init/exit function from\na function/data marked no warning will be issued.\n\nIdea from: Andrew Morton \u003cakpm@linux-foundation.org\u003e\n\nSigned-off-by: Sam Ravnborg \u003csam@ravnborg.org\u003e\nCc: Andrew Morton \u003cakpm@linux-foundation.org\u003e\n"
    },
    {
      "commit": "ca967258b69eb65dcb07bbab90fdf964c6d2ec45",
      "tree": "e02acc9e830fd76e411f742ac39a7c359d7e5ba9",
      "parents": [
        "7664709b44a13e2e0b545e2dd8e7b8797a1748dc"
      ],
      "author": {
        "name": "Sam Ravnborg",
        "email": "sam@ravnborg.org",
        "time": "Thu May 17 13:38:44 2007 +0200"
      },
      "committer": {
        "name": "Sam Ravnborg",
        "email": "sam@ravnborg.org",
        "time": "Sat May 19 09:11:57 2007 +0200"
      },
      "message": "all-archs: consolidate .data section definition in asm-generic\n\nWith this consolidation we can now modify the .data\nsection definition in one spot for all archs.\n\nSigned-off-by: Sam Ravnborg \u003csam@ravnborg.org\u003e\n"
    },
    {
      "commit": "7664709b44a13e2e0b545e2dd8e7b8797a1748dc",
      "tree": "fcb8e87dd21f90a376fab8ad22a298021a2435e5",
      "parents": [
        "cd5477911fc9f5cc64678e2b95cdd606c59a11b5"
      ],
      "author": {
        "name": "Sam Ravnborg",
        "email": "sam@ravnborg.org",
        "time": "Sun May 13 00:31:33 2007 +0200"
      },
      "committer": {
        "name": "Sam Ravnborg",
        "email": "sam@ravnborg.org",
        "time": "Sat May 19 09:11:57 2007 +0200"
      },
      "message": "all-archs: consolidate .text section definition in asm-generic\n\nMove definition of .text section to asm-generic.\n\nSigned-off-by: Sam Ravnborg \u003csam@ravnborg.org\u003e\n"
    },
    {
      "commit": "03df4f6ee997589a84d5f9492c6419183724c710",
      "tree": "94b79a8b18bab6032ce8e241c7a56fe007cd587c",
      "parents": [
        "21564fd2a3deb48200b595332f9ed4c9f311f2a7"
      ],
      "author": {
        "name": "Jeremy Fitzhardinge",
        "email": "jeremy@goop.org",
        "time": "Wed May 02 19:27:17 2007 +0200"
      },
      "committer": {
        "name": "Andi Kleen",
        "email": "andi@basil.nowhere.org",
        "time": "Wed May 02 19:27:17 2007 +0200"
      },
      "message": "[PATCH] i386: Clean up ELF note generation\n\nThree cleanups:\n\n1: ELF notes are never mapped, so there\u0027s no need to have any access\nflags in their phdr.\n\n2: When generating them from asm, tell the assembler to use a SHT_NOTE\nsection type.  There doesn\u0027t seem to be a way to do this from C.\n\n3: Use ANSI rather than traditional cpp behaviour to stringify the\nmacro argument.\n\nSigned-off-by: Jeremy Fitzhardinge \u003cjeremy@xensource.com\u003e\nSigned-off-by: Andi Kleen \u003cak@suse.de\u003e\nCc: Eric W. Biederman \u003cebiederm@xmission.com\u003e\n"
    },
    {
      "commit": "1597cacbe39802d86656d1f2e6329895bd2ef531",
      "tree": "23036b221b31f154118582af7dbc5cd35fc97bc8",
      "parents": [
        "beb7cc8238a8334d86c96bf32bf66182db3b619f"
      ],
      "author": {
        "name": "Alan Cox",
        "email": "alan@lxorguk.ukuu.org.uk",
        "time": "Mon Dec 04 15:14:45 2006 -0800"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Wed Dec 20 10:54:43 2006 -0800"
      },
      "message": "PCI: Fix multiple problems with VIA hardware\n\nThis patch is designed to fix:\n- Disk eating corruptor on KT7 after resume from RAM\n- VIA IRQ handling\n- VIA fixups for bus lockups after resume from RAM\n\nThe core of this is to add a table of resume fixups run at resume time.\nWe need to do this for a variety of boards and features, but particularly\nwe need to do this to get various critical VIA fixups done on resume.\n\nThe second part of the problem is to handle VIA IRQ number rules which\nare a bit odd and need special handling for PIC interrupts. Various\npatches broke various boxes and while this one may not be perfect\n(hopefully it is) it ensures the workaround is applied to the right\ndevices only.\n\nFrom: Jean Delvare \u003ckhali@linux-fr.org\u003e\n\nNow that PCI quirks are replayed on software resume, we can safely\nre-enable the Asus SMBus unhiding quirk even when software suspend support\nis enabled.\n\n[akpm@osdl.org: fix const warning]\nSigned-off-by: Alan Cox \u003calan@redhat.com\u003e\nCc: Jean Delvare \u003ckhali@linux-fr.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "d1526e2cda64d5a1de56aef50bad9e5df14245c2",
      "tree": "d7b490b1a11dd9720c9918733ca0c06e0e82cfba",
      "parents": [
        "d1998ef38a13c4e74c69df55ccd38b0440c429b2"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.osdl.org",
        "time": "Fri Dec 15 08:43:13 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.osdl.org",
        "time": "Fri Dec 15 08:47:51 2006 -0800"
      },
      "message": "Remove stack unwinder for now\n\nIt has caused more problems than it ever really solved, and is\napparently not getting cleaned up and fixed.  We can put it back when\nit\u0027s stable and isn\u0027t likely to make warning or bug events worse.\n\nIn the meantime, enable frame pointers for more readable stack traces.\n\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "8d610dd52dd1da696e199e4b4545f33a2a5de5c6",
      "tree": "8b2eee4dac34ff5f1374225ccba3fedb8432b579",
      "parents": [
        "8993780a6e44fb4e7ed34e33458506a775356c6e"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.osdl.org",
        "time": "Mon Dec 11 12:12:04 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.osdl.org",
        "time": "Mon Dec 11 12:12:04 2006 -0800"
      },
      "message": "Make sure we populate the initroot filesystem late enough\n\nWe should not initialize rootfs before all the core initializers have\nrun.  So do it as a separate stage just before starting the regular\ndriver initializers.\n\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "7664c5a1da4711bb6383117f51b94c8dc8f3f1cd",
      "tree": "79a2e2a4626c66a411488b5ceb554b011d862a7d",
      "parents": [
        "c48f70c3d046f021b1c22438604ef2a583380eca"
      ],
      "author": {
        "name": "Jeremy Fitzhardinge",
        "email": "jeremy@goop.org",
        "time": "Fri Dec 08 02:36:19 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.osdl.org",
        "time": "Fri Dec 08 08:28:39 2006 -0800"
      },
      "message": "[PATCH] Generic BUG implementation\n\nThis patch adds common handling for kernel BUGs, for use by architectures as\nthey wish.  The code is derived from arch/powerpc.\n\nThe advantages of having common BUG handling are:\n - consistent BUG reporting across architectures\n - shared implementation of out-of-line file/line data\n - implement CONFIG_DEBUG_BUGVERBOSE consistently\n\nThis means that in inline impact of BUG is just the illegal instruction\nitself, which is an improvement for i386 and x86-64.\n\nA BUG is represented in the instruction stream as an illegal instruction,\nwhich has file/line information associated with it.  This extra information is\nstored in the __bug_table section in the ELF file.\n\nWhen the kernel gets an illegal instruction, it first confirms it might\npossibly be from a BUG (ie, in kernel mode, the right illegal instruction).\nIt then calls report_bug().  This searches __bug_table for a matching\ninstruction pointer, and if found, prints the corresponding file/line\ninformation.  If report_bug() determines that it wasn\u0027t a BUG which caused the\ntrap, it returns BUG_TRAP_TYPE_NONE.\n\nSome architectures (powerpc) implement WARN using the same mechanism; if the\nillegal instruction was the result of a WARN, then report_bug(Q) returns\nCONFIG_DEBUG_BUGVERBOSE; otherwise it returns BUG_TRAP_TYPE_BUG.\n\nlib/bug.c keeps a list of loaded modules which can be searched for __bug_table\nentries.  The architecture must call\nmodule_bug_finalize()/module_bug_cleanup() from its corresponding\nmodule_finalize/cleanup functions.\n\nUnsetting CONFIG_DEBUG_BUGVERBOSE will reduce the kernel size by some amount.\nAt the very least, filename and line information will not be recorded for each\nbut, but architectures may decide to store no extra information per BUG at\nall.\n\nUnfortunately, gcc doesn\u0027t have a general way to mark an asm() as noreturn, so\narchitectures will generally have to include an infinite loop (or similar) in\nthe BUG code, so that gcc knows execution won\u0027t continue beyond that point.\ngcc does have a __builtin_trap() operator which may be useful to achieve the\nsame effect, unfortunately it cannot be used to actually implement the BUG\nitself, because there\u0027s no way to get the instruction\u0027s address for use in\ngenerating the __bug_table entry.\n\n[randy.dunlap@oracle.com: Handle BUG\u003dn, GENERIC_BUG\u003dn to prevent build errors]\n[bunk@stusta.de: include/linux/bug.h must always #include \u003clinux/module.h]\nSigned-off-by: Jeremy Fitzhardinge \u003cjeremy@goop.org\u003e\nCc: Andi Kleen \u003cak@muc.de\u003e\nCc: Hugh Dickens \u003chugh@veritas.com\u003e\nCc: Michael Ellerman \u003cmichael@ellerman.id.au\u003e\nCc: Paul Mackerras \u003cpaulus@samba.org\u003e\nCc: Benjamin Herrenschmidt \u003cbenh@kernel.crashing.org\u003e\nCc: Rusty Russell \u003crusty@rustcorp.com.au\u003e\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": "b65780e123ba9b762276482bbfb52836e4d41fd9",
      "tree": "735ac2dde1838e6977f0ad2ed2c7e2c65f6271ed",
      "parents": [
        "c65f38d911aa301cea109d38d40925750dd6c2da"
      ],
      "author": {
        "name": "Jan Beulich",
        "email": "jbeulich@novell.com",
        "time": "Thu Dec 07 02:14:19 2006 +0100"
      },
      "committer": {
        "name": "Andi Kleen",
        "email": "andi@basil.nowhere.org",
        "time": "Thu Dec 07 02:14:19 2006 +0100"
      },
      "message": "[PATCH] unwinder: move .eh_frame to RODATA\n\nThe .eh_frame section contents is never written to, so it can as well\nbenefit from CONFIG_DEBUG_RODATA.\n\nDiff-ed against firstfloor tree.\n\nSigned-off-by: Jan Beulich \u003cjbeulich@novell.com\u003e\nSigned-off-by: Andi Kleen \u003cak@suse.de\u003e\n"
    },
    {
      "commit": "6569580de7ae367def89b7671029cb97c1965574",
      "tree": "e20a70b2b3bb71c3197446bc4265a2f458ddee03",
      "parents": [
        "67fd44fea274a5033ceb90284683bc44df61df54"
      ],
      "author": {
        "name": "Vivek Goyal",
        "email": "vgoyal@in.ibm.com",
        "time": "Thu Dec 07 02:14:03 2006 +0100"
      },
      "committer": {
        "name": "Andi Kleen",
        "email": "andi@basil.nowhere.org",
        "time": "Thu Dec 07 02:14:03 2006 +0100"
      },
      "message": "[PATCH] i386: Distinguish absolute symbols\n\nLd knows about 2 kinds of symbols,  absolute and section\nrelative.  Section relative symbols symbols change value\nwhen a section is moved and absolute symbols do not.\n\nCurrently in the linker script we have several labels\nmarking the beginning and ending of sections that\nare outside of sections, making them absolute symbols.\nHaving a mixture of absolute and section relative\nsymbols refereing to the same data is currently harmless\nbut it is confusing.\n\nThis must be done carefully as newer revs of ld do not place\nsymbols that appear in sections without data and instead\nld makes those symbols global :(\n\nMy ultimate goal is to build a relocatable kernel.  The\nsafest and least intrusive technique is to generate\nrelocation entries so the kernel can be relocated at load\ntime.  The only penalty would be an increase in the size\nof the kernel binary.  The problem is that if absolute and\nrelocatable symbols are not properly specified absolute symbols\nwill be relocated or section relative symbols won\u0027t be, which\nis fatal.\n\nThe practical motivation is that when generating kernels that\nwill run from a reserved area for analyzing what caused\na kernel panic, it is simpler if you don\u0027t need to hard code\nthe physical memory location they will run at, especially\nfor the distributions.\n\n[AK: and merged:]\n\no Also put a message so that in future people can be aware of it and\n  avoid introducing absolute symbols.\n\nSigned-off-by: Eric W. Biederman \u003cebiederm@xmission.com\u003e\nSigned-off-by: Vivek Goyal \u003cvgoyal@in.ibm.com\u003e\nSigned-off-by: Andi Kleen \u003cak@suse.de\u003e\n"
    },
    {
      "commit": "b3438f8266cb1f5010085ac47d7ad6a36a212164",
      "tree": "bb74bd7a3ea7a629e380aa7761ba63a5e44992c7",
      "parents": [
        "f44ea623443ee0bec266d62f1cd346881224d47d"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.osdl.org",
        "time": "Mon Nov 20 11:47:18 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.osdl.org",
        "time": "Mon Nov 20 11:47:18 2006 -0800"
      },
      "message": "Add \"pure_initcall\" for static variable initialization\n\nThis is a quick hack to overcome the fact that SRCU currently does not\nallow static initializers, and we need to sometimes initialize those\nthings before any other initializers (even \"core\" ones) can do so.\n\nCurrently we don\u0027t allow this at all for modules, and the only user that\nneeds is right now is cpufreq. As reported by Thomas Gleixner:\n\n   \"Commit b4dfdbb3c707474a2254c5b4d7e62be31a4b7da9 (\"[PATCH] cpufreq:\n    make the transition_notifier chain use SRCU breaks cpu frequency\n    notification users, which register the callback \u003e on core_init\n    level.\"\n\nCc: Thomas Gleixner \u003ctglx@timesys.com\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: Arjan van de Ven \u003carjan@infradead.org\u003e\nCc: Andrew Morton \u003cakpm@osdl.org\u003e,\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "735a7ffb739b6efeaeb1e720306ba308eaaeb20e",
      "tree": "6156c96aeae04e1fd789f07bdd839dca7eca611a",
      "parents": [
        "61ce1efe6e40233663d27ab8ac9ba9710eebcaad"
      ],
      "author": {
        "name": "Andrew Morton",
        "email": "akpm@osdl.org",
        "time": "Fri Oct 27 11:42:37 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Fri Oct 27 15:34:51 2006 -0700"
      },
      "message": "[PATCH] drivers: wait for threaded probes between initcall levels\n\nThe multithreaded-probing code has a problem: after one initcall level (eg,\ncore_initcall) has been processed, we will then start processing the next\nlevel (postcore_initcall) while the kernel threads which are handling\ncore_initcall are still executing.  This breaks the guarantees which the\nlayered initcalls previously gave us.\n\nIOW, we want to be multithreaded _within_ an initcall level, but not between\ndifferent levels.\n\nFix that up by causing the probing code to wait for all outstanding probes at\none level to complete before we start processing the next level.\n\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": "61ce1efe6e40233663d27ab8ac9ba9710eebcaad",
      "tree": "782640f26f39b96fbce595883dabbeadb550dd15",
      "parents": [
        "e80391500078b524083ba51c3df01bbaaecc94bb"
      ],
      "author": {
        "name": "Andrew Morton",
        "email": "akpm@osdl.org",
        "time": "Fri Oct 27 11:41:44 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Fri Oct 27 15:34:51 2006 -0700"
      },
      "message": "[PATCH] vmlinux.lds: consolidate initcall sections\n\nAdd a vmlinux.lds.h helper macro for defining the eight-level initcall table,\nteach all the architectures to use it.\n\nThis is a prerequisite for a patch which performs initcall synchronisation for\nmultithreaded-probing.\n\nCc: Greg KH \u003cgreg@kroah.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\n[ Added AVR32 as well ]\nSigned-off-by: Haavard Skinnemoen \u003chskinnemoen@atmel.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "690a973f48b6ba2954465992c08e65059c8374fe",
      "tree": "b30a59496628592233944b3f4340cdfdf9d3d5de",
      "parents": [
        "cdfce1f5714fec7b24715f569b2fee1607350a6d"
      ],
      "author": {
        "name": "Jan Beulich",
        "email": "jbeulich@novell.com",
        "time": "Sat Oct 21 18:37:01 2006 +0200"
      },
      "committer": {
        "name": "Andi Kleen",
        "email": "andi@basil.nowhere.org",
        "time": "Sat Oct 21 18:37:01 2006 +0200"
      },
      "message": "[PATCH] x86-64: Speed up dwarf2 unwinder\n\nThis changes the dwarf2 unwinder to do a binary search for CIEs\ninstead of a linear work. The linker is unfortunately not\nable to build a proper lookup table at link time, instead it creates\none at runtime as soon as the bootmem allocator is usable (so you\u0027ll continue\nusing the linear lookup for the first [hopefully] few calls).\nThe code should be ready to utilize a build-time created table once\na fixed linker becomes available.\n\nSigned-off-by: Jan Beulich \u003cjbeulich@novell.com\u003e\nSigned-off-by: Andi Kleen \u003cak@suse.de\u003e\n"
    },
    {
      "commit": "7583ddfd3aae1007bc4fc67ea4c07d573d376e9e",
      "tree": "f88625aa25b246b29fc683682fa427ce18f08925",
      "parents": [
        "8b0e330b7720a206339887044fa275bf537a5264"
      ],
      "author": {
        "name": "Marcelo Tosatti",
        "email": "marcelo@kvack.org",
        "time": "Wed Sep 27 01:51:02 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Wed Sep 27 08:26:19 2006 -0700"
      },
      "message": "[PATCH] Include __param section in read-only data range\n\nThe param section is an array of \"kernel_param\" structures, storing only\nconstant data: pointer to name, permission of the variable pointed to by\n(void *)arg and pointers to set/get methods.\n\nMove end_rodata down to include __param section in the read-only range used\nby CONFIG_DEBUG_RODATA.\n\nSigned-off-by: Marcelo Tosatti \u003cmarcelo@kvack.org\u003e\nAcked-by: Arjan van de Ven \u003carjan@infradead.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "9c9b8b388296ad5a306ab238dc677cfe6ff4cb12",
      "tree": "997b14216fa77db77052766b38dd0ef4cd829648",
      "parents": [
        "461a9afff5e731d6337c0f5b08a1e727ccd57e0a"
      ],
      "author": {
        "name": "Jeremy Fitzhardinge",
        "email": "jeremy@xensource.com",
        "time": "Mon Sep 25 23:32:26 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Sep 26 08:48:55 2006 -0700"
      },
      "message": "[PATCH] x86: put .note.* sections into a PT_NOTE segment in vmlinux\n\nThis patch will pack any .note.* section into a PT_NOTE segment in the output\nfile.\n\nTo do this, we tell ld that we need a PT_NOTE segment.  This requires us to\nstart explicitly mapping sections to segments, so we also need to explicitly\ncreate PT_LOAD segments for text and data, and map the sections to them\nappropriately.  Fortunately, each section will default to its previous\nsection\u0027s segment, so it doesn\u0027t take many changes to vmlinux.lds.S.\n\nThis only changes i386 for now, but I presume the corresponding changes for\nother architectures will be as simple.\n\nThis change also adds \u003clinux/elfnote.h\u003e, which defines C and Assembler macros\nfor actually creating ELF notes.\n\nSigned-off-by: Jeremy Fitzhardinge \u003cjeremy@xensource.com\u003e\nCc: Eric W. Biederman \u003cebiederm@xmission.com\u003e\nCc: Hollis Blanchard \u003chollisb@us.ibm.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "f71d20e961474dde77e6558396efb93d6ac80a4b",
      "tree": "669610f79521fd173c28fc47bef39ecd4cdf52ab",
      "parents": [
        "f5e54d6e53a20cef45af7499e86164f0e0d16bb2"
      ],
      "author": {
        "name": "Arjan van de Ven",
        "email": "arjan@linux.intel.com",
        "time": "Wed Jun 28 04:26:45 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Wed Jun 28 14:59:04 2006 -0700"
      },
      "message": "[PATCH] Add EXPORT_UNUSED_SYMBOL and EXPORT_UNUSED_SYMBOL_GPL\n\nTemporarily add EXPORT_UNUSED_SYMBOL and EXPORT_UNUSED_SYMBOL_GPL.  These\nwill be used as a transition measure for symbols that aren\u0027t used in the\nkernel and are on the way out.  When a module uses such a symbol, a warning\nis printk\u0027d at modprobe time.\n\nThe main reason for removing unused exports is size: eacho export takes\nroughly between 100 and 150 bytes of kernel space in the binary.  This\npatch gives users the option to immediately get this size gain via a config\noption.\n\nSigned-off-by: Arjan van de Ven \u003carjan@linux.intel.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "9f28bb7e1d0188a993403ab39b774785892805e1",
      "tree": "939660c2531335dc899cc66fa7f3f05aa343d1e0",
      "parents": [
        "3fd6805f4dfb02bcfb5634972eabad0e790f119a"
      ],
      "author": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Mon Mar 20 13:17:13 2006 -0800"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Mon Mar 20 13:42:58 2006 -0800"
      },
      "message": "[PATCH] add EXPORT_SYMBOL_GPL_FUTURE()\n\nThis patch adds the ability to mark symbols that will be changed in the\nfuture, so that kernel modules that don\u0027t include MODULE_LICENSE(\"GPL\")\nand use the symbols, will be flagged and printed out to the system log.\n\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n"
    },
    {
      "commit": "37b73c828185731f6236a6387c02d7b08c150810",
      "tree": "312b9f082f78072aba62ee2230e417928156873e",
      "parents": [
        "d89c145c0344fe2180336af6a309a59a8bc8c1c0"
      ],
      "author": {
        "name": "Arjan van de Ven",
        "email": "arjan@infradead.org",
        "time": "Fri Jan 06 00:12:01 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Fri Jan 06 08:33:36 2006 -0800"
      },
      "message": "[PATCH] x86/x86_64: mark rodata section read only: generic infrastructure\n\nGeneric prep-work for marking the .rodata section readonly:\n* Align the rodata section at 4Kb boundary\n* call the mark_rodata_ro() function when available\n\nSigned-off-by: Arjan van de Ven \u003carjan@infradead.org\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Adrian Bunk \u003cbunk@stusta.de\u003e\nCc: Andi Kleen \u003cak@muc.de\u003e\nSigned-off-by: Jesper Juhl \u003cjesper.juhl@gmail.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "394b701ce4fbfde919a9bcbf84cb4820a7c6d47c",
      "tree": "a397fff4043a9810e753fb81224349bd36db45b8",
      "parents": [
        "d217d5450f11d8c907c0458d175b0dc999b4d06d"
      ],
      "author": {
        "name": "Matt Porter",
        "email": "mporter@kernel.crashing.org",
        "time": "Mon Nov 07 01:00:15 2005 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Mon Nov 07 07:53:46 2005 -0800"
      },
      "message": "[PATCH] RapidIO support: core base\n\nAdds a RapidIO subsystem to the kernel.  RIO is a switched fabric interconnect\nused in higher-end embedded applications.  The curious can look at the specs\nover at http://www.rapidio.org\n\nThe core code implements enumeration/discovery, management of\ndevices/resources, and interfaces for RIO drivers.\n\nThere\u0027s a lot more to do to take advantages of all the hardware features.\nHowever, this should provide a good base for folks with RIO hardware to start\ncontributing.\n\nSigned-off-by: Matt Porter \u003cmporter@kernel.crashing.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "a7d0c210337246fa9c25b73cf76dfdbb159f642b",
      "tree": "c139c803766b08ea2fc20a3e8f99b2952b6a1f0c",
      "parents": [
        "2d5cbf324c0fd4d0e1427bcb50b8bc00069e81b8"
      ],
      "author": {
        "name": "Paolo \u0027Blaisorblade\u0027 Giarrusso",
        "email": "blaisorblade@yahoo.it",
        "time": "Sat Sep 10 19:44:54 2005 +0200"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sat Sep 10 12:00:17 2005 -0700"
      },
      "message": "[PATCH] i386 / uml: add dwarf sections to static link script\n\nInside the linker script, insert the code for DWARF debug info sections. This\nmay help GDB\u0027ing a Uml binary. Actually, it seems that ld is able to guess\nwhat I added correctly, but normal linker scripts include this section so it\nshould be correct anyway adding it.\n\nOn request by Sam Ravnborg \u003csam@ravnborg.org\u003e, I\u0027ve added it to\nasm-generic/vmlinux.lds.s. I\u0027ve also moved there the stabs debug section,\nused the new macro in i386 linker script and added DWARF debug section to\nthat.\n\nIn the truth, I\u0027ve not been able to verify the difference in GDB behaviour\nafter this change (I\u0027ve seen large improvements with another patch). This\nmay depend on my binutils version, older one may have worse defaults.\n\nHowever, this section is present in normal linker script, so add it at\nleast for the sake of cleanness.\n\nSigned-off-by: Paolo \u0027Blaisorblade\u0027 Giarrusso \u003cblaisorblade@yahoo.it\u003e\nAcked-by: Sam Ravnborg \u003csam@ravnborg.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "d0aaff9796c3310326d10da44fc0faed352a1d29",
      "tree": "591fd8dedf34464989d23bbb0e66a1ccb2fa18a6",
      "parents": [
        "505db03639db34ca2c64fe7ee27190d324281f2c"
      ],
      "author": {
        "name": "Prasanna S Panchamukhi",
        "email": "prasanna@in.ibm.com",
        "time": "Tue Sep 06 15:19:26 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Wed Sep 07 16:57:59 2005 -0700"
      },
      "message": "[PATCH] Kprobes: prevent possible race conditions generic\n\nThere are possible race conditions if probes are placed on routines within the\nkprobes files and routines used by the kprobes.  For example if you put probe\non get_kprobe() routines, the system can hang while inserting probes on any\nroutine such as do_fork().  Because while inserting probes on do_fork(),\nregister_kprobes() routine grabs the kprobes spin lock and executes\nget_kprobe() routine and to handle probe of get_kprobe(), kprobes_handler()\ngets executed and tries to grab kprobes spin lock, and spins forever.  This\npatch avoids such possible race conditions by preventing probes on routines\nwithin the kprobes file and routines used by kprobes.\n\nI have modified the patches as per Andi Kleen\u0027s suggestion to move kprobes\nroutines and other routines used by kprobes to a seperate section\n.kprobes.text.\n\nAlso moved page fault and exception handlers, general protection fault to\n.kprobes.text section.\n\nThese patches have been tested on i386, x86_64 and ppc64 architectures, also\ncompiled on ia64 and sparc64 architectures.\n\nSigned-off-by: Prasanna S Panchamukhi \u003cprasanna@in.ibm.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "6d30e3a8995c9fa9e8471bb1dff8e070638df5ea",
      "tree": "c93562d7c66856108e7dfe43e1e85304cebb5d91",
      "parents": [
        "53e88e03e63621a15ec7fbccaaaca1a0f1616ed4"
      ],
      "author": {
        "name": "Sam Ravnborg",
        "email": "sam@mars.(none)",
        "time": "Thu Jul 14 20:15:44 2005 +0000"
      },
      "committer": {
        "name": "Sam Ravnborg",
        "email": "sam@mars.(none)",
        "time": "Thu Jul 14 20:15:44 2005 +0000"
      },
      "message": "kbuild: Avoid inconsistent kallsyms data\n\nSeveral reports on inconsistent kallsyms data has been caused by the aliased symbols\n__sched_text_start and __down to shift places in the output of nm.\nThe root cause was that on second pass ld aligned __sched_text_start to a 4 byte boundary\nwhich is the function alignment on i386.\nsched.text and spinlock.text is now aligned to an 8 byte boundary to make sure they\nare aligned to a function alignemnt on most (all?) archs.\n\nTested by: Paulo Marques \u003cpmarques@grupopie.com\u003e\nTested by: Alexander Stohr \u003cAlexander.Stohr@gmx.de\u003e\n\nSigned-off-by: Sam Ravnborg \u003csam@ravnborg.org\u003e\n"
    },
    {
      "commit": "60bad7fadf59313a6359f8828bb0087884ad001a",
      "tree": "c11e2d5e11ce850202f73d3a70fd0d6d04cfd39f",
      "parents": [
        "208fb93162d51faa69b9774fa7809858d84fd9dc"
      ],
      "author": {
        "name": "Eric W. Biederman",
        "email": "ebiederm@xmission.com",
        "time": "Sat Jun 25 14:57:46 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@ppc970.osdl.org",
        "time": "Sat Jun 25 16:24:47 2005 -0700"
      },
      "message": "[PATCH] kexec: vmlinux: fix physical addresses\n\nIn vmlinux.lds.h the code is carefull to define every section so vmlinux\nproperly reports the correct physical load address of code, as well as\nit\u0027s virtual address.\n\nThe new SECURITY_INIT definition fails to follow that convention and\nand causes incorrect physical address to appear in the vmlinux if\nthere are any security initcalls.\n\nThis patch updates the SECURITY_INIT to follow the convention in the rest of\nthe file.\n\nSigned-off-by: Eric Biederman \u003cebiederm@xmission.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    }
  ],
  "next": "1da177e4c3f41524e886b7f1b8a0c1fc7321cac2"
}
