)]}'
{
  "log": [
    {
      "commit": "8c60bfb0666952728b3be73ef9bc133d686aebba",
      "tree": "d532c12f7e414ee3ce6ed3bda912fa145e96de29",
      "parents": [
        "b6584065ee833dcec20683be7fc25da3f2268cee",
        "700018e0a77b4113172257fcdaa1c58e27a5074f"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Nov 18 08:06:21 2008 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Nov 18 08:06:21 2008 -0800"
      },
      "message": "Merge branch \u0027sched-fixes-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip\n\n* \u0027sched-fixes-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:\n  cpuset: fix regression when failed to generate sched domains\n  sched, signals: fix the racy usage of -\u003esignal in account_group_xxx/run_posix_cpu_timers\n  sched: fix kernel warning on /proc/sched_debug access\n  sched: correct sched-rt-group.txt pathname in init/Kconfig\n"
    },
    {
      "commit": "02f5621042e3f7e2fb6c741cbe5ee7c1f3caf354",
      "tree": "0219e50d348bb4a2ed1df3003889d00733deab40",
      "parents": [
        "4ffaf869c7780bbdfc11291e5fd4b61dde662b1c"
      ],
      "author": {
        "name": "Simon Arlott",
        "email": "simon@fire.lp0.eu",
        "time": "Wed Nov 05 22:18:19 2008 +0000"
      },
      "committer": {
        "name": "Pekka Enberg",
        "email": "penberg@cs.helsinki.fi",
        "time": "Thu Nov 13 20:49:01 2008 +0200"
      },
      "message": "Kconfig: SLUB is the default slab allocator\n\nIn 2007, a0acd820807680d2ccc4ef3448387fcdbf152c73 changed the default\nslab allocator to SLUB, but the SLAB help text still says SLAB is the\ndefault. This change fixes that.\n\nSigned-off-by: Simon Arlott \u003csimon@fire.lp0.eu\u003e\nSigned-off-by: Pekka Enberg \u003cpenberg@cs.helsinki.fi\u003e\n"
    },
    {
      "commit": "2fe401e38602e853e01376cdb670b0bc4d526a6d",
      "tree": "8545b8facadce756b553adccb463d123d20bec36",
      "parents": [
        "4ffaf869c7780bbdfc11291e5fd4b61dde662b1c"
      ],
      "author": {
        "name": "Adrian Knoth",
        "email": "adi@drcomp.erfurt.thur.de",
        "time": "Wed Nov 12 16:23:55 2008 -0800"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Nov 13 09:32:29 2008 +0100"
      },
      "message": "sched: correct sched-rt-group.txt pathname in init/Kconfig\n\ninit/Kconfig directs the user to Documentation/sched-rt-group.txt, but\nthe file is actually in Documentation/scheduler/sched-rt-group.txt.\n\nThis patch corrects the pathname mentioned in init/Kconfig.\n\nSigned-off-by: Adrian Knoth \u003cadi@drcomp.erfurt.thur.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "d3f15800d5752ca4814270180798ab8323157d28",
      "tree": "5db82711ede9dade338900bade4d1f33568006b7",
      "parents": [
        "1f98757776eafe31065be9118db6051afcf8643c"
      ],
      "author": {
        "name": "Huang Weiyi",
        "email": "weiyi.huang@gmail.com",
        "time": "Fri Oct 31 12:47:23 2008 +0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Nov 01 10:35:51 2008 -0700"
      },
      "message": "init/do_mounts_md.c: remove duplicated #include\n\nRemoved duplicated #include \u003clinux/delay.h\u003e in init/do_mounts_md.c.\n\nThe same compile error (\"error: implicit declaration of function\n\u0027msleep\u0027\") got fixed twice:\n\n - f8b77d39397e1510b1a3bcfd385ebd1a45aae77f (\"init/do_mounts_md.c:\n   msleep compile fix\")\n\n - 73b4a24f5ff09389ba6277c53a266b142f655ed2 (\"init/do_mounts_md.c must\n   #include \u003clinux/delay.h\u003e\")\n\nby people adding the \u003clinux/delay.h\u003e include in two slightly different\nplaces.  Andrew\u0027s quilt scripts happily ignore the fuzz, and will\nre-apply the patch even though they had conflicts.\n\nSigned-off-by: Huang Weiyi \u003cweiyi.huang@gmail.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "84ad6d70001df969d7e8569dd18d98d9550277fb",
      "tree": "dee0cb5d20d596ab5144875fe2548dae0e7e2e24",
      "parents": [
        "99e87fd19a2dfba8ec0f2110f6f1b63062a52a6f"
      ],
      "author": {
        "name": "KAMEZAWA Hiroyuki",
        "email": "kamezawa.hiroyu@jp.fujitsu.com",
        "time": "Wed Oct 29 14:01:06 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Oct 30 11:38:46 2008 -0700"
      },
      "message": "memcg: update menuconfig help text\n\npage_cgroup is now allocated at boot and memmap doesn\u0027t includes pointer\nfor page_cgroup.  Fix the menu help text.\n\nReviewed-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": "f8b77d39397e1510b1a3bcfd385ebd1a45aae77f",
      "tree": "e0e265b6903d3c3f48b274e890484c5d55a213bb",
      "parents": [
        "6158d3a2323835546c7cf83a170316fa77b726e0"
      ],
      "author": {
        "name": "Alexey Dobriyan",
        "email": "adobriyan@gmail.com",
        "time": "Wed Oct 29 14:01:05 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Oct 30 11:38:46 2008 -0700"
      },
      "message": "init/do_mounts_md.c: msleep compile fix\n\ninit/do_mounts_md.c:285: error: implicit declaration of function \u0027msleep\u0027\n\nSigned-off-by: Alexey Dobriyan \u003cadobriyan@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": "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": "a3415dc34f4a615a904852e7a9d0cc2877007e9e",
      "tree": "0072b4b3f266c03220ffb2a9b329b2591f2a8e19",
      "parents": [
        "b4d0b08a4c3947c6ac004c9d83154ec5999c1861",
        "05a34f51ba451c65773ad6f1acf4cc089cc474d8"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Oct 23 10:16:53 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Oct 23 10:16:53 2008 -0700"
      },
      "message": "Merge branch \u0027linux-next\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/jbarnes/pci-2.6\n\n* \u0027linux-next\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/jbarnes/pci-2.6: (32 commits)\n  PCI hotplug: fix logic in Compaq hotplug controller bus speed setup\n  PCI: don\u0027t export linux/io.h from pci.h\n  PCI: PCI_QUIRKS depends on PCI\n  PCI hotplug: pciehp: poll data link layer link active\n  PCI hotplug: pciehp: fix possible memory leak in pcie_init\n  PCI: Workaround invalid P2P bridge bus numbers\n  PCI Hotplug: fakephp: add duplicate slot name debugging\n  PCI: Hotplug core: remove \u0027name\u0027\n  PCI: shcphp: remove \u0027name\u0027 parameter\n  PCI: SGI Hotplug: stop managing bss_hotplug_slot-\u003ename\n  PCI: rpaphp: kmalloc/kfree slot-\u003ename directly\n  PCI: pciehp: remove \u0027name\u0027 parameter\n  PCI: ibmphp: stop managing hotplug_slot-\u003ename\n  PCI: fakephp: remove \u0027name\u0027 parameter\n  PCI, PCI Hotplug: introduce slot_name helpers\n  PCI: cpqphp: stop managing hotplug_slot-\u003ename\n  PCI: cpci_hotplug: stop managing hotplug_slot-\u003ename\n  PCI: acpiphp: remove \u0027name\u0027 parameter\n  PCI: prevent duplicate slot names\n  PCI Hotplug: serialize pci_hp_register and pci_hp_deregister\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": "61cfc7e442c52c14e632d9af0e70779cfa04249d",
      "tree": "b5b556ce6f024f0faab4595dcaadf0b665e0fbb8",
      "parents": [
        "f18e9625e02bb3e5ba9e81104f14e9d904ab28c4"
      ],
      "author": {
        "name": "Geert Uytterhoeven",
        "email": "geert@linux-m68k.org",
        "time": "Wed Oct 22 08:53:25 2008 +0200"
      },
      "committer": {
        "name": "Jesse Barnes",
        "email": "jbarnes@virtuousgeek.org",
        "time": "Wed Oct 22 16:42:46 2008 -0700"
      },
      "message": "PCI: PCI_QUIRKS depends on PCI\n\ncommit 3d137310245e4cdc3e8c8ba1bea2e145a87ae8e3 (\"PCI: allow quirks to be\ncompiled out\") introduced CONFIG_PCI_QUIRKS, which now shows up in each\nand every .config.  Fix this by making it depend on PCI.\n\nSigned-off-by: Geert Uytterhoeven \u003cgeert@linux-m68k.org\u003e\nSigned-off-by: Jesse Barnes \u003cjbarnes@virtuousgeek.org\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": "a0bfb673dca8a2b4324fe11e678ec6d6a9ad67e0",
      "tree": "b5a473c95d671e6a62fc4520d01a7a4721820794",
      "parents": [
        "92b29b86fe2e183d44eb467e5e74a5f718ef2e43",
        "96499871f45b9126157b1a5c512d6e30f1635225"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Oct 20 13:40:47 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Oct 20 13:40:47 2008 -0700"
      },
      "message": "Merge branch \u0027linux-next\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/jbarnes/pci-2.6\n\n* \u0027linux-next\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/jbarnes/pci-2.6: (41 commits)\n  PCI: fix pci_ioremap_bar() on s390\n  PCI: fix AER capability check\n  PCI: use pci_find_ext_capability everywhere\n  PCI: remove #ifdef DEBUG around dev_dbg call\n  PCI hotplug: fix get_##name return value problem\n  PCI: document the pcie_aspm kernel parameter\n  PCI: introduce an pci_ioremap(pdev, barnr) function\n  powerpc/PCI: Add legacy PCI access via sysfs\n  PCI: Add ability to mmap legacy_io on some platforms\n  PCI: probing debug message uniformization\n  PCI: support PCIe ARI capability\n  PCI: centralize the capabilities code in probe.c\n  PCI: centralize the capabilities code in pci-sysfs.c\n  PCI: fix 64-vbit prefetchable memory resource BARs\n  PCI: replace cfg space size (256/4096) by macros.\n  PCI: use resource_size() everywhere.\n  PCI: use same arg names in PCI_VDEVICE comment\n  PCI hotplug: rpaphp: make debug var unique\n  PCI: use %pF instead of print_fn_descriptor_symbol() in quirks.c\n  PCI: fix hotplug get_##name return value problem\n  ...\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": "3d137310245e4cdc3e8c8ba1bea2e145a87ae8e3",
      "tree": "478a5864216e1ddca3df9a2d08bde0d8ea4523a5",
      "parents": [
        "b41d6cf38e27a940d998d989526a9748de1bf028"
      ],
      "author": {
        "name": "Thomas Petazzoni",
        "email": "thomas.petazzoni@enix.org",
        "time": "Tue Aug 19 10:28:24 2008 +0200"
      },
      "committer": {
        "name": "Jesse Barnes",
        "email": "jbarnes@virtuousgeek.org",
        "time": "Mon Oct 20 10:53:40 2008 -0700"
      },
      "message": "PCI: allow quirks to be compiled out\n\nThis patch adds the CONFIG_PCI_QUIRKS option which allows to remove all\nthe PCI quirks, which are not necessarily used on embedded systems when\nPCI is working properly. As this is a size-reduction option, it depends\non CONFIG_EMBEDDED. It allows to save almost 12 kilobytes of kernel\ncode:\n\n   text\t   data\t    bss\t    dec\t    hex\tfilename\n1287806\t 123596\t 212992\t1624394\t 18c94a\tvmlinux.old\n1275854\t 123596\t 212992\t1612442\t 189a9a\tvmlinux\n -11952       0       0  -11952   -2EB0 +/-\n\nThis patch has originally been written by Zwane Mwaikambo\n\u003czwane@arm.linux.org.uk\u003e and is part of the Linux Tiny project.\n\nSigned-off-by: Thomas Petazzoni \u003cthomas.petazzoni@free-electrons.com\u003e\nSigned-off-by: Jesse Barnes \u003cjbarnes@virtuousgeek.org\u003e\n"
    },
    {
      "commit": "dc52ddc0e6f45b04780b26fc0813509f8e798c42",
      "tree": "384826e9fab4e434bc5c85ce744470ae472e52c3",
      "parents": [
        "8174f1503f4bf7e9a14b3fbbfdb30c6be6e29f77"
      ],
      "author": {
        "name": "Matt Helsley",
        "email": "matthltc@us.ibm.com",
        "time": "Sat Oct 18 20:27:21 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Oct 20 08:52:34 2008 -0700"
      },
      "message": "container freezer: implement freezer cgroup subsystem\n\nThis patch implements a new freezer subsystem in the control groups\nframework.  It provides a way to stop and resume execution of all tasks in\na cgroup by writing in the cgroup filesystem.\n\nThe freezer subsystem in the container filesystem defines a file named\nfreezer.state.  Writing \"FROZEN\" to the state file will freeze all tasks\nin the cgroup.  Subsequently writing \"RUNNING\" will unfreeze the tasks in\nthe cgroup.  Reading will return the current state.\n\n* Examples of usage :\n\n   # mkdir /containers/freezer\n   # mount -t cgroup -ofreezer freezer  /containers\n   # mkdir /containers/0\n   # echo $some_pid \u003e /containers/0/tasks\n\nto get status of the freezer subsystem :\n\n   # cat /containers/0/freezer.state\n   RUNNING\n\nto freeze all tasks in the container :\n\n   # echo FROZEN \u003e /containers/0/freezer.state\n   # cat /containers/0/freezer.state\n   FREEZING\n   # cat /containers/0/freezer.state\n   FROZEN\n\nto unfreeze all tasks in the container :\n\n   # echo RUNNING \u003e /containers/0/freezer.state\n   # cat /containers/0/freezer.state\n   RUNNING\n\nThis is the basic mechanism which should do the right thing for user space\ntask in a simple scenario.\n\nIt\u0027s important to note that freezing can be incomplete.  In that case we\nreturn EBUSY.  This means that some tasks in the cgroup are busy doing\nsomething that prevents us from completely freezing the cgroup at this\ntime.  After EBUSY, the cgroup will remain partially frozen -- reflected\nby freezer.state reporting \"FREEZING\" when read.  The state will remain\n\"FREEZING\" until one of these things happens:\n\n\t1) Userspace cancels the freezing operation by writing \"RUNNING\" to\n\t\tthe freezer.state file\n\t2) Userspace retries the freezing operation by writing \"FROZEN\" to\n\t\tthe freezer.state file (writing \"FREEZING\" is not legal\n\t\tand returns EIO)\n\t3) The tasks that blocked the cgroup from entering the \"FROZEN\"\n\t\tstate disappear from the cgroup\u0027s set of tasks.\n\n[akpm@linux-foundation.org: coding-style fixes]\n[akpm@linux-foundation.org: export thaw_process]\nSigned-off-by: Cedric Le Goater \u003cclg@fr.ibm.com\u003e\nSigned-off-by: Matt Helsley \u003cmatthltc@us.ibm.com\u003e\nAcked-by: Serge E. Hallyn \u003cserue@us.ibm.com\u003e\nTested-by: Matt Helsley \u003cmatthltc@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": "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": "73b4a24f5ff09389ba6277c53a266b142f655ed2",
      "tree": "81c6d539589c8b2414b4e8b99814b1f18769a37e",
      "parents": [
        "1b821bfb034c5db5af62b463e3001243905179ba"
      ],
      "author": {
        "name": "Adrian Bunk",
        "email": "bunk@kernel.org",
        "time": "Thu Oct 16 23:29:21 2008 +0300"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Oct 16 13:35:34 2008 -0700"
      },
      "message": "init/do_mounts_md.c must #include \u003clinux/delay.h\u003e\n\nThis patch fixes the following compile error caused by commit\n589f800bb12c5cd6c9167bbf9bf3cb70cd8e422c (\"fastboot: make the raid\nautodetect code wait for all devices to init\"):\n\n    CC      init/do_mounts_md.o\n  init/do_mounts_md.c: In function \u0027autodetect_raid\u0027:\n  init/do_mounts_md.c:285: error: implicit declaration of function \u0027msleep\u0027\n  make[2]: *** [init/do_mounts_md.o] Error 1\n\nSigned-off-by: Adrian Bunk \u003cbunk@kernel.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "ebf3f09c634906d371f2bfd71b41c7e0c52efe7e",
      "tree": "4205040f47fba2675dc4c6b1407d15c9d6f8b355",
      "parents": [
        "d8273674721faaf84bec2190c0c7a82972b37f73"
      ],
      "author": {
        "name": "Thomas Petazzoni",
        "email": "thomas.petazzoni@free-electrons.com",
        "time": "Wed Oct 15 22:05:12 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Oct 16 11:21:51 2008 -0700"
      },
      "message": "Configure out AIO support\n\nThis patchs adds the CONFIG_AIO option which allows to remove support\nfor asynchronous I/O operations, that are not necessarly used by\napplications, particularly on embedded devices. As this is a\nsize-reduction option, it depends on CONFIG_EMBEDDED. It allows to\nsave ~7 kilobytes of kernel code/data:\n\n   text\t   data\t    bss\t    dec\t    hex\tfilename\n1115067\t 119180\t 217088\t1451335\t 162547\tvmlinux\n1108025\t 119048\t 217088\t1444161\t 160941\tvmlinux.new\n  -7042    -132       0   -7174   -1C06 +/-\n\nThis patch has been originally written by Matt Mackall\n\u003cmpm@selenic.com\u003e, and is part of the Linux Tiny project.\n\n[randy.dunlap@oracle.com: build fix]\nSigned-off-by: Thomas Petazzoni \u003cthomas.petazzoni@free-electrons.com\u003e\nCc: Benjamin LaHaise \u003cbcrl@kvack.org\u003e\nCc: Zach Brown \u003czach.brown@oracle.com\u003e\nSigned-off-by: Matt Mackall \u003cmpm@selenic.com\u003e\nSigned-off-by: Randy Dunlap \u003crandy.dunlap@oracle.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "889d51a10712b6fd6175196626de2116858394f4",
      "tree": "3dc6575a4f2429cdd320c05de209c88a73a9da1e",
      "parents": [
        "9ba16087d9f996a93ab6f4453a52a4b24bc1f25c"
      ],
      "author": {
        "name": "Nye Liu",
        "email": "nyet@nyet.org",
        "time": "Wed Oct 15 22:01:40 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Oct 16 11:21:31 2008 -0700"
      },
      "message": "initramfs: add option to preserve mtime from initramfs cpio images\n\nWhen unpacking the cpio into the initramfs, mtimes are not preserved by\ndefault.  This patch adds an INITRAMFS_PRESERVE_MTIME option that allows\nmtimes stored in the cpio image to be used when constructing the\ninitramfs.\n\nFor embedded applications that run exclusively out of the initramfs, this\nis invaluable:\n\nWhen building embedded application initramfs images, its nice to know when\nthe files were actually created during the build process - that makes it\neasier to see what files were modified when so we can compare the files\nthat are being used on the image with the files used during the build\nprocess.  This might help (for example) to determine if the target system\nhas all the updated files you expect to see w/o having to check MD5s etc.\n\nIn our environment, the whole system runs off the initramfs partition, and\nseeing the modified times of the shared libraries (for example) helps us\nfind bugs that may have been introduced by the build system incorrectly\npropogating outdated shared libraries into the image.\n\nSimilarly, many of the initializion/configuration files in /etc might be\ndynamically built by the build system, and knowing when they were modified\nhelps us sanity check whether the target system has the \"latest\" files\netc.\n\nFinally, we might use last modified times to determine whether a hot fix\nshould be applied or not to the running ramfs.\n\nSigned-off-by: Nye Liu \u003cnyet@nyet.org\u003e\nCc: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "93fd85d005eae2d1106aabd581adb6f20e335c83",
      "tree": "f099adb21b7795d0f329a92ea787b802de62a4e2",
      "parents": [
        "2e0eb731e52ebfab177860e59e6e3464c2521839"
      ],
      "author": {
        "name": "Geert Uytterhoeven",
        "email": "Geert.Uytterhoeven@sonycom.com",
        "time": "Wed Oct 15 22:01:32 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Oct 16 11:21:30 2008 -0700"
      },
      "message": "identify_ramdisk_image(): correct typo about return value in comment\n\nidentify_ramdisk_image() returns 0 (not -1) if a gzipped ramdisk is found:\n\n\tif (buf[0] \u003d\u003d 037 \u0026\u0026 ((buf[1] \u003d\u003d 0213) || (buf[1] \u003d\u003d 0236))) {\n\t\tprintk(KERN_NOTICE\n\t\t       \"RAMDISK: Compressed image found at block %d\\n\",\n\t\t       start_block);\n\t\tnblocks \u003d 0;\n\t\t^^^^^^^^^^^\n\t\tgoto done;\n\t}\n\n\t...\n\ndone:\n\tsys_lseek(fd, start_block * BLOCK_SIZE, 0);\n\tkfree(buf);\n\treturn nblocks;\n\t^^^^^^^^^^^^^^\n\nHence correct the typo in the comment, which has existed since the\naddition of compressed ramdisk support in 1.3.48.\n\nSigned-off-by: Geert Uytterhoeven \u003cGeert.Uytterhoeven@sonycom.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "2d51b75370d83535883c66521b03fcd6a1f1f68d",
      "tree": "68e7bb018a80207781719795828434dfcf3b9bf6",
      "parents": [
        "93f78da405685a756beeaeae4b5e41fcec39eab3",
        "ce52aebd0219edc7a783278fbe80a6ccca0556c0"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Oct 14 12:28:02 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Oct 14 12:28:02 2008 -0700"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/arjan/linux-2.6-fastboot\n\n* \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/arjan/linux-2.6-fastboot:\n  raid, fastboot: hide RAID autodetect option if MD is compiled as a module\n  raid: make RAID autodetect default a KConfig option\n  warning: fix init do_mounts_md c\n  fastboot: make the RAID autostart code print a message just before waiting\n  fastboot: make the raid autodetect code wait for all devices to init\n  fastboot: Fix bootgraph.pl initcall name regexp\n  fastboot: fix issues and improve output of bootgraph.pl\n  Add a script to visualize the kernel boot process / time\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": "5f87f1121895dc09d2d1c1db5f14af6aa4ce3e94",
      "tree": "4b8354ab2dc0890d0d4c91d42ff9e13db50ebeab",
      "parents": [
        "cf569a932217b97e2fc2c48aa597fe29519a0cff"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Jul 23 14:15:22 2008 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Oct 14 10:33:32 2008 +0200"
      },
      "message": "tracing: clean up tracepoints kconfig structure\n\ndo not expose users to CONFIG_TRACEPOINTS - tracers can select it\njust fine.\n\nupdate ftrace to select CONFIG_TRACEPOINTS.\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "fa340d9c050e78fb21a142b617304214ae5e0c2d",
      "tree": "ef7b912de0c922ce7c819d26aa36e113c9c81858",
      "parents": [
        "b07c3f193a8074aa4afe43cfa8ae38ec4c7ccfa9"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Jul 23 13:38:00 2008 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Oct 14 10:32:56 2008 +0200"
      },
      "message": "tracing: disable tracepoints by default\n\nwhile it\u0027s arguably low overhead, we dont enable new features by default.\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "97e1c18e8d17bd87e1e383b2e9d9fc740332c8e2",
      "tree": "5c6bfce8bacf04c2993a0029788a1370a483afa6",
      "parents": [
        "e7f2f9918c0e97aa98ba147ca387e2c7238f0711"
      ],
      "author": {
        "name": "Mathieu Desnoyers",
        "email": "mathieu.desnoyers@polymtl.ca",
        "time": "Fri Jul 18 12:16:16 2008 -0400"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Oct 14 10:28:28 2008 +0200"
      },
      "message": "tracing: Kernel Tracepoints\n\nImplementation of kernel tracepoints. Inspired from the Linux Kernel\nMarkers. Allows complete typing verification by declaring both tracing\nstatement inline functions and probe registration/unregistration static\ninline functions within the same macro \"DEFINE_TRACE\". No format string\nis required. See the tracepoint Documentation and Samples patches for\nusage examples.\n\nTaken from the documentation patch :\n\n\"A tracepoint placed in code provides a hook to call a function (probe)\nthat you can provide at runtime. A tracepoint can be \"on\" (a probe is\nconnected to it) or \"off\" (no probe is attached). When a tracepoint is\n\"off\" it has no effect, except for adding a tiny time penalty (checking\na condition for a branch) and space penalty (adding a few bytes for the\nfunction call at the end of the instrumented function and adds a data\nstructure in a separate section).  When a tracepoint is \"on\", the\nfunction you provide is called each time the tracepoint is executed, in\nthe execution context of the caller. When the function provided ends its\nexecution, it returns to the caller (continuing from the tracepoint\nsite).\n\nYou can put tracepoints at important locations in the code. They are\nlightweight hooks that can pass an arbitrary number of parameters, which\nprototypes are described in a tracepoint declaration placed in a header\nfile.\"\n\nAddition and removal of tracepoints is synchronized by RCU using the\nscheduler (and preempt_disable) as guarantees to find a quiescent state\n(this is really RCU \"classic\"). The update side uses rcu_barrier_sched()\nwith call_rcu_sched() and the read/execute side uses\n\"preempt_disable()/preempt_enable()\".\n\nWe make sure the previous array containing probes, which has been\nscheduled for deletion by the rcu callback, is indeed freed before we\nproceed to the next update. It therefore limits the rate of modification\nof a single tracepoint to one update per RCU period. The objective here\nis to permit fast batch add/removal of probes on _different_\ntracepoints.\n\nChangelog :\n- Use #name \":\" #proto as string to identify the tracepoint in the\n  tracepoint table. This will make sure not type mismatch happens due to\n  connexion of a probe with the wrong type to a tracepoint declared with\n  the same name in a different header.\n- Add tracepoint_entry_free_old.\n- Change __TO_TRACE to get rid of the \u0027i\u0027 iterator.\n\nMasami Hiramatsu \u003cmhiramat@redhat.com\u003e :\nTested on x86-64.\n\nPerformance impact of a tracepoint : same as markers, except that it\nadds about 70 bytes of instructions in an unlikely branch of each\ninstrumented function (the for loop, the stack setup and the function\ncall). It currently adds a memory read, a test and a conditional branch\nat the instrumentation site (in the hot path). Immediate values will\neventually change this into a load immediate, test and branch, which\nremoves the memory read which will make the i-cache impact smaller\n(changing the memory read for a load immediate removes 3-4 bytes per\nsite on x86_32 (depending on mov prefixes), or 7-8 bytes on x86_64, it\nalso saves the d-cache hit).\n\nAbout the performance impact of tracepoints (which is comparable to\nmarkers), even without immediate values optimizations, tests done by\nHideo Aoki on ia64 show no regression. His test case was using hackbench\non a kernel where scheduler instrumentation (about 5 events in code\nscheduler code) was added.\n\nQuoting Hideo Aoki about Markers :\n\nI evaluated overhead of kernel marker using linux-2.6-sched-fixes git\ntree, which includes several markers for LTTng, using an ia64 server.\n\nWhile the immediate trace mark feature isn\u0027t implemented on ia64, there\nis no major performance regression. So, I think that we don\u0027t have any\nissues to propose merging marker point patches into Linus\u0027s tree from\nthe viewpoint of performance impact.\n\nI prepared two kernels to evaluate. The first one was compiled without\nCONFIG_MARKERS. The second one was enabled CONFIG_MARKERS.\n\nI downloaded the original hackbench from the following URL:\nhttp://devresources.linux-foundation.org/craiger/hackbench/src/hackbench.c\n\nI ran hackbench 5 times in each condition and calculated the average and\ndifference between the kernels.\n\n    The parameter of hackbench: every 50 from 50 to 800\n    The number of CPUs of the server: 2, 4, and 8\n\nBelow is the results. As you can see, major performance regression\nwasn\u0027t found in any case. Even if number of processes increases,\ndifferences between marker-enabled kernel and marker- disabled kernel\ndoesn\u0027t increase. Moreover, if number of CPUs increases, the differences\ndoesn\u0027t increase either.\n\nCuriously, marker-enabled kernel is better than marker-disabled kernel\nin more than half cases, although I guess it comes from the difference\nof memory access pattern.\n\n* 2 CPUs\n\nNumber of | without      | with         | diff     | diff    |\nprocesses | Marker [Sec] | Marker [Sec] |   [Sec]  |   [%]   |\n--------------------------------------------------------------\n       50 |      4.811   |       4.872  |  +0.061  |  +1.27  |\n      100 |      9.854   |      10.309  |  +0.454  |  +4.61  |\n      150 |     15.602   |      15.040  |  -0.562  |  -3.6   |\n      200 |     20.489   |      20.380  |  -0.109  |  -0.53  |\n      250 |     25.798   |      25.652  |  -0.146  |  -0.56  |\n      300 |     31.260   |      30.797  |  -0.463  |  -1.48  |\n      350 |     36.121   |      35.770  |  -0.351  |  -0.97  |\n      400 |     42.288   |      42.102  |  -0.186  |  -0.44  |\n      450 |     47.778   |      47.253  |  -0.526  |  -1.1   |\n      500 |     51.953   |      52.278  |  +0.325  |  +0.63  |\n      550 |     58.401   |      57.700  |  -0.701  |  -1.2   |\n      600 |     63.334   |      63.222  |  -0.112  |  -0.18  |\n      650 |     68.816   |      68.511  |  -0.306  |  -0.44  |\n      700 |     74.667   |      74.088  |  -0.579  |  -0.78  |\n      750 |     78.612   |      79.582  |  +0.970  |  +1.23  |\n      800 |     85.431   |      85.263  |  -0.168  |  -0.2   |\n--------------------------------------------------------------\n\n* 4 CPUs\n\nNumber of | without      | with         | diff     | diff    |\nprocesses | Marker [Sec] | Marker [Sec] |   [Sec]  |   [%]   |\n--------------------------------------------------------------\n       50 |      2.586   |       2.584  |  -0.003  |  -0.1   |\n      100 |      5.254   |       5.283  |  +0.030  |  +0.56  |\n      150 |      8.012   |       8.074  |  +0.061  |  +0.76  |\n      200 |     11.172   |      11.000  |  -0.172  |  -1.54  |\n      250 |     13.917   |      14.036  |  +0.119  |  +0.86  |\n      300 |     16.905   |      16.543  |  -0.362  |  -2.14  |\n      350 |     19.901   |      20.036  |  +0.135  |  +0.68  |\n      400 |     22.908   |      23.094  |  +0.186  |  +0.81  |\n      450 |     26.273   |      26.101  |  -0.172  |  -0.66  |\n      500 |     29.554   |      29.092  |  -0.461  |  -1.56  |\n      550 |     32.377   |      32.274  |  -0.103  |  -0.32  |\n      600 |     35.855   |      35.322  |  -0.533  |  -1.49  |\n      650 |     39.192   |      38.388  |  -0.804  |  -2.05  |\n      700 |     41.744   |      41.719  |  -0.025  |  -0.06  |\n      750 |     45.016   |      44.496  |  -0.520  |  -1.16  |\n      800 |     48.212   |      47.603  |  -0.609  |  -1.26  |\n--------------------------------------------------------------\n\n* 8 CPUs\n\nNumber of | without      | with         | diff     | diff    |\nprocesses | Marker [Sec] | Marker [Sec] |   [Sec]  |   [%]   |\n--------------------------------------------------------------\n       50 |      2.094   |       2.072  |  -0.022  |  -1.07  |\n      100 |      4.162   |       4.273  |  +0.111  |  +2.66  |\n      150 |      6.485   |       6.540  |  +0.055  |  +0.84  |\n      200 |      8.556   |       8.478  |  -0.078  |  -0.91  |\n      250 |     10.458   |      10.258  |  -0.200  |  -1.91  |\n      300 |     12.425   |      12.750  |  +0.325  |  +2.62  |\n      350 |     14.807   |      14.839  |  +0.032  |  +0.22  |\n      400 |     16.801   |      16.959  |  +0.158  |  +0.94  |\n      450 |     19.478   |      19.009  |  -0.470  |  -2.41  |\n      500 |     21.296   |      21.504  |  +0.208  |  +0.98  |\n      550 |     23.842   |      23.979  |  +0.137  |  +0.57  |\n      600 |     26.309   |      26.111  |  -0.198  |  -0.75  |\n      650 |     28.705   |      28.446  |  -0.259  |  -0.9   |\n      700 |     31.233   |      31.394  |  +0.161  |  +0.52  |\n      750 |     34.064   |      33.720  |  -0.344  |  -1.01  |\n      800 |     36.320   |      36.114  |  -0.206  |  -0.57  |\n--------------------------------------------------------------\n\nSigned-off-by: Mathieu Desnoyers \u003cmathieu.desnoyers@polymtl.ca\u003e\nAcked-by: Masami Hiramatsu \u003cmhiramat@redhat.com\u003e\nAcked-by: \u0027Peter Zijlstra\u0027 \u003cpeterz@infradead.org\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "20272c8994cf1e1f8ed745a2ea161dd9ad3889f2",
      "tree": "96b1bf44be94e7e85bb2bf5b2b87a4dbd452ecde",
      "parents": [
        "8d71ff0bef9cf4e70108a9a2762f2361e607abde",
        "3bbfe0596746e1590888a6e1e6a07583265238b7"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Oct 13 10:04:04 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Oct 13 10:04:04 2008 -0700"
      },
      "message": "Merge branch \u0027proc\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/adobriyan/proc\n\n* \u0027proc\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/adobriyan/proc:\n  proc: remove kernel.maps_protect\n  proc: remove now unneeded ADDBUF macro\n  [PATCH] proc: show personality via /proc/pid/personality\n  [PATCH] signal, procfs: some lock_task_sighand() users do not need rcu_read_lock()\n  proc: move PROC_PAGE_MONITOR to fs/proc/Kconfig\n  proc: make grab_header() static\n  proc: remove unused get_dma_list()\n  proc: remove dummy vmcore_open()\n  proc: proc_sys_root tweak\n  proc: fix return value of proc_reg_open() in \"too late\" case\n\nFixed up trivial conflict in removed file arch/sparc/include/asm/dma_32.h\n"
    },
    {
      "commit": "a364092a412975e506415f77f0628cbdd28c3913",
      "tree": "98d7d66e8658c9959b2961f0b40356e981277395",
      "parents": [
        "82cbc11a4146d6a8acd81f81f7fe17387668107f"
      ],
      "author": {
        "name": "Arjan van de Ven",
        "email": "arjan@linux.intel.com",
        "time": "Sun Sep 21 15:44:32 2008 -0700"
      },
      "committer": {
        "name": "Arjan van de Ven",
        "email": "arjan@linux.intel.com",
        "time": "Sun Oct 12 08:25:02 2008 -0700"
      },
      "message": "raid: make RAID autodetect default a KConfig option\n\nRAID autodetect has the side effect of requiring synchronisation\nof all device drivers, which can make the boot several seconds longer\n(I\u0027ve measured 7 on one of my laptops).... even for systems that don\u0027t\nhave RAID setup for the root filesystem (the only FS where this matters).\n\nThis patch makes the default for autodetect a config option; either way\nthe user can always override via the kernel command line.\n\nSigned-off-by: Arjan van de Ven \u003carjan@linux.intel.com\u003e\nAcked-by: NeilBrown \u003cneilb@suse.de\u003e\n"
    },
    {
      "commit": "82cbc11a4146d6a8acd81f81f7fe17387668107f",
      "tree": "9d1390d70610228e83f22b4f0870d37c3e3d9ccf",
      "parents": [
        "02c15def8400a974fbce02b4f2d65b38c839e88b"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Aug 18 12:54:00 2008 +0200"
      },
      "committer": {
        "name": "Arjan van de Ven",
        "email": "arjan@linux.intel.com",
        "time": "Sun Oct 12 08:24:34 2008 -0700"
      },
      "message": "warning: fix init do_mounts_md c\n\nfix warning:\n\n  init/do_mounts_md.c: In function ‘md_run_setup’:\n  init/do_mounts_md.c:282: warning: ISO C90 forbids mixed declarations and code\n\nalso, use the opportunity to put the RAID autodetection code\ninto a separate function - this also solves a checkpatch style warning.\n\nNo code changed:\n\nmd5:\n   aa36a35faef371b05f1974ad583bdbbd  do_mounts_md.o.before.asm\n   aa36a35faef371b05f1974ad583bdbbd  do_mounts_md.o.after.asm\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "02c15def8400a974fbce02b4f2d65b38c839e88b",
      "tree": "62a5a5097280852bc0953020e16e1f6a7ec6c23d",
      "parents": [
        "589f800bb12c5cd6c9167bbf9bf3cb70cd8e422c"
      ],
      "author": {
        "name": "Arjan van de Ven",
        "email": "arjan@linux.intel.com",
        "time": "Sun Jul 20 16:30:29 2008 -0700"
      },
      "committer": {
        "name": "Arjan van de Ven",
        "email": "arjan@linux.intel.com",
        "time": "Sun Oct 12 08:23:53 2008 -0700"
      },
      "message": "fastboot: make the RAID autostart code print a message just before waiting\n\nAs requested/suggested by Neil Brown: make the raid code print that it\u0027s\nabout to wait for probing to be done as well as give a suggestion on how\nto disable the probing if the user doesn\u0027t use raid.\n\nSigned-off-by: Arjan van de Ven \u003carjan@linux.intel.com\n"
    },
    {
      "commit": "589f800bb12c5cd6c9167bbf9bf3cb70cd8e422c",
      "tree": "1bdee44bfd9c036aa03767d5909a1c63bf2f790e",
      "parents": [
        "8bd9890e94627bc1ef372085e64dda7f9e307e82"
      ],
      "author": {
        "name": "Arjan van de Ven",
        "email": "arjan@linux.intel.com",
        "time": "Sun Jul 20 13:07:09 2008 -0700"
      },
      "committer": {
        "name": "Arjan van de Ven",
        "email": "arjan@linux.intel.com",
        "time": "Sun Oct 12 08:23:04 2008 -0700"
      },
      "message": "fastboot: make the raid autodetect code wait for all devices to init\n\nThe raid autodetect code really needs to have all devices probed before\nit can detect raid arrays; not doing so would give rather messy situations\nwhere arrays would get detected as degraded while they shouldn\u0027t be etc.\n\nThis is in preparation of removing the \"wait for everything to init\"\ncode that makes everyone pay, not just raid users.\n\nSigned-off-by: Arjan van de Ven \u003carjan@linux.intel.com\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": "53167a3ef23df561d898dee636f3393e9fba937c",
      "tree": "1619560ee2db5dc3d43e1f53dd4188fd849fd98f",
      "parents": [
        "81324364b76eba592255d4b712e522f9fd8d25f4"
      ],
      "author": {
        "name": "Alexey Dobriyan",
        "email": "adobriyan@gmail.com",
        "time": "Fri Oct 03 02:01:51 2008 +0400"
      },
      "committer": {
        "name": "Alexey Dobriyan",
        "email": "adobriyan@gmail.com",
        "time": "Fri Oct 10 04:18:57 2008 +0400"
      },
      "message": "proc: move PROC_PAGE_MONITOR to fs/proc/Kconfig\n\nSigned-off-by: Alexey Dobriyan \u003cadobriyan@gmail.com\u003e\n"
    },
    {
      "commit": "55dc7db70a73a3809a2334063c9b5b0d8ccebdaa",
      "tree": "e0e52ad2a0e6d3142945346f5acd7979c2b10e8d",
      "parents": [
        "2bbedcb4c1abac498f18e5770d62ae66ff235ada"
      ],
      "author": {
        "name": "Tejun Heo",
        "email": "tj@kernel.org",
        "time": "Mon Sep 01 13:44:35 2008 +0200"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Thu Oct 09 08:56:11 2008 +0200"
      },
      "message": "init: DEBUG_BLOCK_EXT_DEVT requires explicit root\u003d param\n\nDEBUG_BLOCK_EXT_DEVT shuffles SCSI and IDE device numbers and root\ndevice number set using rdev become meaningless.  Root devices should\nbe explicitly specified using textual names.  Warn about it if root\ncan\u0027t be found and DEBUG_BLOCK_EXT_DEVT is enabled.  Also, add warning\nto the help text.\n\nSigned-off-by: Tejun Heo \u003ctj@kernel.org\u003e\nCc: Bartlomiej Zolnierkiewicz \u003cbzolnier@gmail.com\u003e\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.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": "9e94cd325bb8ed8abe13f29b64fb54c1dec633a8",
      "tree": "7708f15465c092270b455c5569c2cfe24b2b340d",
      "parents": [
        "9c0d2a20fe331946c1a65a5865faf56e93255c5c"
      ],
      "author": {
        "name": "Andi Kleen",
        "email": "ak@linux.intel.com",
        "time": "Sat Aug 16 07:53:05 2008 +0200"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Aug 16 17:13:43 2008 -0700"
      },
      "message": "Move sysctl check into debugging section and don\u0027t make it default y\n\nI noticed that sysctl_check.o was the largest object file in\na allnoconfig build in kernel/*.\n\n  36243       0       0   36243    8d93 kernel/sysctl_check.o\n\nThis is because it was default y and \u0026\u0026 EMBEDDED. But I don\u0027t\nreally see a need for a non kernel developer to have their\nsysctls checked all the time.\n\nSo move the Kconfig into the kernel debugging section and\nalso drop the default y and the EMBEDDED check.\n\nSigned-off-by: Andi Kleen \u003cak@linux.intel.com\u003e\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": "0b0de144333fca335a0111a6f9c59176ad43ba0a",
      "tree": "8cbadef138f6c40c465021740bcb7b147aad4d62",
      "parents": [
        "0758416325dc75e203ab974aa5e937bef7d2afef"
      ],
      "author": {
        "name": "Robert P. J. Day",
        "email": "rpjday@crashcourse.ca",
        "time": "Mon Aug 04 13:31:32 2008 -0400"
      },
      "committer": {
        "name": "Sam Ravnborg",
        "email": "sam@ravnborg.org",
        "time": "Wed Aug 06 22:14:04 2008 +0200"
      },
      "message": "Kconfig: Extend \"menuconfig\" for modules to simplify Kconfig file\n\nGiven that the init/Kconfig file uses a \"menuconfig\" directive for\nmodules already, might as well wrap all the submenu entries in an \"if\"\nto toss all those dependencies.\n\nSigned-off-by: Robert P. J. Day \u003crpjday@crashcourse.ca\u003e\nAcked-by: Randy Dunlap \u003crandy.dunlap@oracle.com\u003e\nSigned-off-by: Sam Ravnborg \u003csam@ravnborg.org\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": "e811603feb198079bcdb3f75f72cbf9681de2062",
      "tree": "5841151d3345286986c675f1b8b3e6fa6efd2bc4",
      "parents": [
        "b17b3d479c4c43c3a980ee553c3be3ca456523de",
        "48a61569bb5396415c5dad0e81e1cfeb87c0aca3"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Aug 01 11:50:21 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Aug 01 11:50:21 2008 -0700"
      },
      "message": "Merge git://git.kernel.org/pub/scm/linux/kernel/git/sam/kbuild-fixes\n\n* git://git.kernel.org/pub/scm/linux/kernel/git/sam/kbuild-fixes:\n  kbuild: scripts/ver_linux: don\u0027t set PATH\n  Kconfig/init: change help text to match default value\n  kbuild: genksyms: Include extern information in dumps\n  kbuild: genksyms parser: fix the __attribute__ rule\n  kbuild: scripts/genksyms/lex.l: add %option noinput\n  kconfig: scripts/kconfig/zconf.l: add %option noinput\n  kbuild: fix O\u003d... build of um\n"
    },
    {
      "commit": "57b1494d2ba544c62673234da6115c21fac27ffc",
      "tree": "34f91f3187805fa034f8e63966d471ba2498d148",
      "parents": [
        "9fe3b64be3dc8313e9fa87255f169c608d074cbd",
        "8978b74253280d59e97cf49a3ec2c0cbccd5b801"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Aug 01 10:28:17 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Aug 01 10:28:17 2008 -0700"
      },
      "message": "Merge branch \u0027x86-fixes-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip\n\n* \u0027x86-fixes-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:\n  generic, x86: fix add iommu_num_pages helper function\n  x86: remove stray \u003c6\u003e in BogoMIPS printk\n  x86: move dma32_reserve_bootmem() after reserve_crashkernel()\n"
    },
    {
      "commit": "775a7229ac862ea93924672e7e331edf8475415c",
      "tree": "05b4400ddbc0766d1ca1d1e3a39d1d6c8010743c",
      "parents": [
        "3b40d38120c32798a4be8d8052f028deeca9d581"
      ],
      "author": {
        "name": "jkacur",
        "email": "jkacur@gmail.com",
        "time": "Wed Jul 16 00:31:16 2008 +0200"
      },
      "committer": {
        "name": "Sam Ravnborg",
        "email": "sam@ravnborg.org",
        "time": "Thu Jul 31 23:33:10 2008 +0200"
      },
      "message": "Kconfig/init: change help text to match default value\n\nChange the \"If unsure\" message to match the default value.\n\nSigned-off-by: John Kacur \u003cjkacur at gmail dot com\u003e\nSigned-off-by: Sam Ravnborg \u003csam@ravnborg.org\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": "35780c8ea7ad5c6d5483244d5f5bf37176fda86a",
      "tree": "2bc34969f558da2a9b3de915e3f2499a959085da",
      "parents": [
        "6ce37a58e334ef773f88283939afc9f4965c7697",
        "6e86841d05f371b5b9b86ce76c02aaee83352298"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Jul 29 12:10:50 2008 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Jul 29 12:10:50 2008 +0200"
      },
      "message": "Merge commit \u0027v2.6.27-rc1\u0027 into x86/urgent\n"
    },
    {
      "commit": "cb28a1bbdb4790378e7366d6c9ee1d2340b84f92",
      "tree": "316436f77dac75335fd2c3ef5f109e71606c50d3",
      "parents": [
        "b6d4f7e3ef25beb8c658c97867d98883e69dc544",
        "f934fb19ef34730263e6afc01e8ec27a8a71470f"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Jul 29 00:07:55 2008 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Jul 29 00:07:55 2008 +0200"
      },
      "message": "Merge branch \u0027linus\u0027 into core/generic-dma-coherent\n\nConflicts:\n\n\tarch/x86/Kconfig\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "d7ba11d01cfedf63b50391fbe4a05274b6992b43",
      "tree": "5e7c429d99bbf985051032ec14536b46c7786cac",
      "parents": [
        "583323b9d2f624884a8c9563fb5a4d795f39ab07"
      ],
      "author": {
        "name": "Joe Perches",
        "email": "joe@perches.com",
        "time": "Sun Jul 27 12:02:04 2008 -0700"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Jul 28 14:22:26 2008 +0200"
      },
      "message": "x86: remove stray \u003c6\u003e in BogoMIPS printk\n\nRabin Vincent noticed that there\u0027s a stray \u003c6\u003e in BogoMIPS printk:\n\n\u003e Remove the extra KERN_INFO which causes this:\n\u003e Calibrating delay loop... \u003c6\u003e179.40 BogoMIPS (lpj\u003d897024)\n\u003e -\tprintk(KERN_INFO \"%lu.%02lu BogoMIPS (lpj\u003d%lu)\\n\",\n\u003e -\t\t\tloops_per_jiffy/(500000/HZ),\n\u003e -\t\t\t(loops_per_jiffy/(5000/HZ)) % 100, loops_per_jiffy);\n\u003e +\tprintk(\"%lu.%02lu BogoMIPS (lpj\u003d%lu)\\n\",\n\u003e +\t\tloops_per_jiffy/(500000/HZ),\n\u003e +\t\t(loops_per_jiffy/(5000/HZ)) % 100, loops_per_jiffy);\n\u003e  }\n\nHow about just using KERN_CONT and leaving the whitespace\nfor a patch that does the entire file?\n\nReported-by: Rabin Vincent \u003crabin@rab.in\u003e\n"
    },
    {
      "commit": "6948385cbd83201fb933125c1a578b29b456605d",
      "tree": "fd08f30c84d02cfb1ad696d04605565974fae7be",
      "parents": [
        "7a76d89232f20411f32e7a79ccc1e2f95e9f826b",
        "56b2f0706d82535fd8d85503f2dcc0be40c8e55d"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun Jul 27 09:59:59 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun Jul 27 09:59:59 2008 -0700"
      },
      "message": "Merge git://git.kernel.org/pub/scm/linux/kernel/git/sam/kbuild-next\n\n* git://git.kernel.org/pub/scm/linux/kernel/git/sam/kbuild-next: (25 commits)\n  setlocalversion: do not describe if there is nothing to describe\n  kconfig: fix typos: \"Suport\" -\u003e \"Support\"\n  kconfig: make defconfig is no longer chatty\n  kconfig: make oldconfig is now less chatty\n  kconfig: speed up all*config + randconfig\n  kconfig: set all new symbols automatically\n  kconfig: add diffconfig utility\n  kbuild: remove Module.markers during mrproper\n  kbuild: sparse needs CF not CHECKFLAGS\n  kernel-doc: handle/strip __init\n  vmlinux.lds: move __attribute__((__cold__)) functions back into final .text section\n  init: fix URL of \"The GNU Accounting Utilities\"\n  kbuild: add arch/$ARCH/include to search path\n  kbuild: asm symlink support for arch/$ARCH/include\n  kbuild: support arch/$ARCH/include for tags, cscope\n  kbuild: prepare headers_* for arch/$ARCH/include\n  kbuild: install all headers when arch is changed\n  kbuild: make clean removes *.o.* as well\n  kbuild: optimize headers_* targets\n  kbuild: only one call for include/ in make headers_*\n  ...\n"
    },
    {
      "commit": "f56f6d30c75984d0aba2656eaeb35f3806395191",
      "tree": "e33a35337b04f0e7bd8cd58593f49369818084ea",
      "parents": [
        "9580d85f9cdb076c4bfb467bc6c0d3c5e499957a"
      ],
      "author": {
        "name": "Adrian Bunk",
        "email": "bunk@kernel.org",
        "time": "Fri Jul 25 19:46:25 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Jul 26 12:00:12 2008 -0700"
      },
      "message": "make init/do_mounts.c:root_device_name static\n\nThis patch makes the needlessly global root_device_name static.\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": "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": "12d2b8f951063076c7e0acdff7ae1fecd54920a0",
      "tree": "b4eb8fe447f508730d883f7e995e48c3eaba36b9",
      "parents": [
        "09748e178b6cb8d3b8a748d0159aa7ad8eadcbe1"
      ],
      "author": {
        "name": "Heikki Orsila",
        "email": "heikki.orsila@iki.fi",
        "time": "Sun Jul 06 15:48:02 2008 +0300"
      },
      "committer": {
        "name": "Sam Ravnborg",
        "email": "sam@ravnborg.org",
        "time": "Fri Jul 25 22:12:52 2008 +0200"
      },
      "message": "kconfig: fix typos: \"Suport\" -\u003e \"Support\"\n\nSigned-off-by: Heikki Orsila \u003cheikki.orsila@iki.fi\u003e\nSigned-off-by: Sam Ravnborg \u003csam@ravnborg.org\u003e\n"
    },
    {
      "commit": "37a4c940749670671adab211a2d9c9fed9f3f757",
      "tree": "dc9ec41d66ee4925efb957c1a67493afdb803832",
      "parents": [
        "5e4786f75d885dd1a5f9fe12f3385ece7656b0c9"
      ],
      "author": {
        "name": "S.Çağlar Onur",
        "email": "caglar@pardus.org.tr",
        "time": "Wed Jun 18 11:45:13 2008 +0300"
      },
      "committer": {
        "name": "Sam Ravnborg",
        "email": "sam@ravnborg.org",
        "time": "Fri Jul 25 22:12:36 2008 +0200"
      },
      "message": "init: fix URL of \"The GNU Accounting Utilities\"\n\nFollowing patch corrects URL of \"The GNU Accounting Utilities\" in init/Kconfig.\n\nNoticed by: Bart Van Assche\" \u003cbart.vanassche@gmail.com\u003e\n\nSigned-off-by: S.Çağlar Onur \u003ccaglar@pardus.org.tr\u003e\nSigned-off-by: Sam Ravnborg \u003csam@ravnborg.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": "197dcffc8ba0ea943fee86e28e99cd9575799772",
      "tree": "c16027ddd94da37e0af991908639912ee174d65c",
      "parents": [
        "277e2c695907a70b316a31769cd891dc4d43b7f3"
      ],
      "author": {
        "name": "Daniel Guilak",
        "email": "guilak@linux.vnet.ibm.com",
        "time": "Fri Jul 25 01:45:50 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Jul 25 10:53:29 2008 -0700"
      },
      "message": "init/version.c: define version_string only if CONFIG_KALLSYMS is not defined\n\nint Version_* is only used with ksymoops, which is only needed (according\nto README and Documentation/Changes) if CONFIG_KALLSYMS is NOT defined.\nTherefore this patch defines version_string only if CONFIG_KALLSYMS is not\ndefined.\n\nSigned-off-by: Daniel Guilak \u003cdaniel@danielguilak.com\u003e\nCc: Randy Dunlap \u003crandy.dunlap@oracle.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "277e2c695907a70b316a31769cd891dc4d43b7f3",
      "tree": "418a7f991b04ad816c9d9bccae61992451a9479a",
      "parents": [
        "4500d067eeb3d00679335d9cf5c6536e79cd3ef4"
      ],
      "author": {
        "name": "Daniel Guilak",
        "email": "guilak@linux.vnet.ibm.com",
        "time": "Fri Jul 25 01:45:49 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Jul 25 10:53:28 2008 -0700"
      },
      "message": "init/version.c: silence sparse warning by declaring the version string\n\nSigned-off-by: Daniel Guilak \u003cdaniel@danielguilak.com\u003e\nCc: Randy Dunlap \u003crandy.dunlap@oracle.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "2d6ffcca623a9a16df6cdfbe8250b7a5904a5f5e",
      "tree": "70d30cb6516608e9a8a1dce60c59f3a5ff21b305",
      "parents": [
        "ba92a43dbaee339cf5915ef766d3d3ffbaaf103c"
      ],
      "author": {
        "name": "Thomas Petazzoni",
        "email": "thomas.petazzoni@free-electrons.com",
        "time": "Fri Jul 25 01:45:44 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Jul 25 10:53:28 2008 -0700"
      },
      "message": "inflate: refactor inflate malloc code\n\nInflate requires some dynamic memory allocation very early in the boot\nprocess and this is provided with a set of four functions:\nmalloc/free/gzip_mark/gzip_release.\n\nThe old inflate code used a mark/release strategy rather than implement\nfree.  This new version instead keeps a count on the number of outstanding\nallocations and when it hits zero, it resets the malloc arena.\n\nThis allows removing all the mark and release implementations and unifying\nall the malloc/free implementations.\n\nThe architecture-dependent code must define two addresses:\n - free_mem_ptr, the address of the beginning of the area in which\n   allocations should be made\n - free_mem_end_ptr, the address of the end of the area in which\n   allocations should be made. If set to 0, then no check is made on\n   the number of allocations, it just grows as much as needed\n\nThe architecture-dependent code can also provide an arch_decomp_wdog()\nfunction call.  This function will be called several times during the\ndecompression process, and allow to notify the watchdog that the system is\nstill running.  If an architecture provides such a call, then it must\ndefine ARCH_HAS_DECOMP_WDOG so that the generic inflate code calls\narch_decomp_wdog().\n\nWork initially done by Matt Mackall, updated to a recent version of the\nkernel and improved by me.\n\n[akpm@linux-foundation.org: coding-style fixes]\nSigned-off-by: Thomas Petazzoni \u003cthomas.petazzoni@free-electrons.com\u003e\nCc: Matt Mackall \u003cmpm@selenic.com\u003e\nCc: Richard Henderson \u003crth@twiddle.net\u003e\nCc: Ivan Kokshaysky \u003cink@jurassic.park.msu.ru\u003e\nCc: Mikael Starvik \u003cmikael.starvik@axis.com\u003e\nCc: Jesper Nilsson \u003cjesper.nilsson@axis.com\u003e\nCc: Haavard Skinnemoen \u003chskinnemoen@atmel.com\u003e\nCc: David Howells \u003cdhowells@redhat.com\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nCc: Andi Kleen \u003candi@firstfloor.org\u003e\nCc: \"H. Peter Anvin\" \u003chpa@zytor.com\u003e\nAcked-by: Paul Mundt \u003clethal@linux-sh.org\u003e\nAcked-by: Yoshinori Sato \u003cysato@users.sourceforge.jp\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "cb345d7352aa9e692ef4b83c41d3e6e1cdb2f846",
      "tree": "19b6d808a33b72c02abdf814bd4c8443b94c9b86",
      "parents": [
        "b39c08cb692cb8898c30e0d8187c7cbe27cc905c"
      ],
      "author": {
        "name": "Robert P. J. Day",
        "email": "rpjday@crashcourse.ca",
        "time": "Fri Jul 25 01:45:30 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Jul 25 10:53:27 2008 -0700"
      },
      "message": "init/: delete hard-coded setting and testing of BUILD_CRAMDISK\n\nThere seems to be little point in explicitly setting, then testing the macro\nBUILD_CRAMDISK within the context of a single source file.\n\nSigned-off-by: Robert P. J. Day \u003crpjday@crashcourse.ca\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "82c8253ac27291d6c70114eb445c714359812a10",
      "tree": "646d86b635a9e74a9525c283e178dcdc605a7fd0",
      "parents": [
        "abddaec56ebb7911bbf0578a4636a74bd7376d92"
      ],
      "author": {
        "name": "Adrian Bunk",
        "email": "bunk@kernel.org",
        "time": "Fri Jul 25 01:45:29 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Jul 25 10:53:27 2008 -0700"
      },
      "message": "init/do_mounts.c should #include \u003clinux/initrd.h\u003e\n\nEvery file should include the headers containing the externs for its\nglobal code (in this case for rd_doload).\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": "baabaae98125fbd1a8dc258aa95333c01cd9e206",
      "tree": "143230dea3f847894929001df0efdfd07f25ae64",
      "parents": [
        "3a642e99babe0617febb6f402e1e063479f489db"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes@sipsolutions.net",
        "time": "Tue Jul 08 19:00:16 2008 +0200"
      },
      "committer": {
        "name": "Rusty Russell",
        "email": "rusty@rustcorp.com.au",
        "time": "Tue Jul 22 19:24:28 2008 +1000"
      },
      "message": "make CONFIG_KMOD invisible\n\n... as preparation for removing it completely, make it an\ninvisible bool defaulting to yes.\n\nSigned-off-by: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\nSigned-off-by: Rusty Russell \u003crusty@rustcorp.com.au\u003e\n"
    },
    {
      "commit": "f7f5b67557eac1131ba6532522e3c50eced34238",
      "tree": "8547b900f4bc40f69673c78b261ac5b44423fbfb",
      "parents": [
        "af5406895a05720a879dc33e2f4878fa503e81b3"
      ],
      "author": {
        "name": "Denys Vlasenko",
        "email": "vda.linux@googlemail.com",
        "time": "Tue Jul 22 19:24:26 2008 -0500"
      },
      "committer": {
        "name": "Rusty Russell",
        "email": "rusty@rustcorp.com.au",
        "time": "Tue Jul 22 19:24:27 2008 +1000"
      },
      "message": "Shrink struct module: CONFIG_UNUSED_SYMBOLS ifdefs\n\nmodule.c and module.h conatains code for finding\nexported symbols which are declared with EXPORT_UNUSED_SYMBOL,\nand this code is compiled in even if CONFIG_UNUSED_SYMBOLS is not set\nand thus there can be no EXPORT_UNUSED_SYMBOLs in modules anyway\n(because EXPORT_UNUSED_SYMBOL(x) are compiled out to nothing then).\n\nThis patch adds required #ifdefs.\n\nSigned-off-by: Denys Vlasenko \u003cvda.linux@googlemail.com\u003e\nSigned-off-by: Rusty Russell \u003crusty@rustcorp.com.au\u003e\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": "f6dc8ccaab6d8f63cbae1e6c73fe972b26f5376c",
      "tree": "c5643fcdc884a8d0bfc3f1bc28039cab7394e5bc",
      "parents": [
        "323ec001c6bb98eeabb5abbdbb8c8055d9496554",
        "5b664cb235e97afbf34db9c4d77f08ebd725335e"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Jul 18 21:13:20 2008 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Jul 18 21:13:20 2008 +0200"
      },
      "message": "Merge branch \u0027linus\u0027 into core/generic-dma-coherent\n\nConflicts:\n\n\tkernel/Makefile\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\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": "9c1be0c4712fe760d8969427ef91107e9c062d91",
      "tree": "01210aba49c120116bb99ba031ff86a525ffb63d",
      "parents": [
        "42fdd144a40f3afaccaa7ea538268bad3596439e",
        "0d7eff873caaeac84de01a1acdca983d2c7ba3fe"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Jul 16 15:02:57 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Jul 16 15:02:57 2008 -0700"
      },
      "message": "Merge branch \u0027for_linus\u0027 of git://git.infradead.org/~dedekind/ubifs-2.6\n\n* \u0027for_linus\u0027 of git://git.infradead.org/~dedekind/ubifs-2.6:\n  UBIFS: include to compilation\n  UBIFS: add new flash file system\n  UBIFS: add brief documentation\n  MAINTAINERS: add UBIFS section\n  do_mounts: allow UBI root device name\n  VFS: export sync_sb_inodes\n  VFS: move inode_lock into sync_sb_inodes\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": "1a781a777b2f6ac46523fe92396215762ced624d",
      "tree": "4f34bb4aade85c0eb364b53d664ec7f6ab959006",
      "parents": [
        "b9d2252c1e44fa83a4e65fdc9eb93db6297c55af",
        "42a2f217a5e324ed5f2373ab1b7a0a15187c4d6c"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Jul 15 21:55:59 2008 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Jul 15 21:55:59 2008 +0200"
      },
      "message": "Merge branch \u0027generic-ipi\u0027 into generic-ipi-for-linus\n\nConflicts:\n\n\tarch/powerpc/Kconfig\n\tarch/s390/kernel/time.c\n\tarch/x86/kernel/apic_32.c\n\tarch/x86/kernel/cpu/perfctr-watchdog.c\n\tarch/x86/kernel/i8259_64.c\n\tarch/x86/kernel/ldt.c\n\tarch/x86/kernel/nmi_64.c\n\tarch/x86/kernel/smpboot.c\n\tarch/x86/xen/smp.c\n\tinclude/asm-x86/hw_irq_32.h\n\tinclude/asm-x86/hw_irq_64.h\n\tinclude/asm-x86/mach-default/irq_vectors.h\n\tinclude/asm-x86/mach-voyager/irq_vectors.h\n\tinclude/asm-x86/smp.h\n\tkernel/Makefile\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "6c9fcaf2eec1b9f85226a694230dd957dd7926b3",
      "tree": "f8c824c6c64dc411752c844f116e693760768bcc",
      "parents": [
        "b9d2252c1e44fa83a4e65fdc9eb93db6297c55af",
        "199a952876adbfc2b6c13b8b07adabebf4ff54b2"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Jul 15 21:10:12 2008 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Jul 15 21:10:12 2008 +0200"
      },
      "message": "Merge branch \u0027core/rcu\u0027 into core/rcu-for-linus\n"
    },
    {
      "commit": "2d62f488585405bc9108c47cb06957397cfd1059",
      "tree": "fc23cb1330c53d4ab4991729f0494280c7bf7548",
      "parents": [
        "4ee6afd34409d296782a5b667d7991b1050e910a"
      ],
      "author": {
        "name": "Adrian Hunter",
        "email": "ext-adrian.hunter@nokia.com",
        "time": "Thu Jan 31 17:25:00 2008 +0200"
      },
      "committer": {
        "name": "Artem Bityutskiy",
        "email": "Artem.Bityutskiy@nokia.com",
        "time": "Mon Jul 14 19:10:52 2008 +0300"
      },
      "message": "do_mounts: allow UBI root device name\n\nSimilarly to MTD devices, allow UBI devices.\n\nSigned-off-by: Adrian Hunter \u003cext-adrian.hunter@nokia.com\u003e\n"
    },
    {
      "commit": "ee7e5516be4f2107535ad5a3d47d9c79f93661a2",
      "tree": "57bdb330864036d6241deb8e69f351ee5ee01adb",
      "parents": [
        "543cf4cb3fe6f6cae3651ba918b9c56200b257d0"
      ],
      "author": {
        "name": "Dmitry Baryshkov",
        "email": "dbaryshkov@gmail.com",
        "time": "Sun Jun 29 14:18:46 2008 +0400"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Jun 30 12:51:05 2008 +0200"
      },
      "message": "generic: per-device coherent dma allocator\n\nCurrently x86_32, sh and cris-v32 provide per-device coherent dma\nmemory allocator.\n\nHowever their implementation is nearly identical. Refactor out\ncommon code to be reused by them.\n\nSigned-off-by: Dmitry Baryshkov \u003cdbaryshkov@gmail.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\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": "f3f3149f35b9195ef4b761b1353fc0766b5f53be",
      "tree": "96e67c82e8ea6ce57ce5f83a8036f87a8d534867",
      "parents": [
        "6ff10de374cc68ff2024247793176dc8a1b317ea"
      ],
      "author": {
        "name": "Alok Kataria",
        "email": "akataria@vmware.com",
        "time": "Mon Jun 23 18:21:56 2008 -0700"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Jun 24 13:53:46 2008 +0200"
      },
      "message": "x86: use cpu_khz for loops_per_jiffy calculation, cleanup\n\nAs suggested by Ingo, remove all references to tsc from init/calibrate.c\n\nTSC is x86 specific, and using tsc in variable names in a generic file should\nbe avoided. lpj_tsc is now called lpj_fine, since it is related to fine tuning\nof lpj value. Also tsc_rate_*  is called timer_rate_*\n\nSigned-off-by: Alok N Kataria \u003cakataria@vmware.com\u003e\nCc: Arjan van de Ven \u003carjan@infradead.org\u003e\nCc: Daniel Hecht \u003cdhecht@vmware.com\u003e\nCc: Tim Mann \u003cmann@vmware.com\u003e\nCc: Zach Amsden \u003czach@vmware.com\u003e\nCc: Sahil Rihan \u003csrihan@vmware.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "3da757daf86e498872855f0b5e101f763ba79499",
      "tree": "bffffafed7322c66a1b886b661cfd8a8a7f5a924",
      "parents": [
        "e01b70ef3eb3080fecc35e15f68cd274c0a48163"
      ],
      "author": {
        "name": "Alok Kataria",
        "email": "akataria@vmware.com",
        "time": "Fri Jun 20 15:06:33 2008 -0700"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Jun 23 22:51:33 2008 +0200"
      },
      "message": "x86: use cpu_khz for loops_per_jiffy calculation\n\nOn the x86 platform we can use the value of tsc_khz computed during tsc\ncalibration to calculate the loops_per_jiffy value. Its very important\nto keep the error in lpj values to minimum as any error in that may\nresult in kernel panic in check_timer. In virtualization environment, On\na highly overloaded host the guest delay calibration may sometimes\nresult in errors beyond the ~50% that timer_irq_works can handle,\nresulting in the guest panicking.\n\nDoes some formating changes to lpj_setup code to now have a single\nprintk to print the bogomips value.\n\nWe do this only for the boot processor because the AP\u0027s can have\ndifferent base frequencies or the BIOS might boot a AP at a different\nfrequency.\n\nSigned-off-by: Alok N Kataria \u003cakataria@vmware.com\u003e\nCc: Arjan van de Ven \u003carjan@infradead.org\u003e\nCc: Daniel Hecht \u003cdhecht@vmware.com\u003e\nCc: Tim Mann \u003cmann@vmware.com\u003e\nCc: Zach Amsden \u003czach@vmware.com\u003e\nCc: Sahil Rihan \u003csrihan@vmware.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "766d02786ecd22932beeb9ca8bad6d8c5a552ef9",
      "tree": "f6f2df0e35bbea914d1f4d12be6d02f128c73575",
      "parents": [
        "906d882cacecd37ad2fdd03ed2a9b232bcb9507e",
        "066519068ad2fbe98c7f45552b1f592903a9c8c8"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Jun 16 11:23:36 2008 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Jun 16 11:23:36 2008 +0200"
      },
      "message": "Merge branch \u0027linus\u0027 into core/rcu\n"
    },
    {
      "commit": "73531905ed53576d9e8707659a761e7046a60497",
      "tree": "ac64658106d8e260a0958c0df296c38ea57b0243",
      "parents": [
        "9723c046bd5989aa9064038ce142f498bb1870d6"
      ],
      "author": {
        "name": "Sam Ravnborg",
        "email": "sam@ravnborg.org",
        "time": "Sun May 25 23:03:18 2008 +0200"
      },
      "committer": {
        "name": "Sam Ravnborg",
        "email": "sam@ravnborg.org",
        "time": "Sun May 25 23:03:18 2008 +0200"
      },
      "message": "Kconfig: introduce ARCH_DEFCONFIG to DEFCONFIG_LIST\n\ninit/Kconfig contains a list of configs that are searched\nfor if \u0027make *config\u0027 are used with no .config present.\nExtend this list to look at the config identified by\nARCH_DEFCONFIG.\n\nWith this change we now try the defconfig targets last.\n\nThis fixes a regression reported\nby: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n\nSigned-off-by: Sam Ravnborg \u003csam@ravnborg.org\u003e\nCc: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\nCc: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nCc: Ingo Molnar \u003cmingo@redhat.com\u003e\nCc: \"H. Peter Anvin\" \u003chpa@zytor.com\u003e\n"
    },
    {
      "commit": "03de250a269bfa8e6a9e6ccb4a1dbce19dae8a61",
      "tree": "9829b363599187fefab9ddc31be014075b474d12",
      "parents": [
        "84255d1018c50e72c71a49f359989597d53a3f53"
      ],
      "author": {
        "name": "Adrian Bunk",
        "email": "bunk@kernel.org",
        "time": "Fri May 23 13:04:33 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat May 24 09:56:09 2008 -0700"
      },
      "message": "md: proper extern for mdp_major\n\nThis patch adds a proper extern for mdp_major in include/linux/raid/md.h\n\nSigned-off-by: Adrian Bunk \u003cbunk@kernel.org\u003e\nSigned-off-by: Neil Brown \u003cneilb@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": "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": "30f2f0eb4bd2c43d10a8b0d872c6e5ad8f31c9a0",
      "tree": "deb8d2a749cd737d9abead1b4cc8321d00dbaee4",
      "parents": [
        "9604006d283fb67dda5ee9e0e15b7cc6c62e1557"
      ],
      "author": {
        "name": "Kay Sievers",
        "email": "kay.sievers@vrfy.org",
        "time": "Tue May 06 22:31:33 2008 +0200"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Wed May 14 10:37:57 2008 -0700"
      },
      "message": "block: do_mounts - accept root\u003d\u003cnon-existant partition\u003e\n\nSome devices, like md, may create partitions only at first access,\nso allow root\u003d to be set to a valid non-existant partition of an\nexisting disk. This applies only to non-initramfs root mounting.\n\nThis fixes a regression from 2.6.24 which did allow this to happen and\nbroke some users machines :(\n\nAcked-by: Neil Brown \u003cneilb@suse.de\u003e\nTested-by: Joao Luis Meloni Assirati \u003cassirati@nonada.if.usp.br\u003e\nCc: stable \u003cstable@kernel.org\u003e\nSigned-off-by: Kay Sievers \u003ckay.sievers@vrfy.org\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\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": "91e37a793b5a9436a2d12b2f0a8f52db3a133e1d",
      "tree": "6ddf17ad786fa2a42ef79aa4f7873c79c1e17a89",
      "parents": [
        "a5dd69707424a35d2d2cc094e870f595ad61e916"
      ],
      "author": {
        "name": "Rusty Russell",
        "email": "rusty@rustcorp.com.au",
        "time": "Fri May 09 16:25:28 2008 +1000"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri May 09 07:45:18 2008 -0700"
      },
      "message": "module: don\u0027t ignore vermagic string if module doesn\u0027t have modversions\n\nLinus found a logic bug: we ignore the version number in a module\u0027s\nvermagic string if we have CONFIG_MODVERSIONS set, but modversions\nalso lets through a module with no __versions section for modprobe\n--force (with tainting, but still).\n\nWe should only ignore the start of the vermagic string if the module\nactually *has* crcs to check.  Rather than (say) having an\nentertaining hissy fit and creating a config option to work around the\nbuggy code.\n\nSigned-off-by: Rusty Russell \u003crusty@rustcorp.com.au\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "e5e1d3cb20034a3cbcfff1f0bae12201aa2ce17e",
      "tree": "f1260a7e59ac21b790c76c1539e71603359806ad",
      "parents": [
        "a15306365a16380f3bafee9e181ba01231d4acd7"
      ],
      "author": {
        "name": "Stas Sergeev",
        "email": "stsp@aknet.ru",
        "time": "Wed May 07 12:39:56 2008 +0200"
      },
      "committer": {
        "name": "Takashi Iwai",
        "email": "tiwai@suse.de",
        "time": "Wed May 07 12:42:03 2008 +0200"
      },
      "message": "pcspkr: fix dependancies\n\nfix pcspkr dependancies: make the pcspkr platform\ndrivers to depend on a platform device, and\nnot the other way around.\n\nSigned-off-by: Stas Sergeev \u003cstsp@aknet.ru\u003e\nAcked-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nAcked-by: Dmitry Torokhov \u003cdtor@mail.ru\u003e\nCC: Vojtech Pavlik \u003cvojtech@suse.cz\u003e\nCC: Michael Opdenacker \u003cmichael-lists@free-electrons.com\u003e\n[fixed for 2.6.26-rc1 by tiwai]\nSigned-off-by: Takashi Iwai \u003ctiwai@suse.de\u003e\n"
    },
    {
      "commit": "aac6abca858386438d9a7233c3471d2ecfa2f704",
      "tree": "a5e4f64008d426285f101ecf0539b65d4eedae0c",
      "parents": [
        "3e51f33fcc7f55e6df25d15b55ed10c8b4da84cd"
      ],
      "author": {
        "name": "Parag Warudkar",
        "email": "parag.warudkar@gmail.com",
        "time": "Sat May 03 20:42:34 2008 -0400"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon May 05 23:56:18 2008 +0200"
      },
      "message": "sched: default to n for GROUP_SCHED and FAIR_GROUP_SCHED\n\nGROUP_SCHED is confirmed to cause unacceptable latencies, see:\n\n   http://lkml.org/lkml/2008/5/2/370.\n\nMark it EXPERIMENTAL and default to no for now.\n\nSigned-off-by: Parag Warudkar \u003cparag.warudkar@gmail.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\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": "a5574cf65b5f03ce9ade3918764fe22e5e2371e3",
      "tree": "f6c5e26964318dfdd50e9935ffb60288e25efcd4",
      "parents": [
        "dfbf4a1bc319f0f9a31e39b2da1fa5c55e85af89"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon May 05 23:19:50 2008 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon May 05 23:56:18 2008 +0200"
      },
      "message": "sched, x86: add HAVE_UNSTABLE_SCHED_CLOCK\n\nadd the HAVE_UNSTABLE_SCHED_CLOCK, for architectures to select.\n\nthe next change utilizes it.\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "826e4506a0acb6487910a5ebafe839f708a00e1c",
      "tree": "20cc66b6b38c0414930d85a8a9705a3a3eff8ddf",
      "parents": [
        "afa26be86b65a7183ceac29bdf1f51d6fc6932f0"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun May 04 17:04:16 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun May 04 17:04:16 2008 -0700"
      },
      "message": "Make forced module loading optional\n\nThe kernel module loader used to be much too happy to allow loading of\nmodules for the wrong kernel version by default.  For example, if you\nhad MODVERSIONS enabled, but tried to load a module with no version\ninfo, it would happily load it and taint the kernel - whether it was\nlikely to actually work or not!\n\nGenerally, such forced module loading should be considered a really\nreally bad idea, so make it conditional on a new config option\n(MODULE_FORCE_LOAD), and make it default to off.\n\nIf somebody really wants to force module loads, that\u0027s their problem,\nbut we should not encourage it.  Especially as it happened to me by\nmistake (ie regular unversioned Fedora modules getting loaded) causing\nlots of strange behavior.\n\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "f6acb63508700b5f8cd817082b62c96ba907775e",
      "tree": "0fc0cdd4660fdf186f3becc1b80d743f8d3edbea",
      "parents": [
        "f715e6f15ee167026581a8a2e09b2ed644b974aa"
      ],
      "author": {
        "name": "Christoph Lameter",
        "email": "clameter@sgi.com",
        "time": "Tue Apr 29 16:16:06 2008 -0700"
      },
      "committer": {
        "name": "Pekka Enberg",
        "email": "penberg@cs.helsinki.fi",
        "time": "Fri May 02 00:27:13 2008 +0300"
      },
      "message": "slub: #ifdef simplification\n\nIf we make SLUB_DEBUG depend on SYSFS then we can simplify some\n#ifdefs and avoid others.\n\nSigned-off-by: Christoph Lameter \u003cclameter@sgi.com\u003e\nSigned-off-by: Pekka Enberg \u003cpenberg@cs.helsinki.fi\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"
    }
  ],
  "next": "fae5fa44f1fd079ffbed8e0add929dd7bbd1347f"
}
