)]}'
{
  "log": [
    {
      "commit": "8bb7844286fb8c9fce6f65d8288aeb09d03a5e0d",
      "tree": "f4e305edaedbde05774bb1e4acd89a9475661d2e",
      "parents": [
        "f37bc2712b54ec641e0c0c8634f1a4b61d9956c0"
      ],
      "author": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Wed May 09 02:35:10 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Wed May 09 12:30:56 2007 -0700"
      },
      "message": "Add suspend-related notifications for CPU hotplug\n\nSince nonboot CPUs are now disabled after tasks and devices have been\nfrozen and the CPU hotplug infrastructure is used for this purpose, we need\nspecial CPU hotplug notifications that will help the CPU-hotplug-aware\nsubsystems distinguish normal CPU hotplug events from CPU hotplug events\nrelated to a system-wide suspend or resume operation in progress.  This\npatch introduces such notifications and causes them to be used during\nsuspend and resume transitions.  It also changes all of the\nCPU-hotplug-aware subsystems to take these notifications into consideration\n(for now they are handled in the same way as the corresponding \"normal\"\nones).\n\n[oleg@tv-sign.ru: cleanups]\nSigned-off-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\nCc: Gautham R Shenoy \u003cego@in.ibm.com\u003e\nCc: Pavel Machek \u003cpavel@ucw.cz\u003e\nSigned-off-by: Oleg Nesterov \u003coleg@tv-sign.ru\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "28287033e12463c8ff89f1ea8038783d0360391c",
      "tree": "27eabb2890dd1e2e30363dee2f4263cbee906a42",
      "parents": [
        "6e453a67510a17f01b63835f18569e8c3939a38c"
      ],
      "author": {
        "name": "Venki Pallipadi",
        "email": "venkatesh.pallipadi@intel.com",
        "time": "Tue May 08 00:27:47 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Tue May 08 11:15:05 2007 -0700"
      },
      "message": "Add a new deferrable delayed work init\n\nAdd a new deferrable delayed work init.  This can be used to schedule work\nthat are \u0027unimportant\u0027 when CPU is idle and can be called later, when CPU\neventually comes out of idle.\n\nUse this init in cpufreq ondemand governor.\n\nSigned-off-by: Venkatesh Pallipadi \u003cvenkatesh.pallipadi@intel.com\u003e\nCc: Dave Jones \u003cdavej@codemonkey.org.uk\u003e\nCc: Oleg Nesterov \u003coleg@tv-sign.ru\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "9101be532a3c60c7e8773868395e3b75259d84c3",
      "tree": "acaaa4642ac4f3b1ccb1805a4df3eeeed7c3c6db",
      "parents": [
        "07844252ffd81ec192a62014bada1016c9703765"
      ],
      "author": {
        "name": "Mike Frysinger",
        "email": "vapier@gentoo.org",
        "time": "Wed Apr 18 16:18:13 2007 -0400"
      },
      "committer": {
        "name": "Dave Jones",
        "email": "davej@redhat.com",
        "time": "Thu Apr 26 14:32:03 2007 -0400"
      },
      "message": "[CPUFREQ] cleanup kconfig options\n\nAdds proper lines to help output of kconfig so people can find the module names.\nAlso fixed some broken leading spaces versus tabs.\n\nSigned-off-by: Mike Frysinger \u003cvapier@gentoo.org\u003e\nSigned-off-by: Dave Jones \u003cdavej@redhat.com\u003e\n"
    },
    {
      "commit": "632786ce9ff6206951ee4c84fe5c0d5c1d12f4cc",
      "tree": "c432e55bd84c566bcf7b2c84107d5c0178a20976",
      "parents": [
        "22c970f3468a6766b362d57fa32ebb92cb8cd6db"
      ],
      "author": {
        "name": "Thomas Renninger",
        "email": "trenn@suse.de",
        "time": "Thu Apr 19 15:49:09 2007 +0200"
      },
      "committer": {
        "name": "Dave Jones",
        "email": "davej@redhat.com",
        "time": "Thu Apr 26 14:32:02 2007 -0400"
      },
      "message": "[CPUFREQ] Remove deprecated /proc/acpi/processor/performance write support\n\nRemove deprecated /proc/acpi/processor/performance write support\n\nWriting to /proc/acpi/processor/xy/performance interferes with sysfs\ncpufreq interface. Also removes buggy cpufreq_set_policy exported symbol.\n\nSigned-off-by: Thomas Renninger \u003ctrenn@suse.de\u003e\nSigned-off-by: Dave Jones \u003cdavej@redhat.com\u003e\n"
    },
    {
      "commit": "22c970f3468a6766b362d57fa32ebb92cb8cd6db",
      "tree": "09e666c2c1f1ac93a2a6deec703d667cdc41b250",
      "parents": [
        "e8e49190f64896afe79f7136a67c2bdefbd3e322"
      ],
      "author": {
        "name": "Thomas Renninger",
        "email": "trenn@suse.de",
        "time": "Thu Apr 19 15:48:34 2007 +0200"
      },
      "committer": {
        "name": "Dave Jones",
        "email": "davej@redhat.com",
        "time": "Thu Apr 26 14:32:02 2007 -0400"
      },
      "message": "[CPUFREQ] Fix limited cpufreq when booted on battery\n\nReferences:\nhttps://bugzilla.novell.com/show_bug.cgi?id\u003d231107\nhttps://bugzilla.novell.com/show_bug.cgi?id\u003d264077\n\nFix limited cpufreq when booted on battery\n\nIf booted on battery:\ncpufreq_set_policy (evil) is invoked which calls verify_within_limits.\nmax_freq gets lowered and therefore users_policy.max, which\nis used to restore higher freqs via update_policy later is set to the\nalready limited frequency -\u003e you can never go up again, even BIOS\nallows higher freqs later.\n\nSigned-off-by: Thomas Renninger \u003ctrenn@suse.de\u003e\nSigned-off-by: Dave Jones \u003cdavej@redhat.com\u003e\n"
    },
    {
      "commit": "ec28297a562f2b022115b9eb82e4ea724d996240",
      "tree": "37443cab75290b45b65b491f6dd56882fad38dec",
      "parents": [
        "703071b5b93d88d5acb0edd5b9dd86c69ad970f2"
      ],
      "author": {
        "name": "Venki Pallipadi",
        "email": "venkatesh.pallipadi@intel.com",
        "time": "Mon Mar 26 12:03:19 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Tue Mar 27 08:55:56 2007 -0700"
      },
      "message": "[PATCH] Fix maxcpus\u003d1 trigerring BUG() in cpufreq\n\nIngo reported it on lkml in the thread\n  \"2.6.21-rc5: maxcpus\u003d1 crash in cpufreq: kernel BUG at drivers/cpufreq/cpufreq.c:82!\"\n\nThis check added to remove_dev  is symmetric to one in add_dev and handles\ncallbacks for offline cpus cleanly.\n\nSigned-off-by: Venkatesh Pallipadi \u003cvenkatesh.pallipadi@intel.com\u003e\nAcked-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "221dee285ee38099b82437531bcae9fa9cb64cc4",
      "tree": "1f91186091f0256e04c210a8ac76023cdeebf202",
      "parents": [
        "6f8c480f998a619082f18407f8d7f4c29e94dc6e"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Mon Feb 26 14:55:48 2007 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Mon Feb 26 14:55:48 2007 -0800"
      },
      "message": "Revert \"[CPUFREQ] constify cpufreq_driver where possible.\"\n\nThis reverts commit aeeddc1435c37fa3fc844f31d39c185b08de4158, which was\nhalf-baked and broken.  It just resulted in compile errors, since\ncpufreq_register_driver() still changes the \u0027driver_data\u0027 by setting\nbits in the flags field.  So claiming it is \u0027const\u0027 _really_ doesn\u0027t\nwork.\n\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "6f8c480f998a619082f18407f8d7f4c29e94dc6e",
      "tree": "5047fe0d685fe9eab64c506fa1001e7df5e65faa",
      "parents": [
        "038c068f63a950c3a6ccfa814831ccac0ad48fb1",
        "bd5ab26a7d0cc834d846fe5dd7291f0aed3be72b"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Mon Feb 26 14:17:50 2007 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Mon Feb 26 14:17:50 2007 -0800"
      },
      "message": "Merge master.kernel.org:/pub/scm/linux/kernel/git/davej/cpufreq\n\n* master.kernel.org:/pub/scm/linux/kernel/git/davej/cpufreq:\n  [CPUFREQ] constify some data tables.\n  [CPUFREQ] constify cpufreq_driver where possible.\n  {rd,wr}msr_on_cpu SMP\u003dn optimization\n  [CPUFREQ] cpufreq_ondemand.c: don\u0027t use _WORK_NAR\n  rdmsr_on_cpu, wrmsr_on_cpu\n  [CPUFREQ] Revert default on deprecated config X86_SPEEDSTEP_CENTRINO_ACPI\n"
    },
    {
      "commit": "aeeddc1435c37fa3fc844f31d39c185b08de4158",
      "tree": "46269bbff184799c2cded9ccd433e980c38f7b4b",
      "parents": [
        "b44755cfaa72e7ed3d831a946bb4e7dfe7548966"
      ],
      "author": {
        "name": "Dave Jones",
        "email": "davej@redhat.com",
        "time": "Thu Feb 22 19:08:27 2007 -0500"
      },
      "committer": {
        "name": "Dave Jones",
        "email": "davej@redhat.com",
        "time": "Thu Feb 22 19:08:27 2007 -0500"
      },
      "message": "[CPUFREQ] constify cpufreq_driver where possible.\n\nNot all cases are possible due to -\u003eflags being set at runtime\non some drivers.\n\nSigned-off-by: Dave Jones \u003cdavej@redhat.com\u003e\n"
    },
    {
      "commit": "48ac3271e52d23ee987da93f80d20f6bec8e6717",
      "tree": "772efa621ceb4814ad296f5dd09fc46a320fcfa4",
      "parents": [
        "b077ffb3b767c3efb44d00b998385a9cb127255c"
      ],
      "author": {
        "name": "Oleg Nesterov",
        "email": "oleg@tv-sign.ru",
        "time": "Mon Feb 19 00:44:07 2007 +0300"
      },
      "committer": {
        "name": "Dave Jones",
        "email": "davej@redhat.com",
        "time": "Tue Feb 20 14:23:43 2007 -0500"
      },
      "message": "[CPUFREQ] cpufreq_ondemand.c: don\u0027t use _WORK_NAR\n\nLooks like dbs_timer() is very careful wrt per_cpu(cpu_dbs_info),\nand it doesn\u0027t need the help of WORK_STRUCT_NOAUTOREL.\n\nSigned-off-by: Oleg Nesterov \u003coleg@tv-sign.ru\u003e\nAcked-By: David Howells \u003cdhowells@redhat.com\u003e\nSigned-off-by: Dave Jones \u003cdavej@redhat.com\u003e\n"
    },
    {
      "commit": "ef29498655b18d2bfd69048e20835d19333981ab",
      "tree": "20f2038bd270cbdcd3b796c9fa6b749593cbde80",
      "parents": [
        "0187f221e96e3436d552c0c7143f183eb82fb658",
        "2b8c0e13026c30bd154dc521ffc235360830c712"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Fri Feb 16 08:16:01 2007 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Fri Feb 16 08:16:01 2007 -0800"
      },
      "message": "Merge master.kernel.org:/pub/scm/linux/kernel/git/davej/cpufreq\n\n* master.kernel.org:/pub/scm/linux/kernel/git/davej/cpufreq:\n  [CPUFREQ] Longhaul - Redo Longhaul ver. 2\n  [CPUFREQ] EPS - Correct 2nd brand test\n  [CPUFREQ] Longhaul - Separate frequency and voltage transition\n  [CPUFREQ] Longhaul - Models of Nehemiah\n  [CPUFREQ] Whitespace fixup\n  [CPUFREQ] Longhaul - Simplier minmult\n  [CPUFREQ] CPU_FREQ_TABLE shouldn\u0027t be a def_tristate\n  [CPUFREQ] ondemand governor use new cpufreq rwsem locking in work callback\n  [CPUFREQ] ondemand governor restructure the work callback\n  [CPUFREQ] Rewrite lock in cpufreq to eliminate cpufreq/hotplug related issues\n  [CPUFREQ] Remove hotplug cpu crap\n  [CPUFREQ] Enhanced PowerSaver driver\n  [CPUFREQ] Longhaul - Add VT8235 support\n  [CPUFREQ] Longhaul - Fix guess_fsb function\n  [CPUFREQ] Longhaul - Remove duplicate tables\n  [CPUFREQ] Longhaul - Introduce Nehemiah C\n  [CPUFREQ] fix cpuinfo_cur_freq for CPU_HW_PSTATE\n  [CPUFREQ] Longhaul - Remove \"ignore_latency\" option\n"
    },
    {
      "commit": "cd354f1ae75e6466a7e31b727faede57a1f89ca5",
      "tree": "09a2da1672465fefbc7fe06ff4e6084f1dd14c6b",
      "parents": [
        "3fc605a2aa38899c12180ca311f1eeb61a6d867e"
      ],
      "author": {
        "name": "Tim Schmielau",
        "email": "tim@physik3.uni-rostock.de",
        "time": "Wed Feb 14 00:33:14 2007 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Wed Feb 14 08:09:54 2007 -0800"
      },
      "message": "[PATCH] remove many unneeded #includes of sched.h\n\nAfter Al Viro (finally) succeeded in removing the sched.h #include in module.h\nrecently, it makes sense again to remove other superfluous sched.h includes.\nThere are quite a lot of files which include it but don\u0027t actually need\nanything defined in there.  Presumably these includes were once needed for\nmacros that used to live in sched.h, but moved to other header files in the\ncourse of cleaning it up.\n\nTo ease the pain, this time I did not fiddle with any header files and only\nremoved #includes from .c-files, which tend to cause less trouble.\n\nCompile tested against 2.6.20-rc2 and 2.6.20-rc2-mm2 (with offsets) on alpha,\narm, i386, ia64, mips, powerpc, and x86_64 with allnoconfig, defconfig,\nallmodconfig, and allyesconfig as well as a few randconfigs on x86_64 and all\nconfigs in arch/arm/configs on arm.  I also checked that no new warnings were\nintroduced by the patch (actually, some warnings are removed that were emitted\nby unnecessarily included header files).\n\nSigned-off-by: Tim Schmielau \u003ctim@physik3.uni-rostock.de\u003e\nAcked-by: Russell King \u003crmk+kernel@arm.linux.org.uk\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "c18a1483f478adbeb4cc7148db22c4a9c10aaee3",
      "tree": "2bb26c46e099da0690cde622283be460837aa46b",
      "parents": [
        "9addf3b6388459f315adc728d27d34603a00d427"
      ],
      "author": {
        "name": "Dave Jones",
        "email": "davej@redhat.com",
        "time": "Sat Feb 10 20:03:51 2007 -0500"
      },
      "committer": {
        "name": "Dave Jones",
        "email": "davej@redhat.com",
        "time": "Sat Feb 10 20:03:51 2007 -0500"
      },
      "message": "[CPUFREQ] Whitespace fixup\n\nSigned-off-by: Dave Jones \u003cdavej@redhat.com\u003e\n"
    },
    {
      "commit": "f0ec313a89a7377f440c815f82b0370bd67f62c6",
      "tree": "dc59980300b99a37bbd6071999283b63585d699d",
      "parents": [
        "56463b78cdca8e9ff8cc1759bca0c0777a061d6b"
      ],
      "author": {
        "name": "Adrian Bunk",
        "email": "bunk@stusta.de",
        "time": "Mon Feb 05 16:12:45 2007 -0800"
      },
      "committer": {
        "name": "Dave Jones",
        "email": "davej@redhat.com",
        "time": "Sat Feb 10 20:01:48 2007 -0500"
      },
      "message": "[CPUFREQ] CPU_FREQ_TABLE shouldn\u0027t be a def_tristate\n\nCPU_FREQ_TABLE enables helper code and gets select\u0027ed when it\u0027s required.\n\nBuilding it as a module when it\u0027s not required doesn\u0027t seem to make much sense.\n\nSigned-off-by: Adrian Bunk \u003cbunk@stusta.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Dave Jones \u003cdavej@redhat.com\u003e\n"
    },
    {
      "commit": "56463b78cdca8e9ff8cc1759bca0c0777a061d6b",
      "tree": "435e98e919e96da931b1874eae6c888b734dea6d",
      "parents": [
        "529af7a14f04f92213bac371931a2b2b060c63fa"
      ],
      "author": {
        "name": "Venkatesh Pallipadi",
        "email": "venkatesh.pallipadi@intel.com",
        "time": "Mon Feb 05 16:12:45 2007 -0800"
      },
      "committer": {
        "name": "Dave Jones",
        "email": "davej@redhat.com",
        "time": "Sat Feb 10 20:01:48 2007 -0500"
      },
      "message": "[CPUFREQ] ondemand governor use new cpufreq rwsem locking in work callback\n\nEliminate flush_workqueue in cpufreq_governor(STOP) callpath. Using flush\nthere has a deadlock potential as in\n\nhttp://uwsg.iu.edu/hypermail/linux/kernel/0611.3/1223.html\n\nAlso, cleanup the locking issues with do_dbs_timer delayed_work callback.  As\nit changes the CPU frequency using __cpufreq_target, it needs to have\npolicy_rwsem in write mode, which also protects it from hot plug.\n\nSigned-off-by: Venkatesh Pallipadi \u003cvenkatesh.pallipadi@intel.com\u003e\nCc: Gautham R Shenoy \u003cego@in.ibm.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Dave Jones \u003cdavej@redhat.com\u003e\n"
    },
    {
      "commit": "529af7a14f04f92213bac371931a2b2b060c63fa",
      "tree": "f5abea57e39f694ab3dd3f65d0303f10f38c73c3",
      "parents": [
        "5a01f2e8f3ac134e24144d74bb48a60236f7024d"
      ],
      "author": {
        "name": "Venkatesh Pallipadi",
        "email": "venkatesh.pallipadi@intel.com",
        "time": "Mon Feb 05 16:12:44 2007 -0800"
      },
      "committer": {
        "name": "Dave Jones",
        "email": "davej@redhat.com",
        "time": "Sat Feb 10 20:01:47 2007 -0500"
      },
      "message": "[CPUFREQ] ondemand governor restructure the work callback\n\nRestructure the delayed_work callback in ondemand.\n\nThis eliminates the need for smp_processor_id in the callback function and\nalso helps in proper locking and avoiding flush_workqueue when stopping the\ngovernor (done in subsequent patch).\n\nSigned-off-by: Venkatesh Pallipadi \u003cvenkatesh.pallipadi@intel.com\u003e\nCc: Gautham R Shenoy \u003cego@in.ibm.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Dave Jones \u003cdavej@redhat.com\u003e\n"
    },
    {
      "commit": "5a01f2e8f3ac134e24144d74bb48a60236f7024d",
      "tree": "8d807b81618dc1b4782e0e58a9629a6d0a09fbe3",
      "parents": [
        "c120069779e3e35917c15393cf2847fa79811eb6"
      ],
      "author": {
        "name": "Venkatesh Pallipadi",
        "email": "venkatesh.pallipadi@intel.com",
        "time": "Mon Feb 05 16:12:44 2007 -0800"
      },
      "committer": {
        "name": "Dave Jones",
        "email": "davej@redhat.com",
        "time": "Sat Feb 10 20:01:47 2007 -0500"
      },
      "message": "[CPUFREQ] Rewrite lock in cpufreq to eliminate cpufreq/hotplug related issues\n\nYet another attempt to resolve cpufreq and hotplug locking issues.\n\nPatchset has 3 patches:\n* Rewrite the lock infrastructure of cpufreq using a per cpu rwsem.\n* Minor restructuring of work callback in ondemand driver.\n* Use the new cpufreq rwsem infrastructure in ondemand work.\n\nThis patch:\n\nConvert policy-\u003elock to rwsem and move it to per_cpu area.\nThis rwsem will protect against both changing/accessing policy\nrelated parameters and CPU hot plug/unplug.\n\n[malattia@linux.it: fix oops in kref_put()]\nCc: Gautham R Shenoy \u003cego@in.ibm.com\u003e\nSigned-off-by: Venkatesh Pallipadi \u003cvenkatesh.pallipadi@intel.com\u003e\nCc: Gautham R Shenoy \u003cego@in.ibm.com\u003e\nSigned-off-by: Mattia Dongili \u003cmalattia@linux.it\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Dave Jones \u003cdavej@redhat.com\u003e\n"
    },
    {
      "commit": "c120069779e3e35917c15393cf2847fa79811eb6",
      "tree": "9e1e5529b43c151ecc9d3743e5b51ff88eb52312",
      "parents": [
        "86acd49aa128bd7a1d4362c256c21fbdc2d5b1a0"
      ],
      "author": {
        "name": "Dave Jones",
        "email": "davej@redhat.com",
        "time": "Mon Feb 05 16:12:43 2007 -0800"
      },
      "committer": {
        "name": "Dave Jones",
        "email": "davej@redhat.com",
        "time": "Sat Feb 10 20:01:47 2007 -0500"
      },
      "message": "[CPUFREQ] Remove hotplug cpu crap\n\nThe hotplug CPU locking in cpufreq is horrendous.  No-one seems to care\nenough to fix it, so just remove it so that the 99.9% of the real world\nusers of this code can use cpufreq without being bothered by warnings.\n\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Dave Jones \u003cdavej@redhat.com\u003e\n"
    },
    {
      "commit": "0142f9dce8425da031d72dc3b70ee7161fcaaea2",
      "tree": "e311911a8eda0b3608f567090714bd742bda07bf",
      "parents": [
        "5263bf65d6342e12ab716db8e529501670979321"
      ],
      "author": {
        "name": "Ahmed S. Darwish",
        "email": "darwish.07@gmail.com",
        "time": "Fri Jan 05 05:44:54 2007 +0200"
      },
      "committer": {
        "name": "Dave Jones",
        "email": "davej@redhat.com",
        "time": "Mon Jan 29 00:06:27 2007 -0500"
      },
      "message": "[CPUFREQ] check sysfs_create_link return value\n\nTrivial patch to check sysfs_create_link return values.\nFail gracefully if needed.\n\nSigned-off-by: Ahmed Darwish \u003cdarwish.07@gmail.com\u003e\nSigned-off-by: Dave Jones \u003cdavej@redhat.com\u003e\n"
    },
    {
      "commit": "8edc59d939ad233c24385fb67a62bd39db532901",
      "tree": "68f3f3fabc5310d0d3c0cdae1db1d4aef33ddccd",
      "parents": [
        "917325d30ab12f9f23aee5c91dc96dfe81b0c6be"
      ],
      "author": {
        "name": "Venkatesh Pallipadi",
        "email": "venkatesh.pallipadi@intel.com",
        "time": "Tue Dec 19 12:58:55 2006 -0800"
      },
      "committer": {
        "name": "Dave Jones",
        "email": "davej@redhat.com",
        "time": "Fri Dec 22 22:45:41 2006 -0500"
      },
      "message": "[CPUFREQ] Bug fix for acpi-cpufreq and cpufreq_stats oops on frequency change notification\n\nFixes the oops in cpufreq_stats with acpi_cpufreq driver.  The issue was\nthat the frequency was reported as 0 in acpi-cpufreq.c.  The bug is due to\ndifferent indicies for freq_table and ACPI perf table.\n\nAlso adds a check in cpufreq_stats to check for error return from\nfreq_table_get_index() and avoid using the error return value.\n\nPatch fixes the issue reported at\nhttp://www.ussg.iu.edu/hypermail/linux/kernel/0611.2/0629.html\nand also other similar issue here\nhttp://bugme.osdl.org/show_bug.cgi?id\u003d7383 comment 53\n\nSigned-off-by: Dhaval Giani \u003cdhaval.giani@gmail.com\u003e\nSigned-off-by: Venkatesh Pallipadi \u003cvenkatesh.pallipadi@intel.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Dave Jones \u003cdavej@redhat.com\u003e\n"
    },
    {
      "commit": "4ab70df451c6183dd5474a68edac44684b0b7616",
      "tree": "d2ed54e9c9171b3a726bda0aeaf4deb832b73172",
      "parents": [
        "445722f97a0ecd3aed3f53d9f0dcaacaef8c6223"
      ],
      "author": {
        "name": "Dhaval Giani",
        "email": "dhaval.giani@gmail.com",
        "time": "Wed Dec 13 14:49:15 2006 +0530"
      },
      "committer": {
        "name": "Dave Jones",
        "email": "davej@redhat.com",
        "time": "Wed Dec 13 10:11:25 2006 -0500"
      },
      "message": "[CPUFREQ] fixes typo in cpufreq.c\n\nThis patch fixes a typo in cpufreq.c\n\nFrom: Dhaval Giani \u003cdhaval.giani@gmail.com\u003e\nSigned-off-by: Dave Jones \u003cdavej@redhat.com\u003e\n"
    },
    {
      "commit": "c4366889dda8110247be59ca41fddb82951a8c26",
      "tree": "705c1a996bed8fd48ce94ff33ec9fd00f9b94875",
      "parents": [
        "db2fb9db5735cc532fd4fc55e94b9a3c3750378e",
        "e1036502e5263851259d147771226161e5ccc85a"
      ],
      "author": {
        "name": "Dave Jones",
        "email": "davej@redhat.com",
        "time": "Tue Dec 12 17:41:41 2006 -0500"
      },
      "committer": {
        "name": "Dave Jones",
        "email": "davej@redhat.com",
        "time": "Tue Dec 12 17:41:41 2006 -0500"
      },
      "message": "Merge ../linus\n\nConflicts:\n\n\tdrivers/cpufreq/cpufreq.c\n"
    },
    {
      "commit": "02316067852187b8bec781bec07410e91af79627",
      "tree": "856e3f4610c91a6548bf3bf5c70ecbc0b28a4145",
      "parents": [
        "a38a44c1a93078fc5fadc4ac2df8dea4697069e2"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Dec 06 20:38:17 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.osdl.org",
        "time": "Thu Dec 07 08:39:39 2006 -0800"
      },
      "message": "[PATCH] hotplug CPU: clean up hotcpu_notifier() use\n\nThere was lots of #ifdef noise in the kernel due to hotcpu_notifier(fn,\nprio) not correctly marking \u0027fn\u0027 as used in the !HOTPLUG_CPU case, and thus\ngenerating compiler warnings of unused symbols, hence forcing people to add\n#ifdefs.\n\nthe compiler can skip truly unused functions just fine:\n\n    text    data     bss     dec     hex filename\n 1624412  728710 3674856 6027978  5bfaca vmlinux.before\n 1624412  728710 3674856 6027978  5bfaca vmlinux.after\n\n[akpm@osdl.org: topology.c fix]\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "c4028958b6ecad064b1a6303a6a5906d4fe48d73",
      "tree": "1c4c89652c62a75da09f9b9442012007e4ac6250",
      "parents": [
        "65f27f38446e1976cc98fd3004b110fedcddd189"
      ],
      "author": {
        "name": "David Howells",
        "email": "dhowells@redhat.com",
        "time": "Wed Nov 22 14:57:56 2006 +0000"
      },
      "committer": {
        "name": "David Howells",
        "email": "dhowells@redhat.com",
        "time": "Wed Nov 22 14:57:56 2006 +0000"
      },
      "message": "WorkStruct: make allyesconfig\n\nFix up for make allyesconfig.\n\nSigned-Off-By: David Howells \u003cdhowells@redhat.com\u003e\n"
    },
    {
      "commit": "65f27f38446e1976cc98fd3004b110fedcddd189",
      "tree": "68f8be93feae31dfa018c22db392a05546b63ee1",
      "parents": [
        "365970a1ea76d81cb1ad2f652acb605f06dae256"
      ],
      "author": {
        "name": "David Howells",
        "email": "dhowells@redhat.com",
        "time": "Wed Nov 22 14:55:48 2006 +0000"
      },
      "committer": {
        "name": "David Howells",
        "email": "dhowells@redhat.com",
        "time": "Wed Nov 22 14:55:48 2006 +0000"
      },
      "message": "WorkStruct: Pass the work_struct pointer instead of context data\n\nPass the work_struct pointer to the work function rather than context data.\nThe work function can use container_of() to work out the data.\n\nFor the cases where the container of the work_struct may go away the moment the\npending bit is cleared, it is made possible to defer the release of the\nstructure by deferring the clearing of the pending bit.\n\nTo make this work, an extra flag is introduced into the management side of the\nwork_struct.  This governs auto-release of the structure upon execution.\n\nOrdinarily, the work queue executor would release the work_struct for further\nscheduling or deallocation by clearing the pending bit prior to jumping to the\nwork function.  This means that, unless the driver makes some guarantee itself\nthat the work_struct won\u0027t go away, the work function may not access anything\nelse in the work_struct or its container lest they be deallocated..  This is a\nproblem if the auxiliary data is taken away (as done by the last patch).\n\nHowever, if the pending bit is *not* cleared before jumping to the work\nfunction, then the work function *may* access the work_struct and its container\nwith no problems.  But then the work function must itself release the\nwork_struct by calling work_release().\n\nIn most cases, automatic release is fine, so this is the default.  Special\ninitiators exist for the non-auto-release case (ending in _NAR).\n\n\nSigned-Off-By: David Howells \u003cdhowells@redhat.com\u003e\n"
    },
    {
      "commit": "6af6e1efb161ffe36e718b1fd58385710879af7c",
      "tree": "ccbe039979bf4829744f61052029c05662c0e195",
      "parents": [
        "b80ebbf39fc628afab7d9cf94b84cfc51d845b2f"
      ],
      "author": {
        "name": "Dave Jones",
        "email": "davej@redhat.com",
        "time": "Tue Nov 21 16:58:59 2006 -0500"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.osdl.org",
        "time": "Tue Nov 21 14:07:15 2006 -0800"
      },
      "message": "[PATCH] Fix CPU_FREQ_GOV_ONDEMAND\u003dy compile error\n\nThe ONDEMAND governor needs FREQ_TABLE\n\nSigned-off-by: Mattia Dongili \u003cmalattia@linux.it\u003e\nSigned-off-by: Dave Jones \u003cdavej@redhat.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "b3438f8266cb1f5010085ac47d7ad6a36a212164",
      "tree": "bb74bd7a3ea7a629e380aa7761ba63a5e44992c7",
      "parents": [
        "f44ea623443ee0bec266d62f1cd346881224d47d"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.osdl.org",
        "time": "Mon Nov 20 11:47:18 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.osdl.org",
        "time": "Mon Nov 20 11:47:18 2006 -0800"
      },
      "message": "Add \"pure_initcall\" for static variable initialization\n\nThis is a quick hack to overcome the fact that SRCU currently does not\nallow static initializers, and we need to sometimes initialize those\nthings before any other initializers (even \"core\" ones) can do so.\n\nCurrently we don\u0027t allow this at all for modules, and the only user that\nneeds is right now is cpufreq. As reported by Thomas Gleixner:\n\n   \"Commit b4dfdbb3c707474a2254c5b4d7e62be31a4b7da9 (\"[PATCH] cpufreq:\n    make the transition_notifier chain use SRCU breaks cpu frequency\n    notification users, which register the callback \u003e on core_init\n    level.\"\n\nCc: Thomas Gleixner \u003ctglx@timesys.com\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: Arjan van de Ven \u003carjan@infradead.org\u003e\nCc: Andrew Morton \u003cakpm@osdl.org\u003e,\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "e08f5f5bb5dfaaa28d69ffe37eb774533297657f",
      "tree": "3cda0e9a1d27c448fb4ceb81737eea695b17d2ed",
      "parents": [
        "95625b8f19e1e030c7fe3c010407d90fa248c68f"
      ],
      "author": {
        "name": "Gautham R Shenoy",
        "email": "ego@in.ibm.com",
        "time": "Thu Oct 26 16:20:58 2006 +0530"
      },
      "committer": {
        "name": "Dave Jones",
        "email": "davej@redhat.com",
        "time": "Mon Nov 06 19:16:34 2006 -0500"
      },
      "message": "[CPUFREQ] Fix coding style issues in cpufreq.\n\nClean up cpufreq subsystem to fix coding style issues and to improve\nthe readability.\n\nSigned-off-by: Gautham R Shenoy \u003cego@in.ibm.com\u003e\nSigned-off-by: Dave Jones \u003cdavej@redhat.com\u003e\n"
    },
    {
      "commit": "914f7c31b0bea0ccf3bf474d0b99d803f7985097",
      "tree": "06c8ff4bf0f12170904bf681ffaedd14f368a7c8",
      "parents": [
        "95dd722700dc9bbb000d51cab07dde48720e9178"
      ],
      "author": {
        "name": "Jeff Garzik",
        "email": "jeff@garzik.org",
        "time": "Fri Oct 20 14:31:00 2006 -0700"
      },
      "committer": {
        "name": "Dave Jones",
        "email": "davej@redhat.com",
        "time": "Sat Oct 21 01:33:12 2006 -0400"
      },
      "message": "[CPUFREQ] handle sysfs errors\n\nSigned-off-by: Jeff Garzik \u003cjeff@garzik.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Dave Jones \u003cdavej@redhat.com\u003e\n"
    },
    {
      "commit": "dfde5d62ed9b28b0bda676c16e8cb635df244ef2",
      "tree": "12c690189fcc7155389860beae554199456b7d3e",
      "parents": [
        "a6f6e6e6ab464c9d1dff66570b78be2f66d8ba3d"
      ],
      "author": {
        "name": "Venkatesh Pallipadi",
        "email": "venkatesh.pallipadi@intel.com",
        "time": "Tue Oct 03 12:38:45 2006 -0700"
      },
      "committer": {
        "name": "Dave Jones",
        "email": "davej@redhat.com",
        "time": "Sun Oct 15 19:57:11 2006 -0400"
      },
      "message": "[CPUFREQ][8/8] acpi-cpufreq: Add support for freq feedback from hardware\n\nEnable ondemand governor and acpi-cpufreq to use IA32_APERF and IA32_MPERF MSR\nto get active frequency feedback for the last sampling interval. This will\nmake ondemand take right frequency decisions when hardware coordination of\nfrequency is going on.\n\nWithout APERF/MPERF, ondemand can take wrong decision at times due\nto underlying hardware coordination or TM2.\nExample:\n* CPU 0 and CPU 1 are hardware cooridnated.\n* CPU 1 running at highest frequency.\n* CPU 0 was running at highest freq. Now ondemand reduces it to\n  some intermediate frequency based on utilization.\n* Due to underlying hardware coordination with other CPU 1, CPU 0 continues to\n  run at highest frequency (as long as other CPU is at highest).\n* When ondemand samples CPU 0 again next time, without actual frequency\n  feedback from APERF/MPERF, it will think that previous frequency change\n  was successful and can go to wrong target frequency. This is because it\n  thinks that utilization it has got this sampling interval is when running at\n  intermediate frequency, rather than actual highest frequency.\n\nMore information about IA32_APERF IA32_MPERF MSR:\nRefer to IA-32 Intel® Architecture Software Developer\u0027s Manual at\nhttp://developer.intel.com\n\nSigned-off-by: Venkatesh Pallipadi \u003cvenkatesh.pallipadi@intel.com\u003e\nSigned-off-by: Dave Jones \u003cdavej@redhat.com\u003e\n"
    },
    {
      "commit": "b4dfdbb3c707474a2254c5b4d7e62be31a4b7da9",
      "tree": "20558266428cb904c4ffc660647cfdb7e7abeae5",
      "parents": [
        "e6a92013ba458804161c0c5b6d134d82204dc233"
      ],
      "author": {
        "name": "Alan Stern",
        "email": "stern@rowland.harvard.edu",
        "time": "Wed Oct 04 02:17:06 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Wed Oct 04 07:55:30 2006 -0700"
      },
      "message": "[PATCH] cpufreq: make the transition_notifier chain use SRCU\n\nThis patch (as762) changes the cpufreq_transition_notifier_list from a\nblocking_notifier_head to an srcu_notifier_head.  This will prevent errors\ncaused attempting to call down_read() to access the notifier chain at a\ntime when interrupts must remain disabled, during system suspend.\n\nIt\u0027s not clear to me whether this is really necessary; perhaps the chain\ncould be made into an atomic_notifier.  However a couple of the callout\nroutines do use blocking operations, so this approach seems safer.\n\nThe head of the notifier chain needs to be initialized before use; this is\ndone by an __init routine at core_initcall time.  If this turns out not to\nbe a good choice, it can easily be changed.\n\nSigned-off-by: Alan Stern \u003cstern@rowland.harvard.edu\u003e\nCc: \"Paul E. McKenney\" \u003cpaulmck@us.ibm.com\u003e\nCc: Jesse Brandeburg \u003cjesse.brandeburg@gmail.com\u003e\nCc: Dave Jones \u003cdavej@codemonkey.org.uk\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "0e37b159aa7427bf311487e3ea03d8aa5ff5956e",
      "tree": "c337e1614689b65bd3af35af6c40b61c9b60de29",
      "parents": [
        "b278240839e20fa9384ea430df463b367b90e04e"
      ],
      "author": {
        "name": "Dave Jones",
        "email": "davej@redhat.com",
        "time": "Tue Sep 26 23:02:34 2006 -0400"
      },
      "committer": {
        "name": "Venkatesh Pallipadi",
        "email": "venkatesh.pallipadi@intel.com",
        "time": "Tue Sep 26 23:02:34 2006 -0400"
      },
      "message": "[CPUFREQ] Fix cut-n-paste bug in suspend printk\n\nSigned-off-by: Dave Jones \u003cdavej@redhat.com\u003e\n"
    },
    {
      "commit": "ddad65df0048e210c93640b59b3bad12701febb6",
      "tree": "5530a3fbeef881c48ca02e491529d709dc812ea0",
      "parents": [
        "8adcc0c674004c0f9467031a93dc639c2b01411f"
      ],
      "author": {
        "name": "Dave Jones",
        "email": "davej@redhat.com",
        "time": "Fri Sep 22 19:15:23 2006 -0400"
      },
      "committer": {
        "name": "Dave Jones",
        "email": "davej@redhat.com",
        "time": "Fri Sep 22 19:15:23 2006 -0400"
      },
      "message": "[CPUFREQ] Fix some more CPU hotplug locking.\n\nLukewarm IQ detected in hotplug locking\nBUG: warning at kernel/cpu.c:38/lock_cpu_hotplug()\n[\u003cb0134a42\u003e] lock_cpu_hotplug+0x42/0x65\n[\u003cb02f8af1\u003e] cpufreq_update_policy+0x25/0xad\n[\u003cb0358756\u003e] kprobe_flush_task+0x18/0x40\n[\u003cb0355aab\u003e] schedule+0x63f/0x68b\n[\u003cb01377c2\u003e] __link_module+0x0/0x1f\n[\u003cb0119e7d\u003e] __cond_resched+0x16/0x34\n[\u003cb03560bf\u003e] cond_resched+0x26/0x31\n[\u003cb0355b0e\u003e] wait_for_completion+0x17/0xb1\n[\u003cf965c547\u003e] cpufreq_stat_cpu_callback+0x13/0x20 [cpufreq_stats]\n[\u003cf9670074\u003e] cpufreq_stats_init+0x74/0x8b [cpufreq_stats]\n[\u003cb0137872\u003e] sys_init_module+0x91/0x174\n[\u003cb0102c81\u003e] sysenter_past_esp+0x56/0x79\n\nAs there are other places that call cpufreq_update_policy without\nthe hotplug lock, it seems better to keep the hotplug locking\nat the lower level for the time being until this is revamped.\n\nSigned-off-by: Dave Jones \u003cdavej@redhat.com\u003e\n"
    },
    {
      "commit": "3906f4edeef976c081c4e7bd92164d2f59c325ae",
      "tree": "6ad1309a5e2eda9c2dde0e9bd0dca8d0a4060b9b",
      "parents": [
        "b5ecf60fe6b18de0bc59d336d444835d4ef835ed"
      ],
      "author": {
        "name": "Dave Jones",
        "email": "davej@redhat.com",
        "time": "Tue Sep 05 17:15:47 2006 -0400"
      },
      "committer": {
        "name": "Dave Jones",
        "email": "davej@redhat.com",
        "time": "Tue Sep 05 17:15:47 2006 -0400"
      },
      "message": "[CPUFREQ] Fix sparse warning in ondemand\n\ndrivers/cpufreq/cpufreq_ondemand.c:323:2: warning: Using plain integer as NULL pointer\n\nSigned-off-by: Dave Jones \u003cdavej@redhat.com\u003e\n"
    },
    {
      "commit": "b5ecf60fe6b18de0bc59d336d444835d4ef835ed",
      "tree": "fa8ccb8598d475a149ac6fb1ada068717bfa179b",
      "parents": [
        "6595413fc9453a211f4b5d5cc42f0bbf3daa615b"
      ],
      "author": {
        "name": "Adrian Bunk",
        "email": "bunk@stusta.de",
        "time": "Sun Aug 13 23:00:08 2006 +0200"
      },
      "committer": {
        "name": "Dave Jones",
        "email": "davej@redhat.com",
        "time": "Mon Aug 14 01:18:54 2006 -0400"
      },
      "message": "[CPUFREQ] make drivers/cpufreq/cpufreq_ondemand.c:powersave_bias_target() static\n\nThis patch makes the needlessly global powersave_bias_target() static.\n\nSigned-off-by: Adrian Bunk \u003cbunk@stusta.de\u003e\nSigned-off-by: Dave Jones \u003cdavej@redhat.com\u003e\n"
    },
    {
      "commit": "05ca0350e8caa91a5ec9961c585c98005b6934ea",
      "tree": "16eb1080f5db361dcd18821f7204b8edf5ffb698",
      "parents": [
        "1ce28d6b19112a7c76af8e971e2de3109d19a943"
      ],
      "author": {
        "name": "Alexey Starikovskiy",
        "email": "alexey_y_starikovskiy@linux.intel.com",
        "time": "Mon Jul 31 22:28:12 2006 +0400"
      },
      "committer": {
        "name": "Dave Jones",
        "email": "davej@redhat.com",
        "time": "Fri Aug 11 17:59:57 2006 -0400"
      },
      "message": "[CPUFREQ][2/2] ondemand: updated add powersave_bias tunable\n\nondemand selects the minimum frequency that can retire\na workload with negligible idle time -- ideally resulting in the highest\nperformance/power efficiency with negligible performance impact.\n\nBut on some systems and some workloads, this algorithm\nis more performance biased than necessary, and\nde-tuning it a bit to allow some performance impact\ncan save measurable power.\n\nThis patch adds a \"powersave_bias\" tunable to ondemand\nto allow it to reduce its target frequency by a specified percent.\n\nBy default, the powersave_bias is 0 and has no effect.\npowersave_bias is in units of 0.1%, so it has an effective range\nof 1 through 1000, resulting in 0.1% to 100% impact.\n\nIn practice, users will not be able to detect a difference between\n0.1% increments, but 1.0% increments turned out to be too large.\nAlso, the max value of 1000 (100%) would simply peg the system\nin its deepest power saving P-state, unless the processor really has\na hardware P-state at 0Hz:-)\n\nFor example, If ondemand requests 2.0GHz based on utilization,\nand powersave_bias\u003d100, this code will knock 10% off the target\nand seek  a target of 1.8GHz instead of 2.0GHz until the\nnext sampling.  If 1.8 is an exact match with an hardware frequency\nwe use it, otherwise we average our time between the frequency\nnext higher than 1.8 and next lower than 1.8.\n\nNote that a user or administrative program can change powersave_bias\nat run-time depending on how they expect the system to be used.\n\nSigned-off-by: Venkatesh Pallipadi \u003cvenkatesh.pallipadi at intel.com\u003e\nSigned-off-by: Alexey Starikovskiy \u003calexey.y.starikovskiy at intel.com\u003e\nSigned-off-by: Dave Jones \u003cdavej@redhat.com\u003e\n"
    },
    {
      "commit": "1ce28d6b19112a7c76af8e971e2de3109d19a943",
      "tree": "5fe089fa4b9851ca4c975a5e13f636f95fa43078",
      "parents": [
        "cd878479792cc1e4bc9d62ed0ef2c4454743848c"
      ],
      "author": {
        "name": "Alexey Starikovskiy",
        "email": "alexey_y_starikovskiy@linux.intel.com",
        "time": "Mon Jul 31 22:25:20 2006 +0400"
      },
      "committer": {
        "name": "Dave Jones",
        "email": "davej@redhat.com",
        "time": "Fri Aug 11 17:59:56 2006 -0400"
      },
      "message": "[CPUFREQ][1/2] ondemand: updated tune for hardware coordination\n\nTry to make dbs_check_cpu() call on all CPUs at the same jiffy.\nThis will help when multiple cores share P-states via Hardware Coordination.\n\nSigned-off-by: Venkatesh Pallipadi \u003cvenkatesh.pallipadi at intel.com\u003e\nSigned-off-by: Alexey Starikovskiy \u003calexey.y.starikovskiy at intel.com\u003e\nSigned-off-by: Dave Jones \u003cdavej@redhat.com\u003e\n"
    },
    {
      "commit": "cd878479792cc1e4bc9d62ed0ef2c4454743848c",
      "tree": "41abf6ff0cb2e4797fb14a31b1723371a5fda685",
      "parents": [
        "9f737633e6ee54fc174282d49b2559bd2208391d"
      ],
      "author": {
        "name": "Dave Jones",
        "email": "davej@redhat.com",
        "time": "Fri Aug 11 17:59:28 2006 -0400"
      },
      "committer": {
        "name": "Dave Jones",
        "email": "davej@redhat.com",
        "time": "Fri Aug 11 17:59:28 2006 -0400"
      },
      "message": "[CPUFREQ] Fix typo.\n\nSigned-off-by: Dave Jones \u003cdavej@redhat.com\u003e\n"
    },
    {
      "commit": "ea71497020c55cd39221e0abad5c1752ac6e3f47",
      "tree": "cd0fb594af99f384f11b0834d6302b956bfd6f15",
      "parents": [
        "3bcb09a35641f2840bd59d8f82154f830dca282c"
      ],
      "author": {
        "name": "Jeremy Fitzhardinge",
        "email": "jeremy@goop.org",
        "time": "Thu Jul 06 12:32:01 2006 -0700"
      },
      "committer": {
        "name": "Dave Jones",
        "email": "davej@redhat.com",
        "time": "Mon Jul 31 18:37:06 2006 -0400"
      },
      "message": "[CPUFREQ] [2/2] demand load governor modules.\n\nDemand-load cpufreq governor modules if needed.\n\nSigned-off-by: Jeremy Fitzhardinge \u003cjeremy@goop.org\u003e\nSigned-off-by: Dave Jones \u003cdavej@redhat.com\u003e\n"
    },
    {
      "commit": "3bcb09a35641f2840bd59d8f82154f830dca282c",
      "tree": "57fc63ed401b27573d88f322487a6554f006c883",
      "parents": [
        "32deb2d5c4c291d7d9a73198dc357a151e4b978c"
      ],
      "author": {
        "name": "Jeremy Fitzhardinge",
        "email": "jeremy@goop.org",
        "time": "Thu Jul 06 12:30:26 2006 -0700"
      },
      "committer": {
        "name": "Dave Jones",
        "email": "davej@redhat.com",
        "time": "Mon Jul 31 18:37:06 2006 -0400"
      },
      "message": "[CPUFREQ] [1/2] add __find_governor helper and clean up some error handling.\n\nAdds a __find_governor() helper function to look up a governor by\nname.  Also restructures some error handling to conform to the\n\"single-exit\" model which is generally preferred for kernel code.\n\nSigned-off-by: Jeremy Fitzhardinge \u003cjeremy@goop.org\u003e\nSigned-off-by: Dave Jones \u003cdavej@redhat.com\u003e\n"
    },
    {
      "commit": "9c9a43ed2734081124407c779b36a4761c41139b",
      "tree": "b32e4d83e840c46f8ef760bda594d7a02e1c41c9",
      "parents": [
        "49b1e3ea19b1c95c2f012b8331ffb3b169e4c042"
      ],
      "author": {
        "name": "Mattia Dongili",
        "email": "malattia@linux.it",
        "time": "Wed Jul 05 23:12:20 2006 +0200"
      },
      "committer": {
        "name": "Dave Jones",
        "email": "davej@redhat.com",
        "time": "Mon Jul 31 18:37:05 2006 -0400"
      },
      "message": "[CPUFREQ] return error when failing to set minfreq\n\nI just stumbled on this bug/feature, this is how to reproduce it:\n\n# echo 450000 \u003e /sys/devices/system/cpu/cpu0/cpufreq/scaling_min_freq\n# echo 450000 \u003e /sys/devices/system/cpu/cpu0/cpufreq/scaling_max_freq\n# echo powersave \u003e /sys/devices/system/cpu/cpu0/cpufreq/scaling_governor\n# cpufreq-info -p\n450000 450000 powersave\n# echo 1800000 \u003e /sys/devices/system/cpu/cpu0/cpufreq/scaling_min_freq ; echo $?\n0\n# cpufreq-info -p\n450000 450000 powersave\n\nHere it is. The kernel refuses to set a min_freq higher than the\nmax_freq but it allows a max_freq lower than min_freq (lowering min_freq\nalso).\n\nThis behaviour is pretty straightforward (but undocumented) and it\ndoesn\u0027t return an error altough failing to accomplish the requested\naction (set min_freq).\nThe problem (IMO) is basically that userspace is not allowed to set a\nfull policy atomically while the kernel always does that thus it must\nenforce an ordering on operations.\n\nThe attached patch returns -EINVAL if trying to increase frequencies\nstarting from scaling_min_freq and documents the correct ordering of writes.\n\nSigned-off-by: Mattia Dongili \u003cmalattia@linux.it\u003e\nSigned-off-by: Dominik Brodowski \u003clinux at dominikbrodowski.net\u003e\nSigned-off-by: Dave Jones \u003cdavej@redhat.com\u003e\n\n--\n"
    },
    {
      "commit": "153d7f3fcae7ed4e19328549aa9467acdfbced10",
      "tree": "a7b15b844119663a276c7a99549ea5a06c16f19a",
      "parents": [
        "44eb123126d289bac398cac0232309c228386671"
      ],
      "author": {
        "name": "Arjan van de Ven",
        "email": "arjan@linux.intel.com",
        "time": "Wed Jul 26 15:40:07 2006 +0200"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Wed Jul 26 07:21:40 2006 -0700"
      },
      "message": "[PATCH] Reorganize the cpufreq cpu hotplug locking to not be totally bizare\n\nThe patch below moves the cpu hotplugging higher up in the cpufreq\nlayering; this is needed to avoid recursive taking of the cpu hotplug\nlock and to otherwise detangle the mess.\n\nThe new rules are:\n1. you must do lock_cpu_hotplug() around the following functions:\n   __cpufreq_driver_target\n   __cpufreq_governor (for CPUFREQ_GOV_LIMITS operation only)\n   __cpufreq_set_policy\n2. governer methods (.governer) must NOT take the lock_cpu_hotplug()\n   lock in any way; they are called with the lock taken already\n3. if your governer spawns a thread that does things, like calling\n   __cpufreq_driver_target, your thread must honor rule #1.\n4. the policy lock and other cpufreq internal locks nest within\n   the lock_cpu_hotplug() lock.\n\nI\u0027m not entirely happy about how the __cpufreq_governor rule ended up\n(conditional locking rule depending on the argument) but basically all\ncallers pass this as a constant so it\u0027s not too horrible.\n\nThe patch also removes the cpufreq_governor() function since during the\nlocking audit it turned out to be entirely unused (so no need to fix it)\n\nThe patch works on my testbox, but it could use more testing\n(otoh... it can\u0027t be much worse than the current code)\n\nSigned-off-by: Arjan van de Ven \u003carjan@linux.intel.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "2cd7cbdf4bd0d0fe58e4dc903e8b413412595504",
      "tree": "ad368b1f9a26d06be6e8bd26d821f17670ad2ef4",
      "parents": [
        "12157a8d78af50842774bedb80b7b84a87f60951"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@macmini.osdl.org",
        "time": "Sun Jul 23 12:05:00 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@macmini.osdl.org",
        "time": "Sun Jul 23 12:05:00 2006 -0700"
      },
      "message": "[cpufreq] ondemand: make shutdown sequence more robust\n\nShutting down the ondemand policy was fraught with potential\nproblems, causing issues for SMP suspend (which wants to hot-\nunplug) all but the last CPU.\n\nThis should fix at least the worst problems (divide-by-zero\nand infinite wait for the workqueue to shut down).\n\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "a496e25dfb25493a57bcee5d66875d6ff80a9093",
      "tree": "e0dc7f0f8151f6cf0ddc9ef987a6750e4e4a9ea3",
      "parents": [
        "120bda20c6f64b32e8bfbdd7b34feafaa5f5332e"
      ],
      "author": {
        "name": "Dave Jones",
        "email": "davej@redhat.com",
        "time": "Fri Jul 07 12:31:27 2006 -0400"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Fri Jul 07 09:46:45 2006 -0700"
      },
      "message": "[PATCH] Fix cpufreq vs hotplug lockdep recursion.\n\n[ There\u0027s some not quite baked bits in cpufreq-git right now\n  so sending this on as a patch instead ]\n\nOn Thu, 2006-07-06 at 07:58 -0700, Tom London wrote:\n\n\u003e After installing .2356 I get this each time I boot:\n\u003e \u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\n\u003e [ INFO: possible circular locking dependency detected ]\n\u003e -------------------------------------------------------\n\u003e S06cpuspeed/1620 is trying to acquire lock:\n\u003e  (dbs_mutex){--..}, at: [\u003cc060d6bb\u003e] mutex_lock+0x21/0x24\n\u003e\n\u003e but task is already holding lock:\n\u003e  (cpucontrol){--..}, at: [\u003cc060d6bb\u003e] mutex_lock+0x21/0x24\n\u003e\n\u003e which lock already depends on the new lock.\n\u003e\n\nmake sure the cpu hotplug recursive mutex (yuck) is taken early in the\ncpufreq codepaths to avoid a AB-BA deadlock.\n\nSigned-off-by: Arjan van de Ven \u003carjan@linux.intel.com\u003e\nSigned-off-by: Dave Jones \u003cdavej@redhat.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "ca78f6baca863afe2e6a244a0fe94b3a70211d46",
      "tree": "f5a3a169b6cfafa36f9c35cc86e782596c820915",
      "parents": [
        "7ad7153b051d9628ecd6a336b543ea6ef099bd2c",
        "ae90dd5dbee461652b90d9f7d292ba47dc3dc4b8"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Jul 04 14:00:26 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Jul 04 14:00:26 2006 -0700"
      },
      "message": "Merge master.kernel.org:/pub/scm/linux/kernel/git/davej/cpufreq\n\n* master.kernel.org:/pub/scm/linux/kernel/git/davej/cpufreq:\n  Move workqueue exports to where the functions are defined.\n  [CPUFREQ] Misc cleanups in ondemand.\n  [CPUFREQ] Make ondemand sampling per CPU and remove the mutex usage in sampling path.\n  [CPUFREQ] Add queue_delayed_work_on() interface for workqueues.\n  [CPUFREQ] Remove slowdown from ondemand sampling path.\n"
    },
    {
      "commit": "6ab3d5624e172c553004ecc862bfeac16d9d68b7",
      "tree": "6d98881fe91fd9583c109208d5c27131b93fa248",
      "parents": [
        "e02169b682bc448ccdc819dc8639ed34a23cedd8"
      ],
      "author": {
        "name": "Jörn Engel",
        "email": "joern@wohnheim.fh-wedel.de",
        "time": "Fri Jun 30 19:25:36 2006 +0200"
      },
      "committer": {
        "name": "Adrian Bunk",
        "email": "bunk@stusta.de",
        "time": "Fri Jun 30 19:25:36 2006 +0200"
      },
      "message": "Remove obsolete #include \u003clinux/config.h\u003e\n\nSigned-off-by: Jörn Engel \u003cjoern@wohnheim.fh-wedel.de\u003e\nSigned-off-by: Adrian Bunk \u003cbunk@stusta.de\u003e\n"
    },
    {
      "commit": "ffac80e925e54d84f6ea580231aa46d0ef051756",
      "tree": "18a1fad02d45bba365164923c674edfc69d1c0db",
      "parents": [
        "2f8a835c705794f71726eb12c06fb0f24fe07ed3"
      ],
      "author": {
        "name": "Venkatesh Pallipadi",
        "email": "venkatesh.pallipadi@intel.com",
        "time": "Wed Jun 28 13:52:18 2006 -0700"
      },
      "committer": {
        "name": "Dave Jones",
        "email": "davej@redhat.com",
        "time": "Fri Jun 30 01:36:40 2006 -0400"
      },
      "message": "[CPUFREQ] Misc cleanups in ondemand.\n\nMisc cleanups in ondemand. Should have zero functional impact.\nAlso adding Alexey as author.\n\nSigned-off-by: Alexey Starikovskiy \u003calexey.y.starikovskiy@intel.com\u003e\nSigned-off-by: Venkatesh Pallipadi \u003cvenkatesh.pallipadi@intel.com\u003e\nSigned-off-by: Dave Jones \u003cdavej@redhat.com\u003e\n"
    },
    {
      "commit": "2f8a835c705794f71726eb12c06fb0f24fe07ed3",
      "tree": "c16b1a4bf85df6822b9bcedc608f1db9ddf6e571",
      "parents": [
        "7a6bc1cdd506cf81f856f0fef4e56a2ba0c5a26d"
      ],
      "author": {
        "name": "Venkatesh Pallipadi",
        "email": "venkatesh.pallipadi@intel.com",
        "time": "Wed Jun 28 13:51:19 2006 -0700"
      },
      "committer": {
        "name": "Dave Jones",
        "email": "davej@redhat.com",
        "time": "Fri Jun 30 01:33:31 2006 -0400"
      },
      "message": "[CPUFREQ] Make ondemand sampling per CPU and remove the mutex usage in sampling path.\n\nMake ondemand sampling per CPU and remove the mutex usage in sampling path.\n\nSigned-off-by: Alexey Starikovskiy \u003calexey.y.starikovskiy@intel.com\u003e\nSigned-off-by: Venkatesh Pallipadi \u003cvenkatesh.pallipadi@intel.com\u003e\nSigned-off-by: Dave Jones \u003cdavej@redhat.com\u003e\n"
    },
    {
      "commit": "ccb2fe209dac9ff67f6351e783e610073afaaeaf",
      "tree": "ba6793c2045604d6db11b781d87a404cb30a54b8",
      "parents": [
        "501b7c77de3e90519e95fd99e923bf9a29cd120d"
      ],
      "author": {
        "name": "Venkatesh Pallipadi",
        "email": "venkatesh.pallipadi@intel.com",
        "time": "Wed Jun 28 13:49:52 2006 -0700"
      },
      "committer": {
        "name": "Dave Jones",
        "email": "davej@redhat.com",
        "time": "Fri Jun 30 01:29:47 2006 -0400"
      },
      "message": "[CPUFREQ] Remove slowdown from ondemand sampling path.\n\nRemove slowdown from ondemand sampling path. This reduces the code path length\nin dbs_check_cpu() by half. slowdown was not used by ondemand by default.\nIf there are any user level tools that were using this tunable, they\nmay report error now.\n\nSigned-off-by: Alexey Starikovskiy \u003calexey.y.starikovskiy@intel.com\u003e\nSigned-off-by: Venkatesh Pallipadi \u003cvenkatesh.pallipadi@intel.com\u003e\nSigned-off-by: Dave Jones \u003cdavej@redhat.com\u003e\n"
    },
    {
      "commit": "74b85f3790aa2550c617fe14439482e13e615fa0",
      "tree": "125e9c503d483c304e111ca825358bd81e0610cd",
      "parents": [
        "65edc68c345cbe21d0b0375c3452a3ed5e322868"
      ],
      "author": {
        "name": "Chandra Seetharaman",
        "email": "sekharan@us.ibm.com",
        "time": "Tue Jun 27 02:54:09 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Jun 27 17:32:41 2006 -0700"
      },
      "message": "[PATCH] cpu hotplug: make cpu_notifier related notifier blocks __cpuinit only\n\nMake notifier_blocks associated with cpu_notifier as __cpuinitdata.\n\n__cpuinitdata makes sure that the data is init time only unless\nCONFIG_HOTPLUG_CPU is defined.\n\nSigned-off-by: Chandra Seetharaman \u003csekharan@us.ibm.com\u003e\nCc: Ashok Raj \u003cashok.raj@intel.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "65edc68c345cbe21d0b0375c3452a3ed5e322868",
      "tree": "07961d63cdacf95355a8db471c6ff4e321ca94fd",
      "parents": [
        "054cc8a2d808822dadf488a61729e3e550f114c4"
      ],
      "author": {
        "name": "Chandra Seetharaman",
        "email": "sekharan@us.ibm.com",
        "time": "Tue Jun 27 02:54:08 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Jun 27 17:32:41 2006 -0700"
      },
      "message": "[PATCH] cpu hotplug: make [un]register_cpu_notifier init time only\n\nCPUs come online only at init time (unless CONFIG_HOTPLUG_CPU is defined).\nSo, cpu_notifier functionality need to be available only at init time.\n\nThis patch makes register_cpu_notifier() available only at init time, unless\nCONFIG_HOTPLUG_CPU is defined.\n\nThis patch exports register_cpu_notifier() and unregister_cpu_notifier() only\nif CONFIG_HOTPLUG_CPU is defined.\n\nSigned-off-by: Chandra Seetharaman \u003csekharan@us.ibm.com\u003e\nCc: Ashok Raj \u003cashok.raj@intel.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "9c7b216d23e820e0e148d5be01bbb5bd2d8378fe",
      "tree": "53e6c1e4870db49b4999b4053862d3f63375773f",
      "parents": [
        "6ac12dfe9c2027cd3c5ed603f11d1bb4f04906fe"
      ],
      "author": {
        "name": "Chandra Seetharaman",
        "email": "sekharan@us.ibm.com",
        "time": "Tue Jun 27 02:54:07 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Jun 27 17:32:40 2006 -0700"
      },
      "message": "[PATCH] cpu hotplug: revert init patch submitted for 2.6.17\n\nIn 2.6.17, there was a problem with cpu_notifiers and XFS.  I provided a\nband-aid solution to solve that problem.  In the process, i undid all the\nchanges you both were making to ensure that these notifiers were available\nonly at init time (unless CONFIG_HOTPLUG_CPU is defined).\n\nWe deferred the real fix to 2.6.18.  Here is a set of patches that fixes the\nXFS problem cleanly and makes the cpu notifiers available only at init time\n(unless CONFIG_HOTPLUG_CPU is defined).\n\nIf CONFIG_HOTPLUG_CPU is defined then cpu notifiers are available at run\ntime.\n\nThis patch reverts the notifier_call changes made in 2.6.17\n\nSigned-off-by: Chandra Seetharaman \u003csekharan@us.ibm.com\u003e\nCc: Ashok Raj \u003cashok.raj@intel.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "138a0128c01899ee8492858a50856b90d0d9d815",
      "tree": "9f9865b39e7e65c2bb6763f0ad9d7b02aba59b33",
      "parents": [
        "8269730b389d4793348d521140f9c76fb1828249"
      ],
      "author": {
        "name": "Andrew Morton",
        "email": "akpm@osdl.org",
        "time": "Fri Jun 23 03:31:19 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Fri Jun 23 08:47:27 2006 -0700"
      },
      "message": "[PATCH] cpufreq build fix\n\ndrivers/cpufreq/cpufreq_ondemand.c: In function \u0027do_dbs_timer\u0027:\ndrivers/cpufreq/cpufreq_ondemand.c:374: warning: implicit declaration of function \u0027lock_cpu_hotplug\u0027\ndrivers/cpufreq/cpufreq_ondemand.c:381: warning: implicit declaration of function \u0027unlock_cpu_hotplug\u0027\ndrivers/cpufreq/cpufreq_conservative.c: In function \u0027do_dbs_timer\u0027:\ndrivers/cpufreq/cpufreq_conservative.c:425: warning: implicit declaration of function \u0027lock_cpu_hotplug\u0027\ndrivers/cpufreq/cpufreq_conservative.c:432: warning: implicit declaration of function \u0027unlock_cpu_hotplug\u0027\n\nCc: Dave Jones \u003cdavej@codemonkey.org.uk\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "4ec223d02f4d5f5a3129edc0e3d22550d6ac8a32",
      "tree": "753cec643fa59ccda64a95fa5436956e481c1137",
      "parents": [
        "9ed059e1551bf36092215b965838502ac21f42e4"
      ],
      "author": {
        "name": "Venkatesh Pallipadi",
        "email": "venkatesh.pallipadi@intel.com",
        "time": "Wed Jun 21 15:18:34 2006 -0700"
      },
      "committer": {
        "name": "Dave Jones",
        "email": "davej@redhat.com",
        "time": "Wed Jun 21 18:30:26 2006 -0400"
      },
      "message": "[CPUFREQ] Fix ondemand vs suspend deadlock\n\nRootcaused the bug to a deadlock in cpufreq and ondemand. Due to non-existent\nordering between cpu_hotplug lock and dbs_mutex. Basically a race condition\nbetween cpu_down() and do_dbs_timer().\n\ncpu_down() flow:\n* cpu_down() call for CPU 1\n* Takes hot plug lock\n* Calls pre down notifier\n*     cpufreq notifier handler calls cpufreq_driver_target() which takes\n      cpu_hotplug lock again. OK as cpu_hotplug lock is recursive in same\n      process context\n* CPU 1 goes down\n* Calls post down notifier\n*     cpufreq notifier handler calls ondemand event stop which takes dbs_mutex\n\nSo, cpu_hotplug lock is taken before dbs_mutex in this flow.\n\ndo_dbs_timer is triggerred by a periodic timer event.\nIt first takes dbs_mutex and then takes cpu_hotplug lock in\ncpufreq_driver_target().\nNote the reverse order here compared to above. So, if this timer event happens\nat right moment during cpu_down, system will deadlok.\n\nAttached patch fixes the issue for both ondemand and conservative.\n\nSigned-off-by: Venkatesh Pallipadi \u003cvenkatesh.pallipadi@intel.com\u003e\nSigned-off-by: Dave Jones \u003cdavej@redhat.com\u003e\n"
    },
    {
      "commit": "b10eec2246690f069febd3aa9578decd5ffb3f5b",
      "tree": "789c892dc6c2ec4e1aca1ab52fd068815c7f4692",
      "parents": [
        "8c362a5d62c98ee117b229c3555f402e72f5c21e"
      ],
      "author": {
        "name": "Jan Beulich",
        "email": "jbeulich@novell.com",
        "time": "Fri Apr 28 13:47:13 2006 +0200"
      },
      "committer": {
        "name": "Dave Jones",
        "email": "davej@redhat.com",
        "time": "Sun Jun 04 19:47:38 2006 -0400"
      },
      "message": "[CPUFREQ] cpufreq core {d,}printk adjustments\n\nRemove KERN_* suffixes from some cpufreq driver\u0027s dprintk-s.\n\nSigned-off-by: Jan Beulich \u003cjbeulich@novell.com\u003e\nSigned-off-by: Dave Jones \u003cdavej@redhat.com\u003e\n"
    },
    {
      "commit": "484944a5b002cf87b38a8f073d37afcfb8afff28",
      "tree": "40a960d5b4bee4ea5e4bafb2f1017f5d98484b87",
      "parents": [
        "5557976ca97c3a3002805f575a45ad354e1050ff"
      ],
      "author": {
        "name": "Dave Jones",
        "email": "davej@redhat.com",
        "time": "Tue May 30 18:09:31 2006 -0400"
      },
      "committer": {
        "name": "Dave Jones",
        "email": "davej@redhat.com",
        "time": "Tue May 30 18:09:31 2006 -0400"
      },
      "message": "[CPUFREQ] Remove more freq_table reinitialisations.\n\nSigned-off-by: Dave Jones \u003cdavej@redhat.com\u003e\n"
    },
    {
      "commit": "5557976ca97c3a3002805f575a45ad354e1050ff",
      "tree": "7357b8341c36e7f4448e71cc8ae37a448e81cf4b",
      "parents": [
        "355eb318018c6f44a335b0e5efb1f3bf2f1685d0"
      ],
      "author": {
        "name": "Dave Jones",
        "email": "davej@redhat.com",
        "time": "Tue May 30 17:59:48 2006 -0400"
      },
      "committer": {
        "name": "Dave Jones",
        "email": "davej@redhat.com",
        "time": "Tue May 30 17:59:48 2006 -0400"
      },
      "message": "[CPUFREQ] Fix another redundant initialisation in freq_table\n\nSigned-off-by: Dave Jones \u003cdavej@redhat.com\u003e\n"
    },
    {
      "commit": "355eb318018c6f44a335b0e5efb1f3bf2f1685d0",
      "tree": "278afd3f9be8f7ac3c58d1fa4d37d73569bb410c",
      "parents": [
        "511e9ee17099c6ebe315c0524b8b482d4767ab3d"
      ],
      "author": {
        "name": "Dave Jones",
        "email": "davej@redhat.com",
        "time": "Tue May 30 17:58:41 2006 -0400"
      },
      "committer": {
        "name": "Dave Jones",
        "email": "davej@redhat.com",
        "time": "Tue May 30 17:58:41 2006 -0400"
      },
      "message": "[CPUFREQ] Remove duplicate assignment in freq_table\n\nSigned-off-by: Dave Jones \u003cdavej@redhat.com\u003e\n"
    },
    {
      "commit": "511e9ee17099c6ebe315c0524b8b482d4767ab3d",
      "tree": "7eb8bb99ddfbe5dfe4cd96735275405c7efcccc2",
      "parents": [
        "851777b7b686c80e417fd811cdea3e5aa5305745"
      ],
      "author": {
        "name": "Dave Jones",
        "email": "davej@redhat.com",
        "time": "Tue May 30 17:57:14 2006 -0400"
      },
      "committer": {
        "name": "Dave Jones",
        "email": "davej@redhat.com",
        "time": "Tue May 30 17:57:14 2006 -0400"
      },
      "message": "[CPUFREQ] CodingStyle nits in cpufreq_stats.c\n\nSigned-off-by: Dave Jones \u003cdavej@redhat.com\u003e\n"
    },
    {
      "commit": "6810b548b25114607e0814612d84125abccc0a4f",
      "tree": "51dab8f9b809479b038e2d957e74fba7e1e99e49",
      "parents": [
        "ac71d12c990526b01ef6cfe50907ef8530a30331"
      ],
      "author": {
        "name": "Andi Kleen",
        "email": "ak@suse.de",
        "time": "Mon May 08 15:17:31 2006 +0200"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Mon May 08 09:34:56 2006 -0700"
      },
      "message": "[PATCH] x86_64: Move ondemand timer into own work queue\n\nTaking the cpu hotplug semaphore in a normal events workqueue\nis unsafe because other tasks can wait for any workqueues with\nit hold. This results in a deadlock.\n\nMove the DBS timer into its own work queue which is not\naffected by other work queue flushes to avoid this.\n\nHas been acked by Venkatesh.\n\nCc: venkatesh.pallipadi@intel.com\nCc: cpufreq@lists.linux.org.uk\nSigned-off-by: Andi Kleen \u003cak@suse.de\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "83d722f7e198b034699b1500d98729beff930efd",
      "tree": "7d790a2fd62165373ec7bacde704837288e0bec3",
      "parents": [
        "649bbaa484bcdce94f40a1b97a6a2ded0549e8a2"
      ],
      "author": {
        "name": "Chandra Seetharaman",
        "email": "sekharan@us.ibm.com",
        "time": "Mon Apr 24 19:35:21 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Wed Apr 26 08:30:03 2006 -0700"
      },
      "message": "[PATCH] Remove __devinit and __cpuinit from notifier_call definitions\n\nFew of the notifier_chain_register() callers use __init in the definition\nof notifier_call.  It is incorrect as the function definition should be\navailable after the initializations (they do not unregister them during\ninitializations).\n\nThis patch fixes all such usages to _not_ have the notifier_call __init\nsection.\n\nSigned-off-by: Chandra Seetharaman \u003csekharan@us.ibm.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "7b14dedd1fe72f33e128ed1b0cbf96d06acc7e9c",
      "tree": "4edf20b5097bb4da400552852ee66ad8d1e32c27",
      "parents": [
        "7970e08bf066900efcd7794a1a338c11eb8f5141"
      ],
      "author": {
        "name": "Adrian Bunk",
        "email": "bunk@stusta.de",
        "time": "Tue Apr 18 17:06:13 2006 +0200"
      },
      "committer": {
        "name": "Dave Jones",
        "email": "davej@redhat.com",
        "time": "Tue Apr 18 17:24:52 2006 -0500"
      },
      "message": "[CPUFREQ] drivers/cpufreq/cpufreq.c: static functions mustn\u0027t be exported\n\nThis patch removes the EXPORT_SYMBOL_GPL of the static function cpufreq_parse_governor().\n\nSigned-off-by: Adrian Bunk \u003cbunk@stusta.de\u003e\nSigned-off-by: Dave Jones \u003cdavej@redhat.com\u003e\n"
    },
    {
      "commit": "7970e08bf066900efcd7794a1a338c11eb8f5141",
      "tree": "bde8036f2d2aab1d85e8704bd69bd3f587d407a4",
      "parents": [
        "f1f76afd71e0f17af9a35fcb649f4bab53304a4d"
      ],
      "author": {
        "name": "Thomas Renninger",
        "email": "trenn@suse.de",
        "time": "Thu Apr 13 15:14:04 2006 +0200"
      },
      "committer": {
        "name": "Dave Jones",
        "email": "davej@redhat.com",
        "time": "Tue Apr 18 17:24:52 2006 -0500"
      },
      "message": "[CPUFREQ] If max_freq got reduced (e.g. by _PPC) a write to sysfs scaling_governor let cpufreq core stuck at low max_freq for ever\n\nThe previous patch had bugs (locking and refcount).\n\nThis one could also be related to the latest DELL reports.\nBut they only slip into this if a user prog (e.g. powersave daemon does when\nAC got (un) plugged due to a scheme change) echos something to\n/sys/../cpufreq/scaling_governor\nwhile the frequencies got limited by BIOS.\n\nThis one works:\n\nSubject: Max freq stucks at low freq if reduced by _PPC and sysfs gov access\n\nThe problem is reproducable by(if machine is limiting freqs via BIOS):\n - Unplugging AC -\u003e max freq gets limited\n - echo ${governor} \u003e/sys/.../cpufreq/scaling_governor (policy-\u003euser_data.max\n   gets overridden with policy-\u003emax and will never come up again.)\n\nThis patch exchanged the cpufreq_set_policy call to __cpufreq_set_policy and\nduplicated it\u0027s functionality but did not override user_data.max.\nThe same happens with overridding min/max values. If freqs are limited and\nyou override the min freq value, the max freq global value will also get\nstuck to the limited freq, even if BIOS allows all freqs again.\nLast scenario does only happen if BIOS does not reduce the frequency\nto the lowest value (should never happen, just for correctness...)\n\n drivers/cpufreq/cpufreq.c |   17 +++++++++++++++--\n 1 files changed, 15 insertions(+), 2 deletions(-)\n\nSigned-off-by: Thomas Renninger \u003ctrenn@suse.de\u003e\nSigned-off-by: \"Pallipadi, Venkatesh\" \u003cvenkatesh.pallipadi@intel.com\u003e\nSigned-off-by: Dave Jones \u003cdavej@redhat.com\u003e\n"
    },
    {
      "commit": "4c41251e31982002bca0ce7e903c0cc66218c1ec",
      "tree": "0c900943e9d335a7c0dafa548e0ba4eae8633e48",
      "parents": [
        "b82fbe6c4232365272bde6f2c3f8fd9dd4dcd73a"
      ],
      "author": {
        "name": "Erik Mouw",
        "email": "erik@bitwizard.nl",
        "time": "Mon Apr 03 14:21:00 2006 +0200"
      },
      "committer": {
        "name": "Dave Jones",
        "email": "davej@redhat.com",
        "time": "Mon Apr 03 07:25:54 2006 -0500"
      },
      "message": "[CPUFREQ] Update LART site URL\n\nUpdate LART site URL.\n\nThe LART website moved to http://www.lartmaker.nl/. This patch\nupdates the URL in CpuFreq specific files.\n\nSigned-off-by: Erik Mouw \u003cerik@bitwizard.nl\u003e\nSigned-off-by: Dave Jones \u003cdavej@redhat.com\u003e\n"
    },
    {
      "commit": "b82fbe6c4232365272bde6f2c3f8fd9dd4dcd73a",
      "tree": "230b1b0c7de857c065c5ff5839ff986213329d96",
      "parents": [
        "87c32271380e630955de365656f67b0a54b75b19"
      ],
      "author": {
        "name": "Dave Jones",
        "email": "davej@redhat.com",
        "time": "Sat Apr 01 22:07:07 2006 -0500"
      },
      "committer": {
        "name": "Dave Jones",
        "email": "davej@redhat.com",
        "time": "Sat Apr 01 22:07:07 2006 -0500"
      },
      "message": "[CPUFREQ] Remove pointless check in conservative governor.\n\n\u003c 0 checks on unsigned variables are pointless.\n\nSigned-off-by: Dave Jones \u003cdavej@redhat.com\u003e\n"
    },
    {
      "commit": "87c32271380e630955de365656f67b0a54b75b19",
      "tree": "ecf0100a60b1a34221d5a82ac920d97c92f83f8c",
      "parents": [
        "1f8b2c9d38c132e79e18cc726cf7a40ebdcb56d9"
      ],
      "author": {
        "name": "Dave Jones",
        "email": "davej@redhat.com",
        "time": "Wed Mar 29 01:48:37 2006 -0500"
      },
      "committer": {
        "name": "Dave Jones",
        "email": "davej@redhat.com",
        "time": "Wed Mar 29 01:48:37 2006 -0500"
      },
      "message": "[CPUFREQ] trailing whitespace removal de-jour.\n\nSigned-off-by: Dave Jones \u003cdavej@redhat.com\u003e\n"
    },
    {
      "commit": "1f8b2c9d38c132e79e18cc726cf7a40ebdcb56d9",
      "tree": "5ffa5b3e15d3fb0369777a4ec5b1dfb09fd162c0",
      "parents": [
        "224b148ef7c9a00642eb33dbdf62f2840bde974f"
      ],
      "author": {
        "name": "Dave Jones",
        "email": "davej@redhat.com",
        "time": "Wed Mar 29 01:40:04 2006 -0500"
      },
      "committer": {
        "name": "Dave Jones",
        "email": "davej@redhat.com",
        "time": "Wed Mar 29 01:40:04 2006 -0500"
      },
      "message": "[CPUFREQ] extra debugging in cpufreq_add_dev()\n\nSnipped from an otherwise rejected patch by Jan Beulich \u003cjbeulich@novell.com\u003e\nSigned-off-by: Dave Jones \u003cdavej@redhat.com\u003e\n"
    },
    {
      "commit": "c326e27eb79e98050d855e371ac534ff4352e910",
      "tree": "c9c0ef0fb238ed491b7ee86fbdf11dff21f2297c",
      "parents": [
        "64840e2722aeb789574e336d231bbc6436d51b34"
      ],
      "author": {
        "name": "Mattia Dongili",
        "email": "malattia@linux.it",
        "time": "Mon Mar 27 22:55:55 2006 +0200"
      },
      "committer": {
        "name": "Dave Jones",
        "email": "davej@redhat.com",
        "time": "Tue Mar 28 12:20:18 2006 -0500"
      },
      "message": "[CPUFREQ] cpufreq_conservative: keep ignore_nice_load and freq_step values when reselected\n\nKeep the value of ignore_nice_load and freq_step of the conservative\ngovernor after the governor is deselected and reselected.\n\nSigned-off-by: Mattia Dongili \u003cmalattia@linux.it\u003e\nSigned-off-by: Dave Jones \u003cdavej@redhat.com\u003e\n"
    },
    {
      "commit": "0bb065f29bffc7895f0dbac1fc7d74b3a8d357a9",
      "tree": "44c80e038d4500d2878634fcc692d69062fcb60f",
      "parents": [
        "329b10bb0feacb7fb9a41389313ff0a51ae56f2a",
        "7c9d8c0e84d395a01289ebd1597758939a875a86"
      ],
      "author": {
        "name": "Dave Jones",
        "email": "davej@redhat.com",
        "time": "Mon Mar 27 14:56:39 2006 -0500"
      },
      "committer": {
        "name": "Dave Jones",
        "email": "davej@redhat.com",
        "time": "Mon Mar 27 14:56:39 2006 -0500"
      },
      "message": "Merge git://git.kernel.org/pub/scm/linux/kernel/git/brodo/cpufreq-2.6\n"
    },
    {
      "commit": "e041c683412d5bf44dc2b109053e3b837b71742d",
      "tree": "9d271066ef379da0c0fb3b8cb4137abd5d2ebba0",
      "parents": [
        "76b81e2b0e2241accebcc68e126bc5ab958661b9"
      ],
      "author": {
        "name": "Alan Stern",
        "email": "stern@rowland.harvard.edu",
        "time": "Mon Mar 27 01:16:30 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Mon Mar 27 08:44:50 2006 -0800"
      },
      "message": "[PATCH] Notifier chain update: API changes\n\nThe kernel\u0027s implementation of notifier chains is unsafe.  There is no\nprotection against entries being added to or removed from a chain while the\nchain is in use.  The issues were discussed in this thread:\n\n    http://marc.theaimsgroup.com/?l\u003dlinux-kernel\u0026m\u003d113018709002036\u0026w\u003d2\n\nWe noticed that notifier chains in the kernel fall into two basic usage\nclasses:\n\n\t\"Blocking\" chains are always called from a process context\n\tand the callout routines are allowed to sleep;\n\n\t\"Atomic\" chains can be called from an atomic context and\n\tthe callout routines are not allowed to sleep.\n\nWe decided to codify this distinction and make it part of the API.  Therefore\nthis set of patches introduces three new, parallel APIs: one for blocking\nnotifiers, one for atomic notifiers, and one for \"raw\" notifiers (which is\nreally just the old API under a new name).  New kinds of data structures are\nused for the heads of the chains, and new routines are defined for\nregistration, unregistration, and calling a chain.  The three APIs are\nexplained in include/linux/notifier.h and their implementation is in\nkernel/sys.c.\n\nWith atomic and blocking chains, the implementation guarantees that the chain\nlinks will not be corrupted and that chain callers will not get messed up by\nentries being added or removed.  For raw chains the implementation provides no\nguarantees at all; users of this API must provide their own protections.  (The\nidea was that situations may come up where the assumptions of the atomic and\nblocking APIs are not appropriate, so it should be possible for users to\nhandle these things in their own way.)\n\nThere are some limitations, which should not be too hard to live with.  For\natomic/blocking chains, registration and unregistration must always be done in\na process context since the chain is protected by a mutex/rwsem.  Also, a\ncallout routine for a non-raw chain must not try to register or unregister\nentries on its own chain.  (This did happen in a couple of places and the code\nhad to be changed to avoid it.)\n\nSince atomic chains may be called from within an NMI handler, they cannot use\nspinlocks for synchronization.  Instead we use RCU.  The overhead falls almost\nentirely in the unregister routine, which is okay since unregistration is much\nless frequent that calling a chain.\n\nHere is the list of chains that we adjusted and their classifications.  None\nof them use the raw API, so for the moment it is only a placeholder.\n\n  ATOMIC CHAINS\n  -------------\narch/i386/kernel/traps.c:\t\ti386die_chain\narch/ia64/kernel/traps.c:\t\tia64die_chain\narch/powerpc/kernel/traps.c:\t\tpowerpc_die_chain\narch/sparc64/kernel/traps.c:\t\tsparc64die_chain\narch/x86_64/kernel/traps.c:\t\tdie_chain\ndrivers/char/ipmi/ipmi_si_intf.c:\txaction_notifier_list\nkernel/panic.c:\t\t\t\tpanic_notifier_list\nkernel/profile.c:\t\t\ttask_free_notifier\nnet/bluetooth/hci_core.c:\t\thci_notifier\nnet/ipv4/netfilter/ip_conntrack_core.c:\tip_conntrack_chain\nnet/ipv4/netfilter/ip_conntrack_core.c:\tip_conntrack_expect_chain\nnet/ipv6/addrconf.c:\t\t\tinet6addr_chain\nnet/netfilter/nf_conntrack_core.c:\tnf_conntrack_chain\nnet/netfilter/nf_conntrack_core.c:\tnf_conntrack_expect_chain\nnet/netlink/af_netlink.c:\t\tnetlink_chain\n\n  BLOCKING CHAINS\n  ---------------\narch/powerpc/platforms/pseries/reconfig.c:\tpSeries_reconfig_chain\narch/s390/kernel/process.c:\t\tidle_chain\narch/x86_64/kernel/process.c\t\tidle_notifier\ndrivers/base/memory.c:\t\t\tmemory_chain\ndrivers/cpufreq/cpufreq.c\t\tcpufreq_policy_notifier_list\ndrivers/cpufreq/cpufreq.c\t\tcpufreq_transition_notifier_list\ndrivers/macintosh/adb.c:\t\tadb_client_list\ndrivers/macintosh/via-pmu.c\t\tsleep_notifier_list\ndrivers/macintosh/via-pmu68k.c\t\tsleep_notifier_list\ndrivers/macintosh/windfarm_core.c\twf_client_list\ndrivers/usb/core/notify.c\t\tusb_notifier_list\ndrivers/video/fbmem.c\t\t\tfb_notifier_list\nkernel/cpu.c\t\t\t\tcpu_chain\nkernel/module.c\t\t\t\tmodule_notify_list\nkernel/profile.c\t\t\tmunmap_notifier\nkernel/profile.c\t\t\ttask_exit_notifier\nkernel/sys.c\t\t\t\treboot_notifier_list\nnet/core/dev.c\t\t\t\tnetdev_chain\nnet/decnet/dn_dev.c:\t\t\tdnaddr_chain\nnet/ipv4/devinet.c:\t\t\tinetaddr_chain\n\nIt\u0027s possible that some of these classifications are wrong.  If they are,\nplease let us know or submit a patch to fix them.  Note that any chain that\ngets called very frequently should be atomic, because the rwsem read-locking\nused for blocking chains is very likely to incur cache misses on SMP systems.\n(However, if the chain\u0027s callout routines may sleep then the chain cannot be\natomic.)\n\nThe patch set was written by Alan Stern and Chandra Seetharaman, incorporating\nmaterial written by Keith Owens and suggestions from Paul McKenney and Andrew\nMorton.\n\n[jes@sgi.com: restructure the notifier chain initialization macros]\nSigned-off-by: Alan Stern \u003cstern@rowland.harvard.edu\u003e\nSigned-off-by: Chandra Seetharaman \u003csekharan@us.ibm.com\u003e\nSigned-off-by: Jes Sorensen \u003cjes@sgi.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "7c9d8c0e84d395a01289ebd1597758939a875a86",
      "tree": "7cdb1540d4e791d6e2e0a63c9a62ecf8ceccd0f9",
      "parents": [
        "9cbad61b41f0b6f0a4c600fe96d8292ffd592b50"
      ],
      "author": {
        "name": "Dominik Brodowski",
        "email": "linux@dominikbrodowski.net",
        "time": "Sun Mar 26 11:11:03 2006 +0200"
      },
      "committer": {
        "name": "Dominik Brodowski",
        "email": "linux@dominikbrodowski.net",
        "time": "Sun Mar 26 11:11:03 2006 +0200"
      },
      "message": "[PATCH] cpufreq_ondemand: add range check\n\nAssert that cpufreq_target is, at least, called with the minimum frequency\nallowed by this policy, not something lower. It triggered problems on ARM.\n\nSigned-off-by: Dominik Brodowski \u003clinux@dominikbrodowski.net\u003e\n"
    },
    {
      "commit": "9cbad61b41f0b6f0a4c600fe96d8292ffd592b50",
      "tree": "85634cbfc70d97534926230dfc4bdc8880a80242",
      "parents": [
        "ff8c288d7d1a368b663058cdee1ea0adcdef2fa2"
      ],
      "author": {
        "name": "Eric Piel",
        "email": "Eric.Piel@tremplin-utc.net",
        "time": "Fri Mar 10 11:35:27 2006 +0200"
      },
      "committer": {
        "name": "Dominik Brodowski",
        "email": "linux@dominikbrodowski.net",
        "time": "Sun Mar 26 10:46:18 2006 +0200"
      },
      "message": "[PATCH] cpufreq_ondemand: keep ignore_nice_load value when it is reselected\n\nKeep the value of ignore_nice_load of the ondemand governor even after\nthe governor has been deselected and selected back. This is the behavior\nof the other exported values of the ondemand governor and it\u0027s much more\nuser-friendly.\n\nSigned-off-by: Eric Piel \u003ceric.piel@tremplin-utc.net\u003e\nAcked-by: Venkatesh Pallipadi \u003cvenkatesh.pallipadi@intel.com\u003e\nSigned-off-by: Dominik Brodowski \u003clinux@dominikbrodowski.net\u003e\n"
    },
    {
      "commit": "ff8c288d7d1a368b663058cdee1ea0adcdef2fa2",
      "tree": "04de5f31a6773e1663a521c1217cb494c18dfa0e",
      "parents": [
        "a159b82770ab84e1b5e0306fa65e158188492b16"
      ],
      "author": {
        "name": "Eric Piel",
        "email": "Eric.Piel@tremplin-utc.net",
        "time": "Fri Mar 10 11:34:16 2006 +0200"
      },
      "committer": {
        "name": "Dominik Brodowski",
        "email": "linux@dominikbrodowski.net",
        "time": "Sun Mar 26 10:43:06 2006 +0200"
      },
      "message": "[PATCH] cpufreq_ondemand: Warn if it cannot run due to too long transition latency\n\nDisplay a warning if the ondemand governor can not be selected due to a\ntransition latency of the cpufreq driver which is too long.\n\nSigned-off-by: Eric Piel \u003ceric.piel@tremplin-utc.net\u003e\nAcked-by: Venkatesh Pallipadi \u003cvenkatesh.pallipadi@intel.com\u003e\nSigned-off-by: Dominik Brodowski \u003clinux@dominikbrodowski.net\u003e\n"
    },
    {
      "commit": "a159b82770ab84e1b5e0306fa65e158188492b16",
      "tree": "93c0c6cd2438e8b20015bfb3444fa930b760452c",
      "parents": [
        "08a28e2e98aa821cf6f15f8a267beb2f33377bb9"
      ],
      "author": {
        "name": "Alexander Clouter",
        "email": "alex@digriz.org.uk",
        "time": "Wed Mar 22 10:00:18 2006 +0000"
      },
      "committer": {
        "name": "Dominik Brodowski",
        "email": "linux@dominikbrodowski.net",
        "time": "Sun Mar 26 10:18:18 2006 +0200"
      },
      "message": "[PATCH] cpufreq_conservative: alternative initialise approach\n\nVenki, author of cpufreq_ondemand, came up with a neater way to remove the\ninitialiser code from the main loop of my code and out to the point when the\ngovernor is actually initialised.\n\nNot only does it look but it also feels cleaner, plus its simpler to\nunderstand.  It also saves a bunch of pointless conditional statements in the\nmain loop.\n\nSigned-off-by: Alexander Clouter \u003calex-kernel@digriz.org.uk\u003e\nSigned-off-by: Dominik Brodowski \u003clinux@dominikbrodowski.net\u003e\n"
    },
    {
      "commit": "08a28e2e98aa821cf6f15f8a267beb2f33377bb9",
      "tree": "c1bc076d41c50e76cca7e1af023d1d1ace1b8326",
      "parents": [
        "e8a02572252f9115c2b8296c40fd8b985f06f872"
      ],
      "author": {
        "name": "Alexander Clouter",
        "email": "alex@digriz.org.uk",
        "time": "Wed Mar 22 09:59:16 2006 +0000"
      },
      "committer": {
        "name": "Dominik Brodowski",
        "email": "linux@dominikbrodowski.net",
        "time": "Sun Mar 26 10:14:54 2006 +0200"
      },
      "message": "[PATCH] cpufreq_conservative: make for_each_cpu() safe\n\nAll these changes should make cpufreq_conservative safe in regards to the x86\nfor_each_cpu cpumask.h changes and whatnot.\n\nWhilst making it safe a number of pointless for loops related to the cpu\nmask\u0027s were removed.  I was never comfortable with all those for loops,\nespecially as the iteration is over the same data again and again for each\nCPU you had in a single poll, an O(n^2) outcome to frequency scaling.\n\nThe approach I use is to assume by default no CPU\u0027s exist and it sets the\nrequested_freq to zero as a kind of flag, the reasoning is in the source ;)\nIf the CPU is queried and requested_freq is zero then it initialises the\nvariable to current_freq and then continues as if nothing happened which\nshould be the same net effect as before?\n\nSigned-off-by: Alexander Clouter \u003calex-kernel@digriz.org.uk\u003e\nSigned-off-by: Dominik Brodowski \u003clinux@dominikbrodowski.net\u003e\n"
    },
    {
      "commit": "e8a02572252f9115c2b8296c40fd8b985f06f872",
      "tree": "f6d161e1c47b9ea675f7aa552d618464314c926c",
      "parents": [
        "2c906b317b2d9c7e32b0d513e102bd68a2c49112"
      ],
      "author": {
        "name": "Alexander Clouter",
        "email": "alex@digriz.org.uk",
        "time": "Wed Mar 22 09:56:23 2006 +0000"
      },
      "committer": {
        "name": "Dominik Brodowski",
        "email": "linux@dominikbrodowski.net",
        "time": "Sun Mar 26 10:13:21 2006 +0200"
      },
      "message": "[PATCH] cpufreq_conservative: alter default responsiveness\n\nThe sensible approach to making conservative less responsive than ondemand :)\nAs mentioned in patch [1/4].  We do not want conservative to shoot through\nall the frequencies, its point (by default) is to slowly move through them.\n\nBy default its ten times less responsive.\n\nSigned-off-by: Alexander Clouter \u003calex-kernel@digriz.org.uk\u003e\nSigned-off-by: Dominik Brodowski \u003clinux@dominikbrodowski.net\u003e\n"
    },
    {
      "commit": "2c906b317b2d9c7e32b0d513e102bd68a2c49112",
      "tree": "dcb86235f25d11e8662d75a9b185a7098cf17fd5",
      "parents": [
        "36ddf5bbdea7ba4582abc62f106f0f0e9f0b6b91"
      ],
      "author": {
        "name": "Alexander Clouter",
        "email": "alex@digriz.org.uk",
        "time": "Wed Mar 22 09:54:10 2006 +0000"
      },
      "committer": {
        "name": "Dominik Brodowski",
        "email": "linux@dominikbrodowski.net",
        "time": "Sun Mar 26 10:13:05 2006 +0200"
      },
      "message": "[PATCH] cpufreq_conservative: aligning of codebase with ondemand\n\nSince the conservative govenor was released its codebase has drifted from the\nthe direction and updates that have been applied to the ondemand govornor.\n\nThis patch addresses the lack of updates in that period and brings\nconservative back up to date.  The resulting diff file between\ncpufreq_ondemand.c and cpufreq_conservative.c is now much smaller and shows\nmore clearly the differences between the two.\n\nAnother reason to do this is ages ago, knowingly, I did a piss poor attempt\nat making conservative less responsive by knocking up\nDEF_SAMPLING_RATE_LATENCY_MULTIPLIER by two orders of magnitude.  I did fix\nthis ages ago but in my dis-organisation I must have toasted the diff and\nleft it the way it was.  About two weeks ago a user contacted me saying he\nwas having problems with the conservative governor with his AMD Athlon XP-M\n2800+ as /sys/devices/system/cpu/cpu0/cpufreq/conservative showed\n  sampling_rate_min   9950000\n  sampling_rate_max   1360065408\n\nNine seconds to decide about changing the frequency....not too responsive :)\n\nSigned-off-by: Alexander Clouter \u003calex-kernel@digriz.org.uk\u003e\nSigned-off-by: Dominik Brodowski \u003clinux@dominikbrodowski.net\u003e\n"
    },
    {
      "commit": "bb1a813d3c49e57814958d2d52b5bb299204032e",
      "tree": "3fc2f6dcf6b8dcf1395a57660c072eadac514445",
      "parents": [
        "6d373ea012b2974e627b9ee830e75cf3bf3c4c24"
      ],
      "author": {
        "name": "Sam Ravnborg",
        "email": "sam@ravnborg.org",
        "time": "Sat Mar 11 19:22:53 2006 +0100"
      },
      "committer": {
        "name": "Dave Jones",
        "email": "davej@redhat.com",
        "time": "Sat Mar 11 13:35:43 2006 -0500"
      },
      "message": "[PATCH] cpufreq: fix section mismatch warnings\n\ncpufreq are the only remaining bit to be solved for me to have a modpost\nclean build for sparc64 - so I took one more look at it.\nchangelog entry:\n\nFix section mismatch warnings in cpufreq:\nWARNING: drivers/cpufreq/cpufreq_stats.o - Section mismatch: reference to .init.text: from .data between \u0027cpufreq_stat_cpu_notifier\u0027 (at offset 0xa8) and \u0027notifier_policy_block\u0027\nWARNING: drivers/cpufreq/cpufreq_stats.o - Section mismatch: reference to .init.text: from .exit.text after \u0027cleanup_module\u0027 (at offset 0x30)\n\nThe culprint is the function: cpufreq_stat_cpu_callback\nIt is marked __cpuinit which get\u0027s redefined to __init in case\nHOTPLUG_CPU is not enabled as per. init.h:\n\n#ifdef CONFIG_HOTPLUG_CPU\n#define __cpuinit\n#else\n#define __cpuinit       __init\n#endif\n\n$\u003e grep HOTPLUG .config\nCONFIG_HOTPLUG\u003dy\n\nBut cpufreq_stat_cpu_callback() is used in:\n__exit cpufreq_stats_exit()\nstatic struct notifier_block cpufreq_stat_cpu_notifier\n\ncpufreq_stat_cpu_notifier is again used in:\n__init cpufreq_stats_init()\n__exit cpufreq_stats_exit()\n\nSo in both cases used from both __init and __exit context.\nOnly solution seems to drop __cpuinit tag.\n\nSigned-off-by: Sam Ravnborg \u003csam@ravnborg.org\u003e\nSigned-off-by: Dave Jones \u003cdavej@redhat.com\u003e\n"
    },
    {
      "commit": "8ff69732d484ea9ccbf242cc49b4fe9538e64c71",
      "tree": "5b65e26af1cbf2f5c54ca9b3b35755ddeb2f40ee",
      "parents": [
        "2a1c1c877ecb446dbdf1715248e151db8719a87b"
      ],
      "author": {
        "name": "Dave Jones",
        "email": "davej@redhat.com",
        "time": "Sun Mar 05 03:37:23 2006 -0500"
      },
      "committer": {
        "name": "Dave Jones",
        "email": "davej@redhat.com",
        "time": "Sun Mar 05 03:37:23 2006 -0500"
      },
      "message": "[CPUFREQ] Fix handling for CPU hotplug\n\nThis patch adds proper logic to cpufreq driver in order to handle\nCPU Hotplug.\n\nWhen CPUs go on/offline, the affected CPUs data, cpufreq_policy-\u003ecpus,\nis not updated properly. This causes sysfs directories and symlinks to\nbe in an incorrect state after few CPU on/offlines.\n\nSigned-off-by: Jacob Shin \u003cjacob.shin@amd.com\u003e\nSigned-off-by: Dave Jones \u003cdavej@redhat.com\u003e\n"
    },
    {
      "commit": "32ee8c3e470d86588b51dc42ed01e85c5fa0f180",
      "tree": "d544cc24c37c02f44f9cf89cb5647d74a61d7ce6",
      "parents": [
        "8ad5496d2359a19127ad9f2eda69485025c9917f"
      ],
      "author": {
        "name": "Dave Jones",
        "email": "davej@redhat.com",
        "time": "Tue Feb 28 00:43:23 2006 -0500"
      },
      "committer": {
        "name": "Dave Jones",
        "email": "davej@redhat.com",
        "time": "Tue Feb 28 00:43:23 2006 -0500"
      },
      "message": "[CPUFREQ] Lots of whitespace \u0026 CodingStyle cleanup.\n\nSigned-off-by: Dave Jones \u003cdavej@redhat.com\u003e\n"
    },
    {
      "commit": "7d5e350fab47f1273bc8b52d5f133ed6e4baeb7f",
      "tree": "24318712260f30ea36db8e47c40a1ba5f0dd66a5",
      "parents": [
        "a85f7bd310dbc9010309bfe70b6b02432a11ef59"
      ],
      "author": {
        "name": "Dave Jones",
        "email": "davej@redhat.com",
        "time": "Thu Feb 02 17:03:42 2006 -0500"
      },
      "committer": {
        "name": "Dave Jones",
        "email": "davej@redhat.com",
        "time": "Thu Feb 02 17:03:42 2006 -0500"
      },
      "message": "[CPUFREQ] Whitespace/CodingStyle cleanups\n\nSigned-off-by: Dave Jones \u003cdavej@redhat.com\u003e\n"
    },
    {
      "commit": "a85f7bd310dbc9010309bfe70b6b02432a11ef59",
      "tree": "569a7cb38a5f99579a693749508fd01a9e9912c7",
      "parents": [
        "9d2725bb815d915fc6c8531097d9e71b579a8763"
      ],
      "author": {
        "name": "Thomas Renninger",
        "email": "trenn@suse.de",
        "time": "Wed Feb 01 11:36:04 2006 +0100"
      },
      "committer": {
        "name": "Dave Jones",
        "email": "davej@redhat.com",
        "time": "Thu Feb 02 16:56:41 2006 -0500"
      },
      "message": "[CPUFREQ] Check whether driver init did not initialize current freq\n\nCheck whether driver init did not initialize current freq\n\nSigned-off-by: Thomas Renninger \u003ctrenn@suse.de\u003e\nSigned-off-by: Dave Jones \u003cdavej@redhat.com\u003e\n"
    },
    {
      "commit": "e4472cb3706ceea42797ae1dc79d624026986694",
      "tree": "3b6276a2c0caca47fbf7b53f9ec26593ff0cf5fa",
      "parents": [
        "c0672860199ac009af7cf198a134ee7a4c3a9bb3"
      ],
      "author": {
        "name": "Dave Jones",
        "email": "davej@redhat.com",
        "time": "Tue Jan 31 15:53:55 2006 -0800"
      },
      "committer": {
        "name": "Dave Jones",
        "email": "davej@redhat.com",
        "time": "Tue Jan 31 15:53:55 2006 -0800"
      },
      "message": "[CPUFREQ] cpufreq_notify_transition cleanup.\n\nIntroduce caching of cpufreq_cpu_data[freqs-\u003ecpu], which allows us to\nmake the function a lot more readable, and as a nice side-effect, it\nnow fits in \u003c 80 column displays again.\n\nSigned-off-by: Dave Jones \u003cdavej@redhat.com\u003e\n"
    },
    {
      "commit": "c0672860199ac009af7cf198a134ee7a4c3a9bb3",
      "tree": "9b59dfaaf655bacb8380dc8f611f9c2e6e66ca7a",
      "parents": [
        "0961dd0d217d072df736d964f47c2b6600931e19"
      ],
      "author": {
        "name": "Thomas Renninger",
        "email": "trenn@suse.de",
        "time": "Fri Jan 27 16:15:26 2006 +0100"
      },
      "committer": {
        "name": "Dave Jones",
        "email": "davej@redhat.com",
        "time": "Fri Jan 27 10:36:49 2006 -0800"
      },
      "message": "[CPUFREQ] Get rid of userspace policy struct, make userspace gov _PPC safe.\n\nUserspace governor need not to hold it\u0027s own cpufreq_policy,\nbetter make use of the global core policy.\nAlso fixes a bug in case of frequency changes via _PPC.\nOld min/max values have wrongly been passed to __cpufreq_driver_target()\n(kind of buffered) and when max freq was available again, only the old\nmax(normally lowest freq) was still active.\n\nSigned-off-by: Thomas Renninger \u003ctrenn@suse.de\u003e\nSigned-off-by: Venkatesh Pallipadi \u003cvenkatesh.pallipadi@intel.com\u003e\nSigned-off-by: Dave Jones \u003cdavej@redhat.com\u003e\n\n cpufreq_userspace.c |   53 +++++++++++++++++++++++++++-------------------------\n 1 files changed, 28 insertions(+), 25 deletions(-)\n"
    },
    {
      "commit": "0961dd0d217d072df736d964f47c2b6600931e19",
      "tree": "4f90dfb0f93608cd331a8e0b61f849bc9946451b",
      "parents": [
        "c70ca00f77eb1bb69c5a2d029b3a911bc88eac1b"
      ],
      "author": {
        "name": "Thomas Renninger",
        "email": "trenn@suse.de",
        "time": "Thu Jan 26 18:46:33 2006 +0100"
      },
      "committer": {
        "name": "Dave Jones",
        "email": "davej@redhat.com",
        "time": "Thu Jan 26 10:49:39 2006 -0800"
      },
      "message": "[CPUFREQ] _PPC frequency change issues\n\nBIOS might change frequency behind our back when BIOS changes allowed\nfrequencies via _PPC.  In this case cpufreq core got out of sync.\nAsk driver for current freq and notify governors about a change\n\nSigned-off-by: Thomas Renninger \u003ctrenn@suse.de\u003e\nSigned-off-by: Venkatesh Pallipadi \u003cvenkatesh.pallipadi@intel.com\u003e\nSigned-off-by: Dave Jones \u003cdavej@redhat.com\u003e\n"
    },
    {
      "commit": "f3876c1bc7a23d4712c824f2ef5ec7d138259594",
      "tree": "cbfe19995ff8d0aafe75bf1e7de6fadd050f5743",
      "parents": [
        "83933af4720b282f6f6a0b6c05a2a47b4cf08819"
      ],
      "author": {
        "name": "Andrew Morton",
        "email": "akpm@osdl.org",
        "time": "Wed Jan 18 13:40:54 2006 -0800"
      },
      "committer": {
        "name": "Dave Jones",
        "email": "davej@redhat.com",
        "time": "Wed Jan 18 13:53:46 2006 -0800"
      },
      "message": "[CPUFREQ] Don\u0027t free held mutex in cpufreq_add_dev()\n\nMake the cpufreq code play nicely with the mutex debugging code: don\u0027t free a\nheld mutex.\n\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Dave Jones \u003cdavej@redhat.com\u003e\n"
    },
    {
      "commit": "83933af4720b282f6f6a0b6c05a2a47b4cf08819",
      "tree": "7f78fd9684268cb7b4cecac8b440ab0b1c58a5da",
      "parents": [
        "3fc54d37ab64733448faf0185e19a80f070eb9e3"
      ],
      "author": {
        "name": "Arjan van de Ven",
        "email": "arjan@infradead.org",
        "time": "Sat Jan 14 16:01:49 2006 +0100"
      },
      "committer": {
        "name": "Dave Jones",
        "email": "davej@redhat.com",
        "time": "Wed Jan 18 13:53:45 2006 -0800"
      },
      "message": "[CPUFREQ] convert remaining cpufreq semaphore to a mutex\n\nThis one fell through the automation at first because it initializes the\nsemaphore to locked, but that\u0027s easily remedied\n\nSigned-off-by:  Arjan van de Ven \u003carjan@infradead.org\u003e\nSigned-off-by: Dave Jones \u003cdavej@redhat.com\u003e\n\n drivers/cpufreq/cpufreq.c |   37 +++++++++++++++++++------------------\n include/linux/cpufreq.h   |    3 ++-\n 2 files changed, 21 insertions(+), 19 deletions(-)\n"
    },
    {
      "commit": "3fc54d37ab64733448faf0185e19a80f070eb9e3",
      "tree": "58f373f0e519007795fe58d8663b53bab4cb4feb",
      "parents": [
        "7eb9b2f56c9812d03ac63031869bcc42151067b1"
      ],
      "author": {
        "name": "akpm@osdl.org",
        "email": "akpm@osdl.org",
        "time": "Fri Jan 13 15:54:22 2006 -0800"
      },
      "committer": {
        "name": "Dave Jones",
        "email": "davej@redhat.com",
        "time": "Wed Jan 18 13:53:45 2006 -0800"
      },
      "message": "[CPUFREQ] Convert drivers/cpufreq semaphores to mutexes.\n\nSemaphore to mutex conversion.\n\nThe conversion was generated via scripts, and the result was validated\nautomatically via a script as well.\n\nSigned-off-by: Arjan van de Ven \u003carjan@infradead.org\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Dave Jones \u003cdavej@redhat.com\u003e\n"
    },
    {
      "commit": "858119e159384308a5dde67776691a2ebf70df0f",
      "tree": "f360768f999d51edc0863917ce0bf79e88c0ec4c",
      "parents": [
        "b0a9499c3dd50d333e2aedb7e894873c58da3785"
      ],
      "author": {
        "name": "Arjan van de Ven",
        "email": "arjan@infradead.org",
        "time": "Sat Jan 14 13:20:43 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sat Jan 14 18:27:06 2006 -0800"
      },
      "message": "[PATCH] Unlinline a bunch of other functions\n\nRemove the \"inline\" keyword from a bunch of big functions in the kernel with\nthe goal of shrinking it by 30kb to 40kb\n\nSigned-off-by: Arjan van de Ven \u003carjan@infradead.org\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nAcked-by: Jeff Garzik \u003cjgarzik@pobox.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "95235ca2c20ac0b31a8eb39e2d599bcc3e9c9a10",
      "tree": "cdfbebe72a1563f1bfe16b0335da7f9ecb78a91d",
      "parents": [
        "9a7d82a89a8bf55b112f2a5c3b3f405eb95a4303"
      ],
      "author": {
        "name": "Venkatesh Pallipadi",
        "email": "venkatesh.pallipadi@intel.com",
        "time": "Fri Dec 02 10:43:20 2005 -0800"
      },
      "committer": {
        "name": "Dave Jones",
        "email": "davej@redhat.com",
        "time": "Tue Dec 06 19:35:11 2005 -0800"
      },
      "message": "[CPUFREQ] CPU frequency display in /proc/cpuinfo\n\nWhat is the value shown in \"cpu MHz\" of /proc/cpuinfo when CPUs are capable of\nchanging frequency?\n\nToday the answer is: It depends.\nOn i386:\nSMP kernel - It is always the boot frequency\nUP kernel - Scales with the frequency change and shows that was last set.\n\nOn x86_64:\nThere is one single variable cpu_khz that gets written by all the CPUs. So,\nthe frequency set by last CPU will be seen on /proc/cpuinfo of all the\nCPUs in the system. What you see also depends on whether you have constant_tsc\ncapable CPU or not.\n\nOn ia64:\nIt is always boot time frequency of a particular CPU that gets displayed.\n\nThe patch below changes this to:\nShow the last known frequency of the particular CPU, when cpufreq is present. If\ncpu doesnot support changing of frequency through cpufreq, then boot frequency\nwill be shown. The patch affects i386, x86_64 and ia64 architectures.\n\nSigned-off-by: Venkatesh Pallipadi\u003cvenkatesh.pallipadi@intel.com\u003e\nSigned-off-by: Dave Jones \u003cdavej@redhat.com\u003e\n"
    },
    {
      "commit": "001893cda2f280ab882164737a0b608208524809",
      "tree": "99e25fb9dc8f525a66c9e04d9109e008b3141200",
      "parents": [
        "6df8900676c3f5c133328332fb8ad889fd0cc9e3"
      ],
      "author": {
        "name": "Alexander Clouter",
        "email": "alex@digriz.org.uk",
        "time": "Thu Dec 01 01:09:25 2005 -0800"
      },
      "committer": {
        "name": "Dave Jones",
        "email": "davej@redhat.com",
        "time": "Thu Dec 01 01:23:23 2005 -0800"
      },
      "message": "[PATCH] cpufreq_conservative/ondemand: invert meaning of \u0027ignore nice\u0027\n\nThe use of the \u0027ignore_nice\u0027 sysfs file is confusing to anyone using it.\nThis removes the sysfs file \u0027ignore_nice\u0027 and in its place creates a\n\u0027ignore_nice_load\u0027 entry that defaults to \u00270\u0027; meaning nice\u0027d processes\n_are_ counted towards the \u0027business\u0027 calculation.\n\nWARNING: this obvious breaks any userland tools that expected ignore_nice\u0027\nto exist, to draw attention to this fact it was concluded on the mailing\nlist that the entry should be removed altogether so the userland app breaks\nand so the author can build simple to detect workaround.  Having said that\nit seems currently very few tools even make use of this functionality; all\nI could find was a Gentoo Wiki entry.\n\nSigned-off-by: Alexander Clouter \u003calex-kernel@digriz.org.uk\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Dave Jones \u003cdavej@redhat.com\u003e\n"
    },
    {
      "commit": "a9d9baa1e819b2f92f9cfa5240f766c535e636a6",
      "tree": "0ae15e5b1071b395affa0ac9abf6fd746ad60b0e",
      "parents": [
        "e0f39591cc178026607fcbbe9a53be435fe8285d"
      ],
      "author": {
        "name": "Ashok Raj",
        "email": "ashok.raj@intel.com",
        "time": "Mon Nov 28 13:43:46 2005 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Mon Nov 28 14:42:23 2005 -0800"
      },
      "message": "[PATCH] clean up lock_cpu_hotplug() in cpufreq\n\nThere are some callers in cpufreq hotplug notify path that the lowest\nfunction calls lock_cpu_hotplug().  The lock is already held during\ncpu_up() and cpu_down() calls when the notify calls are broadcast to\nregistered clients.\n\nIdeally if possible, we could disable_preempt() at the highest caller and\nmake sure we dont sleep in the path down in cpufreq-\u003edriver_target() calls\nbut the calls are so intertwined and cumbersome to cleanup.\n\nHence we consistently use lock_cpu_hotplug() and unlock_cpu_hotplug() in\nall places.\n\n - Removed export of cpucontrol semaphore and made it static.\n - removed explicit uses of up/down with lock_cpu_hotplug()\n   so we can keep track of the the callers in same thread context and\n   just keep refcounts without calling a down() that causes a deadlock.\n - Removed current_in_hotplug() uses\n - Removed PF_HOTPLUG_CPU in sched.h introduced for the current_in_hotplug()\n   temporary workaround.\n\nTested with insmod of cpufreq_stat.ko, and logical online/offline\nto make sure we dont have any hang situations.\n\nSigned-off-by: Ashok Raj \u003cashok.raj@intel.com\u003e\nCc: Zwane Mwaikambo \u003czwane@linuxpower.ca\u003e\nCc: Shaohua Li \u003cshaohua.li@intel.com\u003e\nCc: \"Siddha, Suresh B\" \u003csuresh.b.siddha@intel.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "e738cf6d03786486b7e1adbaed1c5c4e14d23626",
      "tree": "b929202b33a993a38110aec3722d8fee75406c32",
      "parents": [
        "0bd0f9fb190a0fc0fb25b764c8b04869711f7657"
      ],
      "author": {
        "name": "Grant Coady",
        "email": "gcoady@gmail.com",
        "time": "Mon Nov 21 21:32:28 2005 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Nov 22 09:13:44 2005 -0800"
      },
      "message": "[PATCH] cpufreq: silence cpufreq for UP\n\ndrivers/cpufreq/cpufreq.c: In function `cpufreq_remove_dev\u0027:\ndrivers/cpufreq/cpufreq.c:696: warning: unused variable `cpu_sys_dev\u0027\n\nSigned-off-by: Grant Coady \u003cgcoady@gmail.com\u003e\nCc: Dave Jones \u003cdavej@codemonkey.org.uk\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "90d45d17f3e68608ac7ba8fc3d7acce022a19c8e",
      "tree": "615b2f21c3e02e0ec901febd180014fed64a6a01",
      "parents": [
        "330d57fb98a916fa8e1363846540dd420e99499a"
      ],
      "author": {
        "name": "Ashok Raj",
        "email": "ashok.raj@intel.com",
        "time": "Tue Nov 08 21:34:24 2005 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Wed Nov 09 07:55:50 2005 -0800"
      },
      "message": "[PATCH] cpu hotplug: fix locking in cpufreq drivers\n\nWhen calling target drivers to set frequency, we take cpucontrol lock.\nWhen we modified the code to accomodate CPU hotplug, there was an attempt\nto take a double lock of cpucontrol leading to a deadlock.  Since the\ncurrent thread context is already holding the cpucontrol lock, we dont need\nto make another attempt to acquire it.\n\nNow we leave a trace in current-\u003eflags indicating current thread already is\nunder cpucontrol lock held, so we dont attempt to do this another time.\n\nThanks to Andrew Morton for the beating:-)\n\nFrom: Brice Goglin \u003cBrice.Goglin@ens-lyon.org\u003e\n\n  Build fix\n\n(akpm: this patch is still unpleasant.  Ashok continues to look for a cleaner\nsolution, doesn\u0027t he?  ;))\n\nSigned-off-by: Ashok Raj \u003cashok.raj@intel.com\u003e\nSigned-off-by: Brice Goglin \u003cBrice.Goglin@ens-lyon.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "dad2ad82c5f058367df79de022bd12d36afcd065",
      "tree": "426a1a6ca8762356b375527768bedc2de0bd25e9",
      "parents": [
        "7079060f3e86ea4c1d4e9c1e356592ef9dcaaa1f",
        "b7fb358c7c36a14927d5523ea674e69f90c51d1d"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Mon Nov 07 13:28:20 2005 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Mon Nov 07 13:28:20 2005 -0800"
      },
      "message": "Merge master.kernel.org:/pub/scm/linux/kernel/git/davej/cpufreq\n"
    },
    {
      "commit": "b7fb358c7c36a14927d5523ea674e69f90c51d1d",
      "tree": "84a55d070b7acd5f3ffb0c3e7e53fd9d4c481112",
      "parents": [
        "bc7b26fd7ca5e0c6e769d3886c022f0a98fd88ec"
      ],
      "author": {
        "name": "Dave Jones",
        "email": "davej@redhat.com",
        "time": "Tue Nov 01 23:13:45 2005 -0800"
      },
      "committer": {
        "name": "Dave Jones",
        "email": "davej@redhat.com",
        "time": "Tue Nov 01 23:13:45 2005 -0800"
      },
      "message": "[CPUFREQ] Fix up compile of cpufreq_stats\n\nWhoops, I lost a hunk of the last patch somehow.\n\nSigned-off-by: Dave Jones \u003cdavej@redhat.com\u003e\n"
    },
    {
      "commit": "c32b6b8e524d2c337767d312814484d9289550cf",
      "tree": "02e634b0b48db6eccc8774369366daa1893921ea",
      "parents": [
        "d434fca737bee0862625c2377b987a7713b6b487"
      ],
      "author": {
        "name": "Ashok Raj",
        "email": "ashok.raj@intel.com",
        "time": "Sun Oct 30 14:59:54 2005 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sun Oct 30 17:37:14 2005 -0800"
      },
      "message": "[PATCH] create and destroy cpufreq sysfs entries based on cpu notifiers\n\ncpufreq entries in sysfs should only be populated when CPU is online state.\n When we either boot with maxcpus\u003dx and then boot the other cpus by echoing\nto sysfs online file, these entries should be created and destroyed when\nCPU_DEAD is notified.  Same treatement as cache entries under sysfs.\n\nWe place the processor in the lowest frequency, so hw managed P-State\ntransitions can still work on the other threads to save power.\n\nPrimary goal was to just make these directories appear/disapper dynamically.\n\nThere is one in this patch i had to do, which i really dont like myself but\nprobably best if someone handling the cpufreq infrastructure could give\nthis code right treatment if this is not acceptable.  I guess its probably\ngood for the first cut.\n\n- Converting lock_cpu_hotplug()/unlock_cpu_hotplug() to disable/enable preempt.\n  The locking was smack in the middle of the notification path, when the\n  hotplug is already holding the lock. I tried another solution to avoid this\n  so avoid taking locks if we know we are from notification path. The solution\n  was getting very ugly and i decided this was probably good for this iteration\n  until someone who understands cpufreq could do a better job than me.\n\n(akpm: export cpucontrol to GPL modules: drivers/cpufreq/cpufreq_stats.c now\ndoes lock_cpu_hotplug())\n\nSigned-off-by: Ashok Raj \u003cashok.raj@intel.com\u003e\nSigned-off-by: Venkatesh Pallipadi \u003cvenkatesh.pallipadi@intel.com\u003e\nCc: Dave Jones \u003cdavej@codemonkey.org.uk\u003e\nCc: Zwane Mwaikambo \u003czwane@holomorphy.com\u003e\nCc: Greg KH \u003cgreg@kroah.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "d434fca737bee0862625c2377b987a7713b6b487",
      "tree": "8df1f41731e094d3ad7e7a60b9c1c5013591016a",
      "parents": [
        "1aa1a9f98ffd06e288be4d85ed814c6cdbccce82"
      ],
      "author": {
        "name": "Ashok Raj",
        "email": "ashok.raj@intel.com",
        "time": "Sun Oct 30 14:59:52 2005 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sun Oct 30 17:37:14 2005 -0800"
      },
      "message": "[PATCH] Remove cpu_sys_devices in cpufreq subsystem.\n\ncpu_sys_devices is redundant with the new API get_cpu_sysdev().  So nuking\nthis usage since its not needed.\n\nSigned-off-by: Ashok Raj \u003cashok.raj@intel.com\u003e\nSigned-off-by: Venkatesh Pallipadi \u003cvenkatesh.pallipadi@intel.com\u003e\nCc: Dave Jones \u003cdavej@codemonkey.org.uk\u003e\nCc: Zwane Mwaikambo \u003czwane@holomorphy.com\u003e\nCc: Greg KH \u003cgreg@kroah.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "927321440976d0781a252eefe686ae6b0f236ae2",
      "tree": "537b573706d095c096e273f027975b8e6f9a2cd9",
      "parents": [
        "79b95a454bb5c1d9b7287d1016a70885ba3f346c"
      ],
      "author": {
        "name": "Dave Jones",
        "email": "davej@redhat.com",
        "time": "Thu Oct 27 16:16:25 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Thu Oct 27 16:29:24 2005 -0700"
      },
      "message": "[PATCH] cpufreq: SMP fix for conservative governor\n\nDon\u0027t try to access not-present CPUs.  Conservative governor will always\noops on SMP without this fix.\n\nFixes http://bugzilla.kernel.org/show_bug.cgi?id\u003d4781\n\nSigned-off-by: Venkatesh Pallipadi \u003cvenkatesh.pallipadi@intel.com\u003e\nSigned-off-by: Dave Jones \u003cdavej@redhat.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "bc7b26fd7ca5e0c6e769d3886c022f0a98fd88ec",
      "tree": "19f23041be60367024f292780ba3e79ff3259fc8",
      "parents": [
        "e98df50c5200ae3c748d69002a8827afc9d2eae2"
      ],
      "author": {
        "name": "Dave Jones",
        "email": "davej@redhat.com",
        "time": "Thu Oct 27 16:02:06 2005 -0700"
      },
      "committer": {
        "name": "Dave Jones",
        "email": "davej@redhat.com",
        "time": "Thu Oct 27 16:02:06 2005 -0700"
      },
      "message": "[CPUFREQ] Check return value of cpufreq_cpu_get in cpufreq_stats\n\nThis fixes an issue found in drivers/cpufreq/cpufreq_stats.c by Coverity.\n\nError reported:\nCID: 2642\nChecker: NULL_RETURNS (help)\nFile: /export2/p4-coverity/mc2/linux26/drivers/cpufreq/cpufreq_stats.c\nFunction: cpufreq_stats_create_table\nDescription: Dereferencing NULL value \"data\"\n\nPatch description:\n The return of cpufreq_cpu_get can be NULL, check return code and return\n -EINVAL if it is NULL.\n\nSigned-off-by: Jayachandran C. \u003cc.jayachandran at gmail.com\u003e\nSigned-off-by: Dave Jones \u003cdavej@redhat.com\u003e\n"
    }
  ],
  "next": "e98df50c5200ae3c748d69002a8827afc9d2eae2"
}
