)]}'
{
  "log": [
    {
      "commit": "01c1c660f4b8086cad7a62345fd04290f3d82c8f",
      "tree": "bd09ab1fc3f9e267b1ea78f1a41b121175e1585a",
      "parents": [
        "c2d727aa2ff17a1c8e5ed1e5e231bb8579b27e82"
      ],
      "author": {
        "name": "Paul E. McKenney",
        "email": "paulmck@linux.vnet.ibm.com",
        "time": "Fri Jan 25 21:08:24 2008 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Jan 25 21:08:24 2008 +0100"
      },
      "message": "Preempt-RCU: reorganize RCU code into rcuclassic.c and rcupdate.c\n\nThis patch re-organizes the RCU code to enable multiple implementations\nof RCU. Users of RCU continues to include rcupdate.h and the\nRCU interfaces remain the same. This is in preparation for\nsubsequently merging the preemptible RCU implementation.\n\nSigned-off-by: Gautham R Shenoy \u003cego@in.ibm.com\u003e\nSigned-off-by: Dipankar Sarma \u003cdipankar@in.ibm.com\u003e\nSigned-off-by: Paul E. McKenney \u003cpaulmck@linux.vnet.ibm.com\u003e\nReviewed-by: Steven Rostedt \u003csrostedt@redhat.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "c2d727aa2ff17a1c8e5ed1e5e231bb8579b27e82",
      "tree": "76b570288a72c1337920c5e60682316c554f00ee",
      "parents": [
        "c49443c538c1bbf50eda27e4a3711e9fc15176b0"
      ],
      "author": {
        "name": "Dipankar Sarma",
        "email": "dipankar@in.ibm.com",
        "time": "Fri Jan 25 21:08:23 2008 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Jan 25 21:08:23 2008 +0100"
      },
      "message": "Preempt-RCU: Use softirq instead of tasklets for\n\nThis patch makes RCU use softirq instead of tasklets.\n\nIt also adds a memory barrier after raising the softirq\ninorder to ensure that the cpu sees the most recently updated\nvalue of rcu-\u003ecur while processing callbacks.\nThe discussion of the related theoretical race pointed out\nby James Huang can be found here --\u003e http://lkml.org/lkml/2007/11/20/603\n\nSigned-off-by: Gautham R Shenoy \u003cego@in.ibm.com\u003e\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\nSigned-off-by: Dipankar Sarma \u003cdipankar@in.ibm.com\u003e\nReviewed-by: Steven Rostedt \u003csrostedt@redhat.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "cb46984504048db946cd551c261df4e70d59a8ea",
      "tree": "e07343cc5967f74370c6b0290b67a225d868a99d",
      "parents": [
        "9a897c5a6701bcb6f099f7ca20194999102729fd"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Fri Jan 25 21:08:22 2008 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Jan 25 21:08:22 2008 +0100"
      },
      "message": "sched: RT-balance, add new methods to sched_class\n\nDmitry Adamushko found that the current implementation of the RT\nbalancing code left out changes to the sched_setscheduler and\nrt_mutex_setprio.\n\nThis patch addresses this issue by adding methods to the schedule classes\nto handle being switched out of (switched_from) and being switched into\n(switched_to) a sched_class. Also a method for changing of priorities\nis also added (prio_changed).\n\nThis patch also removes some duplicate logic between rt_mutex_setprio and\nsched_setscheduler.\n\nSigned-off-by: Steven Rostedt \u003csrostedt@redhat.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "9a897c5a6701bcb6f099f7ca20194999102729fd",
      "tree": "9c5415d5e2dd115660200cbd246fe1343cd5cd5c",
      "parents": [
        "4bf0b77158d581c952af237aec79d0604b78fe27"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Fri Jan 25 21:08:22 2008 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Jan 25 21:08:22 2008 +0100"
      },
      "message": "sched: RT-balance, replace hooks with pre/post schedule and wakeup methods\n\nTo make the main sched.c code more agnostic to the schedule classes.\nInstead of having specific hooks in the schedule code for the RT class\nbalancing. They are replaced with a pre_schedule, post_schedule\nand task_wake_up methods. These methods may be used by any of the classes\nbut currently, only the sched_rt class implements them.\n\nSigned-off-by: Steven Rostedt \u003csrostedt@redhat.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "32525d022ad52a5c14e80e130260431e16e294b6",
      "tree": "1a4addc080a63c57d817320ae917a7425f10b7ad",
      "parents": [
        "52d853431e8d9dc17ba94792123a3fe2bc039831"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Jan 25 21:08:20 2008 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Jan 25 21:08:20 2008 +0100"
      },
      "message": "sched: whitespace cleanups in topology.h\n\nwhitespace cleanups in topology.h.\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "52d853431e8d9dc17ba94792123a3fe2bc039831",
      "tree": "996455f11e380eda8a37b91de0ca9245f610a35f",
      "parents": [
        "b913176917399e92e6f741672038c73d7ce93be5"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Jan 25 21:08:20 2008 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Jan 25 21:08:20 2008 +0100"
      },
      "message": "sched: reactivate fork balancing\n\nreactivate fork balancing.\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "57d885fea0da0e9541d7730a9e1dcf734981a173",
      "tree": "80f08ea6ed506e2aac30c89b8ae1eee7f008a378",
      "parents": [
        "7f51f298204ec0528422cd9b23feac12612c5665"
      ],
      "author": {
        "name": "Gregory Haskins",
        "email": "ghaskins@novell.com",
        "time": "Fri Jan 25 21:08:18 2008 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Jan 25 21:08:18 2008 +0100"
      },
      "message": "sched: add sched-domain roots\n\nWe add the notion of a root-domain which will be used later to rescope\nglobal variables to per-domain variables.  Each exclusive cpuset\nessentially defines an island domain by fully partitioning the member cpus\nfrom any other cpuset.  However, we currently still maintain some\npolicy/state as global variables which transcend all cpusets.  Consider,\nfor instance, rt-overload state.\n\nWhenever a new exclusive cpuset is created, we also create a new\nroot-domain object and move each cpu member to the root-domain\u0027s span.\nBy default the system creates a single root-domain with all cpus as\nmembers (mimicking the global state we have today).\n\nWe add some plumbing for storing class specific data in our root-domain.\nWhenever a RQ is switching root-domains (because of repartitioning) we\ngive each sched_class the opportunity to remove any state from its old\ndomain and add state to the new one.  This logic doesn\u0027t have any clients\nyet but it will later in the series.\n\nSigned-off-by: Gregory Haskins \u003cghaskins@novell.com\u003e\nCC: Christoph Lameter \u003cclameter@sgi.com\u003e\nCC: Paul Jackson \u003cpj@sgi.com\u003e\nCC: Simon Derr \u003csimon.derr@bull.net\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "e7693a362ec84bb5b6fd441d8a8b4b9d568a7a0c",
      "tree": "078940540641a59aaf199695bfc6de3f062a987b",
      "parents": [
        "697f0a487f294e634a342764472b79375bb3158a"
      ],
      "author": {
        "name": "Gregory Haskins",
        "email": "ghaskins@novell.com",
        "time": "Fri Jan 25 21:08:09 2008 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Jan 25 21:08:09 2008 +0100"
      },
      "message": "sched: de-SCHED_OTHER-ize the RT path\n\nThe current wake-up code path tries to determine if it can optimize the\nwake-up to \"this_cpu\" by computing load calculations.  The problem is that\nthese calculations are only relevant to SCHED_OTHER tasks where load is king.\nFor RT tasks, priority is king.  So the load calculation is completely wasted\nbandwidth.\n\nTherefore, we create a new sched_class interface to help with\npre-wakeup routing decisions and move the load calculation as a function\nof CFS task\u0027s class.\n\nSigned-off-by: Gregory Haskins \u003cghaskins@novell.com\u003e\nSigned-off-by: Steven Rostedt \u003csrostedt@redhat.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "73fe6aae84400e2b475e2a1dc4e8592cd3ed6e69",
      "tree": "97c7d6a866d75563082c422491fc423b47aca9d7",
      "parents": [
        "c7a1e46aa9782a947cf2ed506245d43396dbf991"
      ],
      "author": {
        "name": "Gregory Haskins",
        "email": "ghaskins@novell.com",
        "time": "Fri Jan 25 21:08:07 2008 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Jan 25 21:08:07 2008 +0100"
      },
      "message": "sched: add RT-balance cpu-weight\n\nSome RT tasks (particularly kthreads) are bound to one specific CPU.\nIt is fairly common for two or more bound tasks to get queued up at the\nsame time.  Consider, for instance, softirq_timer and softirq_sched.  A\ntimer goes off in an ISR which schedules softirq_thread to run at RT50.\nThen the timer handler determines that it\u0027s time to smp-rebalance the\nsystem so it schedules softirq_sched to run.  So we are in a situation\nwhere we have two RT50 tasks queued, and the system will go into\nrt-overload condition to request other CPUs for help.\n\nThis causes two problems in the current code:\n\n1) If a high-priority bound task and a low-priority unbounded task queue\n   up behind the running task, we will fail to ever relocate the unbounded\n   task because we terminate the search on the first unmovable task.\n\n2) We spend precious futile cycles in the fast-path trying to pull\n   overloaded tasks over.  It is therefore optimial to strive to avoid the\n   overhead all together if we can cheaply detect the condition before\n   overload even occurs.\n\nThis patch tries to achieve this optimization by utilizing the hamming\nweight of the task-\u003ecpus_allowed mask.  A weight of 1 indicates that\nthe task cannot be migrated.  We will then utilize this information to\nskip non-migratable tasks and to eliminate uncessary rebalance attempts.\n\nWe introduce a per-rq variable to count the number of migratable tasks\nthat are currently running.  We only go into overload if we have more\nthan one rt task, AND at least one of them is migratable.\n\nIn addition, we introduce a per-task variable to cache the cpus_allowed\nweight, since the hamming calculation is probably relatively expensive.\nWe only update the cached value when the mask is updated which should be\nrelatively infrequent, especially compared to scheduling frequency\nin the fast path.\n\nSigned-off-by: Gregory Haskins \u003cghaskins@novell.com\u003e\nSigned-off-by: Steven Rostedt \u003csrostedt@redhat.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "82a1fcb90287052aabfa235e7ffc693ea003fe69",
      "tree": "826b464a248bebe259fe787f7b8d17d5626cf2c5",
      "parents": [
        "d0d23b5432fe61229dd3641c5e94d4130bc4e61b"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Jan 25 21:08:02 2008 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Jan 25 21:08:02 2008 +0100"
      },
      "message": "softlockup: automatically detect hung TASK_UNINTERRUPTIBLE tasks\n\nthis patch extends the soft-lockup detector to automatically\ndetect hung TASK_UNINTERRUPTIBLE tasks. Such hung tasks are\nprinted the following way:\n\n ------------------\u003e\n INFO: task prctl:3042 blocked for more than 120 seconds.\n \"echo 0 \u003e /proc/sys/kernel/hung_task_timeout_secs\" disables this message\n prctl         D fd5e3793     0  3042   2997\n        f6050f38 00000046 00000001 fd5e3793 00000009 c06d8264 c06dae80 00000286\n        f6050f40 f6050f00 f7d34d90 f7d34fc8 c1e1be80 00000001 f6050000 00000000\n        f7e92d00 00000286 f6050f18 c0489d1a f6050f40 00006605 00000000 c0133a5b\n Call Trace:\n  [\u003cc04883a5\u003e] schedule_timeout+0x6d/0x8b\n  [\u003cc04883d8\u003e] schedule_timeout_uninterruptible+0x15/0x17\n  [\u003cc0133a76\u003e] msleep+0x10/0x16\n  [\u003cc0138974\u003e] sys_prctl+0x30/0x1e2\n  [\u003cc0104c52\u003e] sysenter_past_esp+0x5f/0xa5\n  \u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\n 2 locks held by prctl/3042:\n #0:  (\u0026sb-\u003es_type-\u003ei_mutex_key#5){--..}, at: [\u003cc0197d11\u003e] do_fsync+0x38/0x7a\n #1:  (jbd_handle){--..}, at: [\u003cc01ca3d2\u003e] journal_start+0xc7/0xe9\n \u003c------------------\n\nthe current default timeout is 120 seconds. Such messages are printed\nup to 10 times per bootup. If the system has crashed already then the\nmessages are not printed.\n\nif lockdep is enabled then all held locks are printed as well.\n\nthis feature is a natural extension to the softlockup-detector (kernel\nlocked up without scheduling) and to the NMI watchdog (kernel locked up\nwith IRQs disabled).\n\n[ Gautham R Shenoy \u003cego@in.ibm.com\u003e: CPU hotplug fixes. ]\n[ Andrew Morton \u003cakpm@linux-foundation.org\u003e: build warning fix. ]\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Arjan van de Ven \u003carjan@linux.intel.com\u003e\n"
    },
    {
      "commit": "d0d23b5432fe61229dd3641c5e94d4130bc4e61b",
      "tree": "dbd5e2af9dcbeba8cdb0745fa22904102df8b8f1",
      "parents": [
        "95402b3829010fe1e208f44e4a158ccade88969a"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Jan 25 21:08:02 2008 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Jan 25 21:08:02 2008 +0100"
      },
      "message": "cpu-hotplug: fix build on !CONFIG_SMP\n\nfix build on !CONFIG_SMP.\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "95402b3829010fe1e208f44e4a158ccade88969a",
      "tree": "3b9895b47623b4673e3c11121980e5171af76bbe",
      "parents": [
        "86ef5c9a8edd78e6bf92879f32329d89b2d55b5a"
      ],
      "author": {
        "name": "Gautham R Shenoy",
        "email": "ego@in.ibm.com",
        "time": "Fri Jan 25 21:08:02 2008 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Jan 25 21:08:02 2008 +0100"
      },
      "message": "cpu-hotplug: replace per-subsystem mutexes with get_online_cpus()\n\nThis patch converts the known per-subsystem mutexes to get_online_cpus\nput_online_cpus. It also eliminates the CPU_LOCK_ACQUIRE and\nCPU_LOCK_RELEASE hotplug notification events.\n\nSigned-off-by: Gautham  R Shenoy \u003cego@in.ibm.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "86ef5c9a8edd78e6bf92879f32329d89b2d55b5a",
      "tree": "7bf46885326a6fdbb0c3596855408e9a5634dd3a",
      "parents": [
        "d221938c049f4845da13c8593132595a6b9222a8"
      ],
      "author": {
        "name": "Gautham R Shenoy",
        "email": "ego@in.ibm.com",
        "time": "Fri Jan 25 21:08:02 2008 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Jan 25 21:08:02 2008 +0100"
      },
      "message": "cpu-hotplug: replace lock_cpu_hotplug() with get_online_cpus()\n\nReplace all lock_cpu_hotplug/unlock_cpu_hotplug from the kernel and use\nget_online_cpus and put_online_cpus instead as it highlights the\nrefcount semantics in these operations.\n\nThe new API guarantees protection against the cpu-hotplug operation, but\nit doesn\u0027t guarantee serialized access to any of the local data\nstructures. Hence the changes needs to be reviewed.\n\nIn case of pseries_add_processor/pseries_remove_processor, use\ncpu_maps_update_begin()/cpu_maps_update_done() as we\u0027re modifying the\ncpu_present_map there.\n\nSigned-off-by: Gautham R Shenoy \u003cego@in.ibm.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "d221938c049f4845da13c8593132595a6b9222a8",
      "tree": "8eae6c7095a3d7d31d7435befc30019540a4d13e",
      "parents": [
        "6b2d7700266b9402e12824e11e0099ae6a4a6a79"
      ],
      "author": {
        "name": "Gautham R Shenoy",
        "email": "ego@in.ibm.com",
        "time": "Fri Jan 25 21:08:01 2008 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Jan 25 21:08:01 2008 +0100"
      },
      "message": "cpu-hotplug: refcount based cpu hotplug\n\nThis patch implements a Refcount + Waitqueue based model for\ncpu-hotplug.\n\nNow, a thread which wants to prevent cpu-hotplug, will bump up a global\nrefcount and the thread which wants to perform a cpu-hotplug operation\nwill block till the global refcount goes to zero.\n\nThe readers, if any, during an ongoing cpu-hotplug operation are blocked\nuntil the cpu-hotplug operation is over.\n\nSigned-off-by: Gautham R Shenoy \u003cego@in.ibm.com\u003e\nSigned-off-by: Paul Jackson \u003cpj@sgi.com\u003e [For !CONFIG_HOTPLUG_CPU ]\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "6b2d7700266b9402e12824e11e0099ae6a4a6a79",
      "tree": "d72c25b03150901ad8643f931186a11eb85635dc",
      "parents": [
        "a183561567b5446d3362b4839bd4f744f4b2af1e"
      ],
      "author": {
        "name": "Srivatsa Vaddagiri",
        "email": "vatsa@linux.vnet.ibm.com",
        "time": "Fri Jan 25 21:08:00 2008 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Jan 25 21:08:00 2008 +0100"
      },
      "message": "sched: group scheduler, fix fairness of cpu bandwidth allocation for task groups\n\nThe current load balancing scheme isn\u0027t good enough for precise\ngroup fairness.\n\nFor example: on a 8-cpu system, I created 3 groups as under:\n\n\ta \u003d 8 tasks (cpu.shares \u003d 1024)\n\tb \u003d 4 tasks (cpu.shares \u003d 1024)\n\tc \u003d 3 tasks (cpu.shares \u003d 1024)\n\na, b and c are task groups that have equal weight. We would expect each\nof the groups to receive 33.33% of cpu bandwidth under a fair scheduler.\n\nThis is what I get with the latest scheduler git tree:\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n--------------------------------------------------------------------------------\nCol1  | Col2    | Col3  |  Col4\n------|---------|-------|-------------------------------------------------------\na     | 277.676 | 57.8% | 54.1%  54.1%  54.1%  54.2%  56.7%  62.2%  62.8% 64.5%\nb     | 116.108 | 24.2% | 47.4%  48.1%  48.7%  49.3%\nc     |  86.326 | 18.0% | 47.5%  47.9%  48.5%\n--------------------------------------------------------------------------------\n\nExplanation of o/p:\n\nCol1 -\u003e Group name\nCol2 -\u003e Cumulative execution time (in seconds) received by all tasks of that\n\tgroup in a 60sec window across 8 cpus\nCol3 -\u003e CPU bandwidth received by the group in the 60sec window, expressed in\n        percentage. Col3 data is derived as:\n\t\tCol3 \u003d 100 * Col2 / (NR_CPUS * 60)\nCol4 -\u003e CPU bandwidth received by each individual task of the group.\n\t\tCol4 \u003d 100 * cpu_time_recd_by_task / 60\n\n[I can share the test case that produces a similar o/p if reqd]\n\nThe deviation from desired group fairness is as below:\n\n\ta \u003d +24.47%\n\tb \u003d -9.13%\n\tc \u003d -15.33%\n\nwhich is quite high.\n\nAfter the patch below is applied, here are the results:\n\n--------------------------------------------------------------------------------\nCol1  | Col2    | Col3  |  Col4\n------|---------|-------|-------------------------------------------------------\na     | 163.112 | 34.0% | 33.2%  33.4%  33.5%  33.5%  33.7%  34.4%  34.8% 35.3%\nb     | 156.220 | 32.5% | 63.3%  64.5%  66.1%  66.5%\nc     | 160.653 | 33.5% | 85.8%  90.6%  91.4%\n--------------------------------------------------------------------------------\n\nDeviation from desired group fairness is as below:\n\n\ta \u003d +0.67%\n\tb \u003d -0.83%\n\tc \u003d +0.17%\n\nwhich is far better IMO. Most of other runs have yielded a deviation within\n+-2% at the most, which is good.\n\nWhy do we see bad (group) fairness with current scheuler?\n\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\u003d\u003d\n\nCurrently cpu\u0027s weight is just the summation of individual task weights.\nThis can yield incorrect results. For ex: consider three groups as below\non a 2-cpu system:\n\n\tCPU0\tCPU1\n---------------------------\n\tA (10)  B(5)\n\t\tC(5)\n---------------------------\n\nGroup A has 10 tasks, all on CPU0, Group B and C have 5 tasks each all\nof which are on CPU1. Each task has the same weight (NICE_0_LOAD \u003d\n1024).\n\nThe current scheme would yield a cpu weight of 10240 (10*1024) for each cpu and\nthe load balancer will think both CPUs are perfectly balanced and won\u0027t\nmove around any tasks. This, however, would yield this bandwidth:\n\n\tA \u003d 50%\n\tB \u003d 25%\n\tC \u003d 25%\n\nwhich is not the desired result.\n\nWhat\u0027s changing in the patch?\n\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\n\t- How cpu weights are calculated when CONFIF_FAIR_GROUP_SCHED is\n\t  defined (see below)\n\t- API Change\n\t\t- Two tunables introduced in sysfs (under SCHED_DEBUG) to\n\t\t  control the frequency at which the load balance monitor\n\t\t  thread runs.\n\nThe basic change made in this patch is how cpu weight (rq-\u003eload.weight) is\ncalculated. Its now calculated as the summation of group weights on a cpu,\nrather than summation of task weights. Weight exerted by a group on a\ncpu is dependent on the shares allocated to it and also the number of\ntasks the group has on that cpu compared to the total number of\n(runnable) tasks the group has in the system.\n\nLet,\n\tW(K,i)  \u003d Weight of group K on cpu i\n\tT(K,i)  \u003d Task load present in group K\u0027s cfs_rq on cpu i\n\tT(K)    \u003d Total task load of group K across various cpus\n\tS(K) \t\u003d Shares allocated to group K\n\tNRCPUS\t\u003d Number of online cpus in the scheduler domain to\n\t \t  which group K is assigned.\n\nThen,\n\tW(K,i) \u003d S(K) * NRCPUS * T(K,i) / T(K)\n\nA load balance monitor thread is created at bootup, which periodically\nruns and adjusts group\u0027s weight on each cpu. To avoid its overhead, two\nmin/max tunables are introduced (under SCHED_DEBUG) to control the rate\nat which it runs.\n\nFixes from: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\n\n- don\u0027t start the load_balance_monitor when there is only a single cpu.\n- rename the kthread because its currently longer than TASK_COMM_LEN\n\nSigned-off-by: Srivatsa Vaddagiri \u003cvatsa@linux.vnet.ibm.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "b47711bfbcd4eb77ca61ef0162487b20e023ae55",
      "tree": "b2a695dbd40f7ca2333664cf946ef34eda7b7dba",
      "parents": [
        "7556afa0e0e436cad4f560ee83e5fbd5dac9359a",
        "2e08c0c1c3977a5ddc88887dd3af1b26c433e9d0"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Jan 25 08:44:29 2008 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Jan 25 08:44:29 2008 -0800"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/jmorris/selinux-2.6\n\n* \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/jmorris/selinux-2.6:\n  selinux: make mls_compute_sid always polyinstantiate\n  security/selinux: constify function pointer tables and fields\n  security: add a secctx_to_secid() hook\n  security: call security_file_permission from rw_verify_area\n  security: remove security_sb_post_mountroot hook\n  Security: remove security.h include from mm.h\n  Security: remove security_file_mmap hook sparse-warnings (NULL as 0).\n  Security: add get, set, and cloning of superblock security information\n  security/selinux: Add missing \"space\"\n"
    },
    {
      "commit": "eba0e319c12fb098d66316a8eafbaaa9174a07c3",
      "tree": "b2703117db9e36bb3510654efd55361f61c54742",
      "parents": [
        "df8dc74e8a383eaf2d9b44b80a71ec6f0e52b42e",
        "15e7b4452b72ae890f2fcb027b4c4fa63a1c9a7a"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Jan 25 08:38:25 2008 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Jan 25 08:38:25 2008 -0800"
      },
      "message": "Merge git://git.kernel.org/pub/scm/linux/kernel/git/herbert/crypto-2.6\n\n* git://git.kernel.org/pub/scm/linux/kernel/git/herbert/crypto-2.6: (125 commits)\n  [CRYPTO] twofish: Merge common glue code\n  [CRYPTO] hifn_795x: Fixup container_of() usage\n  [CRYPTO] cast6: inline bloat--\n  [CRYPTO] api: Set default CRYPTO_MINALIGN to unsigned long long\n  [CRYPTO] tcrypt: Make xcbc available as a standalone test\n  [CRYPTO] xcbc: Remove bogus hash/cipher test\n  [CRYPTO] xcbc: Fix algorithm leak when block size check fails\n  [CRYPTO] tcrypt: Zero axbuf in the right function\n  [CRYPTO] padlock: Only reset the key once for each CBC and ECB operation\n  [CRYPTO] api: Include sched.h for cond_resched in scatterwalk.h\n  [CRYPTO] salsa20-asm: Remove unnecessary dependency on CRYPTO_SALSA20\n  [CRYPTO] tcrypt: Add select of AEAD\n  [CRYPTO] salsa20: Add x86-64 assembly version\n  [CRYPTO] salsa20_i586: Salsa20 stream cipher algorithm (i586 version)\n  [CRYPTO] gcm: Introduce rfc4106\n  [CRYPTO] api: Show async type\n  [CRYPTO] chainiv: Avoid lock spinning where possible\n  [CRYPTO] seqiv: Add select AEAD in Kconfig\n  [CRYPTO] scatterwalk: Handle zero nbytes in scatterwalk_map_and_copy\n  [CRYPTO] null: Allow setkey on digest_null \n  ...\n"
    },
    {
      "commit": "79a6ee42fd81be9abc6bdab08f932875924b26a5",
      "tree": "108b8bf6b13c7d06ebaf6c25de97494457fc9ee9",
      "parents": [
        "d462943afee8bff610258a82dba666e8ab72c9c8"
      ],
      "author": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Thu Jan 24 21:27:06 2008 -0800"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Thu Jan 24 21:27:06 2008 -0800"
      },
      "message": "Kobject: fix coding style issues in kobject.h\n\nFinally clean up the odd spaces and other mess in kobject.h\n\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n"
    },
    {
      "commit": "d462943afee8bff610258a82dba666e8ab72c9c8",
      "tree": "9046b34170b01ca0a134be0e7ad498f97611e121",
      "parents": [
        "5ed2c832ed256b18d90c2462369c62fd79312e6c"
      ],
      "author": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Thu Jan 24 21:04:46 2008 -0800"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Thu Jan 24 21:04:46 2008 -0800"
      },
      "message": "Driver core: fix coding style issues in device.h\n\nFinally clean up the odd spaces and other mess in device.h\n\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n"
    },
    {
      "commit": "fd04897bb20be29d60f7e426a053545aebeaa61a",
      "tree": "7cd86b2d9de79a70bdeb32997240af5e28be6d03",
      "parents": [
        "63b6971a0876b744e2fcf3c9df15d130501e1deb"
      ],
      "author": {
        "name": "Dave Young",
        "email": "hidave.darkstar@gmail.com",
        "time": "Tue Jan 22 15:27:08 2008 +0800"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Thu Jan 24 20:40:44 2008 -0800"
      },
      "message": "Driver Core: add class iteration api\n\nAdd the following class iteration functions for driver use:\n\tclass_for_each_device\n\tclass_find_device\n\tclass_for_each_child\n\tclass_find_child\n\nSigned-off-by: Dave Young \u003chidave.darkstar@gmail.com\u003e\nAcked-by: Cornelia Huck \u003ccornelia.huck@de.ibm.com\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n\n"
    },
    {
      "commit": "ae72cddb2338bc36b991674a56a7bf70ae104d9e",
      "tree": "6054d3064d8d24f8919a9f226100a0b37862ece0",
      "parents": [
        "92b421416f8194aec87b1439487b5544e9ac8187"
      ],
      "author": {
        "name": "Stephen Rothwell",
        "email": "sfr@canb.auug.org.au",
        "time": "Fri Jan 11 17:24:53 2008 +1100"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Thu Jan 24 20:40:43 2008 -0800"
      },
      "message": "Driver Core: constify the name passed to platform_device_register_simple\n\nThis name is just passed to platform_device_alloc which has its parameter\ndeclared const.\n\nSigned-off-by: Stephen Rothwell \u003csfr@canb.auug.org.au\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "af5ca3f4ec5cc4432a42a73b050dd8898ce8fd00",
      "tree": "3e5a3081b2802547f10da72c0026b4929d0e287b",
      "parents": [
        "528a4bf1d5ffed310d26fc1d82d45c02949f71cf"
      ],
      "author": {
        "name": "Kay Sievers",
        "email": "kay.sievers@vrfy.org",
        "time": "Thu Dec 20 02:09:39 2007 +0100"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Thu Jan 24 20:40:40 2008 -0800"
      },
      "message": "Driver core: change sysdev classes to use dynamic kobject names\n\nAll kobjects require a dynamically allocated name now. We no longer\nneed to keep track if the name is statically assigned, we can just\nunconditionally free() all kobject names on cleanup.\n\nSigned-off-by: Kay Sievers \u003ckay.sievers@vrfy.org\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "528a4bf1d5ffed310d26fc1d82d45c02949f71cf",
      "tree": "fc66cc3597e7bcbe83881d16305a7f80605a5c2c",
      "parents": [
        "78a2d906b40fe530ea800c1e873bfe8f02326f1e"
      ],
      "author": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Thu Dec 20 08:13:05 2007 -0800"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Thu Jan 24 20:40:40 2008 -0800"
      },
      "message": "Kobject: remove kobject_unregister() as no one uses it anymore\n\nThere are no in-kernel users of kobject_unregister() so it should be\nremoved.\n\nCc: Kay Sievers \u003ckay.sievers@vrfy.org\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n"
    },
    {
      "commit": "0f4dafc0563c6c49e17fe14b3f5f356e4c4b8806",
      "tree": "f4ded2831853cb6ea328d15d72871db6f8c22610",
      "parents": [
        "12e339ac6e31a34fe42396aec8fb1c0b43caf61e"
      ],
      "author": {
        "name": "Kay Sievers",
        "email": "kay.sievers@vrfy.org",
        "time": "Wed Dec 19 01:40:42 2007 +0100"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Thu Jan 24 20:40:39 2008 -0800"
      },
      "message": "Kobject: auto-cleanup on final unref\n\nWe save the current state in the object itself, so we can do proper\ncleanup when the last reference is dropped.\n\nIf the initial reference is dropped, the object will be removed from\nsysfs if needed, if an \"add\" event was sent, \"remove\" will be send, and\nthe allocated resources are released.\n\nThis allows us to clean up some driver core usage as well as allowing us\nto do other such changes to the rest of the kernel.\n\nSigned-off-by: Kay Sievers \u003ckay.sievers@vrfy.org\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "12e339ac6e31a34fe42396aec8fb1c0b43caf61e",
      "tree": "28427e04e49ba7b5f1cabd9da33a9240f30acfae",
      "parents": [
        "6d06adfaf82d154023141ddc0c9de18b6a49090b"
      ],
      "author": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Tue Apr 09 12:14:34 2002 -0700"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Thu Jan 24 20:40:39 2008 -0800"
      },
      "message": "Kset: remove kset_add function\n\nNo one is calling this anymore, so just remove it and hard-code the one\ninternal-use of it.\n\nCc: Kay Sievers \u003ckay.sievers@vrfy.org\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "6d06adfaf82d154023141ddc0c9de18b6a49090b",
      "tree": "a7a7e3c0458158cc6a93df457470c6fdd30a8c35",
      "parents": [
        "f9cb074bff8e762ef24c44678a5a7d907f82fbeb"
      ],
      "author": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Wed Dec 19 11:26:50 2007 -0800"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Thu Jan 24 20:40:39 2008 -0800"
      },
      "message": "Kobject: remove kobject_register()\n\nThe function is no longer used by anyone in the kernel, and it prevents\nthe proper sending of the kobject uevent after the needed files are set\nup by the caller.  kobject_init_and_add() can be used in its place.\n\nCc: Kay Sievers \u003ckay.sievers@vrfy.org\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "f9cb074bff8e762ef24c44678a5a7d907f82fbeb",
      "tree": "50438fc90b8f6170dd8eb5d43712c61719a16304",
      "parents": [
        "e1543ddf739b22a8c4218716ad50c26b3e147403"
      ],
      "author": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Mon Dec 17 23:05:35 2007 -0700"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Thu Jan 24 20:40:38 2008 -0800"
      },
      "message": "Kobject: rename kobject_init_ng() to kobject_init()\n\nNow that the old kobject_init() function is gone, rename\nkobject_init_ng() to kobject_init() to clean up the namespace.\n\nCc: Kay Sievers \u003ckay.sievers@vrfy.org\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "e1543ddf739b22a8c4218716ad50c26b3e147403",
      "tree": "584f63bf431368d366f2d156abc4ec85636dfe2f",
      "parents": [
        "b2d6db5878a0832659ed58476357eea2db915550"
      ],
      "author": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Mon Dec 17 23:05:35 2007 -0700"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Thu Jan 24 20:40:38 2008 -0800"
      },
      "message": "Kobject: remove kobject_init() as no one uses it anymore\n\nThe old kobject_init() function is on longer in use, so let us remove it\nfrom the public scope (kset mess in the kobject.c file still uses it,\nbut that can be cleaned up later very simply.)\n\nCc: Kay Sievers \u003ckay.sievers@vrfy.org\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "b2d6db5878a0832659ed58476357eea2db915550",
      "tree": "c7c9e98431078ca7b0405e8003bd905ab62df7c4",
      "parents": [
        "9e7bbccd0290e720e0874443932869c55f63d5a8"
      ],
      "author": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Mon Dec 17 23:05:35 2007 -0700"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Thu Jan 24 20:40:38 2008 -0800"
      },
      "message": "Kobject: rename kobject_add_ng() to kobject_add()\n\nNow that the old kobject_add() function is gone, rename kobject_add_ng()\nto kobject_add() to clean up the namespace.\n\nCc: Kay Sievers \u003ckay.sievers@vrfy.org\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "9e7bbccd0290e720e0874443932869c55f63d5a8",
      "tree": "80cc436d79f217809d3f7ecc07d621e5d6e050c3",
      "parents": [
        "ac3c8141f62f357169980ec21b7be6d29964a394"
      ],
      "author": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Mon Dec 17 23:05:35 2007 -0700"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Thu Jan 24 20:40:38 2008 -0800"
      },
      "message": "Kobject: remove kobject_add() as no one uses it anymore\n\nThe old kobject_add() function is on longer in use, so let us remove it\nfrom the public scope (kset mess in the kobject.c file still uses it,\nbut that can be cleaned up later very simply.)\n\nCc: Kay Sievers \u003ckay.sievers@vrfy.org\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "edfaa7c36574f1bf09c65ad602412db9da5f96bf",
      "tree": "d591b80ff9229e4845e41d68e2f4c5aadb017027",
      "parents": [
        "09f82ea92822a7bbb7e816508abbda47ed54a77f"
      ],
      "author": {
        "name": "Kay Sievers",
        "email": "kay.sievers@vrfy.org",
        "time": "Mon May 21 22:08:01 2007 +0200"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Thu Jan 24 20:40:36 2008 -0800"
      },
      "message": "Driver core: convert block from raw kobjects to core devices\n\nThis moves the block devices to /sys/class/block. It will create a\nflat list of all block devices, with the disks and partitions in one\ndirectory. For compatibility /sys/block is created and contains symlinks\nto the disks.\n\n  /sys/class/block\n  |-- sda -\u003e ../../devices/pci0000:00/0000:00:1f.2/host0/target0:0:0/0:0:0:0/block/sda\n  |-- sda1 -\u003e ../../devices/pci0000:00/0000:00:1f.2/host0/target0:0:0/0:0:0:0/block/sda/sda1\n  |-- sda10 -\u003e ../../devices/pci0000:00/0000:00:1f.2/host0/target0:0:0/0:0:0:0/block/sda/sda10\n  |-- sda5 -\u003e ../../devices/pci0000:00/0000:00:1f.2/host0/target0:0:0/0:0:0:0/block/sda/sda5\n  |-- sda6 -\u003e ../../devices/pci0000:00/0000:00:1f.2/host0/target0:0:0/0:0:0:0/block/sda/sda6\n  |-- sda7 -\u003e ../../devices/pci0000:00/0000:00:1f.2/host0/target0:0:0/0:0:0:0/block/sda/sda7\n  |-- sda8 -\u003e ../../devices/pci0000:00/0000:00:1f.2/host0/target0:0:0/0:0:0:0/block/sda/sda8\n  |-- sda9 -\u003e ../../devices/pci0000:00/0000:00:1f.2/host0/target0:0:0/0:0:0:0/block/sda/sda9\n  `-- sr0 -\u003e ../../devices/pci0000:00/0000:00:1f.2/host1/target1:0:0/1:0:0:0/block/sr0\n\n  /sys/block/\n  |-- sda -\u003e ../devices/pci0000:00/0000:00:1f.2/host0/target0:0:0/0:0:0:0/block/sda\n  `-- sr0 -\u003e ../devices/pci0000:00/0000:00:1f.2/host1/target1:0:0/1:0:0:0/block/sr0\n\nSigned-off-by: Kay Sievers \u003ckay.sievers@vrfy.org\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "e5dd12784617f0f1fae5f96a7fac1ec4c49fadbe",
      "tree": "c81e2a2f3aa1c60b92951d398774f1391bdc6a1c",
      "parents": [
        "c63469a3985a9771c18a916b8d42845d044ea0b1"
      ],
      "author": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Wed Nov 28 15:59:15 2007 -0800"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Thu Jan 24 20:40:35 2008 -0800"
      },
      "message": "Driver core: move the static kobject out of struct driver\n\nThis patch removes the kobject, and a few other driver-core-only fields\nout of struct driver and into the driver core only.  Now drivers can be\nsafely create on the stack or statically (like they currently are.)\n\nCc: Kay Sievers \u003ckay.sievers@vrfy.org\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "c63469a3985a9771c18a916b8d42845d044ea0b1",
      "tree": "7d54c8741aec9d71864203ce430d289d40c4c975",
      "parents": [
        "cbe9c595f1de2e2a98403be2c14bfbc2486e84c4"
      ],
      "author": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Wed Nov 28 12:23:18 2007 -0800"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Thu Jan 24 20:40:35 2008 -0800"
      },
      "message": "Driver core: move the driver specific module code into the driver core\n\nThe module driver specific code should belong in the driver core, not in\nthe kernel/ directory.  So move this code.  This is done in preparation\nfor some struct device_driver rework that should be confined to the\ndriver core code only.\n\nThis also lets us keep from exporting these functions, as no external\ncode should ever be calling it.\n\nThanks to Andrew Morton for the !CONFIG_MODULES fix.\n\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "cbe9c595f1de2e2a98403be2c14bfbc2486e84c4",
      "tree": "c3e3a30bb18e1597dda4bc28c11c3add049e1e02",
      "parents": [
        "23b9c1ab5baf368a32b7242bf110ef1f48700d04"
      ],
      "author": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Wed Dec 19 15:54:39 2007 -0400"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Thu Jan 24 20:40:34 2008 -0800"
      },
      "message": "Driver: add driver_add_kobj for looney iseries_veth driver\n\nThe iseries driver wants to hang kobjects off of its driver, so, to\npreserve backwards compatibility, we need to add a call to the driver\ncore to allow future changes to work properly.\n\nHopefully no one uses this function in the future and the iseries_veth\ndriver authors come to their senses so I can remove this hack...\n\nCc: Dave Larson \u003clarson1@us.ibm.com\u003e\nCc: Santiago Leon \u003csantil@us.ibm.com\u003e\nCc: Kay Sievers \u003ckay.sievers@vrfy.org\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n"
    },
    {
      "commit": "57c745340a60c51d2b9af3d4dcf7e0ede284855b",
      "tree": "92640edef147d32663807207c0c0604e228949e7",
      "parents": [
        "2b937303188807b498d1a3163f60305f0941538e"
      ],
      "author": {
        "name": "Cornelia Huck",
        "email": "cornelia.huck@de.ibm.com",
        "time": "Wed Dec 05 12:50:23 2007 +0100"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Thu Jan 24 20:40:34 2008 -0800"
      },
      "message": "driver core: Introduce default attribute groups.\n\nThis is lot like default attributes for devices (and indeed,\na lot of the code is lifted from there).\n\nSigned-off-by: Cornelia Huck \u003ccornelia.huck@de.ibm.com\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "c6f7e72a3f4641095ade9ded287d910c980c6148",
      "tree": "d2d7d946b978ce9f5586a02c3520aa76e928a551",
      "parents": [
        "b249072ee6897fe4f8d461c7bb4b926223263c28"
      ],
      "author": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Thu Nov 01 19:41:16 2007 -0700"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Thu Jan 24 20:40:33 2008 -0800"
      },
      "message": "driver core: remove fields from struct bus_type\n\nstruct bus_type is static everywhere in the kernel.  This moves the\nkobject in the structure out of it, and a bunch of other private only to\nthe driver core fields are now moved to a private structure.  This lets\nus dynamically create the backing kobject properly and gives us the\nchance to be able to document to users exactly how to use the struct\nbus_type as there are no fields they can improperly access.\n\nThanks to Kay for the build fixes on this patch.\n\nCc: Kay Sievers \u003ckay.sievers@vrfy.org\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "b249072ee6897fe4f8d461c7bb4b926223263c28",
      "tree": "a6dde5703458677302516145c47f308e52cda189",
      "parents": [
        "0fed80f7a63abd7168907267af69ee31f6bcf301"
      ],
      "author": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Thu Nov 01 19:41:16 2007 -0700"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Thu Jan 24 20:40:33 2008 -0800"
      },
      "message": "driver core: add way to get to bus device klist\n\nThis allows an easier way to get to the device klist associated with a\nstruct bus_type (you have three to choose from...)  This will make it\neasier to move these fields to be dynamic in a future patch.\n\nThe only user of this is the PCI core which horribly abuses this\ninterface to rearrange the order of the pci devices.  This should be\ndone using the existing bus device walking functions, but that\u0027s left\nfor future patches.\n\nCc: Kay Sievers \u003ckay.sievers@vrfy.org\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "0fed80f7a63abd7168907267af69ee31f6bcf301",
      "tree": "2380e2180aa01d883a5c2a2a0528c40f36d23d91",
      "parents": [
        "cc972e896b303f453f5893ecf8eca0d0e395ab64"
      ],
      "author": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Thu Nov 01 19:41:16 2007 -0700"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Thu Jan 24 20:40:33 2008 -0800"
      },
      "message": "driver core: add way to get to bus kset\n\nThis allows an easier way to get to the kset associated with a struct\nbus_type (you have three to choose from...)  This will make it easier to\nmove these fields to be dynamic in a future patch.\n\nCc: Kay Sievers \u003ckay.sievers@vrfy.org\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "cc972e896b303f453f5893ecf8eca0d0e395ab64",
      "tree": "66eb0b8ce2046625c551d45f0f2d69f6b8821a5b",
      "parents": [
        "e32cc7366d88eeba12d22272a73dd83fb570ccb0"
      ],
      "author": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Thu Nov 01 13:31:26 2007 -0700"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Thu Jan 24 20:40:31 2008 -0800"
      },
      "message": "driver core: remove owner field from struct bus_type\n\nThis isn\u0027t used by anything in the driver core, and by no one in the 204\ndifferent usages of it in the kernel tree.  Remove this field so no one\ngets any idea that it is needed to be used.\n\nCc: Kay Sievers \u003ckay.sievers@vrfy.org\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "81e7c6a636c81d9eeaeaa732bfbace44535fab00",
      "tree": "fecb19e67acb96c2c9a11194ebebca63f0139f02",
      "parents": [
        "9f66fa2a4690a16da0dbaae2f44ddfc313802504"
      ],
      "author": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Tue Dec 04 22:41:54 2007 +0000"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Thu Jan 24 20:40:26 2008 -0800"
      },
      "message": "UIO: fix kobject usage\n\nThe uio kobject code is \"wierd\".  This patch should hopefully fix it up\nto be sane and not leak memory anymore.\n\n\nCc: Kay Sievers \u003ckay.sievers@vrfy.org\u003e\nCc: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nCc: Benedikt Spranger \u003cb.spranger@linutronix.de\u003e\nSigned-off-by: Hans J. Koch \u003chjk@linutronix.de\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "d76e15fb20eeb7632ef38876a884fe3508b2c01d",
      "tree": "5f3d63e70d8ac2365ee0c3f6b0489c8377ec1cd0",
      "parents": [
        "37b0c020343080241984d978981d6caf877b278a"
      ],
      "author": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Tue Nov 27 11:28:26 2007 -0800"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Thu Jan 24 20:40:25 2008 -0800"
      },
      "message": "driver core: make /sys/power a kobject\n\n/sys/power should not be a kset, that\u0027s overkill.  This patch renames it\nto power_kset and fixes up all usages of it in the tree.\n\nCc: Kay Sievers \u003ckay.sievers@vrfy.org\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "2fb9113b974c3c7c43e76647bd5077238e274e1c",
      "tree": "b87912c7d2c7a24b35a9a5e82fe462d7cffcbacb",
      "parents": [
        "0ff21e46630abce11fdaaffabd72bbd4eed5ac2c"
      ],
      "author": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Tue Nov 06 15:03:30 2007 -0800"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Thu Jan 24 20:40:24 2008 -0800"
      },
      "message": "kobject: remove subsystem_(un)register functions\n\nThese functions are no longer used and are the last remants of the old\nsubsystem crap.  So delete them for good.\n\nCc: Kay Sievers \u003ckay.sievers@vrfy.org\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "0ff21e46630abce11fdaaffabd72bbd4eed5ac2c",
      "tree": "cc49671622ef90775bf12a91d20b8286aa346e6f",
      "parents": [
        "5c03c7ab886859eb195440dbb6ccb8c30c4e84cc"
      ],
      "author": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Tue Nov 06 10:36:58 2007 -0800"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Thu Jan 24 20:40:24 2008 -0800"
      },
      "message": "kobject: convert kernel_kset to be a kobject\n\nkernel_kset does not need to be a kset, but a much simpler kobject now\nthat we have kobj_attributes.\n\nWe also rename kernel_kset to kernel_kobj to catch all users of this\nsymbol with a build error instead of an easy-to-ignore build warning.\n\nCc: Kay Sievers \u003ckay.sievers@vrfy.org\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "5c03c7ab886859eb195440dbb6ccb8c30c4e84cc",
      "tree": "16274460957bd2c6c80bb5708ba344bea20d4315",
      "parents": [
        "830d3cfb16728e2496edc2985ad8f68025135e37"
      ],
      "author": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Fri Nov 02 16:19:59 2007 -0700"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Thu Jan 24 20:40:24 2008 -0800"
      },
      "message": "kset: remove decl_subsys macro\n\nThis macro is no longer used.  ksets should be created dynamically with\na call to kset_create_and_add() not declared statically.\n\nYes, there are 5 remaining static struct kset usages in the kernel tree,\nbut they will be fixed up soon.\n\nCc: Kay Sievers \u003ckay.sievers@vrfy.org\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "f62ed9e33b3ccff54d66b08f82d11940bb9e269b",
      "tree": "730e79fe5e1c38a0a277b075405d6671b8e450fe",
      "parents": [
        "15f2f9b3a9db65aaf908fe7ee17bbe262ae3550f"
      ],
      "author": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Mon Nov 05 13:16:15 2007 -0800"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Thu Jan 24 20:40:23 2008 -0800"
      },
      "message": "firmware: change firmware_kset to firmware_kobj\n\nThere is no firmware \"subsystem\" it\u0027s just a directory in /sys that\nother portions of the kernel want to hook into.  So make it a kobject\nnot a kset to help alivate anyone who tries to do some odd kset-like\nthings with this.\n\nCc: Kay Sievers \u003ckay.sievers@vrfy.org\u003e\nCc: Cornelia Huck \u003ccornelia.huck@de.ibm.com\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "15f2f9b3a9db65aaf908fe7ee17bbe262ae3550f",
      "tree": "a0553775a92887b82aa2869535f2d832344e2c42",
      "parents": [
        "99e0d2fc6c60ca44f56203eeda9fc0e07b508f06"
      ],
      "author": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Fri Nov 02 16:19:59 2007 -0700"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Thu Jan 24 20:40:23 2008 -0800"
      },
      "message": "firmware: remove firmware_(un)register()\n\nThese functions are no longer called or needed, so we can remove them.\n\nAs I rewrote the whole firmware.c file, add my copyright.\n\nCc: Kay Sievers \u003ckay.sievers@vrfy.org\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "000f2a4d8cfc1e1cbc0aa98136015e7ae7719b46",
      "tree": "f501a2d118797a88184a77be089d335c4cc48e88",
      "parents": [
        "4443d07fcfab39c4d2d9d7711cff983f15b374fc"
      ],
      "author": {
        "name": "Kay Sievers",
        "email": "kay.sievers@vrfy.org",
        "time": "Fri Nov 02 13:47:53 2007 +0100"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Thu Jan 24 20:40:22 2008 -0800"
      },
      "message": "Driver Core: kill subsys_attribute and default sysfs ops\n\nRemove the no longer needed subsys_attributes, they are all converted to\nthe more sensical kobj_attributes.\n\nThere is no longer a magic fallback in sysfs attribute operations, all\nkobjects which create simple attributes need explicitely a ktype\nassigned, which tells the core what was intended here.\n\nSigned-off-by: Kay Sievers \u003ckay.sievers@vrfy.org\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n\n"
    },
    {
      "commit": "9e5f7f9abe18a4f134585a2de016974cbda80539",
      "tree": "895be0970aadd1b4e8584891d546ef4379a15e40",
      "parents": [
        "334c6307543a2b8af730a422f466d5f9442b606a"
      ],
      "author": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Fri Nov 02 13:20:40 2007 -0700"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Thu Jan 24 20:40:19 2008 -0800"
      },
      "message": "firmware: export firmware_kset so that people can use that instead of the braindead firmware_register interface\n\nNeeded for future firmware subsystem cleanups.\n\nIn the end, the firmware_register/unregister functions will be deleted\nentirely, but we need this symbol so that subsystems can migrate over.\n\nCc: Kay Sievers \u003ckay.sievers@vrfy.org\u003e\nCc: Matt Domsch \u003cMatt_Domsch@dell.com\u003e\nCc: Matt Tolentino \u003cmatthew.e.tolentino@intel.com\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "eb41d9465cdafee45e0cb30f3b7338646221908e",
      "tree": "a2e5d62c8b1bd48d5b20515b541096709fe184e0",
      "parents": [
        "386f275f5d097758f867bc99ddeaeb7a03b6b190"
      ],
      "author": {
        "name": "Kay Sievers",
        "email": "kay.sievers@vrfy.org",
        "time": "Fri Nov 02 13:47:53 2007 +0100"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Thu Jan 24 20:40:18 2008 -0800"
      },
      "message": "fix struct user_info export\u0027s sysfs interaction\n\nClean up the use of ksets and kobjects. Kobjects are instances of\nobjects (like struct user_info), ksets are collections of objects of a\nsimilar type (like the uids directory containing the user_info directories).\nSo, use kobjects for the user_info directories, and a kset for the \"uids\"\ndirectory.\n\nOn object cleanup, the final kobject_put() was missing.\n\nCc: Dhaval Giani \u003cdhaval@linux.vnet.ibm.com\u003e\nCc: Srivatsa Vaddagiri \u003cvatsa@linux.vnet.ibm.com\u003e\nSigned-off-by: Kay Sievers \u003ckay.sievers@vrfy.org\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "23b5212cc7422f475b82124334b64277b5b43013",
      "tree": "15be8d1e0f9600d87d28244de865c60e80b3389c",
      "parents": [
        "6dcec2511ff55b4abaca7ad3433011a7c04c2430"
      ],
      "author": {
        "name": "Kay Sievers",
        "email": "kay.sievers@vrfy.org",
        "time": "Fri Nov 02 13:47:53 2007 +0100"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Thu Jan 24 20:40:18 2008 -0800"
      },
      "message": "Driver Core: add kobj_attribute handling\n\nAdd kobj_sysfs_ops to replace subsys_sysfs_ops. There is no\nneed for special kset operations, we want to be able to use\nsimple attribute operations at any kobject, not only ksets.\n\nThe whole concept of any default sysfs attribute operations\nwill go away with the upcoming removal of subsys_sysfs_ops.\n\nSigned-off-by: Kay Sievers \u003ckay.sievers@vrfy.org\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n"
    },
    {
      "commit": "6dcec2511ff55b4abaca7ad3433011a7c04c2430",
      "tree": "aeb9c18a877987478a1594d42b8f041ebb388875",
      "parents": [
        "3d8995963dfec66ef6270e729bf75903e9043f9d"
      ],
      "author": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Thu Nov 01 13:31:26 2007 -0700"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Thu Jan 24 20:40:16 2008 -0800"
      },
      "message": "kset: convert struct bus_device-\u003edrivers to use kset_create\n\nDynamically create the kset instead of declaring it statically.\n\nHaving 3 static kobjects in one structure is not only foolish, but ripe\nfor nasty race conditions if handled improperly.  We also rename the\nfield to catch any potential users of it (not that there should be\noutside of the driver core...)\n\nCc: Kay Sievers \u003ckay.sievers@vrfy.org\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "3d8995963dfec66ef6270e729bf75903e9043f9d",
      "tree": "3abf600f400fb1bbc26f0be4f43af6cb22d24ce4",
      "parents": [
        "039a5dcd2fc45188a2d522df630db4f7ef903a0f"
      ],
      "author": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Thu Nov 01 13:31:26 2007 -0700"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Thu Jan 24 20:40:16 2008 -0800"
      },
      "message": "kset: convert struct bus_device-\u003edevices to use kset_create\n\nDynamically create the kset instead of declaring it statically.\n\nHaving 3 static kobjects in one structure is not only foolish, but ripe\nfor nasty race conditions if handled improperly.  We also rename the\nfield to catch any potential users of it (not that there should be\noutside of the driver core...)\n\nCc: Kay Sievers \u003ckay.sievers@vrfy.org\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "039a5dcd2fc45188a2d522df630db4f7ef903a0f",
      "tree": "dbadc8ef13f00f90acf3c9caad8a3834a34f6ce9",
      "parents": [
        "7405c1e15edfe43b137bfbc5882f1af34d6d414d"
      ],
      "author": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Thu Nov 01 10:39:50 2007 -0700"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Thu Jan 24 20:40:16 2008 -0800"
      },
      "message": "kset: convert /sys/power to use kset_create\n\nDynamically create the kset instead of declaring it statically.  We also\nrename power_subsys to power_kset to catch all users of the variable and\nwe properly export it so that people don\u0027t have to guess that it really\nis present in the system.\n\nThe pseries code is wierd, why is it createing /sys/power if CONFIG_PM\nis disabled?  Oh well, stupid big boxes ignoring config options...\n\nCc: Kay Sievers \u003ckay.sievers@vrfy.org\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "7405c1e15edfe43b137bfbc5882f1af34d6d414d",
      "tree": "94093ac6ece6e0a33f504e6c7778a2c443dae958",
      "parents": [
        "081248de0a0288a0ce4e1447a07ccf56aa4fae01"
      ],
      "author": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Thu Nov 01 10:39:50 2007 -0700"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Thu Jan 24 20:40:16 2008 -0800"
      },
      "message": "kset: convert /sys/module to use kset_create\n\nDynamically create the kset instead of declaring it statically.  We also\nrename module_subsys to module_kset to catch all users of the variable.\n\nCc: Kay Sievers \u003ckay.sievers@vrfy.org\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "2d72fc00a1fb055e6127ccd30cac3f0eafaa98d0",
      "tree": "2a6850d91f28f1adf9223d14fc3bdee8f793b3e3",
      "parents": [
        "881c6cfd7c5edfe6129006e2404654bfe5911050"
      ],
      "author": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Thu Nov 01 09:29:06 2007 -0600"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Thu Jan 24 20:40:15 2008 -0800"
      },
      "message": "kobject: convert /sys/hypervisor to use kobject_create\n\nWe don\u0027t need a kset here, a simple kobject will do just fine, so\ndynamically create the kobject and use it.\n\nWe also rename hypervisor_subsys to hypervisor_kset to catch all users\nof the variable.\n\nCc: Kay Sievers \u003ckay.sievers@vrfy.org\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "bd35b93d8049ab47b5bfaf6b10ba39badf21d1c3",
      "tree": "bac82e14d960b2c7011b7f660a93f07e922f8a97",
      "parents": [
        "e5e38a86c0bbe8475543f10f0a48393a45df5182"
      ],
      "author": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Mon Oct 29 20:13:17 2007 +0100"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Thu Jan 24 20:40:14 2008 -0800"
      },
      "message": "kset: convert kernel_subsys to use kset_create\n\nDynamically create the kset instead of declaring it statically.  We also\nrename kernel_subsys to kernel_kset to catch all users of this symbol\nwith a build error instead of an easy-to-ignore build warning.\n\nCc: Kay Sievers \u003ckay.sievers@vrfy.org\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "e5e38a86c0bbe8475543f10f0a48393a45df5182",
      "tree": "e823d08ca85003bb116631bc65c890840178c6aa",
      "parents": [
        "81ace5cd8fcb55e144f496af40d4275b03252456"
      ],
      "author": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Mon Oct 29 23:22:26 2007 -0500"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Thu Jan 24 20:40:14 2008 -0800"
      },
      "message": "kset: remove decl_subsys_name\n\nThe last user of this macro (pci hotplug core) is now switched over to\nusing a dynamic kset, so this macro is no longer needed at all.\n\nCc: Kay Sievers \u003ckay.sievers@vrfy.org\u003e\nCc: Kristen Carlson Accardi \u003ckristen.c.accardi@intel.com\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n\n"
    },
    {
      "commit": "81ace5cd8fcb55e144f496af40d4275b03252456",
      "tree": "490271ade80924cb0181f71f1c52d7f3976afa76",
      "parents": [
        "d405936b322220dc5cca9d2b58ef1911ae8efec9"
      ],
      "author": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Mon Oct 29 23:22:26 2007 -0500"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Thu Jan 24 20:40:14 2008 -0800"
      },
      "message": "kset: convert pci hotplug to use kset_create_and_add\n\nThis also renames pci_hotplug_slots_subsys to pcis_hotplug_slots_kset\ncatch all current users with a build error instead of a build warning\nwhich can easily be missed.\n\nCc: Kay Sievers \u003ckay.sievers@vrfy.org\u003e\nCc: Kristen Carlson Accardi \u003ckristen.c.accardi@intel.com\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n\n"
    },
    {
      "commit": "00d2666623368ffd39afc875ff8a2eead2a0436c",
      "tree": "9b16b85167f1bd86c02c0ebeb74510d8029783a3",
      "parents": [
        "917e865df7eb020f20ffc2b4204f282a587df94f"
      ],
      "author": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Mon Oct 29 14:17:23 2007 -0600"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Thu Jan 24 20:40:13 2008 -0800"
      },
      "message": "kobject: convert main fs kobject to use kobject_create\n\nThis also renames fs_subsys to fs_kobj to catch all current users with a\nbuild error instead of a build warning which can easily be missed.\n\n\nCc: Kay Sievers \u003ckay.sievers@vrfy.org\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "43968d2f1648f4dc92437dc0363a3e88377445b3",
      "tree": "c9ba656e289bbbb5d5de32abc4181ae1d65dee00",
      "parents": [
        "4ff6abff832fbc6cb1d769f6106c841bc2b09f63"
      ],
      "author": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Mon Nov 05 22:24:43 2007 -0800"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Thu Jan 24 20:40:11 2008 -0800"
      },
      "message": "kobject: get rid of kobject_kset_add_dir\n\nkobject_kset_add_dir is only called in one place so remove it and use\nkobject_create() instead.\n\nCc: Kay Sievers \u003ckay.sievers@vrfy.org\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "4ff6abff832fbc6cb1d769f6106c841bc2b09f63",
      "tree": "8458c8e29f53b67912edbe2424e43f95556832ce",
      "parents": [
        "3f9e3ee9dc3605e5c593b5d708494571fb0d3970"
      ],
      "author": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Mon Nov 05 22:24:43 2007 -0800"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Thu Jan 24 20:40:11 2008 -0800"
      },
      "message": "kobject: get rid of kobject_add_dir\n\nkobject_create_and_add is the same as kobject_add_dir, so drop\nkobject_add_dir.\n\n\nCc: Kay Sievers \u003ckay.sievers@vrfy.org\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "3f9e3ee9dc3605e5c593b5d708494571fb0d3970",
      "tree": "b5490463c14b919f88ec18833846a38cfb621aa3",
      "parents": [
        "b727c702896f88d2ff6c3e03bd011d7c3dffe3e1"
      ],
      "author": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Mon Nov 05 13:16:15 2007 -0800"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Thu Jan 24 20:40:10 2008 -0800"
      },
      "message": "kobject: add kobject_create_and_add function\n\nThis lets users create dynamic kobjects much easier.\n\nCc: Kay Sievers \u003ckay.sievers@vrfy.org\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "b727c702896f88d2ff6c3e03bd011d7c3dffe3e1",
      "tree": "772f0a3eb78a3e1d3475d36356bbff715a907829",
      "parents": [
        "12d03da7c19366268bdbc9fb0cd08d719c0cc283"
      ],
      "author": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Thu Sep 27 14:48:53 2007 -0700"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Thu Jan 24 20:40:10 2008 -0800"
      },
      "message": "kset: add kset_create_and_add function\n\nNow ksets can be dynamically created on the fly, no static definitions\nare required.  Thanks to Miklos for hints on how to make this work\nbetter for the callers.\n\nAnd thanks to Kay for finding some stupid bugs in my original version\nand pointing out that we need to handle the fact that kobject\u0027s can have\na kset as a parent and to handle that properly in kobject_add().\n\nCc: Kay Sievers \u003ckay.sievers@vrfy.org\u003e\nCc: Miklos Szeredi \u003cmiklos@szeredi.hu\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "12d03da7c19366268bdbc9fb0cd08d719c0cc283",
      "tree": "9cda67772234b3962706c5bef5d406aebd185445",
      "parents": [
        "3514faca19a6fdc209734431c509631ea92b094e"
      ],
      "author": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Tue Oct 16 10:11:44 2007 -0600"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Thu Jan 24 20:40:10 2008 -0800"
      },
      "message": "kobject: remove kobj_set_kset_s as no one is using it anymore\n\nWhat a confusing name for a macro...\n\nCc: Kay Sievers \u003ckay.sievers@vrfy.org\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "3514faca19a6fdc209734431c509631ea92b094e",
      "tree": "f6d102e6dec276f8e8d1044b47c74a02b901554f",
      "parents": [
        "c11c4154e7ff4cebfadad849b1e22689d759c3f4"
      ],
      "author": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Tue Oct 16 10:11:44 2007 -0600"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Thu Jan 24 20:40:10 2008 -0800"
      },
      "message": "kobject: remove struct kobj_type from struct kset\n\nWe don\u0027t need a \"default\" ktype for a kset.  We should set this\nexplicitly every time for each kset.  This change is needed so that we\ncan make ksets dynamic, and cleans up one of the odd, undocumented\nassumption that the kset/kobject/ktype model has.\n\nThis patch is based on a lot of help from Kay Sievers.\n\nNasty bug in the block code was found by Dave Young\n\u003chidave.darkstar@gmail.com\u003e\n\nCc: Kay Sievers \u003ckay.sievers@vrfy.org\u003e\nCc: Dave Young \u003chidave.darkstar@gmail.com\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "c11c4154e7ff4cebfadad849b1e22689d759c3f4",
      "tree": "2038ed1677f55d3dafca6faac4a7155fb1e19166",
      "parents": [
        "244f6cee9a928103132a722292bfa0eb84114b07"
      ],
      "author": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Mon Dec 03 21:31:08 2007 -0800"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Thu Jan 24 20:40:10 2008 -0800"
      },
      "message": "kobject: add kobject_init_and_add function\n\nAlso add a kobject_init_and_add function which bundles up what a lot of\nthe current callers want to do all at once, and it properly handles the\nmemory usages, unlike kobject_register();\n\nCc: Kay Sievers \u003ckay.sievers@vrfy.org\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "244f6cee9a928103132a722292bfa0eb84114b07",
      "tree": "4ef3d80c4bd29533dcf5479c51376aa16c36b670",
      "parents": [
        "e86000d042d23904bbb609af2f8618a541cf129b"
      ],
      "author": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Mon Dec 03 21:31:08 2007 -0800"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Thu Jan 24 20:40:09 2008 -0800"
      },
      "message": "kobject: add kobject_add_ng function\n\nThis is what the kobject_add function is going to become.\n\nAdd this to the kernel and then we can convert the tree over to use it.\n\nCc: Kay Sievers \u003ckay.sievers@vrfy.org\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "e86000d042d23904bbb609af2f8618a541cf129b",
      "tree": "f31e28280e33248a3cd82ae2bcfa5b51c12d9984",
      "parents": [
        "18041f4775688af073d9b3ab0ffc262c1847e60b"
      ],
      "author": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Mon Dec 03 21:31:08 2007 -0800"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Thu Jan 24 20:40:09 2008 -0800"
      },
      "message": "kobject: add kobject_init_ng function\n\nThis is what the kobject_init function is going to become.\n\nAdd this to the kernel and then we can convert the tree over to use it.\n\nCc: Kay Sievers \u003ckay.sievers@vrfy.org\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "18041f4775688af073d9b3ab0ffc262c1847e60b",
      "tree": "de6bdbd43525340c618bcfac96163ad441b3c446",
      "parents": [
        "663a47430b361f863b515752a97166a7a4b92d35"
      ],
      "author": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Mon Dec 03 21:31:08 2007 -0800"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Thu Jan 24 20:40:09 2008 -0800"
      },
      "message": "kobject: make kobject_cleanup be static\n\nNo one except the kobject core calls it so make the function static.\n\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "7b8712e563df4fefc25d3107fa3fb3abb7331ff4",
      "tree": "bf82403231e24461e9168af38d38c8a53e6b2c36",
      "parents": [
        "30a468b1c1b9911ae515ff8972ee10c50cca3021"
      ],
      "author": {
        "name": "Emil Medve",
        "email": "Emilian.Medve@Freescale.com",
        "time": "Tue Oct 30 14:37:14 2007 -0500"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Thu Jan 24 20:40:08 2008 -0800"
      },
      "message": "driver core: Make the dev_*() family of macros in device.h complete\n\nRemoved duplicates defined elsewhere\n\nSigned-off-by: Emil Medve \u003cEmilian.Medve@Freescale.com\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "7dd817d083b6fc103b9ea4f2b4f4a1c6a09e29a0",
      "tree": "2e9e782982555e99cb4e40cde469699696470e15",
      "parents": [
        "6013c12be8313b3205b41912d965b03f3b06147d"
      ],
      "author": {
        "name": "Tony Jones",
        "email": "tonyj@suse.de",
        "time": "Tue Sep 25 02:03:03 2007 +0200"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Thu Jan 24 20:40:06 2008 -0800"
      },
      "message": "tifm: Convert from class_device to device for TI flash media\n\nSigned-off-by: Tony Jones \u003ctonyj@suse.de\u003e\nCc: Alex Dubov \u003coakad@yahoo.com\u003e\nCc: Kay Sievers \u003ckay.sievers@vrfy.org\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "6013c12be8313b3205b41912d965b03f3b06147d",
      "tree": "8763a0e1901d4cad2f947ec49f0626da87c95066",
      "parents": [
        "aa2758261469374b598e2a6a2702e000a6ab2fbb"
      ],
      "author": {
        "name": "Tony Jones",
        "email": "tonyj@suse.de",
        "time": "Tue Sep 25 02:03:03 2007 +0200"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Thu Jan 24 20:40:06 2008 -0800"
      },
      "message": "pktcdvd: Convert from class_device to device for block/pktcdvd\n\nstruct class_device is going away, this converts the code to use struct\ndevice instead.\n\nSigned-off-by: Tony Jones \u003ctonyj@suse.de\u003e\nCc: Peter Osterlund \u003cpetero2@telia.com\u003e\nCc: Kay Sievers \u003ckay.sievers@vrfy.org\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "891f78ea833edd4a1e524e15bfe297a7a84d81a0",
      "tree": "533f12df743c4adc6d2b40d048ffb7d16c93e591",
      "parents": [
        "62ca8792560e5bd7dc09f54ed3523a7864f416c7"
      ],
      "author": {
        "name": "Tony Jones",
        "email": "tonyj@suse.de",
        "time": "Tue Sep 25 02:03:03 2007 +0200"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Thu Jan 24 20:40:05 2008 -0800"
      },
      "message": "DMA: Convert from class_device to device for DMA engine\n\nSigned-off-by: Tony Jones \u003ctonyj@suse.de\u003e\nSigned-off-by: Dan Williams \u003cdan.j.williams@intel.com\u003e\nCc: Shannon Nelson \u003cshannon.nelson@intel.com\u003e\nCc: Kay Sievers \u003ckay.sievers@vrfy.org\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "41ca28ab2abd76dc203e2c3a7cd609607cb927c3",
      "tree": "9197e7582b4654796914090026e1afed2628d101",
      "parents": [
        "775b64d2b6ca37697de925f70799c710aab5849a"
      ],
      "author": {
        "name": "Evgeniy Polyakov",
        "email": "johnpol@2ka.mipt.ru",
        "time": "Mon Dec 10 23:03:43 2007 +0300"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Thu Jan 24 20:40:05 2008 -0800"
      },
      "message": "kref: add kref_set()\n\nThis adds kref_set() to the kref api for future use by people who really\nknow what they are doing with krefs...\n\nFrom: Evgeniy Polyakov \u003cjohnpol@2ka.mipt.ru\u003e\nCc: Kay Sievers \u003ckay.sievers@vrfy.org\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n\n"
    },
    {
      "commit": "775b64d2b6ca37697de925f70799c710aab5849a",
      "tree": "09e91c89228c8d3c6928a1b2ef56711190c69836",
      "parents": [
        "7a83d456a86d559a6347115d206d23774bc152d9"
      ],
      "author": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Sat Jan 12 20:40:46 2008 +0100"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Thu Jan 24 20:40:04 2008 -0800"
      },
      "message": "PM: Acquire device locks on suspend\n\nThis patch reorganizes the way suspend and resume notifications are\nsent to drivers.  The major changes are that now the PM core acquires\nevery device semaphore before calling the methods, and calls to\ndevice_add() during suspends will fail, while calls to device_del()\nduring suspends will block.\n\nIt also provides a way to safely remove a suspended device with the\nhelp of the PM core, by using the device_pm_schedule_removal() callback\nintroduced specifically for this purpose, and updates two drivers (msr\nand cpuid) that need to use it.\n\nSigned-off-by: Alan Stern \u003cstern@rowland.harvard.edu\u003e\nSigned-off-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "1996a10948e50e546dc2b64276723c0b64d3173b",
      "tree": "971b235907b7c6911c21c9139e0ba85c5b84ef80",
      "parents": [
        "63cb34492351078479b2d4bae6a881806a396286"
      ],
      "author": {
        "name": "Jan Engelhardt",
        "email": "jengelh@computergmbh.de",
        "time": "Wed Jan 23 00:02:58 2008 +0100"
      },
      "committer": {
        "name": "James Morris",
        "email": "jmorris@namei.org",
        "time": "Fri Jan 25 11:29:54 2008 +1100"
      },
      "message": "security/selinux: constify function pointer tables and fields\n\nConstify function pointer tables and fields.\n\nSigned-off-by: Jan Engelhardt \u003cjengelh@computergmbh.de\u003e\nSigned-off-by: James Morris \u003cjmorris@namei.org\u003e\n"
    },
    {
      "commit": "63cb34492351078479b2d4bae6a881806a396286",
      "tree": "d33ab15eda40c5195c4a723d9e49591a9b4950f9",
      "parents": [
        "c43e259cc756ece387faae849af0058b56d78466"
      ],
      "author": {
        "name": "David Howells",
        "email": "dhowells@redhat.com",
        "time": "Tue Jan 15 23:47:35 2008 +0000"
      },
      "committer": {
        "name": "James Morris",
        "email": "jmorris@namei.org",
        "time": "Fri Jan 25 11:29:53 2008 +1100"
      },
      "message": "security: add a secctx_to_secid() hook\n\nAdd a secctx_to_secid() LSM hook to go along with the existing\nsecid_to_secctx() LSM hook.  This patch also includes the SELinux\nimplementation for this hook.\n\nSigned-off-by: Paul Moore \u003cpaul.moore@hp.com\u003e\nAcked-by: Stephen Smalley \u003csds@tycho.nsa.gov\u003e\nSigned-off-by: James Morris \u003cjmorris@namei.org\u003e\n"
    },
    {
      "commit": "bced95283e9434611cbad8f2ff903cd396eaea72",
      "tree": "5d56afc7a5f239ebc53a1800a508f16b8d8701b0",
      "parents": [
        "42d7896ebc5f7268b1fe6bbd20f2282e20ae7895"
      ],
      "author": {
        "name": "H. Peter Anvin",
        "email": "hpa@zytor.com",
        "time": "Sat Dec 29 16:20:25 2007 -0800"
      },
      "committer": {
        "name": "James Morris",
        "email": "jmorris@namei.org",
        "time": "Fri Jan 25 11:29:50 2008 +1100"
      },
      "message": "security: remove security_sb_post_mountroot hook\n\nThe security_sb_post_mountroot() hook is long-since obsolete, and is\nfundamentally broken: it is never invoked if someone uses initramfs.\nThis is particularly damaging, because the existence of this hook has\nbeen used as motivation for not using initramfs.\n\nStephen Smalley confirmed on 2007-07-19 that this hook was originally\nused by SELinux but can now be safely removed:\n\n     http://marc.info/?l\u003dlinux-kernel\u0026m\u003d118485683612916\u0026w\u003d2\n\nCc: Stephen Smalley \u003csds@tycho.nsa.gov\u003e\nCc: James Morris \u003cjmorris@namei.org\u003e\nCc: Eric Paris \u003ceparis@parisplace.org\u003e\nCc: Chris Wright \u003cchrisw@sous-sol.org\u003e\nSigned-off-by: H. Peter Anvin \u003chpa@zytor.com\u003e\nSigned-off-by: James Morris \u003cjmorris@namei.org\u003e\n"
    },
    {
      "commit": "42d7896ebc5f7268b1fe6bbd20f2282e20ae7895",
      "tree": "98247e79ea997801420bcb594c66f351a14bce75",
      "parents": [
        "88c3f7a8f2c86be264d326cf6f49a3e8c30d13a6"
      ],
      "author": {
        "name": "James Morris",
        "email": "jmorris@sdv.(none)",
        "time": "Wed Dec 26 15:12:37 2007 +1100"
      },
      "committer": {
        "name": "James Morris",
        "email": "jmorris@namei.org",
        "time": "Fri Jan 25 11:29:49 2008 +1100"
      },
      "message": "Security: remove security.h include from mm.h\n\nRemove security.h include from mm.h, as it is only needed for a single\nextern declaration, and pulls in all kinds of crud.\n\nFine-by-me: David Chinner \u003cdgc@sgi.com\u003e\nAcked-by: Eric Paris \u003ceparis@redhat.com\u003e\nSigned-off-by: James Morris \u003cjmorris@namei.org\u003e\n"
    },
    {
      "commit": "c9180a57a9ab2d5525faf8815a332364ee9e89b7",
      "tree": "c677ec33735f3529d478a2b71fcc732d4fe59adf",
      "parents": [
        "19c5fc198c369bb00f3ed9716ef40648865d8d94"
      ],
      "author": {
        "name": "Eric Paris",
        "email": "eparis@redhat.com",
        "time": "Fri Nov 30 13:00:35 2007 -0500"
      },
      "committer": {
        "name": "James Morris",
        "email": "jmorris@namei.org",
        "time": "Fri Jan 25 11:29:46 2008 +1100"
      },
      "message": "Security: add get, set, and cloning of superblock security information\n\nAdds security_get_sb_mnt_opts, security_set_sb_mnt_opts, and\nsecurity_clont_sb_mnt_opts to the LSM and to SELinux.  This will allow\nfilesystems to directly own and control all of their mount options if they\nso choose.  This interface deals only with option identifiers and strings so\nit should generic enough for any LSM which may come in the future.\n\nFilesystems which pass text mount data around in the kernel (almost all of\nthem) need not currently make use of this interface when dealing with\nSELinux since it will still parse those strings as it always has.  I assume\nfuture LSM\u0027s would do the same.  NFS is the primary FS which does not use\ntext mount data and thus must make use of this interface.\n\nAn LSM would need to implement these functions only if they had mount time\noptions, such as selinux has context\u003d or fscontext\u003d.  If the LSM has no\nmount time options they could simply not implement and let the dummy ops\ntake care of things.\n\nAn LSM other than SELinux would need to define new option numbers in\nsecurity.h and any FS which decides to own there own security options would\nneed to be patched to use this new interface for every possible LSM.  This\nis because it was stated to me very clearly that LSM\u0027s should not attempt to\nunderstand FS mount data and the burdon to understand security should be in\nthe FS which owns the options.\n\nSigned-off-by: Eric Paris \u003ceparis@redhat.com\u003e\nAcked-by: Stephen D. Smalley \u003csds@tycho.nsa.gov\u003e\nSigned-off-by: James Morris \u003cjmorris@namei.org\u003e\n"
    },
    {
      "commit": "d4b7dc499daae909e62dc260b95cd618f2970ded",
      "tree": "d24816be9d0830724e35f322c515dc8db38d4a2e",
      "parents": [
        "7ce95ce5c6dbbc3f70933f04537860ffd9dbe17e"
      ],
      "author": {
        "name": "Len Brown",
        "email": "len.brown@intel.com",
        "time": "Wed Jan 23 20:50:56 2008 -0500"
      },
      "committer": {
        "name": "Len Brown",
        "email": "len.brown@intel.com",
        "time": "Wed Jan 23 21:26:15 2008 -0500"
      },
      "message": "ACPI: make _OSI(Linux) console messages smarter\n\nIf BIOS invokes _OSI(Linux), the kernel response\ndepends on what the ACPI DMI list knows about the system,\nand that is reflectd in dmesg:\n\n1) System unknown to DMI:\n\nACPI: BIOS _OSI(Linux) query ignored\nACPI: DMI System Vendor: LENOVO\nACPI: DMI Product Name: 7661W1P\nACPI: DMI Product Version: ThinkPad T61\nACPI: DMI Board Name: 7661W1P\nACPI: DMI BIOS Vendor: LENOVO\nACPI: DMI BIOS Date: 10/18/2007\nACPI: Please send DMI info above to linux-acpi@vger.kernel.org\nACPI: If \"acpi_osi\u003dLinux\" works better, please notify linux-acpi@vger.kernel.org\n\n2) System known to DMI, but effect of OSI(Linux) unknown:\n\nACPI: DMI detected: Lenovo ThinkPad T61\n...\nACPI: BIOS _OSI(Linux) query ignored via DMI\nACPI: If \"acpi_osi\u003dLinux\" works better, please notify linux-acpi@vger.kernel.org\n\n3) System known to DMI, which disables _OSI(Linux):\n\nACPI: DMI detected: Lenovo ThinkPad T61\n...\nACPI: BIOS _OSI(Linux) query ignored via DMI\n\n4) System known to DMI, which enable _OSI(Linux):\n\nACPI: DMI detected: Lenovo ThinkPad T61\nACPI: Added _OSI(Linux)\n...\nACPI: BIOS _OSI(Linux) query honored via DMI\n\ncmdline overrides take precidence over the built-in\ndefault and the DMI prescribed default.\ncmdline \"acpi_osi\u003dLinux\" results in:\n\nACPI: BIOS _OSI(Linux) query honored via cmdline\n\nSigned-off-by: Len Brown \u003clen.brown@intel.com\u003e\n"
    },
    {
      "commit": "f89e3b0620a0dc19f313218f55373b9361142203",
      "tree": "4263ef4f23e57715139f3e0cf4380b334b5defef",
      "parents": [
        "81b4e1f6269cea345f17d3aa349ec9beb31a8cd3"
      ],
      "author": {
        "name": "Len Brown",
        "email": "len.brown@intel.com",
        "time": "Wed Jan 23 16:36:45 2008 -0500"
      },
      "committer": {
        "name": "Len Brown",
        "email": "len.brown@intel.com",
        "time": "Wed Jan 23 21:23:13 2008 -0500"
      },
      "message": "DMI: create dmi_get_slot()\n\nThis simply allows other sub-systems (such as ACPI)\nto access and print out slots in static dmi_ident[].\n\nSigned-off-by: Len Brown \u003clen.brown@intel.com\u003e\n"
    },
    {
      "commit": "81b4e1f6269cea345f17d3aa349ec9beb31a8cd3",
      "tree": "1f5575297b166e51399eaf5fef680d02d30c060f",
      "parents": [
        "667984d9e481e43a930a478c588dced98cb61fea"
      ],
      "author": {
        "name": "Len Brown",
        "email": "len.brown@intel.com",
        "time": "Wed Jan 16 17:20:37 2008 -0500"
      },
      "committer": {
        "name": "Len Brown",
        "email": "len.brown@intel.com",
        "time": "Wed Jan 23 21:22:21 2008 -0500"
      },
      "message": "DMI: move dmi_available declaration to linux/dmi.h\n\nSigned-off-by: Len Brown \u003clen.brown@intel.com\u003e\n"
    },
    {
      "commit": "eb13ba873881abd5e15af784756a61af635e665e",
      "tree": "228bf4afa2c4418ad09cd50b3ebb762f793ed84a",
      "parents": [
        "5a26db5bd25cf4bf32ae9fa9f6136b6b6d5b45c5"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes@sipsolutions.net",
        "time": "Wed Jan 16 09:51:58 2008 +0100"
      },
      "committer": {
        "name": "Peter Zijlstra",
        "email": "a.p.zijlstra@chello.nl",
        "time": "Wed Jan 16 09:51:58 2008 +0100"
      },
      "message": "lockdep: fix workqueue creation API lockdep interaction\nDave Young reported warnings from lockdep that the workqueue API\ncan sometimes try to register lockdep classes with the same key\nbut different names. This is not permitted in lockdep.\n\nUnfortunately, I was unaware of that restriction when I wrote\nthe code to debug workqueue problems with lockdep and used the\nworkqueue name as the lockdep class name. This can obviously\nlead to the problem if the workqueue name is dynamic.\n\nThis patch solves the problem by always using a constant name\nfor the workqueue\u0027s lockdep class, namely either the constant\nname that was passed in or a string consisting of the variable\nname.\n\nSigned-off-by: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\n"
    },
    {
      "commit": "121a09e590d54be840289c6feac840453aa999d9",
      "tree": "3787fdb9c29811d161049b669209b99dedf79f40",
      "parents": [
        "0f7577434bcdf99456757b44d8911dc6e51c3178"
      ],
      "author": {
        "name": "Alan Cox",
        "email": "alan@lxorguk.ukuu.org.uk",
        "time": "Mon Jan 14 01:06:40 2008 -0800"
      },
      "committer": {
        "name": "Jeff Garzik",
        "email": "jeff@garzik.org",
        "time": "Tue Jan 15 16:35:21 2008 -0500"
      },
      "message": "libata: correct handling of TSS DVD\n\nDevices that misreport the validity bit for word 93 look like SATA.  If\nthey are on the blacklist then we must not test for SATA but assume 40 wire\nin the 40 wire case (The TSSCorp reports 80 wire on SATA it seems!)\n\nSigned-off-by: Alan Cox \u003calan@redhat.com\u003e\nCc: Tejun Heo \u003chtejun@gmail.com\u003e\nCc: Jeff Garzik \u003cjeff@garzik.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Jeff Garzik \u003cjeff@garzik.org\u003e\n"
    },
    {
      "commit": "c23f72cae9523d29ff94eec8f30ccbdaf234b20e",
      "tree": "1e5f46971510cd36a3deebfa8f160933212f4df0",
      "parents": [
        "031f2dcd7075e218e74dd7f942ad015cf82dffab"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Mon Jan 14 21:21:29 2008 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Mon Jan 14 21:21:29 2008 -0800"
      },
      "message": "Revert \"writeback: introduce writeback_control.more_io to indicate more io\"\n\nThis reverts commit 2e6883bdf49abd0e7f0d9b6297fc3be7ebb2250b, as\nrequested by Fengguang Wu.  It\u0027s not quite fully baked yet, and while\nthere are patches around to fix the problems it caused, they should get\nmore testing.  Says Fengguang: \"I\u0027ll resend them both for -mm later on,\nin a more complete patchset\".\n\nSee\n\n\thttp://bugzilla.kernel.org/show_bug.cgi?id\u003d9738\n\nfor some of this discussion.\n\nRequested-by: Fengguang Wu \u003cwfg@mail.ustc.edu.cn\u003e\nCc: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nCc: Peter Zijlstra \u003cpeterz@infradead.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "f9dd0194ff23d612e463be764d73da7825da4aa1",
      "tree": "bb826626c73b5c4945a95ef5557940e2e3b4bd1c",
      "parents": [
        "96acafe05fad2c9429ca2c39af47efc5db2d8042"
      ],
      "author": {
        "name": "Jean Delvare",
        "email": "khali@linux-fr.org",
        "time": "Mon Jan 14 21:53:31 2008 +0100"
      },
      "committer": {
        "name": "Jean Delvare",
        "email": "khali@hyperion.delvare",
        "time": "Mon Jan 14 21:53:31 2008 +0100"
      },
      "message": "i2c: Driver IDs are optional\n\nDocument the fact that I2C driver IDs are optional.\n\nSigned-off-by: Jean Delvare \u003ckhali@linux-fr.org\u003e\n"
    },
    {
      "commit": "417009f64f17d76322d148a2cda40dfec37bcf0b",
      "tree": "5c02e4888a083e276a49ec1f58cd492ca5532e1b",
      "parents": [
        "ba67a39efde8312e386c6f603054f8945433d91f",
        "55d1bb9a3b0f7f791ce597086791ebe54ea4c46a"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Sun Jan 13 09:58:22 2008 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Sun Jan 13 09:58:22 2008 -0800"
      },
      "message": "Merge branch \u0027release\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/lenb/linux-acpi-2.6\n\n* \u0027release\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/lenb/linux-acpi-2.6:\n  pnpacpi: print resource shortage message only once\n  PM: ACPI and APM must not be enabled at the same time\n  ACPI: apply quirk_ich6_lpc_acpi to more ICH8 and ICH9\n  ACPICA: fix acpi_serialize hang regression\n  ACPI : Not register gsi for PCI IDE controller in legacy mode\n  ACPI: Reintroduce run time configurable max_cstate for !CPU_IDLE case\n  ACPI: Make sysfs interface in ACPI power optional.\n  ACPI: EC: Enable boot EC before bus_scan\n  increase PNP_MAX_PORT to 40 from 24\n"
    },
    {
      "commit": "84427eaef1fb91704c7112bdb598c810003b99f3",
      "tree": "bf22a7186295fcb6dc6bced34cfa73aa74b27300",
      "parents": [
        "974a9f0b47da74e28f68b9c8645c3786aa5ace1a"
      ],
      "author": {
        "name": "Roland McGrath",
        "email": "roland@redhat.com",
        "time": "Thu Jan 10 12:52:04 2008 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Sun Jan 13 09:56:43 2008 -0800"
      },
      "message": "remove task_ppid_nr_ns\n\ntask_ppid_nr_ns is called in three places.  One of these should never\nhave called it.  In the other two, using it broke the existing\nsemantics.  This was presumably accidental.  If the function had not\nbeen there, it would have been much more obvious to the eye that those\npatches were changing the behavior.  We don\u0027t need this function.\n\nIn task_state, the pid of the ptracer is not the ppid of the ptracer.\n\nIn do_task_stat, ppid is the tgid of the real_parent, not its pid.\nI also moved the call outside of lock_task_sighand, since it doesn\u0027t\nneed it.\n\nIn sys_getppid, ppid is the tgid of the real_parent, not its pid.\n\nSigned-off-by: Roland McGrath \u003croland@redhat.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "6b74c92521de123b6b3b01a8be432722121d9e8e",
      "tree": "64155a80a20d6ac848d436c986ed477ce4444e93",
      "parents": [
        "4e1b83ad61b5db143281bb54e88ff420cc6b79d0",
        "2c838197751db19d08a00e633e33dce23a69fb0c"
      ],
      "author": {
        "name": "Len Brown",
        "email": "len.brown@intel.com",
        "time": "Fri Jan 11 12:27:50 2008 -0500"
      },
      "committer": {
        "name": "Len Brown",
        "email": "len.brown@intel.com",
        "time": "Fri Jan 11 12:27:50 2008 -0500"
      },
      "message": "Pull bugzilla-9535 into release branch\n"
    },
    {
      "commit": "02d5bccf8ea3f9b8de21bfe19db77fbc50d92e04",
      "tree": "33402107adad8ebca51ea843291e09afc11a67d7",
      "parents": [
        "eba6860ac5f9578e3ba6d0f9900cfc72599c5d66",
        "9f9adecd2d0e4f88fa0e8cb06c6ec207748df70a"
      ],
      "author": {
        "name": "Len Brown",
        "email": "len.brown@intel.com",
        "time": "Fri Jan 11 12:27:13 2008 -0500"
      },
      "committer": {
        "name": "Len Brown",
        "email": "len.brown@intel.com",
        "time": "Fri Jan 11 12:27:13 2008 -0500"
      },
      "message": "Pull bugzilla-9194 into release branch\n"
    },
    {
      "commit": "9f9adecd2d0e4f88fa0e8cb06c6ec207748df70a",
      "tree": "b3914860b74a9f6c3ae42016aa708b54040248f8",
      "parents": [
        "da8cadb31b82c9d41fc593c8deab6aa20b162d6b"
      ],
      "author": {
        "name": "Len Brown",
        "email": "len.brown@intel.com",
        "time": "Thu Dec 13 17:38:03 2007 -0500"
      },
      "committer": {
        "name": "Len Brown",
        "email": "len.brown@intel.com",
        "time": "Fri Jan 11 12:26:47 2008 -0500"
      },
      "message": "PM: ACPI and APM must not be enabled at the same time\n\nACPI and APM used \"pm_active\" to guarantee that\nthey would not be simultaneously active.\n\nBut pm_active was recently moved under CONFIG_PM_LEGACY,\nso that without CONFIG_PM_LEGACY, pm_active became a NOP --\nallowing ACPI and APM to both be simultaneously enabled.\nThis caused unpredictable results, including boot hangs.\n\nFurther, the code under CONFIG_PM_LEGACY is scheduled\nfor removal.\n\nSo replace pm_active with pm_flags.\npm_flags depends only on CONFIG_PM,\nwhich is present for both CONFIG_APM and CONFIG_ACPI.\n\nhttp://bugzilla.kernel.org/show_bug.cgi?id\u003d9194\n\nSigned-off-by: Len Brown \u003clen.brown@intel.com\u003e\nSigned-off-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\n"
    },
    {
      "commit": "b801a1e7dbca3f51d0a4b22a750ae257196002cb",
      "tree": "8c6963d592cc34c9964c5760b57447c9ee4e48a5",
      "parents": [
        "88fb61e4ba263685a0d5b82c7e9cd6f22a9e6a9d"
      ],
      "author": {
        "name": "Rusty Russell",
        "email": "rusty@rustcorp.com.au",
        "time": "Fri Jan 11 10:12:55 2008 +0100"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Fri Jan 11 10:12:55 2008 +0100"
      },
      "message": "Don\u0027t blatt first element of prv in sg_chain()\n\nI realize that sg chaining is a ploy to make the rest of the kernel\ndevs feel the pain of the SCSI subsystem.  But this was a little\nunsubtle.\n\nSigned-off-by: Rusty Russell \u003crusty@rustcorp.com.au\u003e\nAcked-by: Tejun Heo \u003chtejun@gmail.com\u003e\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\n"
    },
    {
      "commit": "d1ec7298fcefd7e4d1ca612da402ce9e5d5e2c13",
      "tree": "c05cc1a76c3dc74952d0ac629503c875d89f6a49",
      "parents": [
        "fd0b45dfd1858c6b49d06355a460bcf36d654c06"
      ],
      "author": {
        "name": "Zhao Yakui",
        "email": "yakui.zhao@intel.com",
        "time": "Fri Jan 11 00:24:55 2008 -0500"
      },
      "committer": {
        "name": "Len Brown",
        "email": "len.brown@intel.com",
        "time": "Fri Jan 11 00:24:55 2008 -0500"
      },
      "message": "ACPI: apply quirk_ich6_lpc_acpi to more ICH8 and ICH9\n\nIt is important that these resources be reserved\nto avoid conflicts with well known ACPI registers.\n\nSigned-off-by: Zhao Yakui \u003cyakui.zhao@intel.com\u003e\nSigned-off-by: Len Brown \u003clen.brown@intel.com\u003e\n"
    },
    {
      "commit": "6eb7228421c01ba48a6a88a7a5b3e71cfb70d4a9",
      "tree": "15ec08e0ede5ca43e348a30176cd7c96ffb7985d",
      "parents": [
        "38ed9ab23b8614c9c1553b2961ef2627f3088fd9"
      ],
      "author": {
        "name": "Herbert Xu",
        "email": "herbert@gondor.apana.org.au",
        "time": "Tue Jan 08 17:16:44 2008 +1100"
      },
      "committer": {
        "name": "Herbert Xu",
        "email": "herbert@gondor.apana.org.au",
        "time": "Fri Jan 11 08:17:01 2008 +1100"
      },
      "message": "[CRYPTO] api: Set default CRYPTO_MINALIGN to unsigned long long\n\nThanks to David Miller for pointing out that the SLAB (or SLOB/SLUB)\ncache uses the alignment of unsigned long long if the architecture\nkmalloc/slab alignment macros are not defined.\n\nThis patch changes the CRYPTO_MINALIGN so that it uses the same default\nvalue.\n\nSigned-off-by: Herbert Xu \u003cherbert@gondor.apana.org.au\u003e\n"
    },
    {
      "commit": "d29ce988aeb459203c74f14747f4f77e1829ef78",
      "tree": "886ec0a429c3b1b5b79f290be6b0d8383b89c30b",
      "parents": [
        "14df4d80433b8413f901e80880c39e8759b8418f"
      ],
      "author": {
        "name": "Herbert Xu",
        "email": "herbert@gondor.apana.org.au",
        "time": "Wed Dec 12 19:24:27 2007 +0800"
      },
      "committer": {
        "name": "Herbert Xu",
        "email": "herbert@gondor.apana.org.au",
        "time": "Fri Jan 11 08:16:52 2008 +1100"
      },
      "message": "[CRYPTO] aead: Create default givcipher instances\n\nThis patch makes crypto_alloc_aead always return algorithms that is\ncapable of generating their own IVs through givencrypt and givdecrypt.\nAll existing AEAD algorithms already do.  New ones must either supply\ntheir own or specify a generic IV generator with the geniv field.\n\nSigned-off-by: Herbert Xu \u003cherbert@gondor.apana.org.au\u003e\n"
    },
    {
      "commit": "5b6d2d7fdf806f2b5a9352416f9e670911fc4748",
      "tree": "d2eda87839e1b5de18c691ecff6e6074a35c09f0",
      "parents": [
        "aedb30dc49eeecd48558b601c47e0b3f9e42c602"
      ],
      "author": {
        "name": "Herbert Xu",
        "email": "herbert@gondor.apana.org.au",
        "time": "Wed Dec 12 19:23:36 2007 +0800"
      },
      "committer": {
        "name": "Herbert Xu",
        "email": "herbert@gondor.apana.org.au",
        "time": "Fri Jan 11 08:16:51 2008 +1100"
      },
      "message": "[CRYPTO] aead: Add aead_geniv_alloc/aead_geniv_free\n\nThis patch creates the infrastructure to help the construction of IV\ngenerator templates that wrap around AEAD algorithms by adding an IV\ngenerator to them.  This is useful for AEAD algorithms with no built-in\nIV generator or to replace their built-in generator.\n\nSigned-off-by: Herbert Xu \u003cherbert@gondor.apana.org.au\u003e\n"
    },
    {
      "commit": "743edf57272fd420348e148bf94f9e48ed6abb70",
      "tree": "be4a96ae7f7f8a6b42bf01cc7a61cb4b5938ab50",
      "parents": [
        "03bf712fb4defc7831c727d1e32d0269f7f96de0"
      ],
      "author": {
        "name": "Herbert Xu",
        "email": "herbert@gondor.apana.org.au",
        "time": "Mon Dec 10 16:18:01 2007 +0800"
      },
      "committer": {
        "name": "Herbert Xu",
        "email": "herbert@gondor.apana.org.au",
        "time": "Fri Jan 11 08:16:49 2008 +1100"
      },
      "message": "[CRYPTO] aead: Add givcrypt operations\n\nThis patch adds the underlying givcrypt operations for aead and associated\nsupport elements.  The rationale is identical to that of the skcipher\ngivcrypt operations, i.e., sometimes only the algorithm knows how the\nIV should be generated.\n\nA new request type aead_givcrypt_request is added which contains an\nembedded aead_request structure with two new elements to support this\noperation.  The new elements are seq and giv.  The seq field should\ncontain a strictly increasing 64-bit integer which may be used by\ncertain IV generators as an input value.  The giv field will be used\nto store the generated IV.  It does not need to obey the alignment\nrequirements of the algorithm because it\u0027s not used during the operation.\n\nThe existing iv field must still be available as it will be used to store\nintermediate IVs and the output IV if chaining is desired.\n\nSigned-off-by: Herbert Xu \u003cherbert@gondor.apana.org.au\u003e\n"
    },
    {
      "commit": "b9c55aa475599183d0eab6833ea23e70c52dd24b",
      "tree": "74e011e9b95291f230d6e7200730e3bc3b9d7153",
      "parents": [
        "806d183aa6cc565d0f6bd2fb7fc6bfb175cc4813"
      ],
      "author": {
        "name": "Herbert Xu",
        "email": "herbert@gondor.apana.org.au",
        "time": "Tue Dec 04 12:46:48 2007 +1100"
      },
      "committer": {
        "name": "Herbert Xu",
        "email": "herbert@gondor.apana.org.au",
        "time": "Fri Jan 11 08:16:46 2008 +1100"
      },
      "message": "[CRYPTO] skcipher: Create default givcipher instances\n\nThis patch makes crypto_alloc_ablkcipher/crypto_grab_skcipher always\nreturn algorithms that are capable of generating their own IVs through\ngivencrypt and givdecrypt.  Each algorithm may specify its default IV\ngenerator through the geniv field.\n\nFor algorithms that do not set the geniv field, the blkcipher layer will\npick a default.  Currently it\u0027s chainiv for synchronous algorithms and\neseqiv for asynchronous algorithms.  Note that if these wrappers do not\nwork on an algorithm then that algorithm must specify its own geniv or\nit can\u0027t be used at all.\n\nSigned-off-by: Herbert Xu \u003cherbert@gondor.apana.org.au\u003e\n"
    },
    {
      "commit": "ecfc43292f68566c144afca966b46b371c26d56c",
      "tree": "ef332abe1573434836a90e188257a252ca9f896a",
      "parents": [
        "927eead52c958829ef62c8aa5da2751033a2cf98"
      ],
      "author": {
        "name": "Herbert Xu",
        "email": "herbert@gondor.apana.org.au",
        "time": "Wed Dec 05 21:08:36 2007 +1100"
      },
      "committer": {
        "name": "Herbert Xu",
        "email": "herbert@gondor.apana.org.au",
        "time": "Fri Jan 11 08:16:44 2008 +1100"
      },
      "message": "[CRYPTO] skcipher: Add skcipher_geniv_alloc/skcipher_geniv_free\n\nThis patch creates the infrastructure to help the construction of givcipher\ntemplates that wrap around existing blkcipher/ablkcipher algorithms by adding\nan IV generator to them.\n\nSigned-off-by: Herbert Xu \u003cherbert@gondor.apana.org.au\u003e\n"
    }
  ],
  "next": "23508e11ab3bb405dca66bf4d77e488bf2b07b0c"
}
