)]}'
{
  "log": [
    {
      "commit": "4403b406d4369a275d483ece6ddee0088cc0d592",
      "tree": "caefd6b7aabc1c517942be1abf25d841b181f323",
      "parents": [
        "e013e13bf605b9e6b702adffbe2853cfc60e7806"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Oct 25 19:53:38 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Oct 25 19:53:38 2008 -0700"
      },
      "message": "Revert \"Call init_workqueues before pre smp initcalls.\"\n\nThis reverts commit a802dd0eb5fc97a50cf1abb1f788a8f6cc5db635 by moving\nthe call to init_workqueues() back where it belongs - after SMP has been\ninitialized.\n\nIt also moves stop_machine_init() - which needs workqueues - to a later\nphase using a core_initcall() instead of early_initcall().  That should\nsatisfy all ordering requirements, and was apparently the reason why\ninit_workqueues() was moved to be too early.\n\nCc: Heiko Carstens \u003cheiko.carstens@de.ibm.com\u003e\nCc: Rusty Russell \u003crusty@rustcorp.com.au\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "5ed487bc2c44ca4e9668ef9cb54c830e2a9fac47",
      "tree": "af19ed28db83e8f52690872ac99336da1cf2fd3b",
      "parents": [
        "5b34653963de7a6d0d8c783527457d68fddc60fb",
        "fd217f4d70172c526478f2bc76859e909fdfa674"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Oct 23 10:22:40 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Oct 23 10:22:40 2008 -0700"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs-2.6\n\n* \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs-2.6: (46 commits)\n  [PATCH] fs: add a sanity check in d_free\n  [PATCH] i_version: remount support\n  [patch] vfs: make security_inode_setattr() calling consistent\n  [patch 1/3] FS_MBCACHE: don\u0027t needlessly make it built-in\n  [PATCH] move executable checking into -\u003epermission()\n  [PATCH] fs/dcache.c: update comment of d_validate()\n  [RFC PATCH] touch_mnt_namespace when the mount flags change\n  [PATCH] reiserfs: add missing llseek method\n  [PATCH] fix -\u003ellseek for more directories\n  [PATCH vfs-2.6 6/6] vfs: add LOOKUP_RENAME_TARGET intent\n  [PATCH vfs-2.6 5/6] vfs: remove LOOKUP_PARENT from non LOOKUP_PARENT lookup\n  [PATCH vfs-2.6 4/6] vfs: remove unnecessary fsnotify_d_instantiate()\n  [PATCH vfs-2.6 3/6] vfs: add __d_instantiate() helper\n  [PATCH vfs-2.6 2/6] vfs: add d_ancestor()\n  [PATCH vfs-2.6 1/6] vfs: replace parent \u003d\u003d dentry-\u003ed_parent by IS_ROOT()\n  [PATCH] get rid of on-stack dentry in udf\n  [PATCH 2/2] anondev: switch to IDA\n  [PATCH 1/2] anondev: init IDR statically\n  [JFFS2] Use d_splice_alias() not d_add() in jffs2_lookup()\n  [PATCH] Optimise NFS readdir hack slightly.\n  ...\n"
    },
    {
      "commit": "a5344876065e047d507800d0801a637d68d3b129",
      "tree": "240173ed2f588a1c61aff9bb513255f99b0cd6a2",
      "parents": [
        "296e1ce0dc36bb106c139e25482d02da43c70e71",
        "8163bcac779f62c6bf847caed9bce905db0693fb"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Oct 23 10:00:14 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Oct 23 10:00:14 2008 -0700"
      },
      "message": "Merge git://git.kernel.org/pub/scm/linux/kernel/git/rusty/linux-2.6-for-linus\n\n* git://git.kernel.org/pub/scm/linux/kernel/git/rusty/linux-2.6-for-linus:\n  stop_machine: fix error code handling on multiple cpus\n  stop_machine: use workqueues instead of kernel threads\n  workqueue: introduce create_rt_workqueue\n  Call init_workqueues before pre smp initcalls.\n  Make panic\u003d and panic_on_oops into core_params\n  Make initcall_debug a core_param\n  core_param() for genuinely core kernel parameters\n  param: Fix duplicate module prefixes\n  module: check kernel param length at compile time, not runtime\n  Remove stop_machine during module load v2\n  module: simplify load_module.\n"
    },
    {
      "commit": "94b6da5ab8293b04a300ba35c72eddfa94db8b02",
      "tree": "8ca1c8abb7934ab51657fffeb26a5f5aabd34743",
      "parents": [
        "be07c4ed4043ab8c26f222348136141335e47a2f"
      ],
      "author": {
        "name": "KAMEZAWA Hiroyuki",
        "email": "kamezawa.hiroyu@jp.fujitsu.com",
        "time": "Wed Oct 22 14:15:05 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Oct 23 08:55:02 2008 -0700"
      },
      "message": "memcg: fix page_cgroup allocation\n\npage_cgroup_init() is called from mem_cgroup_init(). But at this\npoint, we cannot call alloc_bootmem().\n(and this caused panic at boot.)\n\nThis patch moves page_cgroup_init() to init/main.c.\n\nTime table is following:\n\u003d\u003d\n  parse_args(). # we can trust mem_cgroup_subsys.disabled bit after this.\n  ....\n  cgroup_init_early()  # \"early\" init of cgroup.\n  ....\n  setup_arch()         # memmap is allocated.\n  ...\n  page_cgroup_init();\n  mem_init();   # we cannot call alloc_bootmem after this.\n  ....\n  cgroup_init() # mem_cgroup is initialized.\n\u003d\u003d\n\nBefore page_cgroup_init(), mem_map must be initialized. So,\nI added page_cgroup_init() to init/main.c directly.\n\n(*) maybe this is not very clean but\n    - cgroup_init_early() is too early\n    - in cgroup_init(), we have to use vmalloc instead of alloc_bootmem().\n    use of vmalloc area in x86-32 is important and we should avoid very large\n    vmalloc() in x86-32. So, we want to use alloc_bootmem() and added page_cgroup_init()\n    directly to init/main.c\n\n[akpm@linux-foundation.org: remove unneeded/bad mem_cgroup_subsys declaration]\n[akpm@linux-foundation.org: fix build]\nAcked-by: Balbir Singh \u003cbalbir@linux.vnet.ibm.com\u003e\nTested-by: Balbir Singh \u003cbalbir@linux.vnet.ibm.com\u003e\nSigned-off-by: KAMEZAWA Hiroyuki \u003ckamezawa.hiroyu@jp.fujitsu.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "6de24f0ed08054b2a202902e4d63beff27654db8",
      "tree": "91f378a0335b5b9756020d37e1c54bba4a2d6434",
      "parents": [
        "8966c5e0fc867f5a7da5756b4cd1b8bbbed3d5dd"
      ],
      "author": {
        "name": "Alexey Dobriyan",
        "email": "adobriyan@gmail.com",
        "time": "Thu Aug 28 06:25:49 2008 +0400"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Thu Oct 23 05:13:13 2008 -0400"
      },
      "message": "[PATCH 1/2] anondev: init IDR statically\n\nSigned-off-by: Alexey Dobriyan \u003cadobriyan@gmail.com\u003e\n"
    },
    {
      "commit": "a802dd0eb5fc97a50cf1abb1f788a8f6cc5db635",
      "tree": "103d3ee6fe2367e40f78e10838653b1f588f0677",
      "parents": [
        "f44dd164f37336f7e17fabf5740698fd10635172"
      ],
      "author": {
        "name": "Heiko Carstens",
        "email": "heiko.carstens@de.ibm.com",
        "time": "Mon Oct 13 23:50:08 2008 +0200"
      },
      "committer": {
        "name": "Rusty Russell",
        "email": "rusty@rustcorp.com.au",
        "time": "Wed Oct 22 10:00:25 2008 +1100"
      },
      "message": "Call init_workqueues before pre smp initcalls.\n\nThis allows to create workqueues from within the context of\na pre smp initcall (aka early_initcall).\n\nSigned-off-by: Heiko Carstens \u003cheiko.carstens@de.ibm.com\u003e\nSigned-off-by: Rusty Russell \u003crusty@rustcorp.com.au\u003e\n"
    },
    {
      "commit": "d0ea3d7d286aeda2a9216d76424abc285b87b7b4",
      "tree": "b0e12906ab0ec66e36e51bee78b5d199edb887c4",
      "parents": [
        "67e67ceaac5bf55dbdceb704ff2d763d438b5373"
      ],
      "author": {
        "name": "Rusty Russell",
        "email": "rusty@rustcorp.com.au",
        "time": "Wed Oct 22 10:00:23 2008 -0500"
      },
      "committer": {
        "name": "Rusty Russell",
        "email": "rusty@rustcorp.com.au",
        "time": "Wed Oct 22 10:00:24 2008 +1100"
      },
      "message": "Make initcall_debug a core_param\n\nThis is the one I really wanted: now it effects module loading, it\nmakes sense to be able to flip it after boot.\n\nSigned-off-by: Rusty Russell \u003crusty@rustcorp.com.au\u003e\nAcked-by: Arjan van de Ven \u003carjan@linux.intel.com\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": "db64fe02258f1507e13fe5212a989922323685ce",
      "tree": "ed24c8d4e3b0bcadfce3a8c3916a6b35d6c891cb",
      "parents": [
        "cb8f488c33539f096580e202f5438a809195008f"
      ],
      "author": {
        "name": "Nick Piggin",
        "email": "npiggin@suse.de",
        "time": "Sat Oct 18 20:27:03 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Oct 20 08:52:32 2008 -0700"
      },
      "message": "mm: rewrite vmap layer\n\nRewrite the vmap allocator to use rbtrees and lazy tlb flushing, and\nprovide a fast, scalable percpu frontend for small vmaps (requires a\nslightly different API, though).\n\nThe biggest problem with vmap is actually vunmap.  Presently this requires\na global kernel TLB flush, which on most architectures is a broadcast IPI\nto all CPUs to flush the cache.  This is all done under a global lock.  As\nthe number of CPUs increases, so will the number of vunmaps a scaled\nworkload will want to perform, and so will the cost of a global TLB flush.\n This gives terrible quadratic scalability characteristics.\n\nAnother problem is that the entire vmap subsystem works under a single\nlock.  It is a rwlock, but it is actually taken for write in all the fast\npaths, and the read locking would likely never be run concurrently anyway,\nso it\u0027s just pointless.\n\nThis is a rewrite of vmap subsystem to solve those problems.  The existing\nvmalloc API is implemented on top of the rewritten subsystem.\n\nThe TLB flushing problem is solved by using lazy TLB unmapping.  vmap\naddresses do not have to be flushed immediately when they are vunmapped,\nbecause the kernel will not reuse them again (would be a use-after-free)\nuntil they are reallocated.  So the addresses aren\u0027t allocated again until\na subsequent TLB flush.  A single TLB flush then can flush multiple\nvunmaps from each CPU.\n\nXEN and PAT and such do not like deferred TLB flushing because they can\u0027t\nalways handle multiple aliasing virtual addresses to a physical address.\nThey now call vm_unmap_aliases() in order to flush any deferred mappings.\nThat call is very expensive (well, actually not a lot more expensive than\na single vunmap under the old scheme), however it should be OK if not\ncalled too often.\n\nThe virtual memory extent information is stored in an rbtree rather than a\nlinked list to improve the algorithmic scalability.\n\nThere is a per-CPU allocator for small vmaps, which amortizes or avoids\nglobal locking.\n\nTo use the per-CPU interface, the vm_map_ram / vm_unmap_ram interfaces\nmust be used in place of vmap and vunmap.  Vmalloc does not use these\ninterfaces at the moment, so it will not be quite so scalable (although it\nwill use lazy TLB flushing).\n\nAs a quick test of performance, I ran a test that loops in the kernel,\nlinearly mapping then touching then unmapping 4 pages.  Different numbers\nof tests were run in parallel on an 4 core, 2 socket opteron.  Results are\nin nanoseconds per map+touch+unmap.\n\nthreads           vanilla         vmap rewrite\n1                 14700           2900\n2                 33600           3000\n4                 49500           2800\n8                 70631           2900\n\nSo with a 8 cores, the rewritten version is already 25x faster.\n\nIn a slightly more realistic test (although with an older and less\nscalable version of the patch), I ripped the not-very-good vunmap batching\ncode out of XFS, and implemented the large buffer mapping with vm_map_ram\nand vm_unmap_ram...  along with a couple of other tricks, I was able to\nspeed up a large directory workload by 20x on a 64 CPU system.  I believe\nvmap/vunmap is actually sped up a lot more than 20x on such a system, but\nI\u0027m running into other locks now.  vmap is pretty well blown off the\nprofiles.\n\nBefore:\n1352059 total                                      0.1401\n798784 _write_lock                              8320.6667 \u003c- vmlist_lock\n529313 default_idle                             1181.5022\n 15242 smp_call_function                         15.8771  \u003c- vmap tlb flushing\n  2472 __get_vm_area_node                         1.9312  \u003c- vmap\n  1762 remove_vm_area                             4.5885  \u003c- vunmap\n   316 map_vm_area                                0.2297  \u003c- vmap\n   312 kfree                                      0.1950\n   300 _spin_lock                                 3.1250\n   252 sn_send_IPI_phys                           0.4375  \u003c- tlb flushing\n   238 vmap                                       0.8264  \u003c- vmap\n   216 find_lock_page                             0.5192\n   196 find_next_bit                              0.3603\n   136 sn2_send_IPI                               0.2024\n   130 pio_phys_write_mmr                         2.0312\n   118 unmap_kernel_range                         0.1229\n\nAfter:\n 78406 total                                      0.0081\n 40053 default_idle                              89.4040\n 33576 ia64_spinlock_contention                 349.7500\n  1650 _spin_lock                                17.1875\n   319 __reg_op                                   0.5538\n   281 _atomic_dec_and_lock                       1.0977\n   153 mutex_unlock                               1.5938\n   123 iget_locked                                0.1671\n   117 xfs_dir_lookup                             0.1662\n   117 dput                                       0.1406\n   114 xfs_iget_core                              0.0268\n    92 xfs_da_hashname                            0.1917\n    75 d_alloc                                    0.0670\n    68 vmap_page_range                            0.0462 \u003c- vmap\n    58 kmem_cache_alloc                           0.0604\n    57 memset                                     0.0540\n    52 rb_next                                    0.1625\n    50 __copy_user                                0.0208\n    49 bitmap_find_free_region                    0.2188 \u003c- vmap\n    46 ia64_sn_udelay                             0.1106\n    45 find_inode_fast                            0.1406\n    42 memcmp                                     0.2188\n    42 finish_task_switch                         0.1094\n    42 __d_lookup                                 0.0410\n    40 radix_tree_lookup_slot                     0.1250\n    37 _spin_unlock_irqrestore                    0.3854\n    36 xfs_bmapi                                  0.0050\n    36 kmem_cache_free                            0.0256\n    35 xfs_vn_getattr                             0.0322\n    34 radix_tree_lookup                          0.1062\n    33 __link_path_walk                           0.0035\n    31 xfs_da_do_buf                              0.0091\n    30 _xfs_buf_find                              0.0204\n    28 find_get_page                              0.0875\n    27 xfs_iread                                  0.0241\n    27 __strncpy_from_user                        0.2812\n    26 _xfs_buf_initialize                        0.0406\n    24 _xfs_buf_lookup_pages                      0.0179\n    24 vunmap_page_range                          0.0250 \u003c- vunmap\n    23 find_lock_page                             0.0799\n    22 vm_map_ram                                 0.0087 \u003c- vmap\n    20 kfree                                      0.0125\n    19 put_page                                   0.0330\n    18 __kmalloc                                  0.0176\n    17 xfs_da_node_lookup_int                     0.0086\n    17 _read_lock                                 0.0885\n    17 page_waitqueue                             0.0664\n\nvmap has gone from being the top 5 on the profiles and flushing the crap\nout of all TLBs, to using less than 1% of kernel time.\n\n[akpm@linux-foundation.org: cleanups, section fix]\n[akpm@linux-foundation.org: fix build on alpha]\nSigned-off-by: Nick Piggin \u003cnpiggin@suse.de\u003e\nCc: Jeremy Fitzhardinge \u003cjeremy@goop.org\u003e\nCc: Krzysztof Helt \u003ckrzysztof.h1@poczta.fm\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "ca538f6bbe583406f941f3041d40c41f9a13d1de",
      "tree": "460e3cf96472e327b48befbb4836c2d40e46f937",
      "parents": [
        "ad0a3b68114e8f3c25ac0045b45a2838f23e3b3a"
      ],
      "author": {
        "name": "Tim Bird",
        "email": "tim.bird@am.sony.com",
        "time": "Thu Oct 09 15:23:05 2008 -0700"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Oct 14 10:39:27 2008 +0200"
      },
      "message": "tracing/fastboot: add better resolution to initcall debug/tracing\n\nChange the time resolution for initcall_debug to microseconds, from\nmilliseconds.  This is handy to determine which initcalls you want to work\non for faster booting.\n\nOne one of my test machines, over 90% of the initcalls are less than a\nmillisecond and (without this patch) these are all reported as 0 msecs.\nWorking on the 900 us ones is more important than the 4 us ones.\n\nWith \u0027quiet\u0027 on the kernel command line, this adds no significant overhead\nto kernel boot time.\n\nSigned-off-by: Tim Bird \u003ctim.bird@am.sony.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "097d036a2f25eecc42435c57e010aaf4a2eed2d9",
      "tree": "ee5e40b940475e8a047e02093688072ff3e330d3",
      "parents": [
        "6450c1d3213e27b0dcbf34cce7ad1ae74244c520"
      ],
      "author": {
        "name": "Frederic Weisbecker",
        "email": "fweisbec@gmail.com",
        "time": "Fri Oct 03 15:39:21 2008 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Oct 14 10:39:17 2008 +0200"
      },
      "message": "tracing/fastboot: only trace non-module initcalls\n\nAt this time, only built-in initcalls interest us.\nWe can\u0027t really produce a relevant graph if we include\nthe modules initcall too.\n\nI had good results after this patch (see svg in attachment).\n\nSigned-off-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "5601020feb0c3010e9e3e0131e9697ac6a06777b",
      "tree": "99d1a70dbf3bba2b5ae1007c4828c28e6480214a",
      "parents": [
        "cb5ab74204a6e2579d1119bf1348eb806526b12b"
      ],
      "author": {
        "name": "Frederic Weisbecker",
        "email": "fweisbec@gmail.com",
        "time": "Thu Oct 02 13:26:05 2008 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Oct 14 10:39:12 2008 +0200"
      },
      "message": "tracing/fastboot: get the initcall name before it disappears\n\nAfter some initcall traces, some initcall names may be inconsistent.\nThat\u0027s because these functions will disappear from the .init section\nand also their name from the symbols table.\n\nSo we have to copy the name of the function in a buffer large enough\nduring the trace appending. It is not costly for the ring_buffer because\nthe number of initcall entries is commonly not really large.\n\nSigned-off-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "cb5ab74204a6e2579d1119bf1348eb806526b12b",
      "tree": "4810258d42e0370ec15cf424d5e3c6487fbd1781",
      "parents": [
        "77ae11f63befb7fc41ec256f1fcb72ca7e4160d5"
      ],
      "author": {
        "name": "Frederic Weisbecker",
        "email": "fweisbec@gmail.com",
        "time": "Thu Oct 02 12:59:20 2008 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Oct 14 10:39:11 2008 +0200"
      },
      "message": "tracing/fastboot: change the printing of boot tracer according to bootgraph.pl\n\nChange the boot tracer printing to make it parsable for\nthe scripts/bootgraph.pl script.\n\nWe have now to output two lines for each initcall, according to the\nprintk in do_one_initcall() in init/main.c\nWe need now the call\u0027s time and the return\u0027s time.\n\nSigned-off-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "3bf77af6e1fef1124bf71d81f9f84885f0ee0dea",
      "tree": "e16ac5f19fdcef2634a4ee5d5c10e9f31ee6df78",
      "parents": [
        "1f5c2abbdeb2bb07b20c6a66bfecefe6c867b1ee"
      ],
      "author": {
        "name": "Frédéric Weisbecker",
        "email": "fweisbec@gmail.com",
        "time": "Tue Sep 23 11:38:18 2008 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Oct 14 10:38:50 2008 +0200"
      },
      "message": "tracing/ftrace: launch boot tracing after pre-smp initcalls\n\nLaunch the boot tracing inside the initcall_debug area. Old printk\nhave not been removed to keep the old way of initcall tracing for\nbackward compatibility.\n\n[ mingo@elte.hu: resolved conflicts ]\nSigned-off-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "aa5d9151f745b6ee6a236a1f109118034277eb92",
      "tree": "3b0660685ba60cf2401e70eba4572ed2691c817d",
      "parents": [
        "1b7ae37c030a9fbbb5ebbf5d7bbfd7208cf805b7"
      ],
      "author": {
        "name": "Arjan van de Ven",
        "email": "arjan@linux.intel.com",
        "time": "Sat Sep 13 09:36:06 2008 -0700"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Oct 14 10:38:46 2008 +0200"
      },
      "message": "tracing/fastboot: add a script to visualize the kernel boot process / time\n\nWhen optimizing the kernel boot time, it\u0027s very valuable to visualize\nwhat is going on at which time. In addition, with the fastboot asynchronous\ninitcall level, it\u0027s very valuable to see which initcall gets run where\nand when.\n\nThis patch adds a script to turn a dmesg into a SVG graph (that can be\nshown with tools such as InkScape, Gimp or Firefox) and a small change\nto the initcall code to print the PID of the thread calling the initcall\n(so that the script can work out the parallelism).\n\nSigned-off-by: Arjan van de Ven \u003carjan@linux.intel.com\u003e\n"
    },
    {
      "commit": "68bf21aa15c85d2e9b623dcda2b1ed8893275fa1",
      "tree": "54d4d4f7e8311b77f3166a8807a635347d479081",
      "parents": [
        "8da3821ba5634497da63d58a69e24a97697c4a2b"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Thu Aug 14 15:45:08 2008 -0400"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Oct 14 10:34:44 2008 +0200"
      },
      "message": "ftrace: mcount call site on boot nops core\n\nThis is the infrastructure to the converting the mcount call sites\nrecorded by the __mcount_loc section into nops on boot. It also allows\nfor using these sites to enable tracing as normal. When the __mcount_loc\nsection is used, the \"ftraced\" kernel thread is disabled.\n\nThis uses the current infrastructure to record the mcount call sites\nas well as convert them to nops. The mcount function is kept as a stub\non boot up and not converted to the ftrace_record_ip function. We use the\nftrace_record_ip to only record from the table.\n\nThis patch does not handle modules. That comes with a later patch.\n\nSigned-off-by: Steven Rostedt \u003csrostedt@redhat.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "f9b9796ade7609cd62571d38f064e20c77d31281",
      "tree": "ab108882f8bb940a4a3c2cc483223fb6791bb473",
      "parents": [
        "7cc4e87f912bbefa440a51856b8d076e5d1f554a"
      ],
      "author": {
        "name": "Arjan van de Ven",
        "email": "arjan@linux.intel.com",
        "time": "Sat Sep 13 09:36:06 2008 -0700"
      },
      "committer": {
        "name": "Arjan van de Ven",
        "email": "arjan@linux.intel.com",
        "time": "Sun Oct 12 08:07:20 2008 -0700"
      },
      "message": "Add a script to visualize the kernel boot process / time\n\nWhen optimizing the kernel boot time, it\u0027s very valuable to visualize\nwhat is going on at which time. In addition, with some of the initializing\ngoing asynchronous soon, it\u0027s valuable to track/print which worker thread\nis executing the initialization.\n\nThis patch adds a script to turn a dmesg into a SVG graph (that can be\nshown with tools such as InkScape, Gimp or Firefox) and a small change\nto the initcall code to print the PID of the thread calling the initcall\n(so that the script can work out the parallelism).\n\nSigned-off-by: Arjan van de Ven \u003carjan@linux.intel.com\u003e\n"
    },
    {
      "commit": "96d746c68fae9a1e3167caab04c22fd0f677f62d",
      "tree": "a2e1d1be86ae7660e00986159987ee3bd1e8f2a3",
      "parents": [
        "95b866d5afcafee00fc9ad70665e48c86d8c4e0f"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Oct 03 13:38:07 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Oct 03 13:38:07 2008 -0700"
      },
      "message": "Fix init/main.c to use regular printk with \u0027%pF\u0027 for initcall fn\n\n.. small detail, but the silly e1000e initcall warning debugging caused\nme to look at this code.  Rather than gouge my eyes out with a spoon, I\njust fixed it.\n\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "59f9415ffb9759e950d775f4c400f747b332cc02",
      "tree": "354544b8cad8ae77a5f960fe601b2a3613a2523a",
      "parents": [
        "4bceba417a795b78a5146e3f85291cb7bb2402ef"
      ],
      "author": {
        "name": "Arjan van de Ven",
        "email": "arjan@linux.intel.com",
        "time": "Wed Jul 30 12:49:02 2008 -0700"
      },
      "committer": {
        "name": "Rusty Russell",
        "email": "rusty@rustcorp.com.au",
        "time": "Tue Aug 12 17:52:54 2008 +1000"
      },
      "message": "modules: extend initcall_debug functionality to the module loader\n\nThe kernel has this really nice facility where if you put \"initcall_debug\"\non the kernel commandline, it\u0027ll print which function it\u0027s going to\nexecute just before calling an initcall, and then after the call completes\nit will\n\n1) print if it had an error code\n\n2) checks for a few simple bugs (like leaving irqs off)\nand\n\n3) print how long the init call took in milliseconds.\n\nWhile trying to optimize the boot speed of my laptop, I have been loving\nnumber 3 to figure out what to optimize...  ...  and then I wished that\nthe same thing was done for module loading.\n\nThis patch makes the module loader use this exact same functionality; it\u0027s\na logical extension in my view (since modules are just sort of late\nbinding initcalls anyway) and so far I\u0027ve found it quite useful in finding\nwhere things are too slow in my boot.\n\nSigned-off-by: Arjan van de Ven \u003carjan@linux.intel.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Rusty Russell \u003crusty@rustcorp.com.au\u003e\n"
    },
    {
      "commit": "b5b9309d3415480b3e66314a1d6c89db58bff9de",
      "tree": "2afca0cb09bded726fa06b967c4cfa23e5283adf",
      "parents": [
        "39b986a6c73434d122967dc86efb295ab9a28437"
      ],
      "author": {
        "name": "Bartlomiej Zolnierkiewicz",
        "email": "bzolnier@gmail.com",
        "time": "Tue Aug 05 18:16:58 2008 +0200"
      },
      "committer": {
        "name": "Bartlomiej Zolnierkiewicz",
        "email": "bzolnier@gmail.com",
        "time": "Tue Aug 05 18:16:58 2008 +0200"
      },
      "message": "remove unnecessary \u003clinux/hdreg.h\u003e includes\n\nFollowing files don\u0027t need \u003clinux/hdreg.h\u003e at all:\n\n- arch/mips/jazz/setup.c\n- arch/sh/boards/mach-systemh/irq.c\n- drivers/macintosh/mediabay.c\n- drivers/scsi/hptiop.c\n- drivers/usb/storage/freecom.c\n- arch/powerpc/include/asm/ide.h\n- init/main.c\n\nCc: Christoph Hellwig \u003chch@infradead.org\u003e\nSigned-off-by: Bartlomiej Zolnierkiewicz \u003cbzolnier@gmail.com\u003e\n"
    },
    {
      "commit": "bd673c7c3b1681dbfabab0062e67398dadf806af",
      "tree": "b2334952d5e070042fab29715a4ef228d0cd96a2",
      "parents": [
        "06ac667903ebea8191d4f7e7fa4e0936161e25fe"
      ],
      "author": {
        "name": "Geert Uytterhoeven",
        "email": "geert@linux-m68k.org",
        "time": "Tue Jul 29 22:33:36 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Jul 30 09:41:45 2008 -0700"
      },
      "message": "initrd: cast `initrd_start\u0027 to `void *\u0027\n\ncommit fb6624ebd912e3d6907ca6490248e73368223da9 (initrd: Fix virtual/physical\nmix-up in overwrite test) introduced the compiler warning below on mips,\nas its virt_to_page() doesn\u0027t cast the passed address to unsigned long\ninternally, unlike on most other architectures:\n\ninit/main.c: In function `start_kernel\u0027:\ninit/main.c:633: warning: passing argument 1 of `virt_to_phys\u0027 makes pointer from integer without a cast\ninit/main.c:636: warning: passing argument 1 of `virt_to_phys\u0027 makes pointer from integer without a cast\n\nFor now, kill the warning by explicitly casting initrd_start to `void *\u0027, as\nthat\u0027s the type it should really be.\n\nReported-by: Atsushi Nemoto \u003canemo@mba.ocn.ne.jp\u003e\nSigned-off-by: Geert Uytterhoeven \u003cgeert@linux-m68k.org\u003e\nCc: Ralf Baechle \u003cralf@linux-mips.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "7babe8db99d305340cf4828ce1f5a1481d5622ef",
      "tree": "fdac7a084646bb6d125ebc62b0b75806e45d1025",
      "parents": [
        "c2147a5092cfe13dbf3210e54e8a622015edeecc"
      ],
      "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": "Full conversion to early_initcall() interface, remove old interface\n\nA previous patch added the early_initcall(), to allow a cleaner hooking of\npre-SMP initcalls.  Now we remove the older interface, converting all\nexisting users to the new one.\n\n[akpm@linux-foundation.org: cleanups]\n[akpm@linux-foundation.org: build fix]\n[kosaki.motohiro@jp.fujitsu.com: warning fix]\n[kosaki.motohiro@jp.fujitsu.com: warning fix]\nSigned-off-by: Eduard - Gabriel Munteanu \u003ceduard.munteanu@linux360.ro\u003e\nCc: Tom Zanussi \u003ctzanussi@gmail.com\u003e\nSigned-off-by: KOSAKI Motohiro \u003ckosaki.motohiro@jp.fujitsu.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\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": "3ae4eed34be0177a8e003411a84e4ee212adbced",
      "tree": "dc73a9e0b884c35d996cd66dca0fc8a7a06d43df",
      "parents": [
        "4ecb90090c84210a8bd2a9d7a5906e616735873c"
      ],
      "author": {
        "name": "Adrian Bunk",
        "email": "bunk@kernel.org",
        "time": "Fri Jul 25 01:48:34 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Jul 25 10:53:45 2008 -0700"
      },
      "message": "proper pid{hash,map}_init() prototypes\n\nThis patch adds proper prototypes for pid{hash,map}_init() in\ninclude/linux/pid_namespace.h\n\nSigned-off-by: Adrian Bunk \u003cbunk@kernel.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "7f9dce38378f0a4a298e885553d6bb7121376376",
      "tree": "5bfd688c9f356f7216bbc3cef3b4c10153de334b",
      "parents": [
        "26dcce0fabbef75ae426461edf21b5030bad60f3",
        "ba42059fbd0aa1ac91b582412b5fedb1258f241f"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Jul 23 19:36:53 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Jul 23 19:36:53 2008 -0700"
      },
      "message": "Merge branch \u0027sched/for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip\n\n* \u0027sched/for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:\n  sched: hrtick_enabled() should use cpu_active()\n  sched, x86: clean up hrtick implementation\n  sched: fix build error, provide partition_sched_domains() unconditionally\n  sched: fix warning in inc_rt_tasks() to not declare variable \u0027rq\u0027 if it\u0027s not needed\n  cpu hotplug: Make cpu_active_map synchronization dependency clear\n  cpu hotplug, sched: Introduce cpu_active_map and redo sched domain managment (take 2)\n  sched: rework of \"prioritize non-migratable tasks over migratable ones\"\n  sched: reduce stack size in isolated_cpu_setup()\n  Revert parts of \"ftrace: do not trace scheduler functions\"\n\nFixed up conflicts in include/asm-x86/thread_info.h (due to the\nTIF_SINGLESTEP unification vs TIF_HRTICK_RESCHED removal) and\nkernel/sched_fair.c (due to cpu_active_map vs for_each_cpu_mask_nr()\nintroduction).\n"
    },
    {
      "commit": "fb6624ebd912e3d6907ca6490248e73368223da9",
      "tree": "5b65886c761a444fe115e96d7db04fd611816477",
      "parents": [
        "18c993629a5a5938a032f04a698d15122550593d"
      ],
      "author": {
        "name": "Geert Uytterhoeven",
        "email": "geert@linux-m68k.org",
        "time": "Thu Jul 17 21:16:36 2008 +0200"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun Jul 20 17:24:40 2008 -0700"
      },
      "message": "initrd: Fix virtual/physical mix-up in overwrite test\n\nOn recent kernels, I get the following error when using an initrd:\n\n| initrd overwritten (0x00b78000 \u003c 0x07668000) - disabling it.\n\nMy Amiga 4000 has 12 MiB of RAM at physical address 0x07400000 (virtual\n0x00000000).\nThe initrd is located at the end of RAM: 0x00b78000 - 0x00c00000 (virtual).\nThe overwrite test compares the (virtual) initrd location to the (physical)\nfirst available memory location, which fails.\n\nThis patch converts initrd_start to a page frame number, so it can safely be\ncompared with min_low_pfn.\n\nBefore the introduction of discontiguous memory support on m68k\n(12d810c1b8c2b913d48e629e2b5c01d105029839), min_low_pfn was just left\nuntouched by the m68k-specific code (zero, I guess), and everything worked\nfine.\n\nSigned-off-by: Geert Uytterhoeven \u003cgeert@linux-m68k.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "e761b7725234276a802322549cee5255305a0930",
      "tree": "27b351a7d5fc9a93590e0effce1c5adb1bfcebc0",
      "parents": [
        "7ebefa8ceefed44cc321be70afc54a585a68ac0b"
      ],
      "author": {
        "name": "Max Krasnyansky",
        "email": "maxk@qualcomm.com",
        "time": "Tue Jul 15 04:43:49 2008 -0700"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Jul 18 13:22:25 2008 +0200"
      },
      "message": "cpu hotplug, sched: Introduce cpu_active_map and redo sched domain managment (take 2)\n\nThis is based on Linus\u0027 idea of creating cpu_active_map that prevents\nscheduler load balancer from migrating tasks to the cpu that is going\ndown.\n\nIt allows us to simplify domain management code and avoid unecessary\ndomain rebuilds during cpu hotplug event handling.\n\nPlease ignore the cpusets part for now. It needs some more work in order\nto avoid crazy lock nesting. Although I did simplfy and unify domain\nreinitialization logic. We now simply call partition_sched_domains() in\nall the cases. This means that we\u0027re using exact same code paths as in\ncpusets case and hence the test below cover cpusets too.\nCpuset changes to make rebuild_sched_domains() callable from various\ncontexts are in the separate patch (right next after this one).\n\nThis not only boots but also easily handles\n\twhile true; do make clean; make -j 8; done\nand\n\twhile true; do on-off-cpu 1; done\nat the same time.\n(on-off-cpu 1 simple does echo 0/1 \u003e /sys/.../cpu1/online thing).\n\nSuprisingly the box (dual-core Core2) is quite usable. In fact I\u0027m typing\nthis on right now in gnome-terminal and things are moving just fine.\n\nAlso this is running with most of the debug features enabled (lockdep,\nmutex, etc) no BUG_ONs or lockdep complaints so far.\n\nI believe I addressed all of the Dmitry\u0027s comments for original Linus\u0027\nversion. I changed both fair and rt balancer to mask out non-active cpus.\nAnd replaced cpu_is_offline() with !cpu_active() in the main scheduler\ncode where it made sense (to me).\n\nSigned-off-by: Max Krasnyanskiy \u003cmaxk@qualcomm.com\u003e\nAcked-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\nAcked-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nAcked-by: Gregory Haskins \u003cghaskins@novell.com\u003e\nCc: dmitry.adamushko@gmail.com\nCc: pj@sgi.com\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "59190f4213462f191fc0d22d39b1cf18ea39ca39",
      "tree": "8f30fa62ae7d8948e7974dfecede3d6a41ae3ec3",
      "parents": [
        "64fd52a52077d3cd5a778ca031c0aaecf885eaa6",
        "f6f88e9bfb6ced9871ed65ebe85c371de3c9e4be"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Jul 15 14:02:33 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Jul 15 14:12:03 2008 -0700"
      },
      "message": "Merge branch \u0027generic-ipi-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip\n\n* \u0027generic-ipi-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip: (22 commits)\n  generic-ipi: more merge fallout\n  generic-ipi: merge fix\n  x86, visws: use mach-default/entry_arch.h\n  x86, visws: fix generic-ipi build\n  generic-ipi: fixlet\n  generic-ipi: fix s390 build bug\n  generic-ipi: fix linux-next tree build failure\n  fix: \"smp_call_function: get rid of the unused nonatomic/retry argument\"\n  fix: \"smp_call_function: get rid of the unused nonatomic/retry argument\"\n  fix \"smp_call_function: get rid of the unused nonatomic/retry argument\"\n  on_each_cpu(): kill unused \u0027retry\u0027 parameter\n  smp_call_function: get rid of the unused nonatomic/retry argument\n  sh: convert to generic helpers for IPI function calls\n  parisc: convert to generic helpers for IPI function calls\n  mips: convert to generic helpers for IPI function calls\n  m32r: convert to generic helpers for IPI function calls\n  arm: convert to generic helpers for IPI function calls\n  alpha: convert to generic helpers for IPI function calls\n  ia64: convert to generic helpers for IPI function calls\n  powerpc: convert to generic helpers for IPI function calls\n  ...\n\nFix trivial conflicts due to rcu updates in kernel/rcupdate.c manually\n"
    },
    {
      "commit": "3d4422332711ef48ef0f132f1fcbfcbd56c7f3d1",
      "tree": "9fd3cfa9825e8cb0b7e08dfae85cc9a722442849",
      "parents": [
        "543cf4cb3fe6f6cae3651ba918b9c56200b257d0"
      ],
      "author": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Thu Jun 26 11:21:34 2008 +0200"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Thu Jun 26 11:21:34 2008 +0200"
      },
      "message": "Add generic helpers for arch IPI function calls\n\nThis adds kernel/smp.c which contains helpers for IPI function calls. In\naddition to supporting the existing smp_call_function() in a more efficient\nmanner, it also adds a more scalable variant called smp_call_function_single()\nfor calling a given function on a single CPU only.\n\nThe core of this is based on the x86-64 patch from Nick Piggin, lots of\nchanges since then. \"Alan D. Brunelle\" \u003cAlan.Brunelle@hp.com\u003e has\ncontributed lots of fixes and suggestions as well. Also thanks to\nPaul E. McKenney \u003cpaulmck@linux.vnet.ibm.com\u003e for reviewing RCU usage\nand getting rid of the data allocation fallback deadlock.\n\nAcked-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nReviewed-by: Paul E. McKenney \u003cpaulmck@linux.vnet.ibm.com\u003e\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\n"
    },
    {
      "commit": "4446a36ff8c74ac3b32feb009b651048e129c6af",
      "tree": "4ae726073e02281c2de51ed394ba2a812fd55c9b",
      "parents": [
        "8b09dee67f484e9b42114b1a1f068e080fd7aa56"
      ],
      "author": {
        "name": "Paul E. McKenney",
        "email": "paulmck@linux.vnet.ibm.com",
        "time": "Mon May 12 21:21:05 2008 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon May 19 10:01:36 2008 +0200"
      },
      "message": "rcu: add call_rcu_sched()\n\nFourth cut of patch to provide the call_rcu_sched().  This is again to\nsynchronize_sched() as call_rcu() is to synchronize_rcu().\n\nShould be fine for experimental and -rt use, but not ready for inclusion.\nWith some luck, I will be able to tell Andrew to come out of hiding on\nthe next round.\n\nPasses multi-day rcutorture sessions with concurrent CPU hotplugging.\n\nFixes since the first version include a bug that could result in\nindefinite blocking (spotted by Gautham Shenoy), better resiliency\nagainst CPU-hotplug operations, and other minor fixes.\n\nFixes since the second version include reworking grace-period detection\nto avoid deadlocks that could happen when running concurrently with\nCPU hotplug, adding Mathieu\u0027s fix to avoid the softlockup messages,\nas well as Mathieu\u0027s fix to allow use earlier in boot.\n\nFixes since the third version include a wrong-CPU bug spotted by\nAndrew, getting rid of the obsolete synchronize_kernel API that somehow\nsnuck back in, merging spin_unlock() and local_irq_restore() in a\nfew places, commenting the code that checks for quiescent states based\non interrupting from user-mode execution or the idle loop, removing\nsome inline attributes, and some code-style changes.\n\nKnown/suspected shortcomings:\n\no\tI still do not entirely trust the sleep/wakeup logic.  Next step\n\twill be to use a private snapshot of the CPU online mask in\n\trcu_sched_grace_period() -- if the CPU wasn\u0027t there at the start\n\tof the grace period, we don\u0027t need to hear from it.  And the\n\tbit about accounting for changes in online CPUs inside of\n\trcu_sched_grace_period() is ugly anyway.\n\no\tIt might be good for rcu_sched_grace_period() to invoke\n\tresched_cpu() when a given CPU wasn\u0027t responding quickly,\n\tbut resched_cpu() is declared static...\n\nThis patch also fixes a long-standing bug in the earlier preemptable-RCU\nimplementation of synchronize_rcu() that could result in loss of\nconcurrent external changes to a task\u0027s CPU affinity mask.  I still cannot\nremember who reported this...\n\nSigned-off-by: Paul E. McKenney \u003cpaulmck@linux.vnet.ibm.com\u003e\nSigned-off-by: Mathieu Desnoyers \u003cmathieu.desnoyers@polymtl.ca\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\n"
    },
    {
      "commit": "a76bfd0da2321ed0a978ccbef192856ce7ed687a",
      "tree": "eb9e9b10f8b500bdf55831e780a2658a2486b715",
      "parents": [
        "e0df154f45e40677781e971daec6c430cb34716b"
      ],
      "author": {
        "name": "Cyrill Gorcunov",
        "email": "gorcunov@gmail.com",
        "time": "Thu May 15 13:52:41 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu May 15 18:20:06 2008 -0700"
      },
      "message": "initcalls: Fix m68k build and possible buffer overflow\n\nThis patch fixes a build bug on m68k - gcc decides to emit a call to the\nstrlen library function, which we don\u0027t implement.\n\nMore importantly - my previous patch \"init: don\u0027t lose initcall return\nvalues\" (commit e662e1cfd434aa234b72fbc781f1d70211cb785b) had introduced\npotential buffer overflow by wrong calculation of string accumulator\nsize.\n\nUse strlcat() instead, fixing both bugs.\n\nMany thanks Andreas Schwab and Geert Uytterhoeven for helping\nto catch and fix the bug.\n\nSigned-off-by: Cyrill Gorcunov \u003cgorcunov@gmail.com\u003e\nCc: Geert Uytterhoeven \u003cgeert@linux-m68k.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "e0df154f45e40677781e971daec6c430cb34716b",
      "tree": "079e0dad9f21a780f50aaa9c5878721a9a7ed0e0",
      "parents": [
        "a442ac512f36981182e66a427ad05f449ff6593b"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu May 15 18:14:01 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu May 15 18:14:01 2008 -0700"
      },
      "message": "Split up \u0027do_initcalls()\u0027 into two simpler functions\n\nOne function to just loop over the entries, one function to actually do\nthe call and the associated debugging code.\n\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "a442ac512f36981182e66a427ad05f449ff6593b",
      "tree": "8a99f2f4cb7f66e816163068c0c2c709c1852ac6",
      "parents": [
        "7371fd11a6e2aed99895db4f100940fa5022f7fe"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu May 15 17:50:37 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu May 15 17:50:37 2008 -0700"
      },
      "message": "Clean up \u0027print_fn_descriptor_symbol()\u0027 types\n\nEverybody wants to pass it a function pointer, and in fact, that is what\nyou _must_ pass it for it to make sense (since it knows that ia64 and\nppc64 use descriptors for function pointers and fetches the actual\naddress from there).\n\nSo don\u0027t make the argument be a \u0027unsigned long\u0027 and force everybody to\nadd a cast.\n\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "e662e1cfd434aa234b72fbc781f1d70211cb785b",
      "tree": "f733af13c469b185ba4b4eb192f2834936200e9b",
      "parents": [
        "67d7671036e6cae24ded112e079926d55ffe9580"
      ],
      "author": {
        "name": "Cyrill Gorcunov",
        "email": "gorcunov@gmail.com",
        "time": "Mon May 12 14:02:22 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue May 13 08:02:25 2008 -0700"
      },
      "message": "init: don\u0027t lose initcall return values\n\nThere is an ability to lose an initcall return value if it happened with irq\ndisabled or imbalanced preemption (and if we debug initcall).\n\nSigned-off-by: Cyrill Gorcunov \u003cgorcunov@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": "3e51f33fcc7f55e6df25d15b55ed10c8b4da84cd",
      "tree": "3752f9ea8e014ec40e95a1b197b0a3d18e1056a8",
      "parents": [
        "a5574cf65b5f03ce9ade3918764fe22e5e2371e3"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "a.p.zijlstra@chello.nl",
        "time": "Sat May 03 18:29:28 2008 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon May 05 23:56:18 2008 +0200"
      },
      "message": "sched: add optional support for CONFIG_HAVE_UNSTABLE_SCHED_CLOCK\n\nthis replaces the rq-\u003eclock stuff (and possibly cpu_clock()).\n\n - architectures that have an \u0027imperfect\u0027 hardware clock can set\n   CONFIG_HAVE_UNSTABLE_SCHED_CLOCK\n\n - the \u0027jiffie\u0027 window might be superfulous when we update tick_gtod\n   before the __update_sched_clock() call in sched_clock_tick()\n\n - cpu_clock() might be implemented as:\n\n     sched_clock_cpu(smp_processor_id())\n\n   if the accuracy proves good enough - how far can TSC drift in a\n   single jiffie when considering the filtering and idle hooks?\n\n[ mingo@elte.hu: various fixes and cleanups ]\n\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "3ac7fe5a4aab409bd5674d0b070bce97f9d20872",
      "tree": "5e12e8864bb8737695e4eb9c63970602d5f69e73",
      "parents": [
        "30327acf7846c5eb97c8e31c78317a2918d3e515"
      ],
      "author": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Wed Apr 30 00:55:01 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Apr 30 08:29:53 2008 -0700"
      },
      "message": "infrastructure to debug (dynamic) objects\n\nWe can see an ever repeating problem pattern with objects of any kind in the\nkernel:\n\n1) freeing of active objects\n2) reinitialization of active objects\n\nBoth problems can be hard to debug because the crash happens at a point where\nwe have no chance to decode the root cause anymore.  One problem spot are\nkernel timers, where the detection of the problem often happens in interrupt\ncontext and usually causes the machine to panic.\n\nWhile working on a timer related bug report I had to hack specialized code\ninto the timer subsystem to get a reasonable hint for the root cause.  This\ndebug hack was fine for temporary use, but far from a mergeable solution due\nto the intrusiveness into the timer code.\n\nThe code further lacked the ability to detect and report the root cause\ninstantly and keep the system operational.\n\nKeeping the system operational is important to get hold of the debug\ninformation without special debugging aids like serial consoles and special\nknowledge of the bug reporter.\n\nThe problems described above are not restricted to timers, but timers tend to\nexpose it usually in a full system crash.  Other objects are less explosive,\nbut the symptoms caused by such mistakes can be even harder to debug.\n\nInstead of creating specialized debugging code for the timer subsystem a\ngeneric infrastructure is created which allows developers to verify their code\nand provides an easy to enable debug facility for users in case of trouble.\n\nThe debugobjects core code keeps track of operations on static and dynamic\nobjects by inserting them into a hashed list and sanity checking them on\nobject operations and provides additional checks whenever kernel memory is\nfreed.\n\nThe tracked object operations are:\n- initializing an object\n- adding an object to a subsystem list\n- deleting an object from a subsystem list\n\nEach operation is sanity checked before the operation is executed and the\nsubsystem specific code can provide a fixup function which allows to prevent\nthe damage of the operation.  When the sanity check triggers a warning message\nand a stack trace is printed.\n\nThe list of operations can be extended if the need arises.  For now it\u0027s\nlimited to the requirements of the first user (timers).\n\nThe core code enqueues the objects into hash buckets.  The hash index is\ngenerated from the address of the object to simplify the lookup for the check\non kfree/vfree.  Each bucket has it\u0027s own spinlock to avoid contention on a\nglobal lock.\n\nThe debug code can be compiled in without being active.  The runtime overhead\nis minimal and could be optimized by asm alternatives.  A kernel command line\noption enables the debugging code.\n\nThanks to Ingo Molnar for review, suggestions and cleanup patches.\n\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: Greg KH \u003cgreg@kroah.com\u003e\nCc: Randy Dunlap \u003crandy.dunlap@oracle.com\u003e\nCc: Kay Sievers \u003ckay.sievers@vrfy.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "5cd204550b1a006f2b0c986b0e0f53220ebfd391",
      "tree": "ee0f5e042072d4d2f4a3c6cd6e3a8b60676868ae",
      "parents": [
        "cb41d6d068716b2b3666925da34d3d7e658bf4f3"
      ],
      "author": {
        "name": "Pavel Emelyanov",
        "email": "xemul@openvz.org",
        "time": "Wed Apr 30 00:54:24 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Apr 30 08:29:48 2008 -0700"
      },
      "message": "Deprecate find_task_by_pid()\n\nThere are some places that are known to operate on tasks\u0027\nglobal pids only:\n\n* the rest_init() call (called on boot)\n* the kgdb\u0027s getthread\n* the create_kthread() (since the kthread is run in init ns)\n\nSo use the find_task_by_pid_ns(..., \u0026init_pid_ns) there\nand schedule the find_task_by_pid for removal.\n\n[sukadev@us.ibm.com: Fix warning in kernel/pid.c]\nSigned-off-by: Pavel Emelyanov \u003cxemul@openvz.org\u003e\nCc: \"Eric W. Biederman\" \u003cebiederm@xmission.com\u003e\nSigned-off-by: Sukadev Bhattiprolu \u003csukadev@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": "fae5fa44f1fd079ffbed8e0add929dd7bbd1347f",
      "tree": "8990ac958d29733cb61733ae69265472f5e1d13c",
      "parents": [
        "193191035ad6268db9f561e81e3474b8be89a5ba"
      ],
      "author": {
        "name": "Oleg Nesterov",
        "email": "oleg@tv-sign.ru",
        "time": "Wed Apr 30 00:53:03 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Apr 30 08:29:37 2008 -0700"
      },
      "message": "signals: fix /sbin/init protection from unwanted signals\n\nThe global init has a lot of long standing problems with the unhandled fatal\nsignals.\n\n\t- The \"is_global_init(current)\" check in get_signal_to_deliver()\n\t  protects only the main thread. Sub-thread can dequee the fatal\n\t  signal and shutdown the whole thread group except the main thread.\n\t  If it dequeues SIGSTOP /sbin/init will be stopped, this is not\n\t  right too. Note that we can\u0027t use is_global_init(-\u003egroup_leader),\n\t  this breaks exec and this can\u0027t solve other problems we have.\n\n\t- Even if afterwards ignored, the fatal signals sets SIGNAL_GROUP_EXIT\n\t  on delivery. This breaks exec, has other bad implications, and this\n\t  is just wrong.\n\nIntroduce the new SIGNAL_UNKILLABLE flag to fix these problems.  It also helps\nto solve some other problems addressed by the subsequent patches.\n\nCurrently we use this flag for the global init only, but it could also be used\nby kthreads and (perhaps) by the sub-namespace inits.\n\nSigned-off-by: Oleg Nesterov \u003coleg@tv-sign.ru\u003e\nAcked-by: \"Eric W. Biederman\" \u003cebiederm@xmission.com\u003e\nCc: Roland McGrath \u003croland@redhat.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "199f0ca514f9c17668eec4f935c4ba24cd789f85",
      "tree": "54406e3eb5be58e3350d8f60a64ac78ec3990f97",
      "parents": [
        "801678c5a3b4c79236970bcca27c733f5559e0d1"
      ],
      "author": {
        "name": "Akinobu Mita",
        "email": "akinobu.mita@gmail.com",
        "time": "Tue Apr 29 01:03:13 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Apr 29 08:06:25 2008 -0700"
      },
      "message": "idr: create idr_layer_cache at boot time\n\nAvoid a possible kmem_cache_create() failure by creating idr_layer_cache\nunconditionary at boot time rather than creating it on-demand when idr_init()\nis called the first time.\n\nThis change also enables us to eliminate the check every time idr_init() is\ncalled.\n\n[akpm@linux-foundation.org: rename init_id_cache() to idr_init_cache()]\n[akpm@linux-foundation.org: fix alpha build]\nSigned-off-by: Akinobu Mita \u003cakinobu.mita@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": "cf475ad28ac35cc9ba612d67158f29b73b38b05d",
      "tree": "2c7cd568d00357bd42643ea602884e731cc24f26",
      "parents": [
        "29486df325e1fe6e1764afcb19e3370804c2b002"
      ],
      "author": {
        "name": "Balbir Singh",
        "email": "balbir@linux.vnet.ibm.com",
        "time": "Tue Apr 29 01:00:16 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Apr 29 08:06:10 2008 -0700"
      },
      "message": "cgroups: add an owner to the mm_struct\n\nRemove the mem_cgroup member from mm_struct and instead adds an owner.\n\nThis approach was suggested by Paul Menage.  The advantage of this approach\nis that, once the mm-\u003eowner is known, using the subsystem id, the cgroup\ncan be determined.  It also allows several control groups that are\nvirtually grouped by mm_struct, to exist independent of the memory\ncontroller i.e., without adding mem_cgroup\u0027s for each controller, to\nmm_struct.\n\nA new config option CONFIG_MM_OWNER is added and the memory resource\ncontroller selects this config option.\n\nThis patch also adds cgroup callbacks to notify subsystems when mm-\u003eowner\nchanges.  The mm_cgroup_changed callback is called with the task_lock() of\nthe new task held and is called just prior to changing the mm-\u003eowner.\n\nI am indebted to Paul Menage for the several reviews of this patchset and\nhelping me make it lighter and simpler.\n\nThis patch was tested on a powerpc box, it was compiled with both the\nMM_OWNER config turned on and off.\n\nAfter the thread group leader exits, it\u0027s moved to init_css_state by\ncgroup_exit(), thus all future charges from runnings threads would be\nredirected to the init_css_set\u0027s subsystem.\n\nSigned-off-by: Balbir Singh \u003cbalbir@linux.vnet.ibm.com\u003e\nCc: Pavel Emelianov \u003cxemul@openvz.org\u003e\nCc: Hugh Dickins \u003chugh@veritas.com\u003e\nCc: Sudhir Kumar \u003cskumar@linux.vnet.ibm.com\u003e\nCc: YAMAMOTO Takashi \u003cyamamoto@valinux.co.jp\u003e\nCc: Hirokazu Takahashi \u003ctaka@valinux.co.jp\u003e\nCc: David Rientjes \u003crientjes@google.com\u003e,\nCc: Balbir Singh \u003cbalbir@linux.vnet.ibm.com\u003e\nAcked-by: KAMEZAWA Hiroyuki \u003ckamezawa.hiroyu@jp.fujitsu.com\u003e\nAcked-by: Pekka Enberg \u003cpenberg@cs.helsinki.fi\u003e\nReviewed-by: Paul Menage \u003cmenage@google.com\u003e\nCc: Oleg Nesterov \u003coleg@tv-sign.ru\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "626adeb6675fdf60e9d8c6212776b0b0acf0e376",
      "tree": "e526309273a2ee93c9e1546ce69c8c2cd5100606",
      "parents": [
        "22caa0417db3b1d3dfafc9b7c0bf31baf8d667e7"
      ],
      "author": {
        "name": "Bjorn Helgaas",
        "email": "bjorn.helgaas@hp.com",
        "time": "Tue Apr 29 00:59:10 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Apr 29 08:06:02 2008 -0700"
      },
      "message": "Simplify initcall_debug output\n\nprint_fn_descriptor_symbol() prints the address if we don\u0027t have a symbol, so\nno need to print both.\n\nAlso, combine printing return value with elapsed time.  Changes this:\n\n  Calling initcall 0xc05b7a70: pci_mmcfg_late_insert_resources+0x0/0x50()\n  initcall 0xc05b7a70: pci_mmcfg_late_insert_resources+0x0/0x50() returned 1.\n  initcall 0xc05b7a70 ran for 0 msecs: pci_mmcfg_late_insert_resources+0x0/0x50()\n  initcall at 0xc05b7a70: pci_mmcfg_late_insert_resources+0x0/0x50(): returned with error code 1\n\nto this:\n\n  calling  pci_mmcfg_late_insert_resources+0x0/0x50()\n  initcall pci_mmcfg_late_insert_resources+0x0/0x50() returned 1 after 0 msecs\n  initcall pci_mmcfg_late_insert_resources+0x0/0x50() returned with error code 1\n\nSigned-off-by: Bjorn Helgaas \u003cbjorn.helgaas@hp.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "839ad62e75ee1968438d1b72261304cd47fc961e",
      "tree": "5494458c9a17910488701dce3ff5a8647b49ea63",
      "parents": [
        "f6a616800e68b61807d0f7bb0d5dc70665ef8046"
      ],
      "author": {
        "name": "Benjamin Herrenschmidt",
        "email": "benh@kernel.crashing.org",
        "time": "Fri Apr 18 16:56:18 2008 +1000"
      },
      "committer": {
        "name": "Paul Mackerras",
        "email": "paulus@samba.org",
        "time": "Thu Apr 24 20:57:33 2008 +1000"
      },
      "message": "[POWERPC] Use __weak macro for smp_setup_processor_id\n\nUse the __weak macro instead of the longer __attribute__ ((weak)) form\nin one place in init/main.c.\n\nSigned-off-by: Benjamin Herrenschmidt \u003cbenh@kernel.crashing.org\u003e\nAcked-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\n--\n\n init/main.c |    2 +-\n 1 file changed, 1 insertion(+), 1 deletion(-)\nSigned-off-by: Paul Mackerras \u003cpaulus@samba.org\u003e\n"
    },
    {
      "commit": "8c9843e57a7d9d7a090d6467a0f1f3afb8031527",
      "tree": "5efdab577853bc92e3c980fc97aba74be58c1efb",
      "parents": [
        "1d32e21889b96e594e8b63b193bf7d2a51ab93ec"
      ],
      "author": {
        "name": "Benjamin Herrenschmidt",
        "email": "benh@kernel.crashing.org",
        "time": "Fri Apr 18 16:56:15 2008 +1000"
      },
      "committer": {
        "name": "Paul Mackerras",
        "email": "paulus@samba.org",
        "time": "Thu Apr 24 20:57:33 2008 +1000"
      },
      "message": "[POWERPC] Add thread_info_cache_init() weak hook\n\nSome architectures need to maintain a kmem cache for thread info\nstructures.  The next commit adds that to powerpc to fix an alignment\nproblem.\n\nThere is no good arch callback to use to initialize that cache\nthat I can find, so this adds a new one in the form of a weak\nfunction whose default is empty.\n\nSigned-off-by: Benjamin Herrenschmidt \u003cbenh@kernel.crashing.org\u003e\nAcked-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Paul Mackerras \u003cpaulus@samba.org\u003e\n"
    },
    {
      "commit": "e0982e90cd1ecf59818b137386b7f63debded9cc",
      "tree": "3cdbfa8a69dca4a9c9596d61bffa32f1b676f09d",
      "parents": [
        "4bdbaad33d0f4d0e9818a38a825f5b75c0296a28"
      ],
      "author": {
        "name": "Mike Travis",
        "email": "travis@sgi.com",
        "time": "Wed Mar 26 14:23:48 2008 -0700"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Sat Apr 19 19:44:59 2008 +0200"
      },
      "message": "init: move setup of nr_cpu_ids to as early as possible\n\nMove the setting of nr_cpu_ids from sched_init() to start_kernel()\nso that it\u0027s available as early as possible.\n\nNote that an arch has the option of setting it even earlier if need be,\nbut it should not result in a different value than the setup_nr_cpu_ids()\nfunction.\n\nSigned-off-by: Mike Travis \u003ctravis@sgi.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "321a8e9dcb714f3c350ba55e41ed447bf3f05fac",
      "tree": "e75ca8ebcee0954dc6e313864ebba9f72e984fc8",
      "parents": [
        "7c16ec585c558960a508ccf9a08fcb9ed49b3754"
      ],
      "author": {
        "name": "Mike Travis",
        "email": "travis@sgi.com",
        "time": "Fri Apr 04 18:11:02 2008 -0700"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Sat Apr 19 19:44:59 2008 +0200"
      },
      "message": "cpumask: add CPU_MASK_ALL_PTR macro\n\n  * Add a static cpumask_t variable \"CPU_MASK_ALL_PTR\" to use as\n    a pointer reference to CPU_MASK_ALL.  This reduces where possible\n    the instances where CPU_MASK_ALL allocates and fills a large\n    array on the stack.  Used only if NR_CPUS \u003e BITS_PER_LONG.\n\n  * Change init/main.c to use new set_cpus_allowed_ptr().\n\nDepends on:\n\t[sched-devel]: sched: add new set_cpus_allowed_ptr function\n\nCc: H. Peter Anvin \u003chpa@zytor.com\u003e\nSigned-off-by: Mike Travis \u003ctravis@sgi.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "9a9e0d685553af76cb6ae2af93cca4913e7fcd47",
      "tree": "c4f041b0f7fa28db46841336135d493d587435ea",
      "parents": [
        "ce636452343af0522d2666157dab9c2096f4f996"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Mar 15 11:53:32 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Mar 15 11:58:04 2008 -0700"
      },
      "message": "ACPI: Remove ACPI_CUSTOM_DSDT_INITRD option\n\nThis essentially reverts commit 71fc47a9adf8ee89e5c96a47222915c5485ac437\n(\"ACPI: basic initramfs DSDT override support\"), because the code simply\nisn\u0027t ready.\n\nIt did ugly things to the init sequence to populate the rootfs image\nearly, but that just ended up showing other problems with the whole\napproach.  The fact is, the VFS layer simply isn\u0027t initialized this\nearly, and the relevant ACPI code should either run much later, or this\nshouldn\u0027t be done at all.\n\nFor 2.6.25, we\u0027ll just pick the latter option.  We can revisit this\nconcept later if necessary.\n\nCc: Dave Hansen \u003chaveblue@us.ibm.com\u003e\nCc: Tilman Schmidt \u003ctilman@imap.cc\u003e\nCc: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nCc: Thomas Renninger \u003ctrenn@suse.de\u003e\nCc: Eric Piel \u003ceric.piel@tremplin-utc.net\u003e\nCc: Len Brown \u003clen.brown@intel.com\u003e\nCc: Christoph Hellwig \u003chch@infradead.org\u003e\nCc: Markus Gaugusch \u003cdsdt@gaugusch.at\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "d9d4fcfe515d7cece1b26decd75f5d41544a287b",
      "tree": "d5c7b437198584d389a481f150f5335db0c4c09c",
      "parents": [
        "d31472b6d4f799a68d877f69b2f843eec5875472"
      ],
      "author": {
        "name": "Alex Riesen",
        "email": "raa.lkml@gmail.com",
        "time": "Tue Mar 04 14:28:31 2008 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Tue Mar 04 16:35:10 2008 -0800"
      },
      "message": "Fix \"Malformed early option \u0027loglevel\u0027\"\n\nKeith Mannthey said:\n\n  The parameter hotadd_percent is setup right but there is a \"Malformed\n  early option \u0027numa\u0027\" message.\n\nRusty Russell said:\n\n  This happens when the function registered with early_param() returns\n  non-zero.  __setup() functions return 1 if OK, module_param() and\n  early_param() return 0 or a -ve error code.\n\nFor instance:\n\nLinux version 2.6.25-rc3-t (raa@steel) (gcc version 4.1.3 20070929 (prerelease) (Ubuntu 4.1.2-16ubuntu2)) #22 SMP PREEMPT Tue Feb 26\nBIOS-provided physical RAM map:\n BIOS-e820: 0000000000000000 - 00000000000a0000 (usable)\n BIOS-e820: 00000000000f0000 - 0000000000100000 (reserved)\n BIOS-e820: 0000000000100000 - 000000003fff0000 (usable)\n BIOS-e820: 000000003fff0000 - 000000003fff3000 (ACPI NVS)\n BIOS-e820: 000000003fff3000 - 0000000040000000 (ACPI data)\n BIOS-e820: 00000000fec00000 - 0000000100000000 (reserved)\nMalformed early option \u0027loglevel\u0027\n127MB HIGHMEM available.\n896MB LOWMEM available.\n\nCommand line:\n\nBOOT_IMAGE\u003d2.6.25-t ro root\u003d809 ro console\u003dttyS0,57600n8 console\u003dtty0 loglevel\u003d5\n\nAcked-by: Yinghai Lu \u003cyhlu.kernel@gmai.com\u003e\nCc: Rusty Russell \u003crusty@rustcorp.com.au\u003e\nCc: Keith Mannthey \u003ckmannth@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": "a03c2a48e02aacaaea211c94691b729be357e047",
      "tree": "733e1b071c55900a2a88bdf2841a8cd8ee28d19f",
      "parents": [
        "166124fde978b5a6c4412fb295c7f39711beb1b0"
      ],
      "author": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Sat Feb 09 23:24:09 2008 +0100"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Sat Feb 09 23:24:09 2008 +0100"
      },
      "message": "x86: DEBUG_PAGEALLOC: enable after mem_init()\n\nDEBUG_PAGEALLOC must not be enabled before mem_init(). Before this\npoint there is nothing to allocate.\n\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "f6f21c81464ce52dbeec921bdc2e8b288c491920",
      "tree": "926a0fdcf513218bcbfc6f021e03edc36cff58fa",
      "parents": [
        "06b2a76d25d3cfbd14680021c1d356c91be6904e"
      ],
      "author": {
        "name": "Yinghai Lu",
        "email": "Yinghai.Lu@Sun.COM",
        "time": "Fri Feb 08 04:21:58 2008 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Fri Feb 08 09:22:42 2008 -0800"
      },
      "message": "Convert loglevel-related kernel boot parameters to early_param\n\nSo we can use them for the early console like console\u003duart8250 or\nearlycon\u003duart8250 or early_printk\n\nSigned-off-by: Yinghai Lu \u003cyinghai.lu@sun.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": "430c623121ea88ca80595c99fdc63b7f8a803ae5",
      "tree": "8ada2d8287d07cabd64cc3614a6a643623046e5c",
      "parents": [
        "297bd42b15daed02453ff59ce6d31216a58b0398"
      ],
      "author": {
        "name": "Oleg Nesterov",
        "email": "oleg@tv-sign.ru",
        "time": "Fri Feb 08 04:19:11 2008 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Fri Feb 08 09:22:27 2008 -0800"
      },
      "message": "start the global /sbin/init with 0,0 special pids\n\nAs Eric pointed out, there is no problem with init starting with sid \u003d\u003d pgid\n\u003d\u003d 0, and this was historical linux behavior changed in 2.6.18.\n\nRemove kernel_init()-\u003e__set_special_pids(), this is unneeded and complicates\nthe rules for sys_setsid().\n\nThis change and the previous change in daemonize() mean that /sbin/init does\nnot need the special \"session !\u003d 1\" hack in sys_setsid() any longer. We can\u0027t\nremove this check yet, we should cleanup copy_process(CLONE_NEWPID) first, so\nupdate the comment only.\n\nSigned-off-by: Oleg Nesterov \u003coleg@tv-sign.ru\u003e\nAcked-by: \"Eric W. Biederman\" \u003cebiederm@xmission.com\u003e\nCc: Pavel Emelyanov \u003cxemul@openvz.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "8520d7c7f8611216e3b270becec95bb35b6899d4",
      "tree": "77001e6830bb415590067e9d4be24cd8bdd36219",
      "parents": [
        "e4cc0a9c876d4d4eadaef97a2bff4a199946d202"
      ],
      "author": {
        "name": "Oleg Nesterov",
        "email": "oleg@tv-sign.ru",
        "time": "Fri Feb 08 04:19:09 2008 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Fri Feb 08 09:22:27 2008 -0800"
      },
      "message": "teach set_special_pids() to use struct pid\n\nChange set_special_pids() to work with struct pid, not pid_t from global name\nspace. This again speedups and imho cleanups the code, also a preparation for\nthe next patch.\n\nSigned-off-by: Oleg Nesterov \u003coleg@tv-sign.ru\u003e\nAcked-by: \"Eric W. Biederman\" \u003cebiederm@xmission.com\u003e\nAcked-by: Pavel Emelyanov \u003cxemul@openvz.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "71fc47a9adf8ee89e5c96a47222915c5485ac437",
      "tree": "a2eaefbb703dde933a9726eae7e6399761d40136",
      "parents": [
        "488b5ec871191359b9b79262a3d48456dae7ea5f"
      ],
      "author": {
        "name": "Markus Gaugusch",
        "email": "dsdt@gaugusch.at",
        "time": "Tue Feb 05 00:04:06 2008 +0100"
      },
      "committer": {
        "name": "Len Brown",
        "email": "len.brown@intel.com",
        "time": "Wed Feb 06 22:07:41 2008 -0500"
      },
      "message": "ACPI: basic initramfs DSDT override support\n\nThe basics of DSDT from initramfs. In case this option is selected,\npopulate_rootfs() is called a bit earlier to have the initramfs content\navailable during ACPI initialization.\n\nThis is a very similar path to the one available at\nhttp://gaugusch.at/kernel.shtml but with some update in the\ndocumentation, default set to No and the change of populate_rootfs() the\n\"Jeff Mahony way\" (which avoids reading the initramfs twice).\n\nSigned-off-by: Thomas Renninger \u003ctrenn@suse.de\u003e\nSigned-off-by: Eric Piel \u003ceric.piel@tremplin-utc.net\u003e\nSigned-off-by: Len Brown \u003clen.brown@intel.com\u003e\n"
    },
    {
      "commit": "a1c9eea9e56a7196c6891f6426b799c4598b38e2",
      "tree": "30beda8a7c7f45e77f96d0a49008e84e227a7ae6",
      "parents": [
        "ce88cc5ed80de746f5bd2d8242291c87e7b87f63"
      ],
      "author": {
        "name": "Adrian Bunk",
        "email": "bunk@kernel.org",
        "time": "Wed Feb 06 01:36:44 2008 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Wed Feb 06 10:41:02 2008 -0800"
      },
      "message": "proper prototype for signals_init()\n\nAdd a proper prototype for signals_init() in include/linux/signal.h\n\nSigned-off-by: Adrian Bunk \u003cbunk@kernel.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "12d6f21eacc21d84a809829543f2fe45c7e37319",
      "tree": "6985f2370ad238fb2a568547a5049751d7c95a69",
      "parents": [
        "9a3dc7804e9856668caef41efc54179e61ffccc0"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Jan 30 13:33:58 2008 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Jan 30 13:33:58 2008 +0100"
      },
      "message": "x86: do not PSE on CONFIG_DEBUG_PAGEALLOC\u003dy\n\nget more testing of the c_p_a() code done by not turning off\nPSE on DEBUG_PAGEALLOC.\n\nthis simplifies the early pagetable setup code, and tests\nthe largepage-splitup code quite heavily.\n\nIn the end, all the largepages will be split up pretty quickly,\nso there\u0027s no difference to how DEBUG_PAGEALLOC worked before.\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\n"
    },
    {
      "commit": "dd5af90a7f3d79e04b7eace9a98644dbf2038f4d",
      "tree": "22327ba385c830b7be391c76821dc5ec26863f2e",
      "parents": [
        "3212bff370c2f22e4987c6679ba485654cefb178"
      ],
      "author": {
        "name": "Mike Travis",
        "email": "travis@sgi.com",
        "time": "Wed Jan 30 13:33:32 2008 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Jan 30 13:33:32 2008 +0100"
      },
      "message": "x86/non-x86: percpu, node ids, apic ids x86.git fixup\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\n"
    },
    {
      "commit": "ca74a6f84e68b44867022f4a4f3ec17c087c864e",
      "tree": "a5e84b251b1574b09288fb2636b4e4ea088ae70e",
      "parents": [
        "751752789162fde69474edfa15935d0a77c0bc17"
      ],
      "author": {
        "name": "Andi Kleen",
        "email": "ak@suse.de",
        "time": "Wed Jan 30 13:33:17 2008 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Jan 30 13:33:17 2008 +0100"
      },
      "message": "x86: optimize lock prefix switching to run less frequently\n\nOn VMs implemented using JITs that cache translated code changing the lock\nprefixes is a quite costly operation that forces the JIT to throw away and\nretranslate a lot of code.\n\nPreviously a SMP kernel would rewrite the locks once for each CPU which\nis quite unnecessary. This patch changes the code to never switch at boot in\n the normal case (SMP kernel booting with \u003e1 CPU) or only once for SMP kernel\non UP.\n\nThis makes a significant difference in boot up performance on AMD SimNow!\nAlso I expect it to be a little faster on native systems too because a smp\nswitch does a lot of text_poke()s which each synchronize the pipeline.\n\nv1-\u003ev2: Rename max_cpus\nv1-\u003ev2: Fix off by one in UP check (Thomas Gleixner)\n\nSigned-off-by: Andi Kleen \u003cak@suse.de\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\n"
    },
    {
      "commit": "b32ef636a59aad12f9f9b5dc34c93222842c58ba",
      "tree": "6857cac9a741be756608793ab1b481bfa32d2c2e",
      "parents": [
        "cf8fa920cb4271f17e0265c863d64bea1b31941a"
      ],
      "author": {
        "name": "travis@sgi.com",
        "email": "travis@sgi.com",
        "time": "Wed Jan 30 13:32:51 2008 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Jan 30 13:32:51 2008 +0100"
      },
      "message": "percpu: use a kconfig variable to signal arch specific percpu setup\n\nThe use of the __GENERIC_PERCPU is a bit problematic since arches\nmay want to run their own percpu setup while using the generic\npercpu definitions. Replace it through a kconfig variable.\n\nCc: Rusty Russell \u003crusty@rustcorp.com.au\u003e\nCc: Andi Kleen \u003cak@suse.de\u003e\nSigned-off-by: Christoph Lameter \u003cclameter@sgi.com\u003e\nSigned-off-by: Mike Travis \u003ctravis@sgi.com\u003e\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "d221938c049f4845da13c8593132595a6b9222a8",
      "tree": "8eae6c7095a3d7d31d7435befc30019540a4d13e",
      "parents": [
        "6b2d7700266b9402e12824e11e0099ae6a4a6a79"
      ],
      "author": {
        "name": "Gautham R Shenoy",
        "email": "ego@in.ibm.com",
        "time": "Fri Jan 25 21:08:01 2008 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Jan 25 21:08:01 2008 +0100"
      },
      "message": "cpu-hotplug: refcount based cpu hotplug\n\nThis patch implements a Refcount + Waitqueue based model for\ncpu-hotplug.\n\nNow, a thread which wants to prevent cpu-hotplug, will bump up a global\nrefcount and the thread which wants to perform a cpu-hotplug operation\nwill block till the global refcount goes to zero.\n\nThe readers, if any, during an ongoing cpu-hotplug operation are blocked\nuntil the cpu-hotplug operation is over.\n\nSigned-off-by: Gautham R Shenoy \u003cego@in.ibm.com\u003e\nSigned-off-by: Paul Jackson \u003cpj@sgi.com\u003e [For !CONFIG_HOTPLUG_CPU ]\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "e6fe6649b4ec11aa3075e394b4d8743eebe1f64c",
      "tree": "e04e8b2206dfad58e784ea6e4550f98f318aff0b",
      "parents": [
        "b82d9fdd848abfbe7263a4ecd9bbb55e575100a6"
      ],
      "author": {
        "name": "Adrian Bunk",
        "email": "bunk@kernel.org",
        "time": "Fri Nov 09 22:39:39 2007 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Nov 09 22:39:39 2007 +0100"
      },
      "message": "sched: proper prototype for kernel/sched.c:migration_init()\n\nThis patch adds a proper prototype for migration_init() in\ninclude/linux/sched.h\n\nSince there\u0027s no point in always returning 0 to a caller that doesn\u0027t check\nthe return value it also changes the function to return void.\n\nSigned-off-by: Adrian Bunk \u003cbunk@kernel.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "211fee8a82893062f45a7f2e4e50b245bc577c0c",
      "tree": "8eb8b75e6a6996080efea5b6ac6c11e30dada6d8",
      "parents": [
        "183ff22bb6bd8188c904ebfb479656ae52230b72"
      ],
      "author": {
        "name": "Simon Arlott",
        "email": "simon@fire.lp0.eu",
        "time": "Sat Oct 20 01:28:29 2007 +0200"
      },
      "committer": {
        "name": "Adrian Bunk",
        "email": "bunk@kernel.org",
        "time": "Sat Oct 20 01:28:29 2007 +0200"
      },
      "message": "spelling fixes: init/\n\nSpelling fix in init/.\n\nSigned-off-by: Simon Arlott \u003csimon@fire.lp0.eu\u003e\nSigned-off-by: Adrian Bunk \u003cbunk@kernel.org\u003e\n"
    },
    {
      "commit": "d8af7c6ab0bc4e2404f290801982b40223a97408",
      "tree": "2d46f901123bb0b6585d662ee482f1592325df80",
      "parents": [
        "b7076156af7a87799c0e425db5aec8378be1c3ea"
      ],
      "author": {
        "name": "Robert P. J. Day",
        "email": "rpjday@mindspring.com",
        "time": "Fri Oct 19 23:13:32 2007 +0200"
      },
      "committer": {
        "name": "Adrian Bunk",
        "email": "bunk@kernel.org",
        "time": "Fri Oct 19 23:13:32 2007 +0200"
      },
      "message": "Drop the superfluous test for an old version of gcc.\n\nThe header file \u003clinux/compiler.h\u003e already enforces a suitably recent\nversion of gcc, so there\u0027s no point checking for that again.\n\nSigned-off-by: Robert P. J. Day \u003crpjday@mindspring.com\u003e\nSigned-off-by: Adrian Bunk \u003cbunk@kernel.org\u003e\n"
    },
    {
      "commit": "ddbcc7e8e50aefe467c01cac3dec71f118cd8ac2",
      "tree": "0881a031e669582f819d572339e955b04abfc3d2",
      "parents": [
        "55a230aae650157720becc09cadb7d10efbf5013"
      ],
      "author": {
        "name": "Paul Menage",
        "email": "menage@google.com",
        "time": "Thu Oct 18 23:39:30 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Fri Oct 19 11:53:36 2007 -0700"
      },
      "message": "Task Control Groups: basic task cgroup framework\n\nGeneric Process Control Groups\n--------------------------\n\nThere have recently been various proposals floating around for\nresource management/accounting and other task grouping subsystems in\nthe kernel, including ResGroups, User BeanCounters, NSProxy\ncgroups, and others.  These all need the basic abstraction of being\nable to group together multiple processes in an aggregate, in order to\ntrack/limit the resources permitted to those processes, or control\nother behaviour of the processes, and all implement this grouping in\ndifferent ways.\n\nThis patchset provides a framework for tracking and grouping processes\ninto arbitrary \"cgroups\" and assigning arbitrary state to those\ngroupings, in order to control the behaviour of the cgroup as an\naggregate.\n\nThe intention is that the various resource management and\nvirtualization/cgroup efforts can also become task cgroup\nclients, with the result that:\n\n- the userspace APIs are (somewhat) normalised\n\n- it\u0027s easier to test e.g. the ResGroups CPU controller in\n conjunction with the BeanCounters memory controller, or use either of\nthem as the resource-control portion of a virtual server system.\n\n- the additional kernel footprint of any of the competing resource\n management systems is substantially reduced, since it doesn\u0027t need\n to provide process grouping/containment, hence improving their\n chances of getting into the kernel\n\nThis patch:\n\nAdd the main task cgroups framework - the cgroup filesystem, and the\nbasic structures for tracking membership and associating subsystem state\nobjects to tasks.\n\nSigned-off-by: Paul Menage \u003cmenage@google.com\u003e\nCc: Serge E. Hallyn \u003cserue@us.ibm.com\u003e\nCc: \"Eric W. Biederman\" \u003cebiederm@xmission.com\u003e\nCc: Dave Hansen \u003chaveblue@us.ibm.com\u003e\nCc: Balbir Singh \u003cbalbir@in.ibm.com\u003e\nCc: Paul Jackson \u003cpj@sgi.com\u003e\nCc: Kirill Korotaev \u003cdev@openvz.org\u003e\nCc: Herbert Poetzl \u003cherbert@13thfloor.at\u003e\nCc: Srivatsa Vaddagiri \u003cvatsa@in.ibm.com\u003e\nCc: Cedric Le Goater \u003cclg@fr.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": "62e6f1e8bb7c48c02b8bdb3085c5f6365682149b",
      "tree": "975277fdd906c173bf48bfbe0226b80bb0e14529",
      "parents": [
        "a1c582d0720f2eff61043e90711767decf37b917"
      ],
      "author": {
        "name": "Hugh Dickins",
        "email": "hugh@veritas.com",
        "time": "Fri Aug 31 04:26:50 2007 +0100"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Thu Aug 30 21:54:31 2007 -0700"
      },
      "message": "fix maxcpus\u003d1 oops in show_stat()\n\nAlexey Dobriyan reports that maxcpus\u003d1 is still broken in 2.6.23-rc4:\nif CONFIG_HOTPLUG_CPU is not set, x86_64 bootup oopses in show_stat() -\nfor_each_possible_cpu accesses a per-cpu area which was never set up.\n\nAlexey identified commit 61ec7567db103d537329b0db9a887db570431ff4\n(ACPI: boot correctly with \"nosmp\" or \"maxcpus\u003d0\") as the origin;\nbut it\u0027s not really to blame, just exposes a bug in 2.6.23-rc1\u0027s commit\n8b3b295502444340dd0701855ac422fbf32e161d (Especially when !CONFIG_HOTPLUG_CPU,\navoid needlessy allocating resources for CPUs that can never become available).\n\nrc1\u0027s test for max_cpus \u003c 2 in start_kernel() wasn\u0027t working because\nmax_cpus was still NR_CPUS at that point: until rc4 moved the maxcpus\nparsing earlier.  Now it sets cpu_possible_map to 1 before allocating\nall possible per-cpu areas; then smp_init() expands cpu_possible_map\nto cpu_present_map (0xf in my case) later on.\n\nrc1\u0027s commit has good intentions, but expects cpu_present_map to be\nlimited by maxcpus, which is only the case on i386.  cpus_and(possible,\npossible,present) might be good, but needs an audit of cpu_present_map\nuses - there may well be assumptions that any cpu present is possible.\n\nSo stay safe for now and just revert those #ifndef CONFIG_HOTPLUG_CPU\noptimizations in rc1\u0027s commit.\n\nSigned-off-by: Hugh Dickins \u003chugh@veritas.com\u003e\nCc: Alexey Dobriyan \u003cadobriyan@sw.ru\u003e\nCc: Len Brown \u003clenb@kernel.org\u003e\nCc: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nCc: Jan Beulich \u003cjbeulich@novell.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "813409771731d80e6fa94199adf99f2269a4afc0",
      "tree": "d417127b47e1d1f7e8ebe1b09a11a4fa5c36fba1",
      "parents": [
        "88ede8209efd01b4a557ddd588875544954e170a"
      ],
      "author": {
        "name": "Hugh Dickins",
        "email": "hugh@veritas.com",
        "time": "Mon Aug 27 16:02:12 2007 +0100"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Mon Aug 27 10:27:48 2007 -0700"
      },
      "message": "fix maxcpus\u003dN parsing\n\nCommit 61ec7567db103d537329b0db9a887db570431ff4 (\u0027ACPI: boot correctly\nwith \"nosmp\" or \"maxcpus\u003d0\"\u0027) broke \u0027maxcpus\u003d\u0027 handling on x86[-64].\n\nmaxcpus\u003dN is now having no effect on x86_64, and freezing bootup on i386\n(because of inconsistency with the separate maxcpus parsing down in\narch/i386, I guess).  That\u0027s because early_param parsing is a little\ndifferent from __setup parsing, and needs the \"\u003d\" omitted: then it seems\nto work as the original commit intended (no mention of IO-APIC in\n/proc/interrupts when maxcpus\u003d0).\n\nSigned-off-by: Hugh Dickins \u003chugh@veritas.com\u003e\nCc: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nCc: Len Brown \u003clen.brown@intel.com\u003e\nCc: Andi Kleen \u003cak@suse.de\u003e\nCc: Rusty Russell \u003crusty@rustcorp.com.au\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "61ec7567db103d537329b0db9a887db570431ff4",
      "tree": "7287eb4bd00c09434fc2dd0babadfd0eb7ddc832",
      "parents": [
        "28e8351ac22de25034e048c680014ad824323c65"
      ],
      "author": {
        "name": "Len Brown",
        "email": "len.brown@intel.com",
        "time": "Thu Aug 16 03:34:22 2007 -0400"
      },
      "committer": {
        "name": "Len Brown",
        "email": "len.brown@intel.com",
        "time": "Tue Aug 21 00:33:35 2007 -0400"
      },
      "message": "ACPI: boot correctly with \"nosmp\" or \"maxcpus\u003d0\"\n\nIn MPS mode, \"nosmp\" and \"maxcpus\u003d0\" boot a UP kernel with IOAPIC disabled.\nHowever, in ACPI mode, these parameters didn\u0027t completely disable\nthe IO APIC initialization code and boot failed.\n\ninit/main.c:\n\tDisable the IO_APIC if \"nosmp\" or \"maxcpus\u003d0\"\n\tundefine disable_ioapic_setup() when it doesn\u0027t apply.\n\ni386:\n\tdelete ioapic_setup(), it was a duplicate of parse_noapic()\n\tdelete undefinition of disable_ioapic_setup()\n\nx86_64:\n\trename disable_ioapic_setup() to parse_noapic() to match i386\n\tdefine disable_ioapic_setup() in header to match i386\n\nhttp://bugzilla.kernel.org/show_bug.cgi?id\u003d1641\n\nAcked-by: Andi Kleen \u003cak@suse.de\u003e\nSigned-off-by: Len Brown \u003clen.brown@intel.com\u003e\n"
    },
    {
      "commit": "8b3b295502444340dd0701855ac422fbf32e161d",
      "tree": "949accf30a7b8bf6a0ccd074a5a4b9f6115c1f7b",
      "parents": [
        "98c0d07cbf2a8582a0341b05ad564247e608f6f9"
      ],
      "author": {
        "name": "Jan Beulich",
        "email": "jbeulich@novell.com",
        "time": "Sun Jul 15 23:41:07 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Mon Jul 16 09:05:47 2007 -0700"
      },
      "message": "adjust nosmp handling\n\nEspecially when !CONFIG_HOTPLUG_CPU, avoid needlessy allocating resources for\nCPUs that can never become available.\n\nSigned-off-by: Jan Beulich \u003cjbeulich@novell.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "97842216b8400fe9d1a20468959e2989180f8f79",
      "tree": "63d0d731e0e93d5ef9ac1a23734c60cd0f0664f2",
      "parents": [
        "ea5a3dcfda1c9140228f2842ea9b01e1713c559a"
      ],
      "author": {
        "name": "Dave Jones",
        "email": "davej@redhat.com",
        "time": "Sun Jul 15 23:41:05 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Mon Jul 16 09:05:47 2007 -0700"
      },
      "message": "Allow softlockup to be runtime disabled\n\nIt\u0027s useful sometimes to disable the softlockup checker at boottime.\nEspecially if it triggers during a distro install.\n\nSigned-off-by: Dave Jones \u003cdavej@redhat.com\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "18a8bd949d6adb311ea816125ff65050df1f3f6e",
      "tree": "4365db908430747a5c08cacdb4354577b7bfead7",
      "parents": [
        "b1c931e39327ef121797927d4b3198d370e75b9b"
      ],
      "author": {
        "name": "Yinghai Lu",
        "email": "Yinghai.Lu@Sun.COM",
        "time": "Sun Jul 15 23:37:59 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Mon Jul 16 09:05:35 2007 -0700"
      },
      "message": "serial: convert early_uart to earlycon for 8250\n\nBeacuse SERIAL_PORT_DFNS is removed from include/asm-i386/serial.h and\ninclude/asm-x86_64/serial.h.  the serial8250_ports need to be probed late in\nserial initializing stage.  the console_init\u003d\u003eserial8250_console_init\u003d\u003e\nregister_console\u003d\u003eserial8250_console_setup will return -ENDEV, and console\nttyS0 can not be enabled at that time.  need to wait till uart_add_one_port in\ndrivers/serial/serial_core.c to call register_console to get console ttyS0.\nthat is too late.\n\nMake early_uart to use early_param, so uart console can be used earlier.  Make\nit to be bootconsole with CON_BOOT flag, so can use console handover feature.\nand it will switch to corresponding normal serial console automatically.\n\nnew command line will be:\n\tconsole\u003duart8250,io,0x3f8,9600n8\n\tconsole\u003duart8250,mmio,0xff5e0000,115200n8\nor\n\tearlycon\u003duart8250,io,0x3f8,9600n8\n\tearlycon\u003duart8250,mmio,0xff5e0000,115200n8\n\nit will print in very early stage:\n\tEarly serial console at I/O port 0x3f8 (options \u00279600n8\u0027)\n\tconsole [uart0] enabled\nlater for console it will print:\n\tconsole handover: boot [uart0] -\u003e real [ttyS0]\n\nSigned-off-by: \u003cyinghai.lu@sun.com\u003e\nCc: Andi Kleen \u003cak@suse.de\u003e\nCc: Bjorn Helgaas \u003cbjorn.helgaas@hp.com\u003e\nCc: Russell King \u003crmk@arm.linux.org.uk\u003e\nCc: Gerd Hoffmann \u003ckraxel@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": "1df21055e34b6a68d62cf0c524b9e52deebd7ead",
      "tree": "b3611a364b289340d6b5016eba9f53a37b6b1de2",
      "parents": [
        "4da1ce6d9c7e2a6d9236bf4dcfd33cf506082794"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Jul 09 18:51:58 2007 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Jul 09 18:51:58 2007 +0200"
      },
      "message": "sched: add init_idle_bootup_task()\n\nadd the init_idle_bootup_task() callback to the bootup thread,\nunused at the moment. (CFS will use it to switch the scheduling\nclass of the boot thread to the idle class)\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "92080309df1975729a9f8b45fd56528817e34db8",
      "tree": "f82ec2fb2b1d5fa68af807b6acb1b033c7a34e17",
      "parents": [
        "0e0d314e6a01bb14d303e35e6f7ba24b17020044"
      ],
      "author": {
        "name": "Sam Ravnborg",
        "email": "sam@ravnborg.org",
        "time": "Thu May 17 20:43:54 2007 +0200"
      },
      "committer": {
        "name": "Sam Ravnborg",
        "email": "sam@ravnborg.org",
        "time": "Sat May 19 09:11:58 2007 +0200"
      },
      "message": "init/main: use __init_refok to fix section mismatch\n\nKill a special case in modpost by introducing the\n__init_refok marker.\n\nSigned-off-by: Sam Ravnborg \u003csam@ravnborg.org\u003e\n"
    },
    {
      "commit": "0e29b24aa6b3eb6c161cbb9e42fc20b47e67a7c6",
      "tree": "1278ef6ce9da5c3437624d4c02449c4662485f38",
      "parents": [
        "820e45db2380eb1545fa2bc5d34b8b2f2933faeb"
      ],
      "author": {
        "name": "Sukadev Bhattiprolu",
        "email": "sukadev@us.ibm.com",
        "time": "Thu May 10 22:23:01 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Fri May 11 08:29:35 2007 -0700"
      },
      "message": "Explicitly set pgid and sid of init process\n\nExplicitly set pgid and sid of init process to 1.\n\nSigned-off-by: Sukadev Bhattiprolu \u003csukadev@us.ibm.com\u003e\nCc: Cedric Le Goater \u003cclg@fr.ibm.com\u003e\nCc: Dave Hansen \u003chaveblue@us.ibm.com\u003e\nCc: Serge Hallyn \u003cserue@us.ibm.com\u003e\nCc: Eric Biederman \u003cebiederm@xmission.com\u003e\nCc: Herbert Poetzl \u003cherbert@13thfloor.at\u003e\nCc: \u003ccontainers@lists.osdl.org\u003e\nAcked-by: Eric W. Biederman \u003cebiederm@xmission.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "73c279927f89561ecb45b2dfdf9314bafcfd9f67",
      "tree": "2186e28c92c6f8229ea20eb9856714186bf77a4c",
      "parents": [
        "c93465181fed0f8f5942a41108943dadea0aa345"
      ],
      "author": {
        "name": "Eric W. Biederman",
        "email": "ebiederm@xmission.com",
        "time": "Wed May 09 02:34:32 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Wed May 09 12:30:53 2007 -0700"
      },
      "message": "kthread: don\u0027t depend on work queues\n\nCurrently there is a circular reference between work queue initialization\nand kthread initialization.  This prevents the kthread infrastructure from\ninitializing until after work queues have been initialized.\n\nWe want the properties of tasks created with kthread_create to be as close\nas possible to the init_task and to not be contaminated by user processes.\nThe later we start our kthreadd that creates these tasks the harder it is\nto avoid contamination from user processes and the more of a mess we have\nto clean up because the defaults have changed on us.\n\nSo this patch modifies the kthread support to not use work queues but to\ninstead use a simple list of structures, and to have kthreadd start from\ninit_task immediately after our kernel thread that execs /sbin/init.\n\nBy being a true child of init_task we only have to change those process\nsettings that we want to have different from init_task, such as our process\nname, the cpus that are allowed, blocking all signals and setting SIGCHLD\nto SIG_IGN so that all of our children are reaped automatically.\n\nBy being a true child of init_task we also naturally get our ppid set to 0\nand do not wind up as a child of PID \u003d\u003d 1.  Ensuring that tasks generated\nby kthread_create will not slow down the functioning of the wait family of\nfunctions.\n\n[akpm@linux-foundation.org: use interruptible sleeps]\nSigned-off-by: Eric W. Biederman \u003cebiederm@xmission.com\u003e\nCc: Oleg Nesterov \u003coleg@tv-sign.ru\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "8f0c45cdf87dc9141e87b0ad2fc6fff216a95f79",
      "tree": "1940c1f08b9bc6e2429559ba19b71b725ad9524c",
      "parents": [
        "b73a7e76c1eeaa770a41554698917c3c45686a07"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue May 08 00:28:26 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Tue May 08 11:15:07 2007 -0700"
      },
      "message": "enhance initcall_debug, measure latency\n\nenhance the initcall_debug boot option:\n\n - measure the time the initcall took to execute and report\n   it in units of milliseconds.\n\n - show the return code of initcalls (useful to see failures and\n   to make sure that an initcall hung)\n\n[akpm@linux-foundation.org: fix printk warning]\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "46595390e97b3ab2741a36f5ff69e8f6033fa9c0",
      "tree": "911fb1bd59ecf260999eca19fad4534f719894da",
      "parents": [
        "b2ead6e012e2b2ab31851c288e0dd7872884a8a3"
      ],
      "author": {
        "name": "Adrian Bunk",
        "email": "bunk@stusta.de",
        "time": "Tue May 08 00:24:47 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Tue May 08 11:15:00 2007 -0700"
      },
      "message": "init/do_mounts.c: proper prepare_namespace() prototype\n\nAdd a proper protype for prepare_namespace() in include/linux/init.h.\n\nSigned-off-by: Adrian Bunk \u003cbunk@stusta.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "476f35348eb8d2a827765992899fea78b7dcc46f",
      "tree": "81dbace9de3d4ffa3ecc67bffe265134962117bd",
      "parents": [
        "aee16b3cee2746880e40945a9b5bff4f309cfbc4"
      ],
      "author": {
        "name": "Christoph Lameter",
        "email": "clameter@engr.sgi.com",
        "time": "Sun May 06 14:48:58 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Mon May 07 12:12:51 2007 -0700"
      },
      "message": "Safer nr_node_ids and nr_node_ids determination and initial values\n\nThe nr_cpu_ids value is currently only calculated in smp_init.  However, it\nmay be needed before (SLUB needs it on kmem_cache_init!) and other kernel\ncomponents may also want to allocate dynamically sized per cpu array before\nsmp_init.  So move the determination of possible cpus into sched_init()\nwhere we already loop over all possible cpus early in boot.\n\nAlso initialize both nr_node_ids and nr_cpu_ids with the highest value they\ncould take.  If we have accidental users before these values are determined\nthen the current valud of 0 may cause too small per cpu and per node arrays\nto be allocated.  If it is set to the maximum possible then we only waste\nsome memory for early boot users.\n\nSigned-off-by: Christoph Lameter \u003cclameter@sgi.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "15700770ef7c5d12e2f1659d2ddbeb3f658d9f37",
      "tree": "7fa2f81c33c9efcb1a1568385beead75c5892cfb",
      "parents": [
        "6de410c2b0cc055ae9ee640c84331f6a70878d9b",
        "11de39e2fbbc592018e0a231d0ee773653dcc8d6"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Sun May 06 13:21:57 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Sun May 06 13:21:57 2007 -0700"
      },
      "message": "Merge git://git.kernel.org/pub/scm/linux/kernel/git/sam/kbuild\n\n* git://git.kernel.org/pub/scm/linux/kernel/git/sam/kbuild: (38 commits)\n  kconfig: fix mconf segmentation fault\n  kbuild: enable use of code from a different dir\n  kconfig: error out if recursive dependencies are found\n  kbuild: scripts/basic/fixdep segfault on pathological string-o-death\n  kconfig: correct minor typo in Kconfig warning message.\n  kconfig: fix path to modules.txt in Kconfig help\n  usr/Kconfig: fix typo\n  kernel-doc: alphabetically-sorted entries in index.html of \u0027htmldocs\u0027\n  kbuild: be more explicit on missing .config file\n  kbuild: clarify the creation of the LOCALVERSION_AUTO string.\n  kbuild: propagate errors from find in scripts/gen_initramfs_list.sh\n  kconfig: refer to qt3 if we cannot find qt libraries\n  kbuild: handle compressed cpio initramfs-es\n  kbuild: ignore section mismatch warning for references from .paravirtprobe to .init.text\n  kbuild: remove stale comment in modpost.c\n  kbuild/mkuboot.sh: allow spaces in CROSS_COMPILE\n  kbuild: fix make mrproper for Documentation/DocBook/man\n  kbuild: remove kconfig binaries during make mrproper\n  kconfig/menuconfig: do not hardcode \u0027.config\u0027\n  kbuild: override build timestamp \u0026 version\n  ...\n"
    },
    {
      "commit": "aae5f662a32c35b1a962627535acb588d48ff5f9",
      "tree": "6e300ed8557e850e350c95dffb57ff9d5d5b182d",
      "parents": [
        "85bd2fddd68e757da8e1af98f857f61a3c9ce647"
      ],
      "author": {
        "name": "Sam Ravnborg",
        "email": "sam@ravnborg.org",
        "time": "Mon Feb 26 16:45:41 2007 +0100"
      },
      "committer": {
        "name": "Sam Ravnborg",
        "email": "sam@ravnborg.org",
        "time": "Wed May 02 20:58:07 2007 +0200"
      },
      "message": "kbuild: whitelist section mismatch in init/main.c\n\nIn init/main.c we have a reference from rest_init() to .init.text\nwhich is intentional.\nRename the function \u0027init\u0027 to \u0027kernel_init\u0027 to make it a\nkernel wide unique symbol and whitelist the reference.\n\nSigned-off-by: Sam Ravnborg \u003csam@ravnborg.org\u003e\n"
    },
    {
      "commit": "b6e3590f8145c77b8fcef3247e2412335221412f",
      "tree": "47fb1a28e41fd9f4e1aef45b5482b69b8d7c154e",
      "parents": [
        "de90c5ce832b1218042316260ff9268b00fdcba3"
      ],
      "author": {
        "name": "Jeremy Fitzhardinge",
        "email": "jeremy@goop.org",
        "time": "Wed May 02 19:27:12 2007 +0200"
      },
      "committer": {
        "name": "Andi Kleen",
        "email": "andi@basil.nowhere.org",
        "time": "Wed May 02 19:27:12 2007 +0200"
      },
      "message": "[PATCH] x86: Allow percpu variables to be page-aligned\n\nLet\u0027s allow page-alignment in general for per-cpu data (wanted by Xen, and\nIngo suggested KVM as well).\n\nBecause larger alignments can use more room, we increase the max per-cpu\nmemory to 64k rather than 32k: it\u0027s getting a little tight.\n\nSigned-off-by: Rusty Russell \u003crusty@rustcorp.com.au\u003e\nSigned-off-by: Jeremy Fitzhardinge \u003cjeremy@xensource.com\u003e\nSigned-off-by: Andi Kleen \u003cak@suse.de\u003e\nAcked-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: Andi Kleen \u003cak@suse.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\n"
    },
    {
      "commit": "53b8a315b76a3f3c70a5644976c0095460eb13d8",
      "tree": "f407a607adb1f552942aef9150ec709ed3f01798",
      "parents": [
        "74c7aa8b8581e0ba8d6d17c623b9279aaabbb0cf"
      ],
      "author": {
        "name": "Christoph Lameter",
        "email": "clameter@sgi.com",
        "time": "Tue Feb 20 13:57:51 2007 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Tue Feb 20 17:10:13 2007 -0800"
      },
      "message": "[PATCH] Convert highest_possible_processor_id to nr_cpu_ids\n\nWe frequently need the maximum number of possible processors in order to\nallocate arrays for all processors.  So far this was done using\nhighest_possible_processor_id().  However, we do need the number of\nprocessors not the highest id.  Moreover the number was so far dynamically\ncalculated on each invokation.  The number of possible processors does not\nchange when the system is running.  We can therefore calculate that number\nonce.\n\nSigned-off-by: Christoph Lameter \u003cclameter@sgi.com\u003e\nCc: Frederik Deweerdt \u003cfrederik.deweerdt@gmail.com\u003e\nCc: Neil Brown \u003cneilb@suse.de\u003e\nCc: Trond Myklebust \u003ctrond.myklebust@fys.uio.no\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "6168a702ab0be181e5e57a0b2d0e7376f7a47f0b",
      "tree": "4eaecb660154bb36b3884b21bf335ff040559902",
      "parents": [
        "a6e6df25ec6751f4f73784398ab7d43cf9d2019f"
      ],
      "author": {
        "name": "Andrew Morton",
        "email": "akpm@osdl.org",
        "time": "Sat Feb 17 21:22:39 2007 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Mon Feb 19 14:21:50 2007 -0800"
      },
      "message": "[PATCH] Declare init_irq_proc before we use it.\n\npowerpc gets:\n\ninit/main.c: In function `do_basic_setup\u0027:\ninit/main.c:714: warning: implicit declaration of function `init_irq_proc\u0027\n\nbut we cannot include linux/irq.h in generic code.\n\nFix it by moving the declaration into linux/interrupt.h instead.\n\nAnd make sure all code that defines init_irq_proc() is including\nlinux/interrupt.h.\n\nAnd nuke an ifdef-in-C\n\nCc: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: Benjamin Herrenschmidt \u003cbenh@kernel.crashing.org\u003e\nCc: Paul Mackerras \u003cpaulus@samba.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "906568c9c668ff994f4078932ec6ae1e3950d1af",
      "tree": "825ac33fc61af55a0fe7485a1df681f5a6126d7b",
      "parents": [
        "d316c57ff6bfad9557462b9100f25c6260d2b774"
      ],
      "author": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Fri Feb 16 01:28:01 2007 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Fri Feb 16 08:13:59 2007 -0800"
      },
      "message": "[PATCH] tick-management: core functionality\n\nWith Ingo Molnar \u003cmingo@elte.hu\u003e\n\nThe tick-management code is the first user of the clockevents layer.  It takes\nclock event devices from the clock events core and uses them to provide the\nperiodic tick.\n\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: john stultz \u003cjohnstul@us.ibm.com\u003e\nCc: Roman Zippel \u003czippel@linux-m68k.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "414f827c46973ba39320cfb43feb55a0eeb9b4e8",
      "tree": "45e860974ef698e71370a0ebdddcff4f14fbdf9e",
      "parents": [
        "86a71dbd3e81e8870d0f0e56b87875f57e58222b",
        "126b1922367fbe5513daa675a2abd13ed3917f4e"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Wed Feb 14 09:46:06 2007 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Wed Feb 14 09:46:06 2007 -0800"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://one.firstfloor.org/home/andi/git/linux-2.6\n\n* \u0027for-linus\u0027 of git://one.firstfloor.org/home/andi/git/linux-2.6: (94 commits)\n  [PATCH] x86-64: Remove mk_pte_phys()\n  [PATCH] i386: Fix broken CONFIG_COMPAT_VDSO on i386\n  [PATCH] i386: fix 32-bit ioctls on x64_32\n  [PATCH] x86: Unify pcspeaker platform device code between i386/x86-64\n  [PATCH] i386: Remove extern declaration from mm/discontig.c, put in header.\n  [PATCH] i386: Rename cpu_gdt_descr and remove extern declaration from smpboot.c\n  [PATCH] i386: Move mce_disabled to asm/mce.h\n  [PATCH] i386: paravirt unhandled fallthrough\n  [PATCH] x86_64: Wire up compat epoll_pwait\n  [PATCH] x86: Don\u0027t require the vDSO for handling a.out signals\n  [PATCH] i386: Fix Cyrix MediaGX detection\n  [PATCH] i386: Fix warning in cpu initialization\n  [PATCH] i386: Fix warning in microcode.c\n  [PATCH] x86: Enable NMI watchdog for AMD Family 0x10 CPUs\n  [PATCH] x86: Add new CPUID bits for AMD Family 10 CPUs in /proc/cpuinfo\n  [PATCH] i386: Remove fastcall in paravirt.[ch]\n  [PATCH] x86-64: Fix wrong gcc check in bitops.h\n  [PATCH] x86-64: survive having no irq mapping for a vector\n  [PATCH] i386: geode configuration fixes\n  [PATCH] i386: add option to show more code in oops reports\n  ...\n"
    },
    {
      "commit": "77b14db502cb85a031fe8fde6c85d52f3e0acb63",
      "tree": "4201f6a4dfe1062d1dc00659c403d630401b87cc",
      "parents": [
        "1ff007eb8e8c7c44e9a384a67d0fdd0fd06ba811"
      ],
      "author": {
        "name": "Eric W. Biederman",
        "email": "ebiederm@xmission.com",
        "time": "Wed Feb 14 00:34:12 2007 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Wed Feb 14 08:10:00 2007 -0800"
      },
      "message": "[PATCH] sysctl: reimplement the sysctl proc support\n\nWith this change the sysctl inodes can be cached and nothing needs to be done\nwhen removing a sysctl table.\n\nFor a cost of 2K code we will save about 4K of static tables (when we remove\nde from ctl_table) and 70K in proc_dir_entries that we will not allocate, or\nabout half that on a 32bit arch.\n\nThe speed feels about the same, even though we can now cache the sysctl\ndentries :(\n\nWe get the core advantage that we don\u0027t need to have a 1 to 1 mapping between\nctl table entries and proc files.  Making it possible to have /proc/sys vary\ndepending on the namespace you are in.  The currently merged namespaces don\u0027t\nhave an issue here but the network namespace under /proc/sys/net needs to have\ndifferent directories depending on which network adapters are visible.  By\nsimply being a cache different directories being visible depending on who you\nare is trivial to implement.\n\n[akpm@osdl.org: fix uninitialised var]\n[akpm@osdl.org: fix ARM build]\n[bunk@stusta.de: make things static]\nSigned-off-by: Eric W. Biederman \u003cebiederm@xmission.com\u003e\nCc: Russell King \u003crmk@arm.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": "b04c3afb2b6e2f902b41bb62b73684d92d7e6c34",
      "tree": "00b164435ec9c9226659852c784e7e0a8c94c8e9",
      "parents": [
        "0e03036c97b70b2602f7dedaa3a223ed7563c2c9"
      ],
      "author": {
        "name": "Eric W. Biederman",
        "email": "ebiederm@xmission.com",
        "time": "Wed Feb 14 00:33:57 2007 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Wed Feb 14 08:09:58 2007 -0800"
      },
      "message": "[PATCH] sysctl: move init_irq_proc into init/main where it belongs\n\nSigned-off-by: Eric W. Biederman \u003cebiederm@xmission.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "ee5bfa642a0d4b0f6ec6200bf96e5e647f93fcdb",
      "tree": "ed348c3f5d940b211919bc5191cfea5ea1b5a6fa",
      "parents": [
        "f8657e1b55901e6c227094258d1fa3642fa242bd"
      ],
      "author": {
        "name": "Vivek Goyal",
        "email": "vgoyal@in.ibm.com",
        "time": "Tue Feb 13 13:26:22 2007 +0100"
      },
      "committer": {
        "name": "Andi Kleen",
        "email": "andi@basil.nowhere.org",
        "time": "Tue Feb 13 13:26:22 2007 +0100"
      },
      "message": "[PATCH] generic: Break init() in two parts to avoid MODPOST warnings\n\no init() is a non __init function in .text section but it calls many\n  functions which are in .init.text section. Hence MODPOST generates lots\n  of cross reference warnings on i386 if compiled with CONFIG_RELOCATABLE\u003dy\n\nWARNING: vmlinux - Section mismatch: reference to .init.text:smp_prepare_cpus from .text between \u0027init\u0027 (at offset 0xc0101049) and \u0027rest_init\u0027\nWARNING: vmlinux - Section mismatch: reference to .init.text:migration_init from .text between \u0027init\u0027 (at offset 0xc010104e) and \u0027rest_init\u0027\nWARNING: vmlinux - Section mismatch: reference to .init.text:spawn_ksoftirqd from .text between \u0027init\u0027 (at offset 0xc0101053) and \u0027rest_init\u0027\n\no This patch breaks down init() in two parts. One part which can go\n  in .init.text section and can be freed and other part which has to\n  be non __init(init_post()). Now init() calls init_post() and init_post()\n  does not call any functions present in .init sections. Hence getting\n  rid of warnings.\n\nSigned-off-by: Vivek Goyal \u003cvgoyal@in.ibm.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Andi Kleen \u003cak@suse.de\u003e\n"
    },
    {
      "commit": "30d7e0d466b3ac0b5ef77e4062bf9385f0d72270",
      "tree": "cff57621e9e5b8898abb2982ec3b0b7d0e6eac88",
      "parents": [
        "ff91691bccdb741efb2df0489058a4961fa79598"
      ],
      "author": {
        "name": "Alon Bar-Lev",
        "email": "alon.barlev@gmail.com",
        "time": "Mon Feb 12 00:53:52 2007 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Mon Feb 12 09:48:37 2007 -0800"
      },
      "message": "[PATCH] Dynamic kernel command-line: common\n\nCurrent implementation stores a static command-line buffer allocated to\nCOMMAND_LINE_SIZE size.  Most architectures stores two copies of this buffer,\none for future reference and one for parameter parsing.\n\nCurrent kernel command-line size for most architecture is much too small for\nmodule parameters, video settings, initramfs paramters and much more.  The\nproblem is that setting COMMAND_LINE_SIZE to a grater value, allocates static\nbuffers.\n\nIn order to allow a greater command-line size, these buffers should be\ndynamically allocated or marked as init disposable buffers, so unused memory\ncan be released.\n\nThis patch renames the static saved_command_line variable into\nboot_command_line adding __initdata attribute, so that it can be disposed\nafter initialization.  This rename is required so applications that use\nsaved_command_line will not be affected by this change.\n\nIt reintroduces saved_command_line as dynamically allocated buffer to match\nthe data in boot_command_line.\n\nIt also mark secondary command-line buffer as __initdata, and copies it to\ndynamically allocated static_command_line buffer components may hold reference\nto it after initialization.\n\nThis patch is for linux-2.6.20-rc4-mm1 and is divided to target each\narchitecture.  I could not check this in any architecture so please forgive me\nif I got it wrong.\n\nThe per-architecture modification is very simple, use boot_command_line in\nplace of saved_command_line.  The common code is the change into dynamic\ncommand-line.\n\nThis patch:\n\n1. Rename saved_command_line into boot_command_line, mark as init\n   disposable.\n\n2. Add dynamic allocated saved_command_line.\n\n3. Add dynamic allocated static_command_line.\n\n4. During startup copy: boot_command_line into saved_command_line.  arch\n   command_line into static_command_line.\n\n5. Parse static_command_line and not arch command_line, so arch\n   command_line may be freed.\n\nSigned-off-by: Alon Bar-Lev \u003calon.barlev@gmail.com\u003e\nCc: Andi Kleen \u003cak@muc.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: Russell King \u003crmk@arm.linux.org.uk\u003e\nCc: Ian Molton \u003cspyro@f2s.com\u003e\nCc: Mikael Starvik \u003cstarvik@axis.com\u003e\nCc: David Howells \u003cdhowells@redhat.com\u003e\nCc: Yoshinori Sato \u003cysato@users.sourceforge.jp\u003e\nCc: Ralf Baechle \u003cralf@linux-mips.org\u003e\nCc: Kyle McMartin \u003ckyle@mcmartin.ca\u003e\nCc: Heiko Carstens \u003cheiko.carstens@de.ibm.com\u003e\nCc: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\nCc: Hirokazu Takata \u003ctakata@linux-m32r.org\u003e\nCc: Paul Mundt \u003clethal@linux-sh.org\u003e\nCc: Kazumoto Kojima \u003ckkojima@rr.iij4u.or.jp\u003e\nCc: Richard Curnow \u003crc@rc0.org.uk\u003e\nCc: William Lee Irwin III \u003cwli@holomorphy.com\u003e\nCc: \"David S. Miller\" \u003cdavem@davemloft.net\u003e\nCc: Jeff Dike \u003cjdike@addtoit.com\u003e\nCc: Paolo \u0027Blaisorblade\u0027 Giarrusso \u003cblaisorblade@yahoo.it\u003e\nCc: Miles Bader \u003cuclinux-v850@lsi.nec.co.jp\u003e\nCc: Chris Zankel \u003cchris@zankel.net\u003e\nCc: \"Luck, Tony\" \u003ctony.luck@intel.com\u003e\nCc: Geert Uytterhoeven \u003cgeert@linux-m68k.org\u003e\nCc: Roman Zippel \u003czippel@linux-m68k.org\u003e\nCc: Greg Ungerer \u003cgerg@uclinux.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "842f968f3fcdc475c95ec76a03b29c5147e87b54",
      "tree": "21da608e07cc73a55ffb7a5371f3cd8b36a7d56e",
      "parents": [
        "72ed3d035855841ad611ee48b20909e9619d4a79"
      ],
      "author": {
        "name": "Robert P. J. Day",
        "email": "rpjday@mindspring.com",
        "time": "Sat Feb 10 01:46:23 2007 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Sun Feb 11 11:18:05 2007 -0800"
      },
      "message": "[PATCH] Remove final reference to superfluous smp_commence()\n\nRemove the last (and commented out) invocation of the obsolete\nsmp_commence() call.\n\nSigned-off-by: Robert P. J. Day \u003crpjday@mindspring.com\u003e\nAcked-by: Ingo Molnar \u003cmingo@redhat.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "88d20328cd66ee05f9b7f4d414640700db69d82b",
      "tree": "07c4f8c8593acf36e3e1687a861f97cc3eff6c34",
      "parents": [
        "0e0be25d31f75f64b6fbe00f0b4e5d6b1ad1438e"
      ],
      "author": {
        "name": "Vivek Goyal",
        "email": "vgoyal@in.ibm.com",
        "time": "Thu Jan 11 01:52:44 2007 +0100"
      },
      "committer": {
        "name": "Andi Kleen",
        "email": "andi@basil.nowhere.org",
        "time": "Thu Jan 11 01:52:44 2007 +0100"
      },
      "message": "[PATCH] i386: Convert some functions to __init to avoid MODPOST warnings\n\no Some functions which should have been in init sections as they are called\n  only once. Put them in init sections. Otherwise MODPOST generates warning\n  as these functions are placed in .text and they end up accessing something\n  in init sections.\n\nWARNING: vmlinux - Section mismatch: reference to .init.text:migration_init\nfrom .text between \u0027do_pre_smp_initcalls\u0027 (at offset 0xc01000d1) and\n\u0027run_init_process\u0027\n\nSigned-off-by: Vivek Goyal \u003cvgoyal@in.ibm.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Andi Kleen \u003cak@suse.de\u003e\n"
    },
    {
      "commit": "3eb3c740f51c2126b53c2dde974c1c57e634aa7b",
      "tree": "bbc9a1152685d8ed97f231e4ff161d01d58f0fe2",
      "parents": [
        "8edf51a5ee38eb40de5449e131fd36450a229430"
      ],
      "author": {
        "name": "Roman Zippel",
        "email": "zippel@linux-m68k.org",
        "time": "Wed Jan 10 14:45:28 2007 +0100"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.osdl.org",
        "time": "Wed Jan 10 09:33:59 2007 -0800"
      },
      "message": "[PATCH] fix linux banner format string\n\nRevert previous attempts at messing with the linux banner string and\nsimply use a separate format string for proc.\n\nSigned-off-by: Roman Zippel \u003czippel@linux-m68k.org\u003e\nAcked-by: Olaf Hering \u003colaf@aepfle.de\u003e\nAcked-by: Jean Delvare \u003ckhali@linux-fr.org\u003e\nCc: Andrey Borzenkov \u003carvidjaar@mail.ru\u003e\nCc: Andrew Morton \u003cakpm@osdl.org\u003e\nCc: Andy Whitcroft \u003capw@shadowen.org\u003e\nCc: Herbert Poetzl \u003cherbert@13thfloor.at\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "c4a68306b9c0939b3facdad2cc5e34d660ff463a",
      "tree": "cd4479ae882bb52b00d71f85956ba8e1d0fdc03b",
      "parents": [
        "34f1ca540679f61a02b7406f036d9edde9717ee2"
      ],
      "author": {
        "name": "Ard van Breemen",
        "email": "ard@telegraafnet.nl",
        "time": "Fri Jan 05 16:36:19 2007 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.osdl.org",
        "time": "Fri Jan 05 23:55:21 2007 -0800"
      },
      "message": "[PATCH] start_kernel: test if irq\u0027s got enabled early, barf, and disable them again\n\nThe calls made by parse_parms to other initialization code might enable\ninterrupts again way too early.\n\nHaving interrupts on this early can make systems PANIC when they initialize\nthe IRQ controllers (which happens later in the code).  This patch detects\nthat irq\u0027s are enabled again, barfs about it and disables them again as a\nsafety net.\n\n[akpm@osdl.org: cleanups]\nSigned-off-by: Ard van Breemen \u003card@telegraafnet.nl\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "1f21782e63da81f56401a813a52091ef2703838f",
      "tree": "8a01f16d84fe3ec10182d4f8b987f1c7beecd414",
      "parents": [
        "542cfce6f36e8c43f71ae9c235b78497f350ae55"
      ],
      "author": {
        "name": "Adrian Bunk",
        "email": "bunk@stusta.de",
        "time": "Tue Dec 19 13:01:28 2006 -0800"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Wed Dec 20 10:56:45 2006 -0800"
      },
      "message": "Driver core: proper prototype for drivers/base/init.c:driver_init()\n\nAdd a prototype for driver_init() in include/linux/device.h.\n\nAlso remove a static function of the same name in drivers/acpi/ibm_acpi.c to\nibm_acpi_driver_init() to fix the namespace collision.\n\nSigned-off-by: Adrian Bunk \u003cbunk@stusta.de\u003e\nAcked-by: Henrique de Moraes Holschuh \u003chmh@hmh.eng.br\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\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": "8993780a6e44fb4e7ed34e33458506a775356c6e",
      "tree": "afa29f461ab5873eb8270d1b077b927feac1a9a7",
      "parents": [
        "9202f32558601c2c99ddc438eb3218131d00d413"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.osdl.org",
        "time": "Mon Dec 11 09:28:46 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.osdl.org",
        "time": "Mon Dec 11 11:34:11 2006 -0800"
      },
      "message": "Make SLES9 \"get_kernel_version\" work on the kernel binary again\n\nAs reported by Andy Whitcroft, at least the SLES9 initrd build process\ndepends on getting the kernel version from the kernel binary.  It does\nthat by simply trawling the binary and looking for the signature of the\n\"linux_banner\" string (the string \"Linux version \" to be exact. Which\nis really broken in itself, but whatever..)\n\nThat got broken when the string was changed to allow /proc/version to\nchange the UTS release information dynamically, and \"get_kernel_version\"\nthus returned \"%s\" (see commit a2ee8649ba6d71416712e798276bf7c40b64e6e5:\n\"[PATCH] Fix linux banner utsname information\").\n\nThis just restores \"linux_banner\" as a static string, which should fix\nthe version finding.  And /proc/version simply uses a different string.\n\nTo avoid wasting even that miniscule amount of memory, the early boot\nstring should really be marked __initdata, but that just causes the same\nbug in SLES9 to re-appear, since it will then find other occurrences of\n\"Linux version \" first.\n\nCc: Andy Whitcroft \u003capw@shadowen.org\u003e\nAcked-by: Herbert Poetzl \u003cherbert@13thfloor.at\u003e\nCc: Andi Kleen \u003cak@suse.de\u003e\nCc: Andrew Morton \u003cakpm@osdl.org\u003e\nCc: Steve Fox \u003cdrfickle@us.ibm.com\u003e\nAcked-by: Olaf Hering \u003colaf@aepfle.de\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "84d737866e2babdeab0c6b18ea155c6a649663b8",
      "tree": "e504da826174c2804d8c680828800aa680090686",
      "parents": [
        "6cc1b22a4acef3816eaa5f8c227d93d749b23195"
      ],
      "author": {
        "name": "Sukadev Bhattiprolu",
        "email": "sukadev@us.ibm.com",
        "time": "Fri Dec 08 02:38:01 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.osdl.org",
        "time": "Fri Dec 08 08:28:52 2006 -0800"
      },
      "message": "[PATCH] add child reaper to pid_namespace\n\nAdd a per pid_namespace child-reaper.  This is needed so processes are reaped\nwithin the same pid space and do not spill over to the parent pid space.  Its\nalso needed so containers preserve existing semantic that pid \u003d\u003d 1 would reap\norphaned children.\n\nThis is based on Eric Biederman\u0027s patch: http://lkml.org/lkml/2006/2/6/285\n\nSigned-off-by: Sukadev Bhattiprolu \u003csukadev@us.ibm.com\u003e\nSigned-off-by: Cedric Le Goater \u003cclg@fr.ibm.com\u003e\nCc: Kirill Korotaev \u003cdev@openvz.org\u003e\nCc: Eric W. Biederman \u003cebiederm@xmission.com\u003e\nCc: Herbert Poetzl \u003cherbert@13thfloor.at\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "a2ee8649ba6d71416712e798276bf7c40b64e6e5",
      "tree": "90603c28d717fc0b2e92adb7e3f3a98adf6ae458",
      "parents": [
        "6e2ac66470976ad7f57e0948572669b2bdfea2d0"
      ],
      "author": {
        "name": "Herbert Poetzl",
        "email": "herbert@13thfloor.at",
        "time": "Fri Dec 08 02:36:00 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.osdl.org",
        "time": "Fri Dec 08 08:28:37 2006 -0800"
      },
      "message": "[PATCH] Fix linux banner utsname information\n\nutsname information is shown in the linux banner, which also is used for\n/proc/version (which can have different utsname values inside a uts\nnamespaces).  this patch makes the varying data arguments and changes the\nstring to a format string, using those arguments.\n\nSigned-off-by: Herbert Poetzl \u003cherbert@13thfloor.at\u003e\nCc: \"Eric W. Biederman\" \u003cebiederm@xmission.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "4522d58275f124105819723e24e912c8e5bf3cdd",
      "tree": "b92c29014fadffe049c1925676037f0092b8d112",
      "parents": [
        "6cf24f031bc97cb5a7c9df3b6e73c45b628b2b28",
        "64a26a731235b59c9d73bbe82c1f896d57400d37"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.osdl.org",
        "time": "Thu Dec 07 08:59:11 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.osdl.org",
        "time": "Thu Dec 07 08:59:11 2006 -0800"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://one.firstfloor.org/home/andi/git/linux-2.6\n\n* \u0027for-linus\u0027 of git://one.firstfloor.org/home/andi/git/linux-2.6: (156 commits)\n  [PATCH] x86-64: Export smp_call_function_single\n  [PATCH] i386: Clean up smp_tune_scheduling()\n  [PATCH] unwinder: move .eh_frame to RODATA\n  [PATCH] unwinder: fully support linker generated .eh_frame_hdr section\n  [PATCH] x86-64: don\u0027t use set_irq_regs()\n  [PATCH] x86-64: check vector in setup_ioapic_dest to verify if need setup_IO_APIC_irq\n  [PATCH] x86-64: Make ix86 default to HIGHMEM4G instead of NOHIGHMEM\n  [PATCH] i386: replace kmalloc+memset with kzalloc\n  [PATCH] x86-64: remove remaining pc98 code\n  [PATCH] x86-64: remove unused variable\n  [PATCH] x86-64: Fix constraints in atomic_add_return()\n  [PATCH] x86-64: fix asm constraints in i386 atomic_add_return\n  [PATCH] x86-64: Correct documentation for bzImage protocol v2.05\n  [PATCH] x86-64: replace kmalloc+memset with kzalloc in MTRR code\n  [PATCH] x86-64: Fix numaq build error\n  [PATCH] x86-64: include/asm-x86_64/cpufeature.h isn\u0027t a userspace header\n  [PATCH] unwinder: Add debugging output to the Dwarf2 unwinder\n  [PATCH] x86-64: Clarify error message in GART code\n  [PATCH] x86-64: Fix interrupt race in idle callback (3rd try)\n  [PATCH] x86-64: Remove unwind stack pointer alignment forcing again\n  ...\n\nFixed conflict in include/linux/uaccess.h manually\n\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "f1a60dbf68061e5a5364cbc723786b355637ffd3",
      "tree": "aa7f94e27e7fe110e2729ef1202b486442d1caa8",
      "parents": [
        "a4ed06ad83acc3b7dafc018bc0b27469e787e27d"
      ],
      "author": {
        "name": "Andrew Morton",
        "email": "akpm@osdl.org",
        "time": "Wed Dec 06 20:39:59 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.osdl.org",
        "time": "Thu Dec 07 08:39:44 2006 -0800"
      },
      "message": "[PATCH] gcc-4.1.0 is bust\n\nKeith says\n\nCompiling 2.6.19-rc6 with gcc version 4.1.0 (SUSE Linux), wait_hpet_tick is\noptimized away to a never ending loop and the kernel hangs on boot in timer\nsetup.\n\n0000001a \u003cwait_hpet_tick\u003e:\n  1a:   55                      push   %ebp\n  1b:   89 e5                   mov    %esp,%ebp\n  1d:   eb fe                   jmp    1d \u003cwait_hpet_tick+0x3\u003e\n\nThis is not a problem with gcc 3.3.5.  Adding barrier() calls to\nwait_hpet_tick does not help, making the variables volatile does.\n\nAnd the consensus is that gcc-4.1.0 is busted.  Suse went and shipped\ngcc-4.1.0 so we cannot ban it.  Add a warning.\n\nCc: Keith Owens \u003ckaos@ocs.com.au\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "d7cd56111f30259e1b532a12e06f59f8e0a20355",
      "tree": "760e9548511ba30cf095f1873bcc9e301a89fa92",
      "parents": [
        "139ec7c416248b9ea227d21839235344edfee1e0"
      ],
      "author": {
        "name": "Rusty Russell",
        "email": "rusty@rustcorp.com.au",
        "time": "Thu Dec 07 02:14:08 2006 +0100"
      },
      "committer": {
        "name": "Andi Kleen",
        "email": "andi@basil.nowhere.org",
        "time": "Thu Dec 07 02:14:08 2006 +0100"
      },
      "message": "[PATCH] i386: cpu_detect extraction\n\nBoth lhype and Xen want to call the core of the x86 cpu detect code before\ncalling start_kernel.\n\n(extracted from larger patch)\n\nAK: folded in start_kernel header patch\n\nSigned-off-by: Jeremy Fitzhardinge \u003cjeremy@xensource.com\u003e\nSigned-off-by: Rusty Russell \u003crusty@rustcorp.com.au\u003e\nSigned-off-by: Andi Kleen \u003cak@suse.de\u003e\nCc: Jeremy Fitzhardinge \u003cjeremy@goop.org\u003e\nCc: Andi Kleen \u003cak@suse.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@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": "9ec52099e4b8678a60e9f93e41ad87885d64f3e6",
      "tree": "a68fe051b39f8f8e8be469cbd3c2f653b9b71a9d",
      "parents": [
        "1a657f78dcc8ea7c53eaa1f2a45ea2315738c15f"
      ],
      "author": {
        "name": "Cedric Le Goater",
        "email": "clg@fr.ibm.com",
        "time": "Mon Oct 02 02:19:00 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Mon Oct 02 07:57:25 2006 -0700"
      },
      "message": "[PATCH] replace cad_pid by a struct pid\n\nThere are a few places in the kernel where the init task is signaled.  The\nctrl+alt+del sequence is one them.  It kills a task, usually init, using a\ncached pid (cad_pid).\n\nThis patch replaces the pid_t by a struct pid to avoid pid wrap around\nproblem.  The struct pid is initialized at boot time in init() and can be\nmodified through systctl with\n\n\t/proc/sys/kernel/cad_pid\n\n[ I haven\u0027t found any distro using it ? ]\n\nIt also introduces a small helper routine kill_cad_pid() which is used\nwhere it seemed ok to use cad_pid instead of pid 1.\n\n[akpm@osdl.org: cleanups, build fix]\nSigned-off-by: Cedric Le Goater \u003cclg@fr.ibm.com\u003e\nCc: Eric W. Biederman \u003cebiederm@xmission.com\u003e\nCc: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\nCc: Paul Mackerras \u003cpaulus@samba.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    }
  ],
  "next": "6760856791c6e527da678021ee6a67896549d4da"
}
