)]}'
{
  "log": [
    {
      "commit": "9fb67204d7a00a6444bc121f221527034613d338",
      "tree": "1f8e9715955a41577a2ee14be922683f93aa0e12",
      "parents": [
        "8c1df4002aa425973d7d25ffa56c042acd953bed",
        "287050d390264402e11bea8b811859e42e8faa29"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Dec 22 12:46:12 2010 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Dec 22 17:12:08 2010 +0100"
      },
      "message": "Merge branch \u0027tip/perf/core\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/rostedt/linux-2.6-trace into perf/core\n"
    },
    {
      "commit": "6c529a266bdc590a870ee2d2092ff6527eff427b",
      "tree": "7be65fa2578820a1258b5a1e8e063a509a5d6176",
      "parents": [
        "7639dae0ca11038286bbbcda05f2bef601c1eb8d",
        "90a8a73c06cc32b609a880d48449d7083327e11a"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Dec 22 11:53:20 2010 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Dec 22 11:53:23 2010 +0100"
      },
      "message": "Merge commit \u0027v2.6.37-rc7\u0027 into perf/core\n\nMerge reason: Pick up the latest -rc.\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "de5e9d58200aafea4a33abcadcd12eb69eaba5c4",
      "tree": "6f94c2e558772070d283d25a4ba3d9b1738bb95b",
      "parents": [
        "55ec86f848a5f872fd43f5d7206464a0af419110",
        "050c6c9b896625d9fa498265be17b82c5fc65257"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Dec 20 09:05:26 2010 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Dec 20 09:05:26 2010 -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  sched: Remove debugging check\n"
    },
    {
      "commit": "050c6c9b896625d9fa498265be17b82c5fc65257",
      "tree": "998a73afe0c3eddd35754cd4de54a65fc4313cec",
      "parents": [
        "8e92c20183ed0579d94501311b81c42b65cb2129"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Sun Dec 19 23:24:27 2010 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Sun Dec 19 23:24:27 2010 +0100"
      },
      "message": "sched: Remove debugging check\n\nLinus reported that the new warning introduced by commit f26f9aff6aaf\n\"Sched: fix skip_clock_update optimization\" triggers. The need_resched\nflag can be set by other CPUs asynchronously so this debug check is\nbogus - remove it.\n\nReported-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\nCc: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: Mike Galbraith \u003cefault@gmx.de\u003e\nLKML-Reference: \u003cAANLkTinJ8hAG1TpyC+CSYPR47p48+1\u003dE7fiC45hMXT_1@mail.gmail.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "55ec86f848a5f872fd43f5d7206464a0af419110",
      "tree": "409fdf94a443468ebca6d90908752325ca177cc8",
      "parents": [
        "21228e455756be11fbbcae7e1a184ad9d842f687",
        "147dd5610c8d1bacb88a6c1dfdaceaf257946ed0",
        "d949750fed168b6553ca11ed19e4affd19d7a4d7"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun Dec 19 10:44:54 2010 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun Dec 19 10:44:54 2010 -0800"
      },
      "message": "Merge branches \u0027x86-fixes-for-linus\u0027 and \u0027perf-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  x86-32: Make sure we can map all of lowmem if we need to\n  x86, vt-d: Handle previous faults after enabling fault handling\n  x86: Enable the intr-remap fault handling after local APIC setup\n  x86, vt-d: Fix the vt-d fault handling irq migration in the x2apic mode\n  x86, vt-d: Quirk for masking vtd spec errors to platform error handling logic\n  x86, xsave: Use alloc_bootmem_align() instead of alloc_bootmem()\n  bootmem: Add alloc_bootmem_align()\n  x86, gcc-4.6: Use gcc -m options when building vdso\n  x86: HPET: Chose a paranoid safe value for the ETIME check\n  x86: io_apic: Avoid unused variable warning when CONFIG_GENERIC_PENDING_IRQ\u003dn\n\n* \u0027perf-fixes-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:\n  perf: Fix off by one in perf_swevent_init()\n  perf: Fix duplicate events with multiple-pmu vs software events\n  ftrace: Have recordmcount honor endianness in fn_ELF_R_INFO\n  scripts/tags.sh: Add magic for trace-events\n  tracing: Fix panic when lseek() called on \"trace\" opened for writing\n"
    },
    {
      "commit": "21228e455756be11fbbcae7e1a184ad9d842f687",
      "tree": "594ff10478aed5f264294e8a718e80a3e44ab34c",
      "parents": [
        "0a59228168d3722b71f8e3dbc623316fb4be78f4",
        "8e92c20183ed0579d94501311b81c42b65cb2129"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun Dec 19 10:37:37 2010 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun Dec 19 10:37:37 2010 -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  sched: Fix the irqtime code for 32bit\n  sched: Fix the irqtime code to deal with u64 wraps\n  nohz: Fix get_next_timer_interrupt() vs cpu hotplug\n  Sched: fix skip_clock_update optimization\n  sched: Cure more NO_HZ load average woes\n"
    },
    {
      "commit": "46bdfe6a50b88942f5323f837a3afd93a1c86e60",
      "tree": "9fe5add84d9bcca4670b1af98940d7267c3a3571",
      "parents": [
        "c15524a40a1603dc56a8691c4f50172fb86c23d8",
        "a2c606d53ab71dee6410f10ef0adf67321d60e06"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Dec 18 10:13:24 2010 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Dec 18 10:13:24 2010 -0800"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/jbarnes/pci-2.6\n\n* \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/jbarnes/pci-2.6:\n  x86: avoid high BIOS area when allocating address space\n  x86: avoid E820 regions when allocating address space\n  x86: avoid low BIOS area when allocating address space\n  resources: add arch hook for preventing allocation in reserved areas\n  Revert \"resources: support allocating space within a region from the top down\"\n  Revert \"PCI: allocate bus resources from the top down\"\n  Revert \"x86/PCI: allocate space from the end of a region, not the beginning\"\n  Revert \"x86: allocate space within a region top-down\"\n  Revert \"PCI: fix pci_bus_alloc_resource() hang, prefer positive decode\"\n  PCI: Update MCP55 quirk to not affect non HyperTransport variants\n"
    },
    {
      "commit": "fcb119183c73bf0781009713f303e28b1fb13d3e",
      "tree": "94d739189963cecafae1b497845eb1e856558e49",
      "parents": [
        "c0f5ac5426f7fd82b23dd5c6a1e633b290294a08"
      ],
      "author": {
        "name": "Bjorn Helgaas",
        "email": "bjorn.helgaas@hp.com",
        "time": "Thu Dec 16 10:38:46 2010 -0700"
      },
      "committer": {
        "name": "Jesse Barnes",
        "email": "jbarnes@virtuousgeek.org",
        "time": "Fri Dec 17 10:01:09 2010 -0800"
      },
      "message": "resources: add arch hook for preventing allocation in reserved areas\n\nThis adds arch_remove_reservations(), which an arch can implement if it\nneeds to protect part of the address space from allocation.\n\nSometimes that can be done by just putting a region in the resource tree,\nbut there are cases where that doesn\u0027t work well.  For example, x86 BIOS\nE820 reservations are not related to devices, so they may overlap part of,\nall of, or more than a device resource, so they may not end up at the\ncorrect spot in the resource tree.\n\nAcked-by: H. Peter Anvin \u003chpa@zytor.com\u003e\nSigned-off-by: Bjorn Helgaas \u003cbjorn.helgaas@hp.com\u003e\nSigned-off-by: Jesse Barnes \u003cjbarnes@virtuousgeek.org\u003e\n"
    },
    {
      "commit": "c0f5ac5426f7fd82b23dd5c6a1e633b290294a08",
      "tree": "e271f4e49d7d32a4637d958b619b3b0836f7079c",
      "parents": [
        "6db45b76eaa08133187f2cb44d496de7e9503aa8"
      ],
      "author": {
        "name": "Bjorn Helgaas",
        "email": "bjorn.helgaas@hp.com",
        "time": "Thu Dec 16 10:38:41 2010 -0700"
      },
      "committer": {
        "name": "Jesse Barnes",
        "email": "jbarnes@virtuousgeek.org",
        "time": "Fri Dec 17 10:00:59 2010 -0800"
      },
      "message": "Revert \"resources: support allocating space within a region from the top down\"\n\nThis reverts commit e7f8567db9a7f6b3151b0b275e245c1cef0d9c70.\n\nAcked-by: H. Peter Anvin \u003chpa@zytor.com\u003e\nSigned-off-by: Bjorn Helgaas \u003cbjorn.helgaas@hp.com\u003e\nSigned-off-by: Jesse Barnes \u003cjbarnes@virtuousgeek.org\u003e\n"
    },
    {
      "commit": "be8cd644c49dca4212e975455c8e7119b848ebe8",
      "tree": "5c7c7aa4ab10c823381918f91d0d475acea49aec",
      "parents": [
        "1497dd1d29c6a53fcd3c80f7ac8d0e0239e7389e"
      ],
      "author": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Sat Dec 11 21:46:44 2010 +0100"
      },
      "committer": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Thu Dec 16 17:08:58 2010 +0100"
      },
      "message": "PM / Hibernate: Restore old swap signature to avoid user space breakage\n\nCommit 3624eb0 (PM / Hibernate: Modify signature used to mark swap)\nattempted to modify hibernate signature used to mark swap partitions\ncontaining hibernation images, so that old kernels don\u0027t try to\nhandle compressed images.  However, this change broke resume from\nhibernation on Fedora 14 that apparently doesn\u0027t pass the resume\u003d\nargument to the kernel and tries to trigger resume from early user\nspace.  This doesn\u0027t work, because the signature is now different,\nso the old signature has to be restored to avoid the problem.\n\nAddresses https://bugzilla.kernel.org/show_bug.cgi?id\u003d22732 .\n\nReported-by: Dr. David Alan Gilbert \u003clinux@treblig.org\u003e\nReported-by: Zhang Rui \u003crui.zhang@intel.com\u003e\nReported-by: Pascal Chapperon \u003cpascal.chapperon@wanadoo.fr\u003e\nSigned-off-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\n"
    },
    {
      "commit": "1497dd1d29c6a53fcd3c80f7ac8d0e0239e7389e",
      "tree": "5c5fa252c06826d2bcfd3121698c79eeba613d8a",
      "parents": [
        "b0c3844d8af6b9f3f18f31e1b0502fbefa2166be"
      ],
      "author": {
        "name": "Takashi Iwai",
        "email": "tiwai@suse.de",
        "time": "Fri Dec 10 00:16:39 2010 +0100"
      },
      "committer": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Thu Dec 16 17:08:43 2010 +0100"
      },
      "message": "PM / Hibernate: Fix PM_POST_* notification with user-space suspend\n\nThe user-space hibernation sends a wrong notification after the image\nrestoration because of thinko for the file flag check.  RDONLY\ncorresponds to hibernation and WRONLY to restoration, confusingly.\n\nSigned-off-by: Takashi Iwai \u003ctiwai@suse.de\u003e\nSigned-off-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\nCc: stable@kernel.org\n"
    },
    {
      "commit": "abe43400579d5de0078c2d3a760e6598e183f871",
      "tree": "1f6faf8a1ab60f3f9bfb26265c84c2725e6c4aaa",
      "parents": [
        "2e80a82a49c4c7eca4e35734380f28298ba5db19"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "a.p.zijlstra@chello.nl",
        "time": "Wed Nov 17 23:17:37 2010 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Dec 16 11:36:43 2010 +0100"
      },
      "message": "perf: Sysfs enumeration\n\nSimple sysfs emumeration of the PMUs.\n\nUse a \"event_source\" bus, and add PMU devices using their name.\n\nEach PMU device has a type attribute which contrains the value needed\nfor perf_event_attr::type to identify this PMU.\n\nThis is the minimal stub needed to start using this interface,\nwe\u0027ll consider extending the sysfs usage later.\n\nCc: Kay Sievers \u003ckay.sievers@vrfy.org\u003e\nCc: Greg KH \u003cgregkh@suse.de\u003e\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nLKML-Reference: \u003c20101117222056.316982569@chello.nl\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "2e80a82a49c4c7eca4e35734380f28298ba5db19",
      "tree": "c60fe1cc6696c893a2c6c5891981bf8e81d9ab90",
      "parents": [
        "9f58a205c62d0dad1df38d076324a89b1a0f1d65"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "a.p.zijlstra@chello.nl",
        "time": "Wed Nov 17 23:17:36 2010 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Dec 16 11:36:43 2010 +0100"
      },
      "message": "perf: Dynamic pmu types\n\nExtend the perf_pmu_register() interface to allow for named and\ndynamic pmu types.\n\nBecause we need to support the existing static types we cannot use\ndynamic types for everything, hence provide a type argument.\n\nIf we want to enumerate the PMUs they need a name, provide one.\n\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nLKML-Reference: \u003c20101117222056.259707703@chello.nl\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "24a24bb6ff3dc3a09bb131241be920ecc3f0e519",
      "tree": "181eca7d23ba93af11304683a309e18b697a15b0",
      "parents": [
        "4407204c5c9037763aadce39b025529dfbfcac9e"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "a.p.zijlstra@chello.nl",
        "time": "Wed Nov 17 23:17:33 2010 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Dec 16 11:36:42 2010 +0100"
      },
      "message": "perf: Move perf_event_init() into main.c\n\nCurrently we call perf_event_init() from sched_init(). In order to\nmake it more obvious move it to the cannnonical location.\n\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nLKML-Reference: \u003c20101117222056.093629821@chello.nl\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "006b20fe4c69189b0d854e5eabf269e50ca86cdd",
      "tree": "948b08825a36114c85ddc2bfcd965c261e32810f",
      "parents": [
        "5f29805a4f4627e766f862ff9f10c14f5f314359",
        "d949750fed168b6553ca11ed19e4affd19d7a4d7"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Dec 16 11:22:25 2010 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Dec 16 11:22:27 2010 +0100"
      },
      "message": "Merge branch \u0027perf/urgent\u0027 into perf/core\n\nMerge reason: We want to apply a dependent patch.\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "d949750fed168b6553ca11ed19e4affd19d7a4d7",
      "tree": "a98953ef3448b7b4909f1d90be266e0cfbdff328",
      "parents": [
        "ce677831a4abd0f9f957c90ac6f6a0d0472bafb4",
        "e63233f75a1a6bfa97ffb52a20cc6801a4c63fb2"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Dec 16 11:21:24 2010 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Dec 16 11:21:24 2010 +0100"
      },
      "message": "Merge branch \u0027tip/perf/urgent\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/rostedt/linux-2.6-trace into perf/urgent\n"
    },
    {
      "commit": "8e92c20183ed0579d94501311b81c42b65cb2129",
      "tree": "3a00ccaf8222c994fd7071129dc357321c10c9df",
      "parents": [
        "fe44d62122829959e960bc699318d58966922a69"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "a.p.zijlstra@chello.nl",
        "time": "Thu Dec 09 14:15:34 2010 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Dec 16 11:17:47 2010 +0100"
      },
      "message": "sched: Fix the irqtime code for 32bit\n\nSince the irqtime accounting is using non-atomic u64 and can be read\nfrom remote cpus (writes are strictly cpu local, reads are not) we\nhave to deal with observing partial updates.\n\nWhen we do observe partial updates the clock movement (in particular,\n-\u003eclock_task movement) will go funny (in either direction), a\nsubsequent clock update (observing the full update) will make it go\nfunny in the oposite direction.\n\nSince we rely on these clocks to be strictly monotonic we cannot\nsuffer backwards motion. One possible solution would be to simply\nignore all backwards deltas, but that will lead to accounting\nartefacts, most notable: clock_task + irq_time !\u003d clock, this\ninaccuracy would end up in user visible stats.\n\nTherefore serialize the reads using a seqcount.\n\nReviewed-by: Venkatesh Pallipadi \u003cvenki@google.com\u003e\nReported-by: Mikael Pettersson \u003cmikpe@it.uu.se\u003e\nTested-by: Mikael Pettersson \u003cmikpe@it.uu.se\u003e\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nLKML-Reference: \u003c1292242434.6803.200.camel@twins\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "fe44d62122829959e960bc699318d58966922a69",
      "tree": "bacb96098cffa7b7b8d80506a2026b5125557f2a",
      "parents": [
        "dbd87b5af055a0cc9bba17795c9a2b0d17795389"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "a.p.zijlstra@chello.nl",
        "time": "Thu Dec 09 14:15:34 2010 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Dec 16 11:17:46 2010 +0100"
      },
      "message": "sched: Fix the irqtime code to deal with u64 wraps\n\nSome ARM systems have a short sched_clock() [ which needs to be fixed\ntoo ], but this exposed a bug in the irq_time code as well, it doesn\u0027t\ndeal with wraps at all.\n\nFix the irq_time code to deal with u64 wraps by re-writing the code to\nonly use delta increments, which avoids the whole issue.\n\nReviewed-by: Venkatesh Pallipadi \u003cvenki@google.com\u003e\nReported-by: Mikael Pettersson \u003cmikpe@it.uu.se\u003e\nTested-by: Mikael Pettersson \u003cmikpe@it.uu.se\u003e\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nLKML-Reference: \u003c1292242433.6803.199.camel@twins\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "ce677831a4abd0f9f957c90ac6f6a0d0472bafb4",
      "tree": "755fb098fa0e27bfa710272cd5686dabc7922360",
      "parents": [
        "5167695753c63444a9e6cbbef136200a16c7a225"
      ],
      "author": {
        "name": "Dan Carpenter",
        "email": "error27@gmail.com",
        "time": "Sun Oct 24 21:50:42 2010 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Dec 16 11:14:31 2010 +0100"
      },
      "message": "perf: Fix off by one in perf_swevent_init()\n\nThe perf_swevent_enabled[] array has PERF_COUNT_SW_MAX elements.\n\nSigned-off-by: Dan Carpenter \u003cerror27@gmail.com\u003e\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nLKML-Reference: \u003c20101024195041.GT5985@bicker\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "0fcdcfbbc98f70f559e4b36773a69972489a6d8f",
      "tree": "108d532e9c79b76c6adaf8b564749a19ffbbce66",
      "parents": [
        "6d5e93c2aa1248b25f9de0eaca1dca038e31d79d",
        "2d64672ed38721b7a3815009d79bfb90a1f34a17"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Dec 14 18:50:10 2010 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Dec 14 18:50:10 2010 -0800"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tj/wq\n\n* \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tj/wq:\n  workqueue: It is likely that WORKER_NOT_RUNNING is true\n  MAINTAINERS: Add workqueue entry\n  workqueue: check the allocation of system_unbound_wq\n"
    },
    {
      "commit": "2d64672ed38721b7a3815009d79bfb90a1f34a17",
      "tree": "91a52918b036a07bf8008eeae6e7dccf967fa4e0",
      "parents": [
        "3e6cd7a4b6a04cf354a18c9d2e7ecec8fa1772fb"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Fri Dec 03 23:12:33 2010 -0500"
      },
      "committer": {
        "name": "Tejun Heo",
        "email": "tj@kernel.org",
        "time": "Tue Dec 14 15:05:54 2010 +0100"
      },
      "message": "workqueue: It is likely that WORKER_NOT_RUNNING is true\n\nRunning the annotate branch profiler on three boxes, including my\nmain box that runs firefox, evolution, xchat, and is part of the distcc farm,\nshowed this with the likelys in the workqueue code:\n\n correct incorrect  %        Function                  File              Line\n ------- ---------  -        --------                  ----              ----\n      96   996253  99 wq_worker_sleeping             workqueue.c          703\n      96   996247  99 wq_worker_waking_up            workqueue.c          677\n\nThe likely()s in this case were assuming that WORKER_NOT_RUNNING will\nmost likely be false. But this is not the case. The reason is\n(and shown by adding trace_printks and testing it) that most of the time\nWORKER_PREP is set.\n\nIn worker_thread() we have:\n\n\tworker_clr_flags(worker, WORKER_PREP);\n\n\t[ do work stuff ]\n\n\tworker_set_flags(worker, WORKER_PREP, false);\n\n(that \u0027false\u0027 means not to wake up an idle worker)\n\nThe wq_worker_sleeping() is called from schedule when a worker thread\nis putting itself to sleep. Which happens most of the time outside\nof that [ do work stuff ].\n\nThe wq_worker_waking_up is called by the wakeup worker code, which\nis also callod outside that [ do work stuff ].\n\nThus, the likely and unlikely used by those two functions are actually\nbackwards.\n\nRemove the annotation and let gcc figure it out.\n\nAcked-by: Tejun Heo \u003ctj@kernel.org\u003e\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\nSigned-off-by: Tejun Heo \u003ctj@kernel.org\u003e\n"
    },
    {
      "commit": "5dc3055879b8f659f62abb7c3d1eaa4d02e36d65",
      "tree": "823b69dd3ed28bc9d05fc4ecf31e780341efdf5b",
      "parents": [
        "96a84c20d635fb1e98ab92f9fc517c4441f5c424"
      ],
      "author": {
        "name": "Don Zickus",
        "email": "dzickus@redhat.com",
        "time": "Mon Nov 29 17:07:17 2010 -0500"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Dec 10 00:01:06 2010 +0100"
      },
      "message": "x86, NMI: Add back unknown_nmi_panic and nmi_watchdog sysctls\n\nOriginally adapted from Huang Ying\u0027s patch which moved the\nunknown_nmi_panic to the traps.c file.  Because the old nmi\nwatchdog was deleted before this change happened, the\nunknown_nmi_panic sysctl was lost.  This re-adds it.\n\nAlso, the nmi_watchdog sysctl was re-implemented and its\ndocumentation updated accordingly.\n\nPatch-inspired-by: Huang Ying \u003cying.huang@intel.com\u003e\nSigned-off-by: Don Zickus \u003cdzickus@redhat.com\u003e\nReviewed-by: Cyrill Gorcunov \u003cgorcunov@gmail.com\u003e\nAcked-by: Yinghai Lu \u003cyinghai@kernel.org\u003e\nCc: fweisbec@gmail.com\nLKML-Reference: \u003c1291068437-5331-3-git-send-email-dzickus@redhat.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "c277443cfc29b1623b4923219ff0bdb48b91b589",
      "tree": "0655516f81164a42dfb06e416b54c50cac33f433",
      "parents": [
        "c079c791c5a0627fc7b752d31d72e274e0596ba8"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "a.p.zijlstra@chello.nl",
        "time": "Wed Dec 08 15:29:02 2010 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Dec 08 20:16:31 2010 +0100"
      },
      "message": "perf: Stop all counters on reboot\n\nUse the reboot notifier to detach all running counters on reboot, this\nsolves a problem with kexec where the new kernel doesn\u0027t expect\nrunning counters (rightly so).\n\nIt will however decrease the coverage of the NMI watchdog. Making a\nkexec specific reboot notifier callback would be best, however that\nwould require touching all notifier callback handlers as they are not\nproperly structured to deal with new state.\n\nAs a compromise, place the perf reboot notifier at the very last\nposition in the list.\n\nReported-by: Yinghai Lu \u003cyinghai@kernel.org\u003e\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: Vivek Goyal \u003cvgoyal@redhat.com\u003e\nCc: Eric W. Biederman \u003cebiederm@xmission.com\u003e\nCc: Jason Wessel \u003cjason.wessel@windriver.com\u003e\nCc: Don Zickus \u003cdzickus@redhat.com\u003e\nLKML-Reference: \u003cnew-submission\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "dbd87b5af055a0cc9bba17795c9a2b0d17795389",
      "tree": "72d6e2ca94e2ce3c93fa5942008eed97af41aacd",
      "parents": [
        "f26f9aff6aaf67e9a430d16c266f91b13a5bff64"
      ],
      "author": {
        "name": "Heiko Carstens",
        "email": "heiko.carstens@de.ibm.com",
        "time": "Wed Dec 01 10:11:09 2010 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Dec 08 20:15:07 2010 +0100"
      },
      "message": "nohz: Fix get_next_timer_interrupt() vs cpu hotplug\n\nThis fixes a bug as seen on 2.6.32 based kernels where timers got\nenqueued on offline cpus.\n\nIf a cpu goes offline it might still have pending timers. These will\nbe migrated during CPU_DEAD handling after the cpu is offline.\nHowever while the cpu is going offline it will schedule the idle task\nwhich will then call tick_nohz_stop_sched_tick().\n\nThat function in turn will call get_next_timer_intterupt() to figure\nout if the tick of the cpu can be stopped or not. If it turns out that\nthe next tick is just one jiffy off (delta_jiffies \u003d\u003d 1)\ntick_nohz_stop_sched_tick() incorrectly assumes that the tick should\nnot stop and takes an early exit and thus it won\u0027t update the load\nbalancer cpu.\n\nJust afterwards the cpu will be killed and the load balancer cpu could\nbe the offline cpu.\n\nOn 2.6.32 based kernel get_nohz_load_balancer() gets called to decide\non which cpu a timer should be enqueued (see __mod_timer()). Which\nleads to the possibility that timers get enqueued on an offline cpu.\nThese will never expire and can cause a system hang.\n\nThis has been observed 2.6.32 kernels. On current kernels\n__mod_timer() uses get_nohz_timer_target() which doesn\u0027t have that\nproblem. However there might be other problems because of the too\nearly exit tick_nohz_stop_sched_tick() in case a cpu goes offline.\n\nThe easiest and probably safest fix seems to be to let\nget_next_timer_interrupt() just lie and let it say there isn\u0027t any\npending timer if the current cpu is offline.\n\nI also thought of moving migrate_[hr]timers() from CPU_DEAD to\nCPU_DYING, but seeing that there already have been fixes at least in\nthe hrtimer code in this area I\u0027m afraid that this could add new\nsubtle bugs.\n\nSigned-off-by: Heiko Carstens \u003cheiko.carstens@de.ibm.com\u003e\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nLKML-Reference: \u003c20101201091109.GA8984@osiris.boeblingen.de.ibm.com\u003e\nCc: stable@kernel.org\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "f26f9aff6aaf67e9a430d16c266f91b13a5bff64",
      "tree": "84e39b539b42655dbae6b80acbe14e10772711fe",
      "parents": [
        "0f004f5a696a9434b7214d0d3cbd0525ee77d428"
      ],
      "author": {
        "name": "Mike Galbraith",
        "email": "efault@gmx.de",
        "time": "Wed Dec 08 11:05:42 2010 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Dec 08 20:15:06 2010 +0100"
      },
      "message": "Sched: fix skip_clock_update optimization\n\nidle_balance() drops/retakes rq-\u003elock, leaving the previous task\nvulnerable to set_tsk_need_resched().  Clear it after we return\nfrom balancing instead, and in setup_thread_stack() as well, so\nno successfully descheduled or never scheduled task has it set.\n\nNeed resched confused the skip_clock_update logic, which assumes\nthat the next call to update_rq_clock() will come nearly immediately\nafter being set.  Make the optimization robust against the waking\na sleeper before it sucessfully deschedules case by checking that\nthe current task has not been dequeued before setting the flag,\nsince it is that useless clock update we\u0027re trying to save, and\nclear unconditionally in schedule() proper instead of conditionally\nin put_prev_task().\n\nSigned-off-by: Mike Galbraith \u003cefault@gmx.de\u003e\nReported-by: Bjoern B. Brandenburg \u003cbbb.lst@gmail.com\u003e\nTested-by: Yong Zhang \u003cyong.zhang0@gmail.com\u003e\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: stable@kernel.org\nLKML-Reference: \u003c1291802742.1417.9.camel@marge.simson.net\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "0f004f5a696a9434b7214d0d3cbd0525ee77d428",
      "tree": "274b3bb92469789284d864314d46e902c70e8384",
      "parents": [
        "6313e3c21743cc88bb5bd8aa72948ee1e83937b6"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "a.p.zijlstra@chello.nl",
        "time": "Tue Nov 30 19:48:45 2010 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Dec 08 20:15:04 2010 +0100"
      },
      "message": "sched: Cure more NO_HZ load average woes\n\nThere\u0027s a long-running regression that proved difficult to fix and\nwhich is hitting certain people and is rather annoying in its effects.\n\nDamien reported that after 74f5187ac8 (sched: Cure load average vs\nNO_HZ woes) his load average is unnaturally high, he also noted that\neven with that patch reverted the load avgerage numbers are not\ncorrect.\n\nThe problem is that the previous patch only solved half the NO_HZ\nproblem, it addressed the part of going into NO_HZ mode, not of\ncomming out of NO_HZ mode. This patch implements that missing half.\n\nWhen comming out of NO_HZ mode there are two important things to take\ncare of:\n\n - Folding the pending idle delta into the global active count.\n - Correctly aging the averages for the idle-duration.\n\nSo with this patch the NO_HZ interaction should be complete and\nbehaviour between CONFIG_NO_HZ\u003d[yn] should be equivalent.\n\nFurthermore, this patch slightly changes the load average computation\nby adding a rounding term to the fixed point multiplication.\n\nReported-by: Damien Wyart \u003cdamien.wyart@free.fr\u003e\nReported-by: Tim McGrath \u003ctmhikaru@gmail.com\u003e\nTested-by: Damien Wyart \u003cdamien.wyart@free.fr\u003e\nTested-by: Orion Poplawski \u003corion@cora.nwra.com\u003e\nTested-by: Kyle McMartin \u003ckyle@mcmartin.ca\u003e\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: stable@kernel.org\nCc: Chase Douglas \u003cchase.douglas@canonical.com\u003e\nLKML-Reference: \u003c1291129145.32004.874.camel@laptop\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "5167695753c63444a9e6cbbef136200a16c7a225",
      "tree": "6394b1e620027882556beb2e899449805dd3c3cc",
      "parents": [
        "6313e3c21743cc88bb5bd8aa72948ee1e83937b6"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "a.p.zijlstra@chello.nl",
        "time": "Tue Dec 07 14:18:20 2010 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Dec 08 20:14:08 2010 +0100"
      },
      "message": "perf: Fix duplicate events with multiple-pmu vs software events\n\nBecause the multi-pmu bits can share contexts between struct pmu\ninstances we could get duplicate events by iterating the pmu list.\n\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nLKML-Reference: \u003cnew-submission\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "6313e3c21743cc88bb5bd8aa72948ee1e83937b6",
      "tree": "0199e3ec8d3ad7799468f51d251b542192099777",
      "parents": [
        "6dde39be39e636c1d41e73590668d5903b11535b",
        "e7a3481c0246c8e45e79c629efd63b168e91fcda",
        "18483b81ee7e70ee68d4b18be618be5cfcc0b290",
        "61ab25447ad6334a74e32f60efb135a3467223f8"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Dec 08 06:40:59 2010 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Dec 08 06:40:59 2010 -0800"
      },
      "message": "Merge branches \u0027x86-fixes-for-linus\u0027, \u0027perf-fixes-for-linus\u0027 and \u0027sched-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  x86/pvclock: Zero last_value on resume\n\n* \u0027perf-fixes-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:\n  perf record: Fix eternal wait for stillborn child\n  perf header: Don\u0027t assume there\u0027s no attr info if no sample ids is provided\n  perf symbols: Figure out start address of kernel map from kallsyms\n  perf symbols: Fix kallsyms kernel/module map splitting\n\n* \u0027sched-fixes-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:\n  nohz: Fix printk_needs_cpu() return value on offline cpus\n  printk: Fix wake_up_klogd() vs cpu hotplug\n"
    },
    {
      "commit": "81e8d2162566379adcf4b3700f03845c62577145",
      "tree": "abf52998d7a1b3cabb939abac590c27fa9c39f2a",
      "parents": [
        "ff43fa8b41fe93cc62bb571a1bfeb487a3f79901",
        "25c9170ed64a6551beefe9315882f754e14486f4"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Dec 07 08:14:28 2010 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Dec 07 08:14:28 2010 -0800"
      },
      "message": "Merge branch \u0027irq-fixes-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip\n\n* \u0027irq-fixes-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:\n  genirq: Fix incorrect proc spurious output\n"
    },
    {
      "commit": "75b5293a5d176cd9caf6dc590da4f3458c048c3c",
      "tree": "40929d6108c662d6eb4c65f900312a37d0d6d566",
      "parents": [
        "10a18d7dc0d9f12483c95ffc234118e9b80edfeb",
        "ce47dc56a2241dc035160a85bc5e34283cdd622c"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Dec 07 07:51:14 2010 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Dec 07 07:51:14 2010 +0100"
      },
      "message": "Merge branch \u0027perf/core\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/acme/linux-2.6 into perf/core\n"
    },
    {
      "commit": "10a18d7dc0d9f12483c95ffc234118e9b80edfeb",
      "tree": "0f43620107d5231cab669bca4b3c923b721330c7",
      "parents": [
        "f984ba4eb575e4a27ed28a76d4126d2aa9233c32",
        "cf7d7e5a1980d1116ee152d25dac382b112b9c17"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Dec 07 07:49:48 2010 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Dec 07 07:49:51 2010 +0100"
      },
      "message": "Merge commit \u0027v2.6.37-rc5\u0027 into perf/core\n\nMerge reason: Pick up the latest -rc.\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "7787d2c2f440cc7854bed3d039bf4cc59d9e7897",
      "tree": "d7402ea46b2aa0a4d049e8edc61a302bda4db4d5",
      "parents": [
        "60658f8a293750b59a8a844bf5c387139af9500a",
        "c9e664f1fdf34aa8cede047b206deaa8f1945af0"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Dec 06 15:51:14 2010 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Dec 06 15:51:14 2010 -0800"
      },
      "message": "Merge branch \u0027pm-fixes\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/suspend-2.6\n\n* \u0027pm-fixes\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/suspend-2.6:\n  PM / Hibernate: Fix memory corruption related to swap\n  PM / Hibernate: Use async I/O when reading compressed hibernation image\n"
    },
    {
      "commit": "c9e664f1fdf34aa8cede047b206deaa8f1945af0",
      "tree": "6038002f46173ca785936ac2fe54177197f98a08",
      "parents": [
        "9f339caf8454f0c21983111350ede93983db4340"
      ],
      "author": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Fri Dec 03 22:57:45 2010 +0100"
      },
      "committer": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Mon Dec 06 23:52:08 2010 +0100"
      },
      "message": "PM / Hibernate: Fix memory corruption related to swap\n\nThere is a problem that swap pages allocated before the creation of\na hibernation image can be released and used for storing the contents\nof different memory pages while the image is being saved.  Since the\nkernel stored in the image doesn\u0027t know of that, it causes memory\ncorruption to occur after resume from hibernation, especially on\nsystems with relatively small RAM that need to swap often.\n\nThis issue can be addressed by keeping the GFP_IOFS bits clear\nin gfp_allowed_mask during the entire hibernation, including the\nsaving of the image, until the system is finally turned off or\nthe hibernation is aborted.  Unfortunately, for this purpose\nit\u0027s necessary to rework the way in which the hibernate and\nsuspend code manipulates gfp_allowed_mask.\n\nThis change is based on an earlier patch from Hugh Dickins.\n\nSigned-off-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\nReported-by: Ondrej Zary \u003clinux@rainbow-software.org\u003e\nAcked-by: Hugh Dickins \u003chughd@google.com\u003e\nReviewed-by: KAMEZAWA Hiroyuki \u003ckamezawa.hiroyu@jp.fujitsu.com\u003e\nCc: stable@kernel.org\n"
    },
    {
      "commit": "9f339caf8454f0c21983111350ede93983db4340",
      "tree": "ebe959b206b1edfd4d3976617527d43d3858b00c",
      "parents": [
        "698fd6a2c3ca05ec796072defb5c415289a86cdc"
      ],
      "author": {
        "name": "Bojan Smojver",
        "email": "bojan@rexursive.com",
        "time": "Thu Nov 25 23:41:39 2010 +0100"
      },
      "committer": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Mon Dec 06 23:38:29 2010 +0100"
      },
      "message": "PM / Hibernate: Use async I/O when reading compressed hibernation image\n\nThis is a fix for reading LZO compressed image using async I/O.\nEssentially, instead of having just one page into which we keep\nreading blocks from swap, we allocate enough of them to cover the\nlargest compressed size and then let block I/O pick them all up. Once\nwe have them all (and here we wait), we decompress them, as usual.\nObviously, the very first block we still pick up synchronously,\nbecause we need to know the size of the lot before we pick up the\nrest.\n\nAlso fixed the copyright line, which I\u0027ve forgotten before.\n\nSigned-off-by: Bojan Smojver \u003cbojan@rexursive.com\u003e\nSigned-off-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\n"
    },
    {
      "commit": "f984ba4eb575e4a27ed28a76d4126d2aa9233c32",
      "tree": "0df5f1510537edac10ae9cc1e5572d70dcf0a8c7",
      "parents": [
        "cd7ebe2298ff1c3112232878678ce5fe6be8a15b"
      ],
      "author": {
        "name": "Masami Hiramatsu",
        "email": "masami.hiramatsu.pt@hitachi.com",
        "time": "Fri Dec 03 18:54:34 2010 +0900"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Dec 06 17:59:32 2010 +0100"
      },
      "message": "kprobes: Use text_poke_smp_batch for unoptimizing\n\nUse text_poke_smp_batch() on unoptimization path for reducing\nthe number of stop_machine() issues. If the number of\nunoptimizing probes is more than MAX_OPTIMIZE_PROBES(\u003d256),\nkprobes unoptimizes first MAX_OPTIMIZE_PROBES probes and kicks\noptimizer for remaining probes.\n\nSigned-off-by: Masami Hiramatsu \u003cmasami.hiramatsu.pt@hitachi.com\u003e\nCc: Rusty Russell \u003crusty@rustcorp.com.au\u003e\nCc: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nCc: Ananth N Mavinakayanahalli \u003cananth@in.ibm.com\u003e\nCc: Jason Baron \u003cjbaron@redhat.com\u003e\nCc: Mathieu Desnoyers \u003cmathieu.desnoyers@efficios.com\u003e\nCc: 2nddept-manager@sdl.hitachi.co.jp\nCc: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: Steven Rostedt \u003crostedt@goodmis.org\u003e\nLKML-Reference: \u003c20101203095434.2961.22657.stgit@ltc236.sdl.hitachi.co.jp\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "cd7ebe2298ff1c3112232878678ce5fe6be8a15b",
      "tree": "7bac7adf40ce2141e779b7d99b2784279c2dc45c",
      "parents": [
        "7deb18dcf0478940ac979de002db1ed8ba6531dc"
      ],
      "author": {
        "name": "Masami Hiramatsu",
        "email": "masami.hiramatsu.pt@hitachi.com",
        "time": "Fri Dec 03 18:54:28 2010 +0900"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Dec 06 17:59:31 2010 +0100"
      },
      "message": "kprobes: Use text_poke_smp_batch for optimizing\n\nUse text_poke_smp_batch() in optimization path for reducing\nthe number of stop_machine() issues. If the number of optimizing\nprobes is more than MAX_OPTIMIZE_PROBES(\u003d256), kprobes optimizes\nfirst MAX_OPTIMIZE_PROBES probes and kicks optimizer for\nremaining probes.\n\nChanges in v5:\n- Use kick_kprobe_optimizer() instead of directly calling\n  schedule_delayed_work().\n- Rescheduling optimizer outside of kprobe mutex lock.\n\nChanges in v2:\n- Allocate code buffer and parameters in arch_init_kprobes()\n  instead of using static arraies.\n- Merge previous max optimization limit patch into this patch.\n  So, this patch introduces upper limit of optimization at\n  once.\n\nSigned-off-by: Masami Hiramatsu \u003cmhiramat@redhat.com\u003e\nCc: Rusty Russell \u003crusty@rustcorp.com.au\u003e\nCc: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nCc: Ananth N Mavinakayanahalli \u003cananth@in.ibm.com\u003e\nCc: Jason Baron \u003cjbaron@redhat.com\u003e\nCc: Mathieu Desnoyers \u003cmathieu.desnoyers@efficios.com\u003e\nCc: 2nddept-manager@sdl.hitachi.co.jp\nCc: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: Steven Rostedt \u003crostedt@goodmis.org\u003e\nLKML-Reference: \u003c20101203095428.2961.8994.stgit@ltc236.sdl.hitachi.co.jp\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "0490cd1f9d99569d3bd64e17adc88db06a5007be",
      "tree": "a857099ce331773d5103f376860dd3f29f7a8b54",
      "parents": [
        "6274de4984a630b45c6934b3ee62e5692c745328"
      ],
      "author": {
        "name": "Masami Hiramatsu",
        "email": "masami.hiramatsu.pt@hitachi.com",
        "time": "Fri Dec 03 18:54:16 2010 +0900"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Dec 06 17:59:31 2010 +0100"
      },
      "message": "kprobes: Reuse unused kprobe\n\nReuse unused (waiting for unoptimizing and no user handler)\nkprobe on given address instead of returning -EBUSY for\nregistering a new kprobe.\n\nSigned-off-by: Masami Hiramatsu \u003cmasami.hiramatsu.pt@hitachi.com\u003e\nCc: Rusty Russell \u003crusty@rustcorp.com.au\u003e\nCc: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nCc: Ananth N Mavinakayanahalli \u003cananth@in.ibm.com\u003e\nCc: Jason Baron \u003cjbaron@redhat.com\u003e\nCc: Mathieu Desnoyers \u003cmathieu.desnoyers@efficios.com\u003e\nCc: 2nddept-manager@sdl.hitachi.co.jp\nLKML-Reference: \u003c20101203095416.2961.39080.stgit@ltc236.sdl.hitachi.co.jp\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "6274de4984a630b45c6934b3ee62e5692c745328",
      "tree": "dfe66f06596b0165c87a75d800fa83acb6201d1b",
      "parents": [
        "61f4e13ffd85c037a942c5b7fd13f2b0c3162862"
      ],
      "author": {
        "name": "Masami Hiramatsu",
        "email": "masami.hiramatsu.pt@hitachi.com",
        "time": "Fri Dec 03 18:54:09 2010 +0900"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Dec 06 17:59:30 2010 +0100"
      },
      "message": "kprobes: Support delayed unoptimizing\n\nUnoptimization occurs when a probe is unregistered or disabled,\nand is heavy because it recovers instructions by using\nstop_machine(). This patch delays unoptimization operations and\nunoptimize several probes at once by using\ntext_poke_smp_batch(). This can avoid unexpected system slowdown\ncoming from stop_machine().\n\nChanges in v5:\n- Split this patch into several cleanup patches and this patch.\n- Fix some text_mutex lock miss.\n- Use bool instead of int for behavior flags.\n- Add additional comment for (un)optimizing path.\n\nChanges in v2:\n- Use dynamic allocated buffers and params.\n\nSigned-off-by: Masami Hiramatsu \u003cmasami.hiramatsu.pt@hitachi.com\u003e\nCc: Rusty Russell \u003crusty@rustcorp.com.au\u003e\nCc: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nCc: Ananth N Mavinakayanahalli \u003cananth@in.ibm.com\u003e\nCc: Jason Baron \u003cjbaron@redhat.com\u003e\nCc: Mathieu Desnoyers \u003cmathieu.desnoyers@efficios.com\u003e\nCc: 2nddept-manager@sdl.hitachi.co.jp\nLKML-Reference: \u003c20101203095409.2961.82733.stgit@ltc236.sdl.hitachi.co.jp\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "61f4e13ffd85c037a942c5b7fd13f2b0c3162862",
      "tree": "29ce3816a1fbbed40005df664652e040d88117db",
      "parents": [
        "6f0f1dd71953d4243c11e490dd49ef24ebaf6c0b"
      ],
      "author": {
        "name": "Masami Hiramatsu",
        "email": "masami.hiramatsu.pt@hitachi.com",
        "time": "Fri Dec 03 18:54:03 2010 +0900"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Dec 06 17:59:30 2010 +0100"
      },
      "message": "kprobes: Separate kprobe optimizing code from optimizer\n\nSeparate kprobe optimizing code from optimizer, this\nwill make easy to introducing unoptimizing code in\noptimizer.\n\nSigned-off-by: Masami Hiramatsu \u003cmasami.hiramatsu.pt@hitachi.com\u003e\nCc: Rusty Russell \u003crusty@rustcorp.com.au\u003e\nCc: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nCc: Ananth N Mavinakayanahalli \u003cananth@in.ibm.com\u003e\nCc: Jason Baron \u003cjbaron@redhat.com\u003e\nCc: Mathieu Desnoyers \u003cmathieu.desnoyers@efficios.com\u003e\nCc: 2nddept-manager@sdl.hitachi.co.jp\nLKML-Reference: \u003c20101203095403.2961.91201.stgit@ltc236.sdl.hitachi.co.jp\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "6f0f1dd71953d4243c11e490dd49ef24ebaf6c0b",
      "tree": "84a77def76610b59a2abfed87f548ab42b64da84",
      "parents": [
        "6d8e40a85ef72a0514ebd00748eb18cab432b200"
      ],
      "author": {
        "name": "Masami Hiramatsu",
        "email": "masami.hiramatsu.pt@hitachi.com",
        "time": "Fri Dec 03 18:53:57 2010 +0900"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Dec 06 17:59:29 2010 +0100"
      },
      "message": "kprobes: Cleanup disabling and unregistering path\n\nMerge disabling kprobe to unregistering kprobe function\nand add comments for disabing/unregistring process.\n\nCurrent unregistering code disables(disarms) kprobes after\nchecking target kprobe status. This patch changes it to\ndisabling kprobe first after that it changing the kprobe\u0027s\nstate. This allows to share probe disabling code between\ndisable_kprobe() and unregister_kprobe().\n\nSigned-off-by: Masami Hiramatsu \u003cmasami.hiramatsu.pt@hitachi.com\u003e\nCc: Rusty Russell \u003crusty@rustcorp.com.au\u003e\nCc: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nCc: Ananth N Mavinakayanahalli \u003cananth@in.ibm.com\u003e\nCc: Jason Baron \u003cjbaron@redhat.com\u003e\nCc: Mathieu Desnoyers \u003cmathieu.desnoyers@efficios.com\u003e\nCc: 2nddept-manager@sdl.hitachi.co.jp\nLKML-Reference: \u003c20101203095356.2961.30152.stgit@ltc236.sdl.hitachi.co.jp\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "6d8e40a85ef72a0514ebd00748eb18cab432b200",
      "tree": "83c393b0918e3e8093a894b2f1405fc3c885ae94",
      "parents": [
        "e4b546a3643fbfc510d5ef7db538e4d3ab00effb"
      ],
      "author": {
        "name": "Masami Hiramatsu",
        "email": "masami.hiramatsu.pt@hitachi.com",
        "time": "Fri Dec 03 18:53:50 2010 +0900"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Dec 06 17:59:29 2010 +0100"
      },
      "message": "kprobes: Rename old_p to more appropriate name\n\nRename irrelevant uses of \"old_p\" to more appropriate names.\nOriginally, \"old_p\" just meant \"the old kprobe on given address\"\nbut current code uses that name as \"just another kprobe\" or\nsomething like that. This patch renames those pointer names\nto more appropriate one for maintainability.\n\nSigned-off-by: Masami Hiramatsu \u003cmasami.hiramatsu.pt@hitachi.com\u003e\nCc: Rusty Russell \u003crusty@rustcorp.com.au\u003e\nCc: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nCc: Ananth N Mavinakayanahalli \u003cananth@in.ibm.com\u003e\nCc: Jason Baron \u003cjbaron@redhat.com\u003e\nCc: Mathieu Desnoyers \u003cmathieu.desnoyers@efficios.com\u003e\nCc: 2nddept-manager@sdl.hitachi.co.jp\nLKML-Reference: \u003c20101203095350.2961.48110.stgit@ltc236.sdl.hitachi.co.jp\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "c980d1091810df13f21aabbce545fd98f545bbf7",
      "tree": "ccf26c6f97ac4965dee6daa7a91dde6b4108b94e",
      "parents": [
        "6844c09d849aeb00e8ddfe9525e8567a531c22d0"
      ],
      "author": {
        "name": "Arnaldo Carvalho de Melo",
        "email": "acme@redhat.com",
        "time": "Sat Dec 04 23:02:20 2010 -0200"
      },
      "committer": {
        "name": "Arnaldo Carvalho de Melo",
        "email": "acme@redhat.com",
        "time": "Sat Dec 04 23:02:20 2010 -0200"
      },
      "message": "perf events: Make sample_type identity fields available in all PERF_RECORD_ events\n\nIf perf_event_attr.sample_id_all is set it will add the PERF_SAMPLE_ identity\ninfo:\n\nTID, TIME, ID, CPU, STREAM_ID\n\nAs a trailer, so that older perf tools can process new files, just ignoring the\nextra payload.\n\nWith this its possible to do further analysis on problems in the event stream,\nlike detecting reordering of MMAP and FORK events, etc.\n\nV2: Fixup header size in comm, mmap and task processing, as we have to take into\naccount different sample_types for each matching event, noticed by Thomas Gleixner.\n\nThomas also noticed a problem in v2 where if we didn\u0027t had space in the buffer we\nwouldn\u0027t restore the header size.\n\nTested-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nReviewed-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nAcked-by: Ian Munsie \u003cimunsie@au1.ibm.com\u003e\nAcked-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nAcked-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nCc: Frédéric Weisbecker \u003cfweisbec@gmail.com\u003e\nCc: Ian Munsie \u003cimunsie@au1.ibm.com\u003e\nCc: Mike Galbraith \u003cefault@gmx.de\u003e\nCc: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: Paul Mackerras \u003cpaulus@samba.org\u003e\nCc: Stephane Eranian \u003ceranian@google.com\u003e\nCc: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nLKML-Reference: \u003cnew-submission\u003e\nSigned-off-by: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\n"
    },
    {
      "commit": "6844c09d849aeb00e8ddfe9525e8567a531c22d0",
      "tree": "6377067b6979199b249596aa6f3c9204d38cb8eb",
      "parents": [
        "614b6780eb0c393d2fb49ff62d61f29b877bd07e"
      ],
      "author": {
        "name": "Arnaldo Carvalho de Melo",
        "email": "acme@redhat.com",
        "time": "Fri Dec 03 16:36:35 2010 -0200"
      },
      "committer": {
        "name": "Arnaldo Carvalho de Melo",
        "email": "acme@redhat.com",
        "time": "Sat Dec 04 22:56:48 2010 -0200"
      },
      "message": "perf events: Separate the routines handling the PERF_SAMPLE_ identity fields\n\nThose will be made available in sample like events like MMAP, EXEC, etc in a\nfollowup patch. So precalculate the extra id header space and have a separate\nroutine to fill them up.\n\nV2: Thomas noticed that the id header needs to be precalculated at\ninherit_events too:\n\nLKML-Reference: \u003calpine.LFD.2.00.1012031245220.2653@localhost6.localdomain6\u003e\n\nTested-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nReviewed-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nAcked-by: Ian Munsie \u003cimunsie@au1.ibm.com\u003e\nAcked-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nAcked-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nCc: Frédéric Weisbecker \u003cfweisbec@gmail.com\u003e\nCc: Ian Munsie \u003cimunsie@au1.ibm.com\u003e\nCc: Mike Galbraith \u003cefault@gmx.de\u003e\nCc: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: Paul Mackerras \u003cpaulus@samba.org\u003e\nCc: Stephane Eranian \u003ceranian@google.com\u003e\nCc: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nLKML-Reference: \u003c1291318772-30880-2-git-send-email-acme@infradead.org\u003e\nSigned-off-by: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\n"
    },
    {
      "commit": "614b6780eb0c393d2fb49ff62d61f29b877bd07e",
      "tree": "6c366435b7960dfa84f5592486a2fad8f4526205",
      "parents": [
        "e4b546a3643fbfc510d5ef7db538e4d3ab00effb"
      ],
      "author": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Fri Dec 03 16:24:32 2010 -0200"
      },
      "committer": {
        "name": "Arnaldo Carvalho de Melo",
        "email": "acme@redhat.com",
        "time": "Sat Dec 04 22:56:11 2010 -0200"
      },
      "message": "perf events: Fix event inherit fallout of precalculated headers\n\nThe precalculated header size is not updated when an event is inherited. That\nresults in bogus sample entries for all child events. Bug introduced in c320c7b.\n\nCc: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nCc: Ian Munsie \u003cimunsie@au1.ibm.com\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: Mike Galbraith \u003cefault@gmx.de\u003e\nCc: Paul Mackerras \u003cpaulus@samba.org\u003e\nCc: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: Stephane Eranian \u003ceranian@google.com\u003e\nLKML-Reference: \u003calpine.LFD.2.00.1012031245220.2653@localhost6.localdomain6\u003e\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nSigned-off-by: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\n"
    },
    {
      "commit": "33dd94ae1ccbfb7bf0fb6c692bc3d1c4269e6177",
      "tree": "c00535d8fe9b29be84b02d057e41cd63d7fe3b6b",
      "parents": [
        "a0b0f58cdd32ab363a600a294ddaa90f0c32de8c"
      ],
      "author": {
        "name": "Nelson Elhage",
        "email": "nelhage@ksplice.com",
        "time": "Thu Dec 02 14:31:21 2010 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Dec 02 14:51:16 2010 -0800"
      },
      "message": "do_exit(): make sure that we run with get_fs() \u003d\u003d USER_DS\n\nIf a user manages to trigger an oops with fs set to KERNEL_DS, fs is not\notherwise reset before do_exit().  do_exit may later (via mm_release in\nfork.c) do a put_user to a user-controlled address, potentially allowing\na user to leverage an oops into a controlled write into kernel memory.\n\nThis is only triggerable in the presence of another bug, but this\npotentially turns a lot of DoS bugs into privilege escalations, so it\u0027s\nworth fixing.  I have proof-of-concept code which uses this bug along\nwith CVE-2010-3849 to write a zero to an arbitrary kernel address, so\nI\u0027ve tested that this is not theoretical.\n\nA more logical place to put this fix might be when we know an oops has\noccurred, before we call do_exit(), but that would involve changing\nevery architecture, in multiple places.\n\nLet\u0027s just stick it in do_exit instead.\n\n[akpm@linux-foundation.org: update code comment]\nSigned-off-by: Nelson Elhage \u003cnelhage@ksplice.com\u003e\nCc: KOSAKI Motohiro \u003ckosaki.motohiro@jp.fujitsu.com\u003e\nCc: \u003cstable@kernel.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "25c9170ed64a6551beefe9315882f754e14486f4",
      "tree": "655035a70de19a8d88cbd04264bfaebc1af92a5a",
      "parents": [
        "22a5b566c8c442b0b35b3b106795e2f2b3578096"
      ],
      "author": {
        "name": "Kenji Kaneshige",
        "email": "kaneshige.kenji@jp.fujitsu.com",
        "time": "Tue Nov 30 17:36:08 2010 +0900"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Wed Dec 01 08:44:26 2010 +0100"
      },
      "message": "genirq: Fix incorrect proc spurious output\n\nSince commit a1afb637(switch /proc/irq/*/spurious to seq_file) all\n/proc/irq/XX/spurious files show the information of irq 0.\n\nCurrent irq_spurious_proc_open() passes on NULL as the 3rd argument,\nwhich is used as an IRQ number in irq_spurious_proc_show(), to the\nsingle_open(). Because of this, all the /proc/irq/XX/spurious file\nshows IRQ 0 information regardless of the IRQ number.\n\nTo fix the problem, irq_spurious_proc_open() must pass on the\nappropreate data (IRQ number) to single_open().\n\nSigned-off-by: Kenji Kaneshige \u003ckaneshige.kenji@jp.fujitsu.com\u003e\nReviewed-by: Yong Zhang \u003cyong.zhang0@gmail.com\u003e\nLKML-Reference: \u003c4CF4B778.90604@jp.fujitsu.com\u003e\nCc: stable@kernel.org [2.6.33+]\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\n\n"
    },
    {
      "commit": "c320c7b7d380e630f595de1236d9d085b035d5b4",
      "tree": "e1544fa8cc259a1d300fac9104dd3c46458572fe",
      "parents": [
        "068ffaa8bfb67c2ddb3ecaf38cc90f94a1a92fe3"
      ],
      "author": {
        "name": "Arnaldo Carvalho de Melo",
        "email": "acme@redhat.com",
        "time": "Wed Oct 20 12:50:11 2010 -0200"
      },
      "committer": {
        "name": "Arnaldo Carvalho de Melo",
        "email": "acme@redhat.com",
        "time": "Tue Nov 30 19:19:04 2010 -0200"
      },
      "message": "perf events: Precalculate the header space for PERF_SAMPLE_ fields\n\nPERF_SAMPLE_{CALLCHAIN,RAW} have variable lenghts per sample, but the others\ncan be precalculated, reducing a bit the per sample cost.\n\nAcked-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: Frédéric Weisbecker \u003cfweisbec@gmail.com\u003e\nCc: Ian Munsie \u003cimunsie@au1.ibm.com\u003e\nCc: Mike Galbraith \u003cefault@gmx.de\u003e\nCc: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: Paul Mackerras \u003cpaulus@samba.org\u003e\nCc: Stephane Eranian \u003ceranian@google.com\u003e\nLKML-Reference: \u003cnew-submission\u003e\nSigned-off-by: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\n"
    },
    {
      "commit": "364829b1263b44aa60383824e4c1289d83d78ca7",
      "tree": "daaaf4cecd56ff9f3f9a2eadc69d0cc4f361c607",
      "parents": [
        "60e677373be9c0bf7c9a22937601d5a40e51c042"
      ],
      "author": {
        "name": "Slava Pestov",
        "email": "slavapestov@google.com",
        "time": "Wed Nov 24 15:13:16 2010 -0800"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Tue Nov 30 12:18:17 2010 -0500"
      },
      "message": "tracing: Fix panic when lseek() called on \"trace\" opened for writing\n\nThe file_ops struct for the \"trace\" special file defined llseek as seq_lseek().\nHowever, if the file was opened for writing only, seq_open() was not called,\nand the seek would dereference a null pointer, file-\u003eprivate_data.\n\nThis patch introduces a new wrapper for seq_lseek() which checks if the file\ndescriptor is opened for reading first. If not, it does nothing.\n\nCc: \u003cstable@kernel.org\u003e\nSigned-off-by: Slava Pestov \u003cslavapestov@google.com\u003e\nLKML-Reference: \u003c1290640396-24179-1-git-send-email-slavapestov@google.com\u003e\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "a9e40a2493d805224f900d839b06188639b7ccd6",
      "tree": "b33c9477a0728f6299a00a3e817aa26872019576",
      "parents": [
        "75f5d2c9bd36047364d1fb35c0720ab37df3be02",
        "ee6dcfa40a50fe12a3ae0fb4d2653c66c3ed6556"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun Nov 28 12:25:02 2010 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun Nov 28 12:25:02 2010 -0800"
      },
      "message": "Merge branch \u0027perf-fixes-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip\n\n* \u0027perf-fixes-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:\n  perf: Fix the software context switch counter\n  perf, x86: Fixup Kconfig deps\n  x86, perf, nmi: Disable perf if counters are not accessible\n  perf: Fix inherit vs. context rotation bug\n"
    },
    {
      "commit": "03187552762cba3db20d22bc7b0fe2d3642bc15b",
      "tree": "813ea6cbb302e08e71e2ba9ee7e71fb1ce7db9ce",
      "parents": [
        "fbe6c4047f011d76be83bc2380531cd4fb6aa0e6",
        "c0deae8c9587419ab13874b74425ce2eb2e18508"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Nov 27 07:29:20 2010 +0900"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Nov 27 07:29:20 2010 +0900"
      },
      "message": "Merge branch \u0027timers-fixes-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip\n\n* \u0027timers-fixes-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:\n  posix-cpu-timers: Rcu_read_lock/unlock protect find_task_by_vpid call\n"
    },
    {
      "commit": "d2f30c73aba19be828c759edcd21140390cd06e4",
      "tree": "b9bad75b11e21680f8f9443f0143d62be23cae78",
      "parents": [
        "1b065fdff1c950d96e4c571abe873a9a8aaa6d51",
        "02a9d03772aa1ff33a26180a2da0bfb191240eda"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Nov 27 07:28:17 2010 +0900"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Nov 27 07:28:17 2010 +0900"
      },
      "message": "Merge branch \u0027perf-fixes-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip\n\n* \u0027perf-fixes-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:\n  perf symbols: Remove incorrect open-coded container_of()\n  perf record: Handle restrictive permissions in /proc/{kallsyms,modules}\n  x86/kprobes: Prevent kprobes to probe on save_args()\n  irq_work: Drop cmpxchg() result\n  perf: Fix owner-list vs exit\n  x86, hw_nmi: Move backtrace_mask declaration under ARCH_HAS_NMI_WATCHDOG\n  tracing: Fix recursive user stack trace\n  perf,hw_breakpoint: Initialize hardware api earlier\n  x86: Ignore trap bits on single step exceptions\n  tracing: Force arch_local_irq_* notrace for paravirt\n  tracing: Fix module use of trace_bprintk()\n"
    },
    {
      "commit": "1b065fdff1c950d96e4c571abe873a9a8aaa6d51",
      "tree": "603d792daf79ae9a0161d97191202bf5d796dc7d",
      "parents": [
        "b76a1e4f2a2f95354f4567c8eb420fd4cb68fc26",
        "d5ad140bc1505a98c0f040937125bfcbb508078f"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Nov 27 07:27:54 2010 +0900"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Nov 27 07:27:54 2010 +0900"
      },
      "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  sched: Fix idle balancing\n  sched: Fix volanomark performance regression\n"
    },
    {
      "commit": "004417a6d468e24399e383645c068b498eed84ad",
      "tree": "ce3f4ea25186080faec7a7be6648b177e526c436",
      "parents": [
        "5ef428c4b5950dddce7311e84321abb3aff7ebb0"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "a.p.zijlstra@chello.nl",
        "time": "Thu Nov 25 18:38:29 2010 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Nov 26 15:14:56 2010 +0100"
      },
      "message": "perf, arch: Cleanup perf-pmu init vs lockup-detector\n\nThe perf hardware pmu got initialized at various points in the boot,\nsome before early_initcall() some after (notably arch_initcall).\n\nThe problem is that the NMI lockup detector is ran from early_initcall()\nand expects the hardware pmu to be present.\n\nSanitize this by moving all architecture hardware pmu implementations to\ninitialize at early_initcall() and move the lockup detector to an explicit\ninitcall right after that.\n\nCc: paulus \u003cpaulus@samba.org\u003e\nCc: davem \u003cdavem@davemloft.net\u003e\nCc: Michael Cree \u003cmcree@orcon.net.nz\u003e\nCc: Deng-Cheng Zhu \u003cdengcheng.zhu@gmail.com\u003e\nAcked-by: Paul Mundt \u003clethal@linux-sh.org\u003e\nAcked-by: Will Deacon \u003cwill.deacon@arm.com\u003e\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nLKML-Reference: \u003c1290707759.2145.119.camel@laptop\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "963988262c3c8f4234f64a0dde59446a295e07bb",
      "tree": "4bdb97b340fe0432f7259bfcc7b64b4bc8d65c2d",
      "parents": [
        "5d508e820a23d9b6e8a149dfaa8ba5cbedf3d95c"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "a.p.zijlstra@chello.nl",
        "time": "Wed Nov 24 18:55:29 2010 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Nov 26 15:14:55 2010 +0100"
      },
      "message": "perf: Ignore non-sampling overflows\n\nSome arch implementations call perf_event_overflow() by \u0027accident\u0027,\nignore this.\n\nReported-by: Francis Moreau \u003cfrancis.moro@gmail.com\u003e\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nLKML-Reference: \u003cnew-submission\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "5d508e820a23d9b6e8a149dfaa8ba5cbedf3d95c",
      "tree": "f11741710e4a2bb6b5c50e0d0b8c8cea0e6d9d6d",
      "parents": [
        "2e939d1da9b5628642314c1e68b4319e61263c94"
      ],
      "author": {
        "name": "Franck Bui-Huu",
        "email": "fbuihuu@gmail.com",
        "time": "Tue Nov 23 16:21:45 2010 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Nov 26 15:14:55 2010 +0100"
      },
      "message": "perf: Don\u0027t bother to init the hrtimer for no SW sampling counters\n\nSigned-off-by: Franck Bui-Huu \u003cfbuihuu@gmail.com\u003e\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nLKML-Reference: \u003c1290525705-6265-3-git-send-email-fbuihuu@gmail.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "2e939d1da9b5628642314c1e68b4319e61263c94",
      "tree": "6f950949dcacdb1332b8001351fb317777df4930",
      "parents": [
        "6c7e550f13f8ad82efb6a5653ae628c2543c1768"
      ],
      "author": {
        "name": "Franck Bui-Huu",
        "email": "fbuihuu@gmail.com",
        "time": "Tue Nov 23 16:21:44 2010 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Nov 26 15:14:55 2010 +0100"
      },
      "message": "perf: Limit event refresh to sampling event\n\nSigned-off-by: Franck Bui-Huu \u003cfbuihuu@gmail.com\u003e\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nLKML-Reference: \u003c1290525705-6265-2-git-send-email-fbuihuu@gmail.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "6c7e550f13f8ad82efb6a5653ae628c2543c1768",
      "tree": "1c994b999648fbe51ffe4312e2d6827aedd5f012",
      "parents": [
        "35d3778a8fe3c8b4a7513565e34d3bde00ce43ec"
      ],
      "author": {
        "name": "Franck Bui-Huu",
        "email": "fbuihuu@gmail.com",
        "time": "Tue Nov 23 16:21:43 2010 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Nov 26 15:14:54 2010 +0100"
      },
      "message": "perf: Introduce is_sampling_event()\n\nand use it when appropriate.\n\nSigned-off-by: Franck Bui-Huu \u003cfbuihuu@gmail.com\u003e\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nLKML-Reference: \u003c1290525705-6265-1-git-send-email-fbuihuu@gmail.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "6c869e772c72d509d0db243a56c205ef48a29baf",
      "tree": "9a290f1742526a8816f94560cb09bc0a09c910de",
      "parents": [
        "e4e91ac410356da3a518188f371e9d3b52ee38ee",
        "ee6dcfa40a50fe12a3ae0fb4d2653c66c3ed6556"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Nov 26 15:07:02 2010 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Nov 26 15:07:02 2010 +0100"
      },
      "message": "Merge branch \u0027perf/urgent\u0027 into perf/core\n\nConflicts:\n\tarch/x86/kernel/apic/hw_nmi.c\n\nMerge reason: Resolve conflict, queue up dependent patch.\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "e4e91ac410356da3a518188f371e9d3b52ee38ee",
      "tree": "e1b33743a08847030285d34bcb2eb8ba90f30a0c",
      "parents": [
        "ea7872b9d6a81101f6ba0ec141544a62fea35876",
        "3561d43fd289f590fdae672e5eb831b8d5cf0bf6"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Nov 26 15:04:42 2010 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Nov 26 15:04:47 2010 +0100"
      },
      "message": "Merge commit \u0027v2.6.37-rc3\u0027 into perf/core\n\nMerge reason: Pick up latest fixes.\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "61ab25447ad6334a74e32f60efb135a3467223f8",
      "tree": "f0cda4931a7ba79609b3b1b4c2e0fda31851e14b",
      "parents": [
        "49f4138346b3cec2706adff02658fe27ceb1e46f"
      ],
      "author": {
        "name": "Heiko Carstens",
        "email": "heiko.carstens@de.ibm.com",
        "time": "Fri Nov 26 13:00:59 2010 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Nov 26 15:03:12 2010 +0100"
      },
      "message": "nohz: Fix printk_needs_cpu() return value on offline cpus\n\nThis patch fixes a hang observed with 2.6.32 kernels where timers got enqueued\non offline cpus.\n\nprintk_needs_cpu() may return 1 if called on offline cpus. When a cpu gets\nofflined it schedules the idle process which, before killing its own cpu, will\ncall tick_nohz_stop_sched_tick(). That function in turn will call\nprintk_needs_cpu() in order to check if the local tick can be disabled. On\noffline cpus this function should naturally return 0 since regardless if the\ntick gets disabled or not the cpu will be dead short after. That is besides the\nfact that __cpu_disable() should already have made sure that no interrupts on\nthe offlined cpu will be delivered anyway.\n\nIn this case it prevents tick_nohz_stop_sched_tick() to call\nselect_nohz_load_balancer(). No idea if that really is a problem. However what\nmade me debug this is that on 2.6.32 the function get_nohz_load_balancer() is\nused within __mod_timer() to select a cpu on which a timer gets enqueued. If\nprintk_needs_cpu() returns 1 then the nohz_load_balancer cpu doesn\u0027t get\nupdated when a cpu gets offlined. It may contain the cpu number of an offline\ncpu. In turn timers get enqueued on an offline cpu and not very surprisingly\nthey never expire and cause system hangs.\n\nThis has been observed 2.6.32 kernels. On current kernels __mod_timer() uses\nget_nohz_timer_target() which doesn\u0027t have that problem. However there might be\nother problems because of the too early exit tick_nohz_stop_sched_tick() in\ncase a cpu goes offline.\n\nEasiest way to fix this is just to test if the current cpu is offline and call\nprintk_tick() directly which clears the condition.\n\nAlternatively I tried a cpu hotplug notifier which would clear the condition,\nhowever between calling the notifier function and printk_needs_cpu() something\ncould have called printk() again and the problem is back again. This seems to\nbe the safest fix.\n\nSigned-off-by: Heiko Carstens \u003cheiko.carstens@de.ibm.com\u003e\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: stable@kernel.org\nLKML-Reference: \u003c20101126120235.406766476@de.ibm.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "49f4138346b3cec2706adff02658fe27ceb1e46f",
      "tree": "20259bf8196685766e8b4d3ae761102a0f635913",
      "parents": [
        "d5ad140bc1505a98c0f040937125bfcbb508078f"
      ],
      "author": {
        "name": "Heiko Carstens",
        "email": "heiko.carstens@de.ibm.com",
        "time": "Fri Nov 26 13:42:47 2010 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Nov 26 15:03:11 2010 +0100"
      },
      "message": "printk: Fix wake_up_klogd() vs cpu hotplug\n\nwake_up_klogd() may get called from preemptible context but uses\n__raw_get_cpu_var() to write to a per cpu variable. If it gets preempted\nbetween getting the address and writing to it, the cpu in question could be\noffline if the process gets scheduled back and hence writes to the per cpu data\nof an offline cpu.\n\nThis buggy behaviour was introduced with fa33507a \"printk: robustify\nprintk, fix #2\" which was supposed to fix a \"using smp_processor_id() in\npreemptible\" warning.\n\nLet\u0027s use this_cpu_write() instead which disables preemption and makes sure\nthat the outlined scenario cannot happen.\n\nSigned-off-by: Heiko Carstens \u003cheiko.carstens@de.ibm.com\u003e\nAcked-by: Eric Dumazet \u003ceric.dumazet@gmail.com\u003e\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nLKML-Reference: \u003c20101126124247.GC7023@osiris.boeblingen.de.ibm.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "ee6dcfa40a50fe12a3ae0fb4d2653c66c3ed6556",
      "tree": "e77ac01a6bf2106f7a2c22f00e43cb2960d72ba5",
      "parents": [
        "cc2067a51424dd25c10c1b1230b4222d8baec94d"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "a.p.zijlstra@chello.nl",
        "time": "Fri Nov 26 13:49:04 2010 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Nov 26 15:00:59 2010 +0100"
      },
      "message": "perf: Fix the software context switch counter\n\nStephane noticed that because the perf_sw_event() call is inside the\nperf_event_task_sched_out() call it won\u0027t get called unless we\nhave a per-task counter.\n\nReported-by: Stephane Eranian \u003ceranian@google.com\u003e\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nLKML-Reference: \u003cnew-submission\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "dddd3379a619a4cb8247bfd3c94ca9ae3797aa2e",
      "tree": "9b090784b46956d236b51c4addfcd97f575f205e",
      "parents": [
        "02a9d03772aa1ff33a26180a2da0bfb191240eda"
      ],
      "author": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Wed Nov 24 10:05:55 2010 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Nov 26 15:00:56 2010 +0100"
      },
      "message": "perf: Fix inherit vs. context rotation bug\n\nIt was found that sometimes children of tasks with inherited events had\none extra event. Eventually it turned out to be due to the list rotation\nno being exclusive with the list iteration in the inheritance code.\n\nCure this by temporarily disabling the rotation while we inherit the events.\n\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nLKML-Reference: \u003cnew-submission\u003e\nCc: \u003cstable@kernel.org\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "e5cba24e3f018d4beb6acd101a82483c98f91ce7",
      "tree": "687339b9d285c7d19d5c521cae9a30bd9b389631",
      "parents": [
        "698fd6a2c3ca05ec796072defb5c415289a86cdc"
      ],
      "author": {
        "name": "Hitoshi Mitake",
        "email": "mitake@dcl.info.waseda.ac.jp",
        "time": "Fri Nov 26 12:06:44 2010 +0100"
      },
      "committer": {
        "name": "Tejun Heo",
        "email": "tj@kernel.org",
        "time": "Fri Nov 26 12:06:44 2010 +0100"
      },
      "message": "workqueue: check the allocation of system_unbound_wq\n\nI found a trivial bug on initialization of workqueue.\nCurrent init_workqueues doesn\u0027t check the result of\nallocation of system_unbound_wq, this should be checked\nlike other queues.\n\nSigned-off-by: Hitoshi Mitake \u003cmitake@dcl.info.waseda.ac.jp\u003e\nCc: Arjan van de Ven \u003carjan@linux.intel.com\u003e\nCc: David Howells \u003cdhowells@redhat.com\u003e\nSigned-off-by: Tejun Heo \u003ctj@kernel.org\u003e\n"
    },
    {
      "commit": "33e0d57f5d2f079104611be9f3fccc27ef2c6b24",
      "tree": "8903edabbf327e9244f8751eff179f967344c27d",
      "parents": [
        "864ee6cb22fd64c1f4fba8ea3f390ffd8816b563"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Nov 19 11:54:40 2010 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Nov 19 11:54:40 2010 -0800"
      },
      "message": "Revert \"kernel: make /proc/kallsyms mode 400 to reduce ease of attacking\"\n\nThis reverts commit 59365d136d205cc20fe666ca7f89b1c5001b0d5a.\n\nIt turns out that this can break certain existing user land setups.\nQuoth Sarah Sharp:\n\n \"On Wednesday, I updated my branch to commit 460781b from linus\u0027 tree,\n  and my box would not boot.  klogd segfaulted, which stalled the whole\n  system.\n\n  At first I thought it actually hung the box, but it continued booting\n  after 5 minutes, and I was able to log in.  It dropped back to the\n  text console instead of the graphical bootup display for that period\n  of time.  dmesg surprisingly still works.  I\u0027ve bisected the problem\n  down to this commit (commit 59365d136d205cc20fe666ca7f89b1c5001b0d5a)\n\n  The box is running klogd 1.5.5ubuntu3 (from Jaunty).  Yes, I know\n  that\u0027s old.  I read the bit in the commit about changing the\n  permissions of kallsyms after boot, but if I can\u0027t boot that doesn\u0027t\n  help.\"\n\nSo let\u0027s just keep the old default, and encourage distributions to do\nthe \"chmod -r /proc/kallsyms\" in their bootup scripts.  This is not\nworth a kernel option to change default behavior, since it\u0027s so easily\ndone in user space.\n\nReported-and-bisected-by: Sarah Sharp \u003csarah.a.sharp@linux.intel.com\u003e\nCc: Marcus Meissner \u003cmeissner@suse.de\u003e\nCc: Tejun Heo \u003ctj@kernel.org\u003e\nCc: Eugene Teo \u003ceugeneteo@kernel.org\u003e\nCc: Jesper Juhl \u003cjj@chaosbits.net\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "042957801626465492b9428860de39a3cb2a8219",
      "tree": "b0997862babd5e474c500b1b4c522f3a03842106",
      "parents": [
        "45677454dd6d128608117abe7dcd2bdfdd7cdf72"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Fri Nov 12 22:32:11 2010 -0500"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Fri Nov 19 10:18:47 2010 -0500"
      },
      "message": "tracing/events: Show real number in array fields\n\nCurrently we have in something like the sched_switch event:\n\n  field:char prev_comm[TASK_COMM_LEN];\toffset:12;\tsize:16;\tsigned:1;\n\nWhen a userspace tool such as perf tries to parse this, the\nTASK_COMM_LEN is meaningless. This is done because the TRACE_EVENT() macro\nsimply uses a #len to show the string of the length. When the length is\nan enum, we get a string that means nothing for tools.\n\nBy adding a static buffer and a mutex to protect it, we can store the\nstring into that buffer with snprintf and show the actual number.\nNow we get:\n\n  field:char prev_comm[16];       offset:12;      size:16;        signed:1;\n\nSomething much more useful.\n\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "ae51ce9061b1ddc0fde363913c932bee5b9bc5fd",
      "tree": "40fd3d633714d2a53fdbd2bdd172fb61232d999a",
      "parents": [
        "072b198a4ad48bd722ec6d203d65422a4698eae7",
        "423478cde453eebdfcfebf4b8d378d8f5d49b853"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Nov 18 20:07:12 2010 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Nov 18 20:07:12 2010 +0100"
      },
      "message": "Merge branch \u0027perf/core\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/frederic/random-tracing into perf/core\n"
    },
    {
      "commit": "2d42dc3feb6649c0e08641b0a6f0e0bad22aeeb2",
      "tree": "919c0b1a42789de7b4fc0f029b0698426ac98b03",
      "parents": [
        "70b99eff756e8995b607a9d33f242c1e4f480f32",
        "e3839ed8e89e79202c0402ac46965c0686897890"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Nov 18 08:24:58 2010 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Nov 18 08:24:58 2010 -0800"
      },
      "message": "Merge branch \u0027for_linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/jwessel/linux-2.6-kgdb\n\n* \u0027for_linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/jwessel/linux-2.6-kgdb:\n  kgdb,ppc: Fix regression in evr register handling\n  kgdb,x86: fix regression in detach handling\n  kdb: fix crash when KDB_BASE_CMD_MAX is exceeded\n  kdb: fix memory leak in kdb_main.c\n"
    },
    {
      "commit": "61c32659b12c44e62de32fbf99f7e4ca783dc38b",
      "tree": "231c285da4178f7602deb75241b3bb5b02caf898",
      "parents": [
        "9c0729dc8062bed96189bd14ac6d4920f3958743"
      ],
      "author": {
        "name": "Frederic Weisbecker",
        "email": "fweisbec@gmail.com",
        "time": "Thu Nov 18 01:39:17 2010 +0100"
      },
      "committer": {
        "name": "Frederic Weisbecker",
        "email": "fweisbec@gmail.com",
        "time": "Thu Nov 18 14:37:40 2010 +0100"
      },
      "message": "tracing: New flag to allow non privileged users to use a trace event\n\nThis adds a new trace event internal flag that allows them to be\nused in perf by non privileged users in case of task bound tracing.\n\nThis is desired for syscalls tracepoint because they don\u0027t leak\nglobal system informations, like some other tracepoints.\n\nSigned-off-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\nCc: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nCc: Steven Rostedt \u003crostedt@goodmis.org\u003e\nCc: Li Zefan \u003clizf@cn.fujitsu.com\u003e\nCc: Jason Baron \u003cjbaron@redhat.com\u003e\n"
    },
    {
      "commit": "94e8ba728640dc01375a14e337f3b892bfacbeeb",
      "tree": "b13b06de29ea71dfafd0505736704491e559440b",
      "parents": [
        "8882135bcd332f294df5455747ea43ba9e6f77ad"
      ],
      "author": {
        "name": "Sergio Aguirre",
        "email": "saaguirre@ti.com",
        "time": "Tue Nov 16 12:02:47 2010 -0600"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Nov 18 13:18:47 2010 +0100"
      },
      "message": "irq_work: Drop cmpxchg() result\n\nThe compiler warned us about:\n\n kernel/irq_work.c: In function \u0027irq_work_run\u0027:\n kernel/irq_work.c:148: warning: value computed is not used\n\nDropping the cmpxchg() result is indeed weird, but correct -\nso annotate away the warning.\n\nSigned-off-by: Sergio Aguirre \u003csaaguirre@ti.com\u003e\nCc: Huang Ying \u003cying.huang@intel.com\u003e\nCc: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\nCc: Kyle McMartin \u003ckyle@mcmartin.ca\u003e\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nLKML-Reference: \u003c1289930567-17828-1-git-send-email-saaguirre@ti.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "8882135bcd332f294df5455747ea43ba9e6f77ad",
      "tree": "758f26d26750fd5007e885cc28125f7c1fa24ca6",
      "parents": [
        "fcf48a725a176ba12aa7be64c50190deaa2f86df"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "a.p.zijlstra@chello.nl",
        "time": "Tue Nov 09 19:01:43 2010 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Nov 18 13:18:46 2010 +0100"
      },
      "message": "perf: Fix owner-list vs exit\n\nOleg noticed that a perf-fd keeping a reference on the creating task\nleads to a few funny side effects.\n\nThere\u0027s two different aspects to this:\n\n  - kernel based perf-events, these should not take out\n    a reference on the creating task and appear on the task\u0027s\n    event list since they\u0027re not bound to fds nor visible\n    to userspace.\n\n  - fork() and pthread_create(), these can lead to the creating\n    task dying (and thus the task\u0027s event-list becomming useless)\n    but keeping the list and ref alive until the event is closed.\n\nCombined they lead to malfunction of the ptrace hw_tracepoints.\n\nCure this by not considering kernel based perf_events for the\nowner-list and destroying the owner-list when the owner dies.\n\nReported-by: Oleg Nesterov \u003coleg@redhat.com\u003e\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nAcked-by: Oleg Nesterov \u003coleg@redhat.com\u003e\nLKML-Reference: \u003c1289576883.2084.286.camel@laptop\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "d5ad140bc1505a98c0f040937125bfcbb508078f",
      "tree": "adc1581eb61159675f9163515fd2402f81b586e2",
      "parents": [
        "b5482cfa1c95a188b3054fa33274806add91bbe5"
      ],
      "author": {
        "name": "Nikhil Rao",
        "email": "ncrao@google.com",
        "time": "Wed Nov 17 11:42:04 2010 -0800"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Nov 18 13:12:33 2010 +0100"
      },
      "message": "sched: Fix idle balancing\n\nAn earlier commit reverts idle balancing throttling reset to fix a 30%\nregression in volanomark throughput. We still need to reset idle_stamp\nwhen we pull a task in newidle balance.\n\nReported-by: Alex Shi \u003calex.shi@intel.com\u003e\nSigned-off-by: Nikhil Rao \u003cncrao@google.com\u003e\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nLKML-Reference: \u003c1290022924-3548-1-git-send-email-ncrao@google.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "b5482cfa1c95a188b3054fa33274806add91bbe5",
      "tree": "bcd6091faa23ab203ea9f6f4262a466bf3a696a1",
      "parents": [
        "55f6561c6941713ab5ae9180525b026dd40b7d14"
      ],
      "author": {
        "name": "Alex Shi",
        "email": "alex.shi@intel.com",
        "time": "Tue Nov 16 17:34:02 2010 +0800"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Nov 18 13:11:43 2010 +0100"
      },
      "message": "sched: Fix volanomark performance regression\n\nCommit fab4762 triggers excessive idle balancing, causing a ~30% loss in\nvolanomark throughput. Remove idle balancing throttle reset.\n\nOriginally-by: Alex Shi \u003calex.shi@intel.com\u003e\nSigned-off-by: Mike Galbraith \u003cefault@gmx.de\u003e\nAcked-by: Nikhil Rao \u003cncrao@google.com\u003e\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nLKML-Reference: \u003c1289928732.5169.211.camel@maggy.simson.net\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "fcf48a725a176ba12aa7be64c50190deaa2f86df",
      "tree": "5d611ba5b1eb4dd821c93ca2f9d08078b563305a",
      "parents": [
        "0e2af2a9abf94b408ff70679b692a8644fed4aab",
        "3c502e7a0255d82621ff25d60cc816624830497e"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Nov 18 10:37:51 2010 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Nov 18 10:37:51 2010 +0100"
      },
      "message": "Merge branch \u0027perf/urgent\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/frederic/random-tracing into perf/urgent\n"
    },
    {
      "commit": "5f2b0ba4d94b3ac23cbc4b7f675d98eb677a760a",
      "tree": "32fc744a15b13becdb559963ea982f07ce9a1d37",
      "parents": [
        "a89d4bd055718d3b4ddb380ee22951a1300b4096"
      ],
      "author": {
        "name": "Don Zickus",
        "email": "dzickus@redhat.com",
        "time": "Fri Nov 12 11:22:23 2010 -0500"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Nov 18 09:08:23 2010 +0100"
      },
      "message": "x86, nmi_watchdog: Remove the old nmi_watchdog\n\nNow that we have a new nmi_watchdog that is more generic and\nsits on top of the perf subsystem, we really do not need the old\nnmi_watchdog any more.\n\nIn addition, the old nmi_watchdog doesn\u0027t really work if you are\nusing the default clocksource, hpet.  The old nmi_watchdog code\nrelied on local apic interrupts to determine if the cpu is still\nalive.  With hpet as the clocksource, these interrupts don\u0027t\nincrement any more and the old nmi_watchdog triggers false\npostives.\n\nThis piece removes the old nmi_watchdog code and stubs out any\nvariables and functions calls.  The stubs are the same ones used\nby the new nmi_watchdog code, so it should be well tested.\n\nSigned-off-by: Don Zickus \u003cdzickus@redhat.com\u003e\nCc: fweisbec@gmail.com\nCc: gorcunov@openvz.org\nLKML-Reference: \u003c1289578944-28564-2-git-send-email-dzickus@redhat.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "a89d4bd055718d3b4ddb380ee22951a1300b4096",
      "tree": "ca7a040a619f7c1fb6a42e77be7ff9147417aa2b",
      "parents": [
        "e53beacd23d9cb47590da6a7a7f6d417b941a994",
        "91e86e560d0b3ce4c5fc64fd2bbb99f856a30a4e"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Nov 18 08:07:36 2010 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Nov 18 08:07:36 2010 +0100"
      },
      "message": "Merge branch \u0027tip/perf/urgent-3\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/rostedt/linux-2.6-trace into perf/urgent\n"
    },
    {
      "commit": "5450d904054b4ed582793ad6ecb5469f03cc4c46",
      "tree": "025a63a774f56b02e001cd49ead0c26f428cbb9b",
      "parents": [
        "85e76ab50aecbdc9011806f2f8943450ccb0d93c"
      ],
      "author": {
        "name": "Jovi Zhang",
        "email": "bookjovi@gmail.com",
        "time": "Wed Nov 10 07:22:18 2010 -0600"
      },
      "committer": {
        "name": "Jason Wessel",
        "email": "jason.wessel@windriver.com",
        "time": "Wed Nov 17 13:54:57 2010 -0600"
      },
      "message": "kdb: fix crash when KDB_BASE_CMD_MAX is exceeded\n\nWhen the number of dyanmic kdb commands exceeds KDB_BASE_CMD_MAX, the\nkernel will fault.\n\nSigned-off-by: Jovi Zhang \u003cbookjovi@gmail.com\u003e\nSigned-off-by: Jason Wessel \u003cjason.wessel@windriver.com\u003e\n"
    },
    {
      "commit": "85e76ab50aecbdc9011806f2f8943450ccb0d93c",
      "tree": "3cf312d0b247a7e2cc40cc5a4bfb35759aa57dda",
      "parents": [
        "e53beacd23d9cb47590da6a7a7f6d417b941a994"
      ],
      "author": {
        "name": "Jovi Zhang",
        "email": "bookjovi@gmail.com",
        "time": "Wed Nov 10 07:22:18 2010 -0600"
      },
      "committer": {
        "name": "Jason Wessel",
        "email": "jason.wessel@windriver.com",
        "time": "Wed Nov 17 13:54:57 2010 -0600"
      },
      "message": "kdb: fix memory leak in kdb_main.c\n\nCall kfree in the error path as well as the success path in kdb_ll().\n\nSigned-off-by: Jovi Zhang \u003cbookjovi@gmail.com\u003e\nSigned-off-by: Jason Wessel \u003cjason.wessel@windriver.com\u003e\n"
    },
    {
      "commit": "451a3c24b0135bce54542009b5fde43846c7cf67",
      "tree": "f0fbbcc155aef2a1ffcb8aa593fe7a966d0e6900",
      "parents": [
        "55f6561c6941713ab5ae9180525b026dd40b7d14"
      ],
      "author": {
        "name": "Arnd Bergmann",
        "email": "arnd@arndb.de",
        "time": "Wed Nov 17 16:26:55 2010 +0100"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Nov 17 08:59:32 2010 -0800"
      },
      "message": "BKL: remove extraneous #include \u003csmp_lock.h\u003e\n\nThe big kernel lock has been removed from all these files at some point,\nleaving only the #include.\n\nRemove this too as a cleanup.\n\nSigned-off-by: Arnd Bergmann \u003carnd@arndb.de\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "59365d136d205cc20fe666ca7f89b1c5001b0d5a",
      "tree": "d2496dd73d699de6987599e5c4651ea5ba7a4857",
      "parents": [
        "1d6636502b23a964f4e5aac5237d1bbb76a9f912"
      ],
      "author": {
        "name": "Marcus Meissner",
        "email": "meissner@suse.de",
        "time": "Tue Nov 16 11:46:03 2010 +0100"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Nov 16 19:06:01 2010 -0800"
      },
      "message": "kernel: make /proc/kallsyms mode 400 to reduce ease of attacking\n\nMaking /proc/kallsyms readable only for root by default makes it\nslightly harder for attackers to write generic kernel exploits by\nremoving one source of knowledge where things are in the kernel.\n\nThis is the second submit, discussion happened on this on first submit\nand mostly concerned that this is just one hole of the sieve ...  but\none of the bigger ones.\n\nChanging the permissions of at least System.map and vmlinux is also\nrequired to fix the same set, but a packaging issue.\n\nTarget of this starter patch and follow ups is removing any kind of\nkernel space address information leak from the kernel.\n\n[ Side note: the default of root-only reading is the \"safe\" value, and\n  it\u0027s easy enough to then override at any time after boot.  The /proc\n  filesystem allows root to change the permissions with a regular\n  chmod, so you can \"revert\" this at run-time by simply doing\n\n    chmod og+r /proc/kallsyms\n\n  as root if you really want regular users to see the kernel symbols.\n  It does help some tools like \"perf\" figure them out without any\n  setup, so it may well make sense in some situations.  - Linus ]\n\nSigned-off-by: Marcus Meissner \u003cmeissner@suse.de\u003e\nAcked-by: Tejun Heo \u003ctj@kernel.org\u003e\nAcked-by: Eugene Teo \u003ceugeneteo@kernel.org\u003e\nReviewed-by: Jesper Juhl \u003cjj@chaosbits.net\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "d33fdee4d090076462cfe25473f7139c3204b16e",
      "tree": "0b7cbabcd57b72baf0e5bbfa2ce97094a518adf0",
      "parents": [
        "1e8703b2e6aefba84dd9633d90a4093ff1200b93",
        "1e5a74059f9059d330744eac84873b1b99657008"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Nov 16 15:20:05 2010 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Nov 16 15:20:05 2010 -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  sched: Fix cross-sched-class wakeup preemption\n  sched: Fix runnable condition for stoptask\n  sched: Use group weight, idle cpu metrics to fix imbalances during idle\n"
    },
    {
      "commit": "1e8703b2e6aefba84dd9633d90a4093ff1200b93",
      "tree": "648c6a9ebd0ecfae1d5ef9c44e9996300b7232cd",
      "parents": [
        "45314915ed8089634144c975357bf5ba17f06ab9",
        "00fafcda1773245a5292f953321ec3f0668c8c28"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Nov 16 15:18:17 2010 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Nov 16 15:18:17 2010 -0800"
      },
      "message": "Merge branch \u0027pm-fixes\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/suspend-2.6\n\n* \u0027pm-fixes\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/suspend-2.6:\n  PM / PM QoS: Fix reversed min and max\n  PM / OPP: Hide OPP configuration when SoCs do not provide an implementation\n  PM: Allow devices to be removed during late suspend and early resume\n"
    },
    {
      "commit": "45314915ed8089634144c975357bf5ba17f06ab9",
      "tree": "6b7db771ee69fff267b781faaab388be162df843",
      "parents": [
        "f281233d3eba15fb225d21ae2e228fd4553d824a",
        "4c115e951d80aff126468adaec7a6c7854f61ab8"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Nov 16 14:31:03 2010 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Nov 16 14:31:03 2010 -0800"
      },
      "message": "Merge branch \u0027futexes-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip\n\n* \u0027futexes-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:\n  futex: Address compiler warnings in exit_robust_list\n"
    },
    {
      "commit": "2ebc8ec86fe0f3f3acf9ba9b41a368f819e7807e",
      "tree": "c0b3d4f14ae6dd98318d78fcf7d16f47954e06a4",
      "parents": [
        "df6e61d4ca268dc8706db38222fde9f04701566c",
        "89480801a17a3069f45169d40b828c8e511aa005"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Nov 16 09:27:13 2010 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Nov 16 09:27:13 2010 -0800"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://git390.marist.edu/pub/scm/linux-2.6\n\n* \u0027for-linus\u0027 of git://git390.marist.edu/pub/scm/linux-2.6:\n  [S390] kprobes: Fix the return address of multiple kretprobes\n  [S390] kprobes: disable interrupts throughout\n  [S390] ftrace: build without frame pointers on s390\n  [S390] mm: add devmem_is_allowed() for STRICT_DEVMEM checking\n  [S390] vmlogrdr: purge after recording is switched off\n  [S390] cio: fix incorrect ccw_device_init_count\n  [S390] tape: add medium state notifications\n  [S390] fix get_user_pages_fast\n"
    },
    {
      "commit": "df6e61d4ca268dc8706db38222fde9f04701566c",
      "tree": "64b3e7571df84ce1e8d6aa1fb4dcb6a69a519d2c",
      "parents": [
        "e53beacd23d9cb47590da6a7a7f6d417b941a994"
      ],
      "author": {
        "name": "Joe Perches",
        "email": "joe@perches.com",
        "time": "Mon Nov 15 21:17:27 2010 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Nov 16 07:56:09 2010 -0800"
      },
      "message": "kernel/sysctl.c: Fix build failure with !CONFIG_PRINTK\n\nSigh...\n\nSigned-off-by: Joe Perches \u003cjoe@perches.com\u003e\nAcked-by: Eric Paris \u003ceparis@redhat.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "12b3052c3ee8f508b2c7ee4ddd63ed03423409d8",
      "tree": "b97d0f209f363cfad94ce9d075312274e349da89",
      "parents": [
        "6800e4c0ea3e96cf78953b8b5743381cb1bb9e37"
      ],
      "author": {
        "name": "Eric Paris",
        "email": "eparis@redhat.com",
        "time": "Mon Nov 15 18:36:29 2010 -0500"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Nov 15 15:40:01 2010 -0800"
      },
      "message": "capabilities/syslog: open code cap_syslog logic to fix build failure\n\nThe addition of CONFIG_SECURITY_DMESG_RESTRICT resulted in a build\nfailure when CONFIG_PRINTK\u003dn.  This is because the capabilities code\nwhich used the new option was built even though the variable in question\ndidn\u0027t exist.\n\nThe patch here fixes this by moving the capabilities checks out of the\nLSM and into the caller.  All (known) LSMs should have been calling the\ncapabilities hook already so it actually makes the code organization\nbetter to eliminate the hook altogether.\n\nSigned-off-by: Eric Paris \u003ceparis@redhat.com\u003e\nAcked-by: James Morris \u003cjmorris@namei.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "00fafcda1773245a5292f953321ec3f0668c8c28",
      "tree": "97aa6f2399b6d0e8335322865c2179059ebca8ab",
      "parents": [
        "43e60861fe9d39740cf5b355f58fecedf0d8e9ba"
      ],
      "author": {
        "name": "Colin Cross",
        "email": "ccross@android.com",
        "time": "Mon Nov 15 22:45:22 2010 +0100"
      },
      "committer": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Mon Nov 15 22:45:22 2010 +0100"
      },
      "message": "PM / PM QoS: Fix reversed min and max\n\npm_qos_get_value had min and max reversed, causing all pm_qos\nrequests to have no effect.\n\nSigned-off-by: Colin Cross \u003cccross@android.com\u003e\nAcked-by: mark \u003cmarkgross@thegnar.org\u003e\nSigned-off-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\nCc: stable@kernel.org\n"
    },
    {
      "commit": "91e86e560d0b3ce4c5fc64fd2bbb99f856a30a4e",
      "tree": "26d7afb8373474a4d44d0eba4130499676c35bc7",
      "parents": [
        "b5908548537ccd3ada258ca5348df7ffc93e5a06"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Wed Nov 10 12:56:12 2010 +0100"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Fri Nov 12 21:20:08 2010 -0500"
      },
      "message": "tracing: Fix recursive user stack trace\n\nThe user stack trace can fault when examining the trace. Which\nwould call the do_page_fault handler, which would trace again,\nwhich would do the user stack trace, which would fault and call\ndo_page_fault again ...\n\nThus this is causing a recursive bug. We need to have a recursion\ndetector here.\n\n[ Resubmitted by Jiri Olsa ]\n\n[ Eric Dumazet recommended using __this_cpu_* instead of __get_cpu_* ]\n\nCc: Eric Dumazet \u003ceric.dumazet@gmail.com\u003e\nSigned-off-by: Jiri Olsa \u003cjolsa@redhat.com\u003e\nLKML-Reference: \u003c1289390172-9730-3-git-send-email-jolsa@redhat.com\u003e\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "8a9f772c14f85e2a580baadc50c194835da2d4e5",
      "tree": "4ac04e465fa8295944f997fb517dc9904bb8e4f3",
      "parents": [
        "25a34554d600b799cbf5159bef372b02d3b4e1c6",
        "cedb4a7d9f6aedb0dce94d6285b69dcb3c10fa05"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Nov 12 08:52:47 2010 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Nov 12 08:52:47 2010 -0800"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://git.kernel.dk/linux-2.6-block\n\n* \u0027for-linus\u0027 of git://git.kernel.dk/linux-2.6-block: (27 commits)\n  block: remove unused copy_io_context()\n  Documentation: remove anticipatory scheduler info\n  block: remove REQ_HARDBARRIER\n  ioprio: rcu_read_lock/unlock protect find_task_by_vpid call (V2)\n  ioprio: fix RCU locking around task dereference\n  block: ioctl: fix information leak to userland\n  block: read i_size with i_size_read()\n  cciss: fix proc warning on attempt to remove non-existant directory\n  bio: take care not overflow page count when mapping/copying user data\n  block: limit vec count in bio_kmalloc() and bio_alloc_map_data()\n  block: take care not to overflow when calculating total iov length\n  block: check for proper length of iov entries in blk_rq_map_user_iov()\n  cciss: remove controllers supported by hpsa\n  cciss: use usleep_range not msleep for small sleeps\n  cciss: limit commands allocated on reset_devices\n  cciss: Use kernel provided PCI state save and restore functions\n  cciss: fix board status waiting code\n  drbd: Removed checks for REQ_HARDBARRIER on incomming BIOs\n  drbd: REQ_HARDBARRIER -\u003e REQ_FUA transition for meta data accesses\n  drbd: Removed the BIO_RW_BARRIER support form the receiver/epoch code\n  ...\n"
    },
    {
      "commit": "28397babba4d2bb4a529859dd1f4fb9a0beb3e48",
      "tree": "d8ec5cb703d3d8e2c7d0e66f25c361c90aee3ae2",
      "parents": [
        "99efb9369c54fa98fc354a9ad4bc8c59f3212ff4",
        "034c6efa4616e5ff6253549e973e7fef12899324"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Nov 12 08:39:52 2010 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Nov 12 08:39:52 2010 -0800"
      },
      "message": "Merge branch \u0027perf-fixes-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip\n\n* \u0027perf-fixes-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:\n  perf, amd: Use kmalloc_node(,__GFP_ZERO) for northbridge structure allocation\n  perf_events: Fix time tracking in samples\n  perf trace: update usage\n  perf trace: update Documentation with new perf trace variants\n  perf trace: live-mode command-line cleanup\n  perf trace record: handle commands correctly\n  perf record: make the record options available outside perf record\n  perf trace scripting: remove system-wide param from shell scripts\n  perf trace scripting: fix some small memory leaks and missing error checks\n  perf: Fix usages of profile_cpu in builtin-top.c to use cpu_list\n  perf, ui: Eliminate stack-smashing protection compiler complaint\n"
    },
    {
      "commit": "eaf06b241b091357e72b76863ba16e89610d31bd",
      "tree": "83bc8667309050b3538630707513574c14c51f37",
      "parents": [
        "203f40a5a030ed4048cd40e3bd9ab5df6c5df589"
      ],
      "author": {
        "name": "Dan Rosenberg",
        "email": "drosenberg@vsecurity.com",
        "time": "Thu Nov 11 14:05:18 2010 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Nov 12 07:55:32 2010 -0800"
      },
      "message": "Restrict unprivileged access to kernel syslog\n\nThe kernel syslog contains debugging information that is often useful\nduring exploitation of other vulnerabilities, such as kernel heap\naddresses.  Rather than futilely attempt to sanitize hundreds (or\nthousands) of printk statements and simultaneously cripple useful\ndebugging functionality, it is far simpler to create an option that\nprevents unprivileged users from reading the syslog.\n\nThis patch, loosely based on grsecurity\u0027s GRKERNSEC_DMESG, creates the\ndmesg_restrict sysctl.  When set to \"0\", the default, no restrictions are\nenforced.  When set to \"1\", only users with CAP_SYS_ADMIN can read the\nkernel syslog via dmesg(8) or other mechanisms.\n\n[akpm@linux-foundation.org: explain the config option in kernel.txt]\nSigned-off-by: Dan Rosenberg \u003cdrosenberg@vsecurity.com\u003e\nAcked-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nAcked-by: Eugene Teo \u003ceugeneteo@kernel.org\u003e\nAcked-by: Kees Cook \u003ckees.cook@canonical.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "38715258aa2e8cd94bd4aafadc544e5104efd551",
      "tree": "1af8d367a68ddcc8868500aa70da21e1eb7ddf5a",
      "parents": [
        "8d056cb965b8fb7c53c564abf28b1962d1061cd3"
      ],
      "author": {
        "name": "Ken Chen",
        "email": "kenchen@google.com",
        "time": "Thu Nov 11 14:05:16 2010 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Nov 12 07:55:31 2010 -0800"
      },
      "message": "latencytop: fix per task accumulator\n\nPer task latencytop accumulator prematurely terminates due to erroneous\nplacement of latency_record_count.  It should be incremented whenever a\nnew record is allocated instead of increment on every latencytop event.\n\nAlso fix search iterator to only search known record events instead of\nblindly searching all pre-allocated space.\n\nSigned-off-by: Ken Chen \u003ckenchen@google.com\u003e\nReviewed-by: Arjan van de Ven \u003carjan@infradead.org\u003e\nCc: \u003cstable@kernel.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "834b40380e93e36f1c9b48ec1d280cebe3d7bd8c",
      "tree": "acb6c23488baaf50e1cabd218738281973616734",
      "parents": [
        "aec04288904a7308f2900926902040e7a69ae2be"
      ],
      "author": {
        "name": "Alexey Khoroshilov",
        "email": "khoroshilov@ispras.ru",
        "time": "Thu Nov 11 14:05:14 2010 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Nov 12 07:55:31 2010 -0800"
      },
      "message": "kernel/range.c: fix clean_sort_range() for the case of full array\n\nclean_sort_range() should return a number of nonempty elements of range\narray, but if the array is full clean_sort_range() returns 0.\n\nThe problem is that the number of nonempty elements is evaluated by\nfinding the first empty element of the array.  If there is no such element\nit returns an initial value of local variable nr_range that is zero.\n\nThe fix is trivial: it changes initial value of nr_range to size of the\narray.\n\nThe bug can lead to loss of information regarding all ranges, since\ntypically returned value of clean_sort_range() is considered as an actual\nnumber of ranges in the array after a series of add/subtract operations.\n\nFound by Analytical Verification project of Linux Verification Center\n(linuxtesting.org), thanks to Alexander Kolosov.\n\nSigned-off-by: Alexey Khoroshilov \u003ckhoroshilov@ispras.ru\u003e\nCc: Yinghai Lu \u003cyinghai@kernel.org\u003e\nCc: \"H. Peter Anvin\" \u003chpa@zytor.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": "3c502e7a0255d82621ff25d60cc816624830497e",
      "tree": "1f30638f22ef9ed748fac1f73cb18169efe49ae7",
      "parents": [
        "6c0aca288e726405b01dacb12cac556454d34b2a"
      ],
      "author": {
        "name": "Jason Wessel",
        "email": "jason.wessel@windriver.com",
        "time": "Thu Nov 04 17:33:01 2010 -0500"
      },
      "committer": {
        "name": "Frederic Weisbecker",
        "email": "fweisbec@gmail.com",
        "time": "Fri Nov 12 14:51:55 2010 +0100"
      },
      "message": "perf,hw_breakpoint: Initialize hardware api earlier\n\nWhen using early debugging, the kernel does not initialize the\nhw_breakpoint API early enough and causes the late initialization of\nthe kernel debugger to fail. The boot arguments are:\n\n    earlyprintk\u003dvga ekgdboc\u003dkbd kgdbwait\n\nThen simply type \"go\" at the kdb prompt and boot. The kernel will\nlater emit the message:\n\n    kgdb: Could not allocate hwbreakpoints\n\nAnd at that point the kernel debugger will cease to work correctly.\n\nThe solution is to initialize the hw_breakpoint at the same time that\nall the other perf call backs are initialized instead of using a\ncore_initcall() initialization which happens well after the kernel\ndebugger can make use of hardware breakpoints.\n\nSigned-off-by: Jason Wessel \u003cjason.wessel@windriver.com\u003e\nCC: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nCC: Ingo Molnar \u003cmingo@elte.hu\u003e\nCC: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nLKML-Reference: \u003c4CD3396D.1090308@windriver.com\u003e\nSigned-off-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\n"
    },
    {
      "commit": "1e5a74059f9059d330744eac84873b1b99657008",
      "tree": "f32f8ac76d5a6c49c1b4cd8f83155af00007fac0",
      "parents": [
        "2d46709082c062cae7cce1a15f8cd4cd81b92d88"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "a.p.zijlstra@chello.nl",
        "time": "Sun Oct 31 12:37:04 2010 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Nov 11 14:37:23 2010 +0100"
      },
      "message": "sched: Fix cross-sched-class wakeup preemption\n\nInstead of dealing with sched classes inside each check_preempt_curr()\nimplementation, pull out this logic into the generic wakeup preemption\npath.\n\nThis fixes a hang in KVM (and others) where we are waiting for the\nstop machine thread to run ...\n\nReported-by: Markus Trippelsdorf \u003cmarkus@trippelsdorf.de\u003e\nTested-by: Marcelo Tosatti \u003cmtosatti@redhat.com\u003e\nTested-by: Sergey Senozhatsky \u003csergey.senozhatsky@gmail.com\u003e\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nLKML-Reference: \u003c1288891946.2039.31.camel@laptop\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "13b9b6e746d753d43270a78dd39694912646b5d9",
      "tree": "e7c4f657a21f7a94daa12b3880f1383ce27b58cf",
      "parents": [
        "034c6efa4616e5ff6253549e973e7fef12899324"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "srostedt@redhat.com",
        "time": "Wed Nov 10 22:19:24 2010 -0500"
      },
      "committer": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Wed Nov 10 22:19:24 2010 -0500"
      },
      "message": "tracing: Fix module use of trace_bprintk()\n\nOn use of trace_printk() there\u0027s a macro that determines if the format\nis static or a variable. If it is static, it defaults to __trace_bprintk()\notherwise it uses __trace_printk().\n\nA while ago, Lai Jiangshan added __trace_bprintk(). In that patch, we\ndiscussed a way to allow modules to use it. The difference between\n__trace_bprintk() and __trace_printk() is that for faster processing,\njust the format and args are stored in the trace instead of running\nit through a sprintf function. In order to do this, the format used\nby the __trace_bprintk() had to be persistent.\n\nSee commit 1ba28e02a18cbdbea123836f6c98efb09cbf59ec\n\nThe problem comes with trace_bprintk() where the module is unloaded.\nThe pointer left in the buffer is still pointing to the format.\n\nTo solve this issue, the formats in the module were copied into kernel\ncore. If the same format was used, they would use the same copy (to prevent\nmemory leak). This all worked well until we tried to merge everything.\n\nAt the time this was written, Lai Jiangshan, Frederic Weisbecker,\nIngo Molnar and myself were all touching the same code. When this was\nmerged, we lost the part of it that was in module.c. This kept out the\ncopying of the formats and unloading the module could cause bad pointers\nleft in the ring buffer.\n\nThis patch adds back (with updates required for current kernel) the\nmodule code that sets up the necessary pointers.\n\nCc: Lai Jiangshan \u003claijs@cn.fujitsu.com\u003e\nCc: Rusty Russell \u003crusty@rustcorp.com.au\u003e\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "43e60861fe9d39740cf5b355f58fecedf0d8e9ba",
      "tree": "7751208ba2b579d22e70bd5043c6b4c63847feb5",
      "parents": [
        "d08a5ace18dce9b18d8eb56bb6c0feef082b1b33"
      ],
      "author": {
        "name": "Mark Brown",
        "email": "broonie@opensource.wolfsonmicro.com",
        "time": "Thu Nov 11 01:51:26 2010 +0100"
      },
      "committer": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Thu Nov 11 01:51:26 2010 +0100"
      },
      "message": "PM / OPP: Hide OPP configuration when SoCs do not provide an implementation\n\nSince the OPP API is only useful with an appropraite SoC-specific\nimplementation there is no point in offering the ability to enable\nthe API on general systems. Provide an ARCH_HAS OPP Kconfig symbol\nwhich masks out the option unless selected by an implementation.\n\nSigned-off-by: Mark Brown \u003cbroonie@opensource.wolfsonmicro.com\u003e\nAcked-by: Nishanth Menon \u003cnm@ti.com\u003e\nAcked-by: Kevin Hilman \u003ckhilman@deeprootsystems.com\u003e\nSigned-off-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\n"
    },
    {
      "commit": "2d46709082c062cae7cce1a15f8cd4cd81b92d88",
      "tree": "8222a0f18aca8a91c7929264d83bf6010a905993",
      "parents": [
        "aae6d3ddd8b90f5b2c8d79a2b914d1706d124193"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "a.p.zijlstra@chello.nl",
        "time": "Tue Nov 09 14:36:52 2010 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Nov 10 23:13:58 2010 +0100"
      },
      "message": "sched: Fix runnable condition for stoptask\n\nHeiko reported that the TASK_RUNNING check is not sufficient for\nCONFIG_PREEMPT\u003dy since we can get preempted with !TASK_RUNNING.\n\nHe suggested adding a -\u003ese.on_rq test to the existing TASK_RUNNING\none, however TASK_RUNNING will always have -\u003ese.on_rq, so we might as\nwell reduce that to a single test.\n\n[ stop tasks should never get preempted, but its good to handle\n  this case correctly should this ever happen ]\n\nReported-by: Heiko Carstens \u003cheiko.carstens@de.ibm.com\u003e\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nLKML-Reference: \u003cnew-submission\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "aae6d3ddd8b90f5b2c8d79a2b914d1706d124193",
      "tree": "b993f929f4b1cc38ef01094ff4504eaf358adb31",
      "parents": [
        "f6614b7bb405a9b35dd28baea989a749492c46b2"
      ],
      "author": {
        "name": "Suresh Siddha",
        "email": "suresh.b.siddha@intel.com",
        "time": "Fri Sep 17 15:02:32 2010 -0700"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Nov 10 23:13:56 2010 +0100"
      },
      "message": "sched: Use group weight, idle cpu metrics to fix imbalances during idle\n\nCurrently we consider a sched domain to be well balanced when the imbalance\nis less than the domain\u0027s imablance_pct. As the number of cores and threads\nare increasing, current values of imbalance_pct (for example 25% for a\nNUMA domain) are not enough to detect imbalances like:\n\na) On a WSM-EP system (two sockets, each having 6 cores and 12 logical threads),\n24 cpu-hogging tasks get scheduled as 13 on one socket and 11 on another\nsocket. Leading to an idle HT cpu.\n\nb) On a hypothetial 2 socket NHM-EX system (each socket having 8 cores and\n16 logical threads), 16 cpu-hogging tasks can get scheduled as 9 on one\nsocket and 7 on another socket. Leaving one core in a socket idle\nwhereas in another socket we have a core having both its HT siblings busy.\n\nWhile this issue can be fixed by decreasing the domain\u0027s imbalance_pct\n(by making it a function of number of logical cpus in the domain), it\ncan potentially cause more task migrations across sched groups in an\noverloaded case.\n\nFix this by using imbalance_pct only during newly_idle and busy\nload balancing. And during idle load balancing, check if there\nis an imbalance in number of idle cpu\u0027s across the busiest and this\nsched_group or if the busiest group has more tasks than its weight that\nthe idle cpu in this_group can pull.\n\nReported-by: Nikhil Rao \u003cncrao@google.com\u003e\nSigned-off-by: Suresh Siddha \u003csuresh.b.siddha@intel.com\u003e\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nLKML-Reference: \u003c1284760952.2676.11.camel@sbsiddha-MOBL3.sc.intel.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "eed01528a45dc4138e9a08064b4b6cc1a9426899",
      "tree": "c7b4256b4158abc74338f14ac2071ec33c52d7e6",
      "parents": [
        "7e55055e5bb00085051ca59c570c83a820e1e0ee"
      ],
      "author": {
        "name": "Stephane Eranian",
        "email": "eranian@google.com",
        "time": "Tue Oct 26 16:08:01 2010 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Nov 10 22:58:39 2010 +0100"
      },
      "message": "perf_events: Fix time tracking in samples\n\nThis patch corrects time tracking in samples. Without this patch\nboth time_enabled and time_running are bogus when user asks for\nPERF_SAMPLE_READ.\n\nOne uses PERF_SAMPLE_READ to sample the values of other counters\nin each sample. Because of multiplexing, it is necessary to know\nboth time_enabled, time_running to be able to scale counts correctly.\n\nIn this second version of the patch, we maintain a shadow\ncopy of ctx-\u003etime which allows us to compute ctx-\u003etime without\ncalling update_context_time() from NMI context. We avoid the\nissue that update_context_time() must always be called with\nctx-\u003elock held.\n\nWe do not keep shadow copies of the other event timings\nbecause if the lead event is overflowing then it is active\nand thus it\u0027s been scheduled in via event_sched_in() in\nwhich case neither tstamp_stopped, tstamp_running can be modified.\n\nThis timing logic only applies to samples when PERF_SAMPLE_READ\nis used.\n\nNote that this patch does not address timing issues related\nto sampling inheritance between tasks. This will be addressed\nin a future patch.\n\nWith this patch, the libpfm4 example task_smpl now reports\ncorrect counts (shown on 2.4GHz Core 2):\n\n$ task_smpl -p 2400000000 -e unhalted_core_cycles:u,instructions_retired:u,baclears  noploop 5\nnoploop for 5 seconds\nIIP:0x000000004006d6 PID:5596 TID:5596 TIME:466,210,211,430 STREAM_ID:33 PERIOD:2,400,000,000 ENA\u003d1,010,157,814 RUN\u003d1,010,157,814 NR\u003d3\n\t2,400,000,254 unhalted_core_cycles:u (33)\n\t2,399,273,744 instructions_retired:u (34)\n\t53,340 baclears (35)\n\nSigned-off-by: Stephane Eranian \u003ceranian@google.com\u003e\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nLKML-Reference: \u003c4cc6e14b.1e07e30a.256e.5190@mx.google.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    }
  ],
  "next": "02e031cbc843b010e72fcc05c76113c688b2860f"
}
