)]}'
{
  "log": [
    {
      "commit": "f310642123e0d32d919c60ca3fab5acd130c4ba3",
      "tree": "f3844152e2e8c0fdd01621a400f84c8a159252a0",
      "parents": [
        "ef1d57599dc904fdb31b8e9b5336350d21a1fde1",
        "5d4c47e0195b989f284907358bd5c268a44b91c7"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun May 29 11:18:09 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun May 29 11:18:09 2011 -0700"
      },
      "message": "Merge branch \u0027idle-release\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/lenb/linux-idle-2.6\n\n* \u0027idle-release\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/lenb/linux-idle-2.6:\n  x86 idle: deprecate mwait_idle() and \"idle\u003dmwait\" cmdline param\n  x86 idle: deprecate \"no-hlt\" cmdline param\n  x86 idle APM: deprecate CONFIG_APM_CPU_IDLE\n  x86 idle floppy: deprecate disable_hlt()\n  x86 idle: EXPORT_SYMBOL(default_idle, pm_idle) only when APM demands it\n  x86 idle: clarify AMD erratum 400 workaround\n  idle governor: Avoid lock acquisition to read pm_qos before entering idle\n  cpuidle: menu: fixed wrapping timers at 4.294 seconds\n"
    },
    {
      "commit": "7467571f4480b273007517b26297c07154c73924",
      "tree": "e933b8cff072f5ec389cd5e20c85e756e49cafeb",
      "parents": [
        "521cb40b0c44418a4fd36dc633f575813d59a43d"
      ],
      "author": {
        "name": "Tero Kristo",
        "email": "tero.kristo@nokia.com",
        "time": "Thu Feb 24 17:19:23 2011 +0200"
      },
      "committer": {
        "name": "Len Brown",
        "email": "len.brown@intel.com",
        "time": "Sun May 29 00:35:47 2011 -0400"
      },
      "message": "cpuidle: menu: fixed wrapping timers at 4.294 seconds\n\nCpuidle menu governor is using u32 as a temporary datatype for storing\nnanosecond values which wrap around at 4.294 seconds. This causes errors\nin predicted sleep times resulting in higher than should be C state\nselection and increased power consumption. This also breaks cpuidle\nstate residency statistics.\n\ncc: stable@kernel.org # .32.x through .39.x\nSigned-off-by: Tero Kristo \u003ctero.kristo@nokia.com\u003e\nSigned-off-by: Len Brown \u003clen.brown@intel.com\u003e\n"
    },
    {
      "commit": "0a9d59a2461477bd9ed143c01af9df3f8f00fa81",
      "tree": "df997d1cfb0786427a0df1fbd6f0640fa4248cf4",
      "parents": [
        "a23ce6da9677d245aa0aadc99f4197030350ab54",
        "795abaf1e4e188c4171e3cd3dbb11a9fcacaf505"
      ],
      "author": {
        "name": "Jiri Kosina",
        "email": "jkosina@suse.cz",
        "time": "Tue Feb 15 10:24:31 2011 +0100"
      },
      "committer": {
        "name": "Jiri Kosina",
        "email": "jkosina@suse.cz",
        "time": "Tue Feb 15 10:24:31 2011 +0100"
      },
      "message": "Merge branch \u0027master\u0027 into for-next\n"
    },
    {
      "commit": "42b16b3fbb5ee4555f5dee6220f3ccaa6e1ebe47",
      "tree": "966c1266afca5dd0e59cace37f7cd49577bdf0e2",
      "parents": [
        "f0940cee222790e6e995a23f25c4ffb23f939a24"
      ],
      "author": {
        "name": "Jesper Juhl",
        "email": "jj@chaosbits.net",
        "time": "Mon Jan 17 00:09:38 2011 +0100"
      },
      "committer": {
        "name": "Jiri Kosina",
        "email": "jkosina@suse.cz",
        "time": "Wed Jan 19 15:43:08 2011 +0100"
      },
      "message": "Kill off warning: ‘inline’ is not at beginning of declaration\n\nFix a bunch of\n\twarning: ‘inline’ is not at beginning of declaration\nmessages when building a \u0027make allyesconfig\u0027 kernel with -Wextra.\n\nThese warnings are trivial to kill, yet rather annoying when building with\n-Wextra.\nThe more we can cut down on pointless crap like this the better (IMHO).\n\nA previous patch to do this for a \u0027allnoconfig\u0027 build has already been\nmerged. This just takes the cleanup a little further.\n\nSigned-off-by: Jesper Juhl \u003cjj@chaosbits.net\u003e\nSigned-off-by: Jiri Kosina \u003cjkosina@suse.cz\u003e\n"
    },
    {
      "commit": "43952886f0b8b3c344c3392b88de067d5fa5419a",
      "tree": "c1a738f11a479246c09976902be5b73aaf731722",
      "parents": [
        "56dbed129df3fdd4caf9018b6e7599ee258a5420",
        "f77cfe4ea21760268c0277fa3e4b02dfd2a2c2f4"
      ],
      "author": {
        "name": "Len Brown",
        "email": "len.brown@intel.com",
        "time": "Wed Jan 12 18:06:19 2011 -0500"
      },
      "committer": {
        "name": "Len Brown",
        "email": "len.brown@intel.com",
        "time": "Wed Jan 12 18:06:19 2011 -0500"
      },
      "message": "Merge branch \u0027cpuidle-perf-events\u0027 into idle-test\n"
    },
    {
      "commit": "56dbed129df3fdd4caf9018b6e7599ee258a5420",
      "tree": "b902491aef3a99efe0d9d49edd0f6e414dba654f",
      "parents": [
        "2a2d31c8dc6f1ebcf5eab1d93a0cb0fb4ed57c7c",
        "f878133bf022717b880d0e0995b8f91436fd605c"
      ],
      "author": {
        "name": "Len Brown",
        "email": "len.brown@intel.com",
        "time": "Wed Jan 12 18:06:06 2011 -0500"
      },
      "committer": {
        "name": "Len Brown",
        "email": "len.brown@intel.com",
        "time": "Wed Jan 12 18:06:06 2011 -0500"
      },
      "message": "Merge branch \u0027linus\u0027 into idle-test\n"
    },
    {
      "commit": "f77cfe4ea21760268c0277fa3e4b02dfd2a2c2f4",
      "tree": "ffd83ee874d1cbe062cd70cade50c017725ba586",
      "parents": [
        "f878133bf022717b880d0e0995b8f91436fd605c"
      ],
      "author": {
        "name": "Thomas Renninger",
        "email": "trenn@suse.de",
        "time": "Fri Jan 07 11:29:44 2011 +0100"
      },
      "committer": {
        "name": "Len Brown",
        "email": "len.brown@intel.com",
        "time": "Wed Jan 12 18:05:16 2011 -0500"
      },
      "message": "cpuidle/x86/perf: fix power:cpu_idle double end events and throw cpu_idle events from the cpuidle layer\n\nCurrently intel_idle and acpi_idle driver show double cpu_idle \"exit idle\"\nevents -\u003e this patch fixes it and makes cpu_idle events throwing less complex.\n\nIt also introduces cpu_idle events for all architectures which use\nthe cpuidle subsystem, namely:\n  - arch/arm/mach-at91/cpuidle.c\n  - arch/arm/mach-davinci/cpuidle.c\n  - arch/arm/mach-kirkwood/cpuidle.c\n  - arch/arm/mach-omap2/cpuidle34xx.c\n  - arch/drivers/acpi/processor_idle.c (for all cases, not only mwait)\n  - arch/x86/kernel/process.c (did throw events before, but was a mess)\n  - drivers/idle/intel_idle.c (did throw events before)\n\nConvention should be:\nFire cpu_idle events inside the current pm_idle function (not somewhere\ndown the the callee tree) to keep things easy.\n\nCurrent possible pm_idle functions in X86:\nc1e_idle, poll_idle, cpuidle_idle_call, mwait_idle, default_idle\n-\u003e this is really easy is now.\n\nThis affects userspace:\nThe type field of the cpu_idle power event can now direclty get\nmapped to:\n/sys/devices/system/cpu/cpuX/cpuidle/stateX/{name,desc,usage,time,...}\ninstead of throwing very CPU/mwait specific values.\nThis change is not visible for the intel_idle driver.\nFor the acpi_idle driver it should only be visible if the vendor\nmisses out C-states in his BIOS.\nAnother (perf timechart) patch reads out cpuidle info of cpu_idle\nevents from:\n/sys/.../cpuidle/stateX/*, then the cpuidle events are mapped\nto the correct C-/cpuidle state again, even if e.g. vendors miss\nout C-states in their BIOS and for example only export C1 and C3.\n-\u003e everything is fine.\n\nSigned-off-by: Thomas Renninger \u003ctrenn@suse.de\u003e\nCC: Robert Schoene \u003crobert.schoene@tu-dresden.de\u003e\nCC: Jean Pihet \u003cj-pihet@ti.com\u003e\nCC: Arjan van de Ven \u003carjan@linux.intel.com\u003e\nCC: Ingo Molnar \u003cmingo@elte.hu\u003e\nCC: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nCC: linux-pm@lists.linux-foundation.org\nCC: linux-acpi@vger.kernel.org\nCC: linux-kernel@vger.kernel.org\nCC: linux-perf-users@vger.kernel.org\nCC: linux-omap@vger.kernel.org\nSigned-off-by: Len Brown \u003clen.brown@intel.com\u003e\n"
    },
    {
      "commit": "d247632c08c674864d438733280422ddb7130ff8",
      "tree": "d9c759480147cd867b72ceb8625554b2e7b550ed",
      "parents": [
        "0aae9f923bcc476a8e4725dd3ac37547b9816ee5"
      ],
      "author": {
        "name": "Len Brown",
        "email": "len.brown@intel.com",
        "time": "Wed Jan 12 02:34:59 2011 -0500"
      },
      "committer": {
        "name": "Len Brown",
        "email": "len.brown@intel.com",
        "time": "Wed Jan 12 12:47:31 2011 -0500"
      },
      "message": "cpuidle: delete NOP CPUIDLE_FLAG_POLL\n\nit serves no purpose\n\nSigned-off-by: Len Brown \u003clen.brown@intel.com\u003e\n"
    },
    {
      "commit": "720f1c3010db6a411358b962a2007969117840bc",
      "tree": "aee96003008b8cb5873d2e0adc4188bdebef2cfa",
      "parents": [
        "d18960494f65ca4fa0d67c865aaca99452070d15"
      ],
      "author": {
        "name": "Thomas Renninger",
        "email": "trenn@suse.de",
        "time": "Fri Jan 07 11:29:43 2011 +0100"
      },
      "committer": {
        "name": "Len Brown",
        "email": "len.brown@intel.com",
        "time": "Wed Jan 12 12:47:31 2011 -0500"
      },
      "message": "cpuidle: Rename X86 specific idle poll state[0] from C0 to POLL\n\nC0 means and is well know as \"not idle\".\nAll documentation out there uses this term as \"running\"/\"not idle\"\nstate. Also Linux userspace tools (e.g. cpufreq-aperf and turbostat)\nshow C0 residency which there is correct, but means something totally\nelse than cpuidle \"POLL\" state.\n\nSigned-off-by: Thomas Renninger \u003ctrenn@suse.de\u003e\nSigned-off-by: Len Brown \u003clen.brown@intel.com\u003e\n"
    },
    {
      "commit": "d8c216cfa57e8a579f41729cbb88c97835d9ac8d",
      "tree": "0085ebf22bf3a05607e512102a3dab065c5514a9",
      "parents": [
        "ddbd550d503c9cdefcd6674a0ef168d57d3f0917"
      ],
      "author": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Sat Jan 08 00:29:20 2011 +0100"
      },
      "committer": {
        "name": "Len Brown",
        "email": "len.brown@intel.com",
        "time": "Wed Jan 12 12:47:30 2011 -0500"
      },
      "message": "cpuidle: Make cpuidle_enable_device() call poll_idle_init()\n\nThe following scenario is possible with the current cpuidle code and\nthe ACPI cpuidle driver:\n(1) acpi_processor_cst_has_changed() is called,\n(2) cpuidle_disable_device() is called,\n(3) cpuidle_remove_state_sysfs() is called to remove the (presumably\n    outdated) states info from sysfs,\n(3) acpi_processor_get_power_info() is called, the first entry in the\n    pr-\u003epower.states[] table is filled with zeros,\n(4) acpi_processor_setup_cpuidle() is called and it doesn\u0027t fill the\n    first entry in pr-\u003epower.states[],\n(5) cpuidle_enable_device() is called,\n(6) __cpuidle_register_device() is _not_ called, since the device has\n    already been registered,\n(7) Consequently, poll_idle_init() is _not_ called either,\n(8) cpuidle_add_state_sysfs() is called to create the sysfs attributes\n    for the new states and it uses the bogus first table entry from\n    acpi_processor_get_power_info() for creating state0.\n\nThis problem is avoided if cpuidle_enable_device()\nunconditionally calls poll_idle_init().\n\nReported-by: Len Brown \u003clen.brown@intel.com\u003e\nSigned-off-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\nSigned-off-by: Len Brown \u003clen.brown@intel.com\u003e\ncc: stable@kernel.org\n"
    },
    {
      "commit": "72eb6a791459c87a0340318840bb3bd9252b627b",
      "tree": "3bfb8ad99f9c7e511f37f72d57b56a2cea06d753",
      "parents": [
        "23d69b09b78c4876e134f104a3814c30747c53f1",
        "55ee4ef30241a62b700f79517e6d5ef2ddbefa67"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Jan 07 17:02:58 2011 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Jan 07 17:02:58 2011 -0800"
      },
      "message": "Merge branch \u0027for-2.6.38\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tj/percpu\n\n* \u0027for-2.6.38\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tj/percpu: (30 commits)\n  gameport: use this_cpu_read instead of lookup\n  x86: udelay: Use this_cpu_read to avoid address calculation\n  x86: Use this_cpu_inc_return for nmi counter\n  x86: Replace uses of current_cpu_data with this_cpu ops\n  x86: Use this_cpu_ops to optimize code\n  vmstat: User per cpu atomics to avoid interrupt disable / enable\n  irq_work: Use per cpu atomics instead of regular atomics\n  cpuops: Use cmpxchg for xchg to avoid lock semantics\n  x86: this_cpu_cmpxchg and this_cpu_xchg operations\n  percpu: Generic this_cpu_cmpxchg() and this_cpu_xchg support\n  percpu,x86: relocate this_cpu_add_return() and friends\n  connector: Use this_cpu operations\n  xen: Use this_cpu_inc_return\n  taskstats: Use this_cpu_ops\n  random: Use this_cpu_inc_return\n  fs: Use this_cpu_inc_return in buffer.c\n  highmem: Use this_cpu_xx_return() operations\n  vmstat: Use this_cpu_inc_return for vm statistics\n  x86: Support for this_cpu_add, sub, dec, inc_return\n  percpu: Generic support for this_cpu_add, sub, dec, inc_return\n  ...\n\nFixed up conflicts: in arch/x86/kernel/{apic/nmi.c, apic/x2apic_uv_x.c, process.c}\nas per Tejun.\n"
    },
    {
      "commit": "25e41933b58777f2d020c3b0186b430ea004ec28",
      "tree": "a4ea8bb52509139b52c35d540928c12b33098f40",
      "parents": [
        "61a0d49c33c7fd57c14895e5b0760bd02b65ac1f"
      ],
      "author": {
        "name": "Thomas Renninger",
        "email": "trenn@suse.de",
        "time": "Mon Jan 03 17:50:44 2011 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Jan 04 08:16:54 2011 +0100"
      },
      "message": "perf: Clean up power events by introducing new, more generic ones\n\nAdd these new power trace events:\n\n power:cpu_idle\n power:cpu_frequency\n power:machine_suspend\n\nThe old C-state/idle accounting events:\n  power:power_start\n  power:power_end\n\nHave now a replacement (but we are still keeping the old\ntracepoints for compatibility):\n\n  power:cpu_idle\n\nand\n  power:power_frequency\n\nis replaced with:\n  power:cpu_frequency\n\npower:machine_suspend is newly introduced.\n\nJean Pihet has a patch integrated into the generic layer\n(kernel/power/suspend.c) which will make use of it.\n\nthe type\u003d field got removed from both, it was never\nused and the type is differed by the event type itself.\n\nperf timechart userspace tool gets adjusted in a separate patch.\n\nSigned-off-by: Thomas Renninger \u003ctrenn@suse.de\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nAcked-by: Arjan van de Ven \u003carjan@linux.intel.com\u003e\nAcked-by: Jean Pihet \u003cjean.pihet@newoldbits.com\u003e\nCc: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\nCc: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\nCc: rjw@sisk.pl\nLKML-Reference: \u003c1294073445-14812-3-git-send-email-trenn@suse.de\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nLKML-Reference: \u003c1290072314-31155-2-git-send-email-trenn@suse.de\u003e\n"
    },
    {
      "commit": "4a6f4fe8377720e5a279fdbb769946c242e936d3",
      "tree": "9684b9d39fe8b3aa620465ca0a51e4aacbfdd633",
      "parents": [
        "12938a9220a38d555e38dc9b40021e664b99a1f1"
      ],
      "author": {
        "name": "Christoph Lameter",
        "email": "cl@linux.com",
        "time": "Mon Dec 06 11:16:24 2010 -0600"
      },
      "committer": {
        "name": "Tejun Heo",
        "email": "tj@kernel.org",
        "time": "Fri Dec 17 15:07:18 2010 +0100"
      },
      "message": "drivers: Replace __get_cpu_var with __this_cpu_read if not used for an address.\n\n__get_cpu_var() can be replaced with this_cpu_read and will then use a single\nread instruction with implied address calculation to access the correct per cpu\ninstance.\n\nHowever, the address of a per cpu variable passed to __this_cpu_read() cannot be\ndetermed (since its an implied address conversion through segment prefixes).\nTherefore apply this only to uses of __get_cpu_var where the addres of the\nvariable is not used.\n\nV3-\u003eV4:\n\t- Move one instance of this_cpu_inc_return to a later patch\n\t  so that this one can go in without percpu infrastructrure\n\t  changes.\n\nSedat: fixed compile failure caused by an extra \u0027)\u0027.\n\nCc: Neil Horman \u003cnhorman@tuxdriver.com\u003e\nCc: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\nCc: Sedat Dilek \u003csedat.dilek@gmail.com\u003e\nAcked-by: H. Peter Anvin \u003chpa@zytor.com\u003e\nSigned-off-by: Christoph Lameter \u003ccl@linux.com\u003e\nSigned-off-by: Tejun Heo \u003ctj@kernel.org\u003e\n"
    },
    {
      "commit": "20e3341bb138bc9860adea4d76707470357b76ab",
      "tree": "0f04ac94442c3049960c35a34983728a57412185",
      "parents": [
        "899611ee7d373e5eeda08e9a8632684e1ebbbf00"
      ],
      "author": {
        "name": "Lucas De Marchi",
        "email": "lucas.de.marchi@gmail.com",
        "time": "Tue Sep 07 12:53:49 2010 -0400"
      },
      "committer": {
        "name": "Len Brown",
        "email": "len.brown@intel.com",
        "time": "Tue Sep 28 23:30:38 2010 -0400"
      },
      "message": "cpuidle: Fix typos\n\nSigned-off-by: Len Brown \u003clen.brown@intel.com\u003e\n"
    },
    {
      "commit": "71abbbf856a0e70ca478782505c800891260ba84",
      "tree": "00ae494afd2868056753984035e1bfc0c2040257",
      "parents": [
        "d2997b1042ec150616c1963b5e5e919ffd0b0ebf"
      ],
      "author": {
        "name": "Ai Li",
        "email": "aili@codeaurora.org",
        "time": "Mon Aug 09 17:20:13 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Aug 09 20:45:04 2010 -0700"
      },
      "message": "cpuidle: extend cpuidle and menu governor to handle dynamic states\n\nOn some SoC chips, HW resources may be in use during any particular idle\nperiod.  As a consequence, the cpuidle states that the SoC is safe to\nenter can change from idle period to idle period.  In addition, the\nlatency and threshold of each cpuidle state can vary, depending on the\noperating condition when the CPU becomes idle, e.g.  the current cpu\nfrequency, the current state of the HW blocks, etc.\n\ncpuidle core and the menu governor, in the current form, are geared\ntowards cpuidle states that are static, i.e.  the availabiltiy of the\nstates, their latencies, their thresholds are non-changing during run\ntime.  cpuidle does not provide any hook that cpuidle drivers can use to\nadjust those values on the fly for the current idle period before the menu\ngovernor selects the target cpuidle state.\n\nThis patch extends cpuidle core and the menu governor to handle states\nthat are dynamic.  There are three additions in the patch and the patch\nmaintains backwards-compatibility with existing cpuidle drivers.\n\n1) add prepare() to struct cpuidle_device.  A cpuidle driver can hook\n   into the callback and cpuidle will call prepare() before calling the\n   governor\u0027s select function.  The callback gives the cpuidle driver a\n   chance to update the dynamic information of the cpuidle states for the\n   current idle period, e.g.  state availability, latencies, thresholds,\n   power values, etc.\n\n2) add CPUIDLE_FLAG_IGNORE as one of the state flags.  In the prepare()\n   function, a cpuidle driver can set/clear the flag to indicate to the\n   menu governor whether a cpuidle state should be ignored, i.e.  not\n   available, during the current idle period.\n\n3) add power_specified bit to struct cpuidle_device.  The menu governor\n   currently assumes that the cpuidle states are arranged in the order of\n   increasing latency, threshold, and power savings.  This is true or can\n   be made true for static states.  Once the state parameters are dynamic,\n   the latencies, thresholds, and power savings for the cpuidle states can\n   increase or decrease by different amounts from idle period to idle\n   period.  So the assumption of increasing latency, threshold, and power\n   savings from Cn to C(n+1) can no longer be guaranteed.\n\nIt can be straightforward to calculate the power consumption of each\navailable state and to specify it in power_usage for the idle period.\nUsing the power_usage fields, the menu governor then selects the state\nthat has the lowest power consumption and that still satisfies all other\ncritieria.  The power_specified bit defaults to 0.  For existing cpuidle\ndrivers, cpuidle detects that power_specified is 0 and fills in a dummy\nset of power_usage values.\n\nSigned-off-by: Ai Li \u003caili@codeaurora.org\u003e\nCc: Len Brown \u003clen.brown@intel.com\u003e\nAcked-by: Arjan van de Ven \u003carjan@linux.intel.com\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: Venkatesh Pallipadi \u003cvenki@google.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "6f4f2723d08534fd4e407e1ef8500b0f4d12c30c",
      "tree": "3422ba34e7c6bde7e8d4ca1f1f1ed772efc5cc4c",
      "parents": [
        "6b72e3934b42930fd40fc42fe762d21be413301c"
      ],
      "author": {
        "name": "Thomas Renninger",
        "email": "trenn@suse.de",
        "time": "Tue Apr 20 13:17:36 2010 +0200"
      },
      "committer": {
        "name": "Dave Jones",
        "email": "davej@redhat.com",
        "time": "Tue Aug 03 13:47:05 2010 -0400"
      },
      "message": "[CPUFREQ] x86 cpufreq: Make trace_power_frequency cpufreq driver independent\n\nand fix the broken case if a core\u0027s frequency depends on others.\n\ntrace_power_frequency was only implemented in a rather ungeneric way\nin acpi-cpufreq driver\u0027s target() function only.\n-\u003e Move the call to trace_power_frequency to\n   cpufreq.c:cpufreq_notify_transition() where CPUFREQ_POSTCHANGE\n   notifier is triggered.\n   This will support power frequency tracing by all cpufreq drivers\n\ntrace_power_frequency did not trace frequency changes correctly when\nthe userspace governor was used or when CPU cores\u0027 frequency depend\non each other.\n-\u003e Moving this into the CPUFREQ_POSTCHANGE notifier and pass the cpu\n   which gets switched automatically fixes this.\n\nRobert Schoene provided some important fixes on top of my initial\nquick shot version which are integrated in this patch:\n- Forgot some changes in power_end trace (TP_printk/variable names)\n- Variable dummy in power_end must now be cpu_id\n- Use static 64 bit variable instead of unsigned int for cpu_id\n\nSigned-off-by: Thomas Renninger \u003ctrenn@suse.de\u003e\nCC: davej@redhat.com\nCC: arjan@infradead.org\nCC: linux-kernel@vger.kernel.org\nCC: robert.schoene@tu-dresden.de\nTested-by: robert.schoene@tu-dresden.de\nSigned-off-by: Dave Jones \u003cdavej@redhat.com\u003e\n"
    },
    {
      "commit": "8c215bd3890c347dfb6a2db4779755f8b9c298a9",
      "tree": "e6bd5de8a028babe9ec75f744977bd1424df106c",
      "parents": [
        "9715856922bf8475f5428c29b6f4a9eebc97d391"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "peterz@infradead.org",
        "time": "Thu Jul 01 09:07:17 2010 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Jul 01 09:39:48 2010 +0200"
      },
      "message": "sched: Cure nr_iowait_cpu() users\n\nCommit 0224cf4c5e (sched: Intoduce get_cpu_iowait_time_us())\nbroke things by not making sure preemption was indeed disabled\nby the callers of nr_iowait_cpu() which took the iowait value of\nthe current cpu.\n\nThis resulted in a heap of preempt warnings. Cure this by making\nnr_iowait_cpu() take a cpu number and fix up the callers to pass\nin the right number.\n\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: Arjan van de Ven \u003carjan@infradead.org\u003e\nCc: Sergey Senozhatsky \u003csergey.senozhatsky@gmail.com\u003e\nCc: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\nCc: Maxim Levitsky \u003cmaximlevitsky@gmail.com\u003e\nCc: Len Brown \u003clen.brown@intel.com\u003e\nCc: Pavel Machek \u003cpavel@ucw.cz\u003e\nCc: Jiri Slaby \u003cjslaby@suse.cz\u003e\nCc: linux-pm@lists.linux-foundation.org\nLKML-Reference: \u003c1277968037.1868.120.camel@laptop\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "e4f2e5eaac8f5f903ca4a8cc944d26e68745d6bb",
      "tree": "1a8d89561fa5b231202d5287acc2683eccadee7f",
      "parents": [
        "9a90e09854a3c7cc603ab8fc9163f77bb1f66cfa",
        "2671717265ae6e720a9ba5f13fbec3a718983b65"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri May 28 16:14:17 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri May 28 16:14:17 2010 -0700"
      },
      "message": "Merge branch \u0027idle-release\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/lenb/linux-idle-2.6\n\n* \u0027idle-release\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/lenb/linux-idle-2.6:\n  intel_idle: native hardware cpuidle driver for latest Intel processors\n  ACPI: acpi_idle: touch TS_POLLING only in the non-MWAIT case\n  acpi_pad: uses MONITOR/MWAIT, so it doesn\u0027t need to clear TS_POLLING\n  sched: clarify commment for TS_POLLING\n  ACPI: allow a native cpuidle driver to displace ACPI\n  cpuidle: make cpuidle_curr_driver static\n  cpuidle: add cpuidle_unregister_driver() error check\n  cpuidle: fail to register if !CONFIG_CPU_IDLE\n"
    },
    {
      "commit": "752138df0dc2daaae09379c754caeb08c97905dc",
      "tree": "4908627df11ccb42570fc3525c560f89c444781c",
      "parents": [
        "c0d64cb031c21f163a0ec15cf10844bcf0ceedcf"
      ],
      "author": {
        "name": "Len Brown",
        "email": "len.brown@intel.com",
        "time": "Sat May 22 16:57:26 2010 -0400"
      },
      "committer": {
        "name": "Len Brown",
        "email": "len.brown@intel.com",
        "time": "Thu May 27 21:06:58 2010 -0400"
      },
      "message": "cpuidle: make cpuidle_curr_driver static\n\ncpuidle_register_driver() sets cpuidle_curr_driver\ncpuidle_unregister_driver() clears cpuidle_curr_driver\n\nWe should\u0027t expose cpuidle_curr_driver to\npotential modification except via these interfaces.\nSo make it static and create cpuidle_get_driver() to observe it.\n\nSigned-off-by: Len Brown \u003clen.brown@intel.com\u003e\n"
    },
    {
      "commit": "c0d64cb031c21f163a0ec15cf10844bcf0ceedcf",
      "tree": "ce65dc6b8cbda91e8c1f1c69753265618e8d9ae6",
      "parents": [
        "6b2c676bf32be91f43215d5874c07c1becaba013"
      ],
      "author": {
        "name": "Len Brown",
        "email": "len.brown@intel.com",
        "time": "Sat May 22 16:34:10 2010 -0400"
      },
      "committer": {
        "name": "Len Brown",
        "email": "len.brown@intel.com",
        "time": "Thu May 27 13:04:04 2010 -0400"
      },
      "message": "cpuidle: add cpuidle_unregister_driver() error check\n\nAssure that cpuidle_unregister_driver() will not clobber\nthe registered driver if unregistered by somebody else.\n\nSigned-off-by: Len Brown \u003clen.brown@intel.com\u003e\n"
    },
    {
      "commit": "1f85f87d4f81d1e5a2d502d48316a1bdc5acac0b",
      "tree": "ef9254e52665274ae4d0fd1381cc2ae5a48791f6",
      "parents": [
        "6cdafaae41d52e6ef9a5c5be23602ef083e4d0f9"
      ],
      "author": {
        "name": "Arjan van de Ven",
        "email": "arjan@linux.intel.com",
        "time": "Mon May 24 14:32:59 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue May 25 08:07:02 2010 -0700"
      },
      "message": "cpuidle: add a repeating pattern detector to the menu governor\n\nCurrently, the menu governor uses the (corrected) next timer as key item\nfor predicting the idle duration.\n\nIt turns out that there are specific cases where this breaks down: There\nare cases where we have a very repetitive pattern of idle durations, where\nthe idle period is pretty much the same, for reasons completely unrelated\nto the next timer event.  Examples of such repeating patterns are network\nloads with irq mitigation, the mouse moving but in theory also the wifi\nbeacons.\n\nThis patch adds a relatively simple detector for such repeating patterns,\nwhere the standard deviation of the last 8 idle periods is compared to a\nthreshold.\n\nWith this extra predictor in place, measurements show that the DECAY\nfactor can now be increased (the decaying average will now decay slower)\nto get an even more stable result.\n\n[arjan@infradead.org: fix bug identified by Frank]\nSigned-off-by: Arjan van de Ven \u003carjan@linux.intel.com\u003e\nCc: Corrado Zoccolo \u003cczoccolo@gmail.com\u003e\nCc: Frank Rowand \u003cfrank.rowand@am.sony.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "ed77134bfccf5e75b6cbadab268e559dbe6a4ebb",
      "tree": "dae087a617ab3d9af8673d1905dbca3bcd57e89e",
      "parents": [
        "0fef8b1e83c4ab08cf1304dbebcfd749caf4f187"
      ],
      "author": {
        "name": "Mark Gross",
        "email": "mgross@linux.intel.com",
        "time": "Thu May 06 01:59:26 2010 +0200"
      },
      "committer": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Mon May 10 23:08:19 2010 +0200"
      },
      "message": "PM QOS update\n\nThis patch changes the string based list management to a handle base\nimplementation to help with the hot path use of pm-qos, it also renames\nmuch of the API to use \"request\" as opposed to \"requirement\" that was\nused in the initial implementation.  I did this because request more\naccurately represents what it actually does.\n\nAlso, I added a string based ABI for users wanting to use a string\ninterface.  So if the user writes 0xDDDDDDDD formatted hex it will be\naccepted by the interface.  (someone asked me for it and I don\u0027t think\nit hurts anything.)\n\nThis patch updates some documentation input I got from Randy.\n\nSigned-off-by: markgross \u003cmgross@linux.intel.com\u003e\nSigned-off-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\n"
    },
    {
      "commit": "1c6fe0364fa7bf28248488753ee0afb6b759cd04",
      "tree": "8bb0caf5efc652c18354a8694fc1e235f216d6ab",
      "parents": [
        "f1c448e0a9e99c76f4ece368714fb35a40a8daba"
      ],
      "author": {
        "name": "Arjan van de Ven",
        "email": "arjan@linux.intel.com",
        "time": "Sat May 08 15:47:37 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun May 09 18:35:36 2010 -0700"
      },
      "message": "cpuidle: Fix incorrect optimization\n\ncommit 672917dcc78 (\"cpuidle: menu governor: reduce latency on exit\")\nadded an optimization, where the analysis on the past idle period moved\nfrom the end of idle, to the beginning of the new idle.\n\nUnfortunately, this optimization had a bug where it zeroed one key\nvariable for new use, that is needed for the analysis.  The fix is\nsimple, zero the variable after doing the work from the previous idle.\n\nDuring the audit of the code that found this issue, another issue was\nalso found; the -\u003emeasured_us data structure member is never set, a\nlocal variable is always used instead.\n\nSigned-off-by: Arjan van de Ven \u003carjan@linux.intel.com\u003e\nCc: Corrado Zoccolo \u003cczoccolo@gmail.com\u003e\nCc: stable@kernel.org\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "5a0e3ad6af8660be21ca98a971cd00f331318c05",
      "tree": "5bfb7be11a03176a87296a43ac6647975c00a1d1",
      "parents": [
        "ed391f4ebf8f701d3566423ce8f17e614cde9806"
      ],
      "author": {
        "name": "Tejun Heo",
        "email": "tj@kernel.org",
        "time": "Wed Mar 24 17:04:11 2010 +0900"
      },
      "committer": {
        "name": "Tejun Heo",
        "email": "tj@kernel.org",
        "time": "Tue Mar 30 22:02:32 2010 +0900"
      },
      "message": "include cleanup: Update gfp.h and slab.h includes to prepare for breaking implicit slab.h inclusion from percpu.h\n\npercpu.h is included by sched.h and module.h and thus ends up being\nincluded when building most .c files.  percpu.h includes slab.h which\nin turn includes gfp.h making everything defined by the two files\nuniversally available and complicating inclusion dependencies.\n\npercpu.h -\u003e slab.h dependency is about to be removed.  Prepare for\nthis change by updating users of gfp and slab facilities include those\nheaders directly instead of assuming availability.  As this conversion\nneeds to touch large number of source files, the following script is\nused as the basis of conversion.\n\n  http://userweb.kernel.org/~tj/misc/slabh-sweep.py\n\nThe script does the followings.\n\n* Scan files for gfp and slab usages and update includes such that\n  only the necessary includes are there.  ie. if only gfp is used,\n  gfp.h, if slab is used, slab.h.\n\n* When the script inserts a new include, it looks at the include\n  blocks and try to put the new include such that its order conforms\n  to its surrounding.  It\u0027s put in the include block which contains\n  core kernel includes, in the same order that the rest are ordered -\n  alphabetical, Christmas tree, rev-Xmas-tree or at the end if there\n  doesn\u0027t seem to be any matching order.\n\n* If the script can\u0027t find a place to put a new include (mostly\n  because the file doesn\u0027t have fitting include block), it prints out\n  an error message indicating which .h file needs to be added to the\n  file.\n\nThe conversion was done in the following steps.\n\n1. The initial automatic conversion of all .c files updated slightly\n   over 4000 files, deleting around 700 includes and adding ~480 gfp.h\n   and ~3000 slab.h inclusions.  The script emitted errors for ~400\n   files.\n\n2. Each error was manually checked.  Some didn\u0027t need the inclusion,\n   some needed manual addition while adding it to implementation .h or\n   embedding .c file was more appropriate for others.  This step added\n   inclusions to around 150 files.\n\n3. The script was run again and the output was compared to the edits\n   from #2 to make sure no file was left behind.\n\n4. Several build tests were done and a couple of problems were fixed.\n   e.g. lib/decompress_*.c used malloc/free() wrappers around slab\n   APIs requiring slab.h to be added manually.\n\n5. The script was run on all .h files but without automatically\n   editing them as sprinkling gfp.h and slab.h inclusions around .h\n   files could easily lead to inclusion dependency hell.  Most gfp.h\n   inclusion directives were ignored as stuff from gfp.h was usually\n   wildly available and often used in preprocessor macros.  Each\n   slab.h inclusion directive was examined and added manually as\n   necessary.\n\n6. percpu.h was updated not to include slab.h.\n\n7. Build test were done on the following configurations and failures\n   were fixed.  CONFIG_GCOV_KERNEL was turned off for all tests (as my\n   distributed build env didn\u0027t work with gcov compiles) and a few\n   more options had to be turned off depending on archs to make things\n   build (like ipr on powerpc/64 which failed due to missing writeq).\n\n   * x86 and x86_64 UP and SMP allmodconfig and a custom test config.\n   * powerpc and powerpc64 SMP allmodconfig\n   * sparc and sparc64 SMP allmodconfig\n   * ia64 SMP allmodconfig\n   * s390 SMP allmodconfig\n   * alpha SMP allmodconfig\n   * um on x86_64 SMP allmodconfig\n\n8. percpu.h modifications were reverted so that it could be applied as\n   a separate patch and serve as bisection point.\n\nGiven the fact that I had only a couple of failures from tests on step\n6, I\u0027m fairly confident about the coverage of this conversion patch.\nIf there is a breakage, it\u0027s likely to be something in one of the arch\nheaders which should be easily discoverable easily on most builds of\nthe specific arch.\n\nSigned-off-by: Tejun Heo \u003ctj@kernel.org\u003e\nGuess-its-ok-by: Christoph Lameter \u003ccl@linux-foundation.org\u003e\nCc: Ingo Molnar \u003cmingo@redhat.com\u003e\nCc: Lee Schermerhorn \u003cLee.Schermerhorn@hp.com\u003e\n"
    },
    {
      "commit": "52cf25d0ab7f78eeecc59ac652ed5090f69b619e",
      "tree": "031d1ffb3890bd69c0260c864c512e0be62ac05c",
      "parents": [
        "6c1733aca0b48db4d0e660d54976a1cca25b5eaf"
      ],
      "author": {
        "name": "Emese Revfy",
        "email": "re.emese@gmail.com",
        "time": "Tue Jan 19 02:58:23 2010 +0100"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Sun Mar 07 17:04:49 2010 -0800"
      },
      "message": "Driver core: Constify struct sysfs_ops in struct kobj_type\n\nConstify struct sysfs_ops.\n\nThis is part of the ops structure constification\neffort started by Arjan van de Ven et al.\n\nBenefits of this constification:\n\n * prevents modification of data that is shared\n   (referenced) by many other structure instances\n   at runtime\n\n * detects/prevents accidental (but not intentional)\n   modification attempts on archs that enforce\n   read-only kernel data at runtime\n\n * potentially better optimized code as the compiler\n   can assume that the const data cannot be changed\n\n * the compiler/linker move const data into .rodata\n   and therefore exclude them from false sharing\n\nSigned-off-by: Emese Revfy \u003cre.emese@gmail.com\u003e\nAcked-by: David Teigland \u003cteigland@redhat.com\u003e\nAcked-by: Matt Domsch \u003cMatt_Domsch@dell.com\u003e\nAcked-by: Maciej Sosnowski \u003cmaciej.sosnowski@intel.com\u003e\nAcked-by: Hans J. Koch \u003chjk@linutronix.de\u003e\nAcked-by: Pekka Enberg \u003cpenberg@cs.helsinki.fi\u003e\nAcked-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\nAcked-by: Stephen Hemminger \u003cshemminger@vyatta.com\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "c9be0a36f9bf392a7984473124a67a12964df11f",
      "tree": "23fcf49f277d9a093b2b29831811219410ad7b05",
      "parents": [
        "3d03ba4d1dd2246adff5a9ff1194a539b3bc05a7"
      ],
      "author": {
        "name": "Andi Kleen",
        "email": "andi@firstfloor.org",
        "time": "Tue Jan 05 12:47:58 2010 +0100"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Sun Mar 07 17:04:47 2010 -0800"
      },
      "message": "sysdev: Pass attribute in sysdev_class attributes show/store\n\nPassing the attribute to the low level IO functions allows all kinds\nof cleanups, by sharing low level IO code without requiring\nan own function for every piece of data.\n\nAlso drivers can extend the attributes with own data fields\nand use that in the low level function.\n\nSimilar to sysdev_attributes and normal attributes.\n\nThis is a tree-wide sweep, converting everything in one go.\n\nNo functional changes in this patch other than passing the new\nargument everywhere.\n\nTested on x86, the non x86 parts are uncompiled.\n\nSigned-off-by: Andi Kleen \u003cak@linux.intel.com\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n\n"
    },
    {
      "commit": "56e6943b41468826c26155139629c9a5379550ab",
      "tree": "a108d6fc93c34ebe205734a5775be5b77a4ff0b6",
      "parents": [
        "77079dbec721a282bf0931385ae10d77cdbac5af"
      ],
      "author": {
        "name": "Richard Kennedy",
        "email": "richard@rsk.demon.co.uk",
        "time": "Fri Mar 05 13:42:30 2010 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Mar 06 11:26:28 2010 -0800"
      },
      "message": "cpuidle menu: remove 8 bytes of padding on 64 bit builds\n\nReorder struct menu_device to remove 8 bytes of padding on 64 bit builds.\nSize drops from 136 to 128 bytes, so possibly needing one fewer cache\nlines.\n\nSigned-off-by: Richard Kennedy \u003crichard@rsk.demon.co.uk\u003e\nCc: Arjan van de Ven \u003carjan@linux.intel.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "5787536edf18e33d06e2bf038bfd0910f4def213",
      "tree": "6d1874d02111cebc83fa1a6d1de3dedc0963ff53",
      "parents": [
        "006b4298f26984d514546fe4e53371761f66b643"
      ],
      "author": {
        "name": "Stephen Hemminger",
        "email": "shemminger@linux-foundation.org",
        "time": "Fri Jan 08 14:43:08 2010 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jan 11 09:34:07 2010 -0800"
      },
      "message": "drivers/cpuidle/governors/menu.c: fix undefined reference to `__udivdi3\u0027\n\nmenu: use proper 64 bit math\n\nThe new menu governor is incorrectly doing a 64 bit divide.  Compile\ntested only\n\nSigned-off-by: Stephen Hemminger \u003cshemminger@vyatta.com\u003e\nCc: Arjan van de Ven \u003carjan@linux.intel.com\u003e\nCc: Len Brown \u003clen.brown@intel.com\u003e\nCc: Venkatesh Pallipadi \u003cvenkatesh.pallipadi@intel.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": "faa7b7ddca14887ac037f585d2fac7ca6c57037e",
      "tree": "a44e7785a83a9f778fe3acec2f6aa07630292b23",
      "parents": [
        "471452104b8520337ae2fb48c4e61cd4896e025d"
      ],
      "author": {
        "name": "Julia Lawall",
        "email": "julia@diku.dk",
        "time": "Mon Dec 14 18:00:09 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Dec 15 08:53:25 2009 -0800"
      },
      "message": "drivers/cpuidle: Move dereference after NULL test\n\nIt does not seem possible that ldev can be NULL, so drop the unnecessary\ntest.  If ldev can somehow be NULL, then the initialization of last_idx\nshould be moved below the test.\n\nA simplified version of the semantic match that detects this problem is as\nfollows (http://coccinelle.lip6.fr/):\n\n// \u003csmpl\u003e\n@match exists@\nexpression x, E;\nidentifier fld;\n@@\n\n* x-\u003efld\n  ... when !\u003d \\(x \u003d E\\|\u0026x\\)\n* x \u003d\u003d NULL\n// \u003c/smpl\u003e\n\nSigned-off-by: Julia Lawall \u003cjulia@diku.dk\u003e\nAcked-by: Arjan van de Ven \u003carjan@linux.intel.com\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: Venkatesh Pallipadi \u003cvenkatesh.pallipadi@intel.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "21ae2956ce289f61f11863cc67080f9a28101ae0",
      "tree": "c6f66176b5f151a1326879de334a94201eeb0f26",
      "parents": [
        "0e6779bbcb78b434efdc84fff1809e342684d6b3"
      ],
      "author": {
        "name": "Uwe Kleine-König",
        "email": "u.kleine-koenig@pengutronix.de",
        "time": "Wed Oct 07 15:21:09 2009 +0200"
      },
      "committer": {
        "name": "Jiri Kosina",
        "email": "jkosina@suse.cz",
        "time": "Mon Nov 09 09:40:57 2009 +0100"
      },
      "message": "tree-wide: fix typos \"aquire\" -\u003e \"acquire\", \"cumsumed\" -\u003e \"consumed\"\n\nThis patch was generated by\n\n\tgit grep -E -i -l \u0027[Aa]quire\u0027 | xargs -r perl -p -i -e \u0027s/([Aa])quire/$1cquire/\u0027\n\nand the cumsumed was found by checking the diff for aquire.\n\nSigned-off-by: Uwe Kleine-König \u003cu.kleine-koenig@pengutronix.de\u003e\nSigned-off-by: Jiri Kosina \u003cjkosina@suse.cz\u003e\n"
    },
    {
      "commit": "246eb7f0ed1a8aeddec5313137767658f378949b",
      "tree": "25cfbdab4d133ebb1539b3c8b4e302f1ca7866b3",
      "parents": [
        "5e8d8f6f2844d4a663415c660ab5cc92e2e2477d"
      ],
      "author": {
        "name": "Kevin Hilman",
        "email": "khilman@deeprootsystems.com",
        "time": "Mon Oct 26 16:50:18 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Oct 29 07:39:31 2009 -0700"
      },
      "message": "cpuidle: always return with interrupts enabled\n\nIn the case where cpuidle_idle_call() returns before changing state due to\na need_resched(), it was returning with IRQs disabled.\n\nThe idle path assumes that the platform specific idle code returns with\ninterrupts enabled (although this too is undocumented AFAICT) and on ARM\nwe have a WARN_ON(!(irqs_disabled()) when returning from the idle loop, so\nthe user-visible effects were only a warning since interrupts were\neventually re-enabled later.\n\nOn x86, this same problem exists, but there is no WARN_ON() to detect it.\nAs on ARM, the interrupts are eventually re-enabled, so I\u0027m not sure of\nany actual bugs triggered by this.  It\u0027s primarily a\ncorrectness/consistency fix.\n\nThis patch ensures IRQs are (re)enabled before returning.\n\nReported-by: Hemanth V \u003chemanthv@ti.com\u003e\nSigned-off-by: Kevin Hilman \u003ckhilman@deeprootsystems.com\u003e\nCc: Arjan van de Ven \u003carjan@linux.intel.com\u003e\nCc: Len Brown \u003clen.brown@intel.com\u003e\nCc: Venkatesh Pallipadi \u003cvenkatesh.pallipadi@intel.com\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: \"Rafael J. Wysocki\" \u003crjw@sisk.pl\u003e\nTested-by: Martin Michlmayr \u003ctbm@cyrius.com\u003e\nCc: \u003cstable@kernel.org\u003e\t\t[2.6.31.x]\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "672917dcc781ead7652a8b11b1fba14e38ac15b8",
      "tree": "c504b7f60737ba8d82eabfa662585d463ae5ea66",
      "parents": [
        "69d25870f20c4b2563304f2b79c5300dd60a067e"
      ],
      "author": {
        "name": "Corrado Zoccolo",
        "email": "czoccolo@gmail.com",
        "time": "Mon Sep 21 17:04:09 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Sep 22 07:17:45 2009 -0700"
      },
      "message": "cpuidle: menu governor: reduce latency on exit\n\nMove the state residency accounting and statistics computation off the hot\nexit path.\n\nOn exit, the need to recompute statistics is recorded, and new statistics\nwill be computed when menu_select is called again.\n\nThe expected effect is to reduce processor wakeup latency from sleep\n(C-states).  We are speaking of few hundreds of cycles reduction out of a\nseveral microseconds latency (determined by the hardware transition), so\nit is difficult to measure.\n\nSigned-off-by: Corrado Zoccolo \u003cczoccolo@gmail.com\u003e\nCc: Venkatesh Pallipadi \u003cvenkatesh.pallipadi@intel.com\u003e\nCc: Len Brown \u003clen.brown@intel.com\u003e\nCc: Adam Belay \u003cabelay@novell.com\nAcked-by: Arjan van de Ven \u003carjan@linux.intel.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "69d25870f20c4b2563304f2b79c5300dd60a067e",
      "tree": "cda2b2d65c1be95420c6ba92ae2d40fade4232c4",
      "parents": [
        "45d80eea87c9f8292d2d33173d6866c0ec57238a"
      ],
      "author": {
        "name": "Arjan van de Ven",
        "email": "arjan@infradead.org",
        "time": "Mon Sep 21 17:04:08 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Sep 22 07:17:45 2009 -0700"
      },
      "message": "cpuidle: fix the menu governor to boost IO performance\n\nFix the menu idle governor which balances power savings, energy efficiency\nand performance impact.\n\nThe reason for a reworked governor is that there have been serious\nperformance issues reported with the existing code on Nehalem server\nsystems.\n\nTo show this I\u0027m sure Andrew wants to see benchmark results:\n(benchmark is \"fio\", \"no cstates\" is using \"idle\u003dpoll\")\n\n\t\tno cstates\tcurrent linux\tnew algorithm\n1 disk\t\t107 Mb/s\t85 Mb/s\t\t105 Mb/s\n2 disks\t\t215 Mb/s\t123 Mb/s\t209 Mb/s\n12 disks\t590 Mb/s\t320 Mb/s\t585 Mb/s\n\nIn various power benchmark measurements, no degredation was found by our\nmeasurement\u0026diagnostics team.  Obviously a small percentage more power was\nused in the \"fio\" benchmark, due to the much higher performance.\n\nWhile it would be a novel idea to describe the new algorithm in this\ncommit message, I cheaped out and described it in comments in the code\ninstead.\n\n[changes since first post: spelling fixes from akpm, review feedback,\nfolded menu-tng into menu.c]\n\nSigned-off-by: Arjan van de Ven \u003carjan@linux.intel.com\u003e\nCc: Venkatesh Pallipadi \u003cvenkatesh.pallipadi@intel.com\u003e\nCc: Len Brown \u003clenb@kernel.org\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: Yanmin Zhang \u003cyanmin_zhang@linux.intel.com\u003e\nAcked-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "288f023e708efd89d77ce9acf977a33a623ae83d",
      "tree": "c3fe7d1bcab32f9dcfd16d92b76098ef4c125178",
      "parents": [
        "964a0b3d2b1b1cac1d01e29b635831b3d92a3fdd"
      ],
      "author": {
        "name": "Arjan van de Ven",
        "email": "arjan@infradead.org",
        "time": "Sat Sep 19 13:35:33 2009 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Sat Sep 19 18:57:52 2009 +0200"
      },
      "message": "tracing, x86, cpuidle: Move the end point of a C state in the power tracer\n\nThe \"end of a C state\" trace point currently happens before\nthe code runs that corrects the TSC for having stopped during idle.\n\nThe result of this is that the timestamp of the end-of-C-state event\nis garbage on cpus where the TSC stops during idle.\n\nThis patch moves the end point of the C state to after the timekeeping\nengine of the kernel has been corrected.\n\nSigned-off-by: Arjan van de Ven \u003carjan@linux.intel.com\u003e\nCc: Len Brown \u003clen.brown@intel.com\u003e\nCc: fweisbec@gmail.com\nCc: peterz@infradead.org\nCc: Paul Mackerras \u003cpaulus@samba.org\u003e\nLKML-Reference: \u003c20090919133533.139c2a46@infradead.org\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "816bb611e41be29b476dc16f6297eb551bf4d747",
      "tree": "fe48f23db073e47a83de5e9e08796c252c7a307d",
      "parents": [
        "4a6908a3a050aacc9c3a2f36b276b46c0629ad91"
      ],
      "author": {
        "name": "Pallipadi, Venkatesh",
        "email": "venkatesh.pallipadi@intel.com",
        "time": "Tue Dec 30 14:46:02 2008 -0800"
      },
      "committer": {
        "name": "Len Brown",
        "email": "len.brown@intel.com",
        "time": "Tue Dec 30 18:48:01 2008 -0500"
      },
      "message": "cpuidle: Add decaying history logic to menu idle predictor\n\nAdd decaying history of predicted idle time, instead of using the last early\nwakeup. This logic helps menu governor do better job of predicting idle time.\n\nWith this change, we also measured noticable (~8%) power savings on\na DP server system with CPUs supporting deep C states, when system\nwas lightly loaded. There was no change to power or perf on other load\nconditions.\n\nSigned-off-by: Venkatesh Pallipadi \u003cvenkatesh.pallipadi@intel.com\u003e\nSigned-off-by: Len Brown \u003clen.brown@intel.com\u003e\n"
    },
    {
      "commit": "9a6558371bcd01c2973b7638181db4ccc34eab4f",
      "tree": "8f7499a1718c0c158d69bb39e73b5592c84c07dd",
      "parents": [
        "6f1e94031f5891e8b375e5ff5d48672c250be353"
      ],
      "author": {
        "name": "Arjan van de Ven",
        "email": "arjan@linux.intel.com",
        "time": "Sun Nov 09 12:45:10 2008 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun Nov 09 16:28:42 2008 -0800"
      },
      "message": "regression: disable timer peek-ahead for 2.6.28\n\nIt\u0027s showing up as regressions; disabling it very likely just papers\nover an underlying issue, but time is running out for 2.6.28, lets get\nback to this for 2.6.29\n\nFixes: #11826 and #11893\n\nSigned-off-by: Arjan van de Ven \u003carjan@linux.intel.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "1f6d6e8ebe73ba9d9d4c693f7f6f50f661dbd6e4",
      "tree": "be7a2d20b1728da5a0d844a6f4cd382b2c2569fb",
      "parents": [
        "db563fc2e80534f98c7f9121a6f7dfe41f177a79",
        "268a3dcfea2077fca60d3715caa5c96f9b5e6ea7"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Oct 23 10:53:02 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Oct 23 10:53:02 2008 -0700"
      },
      "message": "Merge branch \u0027v28-range-hrtimers-for-linus-v2\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip\n\n* \u0027v28-range-hrtimers-for-linus-v2\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip: (37 commits)\n  hrtimers: add missing docbook comments to struct hrtimer\n  hrtimers: simplify hrtimer_peek_ahead_timers()\n  hrtimers: fix docbook comments\n  DECLARE_PER_CPU needs linux/percpu.h\n  hrtimers: fix typo\n  rangetimers: fix the bug reported by Ingo for real\n  rangetimer: fix BUG_ON reported by Ingo\n  rangetimer: fix x86 build failure for the !HRTIMERS case\n  select: fix alpha OSF wrapper\n  select: fix alpha OSF wrapper\n  hrtimer: peek at the timer queue just before going idle\n  hrtimer: make the futex() system call use the per process slack value\n  hrtimer: make the nanosleep() syscall use the per process slack\n  hrtimer: fix signed/unsigned bug in slack estimator\n  hrtimer: show the timer ranges in /proc/timer_list\n  hrtimer: incorporate feedback from Peter Zijlstra\n  hrtimer: add a hrtimer_start_range() function\n  hrtimer: another build fix\n  hrtimer: fix build bug found by Ingo\n  hrtimer: make select() and poll() use the hrtimer range feature\n  ...\n"
    },
    {
      "commit": "89cedfefca1d446ee2598fd3bcbb23ee3802e26a",
      "tree": "8b64a39b4bc1fda76dfdecdb9c97d05a017c99c2",
      "parents": [
        "addbad46ed0906cd584784423b9d0babc7476446"
      ],
      "author": {
        "name": "Venkatesh Pallipadi",
        "email": "venkatesh.pallipadi@intel.com",
        "time": "Thu Oct 16 19:00:08 2008 -0400"
      },
      "committer": {
        "name": "Len Brown",
        "email": "len.brown@intel.com",
        "time": "Thu Oct 16 19:00:08 2008 -0400"
      },
      "message": "cpuidle: upon BIOS bug, default to default_idle rather than polling\n\nhttp://bugzilla.kernel.org/show_bug.cgi?id\u003d11345\n\nSigned-off-by: Venkatesh Pallipadi \u003cvenkatesh.pallipadi@intel.com\u003e\nSigned-off-by: Len Brown \u003clen.brown@intel.com\u003e\n"
    },
    {
      "commit": "887e301aa1105326f1412a98749024263b1031c7",
      "tree": "0079a925ac94cb0205858aba07dc2d9714a7ddc4",
      "parents": [
        "3fa8749e584b55f1180411ab1b51117190bac1e5"
      ],
      "author": {
        "name": "Venkatesh Pallipadi",
        "email": "venkatesh.pallipadi@intel.com",
        "time": "Mon Sep 29 15:24:27 2008 -0700"
      },
      "committer": {
        "name": "Len Brown",
        "email": "len.brown@intel.com",
        "time": "Thu Oct 16 17:59:44 2008 -0400"
      },
      "message": "cpuidle: use last_state which can reflect the actual state entered\n\ncpuidle accounts the idle time for the C-state it was trying to enter and\nnot to the actual state that the driver eventually entered. The driver may\nselect a different state than the one chosen by cpuidle due to\nconstraints like bus-mastering, etc.\n\nChange the time acounting code to look at the dev-\u003elast_state after\nreturning from target_state-\u003eenter(). Driver can modify dev-\u003elast_state\ninternally, inside the enter routine to reflect the actual C-state\nentered.\n\nSigned-off-by: Venkatesh Pallipadi \u003cvenkatesh.pallipadi@intel.com\u003e\nTested-by: Kevin Hilman \u003ckhilman@deeprootsystems.com\u003e\nSigned-off-by: Len Brown \u003clen.brown@intel.com\u003e\n"
    },
    {
      "commit": "2e94d1f71f7e4404d997e6fb4f1618aa147d76f9",
      "tree": "73958a61dffff311cdcdc8edcb7e6a4953150601",
      "parents": [
        "ae4b748e81b7e366f04f55229d5e372e372c33af"
      ],
      "author": {
        "name": "Arjan van de Ven",
        "email": "arjan@linux.intel.com",
        "time": "Wed Sep 10 16:06:00 2008 -0700"
      },
      "committer": {
        "name": "Arjan van de Ven",
        "email": "arjan@linux.intel.com",
        "time": "Thu Sep 11 07:17:49 2008 -0700"
      },
      "message": "hrtimer: peek at the timer queue just before going idle\n\nAs part of going idle, we already look at the time of the next timer event to determine\nwhich C-state to select etc.\n\nThis patch adds functionality that causes the timers that are past their\nsoft expire time, to fire at this time, before we calculate the next wakeup\ntime. This functionality will thus avoid wakeups by running timers before\ngoing idle rather than specially waking up for it.\n\nSigned-off-by: Arjan van de Ven \u003carjan@linux.intel.com\u003e\n"
    },
    {
      "commit": "06d9e908b2248f983b186aaf569c58e1430db85d",
      "tree": "a72b6608c6f787df72fe34d1d58f02b4b8d1bef7",
      "parents": [
        "320eee776357db52d6fcfb11cff985b1976a4595"
      ],
      "author": {
        "name": "venkatesh.pallipadi@intel.com",
        "email": "venkatesh.pallipadi@intel.com",
        "time": "Wed Jul 30 19:21:44 2008 -0700"
      },
      "committer": {
        "name": "Andi Kleen",
        "email": "ak@linux.intel.com",
        "time": "Fri Aug 15 21:25:35 2008 +0200"
      },
      "message": "cpuidle: Make ladder governor honor latency requirements fully\n\nladder governor only honored latency requirement when promoting C-states.\nInstead. it should check for latency requirement on each idle call,\nand demote to appropriate C-state when there is a latency requirement change.\n\nSigned-off-by: Venkatesh Pallipadi \u003cvenkatesh.pallipadi@intel.com\u003e\nSigned-off-by: Andi Kleen \u003cak@linux.intel.com\u003e\n"
    },
    {
      "commit": "320eee776357db52d6fcfb11cff985b1976a4595",
      "tree": "29859b2e6209a35fc6a735fa4c195e7daeaa1b31",
      "parents": [
        "a2bd92023357e47f22a34d4cb1635453546662bc"
      ],
      "author": {
        "name": "venkatesh.pallipadi@intel.com",
        "email": "venkatesh.pallipadi@intel.com",
        "time": "Wed Jul 30 19:21:43 2008 -0700"
      },
      "committer": {
        "name": "Andi Kleen",
        "email": "ak@linux.intel.com",
        "time": "Fri Aug 15 21:25:25 2008 +0200"
      },
      "message": "cpuidle: Menu governor fix wrong usage of measured_us\n\nThere is a bug in menu governor where we have\n\t\tif (data-\u003eelapsed_us \u003c data-\u003eelapsed_us + measured_us)\n\nwith measured_us already having elapsed_us added in tickless case here\n\tunsigned int measured_us \u003d\n\t\tcpuidle_get_last_residency(dev) + data-\u003eelapsed_us;\n\nAlso, it should be last_residency, not measured_us, that need to be used to\ndo comparing and distinguish between expected \u0026 non-expected events.\n\nRefactor menu_reflect() to fix these two problems.\n\nSigned-off-by: Venkatesh Pallipadi \u003cvenkatesh.pallipadi@intel.com\u003e\nSigned-off-by: Wei Gang \u003cgang.wei@intel.com\u003e\nSigned-off-by: Andi Kleen \u003cak@linux.intel.com\u003e\n"
    },
    {
      "commit": "a2bd92023357e47f22a34d4cb1635453546662bc",
      "tree": "7bd9df24a4dc5ce24f944c1d70e0d96fcd0dc882",
      "parents": [
        "b635acec48bcaa9183fcbf4e3955616b0d4119b5"
      ],
      "author": {
        "name": "venkatesh.pallipadi@intel.com",
        "email": "venkatesh.pallipadi@intel.com",
        "time": "Wed Jul 30 19:21:42 2008 -0700"
      },
      "committer": {
        "name": "Andi Kleen",
        "email": "ak@linux.intel.com",
        "time": "Fri Aug 15 21:25:25 2008 +0200"
      },
      "message": "cpuidle: Do not use poll_idle unless user asks for it\n\npoll_idle was added to CPUIDLE, just as a low latency idle handler, to be\nused in cases when user desires CPUs not to enter any idle state at all. It\nwas supposed to be a run time idle\u003dpoll option to the user. But, it was indeed\ngetting used during normal menu and ladder governor default case, with no\nspecial user setting (Reported by Linus Torvalds).\n\nChange below ensures that poll_idle will not be used unless user explicitly\nasks pm_qos infrastructure for zero latency requirement.\n\nSigned-off-by: Venkatesh Pallipadi \u003cvenkatesh.pallipadi@intel.com\u003e\nSigned-off-by: Andi Kleen \u003cak@linux.intel.com\u003e\n"
    },
    {
      "commit": "66198f36aac21533245a77aac4a8f7c8c509d8bd",
      "tree": "a9723d112a0d78fde318a1f00d99301280a0199f",
      "parents": [
        "001e979d8f0c8fa04b5f01e829805dcd49d9416b"
      ],
      "author": {
        "name": "Rabin Vincent",
        "email": "rabin@rab.in",
        "time": "Tue Aug 12 15:08:45 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Aug 12 16:07:28 2008 -0700"
      },
      "message": "cpuidle: make sysfs attributes sysdev class attributes\n\nThese attributes are really sysdev class attributes.  The incorrect\ndefinition leads to an oops because of recent changes which make sysdev\nattributes use a different prototype.\n\nBased on Andi\u0027s f718cd4add5aea9d379faff92f162571e356cc5f (\"sched: make\nscheduler sysfs attributes sysdev class devices\")\n\nReported-by: Eric Sesterhenn \u003csnakebyte@gmx.de\u003e\nSigned-off-by: Rabin Vincent \u003crabin@rab.in\u003e\nAcked-by: Andi Kleen \u003cak@linux.intel.com\u003e\nCc: \"Li, Shaohua\" \u003cshaohua.li@intel.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "b032bf70df2e43149ce2b4e9a865b076c6140753",
      "tree": "ba022a0bc85598a29e21b7aa3f101c8043c24024",
      "parents": [
        "9ffc1699e36abd5baee188c8e36b1bb27d0d4278"
      ],
      "author": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Sun Jul 27 23:47:12 2008 +0200"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jul 28 08:31:58 2008 -0700"
      },
      "message": "ACPI/CPUIDLE: prevent setting pm_idle to NULL\n\npm_idle_save resp. pm_idle_old can be NULL when the restore code in\nacpi_processor_cst_has_changed() resp. cpuidle_uninstall_idle_handler()\nis called. This can set pm_idle unconditinally to NULL, which causes the\nkernel to panic when calling pm_idle in the x86 idle code. This was\ncovered by an extra check for !pm_idle in the x86 idle code, which was\nremoved during the x86 idle code refactoring.\n\nInstead of restoring the pm_idle check in the x86 code prevent the\nacpi/cpuidle code to set pm_idle to NULL.\n\nReported by: Dhaval Giani http://lkml.org/lkml/2008/7/2/309\nBased on a debug patch from Ingo Molnar\n\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "4a0b2b4dbe1335b8b9886ba3dc85a145d5d938ed",
      "tree": "c2d3a0f86ade5061a1bb9a14aa702323d729fd54",
      "parents": [
        "36ce6dad6e3cb3f050ed41e0beac0070d2062b25"
      ],
      "author": {
        "name": "Andi Kleen",
        "email": "andi@firstfloor.org",
        "time": "Tue Jul 01 18:48:41 2008 +0200"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Mon Jul 21 21:55:02 2008 -0700"
      },
      "message": "sysdev: Pass the attribute to the low level sysdev show/store function\n\nThis allow to dynamically generate attributes and share show/store\nfunctions between attributes. Right now most attributes are generated\nby special macros and lots of duplicated code. With the attribute\npassed it\u0027s instead possible to attach some data to the attribute\nand then use that in shared low level functions to do different things.\n\nI need this for the dynamically generated bank attributes in the x86\nmachine check code, but it\u0027ll allow some further cleanups.\n\nI converted all users in tree to the new show/store prototype. It\u0027s a single\nhuge patch to avoid unbisectable sections.\n\nRuntime tested: x86-32, x86-64\nCompiled only: ia64, powerpc\nNot compile tested/only grep converted: sh, arm, avr32\n\nSigned-off-by: Andi Kleen \u003cak@linux.intel.com\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "8691e5a8f691cc2a4fda0651e8d307aaba0e7d68",
      "tree": "6cb6767064d2d43441212566da2d83dcc9a0cd8e",
      "parents": [
        "490f5de52a87063fcb40e3b22f61b0779603ff6d"
      ],
      "author": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Fri Jun 06 11:18:06 2008 +0200"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Thu Jun 26 11:24:35 2008 +0200"
      },
      "message": "smp_call_function: get rid of the unused nonatomic/retry argument\n\nIt\u0027s never used and the comments refer to nonatomic and retry\ninterchangably. So get rid of it.\n\nAcked-by: Jeremy Fitzhardinge \u003cjeremy.fitzhardinge@citrix.com\u003e\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\n"
    },
    {
      "commit": "dcb84f335bee9c9a7781cfc5d74492dccaf066d2",
      "tree": "e24d4ca7df49b2a87862aa69c09d21ad45a024b7",
      "parents": [
        "e1094bfa26e5e94af2fea79e004614dbce42b008"
      ],
      "author": {
        "name": "Venkatesh Pallipadi",
        "email": "venkatesh.pallipadi@intel.com",
        "time": "Mon May 19 19:09:27 2008 -0400"
      },
      "committer": {
        "name": "Len Brown",
        "email": "len.brown@intel.com",
        "time": "Wed Jun 11 19:13:45 2008 -0400"
      },
      "message": "cpuidle acpi driver: fix oops on AC\u003c-\u003eDC\n\ncpuidle and acpi driver interaction bug with the way cpuidle_register_driver()\nis called. Due to this bug, there will be oops on\nAC\u003c-\u003eDC on some systems, where they support C-states in one DC and not in AC.\n\nThe current code does\nON BOOT:\n\tLook at CST and other C-state info to see whether more than C1 is\n\tsupported. If it is, then acpi processor_idle does a\n\tcpuidle_register_driver() call, which internally enables the device.\n\nON CST change notification (AC\u003c-\u003eDC) and on suspend-resume:\n\tacpi driver temporarily disables device, updates the device with\n\tany new C-states, and reenables the device.\n\nThe problem is is on boot, there are no C2, C3 states supported and we skip\nthe register. Later on AC\u003c-\u003eDC, we may get a CST notification and we try\nto reevaluate CST and enabled the device, without actually registering it.\nThis causes breakage as we try to create /sys fs sub directory, without the\nparent directory which is created at register time.\n\nThanks to Sanjeev for reporting the problem here.\nhttp://bugzilla.kernel.org/show_bug.cgi?id\u003d10394\n\nSigned-off-by: Venkatesh Pallipadi \u003cvenkatesh.pallipadi@intel.com\u003e\nSigned-off-by: Len Brown \u003clen.brown@intel.com\u003e\n"
    },
    {
      "commit": "8e92b6605da989c0aa8ff7e33306f36f0efd957c",
      "tree": "aafbc4628b907f4134ad91db9b160941f246dfcf",
      "parents": [
        "8b78cf602fd3bd97c0080edd22fe8fd5d0fa7832"
      ],
      "author": {
        "name": "Venki Pallipadi",
        "email": "venkatesh.pallipadi@intel.com",
        "time": "Fri Feb 29 10:24:32 2008 -0800"
      },
      "committer": {
        "name": "Len Brown",
        "email": "len.brown@intel.com",
        "time": "Wed Mar 26 00:58:19 2008 -0400"
      },
      "message": "cpuidle: fix 100% C0 statistics regression\n\ncommit 9b12e18cdc1553de62d931e73443c806347cd974\n\u0027ACPI: cpuidle: Support C1 idle time accounting\u0027\nwas implicated in a 100% C0 idle regression.\nhttp://bugzilla.kernel.org/show_bug.cgi?id\u003d10076\n\nIt pointed out a potential problem where the menu governor\nmay get confused by the C-state residency time from poll\nidle or C1 idle, where this timing info is not accurate.\nThis inaccuracy is due to interrupts being handled\nbefore we account for C-state exit.\n\nDo not mark TIME_VALID for CO poll state.\nMark C1 time as valid only with the MWAIT (CSTATE_FFH) entry method.\n\nThis makes governors use the timing information only when it is correct and\neliminates any wrong policy decisions that may result from invalid timing\ninformation.\n\nSigned-off-by: Venkatesh Pallipadi \u003cvenkatesh.pallipadi@intel.com\u003e\nSigned-off-by: Len Brown \u003clen.brown@intel.com\u003e\n"
    },
    {
      "commit": "8b78cf602fd3bd97c0080edd22fe8fd5d0fa7832",
      "tree": "e5f8d7f74c0c1dbd03af793e0b7cb8fb1c06ccdf",
      "parents": [
        "996520c1fdd2948addb629be56c9febf2967e02b"
      ],
      "author": {
        "name": "Yi Yang",
        "email": "yi.y.yang@intel.com",
        "time": "Mon Feb 25 08:46:12 2008 +0800"
      },
      "committer": {
        "name": "Len Brown",
        "email": "len.brown@intel.com",
        "time": "Wed Mar 26 00:45:26 2008 -0400"
      },
      "message": "cpuidle: fix cpuidle time and usage overflow\n\ncpuidle C-state sysfs node time and usage are very easy to overflow because\nthey are all of unsigned int type, time will overflow within about two hours,\nusage will take longer time to overflow, but they are increasing for ever.\n\nThis patch will convert them to unsigned long long.\n\nSigned-off-by: Yi Yang \u003cyi.y.yang@intel.com\u003e\nAcked-by: Venkatesh Pallipadi \u003cvenkatesh.pallipadi@intel.com\u003e\nSigned-off-by: Len Brown \u003clen.brown@intel.com\u003e\n"
    },
    {
      "commit": "4fcb2fcd4d0678b8ae103d257dcb28074cbfc7fa",
      "tree": "54bcf486976184804c8fc786d09a04e1ce26ef99",
      "parents": [
        "e760e716d47b48caf98da348368fd41b4a9b9e7e"
      ],
      "author": {
        "name": "Venkatesh Pallipadi",
        "email": "venkatesh.pallipadi@intel.com",
        "time": "Mon Feb 11 17:46:31 2008 -0800"
      },
      "committer": {
        "name": "Len Brown",
        "email": "len.brown@intel.com",
        "time": "Thu Feb 14 00:09:55 2008 -0500"
      },
      "message": "ACPI, cpuidle: Clarify C-state description in sysfs\n\nAdd a new sysfs entry under cpuidle states. desc - can be used by driver to\ncommunicate to userspace any specific information about the state.\nThis helps in identifying the exact hardware C-states behind the ACPI C-state\ndefinition.\n\nIdea is to export this through powertop, which will help to map the C-state\nreported by powertop to actual hardware C-state.\n\nSigned-off-by: Venkatesh Pallipadi \u003cvenkatesh.pallipadi@intel.com\u003e\nSigned-off-by: Len Brown \u003clen.brown@intel.com\u003e\n"
    },
    {
      "commit": "a6869cc4cfd633d909918f1489a6a8ac668cd6aa",
      "tree": "4a21f9e00972c080efb6e3e455f63edc54cb4e40",
      "parents": [
        "b1d0e4f535e10775cffde922208b49629169aeaa"
      ],
      "author": {
        "name": "Venki Pallipadi",
        "email": "venkatesh.pallipadi@intel.com",
        "time": "Fri Feb 08 17:05:44 2008 -0800"
      },
      "committer": {
        "name": "Len Brown",
        "email": "len.brown@intel.com",
        "time": "Sat Feb 09 03:33:40 2008 -0500"
      },
      "message": "cpuidle: build fix for non-x86\n\nThe last posted version of this patch gave compile error\non IA64. So, here goes yet another rewrite of the patch.\n\nConvert cpu_idle_wait() to cpuidle_kick_cpus() which is\nSMP-only, and gives error on non supported CPU.\n\nChanges from last patch sent by Kevin:\nMoved the definition of kick_cpus back to cpuidle.c from cpuidle.h:\n* Having it in .h gives #error on archs which includes the header file without\n  actually having CPU_IDLE configured. To make it work in .h, we need one more\n  #ifdef around that code which makes it messy.\n* Also, the function is only called from one file. So, it can be in declared\n  statically in .c rather than making it available to everyone who includes\n  the .h file.\n\nSigned-off-by: Venkatesh Pallipadi \u003cvenkatesh.pallipadi@intel.com\u003e\nSigned-off-by: Kevin Hilman \u003ckhilman@mvista.com\u003e\nSigned-off-by: Len Brown \u003clen.brown@intel.com\u003e\n"
    },
    {
      "commit": "9b7131542178f5f948e4bb6bea6e1c545e697b06",
      "tree": "f502264c3768d4bf8ca28d8f5cc10d45e5897179",
      "parents": [
        "81e242d0efafb319938d511b115088a5c4523c91"
      ],
      "author": {
        "name": "Len Brown",
        "email": "len.brown@intel.com",
        "time": "Thu Feb 07 04:16:34 2008 -0500"
      },
      "committer": {
        "name": "Len Brown",
        "email": "len.brown@intel.com",
        "time": "Thu Feb 07 04:16:34 2008 -0500"
      },
      "message": "Revert \"cpuidle: build fix for non-x86\"\n\nThis reverts commit f757397097d0713c949af76dccabb65a2785782e.\nwhich ironically broke the ia64 build\n"
    },
    {
      "commit": "acf63867ae06ef95eea7bf445ded2f05528a81b1",
      "tree": "35f65ce7d7520b9c4920086382f1838107f836ca",
      "parents": [
        "c64768a7d671bcde80bca2aed93f9e07edc069c3",
        "f757397097d0713c949af76dccabb65a2785782e",
        "9a0b841586c3c6c846effdbe75885c2ebc0031b0"
      ],
      "author": {
        "name": "Len Brown",
        "email": "len.brown@intel.com",
        "time": "Thu Feb 07 03:11:05 2008 -0500"
      },
      "committer": {
        "name": "Len Brown",
        "email": "len.brown@intel.com",
        "time": "Thu Feb 07 03:11:05 2008 -0500"
      },
      "message": "Merge branches \u0027release\u0027, \u0027cpuidle-2.6.25\u0027 and \u0027idle\u0027 into release\n"
    },
    {
      "commit": "9a0b841586c3c6c846effdbe75885c2ebc0031b0",
      "tree": "d9522222094b6357c7933489b98c7249326e1cf8",
      "parents": [
        "9b12e18cdc1553de62d931e73443c806347cd974"
      ],
      "author": {
        "name": "venkatesh.pallipadi@intel.com",
        "email": "venkatesh.pallipadi@intel.com",
        "time": "Thu Jan 31 17:35:06 2008 -0800"
      },
      "committer": {
        "name": "Len Brown",
        "email": "len.brown@intel.com",
        "time": "Thu Feb 07 02:20:15 2008 -0500"
      },
      "message": "cpuidle: Add a poll_idle method\n\nAdd a default poll idle state with 0 latency. Provides an option to users\nto use poll_idle by using 0 as the latency requirement.\n\nSigned-off-by: Venkatesh Pallipadi \u003cvenkatesh.pallipadi@intel.com\u003e\nSigned-off-by: Len Brown \u003clen.brown@intel.com\u003e\n"
    },
    {
      "commit": "d82b35186eaa816267f044bd70cc0acb3c7971a3",
      "tree": "e8de56c122fd8040086e974895afbb8299045c0f",
      "parents": [
        "4ef7229ffa93695e346d510b871452811509ea65"
      ],
      "author": {
        "name": "Mark Gross",
        "email": "mgross@linux.intel.com",
        "time": "Mon Feb 04 22:30:08 2008 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Tue Feb 05 09:44:22 2008 -0800"
      },
      "message": "pm qos infrastructure and interface\n\nThe following patch is a generalization of the latency.c implementation done\nby Arjan last year.  It provides infrastructure for more than one parameter,\nand exposes a user mode interface for processes to register pm_qos\nexpectations of processes.\n\nThis interface provides a kernel and user mode interface for registering\nperformance expectations by drivers, subsystems and user space applications on\none of the parameters.\n\nCurrently we have {cpu_dma_latency, network_latency, network_throughput} as\nthe initial set of pm_qos parameters.\n\nThe infrastructure exposes multiple misc device nodes one per implemented\nparameter.  The set of parameters implement is defined by pm_qos_power_init()\nand pm_qos_params.h.  This is done because having the available parameters\nbeing runtime configurable or changeable from a driver was seen as too easy to\nabuse.\n\nFor each parameter a list of performance requirements is maintained along with\nan aggregated target value.  The aggregated target value is updated with\nchanges to the requirement list or elements of the list.  Typically the\naggregated target value is simply the max or min of the requirement values\nheld in the parameter list elements.\n\n\u003eFrom kernel mode the use of this interface is simple:\n\npm_qos_add_requirement(param_id, name, target_value):\n\n  Will insert a named element in the list for that identified PM_QOS\n  parameter with the target value.  Upon change to this list the new target is\n  recomputed and any registered notifiers are called only if the target value\n  is now different.\n\npm_qos_update_requirement(param_id, name, new_target_value):\n\n  Will search the list identified by the param_id for the named list element\n  and then update its target value, calling the notification tree if the\n  aggregated target is changed.  with that name is already registered.\n\npm_qos_remove_requirement(param_id, name):\n\n  Will search the identified list for the named element and remove it, after\n  removal it will update the aggregate target and call the notification tree\n  if the target was changed as a result of removing the named requirement.\n\n\u003eFrom user mode:\n\n  Only processes can register a pm_qos requirement.  To provide for\n  automatic cleanup for process the interface requires the process to register\n  its parameter requirements in the following way:\n\n  To register the default pm_qos target for the specific parameter, the\n  process must open one of /dev/[cpu_dma_latency, network_latency,\n  network_throughput]\n\n  As long as the device node is held open that process has a registered\n  requirement on the parameter.  The name of the requirement is\n  \"process_\u003cPID\u003e\" derived from the current-\u003epid from within the open system\n  call.\n\n  To change the requested target value the process needs to write a s32\n  value to the open device node.  This translates to a\n  pm_qos_update_requirement call.\n\n  To remove the user mode request for a target value simply close the device\n  node.\n\n[akpm@linux-foundation.org: fix warnings]\n[akpm@linux-foundation.org: fix build]\n[akpm@linux-foundation.org: fix build again]\n[akpm@linux-foundation.org: coding-style fixes]\nSigned-off-by: mark gross \u003cmgross@linux.intel.com\u003e\nCc: \"John W. Linville\" \u003clinville@tuxdriver.com\u003e\nCc: Len Brown \u003clenb@kernel.org\u003e\nCc: Jaroslav Kysela \u003cperex@suse.cz\u003e\nCc: Takashi Iwai \u003ctiwai@suse.de\u003e\nCc: Arjan van de Ven \u003carjan@infradead.org\u003e\nCc: Venki Pallipadi \u003cvenkatesh.pallipadi@intel.com\u003e\nCc: Adam Belay \u003cabelay@novell.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "f757397097d0713c949af76dccabb65a2785782e",
      "tree": "b2f3ee95ae2e3c501cb0e1c8b1fd236969d97044",
      "parents": [
        "25de5718356e264820625600a9edca1df5ff26f8"
      ],
      "author": {
        "name": "Kevin Hilman",
        "email": "khilman@mvista.com",
        "time": "Thu Jan 31 17:28:18 2008 -0800"
      },
      "committer": {
        "name": "Len Brown",
        "email": "len.brown@intel.com",
        "time": "Thu Jan 31 22:50:48 2008 -0500"
      },
      "message": "cpuidle: build fix for non-x86\n\nConvert cpu_idle_wait() to cpuidle_kick_cpus() macro which is\nSMP-only, and gives error on non supported CPU.\n\nSigned-off-by: Kevin Hilman \u003ckhilman@mvista.com\u003e\nAcked-by: Venkatesh Pallipadi \u003cvenkatesh.pallipadi@intel.com\u003e\nAcked-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\nSigned-off-by: Len Brown \u003clen.brown@intel.com\u003e\n"
    },
    {
      "commit": "c10997f6575f476ff38442fa18fd4a0d80345f9d",
      "tree": "9b2bb7e647bd39fb80f23d7a6b34bf2587d660a7",
      "parents": [
        "38a382ae5dd4f4d04e3046816b0a41836094e538"
      ],
      "author": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Thu Dec 20 08:13:05 2007 -0800"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Thu Jan 24 20:40:40 2008 -0800"
      },
      "message": "Kobject: convert drivers/* from kobject_unregister() to kobject_put()\n\nThere is no need for kobject_unregister() anymore, thanks to Kay\u0027s\nkobject cleanup changes, so replace all instances of it with\nkobject_put().\n\n\nCc: Kay Sievers \u003ckay.sievers@vrfy.org\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "94f57f33680922197581b127b3badde7ef658258",
      "tree": "6bd9162944d0b90a4ae153f3ec29d0073d64f67b",
      "parents": [
        "b2ed215a3338b8b16187be8d136153054118a41e"
      ],
      "author": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Mon Dec 17 15:54:39 2007 -0400"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Thu Jan 24 20:40:28 2008 -0800"
      },
      "message": "Kobject: change drivers/cpuidle/sysfs.c to use kobject_init_and_add\n\nStop using kobject_register, as this way we can control the sending of\nthe uevent properly, after everything is properly initialized.\n\nCc: Shaohua Li \u003cshaohua.li@intel.com\u003e\nCc: Kay Sievers \u003ckay.sievers@vrfy.org\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "60555e371d56a1e410d9fb6fc68f4e953f8f4109",
      "tree": "556c6b890faa824b2679ae6cf58234de5df75fa8",
      "parents": [
        "2ffbb8377c7a0713baf6644e285adc27a5654582"
      ],
      "author": {
        "name": "len.brown@intel.com",
        "email": "len.brown@intel.com",
        "time": "Mon Nov 19 22:22:37 2007 -0500"
      },
      "committer": {
        "name": "Len Brown",
        "email": "len.brown@intel.com",
        "time": "Mon Nov 19 22:22:37 2007 -0500"
      },
      "message": "ACPI: CONFIG_CPU_IDLE\u003dACPI by default\n\nIn Linux-2.6.24, CPU_IDLE went upstream, default \u003dn.\nFor Linux-2.6.25, enable it by default on ACPI systems.\nFor Linux-2.6.26, we plan to enable it always on ACPI systems.\n\nSigned-off-by: Len Brown \u003clen.brown@intel.com\u003e\n"
    },
    {
      "commit": "83788c0caed3a425f64fa88fde7c78746b9cdd76",
      "tree": "b153a7d92c3f9f40dba1706349ef7c583938516a",
      "parents": [
        "4d8b4e1e02b4bb200e81b2efc915da6ce59d5d72"
      ],
      "author": {
        "name": "Adrian Bunk",
        "email": "bunk@kernel.org",
        "time": "Mon Oct 29 13:49:13 2007 +0100"
      },
      "committer": {
        "name": "Len Brown",
        "email": "len.brown@intel.com",
        "time": "Mon Oct 29 17:27:50 2007 -0400"
      },
      "message": "cpuidle: remove unused exports\n\nThis patch removes the following unused exports:\n- cpuidle_devices\n- cpuidle_register_governor\n- cpuidle_unregister_governor\n\nSigned-off-by: Adrian Bunk \u003cbunk@kernel.org\u003e\nSigned-off-by: Len Brown \u003clen.brown@intel.com\u003e\n"
    },
    {
      "commit": "4f86d3a8e297205780cca027e974fd5f81064780",
      "tree": "3c89624dea48a9de756256c935660ff7b24d5376",
      "parents": [
        "bbf25010f1a6b761914430f5fca081ec8c7accd1"
      ],
      "author": {
        "name": "Len Brown",
        "email": "len.brown@intel.com",
        "time": "Wed Oct 03 18:58:00 2007 -0400"
      },
      "committer": {
        "name": "Len Brown",
        "email": "len.brown@intel.com",
        "time": "Wed Oct 10 00:12:41 2007 -0400"
      },
      "message": "cpuidle: consolidate 2.6.22 cpuidle branch into one patch\n\ncommit e5a16b1f9eec0af7cfa0830304b41c1c0833cf9f\nAuthor: Len Brown \u003clen.brown@intel.com\u003e\nDate:   Tue Oct 2 23:44:44 2007 -0400\n\n    cpuidle: shrink diff\n\n    processor_idle.c |  440 +++++++++++++++++++++++++++++++++++++++++--\n    1 file changed, 429 insertions(+), 11 deletions(-)\n\n    Signed-off-by: Len Brown \u003clen.brown@intel.com\u003e\n\ncommit dfbb9d5aedfb18848a3e0d6f6e3e4969febb209c\nAuthor: Len Brown \u003clen.brown@intel.com\u003e\nDate:   Wed Sep 26 02:17:55 2007 -0400\n\n    cpuidle: reduce diff size\n\n    Reduces the cpuidle processor_idle.c diff vs 2.6.22 from this\n     processor_idle.c | 2006 ++++++++++++++++++++++++++-----------------\n     1 file changed, 1219 insertions(+), 787 deletions(-)\n\n    to this:\n     processor_idle.c |  502 +++++++++++++++++++++++++++++++++++++++----\n     1 file changed, 458 insertions(+), 44 deletions(-)\n\n    ...for the purpose of making the cpuilde patch less invasive\n    and easier to review.\n\n    no functional changes.  build tested only.\n\n    Signed-off-by: Len Brown \u003clen.brown@intel.com\u003e\n\ncommit 889172fc915f5a7fe20f35b133cbd205ce69bf6c\nAuthor: Venki Pallipadi \u003cvenkatesh.pallipadi@intel.com\u003e\nDate:   Thu Sep 13 13:40:05 2007 -0700\n\n    cpuidle: Retain old ACPI policy for !CONFIG_CPU_IDLE\n\n    Retain the old policy in processor_idle, so that when CPU_IDLE is not\n    configured, old C-state policy will still be used. This provides a\n    clean gradual migration path from old ACPI policy to new cpuidle\n    based policy.\n\n    Signed-off-by: Venkatesh Pallipadi \u003cvenkatesh.pallipadi@intel.com\u003e\n    Signed-off-by: Len Brown \u003clen.brown@intel.com\u003e\n\ncommit 9544a8181edc7ecc33b3bfd69271571f98ed08bc\nAuthor: Venki Pallipadi \u003cvenkatesh.pallipadi@intel.com\u003e\nDate:   Thu Sep 13 13:39:17 2007 -0700\n\n    cpuidle: Configure governors by default\n\n    Quoting Len \"Do not give an option to users to shoot themselves in the foot\".\n\n    Remove the configurability of ladder and menu governors as they are\n    needed for default policy of cpuidle. That way users will not be able to\n    have cpuidle without any policy loosing all C-state power savings.\n\n    Signed-off-by: Venkatesh Pallipadi \u003cvenkatesh.pallipadi@intel.com\u003e\n    Signed-off-by: Len Brown \u003clen.brown@intel.com\u003e\n\ncommit 8975059a2c1e56cfe83d1bcf031bcf4cb39be743\nAuthor: Adam Belay \u003cabelay@novell.com\u003e\nDate:   Tue Aug 21 18:27:07 2007 -0400\n\n    CPUIDLE: load ACPI properly when CPUIDLE is disabled\n\n    Change the registration return codes for when CPUIDLE\n    support is not compiled into the kernel.  As a result, the ACPI\n    processor driver will load properly even if CPUIDLE is unavailable.\n    However, it may be possible to cleanup the ACPI processor driver further\n    and eliminate some dead code paths.\n\n    Signed-off-by: Adam Belay \u003cabelay@novell.com\u003e\n    Acked-by: Venkatesh Pallipadi \u003cvenkatesh.pallipadi@intel.com\u003e\n    Signed-off-by: Len Brown \u003clen.brown@intel.com\u003e\n\ncommit e0322e2b58dd1b12ec669bf84693efe0dc2414a8\nAuthor: Adam Belay \u003cabelay@novell.com\u003e\nDate:   Tue Aug 21 18:26:06 2007 -0400\n\n    CPUIDLE: remove cpuidle_get_bm_activity()\n\n    Remove cpuidle_get_bm_activity() and updates governors\n    accordingly.\n\n    Signed-off-by: Adam Belay \u003cabelay@novell.com\u003e\n    Acked-by: Venkatesh Pallipadi \u003cvenkatesh.pallipadi@intel.com\u003e\n    Signed-off-by: Len Brown \u003clen.brown@intel.com\u003e\n\ncommit 18a6e770d5c82ba26653e53d240caa617e09e9ab\nAuthor: Adam Belay \u003cabelay@novell.com\u003e\nDate:   Tue Aug 21 18:25:58 2007 -0400\n\n    CPUIDLE: max_cstate fix\n\n    Currently max_cstate is limited to 0, resulting in no idle processor\n    power management on ACPI platforms.  This patch restores the value to\n    the array size.\n\n    Signed-off-by: Adam Belay \u003cabelay@novell.com\u003e\n    Acked-by: Venkatesh Pallipadi \u003cvenkatesh.pallipadi@intel.com\u003e\n    Signed-off-by: Len Brown \u003clen.brown@intel.com\u003e\n\ncommit 1fdc0887286179b40ce24bcdbde663172e205ef0\nAuthor: Adam Belay \u003cabelay@novell.com\u003e\nDate:   Tue Aug 21 18:25:40 2007 -0400\n\n    CPUIDLE: handle BM detection inside the ACPI Processor driver\n\n    Update the ACPI processor driver to detect BM activity and\n    limit state entry depth internally, rather than exposing such\n    requirements to CPUIDLE.  As a result, CPUIDLE can drop this\n    ACPI-specific interface and become more platform independent.  BM\n    activity is now handled much more aggressively than it was in the\n    original implementation, so some testing coverage may be needed to\n    verify that this doesn\u0027t introduce any DMA buffer under-run issues.\n\n    Signed-off-by: Adam Belay \u003cabelay@novell.com\u003e\n    Acked-by: Venkatesh Pallipadi \u003cvenkatesh.pallipadi@intel.com\u003e\n    Signed-off-by: Len Brown \u003clen.brown@intel.com\u003e\n\ncommit 0ef38840db666f48e3cdd2b769da676c57228dd9\nAuthor: Adam Belay \u003cabelay@novell.com\u003e\nDate:   Tue Aug 21 18:25:14 2007 -0400\n\n    CPUIDLE: menu governor updates\n\n    Tweak the menu governor to more effectively handle non-timer\n    break events.  Non-timer break events are detected by comparing the\n    actual sleep time to the expected sleep time.  In future revisions, it\n    may be more reliable to use the timer data structures directly.\n\n    Signed-off-by: Adam Belay \u003cabelay@novell.com\u003e\n    Acked-by: Venkatesh Pallipadi \u003cvenkatesh.pallipadi@intel.com\u003e\n    Signed-off-by: Len Brown \u003clen.brown@intel.com\u003e\n\ncommit bb4d74fca63fa96cf3ace644b15ae0f12b7df5a1\nAuthor: Adam Belay \u003cabelay@novell.com\u003e\nDate:   Tue Aug 21 18:24:40 2007 -0400\n\n    CPUIDLE: fix \u0027current_governor\u0027 sysfs entry\n\n    Allow the \"current_governor\" sysfs entry to properly handle\n    input terminated with \u0027\\n\u0027.\n\n    Signed-off-by: Adam Belay \u003cabelay@novell.com\u003e\n    Acked-by: Venkatesh Pallipadi \u003cvenkatesh.pallipadi@intel.com\u003e\n    Signed-off-by: Len Brown \u003clen.brown@intel.com\u003e\n\ncommit df3c71559bb69b125f1a48971bf0d17f78bbdf47\nAuthor: Len Brown \u003clen.brown@intel.com\u003e\nDate:   Sun Aug 12 02:00:45 2007 -0400\n\n    cpuidle: fix IA64 build (again)\n\n    Signed-off-by: Len Brown \u003clen.brown@intel.com\u003e\n\ncommit a02064579e3f9530fd31baae16b1fc46b5a7bca8\nAuthor: Venkatesh Pallipadi \u003cvenkatesh.pallipadi@intel.com\u003e\nDate:   Sun Aug 12 01:39:27 2007 -0400\n\n    cpuidle: Remove support for runtime changing of max_cstate\n\n    Remove support for runtime changeability of max_cstate. Drivers can use\n    use latency APIs.\n\n    max_cstate can still be used as a boot time option and dmi override.\n\n    Signed-off-by: Venkatesh Pallipadi \u003cvenkatesh.pallipadi@intel.com\u003e\n    Signed-off-by: Len Brown \u003clen.brown@intel.com\u003e\n\ncommit 0912a44b13adf22f5e3f607d263aed23b4910d7e\nAuthor: Venkatesh Pallipadi \u003cvenkatesh.pallipadi@intel.com\u003e\nDate:   Sun Aug 12 01:39:16 2007 -0400\n\n    cpuidle: Remove ACPI cstate_limit calls from ipw2100\n\n    ipw2100 already has code to use accetable_latency interfaces to limit the\n    C-state. Remove the calls to acpi_set_cstate_limit and acpi_get_cstate_limit\n    as they are redundant.\n\n    Signed-off-by: Venkatesh Pallipadi \u003cvenkatesh.pallipadi@intel.com\u003e\n    Signed-off-by: Len Brown \u003clen.brown@intel.com\u003e\n\ncommit c649a76e76be6bff1fd770d0a775798813a3f6e0\nAuthor: Venkatesh Pallipadi \u003cvenkatesh.pallipadi@intel.com\u003e\nDate:   Sun Aug 12 01:35:39 2007 -0400\n\n    cpuidle: compile fix for pause and resume functions\n\n    Fix the compilation failure when cpuidle is not compiled in.\n\n    Signed-off-by: Venkatesh Pallipadi \u003cvenkatesh.pallipadi@intel.com\u003e\n    Acked-by: Adam Belay \u003cadam.belay@novell.com\u003e\n    Signed-off-by: Len Brown \u003clen.brown@intel.com\u003e\n\ncommit 2305a5920fb8ee6ccec1c62ade05aa8351091d71\nAuthor: Adam Belay \u003cabelay@novell.com\u003e\nDate:   Thu Jul 19 00:49:00 2007 -0400\n\n    cpuidle: re-write\n\n    Some portions have been rewritten to make the code cleaner and lighter\n    weight.  The following is a list of changes:\n\n    1.) the state name is now included in the sysfs interface\n    2.) detection, hotplug, and available state modifications are handled by\n    CPUIDLE drivers directly\n    3.) the CPUIDLE idle handler is only ever installed when at least one\n    cpuidle_device is enabled and ready\n    4.) the menu governor BM code no longer overflows\n    5.) the sysfs attributes are now printed as unsigned integers, avoiding\n    negative values\n    6.) a variety of other small cleanups\n\n    Also, Idle drivers are no longer swappable during runtime through the\n    CPUIDLE sysfs inteface.  On i386 and x86_64 most idle handlers (e.g.\n    poll, mwait, halt, etc.) don\u0027t benefit from an infrastructure that\n    supports multiple states, so I think using a more general case idle\n    handler selection mechanism would be cleaner.\n\n    Signed-off-by: Adam Belay \u003cabelay@novell.com\u003e\n    Acked-by: Venkatesh Pallipadi \u003cvenkatesh.pallipadi@intel.com\u003e\n    Acked-by: Shaohua Li \u003cshaohua.li@intel.com\u003e\n    Signed-off-by: Len Brown \u003clen.brown@intel.com\u003e\n\ncommit df25b6b56955714e6e24b574d88d1fd11f0c3ee5\nAuthor: Len Brown \u003clen.brown@intel.com\u003e\nDate:   Tue Jul 24 17:08:21 2007 -0400\n\n    cpuidle: fix IA64 buid\n\n    Signed-off-by: Len Brown \u003clen.brown@intel.com\u003e\n\ncommit fd6ada4c14488755ff7068860078c437431fbccd\nAuthor: Adrian Bunk \u003cbunk@stusta.de\u003e\nDate:   Mon Jul 9 11:33:13 2007 -0700\n\n    cpuidle: static\n\n    make cpuidle_replace_governor() static\n\n    Signed-off-by: Adrian Bunk \u003cbunk@stusta.de\u003e\n    Cc: Venkatesh Pallipadi \u003cvenkatesh.pallipadi@intel.com\u003e\n    Signed-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\n    Signed-off-by: Len Brown \u003clen.brown@intel.com\u003e\n\ncommit c1d4a2cebcadf2429c0c72e1d29aa2a9684c32e0\nAuthor: Adrian Bunk \u003cbunk@stusta.de\u003e\nDate:   Tue Jul 3 00:54:40 2007 -0400\n\n    cpuidle: static\n\n    This patch makes the needlessly global struct menu_governor static.\n\n    Signed-off-by: Adrian Bunk \u003cbunk@stusta.de\u003e\n    Signed-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\n    Signed-off-by: Len Brown \u003clen.brown@intel.com\u003e\n\ncommit dbf8780c6e8d572c2c273da97ed1cca7608fd999\nAuthor: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nDate:   Tue Jul 3 00:49:14 2007 -0400\n\n    export symbol tick_nohz_get_sleep_length\n\n    ERROR: \"tick_nohz_get_sleep_length\" [drivers/cpuidle/governors/menu.ko] undefined!\n    ERROR: \"tick_nohz_get_idle_jiffies\" [drivers/cpuidle/governors/menu.ko] undefined!\n\n    And please be sure to get your changes to core kernel suitably reviewed.\n\n    Cc: Adam Belay \u003cabelay@novell.com\u003e\n    Cc: Venki Pallipadi \u003cvenkatesh.pallipadi@intel.com\u003e\n    Cc: Ingo Molnar \u003cmingo@elte.hu\u003e\n    Cc: Thomas Gleixner \u003ctglx@linutronix.de\u003e\n    Cc: john stultz \u003cjohnstul@us.ibm.com\u003e\n    Signed-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\n    Signed-off-by: Len Brown \u003clen.brown@intel.com\u003e\n\ncommit 29f0e248e7017be15f99febf9143a2cef00b2961\nAuthor: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nDate:   Tue Jul 3 00:43:04 2007 -0400\n\n    tick.h needs hrtimer.h\n\n    It uses hrtimers.\n\n    Signed-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\n    Signed-off-by: Len Brown \u003clen.brown@intel.com\u003e\n\ncommit e40cede7d63a029e92712a3fe02faee60cc38fb4\nAuthor: Venki Pallipadi \u003cvenkatesh.pallipadi@intel.com\u003e\nDate:   Tue Jul 3 00:40:34 2007 -0400\n\n    cpuidle: first round of documentation updates\n\n    Documentation changes based on Pavel\u0027s feedback.\n\n    Signed-off-by: Venkatesh Pallipadi \u003cvenkatesh.pallipadi@intel.com\u003e\n    Signed-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\n    Signed-off-by: Len Brown \u003clen.brown@intel.com\u003e\n\ncommit 83b42be2efece386976507555c29e7773a0dfcd1\nAuthor: Venki Pallipadi \u003cvenkatesh.pallipadi@intel.com\u003e\nDate:   Tue Jul 3 00:39:25 2007 -0400\n\n    cpuidle: add rating to the governors and pick the one with highest rating by default\n\n    Introduce a governor rating scheme to pick the right governor by default.\n\n    Signed-off-by: Venkatesh Pallipadi \u003cvenkatesh.pallipadi@intel.com\u003e\n    Signed-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\n    Signed-off-by: Len Brown \u003clen.brown@intel.com\u003e\n\ncommit d2a74b8c5e8f22def4709330d4bfc4a29209b71c\nAuthor: Venki Pallipadi \u003cvenkatesh.pallipadi@intel.com\u003e\nDate:   Tue Jul 3 00:38:08 2007 -0400\n\n    cpuidle: make cpuidle sysfs driver governor switch off by default\n\n    Make default cpuidle sysfs to show current_governor and current_driver in\n    read-only mode.  More elaborate available_governors and available_drivers with\n    writeable current_governor and current_driver interface only appear with\n    \"cpuidle_sysfs_switch\" boot parameter.\n\n    Signed-off-by: Venkatesh Pallipadi \u003cvenkatesh.pallipadi@intel.com\u003e\n    Signed-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\n    Signed-off-by: Len Brown \u003clen.brown@intel.com\u003e\n\ncommit 1f60a0e80bf83cf6b55c8845bbe5596ed8f6307b\nAuthor: Venki Pallipadi \u003cvenkatesh.pallipadi@intel.com\u003e\nDate:   Tue Jul 3 00:37:00 2007 -0400\n\n    cpuidle: menu governor: change the early break condition\n\n    Change the C-state early break out algorithm in menu governor.\n\n    We only look at early breakouts that result in wakeups shorter than idle\n    state\u0027s target_residency.  If such a breakout is frequent enough, eliminate\n    the particular idle state upto a timeout period.\n\n    Signed-off-by: Venkatesh Pallipadi \u003cvenkatesh.pallipadi@intel.com\u003e\n    Signed-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\n    Signed-off-by: Len Brown \u003clen.brown@intel.com\u003e\n\ncommit 45a42095cf64b003b4a69be3ce7f434f97d7af51\nAuthor: Venki Pallipadi \u003cvenkatesh.pallipadi@intel.com\u003e\nDate:   Tue Jul 3 00:35:38 2007 -0400\n\n    cpuidle: fix uninitialized variable in sysfs routine\n\n    Fix the uninitialized usage of ret.\n\n    Signed-off-by: Venkatesh Pallipadi \u003cvenkatesh.pallipadi@intel.com\u003e\n    Signed-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\n    Signed-off-by: Len Brown \u003clen.brown@intel.com\u003e\n\ncommit 80dca7cdba3e6ee13eae277660873ab9584eb3be\nAuthor: Venki Pallipadi \u003cvenkatesh.pallipadi@intel.com\u003e\nDate:   Tue Jul 3 00:34:16 2007 -0400\n\n    cpuidle: reenable /proc/acpi//power interface for the time being\n\n    Keep /proc/acpi/processor/CPU*/power around for a while as powertop depends\n    on it. It will be marked deprecated and removed in future. powertop can use\n    cpuidle interfaces instead.\n\n    Signed-off-by: Venkatesh Pallipadi \u003cvenkatesh.pallipadi@intel.com\u003e\n    Signed-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\n    Signed-off-by: Len Brown \u003clen.brown@intel.com\u003e\n\ncommit 589c37c2646c5e3813a51255a5ee1159cb4c33fc\nAuthor: Venki Pallipadi \u003cvenkatesh.pallipadi@intel.com\u003e\nDate:   Tue Jul 3 00:32:37 2007 -0400\n\n    cpuidle: menu governor and hrtimer compile fix\n\n    Compile fix for menu governor.\n\n    Signed-off-by: Venkatesh Pallipadi \u003cvenkatesh.pallipadi@intel.com\u003e\n    Signed-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\n    Signed-off-by: Len Brown \u003clen.brown@intel.com\u003e\n\ncommit 0ba80bd9ab3ed304cb4f19b722e4cc6740588b5e\nAuthor: Len Brown \u003clen.brown@intel.com\u003e\nDate:   Thu May 31 22:51:43 2007 -0400\n\n    cpuidle: build fix - cpuidle vs ipw2100 module\n\n    ERROR: \"acpi_set_cstate_limit\" [drivers/net/wireless/ipw2100.ko] undefined!\n\n    Signed-off-by: Len Brown \u003clen.brown@intel.com\u003e\n\ncommit d7d8fa7f96a7f7682be7c6cc0cc53fa7a18c3b58\nAuthor: Adam Belay \u003cabelay@novell.com\u003e\nDate:   Sat Mar 24 03:47:07 2007 -0400\n\n    cpuidle: add the \u0027menu\u0027 governor\n\n    Here is my first take at implementing an idle PM governor that takes\n    full advantage of NO_HZ.  I call it the \u0027menu\u0027 governor because it\n    considers the full list of idle states before each entry.\n\n    I\u0027ve kept the implementation fairly simple.  It attempts to guess the\n    next residency time and then chooses a state that would meet at least\n    the break-even point between power savings and entry cost.  To this end,\n    it selects the deepest idle state that satisfies the following\n    constraints:\n         1. If the idle time elapsed since bus master activity was detected\n            is below a threshold (currently 20 ms), then limit the selection\n            to C2-type or above.\n         2. Do not choose a state with a break-even residency that exceeds\n            the expected time remaining until the next timer interrupt.\n         3. Do not choose a state with a break-even residency that exceeds\n            the elapsed time between the last pair of break events,\n            excluding timer interrupts.\n\n    This governor has an advantage over \"ladder\" governor because it\n    proactively checks how much time remains until the next timer interrupt\n    using the tick infrastructure.  Also, it handles device interrupt\n    activity more intelligently by not including timer interrupts in break\n    event calculations.  Finally, it doesn\u0027t make policy decisions using the\n    number of state entries, which can have variable residency times (NO_HZ\n    makes these potentially very large), and instead only considers sleep\n    time deltas.\n\n    The menu governor can be selected during runtime using the cpuidle sysfs\n    interface like so:\n    \"echo \"menu\" \u003e /sys/devices/system/cpu/cpuidle/current_governor\"\n\n    Signed-off-by: Adam Belay \u003cabelay@novell.com\u003e\n    Signed-off-by: Len Brown \u003clen.brown@intel.com\u003e\n\ncommit a4bec7e65aa3b7488b879d971651cc99a6c410fe\nAuthor: Adam Belay \u003cabelay@novell.com\u003e\nDate:   Sat Mar 24 03:47:03 2007 -0400\n\n    cpuidle: export time until next timer interrupt using NO_HZ\n\n    Expose information about the time remaining until the next\n    timer interrupt expires by utilizing the dynticks infrastructure.\n    Also modify the main idle loop to allow dynticks to handle\n    non-interrupt break events (e.g. DMA).  Finally, expose sleep ticks\n    information to external code.  Thomas Gleixner is responsible for much\n    of the code in this patch.  However, I\u0027ve made some additional changes,\n    so I\u0027m probably responsible if there are any bugs or oversights :)\n\n    Signed-off-by: Adam Belay \u003cabelay@novell.com\u003e\n    Signed-off-by: Len Brown \u003clen.brown@intel.com\u003e\n\ncommit 2929d8996fbc77f41a5ff86bb67cdde3ca7d2d72\nAuthor: Adam Belay \u003cabelay@novell.com\u003e\nDate:   Sat Mar 24 03:46:58 2007 -0400\n\n    cpuidle: governor API changes\n\n    This patch prepares cpuidle for the menu governor.  It adds an optional\n    stage after idle state entry to give the governor an opportunity to\n    check why the state was exited.  Also it makes sure the idle loop\n    returns after each state entry, allowing the appropriate dynticks code\n    to run.\n\n    Signed-off-by: Adam Belay \u003cabelay@novell.com\u003e\n    Signed-off-by: Len Brown \u003clen.brown@intel.com\u003e\n\ncommit 3a7fd42f9825c3b03e364ca59baa751bb350775f\nAuthor: Venki Pallipadi \u003cvenkatesh.pallipadi@intel.com\u003e\nDate:   Thu Apr 26 00:03:59 2007 -0700\n\n    cpuidle: hang fix\n\n    Prevent hang on x86-64, when ACPI processor driver is added as a module on\n    a system that does not support C-states.\n\n    x86-64 expects all idle handlers to enable interrupts before returning from\n    idle handler.  This is due to enter_idle(), exit_idle() races.  Make\n    cpuidle_idle_call() confirm to this when there is no pm_idle_old.\n\n    Also, cpuidle look at the return values of attch_driver() and set\n    current_driver to NULL if attach fails on all CPUs.\n\n    Signed-off-by: Venkatesh Pallipadi \u003cvenkatesh.pallipadi@intel.com\u003e\n    Signed-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\n    Signed-off-by: Len Brown \u003clen.brown@intel.com\u003e\n\ncommit 4893339a142afbd5b7c01ffadfd53d14746e858e\nAuthor: Shaohua Li \u003cshaohua.li@intel.com\u003e\nDate:   Thu Apr 26 10:40:09 2007 +0800\n\n    cpuidle: add support for max_cstate limit\n\n    With CPUIDLE framework, the max_cstate (to limit max cpu c-state)\n    parameter is ingored. Some systems require it to ignore C2/C3\n    and some drivers like ipw require it too.\n\n    Signed-off-by: Shaohua Li \u003cshaohua.li@intel.com\u003e\n    Signed-off-by: Len Brown \u003clen.brown@intel.com\u003e\n\ncommit 43bbbbe1cb998cbd2df656f55bb3bfe30f30e7d1\nAuthor: Shaohua Li \u003cshaohua.li@intel.com\u003e\nDate:   Thu Apr 26 10:40:13 2007 +0800\n\n    cpuidle: add cpuidle_fore_redetect_devices API\n\n    add cpuidle_force_redetect_devices API,\n    which forces all CPU redetect idle states.\n    Next patch will use it.\n\n    Signed-off-by: Shaohua Li \u003cshaohua.li@intel.com\u003e\n    Signed-off-by: Len Brown \u003clen.brown@intel.com\u003e\n\ncommit d1edadd608f24836def5ec483d2edccfb37b1d19\nAuthor: Shaohua Li \u003cshaohua.li@intel.com\u003e\nDate:   Thu Apr 26 10:40:01 2007 +0800\n\n    cpuidle: fix sysfs related issue\n\n    Fix the cpuidle sysfs issue.\n    a. make kobject dynamicaly allocated\n    b. fixed sysfs init issue to avoid suspend/resume issue\n\n    Signed-off-by: Shaohua Li \u003cshaohua.li@intel.com\u003e\n    Signed-off-by: Len Brown \u003clen.brown@intel.com\u003e\n\ncommit 7169a5cc0d67b263978859672e86c13c23a5570d\nAuthor: Randy Dunlap \u003crandy.dunlap@oracle.com\u003e\nDate:   Wed Mar 28 22:52:53 2007 -0400\n\n    cpuidle: 1-bit field must be unsigned\n\n    A 1-bit bitfield has no room for a sign bit.\n    drivers/cpuidle/governors/ladder.c:54:16: error: dubious bitfield without explicit `signed\u0027 or `unsigned\u0027\n\n    Signed-off-by: Randy Dunlap \u003crandy.dunlap@oracle.com\u003e\n    Cc: Venkatesh Pallipadi \u003cvenkatesh.pallipadi@intel.com\u003e\n    Signed-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\n    Signed-off-by: Len Brown \u003clen.brown@intel.com\u003e\n\ncommit 4658620158dc2fbd9e4bcb213c5b6fb5d05ba7d4\nAuthor: Venkatesh Pallipadi \u003cvenkatesh.pallipadi@intel.com\u003e\nDate:   Wed Mar 28 22:52:41 2007 -0400\n\n    cpuidle: fix boot hang\n\n    Patch for cpuidle boot hang reported by Larry Finger here.\n    http://www.ussg.iu.edu/hypermail/linux/kernel/0703.2/2025.html\n\n    Signed-off-by: Venkatesh Pallipadi \u003cvenkatesh.pallipadi@intel.com\u003e\n    Cc: Larry Finger \u003clarry.finger@lwfinger.net\u003e\n    Signed-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\n    Signed-off-by: Len Brown \u003clen.brown@intel.com\u003e\n\ncommit c17e168aa6e5fe3851baaae8df2fbc1cf11443a9\nAuthor: Len Brown \u003clen.brown@intel.com\u003e\nDate:   Wed Mar 7 04:37:53 2007 -0500\n\n    cpuidle: ladder does not depend on ACPI\n\n    build fix for CONFIG_ACPI\u003dn\n\n    In file included from drivers/cpuidle/governors/ladder.c:21:\n    include/acpi/processor.h:88: error: expected specifier-qualifier-list before âacpi_integerâ\n    include/acpi/processor.h:106: error: expected specifier-qualifier-list before âacpi_integerâ\n    include/acpi/processor.h:168: error: expected specifier-qualifier-list before âacpi_handleâ\n\n    Signed-off-by: Len Brown \u003clen.brown@intel.com\u003e\n\ncommit 8c91d958246bde68db0c3f0c57b535962ce861cb\nAuthor: Adrian Bunk \u003cbunk@stusta.de\u003e\nDate:   Tue Mar 6 02:29:40 2007 -0800\n\n    cpuidle: make code static\n\n    This patch makes the following needlessly global code static:\n    - driver.c: __cpuidle_find_driver()\n    - governor.c: __cpuidle_find_governor()\n    - ladder.c: struct ladder_governor\n\n    Signed-off-by: Adrian Bunk \u003cbunk@stusta.de\u003e\n    Cc: Venkatesh Pallipadi \u003cvenkatesh.pallipadi@intel.com\u003e\n    Cc: Adam Belay \u003cabelay@novell.com\u003e\n    Cc: Shaohua Li \u003cshaohua.li@intel.com\u003e\n    Signed-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\n    Signed-off-by: Len Brown \u003clen.brown@intel.com\u003e\n\ncommit 0c39dc3187094c72c33ab65a64d2017b21f372d2\nAuthor: Venkatesh Pallipadi \u003cvenkatesh.pallipadi@intel.com\u003e\nDate:   Wed Mar 7 02:38:22 2007 -0500\n\n    cpu_idle: fix build break\n\n    This patch fixes a build breakage with !CONFIG_HOTPLUG_CPU and\n    CONFIG_CPU_IDLE.\n\n    Signed-off-by: Venkatesh Pallipadi \u003cvenkatesh.pallipadi@intel.com\u003e\n    Signed-off-by: Adrian Bunk \u003cbunk@stusta.de\u003e\n    Signed-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\n    Signed-off-by: Len Brown \u003clen.brown@intel.com\u003e\n\ncommit 8112e3b115659b07df340ef170515799c0105f82\nAuthor: Venkatesh Pallipadi \u003cvenkatesh.pallipadi@intel.com\u003e\nDate:   Tue Mar 6 02:29:39 2007 -0800\n\n    cpuidle: build fix for !CPU_IDLE\n\n    Fix the compile issues when CPU_IDLE is not configured.\n\n    Signed-off-by: Venkatesh Pallipadi \u003cvenkatesh.pallipadi@intel.com\u003e\n    Cc: Adam Belay \u003cabelay@novell.com\u003e\n    Cc: Shaohua Li \u003cshaohua.li@intel.com\u003e\n    Signed-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\n    Signed-off-by: Len Brown \u003clen.brown@intel.com\u003e\n\ncommit 1eb4431e9599cd25e0d9872f3c2c8986821839dd\nAuthor: Venkatesh Pallipadi \u003cvenkatesh.pallipadi@intel.com\u003e\nDate:   Thu Feb 22 13:54:57 2007 -0800\n\n    cpuidle take2: Basic documentation for cpuidle\n\n    Documentation for cpuidle infrastructure\n\n    Signed-off-by: Venkatesh Pallipadi \u003cvenkatesh.pallipadi@intel.com\u003e\n    Signed-off-by: Adam Belay \u003cabelay@novell.com\u003e\n    Signed-off-by: Shaohua Li \u003cshaohua.li@intel.com\u003e\n    Signed-off-by: Len Brown \u003clen.brown@intel.com\u003e\n\ncommit ef5f15a8b79123a047285ec2e3899108661df779\nAuthor: Venkatesh Pallipadi \u003cvenkatesh.pallipadi@intel.com\u003e\nDate:   Thu Feb 22 13:54:03 2007 -0800\n\n    cpuidle take2: Hookup ACPI C-states driver with cpuidle\n\n    Hookup ACPI C-states onto generic cpuidle infrastructure.\n\n    drivers/acpi/procesor_idle.c is now a ACPI C-states driver that registers as\n    a driver in cpuidle infrastructure and the policy part is removed from\n    drivers/acpi/processor_idle.c. We use governor in cpuidle instead.\n\n    Signed-off-by: Shaohua Li \u003cshaohua.li@intel.com\u003e\n    Signed-off-by: Venkatesh Pallipadi \u003cvenkatesh.pallipadi@intel.com\u003e\n    Signed-off-by: Adam Belay \u003cabelay@novell.com\u003e\n    Signed-off-by: Len Brown \u003clen.brown@intel.com\u003e\n\ncommit 987196fa82d4db52c407e8c9d5dec884ba602183\nAuthor: Venkatesh Pallipadi \u003cvenkatesh.pallipadi@intel.com\u003e\nDate:   Thu Feb 22 13:52:57 2007 -0800\n\n    cpuidle take2: Core cpuidle infrastructure\n\n    Announcing \u0027cpuidle\u0027, a new CPU power management infrastructure to manage\n    idle CPUs in a clean and efficient manner.\n    cpuidle separates out the drivers that can provide support for multiple types\n    of idle states and policy governors that decide on what idle state to use\n    at run time.\n    A cpuidle driver can support multiple idle states based on parameters like\n    varying power consumption, wakeup latency, etc (ACPI C-states for example).\n    A cpuidle governor can be usage model specific (laptop, server,\n    laptop on battery etc).\n    Main advantage of the infrastructure being, it allows independent development\n    of drivers and governors and allows for better CPU power management.\n\n    A huge thanks to Adam Belay and Shaohua Li who were part of this mini-project\n    since its beginning and are greatly responsible for this patchset.\n\n    This patch:\n\n    Core cpuidle infrastructure.\n    Introduces a new abstraction layer for cpuidle:\n    * which manages drivers that can support multiple idles states. Drivers\n      can be generic or particular to specific hardware/platform\n    * allows pluging in multiple policy governors that can take idle state policy\n      decision\n    * The core also has a set of sysfs interfaces with which administrato can know\n      about supported drivers and governors and switch them at run time.\n\n    Signed-off-by: Adam Belay \u003cabelay@novell.com\u003e\n    Signed-off-by: Shaohua Li \u003cshaohua.li@intel.com\u003e\n    Signed-off-by: Venkatesh Pallipadi \u003cvenkatesh.pallipadi@intel.com\u003e\n    Signed-off-by: Len Brown \u003clen.brown@intel.com\u003e\n\nSigned-off-by: Len Brown \u003clen.brown@intel.com\u003e\n"
    }
  ]
}
