)]}'
{
  "log": [
    {
      "commit": "2c0f5fb08e8ad59f396b1bda41ccd93cbb00a09f",
      "tree": "9b53b4ffd3b118561d5210ca3962c592a428d7cd",
      "parents": [
        "5f27a27bd77fcfd4b90ed33668940bc3cf72768b"
      ],
      "author": {
        "name": "Richard Purdie",
        "email": "rpurdie@rpsys.net",
        "time": "Fri Mar 31 02:31:51 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Fri Mar 31 12:19:00 2006 -0800"
      },
      "message": "[PATCH] backlight: corgi_bl: Generalise to support other Sharp SL hardware\n\nGeneralise the Corgi backlight driver by moving the default intensity and\nlimit mask settings into the platform specific data structure.  This enables\nthe driver to support other Zaurus hardware, specifically the SL-6000x (Tosa)\nmodel.\n\nAlso change the spinlock to a mutex (the spinlock is overkill).\n\nSigned-off-by: Richard Purdie \u003crpurdie@rpsys.net\u003e\nSigned-off-by: Antonino Daplas \u003cadaplas@pol.net\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "5f27a27bd77fcfd4b90ed33668940bc3cf72768b",
      "tree": "75886974943aa5dea93cfb354d8f521ca4002573",
      "parents": [
        "6ca017658b1f902c9bba2cc1017e301581f7728d"
      ],
      "author": {
        "name": "Richard Purdie",
        "email": "rpurdie@rpsys.net",
        "time": "Fri Mar 31 02:31:50 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Fri Mar 31 12:19:00 2006 -0800"
      },
      "message": "[PATCH] backlight: HP Jornada 680 Backlight driver updates/fixes\n\nUpdates to the HP Jornada 680 Backlight driver:\n\n- Correct the suspend/resume functions so the driver compiles\n  (SUSPEND_POWER_DOWN/RESUME_POWER_ON no longer exist).\n\n- Convert the driver to match the recent platform device changes.\n\n- Replace the unsafe static struct platform_device with dynamic allocation.\n\n- Convert the driver to the new backlight code.\n\nThis has not been tested on a device due to lack of hardware but wouldn\u0027t\ncompile beforehand.\n\nSigned-off-by: Richard Purdie \u003crpurdie@rpsys.net\u003e\nSigned-off-by: Antonino Daplas \u003cadaplas@pol.net\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "6ca017658b1f902c9bba2cc1017e301581f7728d",
      "tree": "9180b3923d4f6ef09c11d7f7386024f391508759",
      "parents": [
        "9b0e1c5dd2941aec566047e10a5cc929ca7f7d4f"
      ],
      "author": {
        "name": "Richard Purdie",
        "email": "rpurdie@rpsys.net",
        "time": "Fri Mar 31 02:31:49 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Fri Mar 31 12:19:00 2006 -0800"
      },
      "message": "[PATCH] backlight: Backlight Class Improvements\n\nBacklight class attributes are currently easy to implement incorrectly.\nMoving certain handling into the backlight core prevents this whilst at the\nsame time makes the drivers simpler and consistent.  The following changes are\nincluded:\n\nThe brightness attribute only sets and reads the brightness variable in the\nbacklight_properties structure.\n\nThe power attribute only sets and reads the power variable in the\nbacklight_properties structure.\n\nAny framebuffer blanking events change a variable fb_blank in the\nbacklight_properties structure.\n\nThe backlight driver has only two functions to implement.  One function is\ncalled when any of the above properties change (to update the backlight\nbrightness), the second is called to return the current backlight brightness\nvalue.  A new attribute \"actual_brightness\" is added to return this brightness\nas determined by the driver having combined all the above factors (and any\ndriver/device specific factors).\n\nAdditionally, the backlight core takes care of checking the maximum brightness\nis not exceeded and of turning off the backlight before device removal.\n\nThe corgi backlight driver is updated to reflect these changes.\n\nSigned-off-by: Richard Purdie \u003crpurdie@rpsys.net\u003e\nSigned-off-by: Antonino Daplas \u003cadaplas@pol.net\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "9b0e1c5dd2941aec566047e10a5cc929ca7f7d4f",
      "tree": "5d21dda4ee4b36f3f2247558190e12087a58070d",
      "parents": [
        "1a37d5f51020b9967d4b4094f6d627d0873a6469"
      ],
      "author": {
        "name": "Alberto Mardegan",
        "email": "mardy@users.sourceforge.net",
        "time": "Fri Mar 31 02:31:46 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Fri Mar 31 12:19:00 2006 -0800"
      },
      "message": "[PATCH] w100fb: Add acceleration support to ATI Imageon\n\nAdd acceleration support in w100fb.c (i.e.  ATI Imageons) for the copyarea and\nfillrect operations.\n\nSigned-off-by: Alberto Mardegan \u003cmardy@users.sourceforge.net\u003e\nSigned-off-by: Antonino Daplas \u003cadaplas@pol.net\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "1a37d5f51020b9967d4b4094f6d627d0873a6469",
      "tree": "ac01b1877acd3405d3f3bf186889295187177c7c",
      "parents": [
        "3e7e241f8c5c87cc3685364feface081c9fa3648"
      ],
      "author": {
        "name": "Antonino A. Daplas",
        "email": "adaplas@gmail.com",
        "time": "Fri Mar 31 02:31:45 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Fri Mar 31 12:19:00 2006 -0800"
      },
      "message": "[PATCH] fbcon: Save current display during initialization\n\nThe current display was not saved during initialization.  This leads to hard\nto track console corruption, such as a misplaced cursor, which is correctible\nby switching consoles.  Fix this minor bug.\n\nSigned-off-by: Antonino Daplas \u003cadaplas@pol.net\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "3e7e241f8c5c87cc3685364feface081c9fa3648",
      "tree": "43ea46cfec4da31a505e93875feeac945bf906ce",
      "parents": [
        "92476d7fc0326a409ab1d3864a04093a6be9aca7"
      ],
      "author": {
        "name": "Eric W. Biederman",
        "email": "ebiederm@xmission.com",
        "time": "Fri Mar 31 02:31:43 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Fri Mar 31 12:19:00 2006 -0800"
      },
      "message": "[PATCH] dcache: Add helper d_hash_and_lookup\n\nIt is very common to hash a dentry and then to call lookup.  If we take fs\nspecific hash functions into account the full hash logic can get ugly.\nFurther full_name_hash as an inline function is almost 100 bytes on x86 so\nhaving a non-inline choice in some cases can measurably decrease code size.\n\nSigned-off-by: Eric W. Biederman \u003cebiederm@xmission.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "92476d7fc0326a409ab1d3864a04093a6be9aca7",
      "tree": "ea50a5a31522492d9915e0763a7adc6ac87c4fbc",
      "parents": [
        "8c7904a00b06d2ee51149794b619e07369fcf9d4"
      ],
      "author": {
        "name": "Eric W. Biederman",
        "email": "ebiederm@xmission.com",
        "time": "Fri Mar 31 02:31:42 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Fri Mar 31 12:19:00 2006 -0800"
      },
      "message": "[PATCH] pidhash: Refactor the pid hash table\n\nSimplifies the code, reduces the need for 4 pid hash tables, and makes the\ncode more capable.\n\nIn the discussions I had with Oleg it was felt that to a large extent the\ncleanup itself justified the work.  With struct pid being dynamically\nallocated meant we could create the hash table entry when the pid was\nallocated and free the hash table entry when the pid was freed.  Instead of\nplaying with the hash lists when ever a process would attach or detach to a\nprocess.\n\nFor myself the fact that it gave what my previous task_ref patch gave for free\nwith simpler code was a big win.  The problem is that if you hold a reference\nto struct task_struct you lock in 10K of low memory.  If you do that in a user\ncontrollable way like /proc does, with an unprivileged but hostile user space\napplication with typical resource limits of 1000 fds and 100 processes I can\ntrigger the OOM killer by consuming all of low memory with task structs, on a\nmachine wight 1GB of low memory.\n\nIf I instead hold a reference to struct pid which holds a pointer to my\ntask_struct, I don\u0027t suffer from that problem because struct pid is 2 orders\nof magnitude smaller.  In fact struct pid is small enough that most other\nkernel data structures dwarf it, so simply limiting the number of referring\ndata structures is enough to prevent exhaustion of low memory.\n\nThis splits the current struct pid into two structures, struct pid and struct\npid_link, and reduces our number of hash tables from PIDTYPE_MAX to just one.\nstruct pid_link is the per process linkage into the hash tables and lives in\nstruct task_struct.  struct pid is given an indepedent lifetime, and holds\npointers to each of the pid types.\n\nThe independent life of struct pid simplifies attach_pid, and detach_pid,\nbecause we are always manipulating the list of pids and not the hash table.\nIn addition in giving struct pid an indpendent life it makes the concept much\nmore powerful.\n\nKernel data structures can now embed a struct pid * instead of a pid_t and\nnot suffer from pid wrap around problems or from keeping unnecessarily\nlarge amounts of memory allocated.\n\nSigned-off-by: Eric W. Biederman \u003cebiederm@xmission.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "8c7904a00b06d2ee51149794b619e07369fcf9d4",
      "tree": "c995150254e17dfda6e1679c3249343586e178cb",
      "parents": [
        "e4e5d3fc80d26ed26ebe42907b224f08d7eccfbf"
      ],
      "author": {
        "name": "Eric W. Biederman",
        "email": "ebiederm@xmission.com",
        "time": "Fri Mar 31 02:31:37 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Fri Mar 31 12:18:59 2006 -0800"
      },
      "message": "[PATCH] task: RCU protect task-\u003eusage\n\nA big problem with rcu protected data structures that are also reference\ncounted is that you must jump through several hoops to increase the reference\ncount.  I think someone finally implemented atomic_inc_not_zero(\u0026count) to\nautomate the common case.  Unfortunately this means you must special case the\nrcu access case.\n\nWhen data structures are only visible via rcu in a manner that is not\ndetermined by the reference count on the object (i.e.  tasks are visible until\ntheir zombies are reaped) there is a much simpler technique we can employ.\nSimply delaying the decrement of the reference count until the rcu interval is\nover.\n\nWhat that means is that the proc code that looks up a task and later\nwants to sleep can now do:\n\nrcu_read_lock();\ntask \u003d find_task_by_pid(some_pid);\nif (task) {\n\tget_task_struct(task);\n}\nrcu_read_unlock();\n\nThe effect on the rest of the kernel is that put_task_struct becomes cheaper\nand immediate, and in the case where the task has been reaped it frees the\ntask immediate instead of unnecessarily waiting an until the rcu interval is\nover.\n\nCleanup of task_struct does not happen when its reference count drops to\nzero, instead cleanup happens when release_task is called.  Tasks can only\nbe looked up via rcu before release_task is called.  All rcu protected\nmembers of task_struct are freed by release_task.\n\nTherefore we can move call_rcu from put_task_struct into release_task.  And\nwe can modify release_task to not immediately release the reference count\nbut instead have it call put_task_struct from the function it gives to\ncall_rcu.\n\nThe end result:\n\n- get_task_struct is safe in an rcu context where we have just looked\n  up the task.\n\n- put_task_struct() simplifies into its old pre rcu self.\n\nThis reorganization also makes put_task_struct uncallable from modules as\nit is not exported but it does not appear to be called from any modules so\nthis should not be an issue, and is trivially fixed.\n\nSigned-off-by: Eric W. Biederman \u003cebiederm@xmission.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "e4e5d3fc80d26ed26ebe42907b224f08d7eccfbf",
      "tree": "081fc0bb38f91caa3b546ae030c03b87e3807b04",
      "parents": [
        "158d9ebd19280582da172626ad3edda1a626dace"
      ],
      "author": {
        "name": "Herbert Poetzl",
        "email": "herbert@13thfloor.at",
        "time": "Fri Mar 31 02:31:35 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Fri Mar 31 12:18:59 2006 -0800"
      },
      "message": "[PATCH] cleanup in proc_check_chroot()\n\nproc_check_chroot() does the check in a very unintuitive way (keeping a\ncopy of the argument, then modifying the argument), and has uncommented\nsideeffects.\n\nSigned-off-by: Herbert Poetzl \u003cherbert@13thfloor.at\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "158d9ebd19280582da172626ad3edda1a626dace",
      "tree": "5b821a6faf28d136b65ae30a56e7f731adc11c28",
      "parents": [
        "390e2ff07712468ce6600a43aa91e897b056ce12"
      ],
      "author": {
        "name": "Andrew Morton",
        "email": "akpm@osdl.org",
        "time": "Fri Mar 31 02:31:34 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Fri Mar 31 12:18:59 2006 -0800"
      },
      "message": "[PATCH] resurrect __put_task_struct\n\nThis just got nuked in mainline.  Bring it back because Eric\u0027s patches use it.\n\nCc: \"Eric W. Biederman\" \u003cebiederm@xmission.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "390e2ff07712468ce6600a43aa91e897b056ce12",
      "tree": "fb92d3c2218fa3e41078d1b5e103892ac7e95117",
      "parents": [
        "9741ef964dc8bfeb6520825df9fed8f538c3336e"
      ],
      "author": {
        "name": "Eric W. Biederman",
        "email": "ebiederm@xmission.com",
        "time": "Fri Mar 31 02:31:33 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Fri Mar 31 12:18:59 2006 -0800"
      },
      "message": "[PATCH] Make setsid() more robust\n\nThe core problem: setsid fails if it is called by init.  The effect in 2.6.16\nand the earlier kernels that have this problem is that if you do a \"ps -j 1 or\nps -ej 1\" you will see that init and several of it\u0027s children have process\ngroup and session \u003d\u003d 0.  Instead of process group \u003d\u003d session \u003d\u003d 1.  Despite\ninit calling setsid.\n\nThe reason it fails is that daemonize calls set_special_pids(1,1) on kernel\nthreads that are launched before /sbin/init is called.\n\nThe only remaining effect in that current-\u003esignal-\u003eleader \u003d\u003d 0 for init\ninstead of 1.  And the setsid call fails.  No one has noticed because\n/sbin/init does not check the return value of setsid.\n\nIn 2.4 where we don\u0027t have the pidhash table, and daemonize doesn\u0027t exist\nsetsid actually works for init.\n\nI care a lot about pid \u003d\u003d 1 not being a special case that we leave broken,\nbecause of the container/jail work that I am doing.\n\n- Carefully allow init (pid \u003d\u003d 1) to call setsid despite the kernel using\n  its session.\n\n- Use find_task_by_pid instead of find_pid because find_pid taking a\n  pidtype is going away.\n\nSigned-off-by: Eric W. Biederman \u003cebiederm@xmission.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "9741ef964dc8bfeb6520825df9fed8f538c3336e",
      "tree": "6cc09d6b10a9ea9119a3a73e226300d747008bfe",
      "parents": [
        "d425b274ba83ba4e7746a40446ec0ba3267de51f"
      ],
      "author": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Fri Mar 31 02:31:32 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Fri Mar 31 12:18:59 2006 -0800"
      },
      "message": "[PATCH] futex: check and validate timevals\n\nThe futex timeval is not checked for correctness.  The change does not\nbreak existing applications as the timeval is supplied by glibc (and glibc\nalways passes a correct value), but the glibc-internal tests for this\nfunctionality fail.\n\nSigned-off-by: Thomas Gleixner \u003ctglx@tglx.de\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "d425b274ba83ba4e7746a40446ec0ba3267de51f",
      "tree": "73d3342be7ba8ef8d18a8c3cc9fea6e026e2bffa",
      "parents": [
        "7c4bb1f9b3788309e1159961c606ba0bdf7ed382"
      ],
      "author": {
        "name": "Con Kolivas",
        "email": "kernel@kolivas.org",
        "time": "Fri Mar 31 02:31:29 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Fri Mar 31 12:18:59 2006 -0800"
      },
      "message": "[PATCH] sched: activate SCHED BATCH expired\n\nTo increase the strength of SCHED_BATCH as a scheduling hint we can\nactivate batch tasks on the expired array since by definition they are\nlatency insensitive tasks.\n\nSigned-off-by: Con Kolivas \u003ckernel@kolivas.org\u003e\nAcked-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "7c4bb1f9b3788309e1159961c606ba0bdf7ed382",
      "tree": "47051dcde0cc24ec123e9ae3043465cc677a8c06",
      "parents": [
        "5138930e6a69f1c7851a82d7cedaa01fad029fcf"
      ],
      "author": {
        "name": "Con Kolivas",
        "email": "kernel@kolivas.org",
        "time": "Fri Mar 31 02:31:29 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Fri Mar 31 12:18:59 2006 -0800"
      },
      "message": "[PATCH] sched: remove on runqueue requeueing\n\nOn runqueue time is used to elevate priority in schedule().\n\nIn the code it currently requeues tasks even if their priority is not\nelevated, which would end up placing them at the end of their runqueue\narray effectively delaying them instead of improving their priority.\n\nBug spotted by Mike Galbraith \u003cefault@gmx.de\u003e\n\nThis patch removes this requeueing.\n\nSigned-off-by: Con Kolivas \u003ckernel@kolivas.org\u003e\nAcked-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: Mike Galbraith \u003cefault@gmx.de\u003e\nCc: Nick Piggin \u003cnickpiggin@yahoo.com.au\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "5138930e6a69f1c7851a82d7cedaa01fad029fcf",
      "tree": "cef55be8eb6d798188127f2ca7f53ed25ef88422",
      "parents": [
        "e72ff0bb2c163eb13014ba113701bd42dab382fe"
      ],
      "author": {
        "name": "Con Kolivas",
        "email": "kernel@kolivas.org",
        "time": "Fri Mar 31 02:31:27 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Fri Mar 31 12:18:59 2006 -0800"
      },
      "message": "[PATCH] sched: include noninteractive sleep in idle detect\n\nTasks waiting in SLEEP_NONINTERACTIVE state can now get to best priority so\nthey need to be included in the idle detection code.\n\nSigned-off-by: Con Kolivas \u003ckernel@kolivas.org\u003e\nAcked-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "e72ff0bb2c163eb13014ba113701bd42dab382fe",
      "tree": "6e4b8063442b3e020af474c2d4be124f01b0cb88",
      "parents": [
        "e7c38cb49c6cc05bc11f70d9e9889da1c4a0d37f"
      ],
      "author": {
        "name": "Con Kolivas",
        "email": "kernel@kolivas.org",
        "time": "Fri Mar 31 02:31:26 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Fri Mar 31 12:18:58 2006 -0800"
      },
      "message": "[PATCH] sched: dont decrease idle sleep avg\n\nWe watch for tasks that sleep extended periods and don\u0027t allow one single\nprolonged sleep period from elevating priority to maximum bonus to prevent cpu\nbound tasks from getting high priority with single long sleeps.  There is a\nbug in the current code that also penalises tasks that already have high\npriority.  Correct that bug.\n\nSigned-off-by: Con Kolivas \u003ckernel@kolivas.org\u003e\nAcked-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "e7c38cb49c6cc05bc11f70d9e9889da1c4a0d37f",
      "tree": "538e26f5ba32d052083dea53536c5366978838c8",
      "parents": [
        "3dee386e14045484a6c41c8f03a263f9d79de740"
      ],
      "author": {
        "name": "Con Kolivas",
        "email": "kernel@kolivas.org",
        "time": "Fri Mar 31 02:31:25 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Fri Mar 31 12:18:58 2006 -0800"
      },
      "message": "[PATCH] sched: make task_noninteractive use sleep_type\n\nAlterations to the pipe code in the kernel made it possible for relative\nstarvation to occur with tasks that slept waiting on a pipe getting unfair\npriority bonuses even if they were otherwise fully cpu bound so the\nTASK_NONINTERACTIVE flag was introduced which prevented any change to\nsleep_avg while sleeping waiting on a pipe.  This change also leads to the\nconverse though, preventing any priority boost from occurring in truly\ninteractive tasks that wait on pipes.\n\nConvert the TASK_NONINTERACTIVE flag to set sleep_type to SLEEP_NONINTERACTIVE\nwhich will allow a linear bonus to priority based on sleep time thus allowing\ninteractive tasks to get high priority if they sleep enough.\n\nSigned-off-by: Con Kolivas \u003ckernel@kolivas.org\u003e\nAcked-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "3dee386e14045484a6c41c8f03a263f9d79de740",
      "tree": "4b1643508ad94981e8d4deb5136d0a626e60932d",
      "parents": [
        "db1b1fefc2cecbff2e4214062fa8c680cb6e7b7d"
      ],
      "author": {
        "name": "Con Kolivas",
        "email": "kernel@kolivas.org",
        "time": "Fri Mar 31 02:31:23 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Fri Mar 31 12:18:58 2006 -0800"
      },
      "message": "[PATCH] sched: cleanup task_activated()\n\nThe activated flag in task_struct is used to track different sleep types and\nits usage is somewhat obfuscated.  Convert the variable to an enum with more\ndescriptive names without altering the function.\n\nSigned-off-by: Con Kolivas \u003ckernel@kolivas.org\u003e\nAcked-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "db1b1fefc2cecbff2e4214062fa8c680cb6e7b7d",
      "tree": "ad8e68882f7c36216e16ab264101c5da96ccd5c9",
      "parents": [
        "3055addadbe9bfb2365006a1c13fd342a8d30d52"
      ],
      "author": {
        "name": "Jack Steiner",
        "email": "steiner@sgi.com",
        "time": "Fri Mar 31 02:31:21 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Fri Mar 31 12:18:58 2006 -0800"
      },
      "message": "[PATCH] sched: reduce overhead of calc_load\n\nCurrently, count_active_tasks() calls both nr_running() \u0026\nnr_interruptible().  Each of these functions does a \"for_each_cpu\" \u0026 reads\nvalues from the runqueue of each cpu.  Although this is not a lot of\ninstructions, each runqueue may be located on different node.  Depending on\nthe architecture, a unique TLB entry may be required to access each\nrunqueue.\n\nSince there may be more runqueues than cpu TLB entries, a scan of all\nrunqueues can trash the TLB.  Each memory reference incurs a TLB miss \u0026\nrefill.\n\nIn addition, the runqueue cacheline that contains nr_running \u0026\nnr_uninterruptible may be evicted from the cache between the two passes.\nThis causes unnecessary cache misses.\n\nCombining nr_running() \u0026 nr_interruptible() into a single function\nsubstantially reduces the TLB \u0026 cache misses on large systems.  This should\nhave no measureable effect on smaller systems.\n\nOn a 128p IA64 system running a memory stress workload, the new function\nreduced the overhead of calc_load() from 605 usec/call to 324 usec/call.\n\nSigned-off-by: Jack Steiner \u003csteiner@sgi.com\u003e\nAcked-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "3055addadbe9bfb2365006a1c13fd342a8d30d52",
      "tree": "0efcbd4a4e1d129beeb2dee3649951bea0462052",
      "parents": [
        "669d7868ae414cdb7b7e5df375dc8e4b47f26f6d"
      ],
      "author": {
        "name": "Dimitri Sivanich",
        "email": "sivanich@sgi.com",
        "time": "Fri Mar 31 02:31:20 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Fri Mar 31 12:18:58 2006 -0800"
      },
      "message": "[PATCH] hrtimer: call get_softirq_time() only when necessary in run_hrtimer_queue()\n\nIt seems that run_hrtimer_queue() is calling get_softirq_time() more\noften than it needs to.\n\nWith this patch, it only calls get_softirq_time() if there\u0027s a\npending timer.\n\nSigned-off-by: Dimitri Sivanich \u003csivanich@sgi.com\u003e\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "669d7868ae414cdb7b7e5df375dc8e4b47f26f6d",
      "tree": "0c78ee0833e10d10a5d2f9fa9b9fe7f71fda6eb7",
      "parents": [
        "00362e33f65f1cb5d15e62ea5509520ce2770360"
      ],
      "author": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Fri Mar 31 02:31:19 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Fri Mar 31 12:18:58 2006 -0800"
      },
      "message": "[PATCH] hrtimer: use generic sleeper for nanosleep\n\nReplace the nanosleep private sleeper functionality by the generic hrtimer\nsleeper.\n\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "00362e33f65f1cb5d15e62ea5509520ce2770360",
      "tree": "02694b1416f3d98c4eebaeca7864c7fd3bad6fa0",
      "parents": [
        "2bfb646cdf348cb77c572f06d5b9d17ea205c7e2"
      ],
      "author": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Fri Mar 31 02:31:17 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Fri Mar 31 12:18:58 2006 -0800"
      },
      "message": "[PATCH] hrtimer: create generic sleeper\n\nThe removal of the data field in the hrtimer structure enforces the\nembedding of the timer into another data structure.  nanosleep now uses a\nprivate implementation of the most common used timer callback function\n(simple task wakeup).\n\nIn order to avoid the reimplentation of such functionality all over the\nplace a generic hrtimer_sleeper functionality is created.\n\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "2bfb646cdf348cb77c572f06d5b9d17ea205c7e2",
      "tree": "a26ed9aedb7af67d9421b14ad6cdd0714d91195f",
      "parents": [
        "03731fbdd09f8db4af86dbf437e3169fb1920d5e"
      ],
      "author": {
        "name": "Richard Purdie",
        "email": "rpurdie@rpsys.net",
        "time": "Fri Mar 31 02:31:16 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Fri Mar 31 12:18:57 2006 -0800"
      },
      "message": "[PATCH] LED: Add IDE disk activity LED trigger\n\nAdd an LED trigger for IDE disk activity to the ide-disk driver.\n\nSigned-off-by: Richard Purdie \u003crpurdie@rpsys.net\u003e\nAcked-by: Bartlomiej Zolnierkiewicz \u003cB.Zolnierkiewicz@elka.pw.edu.pl\u003e\nCc: Alan Cox \u003calan@lxorguk.ukuu.org.uk\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "03731fbdd09f8db4af86dbf437e3169fb1920d5e",
      "tree": "2066c497529cdf4a411186d057005c6953975aa5",
      "parents": [
        "8fe833c1b010489b71b082e553b1dfa80ef81061"
      ],
      "author": {
        "name": "Richard Purdie",
        "email": "rpurdie@rpsys.net",
        "time": "Fri Mar 31 02:31:15 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Fri Mar 31 12:18:57 2006 -0800"
      },
      "message": "[PATCH] Ensure ide-taskfile calls any driver specific end_request function\n\nEnsure ide-taskfile.c calls any driver specific end_request function if\npresent.\n\nSigned-off-by: Richard Purdie \u003crpurdie@rpsys.net\u003e\nCc: Alan Cox \u003calan@lxorguk.ukuu.org.uk\u003e\nAcked-by: Bartlomiej Zolnierkiewicz \u003cB.Zolnierkiewicz@elka.pw.edu.pl\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "8fe833c1b010489b71b082e553b1dfa80ef81061",
      "tree": "b5d051feb49921a99bf55c8c366dc4ce4d08d29e",
      "parents": [
        "6d0cf3e0480f6be9232854387794443d1a904d6d"
      ],
      "author": {
        "name": "Richard Purdie",
        "email": "rpurdie@rpsys.net",
        "time": "Fri Mar 31 02:31:14 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Fri Mar 31 12:18:57 2006 -0800"
      },
      "message": "[PATCH] LED: add NAND MTD activity LED trigger\n\nCc: Russell King \u003crmk@arm.linux.org.uk\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "6d0cf3e0480f6be9232854387794443d1a904d6d",
      "tree": "2d787a372cb9bd5bf01e6197cabfd0061adfa513",
      "parents": [
        "6a0c51bfce5ae4058366017d861aea6564d25aee"
      ],
      "author": {
        "name": "Dirk Opfer",
        "email": "dirk@opfer-online.de",
        "time": "Fri Mar 31 02:31:12 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Fri Mar 31 12:18:57 2006 -0800"
      },
      "message": "[PATCH] LED: add device support for tosa\n\nAdds LED drivers for LEDs found on the Sharp Zaurus c6000 model (tosa).\n\nSigned-off-by: Dirk Opfer \u003cdirk@opfer-online.de\u003e\nSigned-off-by: Richard Purdie \u003crpurdie@rpsys.net\u003e\nCc: Russell King \u003crmk@arm.linux.org.uk\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "6a0c51bfce5ae4058366017d861aea6564d25aee",
      "tree": "d8ba880b4b4da416382fffd386e8e62db92cf9d3",
      "parents": [
        "4d3cb35476903768541f79e61f171e79e6065098"
      ],
      "author": {
        "name": "John Bowler",
        "email": "jbowler@acm.org",
        "time": "Fri Mar 31 02:31:11 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Fri Mar 31 12:18:57 2006 -0800"
      },
      "message": "[PATCH] LED: add LED device support for ixp4xx devices\n\nNEW_LEDS support for ixp4xx boards where LEDs are connected to the GPIO lines.\n\nThis includes a new generic ixp4xx driver (leds-ixp4xx-gpio.c name\n\"IXP4XX-GPIO-LED\")\n\nSigned-off-by: John Bowler \u003cjbowler@acm.org\u003e\nSigned-off-by: Richard Purdie \u003crpurdie@rpsys.net\u003e\nCc: Russell King \u003crmk@arm.linux.org.uk\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "4d3cb35476903768541f79e61f171e79e6065098",
      "tree": "0fef0f8fe697dd4a060c97d36fea0320158a8a03",
      "parents": [
        "3179108daaaccbf28b17d6d8b0e06abf0eee6d9f"
      ],
      "author": {
        "name": "Richard Purdie",
        "email": "rpurdie@rpsys.net",
        "time": "Fri Mar 31 02:31:10 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Fri Mar 31 12:18:57 2006 -0800"
      },
      "message": "[PATCH] LED: add LED device support for locomo devices\n\nAdds an LED driver for LEDs exported by the Sharp LOCOMO chip as found on some\nmodels of Sharp Zaurus.\n\nSigned-off-by: Richard Purdie \u003crpurdie@rpsys.net\u003e\nCc: Russell King \u003crmk@arm.linux.org.uk\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "3179108daaaccbf28b17d6d8b0e06abf0eee6d9f",
      "tree": "6e8f1e9b1d78f1c08bcd7dcfd5f9d4321849d3ec",
      "parents": [
        "181bf8aa68a1d062d7f98abb0f1cb8871910320c"
      ],
      "author": {
        "name": "Richard Purdie",
        "email": "rpurdie@rpsys.net",
        "time": "Fri Mar 31 02:31:09 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Fri Mar 31 12:18:57 2006 -0800"
      },
      "message": "[PATCH] LED: add LED device support for the zaurus corgi and spitz models\n\nAdds LED drivers for LEDs found on the Sharp Zaurus c7x0 (corgi, shepherd,\nhusky) and cxx00 (akita, spitz, borzoi) models.\n\nSigned-off-by: Richard Purdie \u003crpurdie@rpsys.net\u003e\nCc: Russell King \u003crmk@arm.linux.org.uk\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "181bf8aa68a1d062d7f98abb0f1cb8871910320c",
      "tree": "939966fe822d7aa20ed801e26a052444f12c94ca",
      "parents": [
        "6655c6fe575b720eb8cb6c143ae10995a7aa1916"
      ],
      "author": {
        "name": "Richard Purdie",
        "email": "rpurdie@rpsys.net",
        "time": "Fri Mar 31 02:31:08 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Fri Mar 31 12:18:57 2006 -0800"
      },
      "message": "[PATCH] LED: add sharp charger status LED trigger\n\nAdd an LED trigger for the charger status as found on the Sharp Zaurus series\nof devices.\n\nSigned-off-by: Richard Purdie \u003crpurdie@rpsys.net\u003e\nAcked-by: Pavel Machek \u003cpavel@suse.cz\u003e\nCc: Russell King \u003crmk@arm.linux.org.uk\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "6655c6fe575b720eb8cb6c143ae10995a7aa1916",
      "tree": "72b36d5346ef1cdd50417b8b4accb4d5b58d003a",
      "parents": [
        "c3bc9956ec52fb2c70f29aa894d8eec766116584"
      ],
      "author": {
        "name": "Richard Purdie",
        "email": "rpurdie@rpsys.net",
        "time": "Fri Mar 31 02:31:07 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Fri Mar 31 12:18:57 2006 -0800"
      },
      "message": "[PATCH] LED: add LED timer trigger\n\nAdd an example of a complex LED trigger in the form of a generic timer which\ntriggers the LED its attached to at a user specified frequency and duty cycle.\n\nSigned-off-by: Richard Purdie \u003crpurdie@rpsys.net\u003e\nCc: Russell King \u003crmk@arm.linux.org.uk\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "c3bc9956ec52fb2c70f29aa894d8eec766116584",
      "tree": "c93aa56e6793cfa283d13a28cfa6c02a30f6c794",
      "parents": [
        "c72a1d608dd0eb3d553a08bfdf1c0041bebaa8a0"
      ],
      "author": {
        "name": "Richard Purdie",
        "email": "rpurdie@rpsys.net",
        "time": "Fri Mar 31 02:31:05 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Fri Mar 31 12:18:56 2006 -0800"
      },
      "message": "[PATCH] LED: add LED trigger tupport\n\nAdd support for LED triggers to the LED subsystem.  \"Triggers\" are events\nwhich change the state of an LED.  Two kinds of trigger are available, simple\nones which can be added to exising code with minimum disruption and complex\nones for implementing new or more complex functionality.\n\nSigned-off-by: Richard Purdie \u003crpurdie@rpsys.net\u003e\nCc: Russell King \u003crmk@arm.linux.org.uk\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "c72a1d608dd0eb3d553a08bfdf1c0041bebaa8a0",
      "tree": "56715f0e0af8a9c33725f3db2f14cf7f870ad46d",
      "parents": [
        "75c1d31d9ea71025b73430c696b727e8aa15872d"
      ],
      "author": {
        "name": "Richard Purdie",
        "email": "rpurdie@rpsys.net",
        "time": "Fri Mar 31 02:31:04 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Fri Mar 31 12:18:56 2006 -0800"
      },
      "message": "[PATCH] LED: add LED class\n\nAdd the foundations of a new LEDs subsystem.  This patch adds a class which\npresents LED devices within sysfs and allows their brightness to be\ncontrolled.\n\nSigned-off-by: Richard Purdie \u003crpurdie@rpsys.net\u003e\nCc: Russell King \u003crmk@arm.linux.org.uk\u003e\nCc: Greg KH \u003cgreg@kroah.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "75c1d31d9ea71025b73430c696b727e8aa15872d",
      "tree": "7f63ad1a6e79467ceb04fd7113538156bc80cfd0",
      "parents": [
        "7529c301165079d0f149d0e54724829e602f8fc0"
      ],
      "author": {
        "name": "Richard Purdie",
        "email": "rpurdie@rpsys.net",
        "time": "Fri Mar 31 02:31:03 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Fri Mar 31 12:18:56 2006 -0800"
      },
      "message": "[PATCH] LED: class documentation\n\nThe LED class/subsystem takes John Lenz\u0027s work and extends and alters it to\ngive what I think should be a fairly universal LED implementation.\n\nThe series consists of several logical units:\n\n* LED Core + Class implementation\n* LED Trigger Core implementation\n* LED timer trigger (example of a complex trigger)\n* LED device drivers for corgi, spitz and tosa Zaurus models\n* LED device driver for locomo LEDs\n* LED device driver for ARM ixp4xx LEDs\n* Zaurus charging LED trigger\n* IDE disk activity LED trigger\n* NAND MTD activity LED trigger\n\nWhy?\n\u003d\u003d\u003d\u003d\n\nLEDs are really simple devices usually amounting to a GPIO that can be turned\non and off so why do we need all this code?  On handheld or embedded devices\nthey\u0027re an important part of an often limited user interface.  Both users and\ndevelopers want to be able to control and configure what the LED does and the\nnumber of different things they\u0027d potentially want the LED to show is large.\n\nA subsystem is needed to try and provide all this different functionality in\nan architecture independent, simple but complete, generic and scalable manner.\n\nThe alternative is for everyone to implement just what they need hidden away\nin different corners of the kernel source tree and to provide an inconsistent\ninterface to userspace.\n\nOther Implementations\n\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\n\nI\u0027m aware of the existing arm led implementation.  Currently the new subsystem\nand the arm code can coexist quite happily.  Its up to the arm community to\ndecide whether this new interface is acceptable to them.  As far as I can see,\nthe new interface can do everything the existing arm implementation can with\nthe advantage that the new code is architecture independent and much more\ngeneric, configurable and scalable.\n\nI\u0027m prepared to make the conversion to the LED subsystem (or assist with it)\nif appropriate.\n\nImplementation Details\n\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\n\nI\u0027ve stripped a lot of code out of John\u0027s original LED class.  Colours were\nremoved as LED colour is now part of the device name.  Multiple colours are to\nbe handled as multiple led devices.  This means you get full control over each\ncolour.  I also removed the LED hardware timer code as the generic timer isn\u0027t\ngoing to add much overhead and is just as useful.  I also decided to have the\nLED core track the current LED status (to ease suspend/resume handling)\nremoving the need for brightness_get implementations in the LED drivers.\n\nAn underlying design philosophy is simplicity.  The aim is to keep a small\namount of code giving as much functionality as possible.\n\nThe major new idea is the led \"trigger\".  A trigger is a source of led events.\n Triggers can either be simple or complex.  A simple trigger isn\u0027t\nconfigurable and is designed to slot into existing subsystems with minimal\nadditional code.  Examples are the ide-disk, nand-disk and zaurus-charging\ntriggers.  With leds disabled, the code optimises away.  Examples are\nnand-disk and ide-disk.\n\nComplex triggers whilst available to all LEDs have LED specific parameters and\nwork on a per LED basis.  The timer trigger is an example.\n\nYou can change triggers in a similar manner to the way an IO scheduler is\nchosen (via /sys/class/leds/somedevice/trigger).\n\nSo far there are only a handful of examples but it should easy to add further\nLED triggers without too much interference into other subsystems.\n\nKnown Issues\n\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\n\nThe LED Trigger core cannot be a module as the simple trigger functions would\ncause nightmare dependency issues.  I see this as a minor issue compared to\nthe benefits the simple trigger functionality brings.  The rest of the LED\nsubsystem can be modular.\n\nSome leds can be programmed to flash in hardware.  As this isn\u0027t a generic LED\ndevice property, I think this should be exported as a device specific sysfs\nattribute rather than part of the class if this functionality is required (eg.\n to keep the led flashing whilst the device is suspended).\n\nFuture Development\n\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\n\nAt the moment, a trigger can\u0027t be created specifically for a single LED.\nThere are a number of cases where a trigger might only be mappable to a\nparticular LED.  The addition of triggers provided by the LED driver should\ncover this option and be possible to add without breaking the current\ninterface.\n\nA CPU activity trigger similar to that found in the arm led implementation\nshould be trivial to add.\n\nThis patch:\n\nAdd some brief documentation of the design decisions behind the LED class and\nhow it appears to users.\n\nSigned-off-by: Richard Purdie \u003crpurdie@rpsys.net\u003e\nCc: Russell King \u003crmk@arm.linux.org.uk\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "7529c301165079d0f149d0e54724829e602f8fc0",
      "tree": "56e0ae4caed9675f230e63274cd3c9258eaaca44",
      "parents": [
        "0ca07731e495584bd84dca15a0f065470d594ec4"
      ],
      "author": {
        "name": "Andrew Morton",
        "email": "akpm@osdl.org",
        "time": "Fri Mar 31 02:30:59 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Fri Mar 31 12:18:56 2006 -0800"
      },
      "message": "[PATCH] modules: permit Dual-MIT/GPL licenses\n\nOne of the LEDs driver files wants to use this.\n\nProbably drivers/mtd/maps/ipaq-flash.c wants to convert as well - right now\nit\u0027ll be tainting the kernel.\n\nCc: David Woodhouse \u003cdwmw2@infradead.org\u003e\nCc: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nCc: John Bowler \u003cjbowler@acm.org\u003e\nCc: \"\u0027Richard Purdie\u0027\" \u003crpurdie@rpsys.net\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "0ca07731e495584bd84dca15a0f065470d594ec4",
      "tree": "d043e8b64b43361051e1e6b40ee37382591825df",
      "parents": [
        "d32af0fe11b1618572389723e93cf33a4cc11c81"
      ],
      "author": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Fri Mar 31 02:30:58 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Fri Mar 31 12:18:56 2006 -0800"
      },
      "message": "[PATCH] vt: add TIOCL_GETKMSGREDIRECT\n\nAdd TIOCL_GETKMSGREDIRECT needed by the userland suspend tool to get the\ncurrent value of kmsg_redirect from the kernel so that it can save it and\nrestore it after resume.\n\nSigned-off-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\nAcked-by: Pavel Machek \u003cpavel@suse.cz\u003e\nCc: Michael Kerrisk \u003cmtk-manpages@gmx.net\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "d32af0fe11b1618572389723e93cf33a4cc11c81",
      "tree": "cf0707e363626e24245dda57fc7c5851d89b7eeb",
      "parents": [
        "b0b4ed728cdd0c7204392b0c18857e4a99917aa5"
      ],
      "author": {
        "name": "Jesper Juhl",
        "email": "jesper.juhl@gmail.com",
        "time": "Fri Mar 31 02:30:57 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Fri Mar 31 12:18:56 2006 -0800"
      },
      "message": "[PATCH] ISDN: fix a few memory leaks in sc_ioctl()\n\nFix a few memory leaks in drivers/isdn/sc/ioctl.c::sc_ioctl()\n\nSigned-off-by: Jesper Juhl \u003cjesper.juhl@gmail.com\u003e\nAcked-by: Karsten Keil \u003ckkeil@suse.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "b0b4ed728cdd0c7204392b0c18857e4a99917aa5",
      "tree": "cfb0dd03b93ac310f5f02a0452cb83bf7e6628ef",
      "parents": [
        "993dfa8776308dcfd311cf77a3bbed4aa11e9868"
      ],
      "author": {
        "name": "Tobias Klauser",
        "email": "tklauser@nuerscht.ch",
        "time": "Fri Mar 31 02:30:56 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Fri Mar 31 12:18:56 2006 -0800"
      },
      "message": "[PATCH] drivers/char/[i]stallion: Clean up kmalloc usage\n\nDelete two useless kmalloc wrappers and use kmalloc/kzalloc.  Some weird\nNULL checks are also simplified.\n\nSigned-off-by: Tobias Klauser \u003ctklauser@nuerscht.ch\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "993dfa8776308dcfd311cf77a3bbed4aa11e9868",
      "tree": "2e90eabd31d3e8db1f2f3c95494109ff29a78237",
      "parents": [
        "7a2bd3f7efa86e8b56482a8f8948c8b222064a67"
      ],
      "author": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Fri Mar 31 02:30:55 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Fri Mar 31 12:18:56 2006 -0800"
      },
      "message": "[PATCH] fs/locks.c: Fix sys_flock() race\n\nsys_flock() currently has a race which can result in a double free in the\nmulti-thread case.\n\nThread 1\t\t\tThread 2\n\nsys_flock(file, LOCK_EX)\n\t\t\t\tsys_flock(file, LOCK_UN)\n\nIf Thread 2 removes the lock from inode-\u003ei_lock before Thread 1 tests for\nlist_empty(\u0026lock-\u003efl_link) at the end of sys_flock, then both threads will\nend up calling locks_free_lock for the same lock.\n\nFix is to make flock_lock_file() do the same as posix_lock_file(), namely\nto make a copy of the request, so that the caller can always free the lock.\n\nThis also has the side-effect of fixing up a reference problem in the\nlockd handling of flock.\n\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "7a2bd3f7efa86e8b56482a8f8948c8b222064a67",
      "tree": "34a90c6b4f08efb1b7f3ca6face4879164c28e15",
      "parents": [
        "094e320d761dae5816d8faa695b0509eea79c108"
      ],
      "author": {
        "name": "Amy Griffis",
        "email": "amy.griffis@hp.com",
        "time": "Fri Mar 31 02:30:54 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Fri Mar 31 12:18:55 2006 -0800"
      },
      "message": "[PATCH] inotify: IN_DELETE events missing\n\nIN_DELETE events are no longer generated for the removal of a file from a\nwatched directory.\n\nThis seems to be a result of clearing DCACHE_INOTIFY_PARENT_WATCHED in\nd_delete() directly before calling fsnotify_nameremove().\n\nAssuming the flag doesn\u0027t need to be cleared before dentry_iput(), this\nshould do the trick.\n\nSigned-off-by: Amy Griffis \u003camy.griffis@hp.com\u003e\nCc: John McCutchan \u003cttb@tentacle.dhs.org\u003e\nAcked-by: Robert Love \u003crml@novell.com\u003e\nCc: Nick Piggin \u003cnickpiggin@yahoo.com.au\u003e\nCc: \u003cstable@kernel.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "094e320d761dae5816d8faa695b0509eea79c108",
      "tree": "5b1c8b89880f44b08ce16456f9b8961e3933e71b",
      "parents": [
        "e4e364e865b382f9d99c7fc230ec2ce7df21257a"
      ],
      "author": {
        "name": "OGAWA Hirofumi",
        "email": "hirofumi@mail.parknet.co.jp",
        "time": "Fri Mar 31 02:30:53 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Fri Mar 31 12:18:55 2006 -0800"
      },
      "message": "[PATCH] fat: kill reserved names\n\nSince these names on old MSDOS is used as device, so, current fat driver\ndoesn\u0027t allow a user to create those names.  But many OSes and even Windows\ncan create those names actually, now.\n\nThis patch removes the reserved name check.\n\nSigned-off-by: OGAWA Hirofumi \u003chirofumi@mail.parknet.co.jp\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "e4e364e865b382f9d99c7fc230ec2ce7df21257a",
      "tree": "9ff5ab54a0e40d7ad2b55d3ec48c6e175ebf50c7",
      "parents": [
        "2741a559a01e1ba9bf87285569dc1a104d134ecf"
      ],
      "author": {
        "name": "Paul Jackson",
        "email": "pj@sgi.com",
        "time": "Fri Mar 31 02:30:52 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Fri Mar 31 12:18:55 2006 -0800"
      },
      "message": "[PATCH] cpuset: memory migration interaction fix\n\nFix memory migration so that it works regardless of what cpuset the invoking\ntask is in.\n\nIf a task invoked a memory migration, by doing one of:\n\n       1) writing a different nodemask to a cpuset \u0027mems\u0027 file, or\n\n       2) writing a tasks pid to a different cpuset\u0027s \u0027tasks\u0027 file,\n          where the cpuset had its \u0027memory_migrate\u0027 option turned on, then the\n          allocation of the new pages for the migrated task(s) was constrained\n          by the invoking tasks cpuset.\n\nIf this task wasn\u0027t in a cpuset that allowed the requested memory nodes, the\nmemory migration would happen to some other nodes that were in that invoking\ntasks cpuset.  This was usually surprising and puzzling behaviour: Why didn\u0027t\nthe pages move?  Why did the pages move -there-?\n\nTo fix this, temporarilly change the invoking tasks \u0027mems_allowed\u0027 task_struct\nfield to the nodes the migrating tasks is moving to, so that new pages can be\nallocated there.\n\nSigned-off-by: Paul Jackson \u003cpj@sgi.com\u003e\nAcked-by: Christoph Lameter \u003cclameter@sgi.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "2741a559a01e1ba9bf87285569dc1a104d134ecf",
      "tree": "8c61321d5fa1a0c3517219eaa3089e223d5cd943",
      "parents": [
        "4a01c8d5be628ac20cfd432c21808d76be5813e6"
      ],
      "author": {
        "name": "Paul Jackson",
        "email": "pj@sgi.com",
        "time": "Fri Mar 31 02:30:51 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Fri Mar 31 12:18:55 2006 -0800"
      },
      "message": "[PATCH] cpuset: unsafe mm reference fix\n\nFix unsafe reference to a tasks mm struct, by moving the reference inside of a\nconvenient nearby properly guarded code block.\n\nSigned-off-by: Paul Jackson \u003cpj@sgi.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "4a01c8d5be628ac20cfd432c21808d76be5813e6",
      "tree": "040ae0d60df3993a752ce852d3e3dc036586b037",
      "parents": [
        "2cf8d82d63807c2c68adf20bb28bf502496186dd"
      ],
      "author": {
        "name": "Paul Jackson",
        "email": "pj@sgi.com",
        "time": "Fri Mar 31 02:30:50 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Fri Mar 31 12:18:55 2006 -0800"
      },
      "message": "[PATCH] cpuset: task_lock comment fix\n\nFix cpuset comment involving case of a tasks cpuset pointer being NULL.\nThanks to \"the_top_cpuset_hack\", this code no longer sees NULL task-\u003ecpuset\npointers.\n\nSigned-off-by: Paul Jackson \u003cpj@sgi.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "2cf8d82d63807c2c68adf20bb28bf502496186dd",
      "tree": "13cafaa87dafa639f3876bcda6d302266a349c88",
      "parents": [
        "09ce3512dcad0ad1d07eee0dc5ebb6d037c39c16"
      ],
      "author": {
        "name": "Andrew Morton",
        "email": "akpm@osdl.org",
        "time": "Fri Mar 31 02:30:49 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Fri Mar 31 12:18:55 2006 -0800"
      },
      "message": "[PATCH] make local_t signed\n\nlocal_t\u0027s were defined to be unsigned.  This increases confusion because\natomic_t\u0027s are signed.  The patch goes through and changes all implementations\nto use signed longs throughout.\n\nAlso, x86-64 was using 32-bit quantities for the value passed into local_add()\nand local_sub().  Fixed.\n\nAll (actually, both) existing users have been audited.\n\n(Also s/__inline__/inline/ in x86_64/local.h)\n\nCc: Andi Kleen \u003cak@muc.de\u003e\nCc: Benjamin LaHaise \u003cbcrl@kvack.org\u003e\nCc: Kyle McMartin \u003ckyle@parisc-linux.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "09ce3512dcad0ad1d07eee0dc5ebb6d037c39c16",
      "tree": "a66743dbde0e4de61a28828f72066f35ff8747be",
      "parents": [
        "0000754c27f07d5656eff17367c05dc4cfb7d965"
      ],
      "author": {
        "name": "Steffen Klassert",
        "email": "klassert@mathematik.tu-chemnitz.de",
        "time": "Fri Mar 31 02:30:48 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Fri Mar 31 12:18:55 2006 -0800"
      },
      "message": "[PATCH] 3c59x: fix networking for 10base2 NICs\n\nThe \"3c59x: use mii_check_media\" patch introduced a netif_carrier_off in\nvortex_up.  10base2 stoped working because of this.  This is removed.\n\nTx/Rx reset is back in vortex_up because the 3c900B-Combo stops working after\nchanging from half duplex to full duplex when Tx/Rx reset is done with\nvortex_timer.\n\nAlso brought back some mii stuff to be sure that it does not break something\nelse.\n\nThanks to Pete Clements \u003cclem@clem.clem-digital.net\u003e for reporting and testing.\n\nSigned-off-by: Steffen Klassert \u003cklassert@mathematik.tu-chemnitz.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "0000754c27f07d5656eff17367c05dc4cfb7d965",
      "tree": "fb96aa5860e9d29ef68cfb4d103737d9877fcd40",
      "parents": [
        "88b9adb073b7a69a54b1b14423103bc24587ebdc"
      ],
      "author": {
        "name": "Andrew Morton",
        "email": "akpm@osdl.org",
        "time": "Fri Mar 31 02:30:47 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Fri Mar 31 12:18:55 2006 -0800"
      },
      "message": "[PATCH] \"3c59x collision statistics fix\" fix\n\nThe pre-2.6.16 patch \"3c59x collision statistics fix\" accidentally caused\nvortex_error() to not run iowrite16(TxEnable, ioaddr + EL3_CMD) if we got a\nmaxCollisions interrupt but MAX_COLLISION_RESET is not set.\n\nThanks to Pete Clements \u003cclem@clem.clem-digital.net\u003e for reporting and testing.\n\nAcked-by: Steffen Klassert \u003cklassert@mathematik.tu-chemnitz.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "88b9adb073b7a69a54b1b14423103bc24587ebdc",
      "tree": "a6bc195ff41c7f1cb7902e2215fe0dd732788159",
      "parents": [
        "bb231fe3a53b2d34c1aef119613816fcb18864b1"
      ],
      "author": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Fri Mar 31 02:30:46 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Fri Mar 31 12:18:55 2006 -0800"
      },
      "message": "[PATCH] config: fix CONFIG_LFS option\n\nThe help text says that if you select CONFIG_LBD, then it will automatically\nselect CONFIG_LFS.  That isn\u0027t currently the case, so update the text.\n\n- Get rid of the cruft in the help text mentioning CONFIG_LBD\n\n- Tell unsure users to select CONFIG_LFS.\n\n- Remove the `default n\u0027.\n\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "bb231fe3a53b2d34c1aef119613816fcb18864b1",
      "tree": "55e686f0118aebedec1a6ddf52746a8a722b51cc",
      "parents": [
        "f79e2abb9bd452d97295f34376dedbec9686b986"
      ],
      "author": {
        "name": "KaiGai Kohei",
        "email": "kaigai@ak.jp.nec.com",
        "time": "Fri Mar 31 02:30:45 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Fri Mar 31 12:18:54 2006 -0800"
      },
      "message": "[PATCH] Fix pacct bug in multithreading case.\n\nI noticed a bug on the process accounting facility.  In multi-threading\nprocess, some data would be recorded incorrectly when the group_leader dies\nearlier than one or more threads.  The attached patch fixes this problem.\n\nSee below.  \u0027bugacct\u0027 is a test program that create a worker thread after 4\nseconds sleeping, then the group_leader dies soon.  The worker thread\nconsume CPU/Memory for 6 seconds, then exit.  We can estimate 10 seconds as\netime and 6 seconds as stime + utime.  This is a sample program which the\ngroup_leader dies earlier than other threads.\n\nThe results of same binary execution on different kernel are below.\n-- accounted records --------------------\n         |   btime  | utime | stime | etime | minflt | majflt |   comm  |\noriginal | 13:16:40 |  0.00 |  0.00 |  6.10 |    171 |      0 | bugacct |\n patched | 13:20:21 |  5.83 |  0.18 | 10.03 |  32776 |      0 | bugacct |\n(*) bugacct allocates 128MB memory, thus 128MB / 4KB \u003d 32768 of minflt is\n    appropriate.\n\n-- Test results in original kernel ------\n$ date; time -p ./bugacct\nTue Mar 28 13:16:36 JST 2006  \u003c- But pacct said btime is 13:16:40\nreal 10.11                    \u003c- But pacct said etime is 6.10\nuser 5.96                     \u003c- But pacct said utime is 0.00\nsys 0.14                      \u003c- But pacct said stime is 0.00\n$\n-- Test results in patched kernel -------\n$ date; time -p ./bugacct\nTue Mar 28 13:20:21 JST 2006\nreal 10.04\nuser 5.83\nsys 0.19\n$\n\nIn the original 2.6.16 kernel, pacct records btime, utime, stime, etime and\nminflt incorrectly.  In my opinion, this problem is caused by an assumption\nthat group_leader dies last.\n\nThe following section calculates process running time for etime and btime.\nBut it means running time of the thread that dies last, not process.  The\nstart_time of the first thread in the process (group_leader) should be\nreduced from uptime to calculate etime and btime correctly.\n\n   ---- do_acct_process() in kernel/acct.c:\n   /* calculate run_time in nsec*/\n   do_posix_clock_monotonic_gettime(\u0026uptime);\n   run_time \u003d (u64)uptime.tv_sec*NSEC_PER_SEC + uptime.tv_nsec;\n   run_time -\u003d (u64)current-\u003estart_time.tv_sec*NSEC_PER_SEC\n                                   + current-\u003estart_time.tv_nsec;\n   ----\n\nThe following section calculates stime and utime of the process.\nBut it might count the utime and stime of the group_leader duplicatly\nand ignore the utime and stime of the thread dies last, when one or\nmore threads remain after group_leader dead.\nThe ac_utime should be calculated as the sum of the signal-\u003eutime\nand utime of the thread dies last. The ac_stime should be done also.\n\n   ---- do_acct_process() in kernel/acct.c:\n   jiffies \u003d cputime_to_jiffies(cputime_add(current-\u003egroup_leader-\u003eutime,\n                                            current-\u003esignal-\u003eutime));\n   ac.ac_utime \u003d encode_comp_t(jiffies_to_AHZ(jiffies));\n   jiffies \u003d cputime_to_jiffies(cputime_add(current-\u003egroup_leader-\u003estime,\n                                            current-\u003esignal-\u003estime));\n   ac.ac_stime \u003d encode_comp_t(jiffies_to_AHZ(jiffies));\n   ----\n\nThe part of the minflt/majflt calculation has same problem.\nThis patch solves those problems, I think.\n\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "f79e2abb9bd452d97295f34376dedbec9686b986",
      "tree": "56b9998caa11983556e842fb9a8143d86d765fa3",
      "parents": [
        "d6dfd1310d3562698fd7c3c086f6c239f96394ac"
      ],
      "author": {
        "name": "Andrew Morton",
        "email": "akpm@osdl.org",
        "time": "Fri Mar 31 02:30:42 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Fri Mar 31 12:18:54 2006 -0800"
      },
      "message": "[PATCH] sys_sync_file_range()\n\nRemove the recently-added LINUX_FADV_ASYNC_WRITE and LINUX_FADV_WRITE_WAIT\nfadvise() additions, do it in a new sys_sync_file_range() syscall instead.\nReasons:\n\n- It\u0027s more flexible.  Things which would require two or three syscalls with\n  fadvise() can be done in a single syscall.\n\n- Using fadvise() in this manner is something not covered by POSIX.\n\nThe patch wires up the syscall for x86.\n\nThe sycall is implemented in the new fs/sync.c.  The intention is that we can\nmove sys_fsync(), sys_fdatasync() and perhaps sys_sync() into there later.\n\nDocumentation for the syscall is in fs/sync.c.\n\nA test app (sync_file_range.c) is in\nhttp://www.zip.com.au/~akpm/linux/patches/stuff/ext3-tools.tar.gz.\n\nThe available-to-GPL-modules do_sync_file_range() is for knfsd: \"A COMMIT can\nsay NFS_DATA_SYNC or NFS_FILE_SYNC.  I can skip the -\u003efsync call for\nNFS_DATA_SYNC which is hopefully the more common.\"\n\nNote: the `async\u0027 writeout mode SYNC_FILE_RANGE_WRITE will turn synchronous if\nthe queue is congested.  This is trivial to fix: add a new flag bit, set\nwbc-\u003enonblocking.  But I\u0027m not sure that we want to expose implementation\ndetails down to that level.\n\nNote: it\u0027s notable that we can sync an fd which wasn\u0027t opened for writing.\nSame with fsync() and fdatasync()).\n\nNote: the code takes some care to handle attempts to sync file contents\noutside the 16TB offset on 32-bit machines.  It makes such attempts appear to\nsucceed, for best 32-bit/64-bit compatibility.  Perhaps it should make such\nrequests fail...\n\nCc: Nick Piggin \u003cnickpiggin@yahoo.com.au\u003e\nCc: Michael Kerrisk \u003cmtk-manpages@gmx.net\u003e\nCc: Ulrich Drepper \u003cdrepper@redhat.com\u003e\nCc: Neil Brown \u003cneilb@cse.unsw.edu.au\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "d6dfd1310d3562698fd7c3c086f6c239f96394ac",
      "tree": "ff6c77f2d2e8bcb5b765bdaa4198243e043031aa",
      "parents": [
        "8a3628d53fe5eb1d1401dd1ce16655182c1c5ffc"
      ],
      "author": {
        "name": "Corey Minyard",
        "email": "minyard@acm.org",
        "time": "Fri Mar 31 02:30:41 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Fri Mar 31 12:18:54 2006 -0800"
      },
      "message": "[PATCH] IPMI: convert from semaphores to mutexes\n\nConvert the remaining semaphores to mutexes in the IPMI driver.  The\nwatchdog was using a semaphore as a real semaphore (for IPC), so the\nconversion there required adding a completion.\n\nSigned-off-by: Corey Minyard \u003cminyard@acm.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "8a3628d53fe5eb1d1401dd1ce16655182c1c5ffc",
      "tree": "6b196decb7403095270bbc7a7d5cbe4fe39945da",
      "parents": [
        "453823ba08ba762b3d58934b6dce75edce37169e"
      ],
      "author": {
        "name": "Corey Minyard",
        "email": "minyard@acm.org",
        "time": "Fri Mar 31 02:30:40 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Fri Mar 31 12:18:54 2006 -0800"
      },
      "message": "[PATCH] IPMI: tidy up various things\n\nTidy up various coding standard things, mostly removing the space after !,\nbut also break some long lines and fix a few other spacing inconsistencies.\nAlso fixes some bad error reporting when deleting an IPMI user.\n\nSigned-off-by: Corey Minyard \u003cminyard@acm.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "453823ba08ba762b3d58934b6dce75edce37169e",
      "tree": "80170bf784145621467ba83ea44d25dc3e5e5964",
      "parents": [
        "ee37df7877eeaa16d7761cce64854110a7c17ad9"
      ],
      "author": {
        "name": "Corey Minyard",
        "email": "minyard@acm.org",
        "time": "Fri Mar 31 02:30:39 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Fri Mar 31 12:18:54 2006 -0800"
      },
      "message": "[PATCH] IPMI: fix startup race condition\n\nMatt Domsch noticed a startup race with the IPMI kernel thread, it was\npossible (though extraordinarly unlikely) that a message could come in\nbefore the upper layer was ready to handle it.  This patch splits the\nstartup processing of an IPMI interface into two parts, one to get ready\nand one to actually start the processes to receive messages from the\ninterface.\n\n[akpm@osdl.org: cleanups]\nSigned-off-by: Corey Minyard \u003cminyard@acm.org\u003e\nCc: Matt Domsch \u003cMatt_Domsch@dell.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "ee37df7877eeaa16d7761cce64854110a7c17ad9",
      "tree": "a58f02f86438edd84d6028df0ca8479784a5577b",
      "parents": [
        "da960a6ad1864dd1636cb9b0330d7bb7408aed45"
      ],
      "author": {
        "name": "Andrew Morton",
        "email": "akpm@osdl.org",
        "time": "Fri Mar 31 02:30:35 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Fri Mar 31 12:18:54 2006 -0800"
      },
      "message": "[PATCH] make tty_insert_flip_string a non-GPL export\n\nAlan sayeth \"Based on Linus original comments about _GPL we should export\ntty_insert_flip_char as EXPORT_SYMBOL because it used to be EXPORT_SYMBOL\nequivalent (trivial inline).  The other features are new extensions are were\nnot available to drivers before so need not be provided except as _GPL\nfunctionality as far as I can see.\"\n\nAddresses http://bugzilla.kernel.org/show_bug.cgi?id\u003d6294\n\nCc: Alan Cox \u003calan@lxorguk.ukuu.org.uk\u003e\nCc: Russell King \u003crmk@arm.linux.org.uk\u003e\nCc: Paul Fulghum \u003cpaulkf@microgate.com\u003e\nCc: Philippe Vouters \u003cPhilippe.Vouters@laposte.net\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "da960a6ad1864dd1636cb9b0330d7bb7408aed45",
      "tree": "8cf0c825fd4a13e14162c9c976b31657893483c3",
      "parents": [
        "9b41046cd0ee0a57f849d6e1363f7933e363cca9"
      ],
      "author": {
        "name": "Randy Dunlap",
        "email": "rdunlap@xenotime.net",
        "time": "Fri Mar 31 02:30:34 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Fri Mar 31 12:18:54 2006 -0800"
      },
      "message": "[PATCH] edac_752x needs CONFIG_HOTPLUG\n\nEDAC_752X uses pci_scan_single_device(), which is only available if\nCONFIG_HOTPLUG is enabled, so limit this driver with HOTPLUG.\n\nSigned-off-by: Randy Dunlap \u003crdunlap@xenotime.net\u003e\nCc: Dave Peterson \u003cdsp@llnl.gov\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "9b41046cd0ee0a57f849d6e1363f7933e363cca9",
      "tree": "246820e9493770e071cb92a48e7f72d8b9c90a98",
      "parents": [
        "68eef3b4791572ecb70249c7fb145bb3742dd899"
      ],
      "author": {
        "name": "OGAWA Hirofumi",
        "email": "hirofumi@mail.parknet.co.jp",
        "time": "Fri Mar 31 02:30:33 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Fri Mar 31 12:18:53 2006 -0800"
      },
      "message": "[PATCH] Don\u0027t pass boot parameters to argv_init[]\n\nThe boot cmdline is parsed in parse_early_param() and\nparse_args(,unknown_bootoption).\n\nAnd __setup() is used in obsolete_checksetup().\n\n\tstart_kernel()\n\t\t-\u003e parse_args()\n\t\t\t-\u003e unknown_bootoption()\n\t\t\t\t-\u003e obsolete_checksetup()\n\nIf __setup()\u0027s callback (-\u003esetup_func()) returns 1 in\nobsolete_checksetup(), obsolete_checksetup() thinks a parameter was\nhandled.\n\nIf -\u003esetup_func() returns 0, obsolete_checksetup() tries other\n-\u003esetup_func().  If all -\u003esetup_func() that matched a parameter returns 0,\na parameter is seted to argv_init[].\n\nThen, when runing /sbin/init or init\u003dapp, argv_init[] is passed to the app.\nIf the app doesn\u0027t ignore those arguments, it will warning and exit.\n\nThis patch fixes a wrong usage of it, however fixes obvious one only.\n\nSigned-off-by: OGAWA Hirofumi \u003chirofumi@mail.parknet.co.jp\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "68eef3b4791572ecb70249c7fb145bb3742dd899",
      "tree": "1f61fce839cec8d672ae06a423d46f0a6fcd924d",
      "parents": [
        "a2c348fe0117adced11e374329a5ea3f7c43cb41"
      ],
      "author": {
        "name": "Joe Korty",
        "email": "joe.korty@ccur.com",
        "time": "Fri Mar 31 02:30:32 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Fri Mar 31 12:18:53 2006 -0800"
      },
      "message": "[PATCH] Simplify proc/devices and fix early termination regression\n\nMake baby-simple the code for /proc/devices.  Based on the proven design\nfor /proc/interrupts.\n\nThis also fixes the early-termination regression 2.6.16 introduced, as\ndemonstrated by:\n\n    # dd if\u003d/proc/devices bs\u003d1\n    Character devices:\n      1 mem\n    27+0 records in\n    27+0 records out\n\nThis should also work (but is untested) when /proc/devices \u003e4096 bytes,\nwhich I believe is what the original 2.6.16 rewrite fixed.\n\n[akpm@osdl.org: cleanups, simplifications]\nSigned-off-by: Joe Korty \u003cjoe.korty@ccur.com\u003e\nCc: Neil Horman \u003cnhorman@tuxdriver.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "a2c348fe0117adced11e374329a5ea3f7c43cb41",
      "tree": "95233412196f8093e2e82437afeeadd2e479040c",
      "parents": [
        "3691c5199e8a4be1c7a91b5ab925db5feb866e19"
      ],
      "author": {
        "name": "Oleg Nesterov",
        "email": "oleg@tv-sign.ru",
        "time": "Fri Mar 31 02:30:31 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Fri Mar 31 12:18:53 2006 -0800"
      },
      "message": "[PATCH] __mod_timer: simplify -\u003ebase changing\n\nSince base and new_base are of the same type now, we can save one \u0027if\u0027\nbranch and simplify the code a bit.\n\nSigned-off-by: Oleg Nesterov \u003coleg@tv-sign.ru\u003e\nAcked-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "3691c5199e8a4be1c7a91b5ab925db5feb866e19",
      "tree": "025210545818b080df13faa31c9266432579794c",
      "parents": [
        "5ce29646ebe352587e3b3160d599010c5da1b9dd"
      ],
      "author": {
        "name": "Oleg Nesterov",
        "email": "oleg@tv-sign.ru",
        "time": "Fri Mar 31 02:30:30 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Fri Mar 31 12:18:52 2006 -0800"
      },
      "message": "[PATCH] kill __init_timer_base in favor of boot_tvec_bases\n\nCommit a4a6198b80cf82eb8160603c98da218d1bd5e104:\n\t[PATCH] tvec_bases too large for per-cpu data\n\nintroduced \"struct tvec_t_base_s boot_tvec_bases\" which is visible at\ncompile time.  This means we can kill __init_timer_base and move\ntimer_base_s\u0027s content into tvec_t_base_s.\n\nSigned-off-by: Oleg Nesterov \u003coleg@tv-sign.ru\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "5ce29646ebe352587e3b3160d599010c5da1b9dd",
      "tree": "a4b080ded00de2264a4c94245da79488ea4d8a56",
      "parents": [
        "da2e9e1ff40c863a12803c32209baaded3512433"
      ],
      "author": {
        "name": "Miklos Szeredi",
        "email": "miklos@szeredi.hu",
        "time": "Fri Mar 31 02:30:29 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Fri Mar 31 12:18:52 2006 -0800"
      },
      "message": "[PATCH] locks: don\u0027t panic\n\nDon\u0027t panic!  Just BUG_ON().\n\nSigned-off-by: Miklos Szeredi \u003cmiklos@szeredi.hu\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "da2e9e1ff40c863a12803c32209baaded3512433",
      "tree": "7770ed3904d312850e745cca175a7322b63785ab",
      "parents": [
        "97db7fbfc7712bc403330c81c04ddfa82b335bce"
      ],
      "author": {
        "name": "Jakub Jelinek",
        "email": "jakub@redhat.com",
        "time": "Fri Mar 31 02:30:28 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Fri Mar 31 12:18:52 2006 -0800"
      },
      "message": "[PATCH] Mark unwind info for signal trampolines in vDSOs\n\nMark unwind info for signal trampolines using the new S augmentation flag\nintroduced in: http://gcc.gnu.org/PR26208.\n\nGCC 4.2 (or patched earlier GCC) will be able to special case unwinding\nthrough frames right above signal trampolines.  As the augmentations start\nwith z flag and S is at the very end of the augmentation string, older GCCs\nwill just skip the S flag as unknown (that\u0027s why an augmentation flag was\nchosen over say a new CFA opcode).\n\nSigned-off-by: Jakub Jelinek \u003cjakub@redhat.com\u003e\nCc: Andi Kleen \u003cak@muc.de\u003e\nCc: Paul Mackerras \u003cpaulus@samba.org\u003e\nCc: Benjamin Herrenschmidt \u003cbenh@kernel.crashing.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "97db7fbfc7712bc403330c81c04ddfa82b335bce",
      "tree": "7461ab8f77bb3da67bcd35a50baa6596334cd89a",
      "parents": [
        "3feb88562d149f078319e5a1b2f7acaa10251a5c"
      ],
      "author": {
        "name": "KAMEZAWA Hiroyuki",
        "email": "kamezawa.hiroyu@jp.fujitsu.com",
        "time": "Fri Mar 31 02:30:26 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Fri Mar 31 12:18:52 2006 -0800"
      },
      "message": "[PATCH] for_each_possible_cpu: s390\n\nfor_each_cpu() actually iterates across all possible CPUs.  We\u0027ve had mistakes\nin the past where people were using for_each_cpu() where they should have been\niterating across only online or present CPUs.  This is inefficient and\npossibly buggy.\n\nWe\u0027re renaming for_each_cpu() to for_each_possible_cpu() to avoid this in the\nfuture.\n\nThis patch replaces for_each_cpu with for_each_possible_cpu.\n\nSigned-off-by: KAMEZAWA Hiroyuki \u003ckamezawa.hiroyu@jp.fujitsu.com\u003e\nCc: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\nCc: Heiko Carstens \u003cheiko.carstens@de.ibm.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "3feb88562d149f078319e5a1b2f7acaa10251a5c",
      "tree": "73fb00f0ecb9ed0c4cf8eec24c84253ce9620464",
      "parents": [
        "54d8d3b5a0ce1cdbad1d3154c9ea9732d394e9c7"
      ],
      "author": {
        "name": "Paolo \u0027Blaisorblade\u0027 Giarrusso",
        "email": "blaisorblade@yahoo.it",
        "time": "Fri Mar 31 02:30:25 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Fri Mar 31 12:18:52 2006 -0800"
      },
      "message": "[PATCH] uml: check for differences in host support\n\nIf running on a host not supporting TLS (for instance 2.4) we should report\nthat cleanly to the user, instead of printing not comprehensible \"error 5\" for\nthat.\n\nAdditionally, i386 and x86_64 support different ranges for\nuser_desc-\u003eentry_number, and we must account for that; we couldn\u0027t pass\nourselves -1 because we need to override previously existing TLS descriptors\nwhich glibc has possibly set, so test at startup the range to use.\n\nx86 and x86_64 existing ranges are hardcoded.\n\nSigned-off-by: Paolo \u0027Blaisorblade\u0027 Giarrusso \u003cblaisorblade@yahoo.it\u003e\nAcked-by: Jeff Dike \u003cjdike@addtoit.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "54d8d3b5a0ce1cdbad1d3154c9ea9732d394e9c7",
      "tree": "129a29ab92fba7dc99229c87a38fe8df3ade7b15",
      "parents": [
        "dd77aec07aec5cb81aed3b4ef79c1ff8bd0e2a68"
      ],
      "author": {
        "name": "Paolo \u0027Blaisorblade\u0027 Giarrusso",
        "email": "blaisorblade@yahoo.it",
        "time": "Fri Mar 31 02:30:24 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Fri Mar 31 12:18:52 2006 -0800"
      },
      "message": "[PATCH] uml: add arch_switch_to for newly forked thread\n\nNewly forked threads have no arch_switch_to_skas() called before their first\nrun, because when schedule() switches to them they\u0027re resumed in the body of\nthread_wait() inside fork_handler() rather than in switch_threads() in\nswitch_to_skas().  Compensate this missing call.\n\nSigned-off-by: Paolo \u0027Blaisorblade\u0027 Giarrusso \u003cblaisorblade@yahoo.it\u003e\nAcked-by: Jeff Dike \u003cjdike@addtoit.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "dd77aec07aec5cb81aed3b4ef79c1ff8bd0e2a68",
      "tree": "2f1e75e362acce09b789a309b685a1d791b35a24",
      "parents": [
        "aa6758d4867cd07bd76105ade6177fe6148e559a"
      ],
      "author": {
        "name": "Paolo \u0027Blaisorblade\u0027 Giarrusso",
        "email": "blaisorblade@yahoo.it",
        "time": "Fri Mar 31 02:30:23 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Fri Mar 31 12:18:52 2006 -0800"
      },
      "message": "[PATCH] uml: tls support: hack to make it compile on any host\n\nCopy the definition of struct user_desc (with another name) for use by\nuserspace sources (where we use the host headers, and we can\u0027t be sure about\ntheir content) to make sure UML compiles.\n\nSigned-off-by: Paolo \u0027Blaisorblade\u0027 Giarrusso \u003cblaisorblade@yahoo.it\u003e\nAcked-by: Jeff Dike \u003cjdike@addtoit.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "aa6758d4867cd07bd76105ade6177fe6148e559a",
      "tree": "0053f855c885a6dc322337468a2c45b6b2f8ddd0",
      "parents": [
        "972410b0232e97609fcefc8e408fe3037fcd607b"
      ],
      "author": {
        "name": "Paolo \u0027Blaisorblade\u0027 Giarrusso",
        "email": "blaisorblade@yahoo.it",
        "time": "Fri Mar 31 02:30:22 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Fri Mar 31 12:18:52 2006 -0800"
      },
      "message": "[PATCH] uml: implement {get,set}_thread_area for i386\n\nImplement sys_[gs]et_thread_area and the corresponding ptrace operations for\nUML.  This is the main chunk, additional parts follow.  This implementation is\nnow well tested and has run reliably for some time, and we\u0027ve understood all\nthe previously existing problems.\n\nTheir implementation saves the new GDT content and then forwards the call to\nthe host when appropriate, i.e.  immediately when the target process is\nrunning or on context switch otherwise (i.e.  on fork and on ptrace() calls).\n\nIn SKAS mode, we must switch registers on each context switch (because SKAS\ndoes not switches tls_array together with current-\u003emm).\n\nAlso, added get_cpu() locking; this has been done for SKAS mode, since TT does\nnot need it (it does not use smp_processor_id()).\n\nSigned-off-by: Paolo \u0027Blaisorblade\u0027 Giarrusso \u003cblaisorblade@yahoo.it\u003e\nAcked-by: Jeff Dike \u003cjdike@addtoit.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "972410b0232e97609fcefc8e408fe3037fcd607b",
      "tree": "2de18ed5d823dc7e24c0171f720f6354a9cd57e4",
      "parents": [
        "fbdf2161552a2065047e5df2dbf9ebf69d66a0e9"
      ],
      "author": {
        "name": "Paolo \u0027Blaisorblade\u0027 Giarrusso",
        "email": "blaisorblade@yahoo.it",
        "time": "Fri Mar 31 02:30:21 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Fri Mar 31 12:18:52 2006 -0800"
      },
      "message": "[PATCH] uml: clean arch_switch usage\n\nCall arch_switch also in switch_to_skas, even if it\u0027s, for now, a no-op for\nthat case (and mark this in the comment); this will change soon.\n\nAlso, arch_switch for TT mode is actually useless when the PT proxy (a\ncomplicate debugging instrumentation for TT mode) is not enabled.  In fact, it\nonly calls update_debugregs, which checks debugregs_seq against seq (to check\nif the registers are up-to-date - seq here means a \"version number\" of the\nregisters).\n\nIf the ptrace proxy is not enabled, debugregs_seq always stays 0 and\nupdate_debugregs will be a no-op.  So, optimize this out (the compiler can\u0027t\ndo it).\n\nAlso, I\u0027ve been disappointed by the fact that it would make a lot of sense if,\nafter calling a successful\nupdate_debugregs(current-\u003ethread.arch.debugregs_seq),\ncurrent-\u003ethread.arch.debugregs_seq were updated with the new debugregs_seq.\nBut this is not done.  Is this a bug or a feature?  For all purposes, it seems\na bug (otherwise the whole mechanism does not make sense, which is also a\npossibility to check), which causes some performance only problems (not\ncorrectness), since we write_debugregs when not needed.\n\nAlso, as suggested by Jeff, remove a redundant enabling of SIGVTALRM,\ncomprised in the subsequent local_irq_enable().  I\u0027m just a bit dubious if\nordering matters there...\n\nSigned-off-by: Paolo \u0027Blaisorblade\u0027 Giarrusso \u003cblaisorblade@yahoo.it\u003e\nAcked-by: Jeff Dike \u003cjdike@addtoit.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "fbdf2161552a2065047e5df2dbf9ebf69d66a0e9",
      "tree": "67d1adf47db4d80b712e276e348f2d4ec6da251d",
      "parents": [
        "12523bdce1a6b5a3a2627b9901162bbd3eef33ed"
      ],
      "author": {
        "name": "Paolo \u0027Blaisorblade\u0027 Giarrusso",
        "email": "blaisorblade@yahoo.it",
        "time": "Fri Mar 31 02:30:19 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Fri Mar 31 12:18:51 2006 -0800"
      },
      "message": "[PATCH] uml: split ldt.h in arch-independent and arch-dependant code\n\nldt-{i386,x86_64}.h is made of two different parts - some code for parsing of\nLDT descriptors, which is arch-dependant, and the code to handle uml_ldt_t (an\nLDT block inside UML), which is mostly arch-independant (among x86 and x86_64,\nat least).\n\nJoin the common part in a single file (ldt.h) and split the rest away\n(host_ldt-{i386,x86_64}.h).\n\nThis is needed because processor.h, with next patches, will start including\nthe LDT descriptor parsing macros in host_ldt.h, but it can\u0027t include ldt.h\nbecause it uses semaphores (and to define semaphores one must first include\nprocessor.h!).\n\nSigned-off-by: Paolo \u0027Blaisorblade\u0027 Giarrusso \u003cblaisorblade@yahoo.it\u003e\nAcked-by: Jeff Dike \u003cjdike@addtoit.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "12523bdce1a6b5a3a2627b9901162bbd3eef33ed",
      "tree": "02e9807abdd6df71468d61a9883510541f765ecb",
      "parents": [
        "e11c0cdf4c6f7976e6f4fe221369a7b420245389"
      ],
      "author": {
        "name": "Paolo \u0027Blaisorblade\u0027 Giarrusso",
        "email": "blaisorblade@yahoo.it",
        "time": "Fri Mar 31 02:30:18 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Fri Mar 31 12:18:51 2006 -0800"
      },
      "message": "[PATCH] uml: idle thread needn\u0027t take access to init_mm\n\nComparing this code which is the actual body of the arch-independent\ncpu_idle(), it is clear that it\u0027s unnecessary to set -\u003emm and -\u003eactive_mm;\nbeyond that, a kernel thread is not supposed to have -\u003emm !\u003d NULL, only\nactive_mm.\n\nThis showed up because I used the assumption (which is IMHO valid) that kernel\nthread have their -\u003emm \u003d\u003d NULL, and it failed for this thread.\n\nSigned-off-by: Paolo \u0027Blaisorblade\u0027 Giarrusso \u003cblaisorblade@yahoo.it\u003e\nAcked-by: Jeff Dike \u003cjdike@addtoit.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "e11c0cdf4c6f7976e6f4fe221369a7b420245389",
      "tree": "f2a5a0b4cd0e2946173fb85808cd8e1e7eb455ed",
      "parents": [
        "43cecb3079d048800e828edafb937e596152908d"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Fri Mar 31 02:30:17 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Fri Mar 31 12:18:51 2006 -0800"
      },
      "message": "[PATCH] uml: fix min usage\n\ntype-safe min() in arch/um/drivers/mconsole_kern.c\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\nSigned-off-by: Jeff Dike \u003cjdike@addtoit.com\u003e\nCc: Paolo \u0027Blaisorblade\u0027 Giarrusso \u003cblaisorblade@yahoo.it\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "43cecb3079d048800e828edafb937e596152908d",
      "tree": "ee852c5f698d1860d7906e244eaeece80e349645",
      "parents": [
        "347f217cec74dc6b5a9b8e77c4b15f5a6879ec1a"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Fri Mar 31 02:30:16 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Fri Mar 31 12:18:51 2006 -0800"
      },
      "message": "[PATCH] uml: remove unused make variables\n\nRemoved assignments to unused variables in arch/um/os-Linux/Makefile\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\nSigned-off-by: Jeff Dike \u003cjdike@addtoit.com\u003e\nCc: Paolo \u0027Blaisorblade\u0027 Giarrusso \u003cblaisorblade@yahoo.it\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "347f217cec74dc6b5a9b8e77c4b15f5a6879ec1a",
      "tree": "8b7bbf42cc30ebc22d594d746a6342aeeff3cff7",
      "parents": [
        "4d338e1accfc3473f7e453427dfd4f1ebf4dbbe6"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Fri Mar 31 02:30:16 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Fri Mar 31 12:18:51 2006 -0800"
      },
      "message": "[PATCH] uml: __user annotations\n\n__user annotations (hppfs)\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\nSigned-off-by: Jeff Dike \u003cjdike@addtoit.com\u003e\nCc: Paolo \u0027Blaisorblade\u0027 Giarrusso \u003cblaisorblade@yahoo.it\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "4d338e1accfc3473f7e453427dfd4f1ebf4dbbe6",
      "tree": "ac6559e533cd4720b5c5b13119b3d10f0ab8b51d",
      "parents": [
        "694a464e19b9e3278dbaf6a09fa7c1efec3f8eb5"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Fri Mar 31 02:30:15 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Fri Mar 31 12:18:51 2006 -0800"
      },
      "message": "[PATCH] uml: sparse cleanups\n\nmisc sparse annotations\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\nSigned-off-by: Jeff Dike \u003cjdike@addtoit.com\u003e\nCc: Paolo \u0027Blaisorblade\u0027 Giarrusso \u003cblaisorblade@yahoo.it\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "694a464e19b9e3278dbaf6a09fa7c1efec3f8eb5",
      "tree": "17a73dc929eaf3ace846b5b0dbe8165e4285d901",
      "parents": [
        "cc70a40b5ee05e5cca053887fc447590307bf1e8"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Fri Mar 31 02:30:14 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Fri Mar 31 12:18:51 2006 -0800"
      },
      "message": "[PATCH] uml: kconfigs\n\nkconfig sanitized around drivers/net\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\nSigned-off-by: Jeff Dike \u003cjdike@addtoit.com\u003e\nCc: Paolo \u0027Blaisorblade\u0027 Giarrusso \u003cblaisorblade@yahoo.it\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "cc70a40b5ee05e5cca053887fc447590307bf1e8",
      "tree": "3a0bb70040085ed70474ec21c00a17a4a0165900",
      "parents": [
        "7b99edc78de6c12d3e96fb75fe2b55fafa96f247"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Fri Mar 31 02:30:13 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Fri Mar 31 12:18:51 2006 -0800"
      },
      "message": "[PATCH] uml: eliminate duplicate mrpropered files\n\nno need to add the same file twice to MRPROPER_FILES\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\nSigned-off-by: Jeff Dike \u003cjdike@addtoit.com\u003e\nCc: Paolo \u0027Blaisorblade\u0027 Giarrusso \u003cblaisorblade@yahoo.it\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "7b99edc78de6c12d3e96fb75fe2b55fafa96f247",
      "tree": "c4a788343634c475a41a67aab6a8fc46dbddb171",
      "parents": [
        "de2fe5e07d58424bc286fff3fd3c1b0bf933cd58"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Fri Mar 31 02:30:12 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Fri Mar 31 12:18:51 2006 -0800"
      },
      "message": "[PATCH] uml: clean up remapping code build magic\n\nkills unmap magic\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\nSigned-off-by: Jeff Dike \u003cjdike@addtoit.com\u003e\nCc: Paolo \u0027Blaisorblade\u0027 Giarrusso \u003cblaisorblade@yahoo.it\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "de2fe5e07d58424bc286fff3fd3c1b0bf933cd58",
      "tree": "870d16aef28679c56b1c7321a8fcb511c6176d00",
      "parents": [
        "f4c57a78e2c49f188babf675ba0a9264b5374c26"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Fri Mar 31 02:30:11 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Fri Mar 31 12:18:50 2006 -0800"
      },
      "message": "[PATCH] uml: eliminate symlinks to host arch\n\nkills symlinks in arch/um/sys-*\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\nSigned-off-by: Jeff Dike \u003cjdike@addtoit.com\u003e\nCc: Paolo \u0027Blaisorblade\u0027 Giarrusso \u003cblaisorblade@yahoo.it\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "f4c57a78e2c49f188babf675ba0a9264b5374c26",
      "tree": "f31de4c87afb9d70f76841ef9ae392cd7bdbe7a1",
      "parents": [
        "9902abd7af17c3bdf57a5a092a66f502f79ba05e"
      ],
      "author": {
        "name": "Jeff Dike",
        "email": "jdike@addtoit.com",
        "time": "Fri Mar 31 02:30:10 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Fri Mar 31 12:18:50 2006 -0800"
      },
      "message": "[PATCH] uml: fix initcall return values\n\nA number of UML initcalls were improperly returning 1.  Also removed any\nnearby emacs formatting comments.\n\nSigned-off-by: Jeff Dike \u003cjdike@addtoit.com\u003e\nCc: Paolo \u0027Blaisorblade\u0027 Giarrusso \u003cblaisorblade@yahoo.it\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "9902abd7af17c3bdf57a5a092a66f502f79ba05e",
      "tree": "c6da5170df3ebd016f3d813b8c891471373337b1",
      "parents": [
        "02dea0875b0f9b331a65fd6097dfd6115ca4ef24"
      ],
      "author": {
        "name": "Jeff Dike",
        "email": "jdike@addtoit.com",
        "time": "Fri Mar 31 02:30:09 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Fri Mar 31 12:18:50 2006 -0800"
      },
      "message": "[PATCH] uml: redeclare highmem\n\nThe earlier printf patch missed a corresponding change in the printed\nvariable.\n\nSigned-off-by: Jeff Dike \u003cjdike@addtoit.com\u003e\nCc: Paolo \u0027Blaisorblade\u0027 Giarrusso \u003cblaisorblade@yahoo.it\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "02dea0875b0f9b331a65fd6097dfd6115ca4ef24",
      "tree": "100126d72e889296a5d8d8714dd681ab041710cb",
      "parents": [
        "85b6bce3658a823aa169586fe71ffba0f12ccc71"
      ],
      "author": {
        "name": "Jeff Dike",
        "email": "jdike@addtoit.com",
        "time": "Fri Mar 31 02:30:08 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Fri Mar 31 12:18:50 2006 -0800"
      },
      "message": "[PATCH] UML: Hotplug memory, take 2\n\nChanges since first version\n\tadded check for MADV_REMOVE support on the host\n\tfixed error return botch\n\tshrunk sprintf array by one character\n\nThis adds hotplug memory support to UML.  The mconsole syntax is\n \tconfig mem\u003d[+-]n[KMG]\nIn other words, add or subtract some number of kilobytes, megabytes, or\ngigabytes.\n\nUnplugged pages are allocated and then madvise(MADV_TRUNCATE), which is a\ncurrently experimental madvise extension.  These pages are tracked so they\ncan be plugged back in later if the admin decides to give them back.  The\nfirst page to be unplugged is used to keep track of about 4M of other\npages.  A list_head is the first thing on this page.  The rest is filled\nwith addresses of other unplugged pages.  This first page is not madvised,\nobviously.\n\nWhen this page is filled, the next page is used in a similar way and linked\nonto a list with the first page.  Etc.  This whole process reverses when\npages are plugged back in.  When a tracking page no longer tracks any\nunplugged pages, then it is next in line for plugging, which is done by\nfreeing pages back to the kernel.\n\nSigned-off-by: Jeff Dike \u003cjdike@addtoit.com\u003e\nCc: Paolo \u0027Blaisorblade\u0027 Giarrusso \u003cblaisorblade@yahoo.it\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "85b6bce3658a823aa169586fe71ffba0f12ccc71",
      "tree": "ad2ca0b501d2ff767889d15dfda22abec75f38c4",
      "parents": [
        "1a75a3f0680d9c4bc4761512658b6fd664032e18"
      ],
      "author": {
        "name": "Pavel Machek",
        "email": "pavel@suse.cz",
        "time": "Fri Mar 31 02:30:06 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Fri Mar 31 12:18:50 2006 -0800"
      },
      "message": "[PATCH] Fix suspend with traced tasks\n\nstrace /bin/bash misbehaves after resume; this fixes it.\n\n(akpm: it\u0027s scary calling refrigerator() in state TASK_TRACED, but it seems to\ndo the right thing).\n\nSigned-off-by: Pavel Machek \u003cpavel@suse.cz\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "1a75a3f0680d9c4bc4761512658b6fd664032e18",
      "tree": "8d3d7fe266740f58961b43ecf144503f36e88dc4",
      "parents": [
        "3ccfb81e871b45e4af6ebb3282f3cfa0f98f1b80"
      ],
      "author": {
        "name": "Vivek Goyal",
        "email": "vgoyal@in.ibm.com",
        "time": "Fri Mar 31 02:30:05 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Fri Mar 31 12:18:50 2006 -0800"
      },
      "message": "[PATCH] i386 kdump timer vector lockup fix\n\nPorting the patch I posted for x86_64 to i386.\n\nhttp://marc.theaimsgroup.com/?l\u003dlinux-kernel\u0026m\u003d114178139610707\u0026w\u003d2\n\no While using kdump, after a system crash when second kernel boots, timer\n  vector gets (0x31) locked and CPU does not see timer interrupts\n  travelling from IOAPIC to APIC.  Currently it does not lead to boot\n  failure in second kernel as timer interrupts continues to come as ExtInt\n  through LAPIC directly, but fixing it is good in case some boards do not\n  support the other mode.\n\no After a system crash, it is not safe to service interrupts any more,\n  hence interrupts are disabled.  This leads to pending interrupts at\n  LAPIC.  LAPIC sends these interrupts to the CPU during early boot of\n  second kernel.  Other pending interrupts are discarded saying unexpected\n  trap but timer interrupt is serviced and CPU does not issue an LAPIC EOI\n  because it think this interrupt came from i8259 and sends ack to 8259.\n  This leads to vector 0x31 locking as LAPIC does not clear respective ISR\n  and keeps on waiting for EOI.\n\no This patch issues extra EOI for the pending interrupts who have ISR set.\n\no Though today only timer seems to be the special case because in early\n  boot it thinks interrupts are coming from i8259 and uses\n  mask_and_ack_8259A() as ack handler and does not issue LAPIC EOI.  But\n  probably doing it in generic manner for all vectors makes sense.\n\nSigned-off-by: Vivek Goyal \u003cvgoyal@in.ibm.com\u003e\nCc: \"Eric W. Biederman\" \u003cebiederm@xmission.com\u003e\nCc: Andi Kleen \u003cak@muc.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "3ccfb81e871b45e4af6ebb3282f3cfa0f98f1b80",
      "tree": "92a48c57c125da95d96bb1506c6c871cb5b726d4",
      "parents": [
        "bc83db4f006fcf9e9502a002b4bd448fc4511d04"
      ],
      "author": {
        "name": "Brian Gerst",
        "email": "bgerst@didntduck.org",
        "time": "Fri Mar 31 02:30:04 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Fri Mar 31 12:18:50 2006 -0800"
      },
      "message": "[PATCH] Remove long dead i386 floppy asm code\n\nIt\u0027s been disabled since v2.1.88\n\nSigned-off-by: Brian Gerst \u003cbgerst@didntduck.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "bc83db4f006fcf9e9502a002b4bd448fc4511d04",
      "tree": "6c1e026d920a7c30610cf2bead99ef98acc9aa4e",
      "parents": [
        "78c997a4be7d1ed3ff4c27f23d30a0185d39bcbf"
      ],
      "author": {
        "name": "KAMEZAWA Hiroyuki",
        "email": "kamezawa.hiroyu@jp.fujitsu.com",
        "time": "Fri Mar 31 02:30:02 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Fri Mar 31 12:18:50 2006 -0800"
      },
      "message": "[PATCH] for_each_possible_cpu: sh\n\nfor_each_cpu() actually iterates across all possible CPUs.  We\u0027ve had mistakes\nin the past where people were using for_each_cpu() where they should have been\niterating across only online or present CPUs.  This is inefficient and\npossibly buggy.\n\nWe\u0027re renaming for_each_cpu() to for_each_possible_cpu() to avoid this in the\nfuture.\n\nThis patch replaces for_each_cpu with for_each_possible_cpu.\n\nSigned-off-by: KAMEZAWA Hiroyuki \u003ckamezawa.hiroyu@jp.fujitsu.com\u003e\nCc: Paul Mundt \u003clethal@linux-sh.org\u003e\nCc: Kazumoto Kojima \u003ckkojima@rr.iij4u.or.jp\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "78c997a4be7d1ed3ff4c27f23d30a0185d39bcbf",
      "tree": "6ca625d590c7ec2e31acca3f2a1d28dce2e96332",
      "parents": [
        "d6692183ac1d8f4a4e4015f9ce9acc2514618e0b"
      ],
      "author": {
        "name": "Chen, Kenneth W",
        "email": "kenneth.w.chen@intel.com",
        "time": "Fri Mar 31 02:30:01 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Fri Mar 31 12:18:50 2006 -0800"
      },
      "message": "[PATCH] hugetlb: don\u0027t allow free hugetlb count fall below reserved count\n\nWith strict page reservation, I think kernel should enforce number of free\nhugetlb page don\u0027t fall below reserved count.  Currently it is possible in\nthe sysctl path.  Add proper check in sysctl to disallow that.\n\nSigned-off-by: Ken Chen \u003ckenneth.w.chen@intel.com\u003e\nCc: David Gibson \u003cdavid@gibson.dropbear.id.au\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "d6692183ac1d8f4a4e4015f9ce9acc2514618e0b",
      "tree": "15d930c84cc93df5bc53ed29290abd46c3135272",
      "parents": [
        "93fac7041f082297b93655a0e49f659cd7520e40"
      ],
      "author": {
        "name": "Chen, Kenneth W",
        "email": "kenneth.w.chen@intel.com",
        "time": "Fri Mar 31 02:29:57 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Fri Mar 31 12:18:49 2006 -0800"
      },
      "message": "[PATCH] fix extra page ref count in follow_hugetlb_page\n\ngit-commit: d5d4b0aa4e1430d73050babba999365593bdb9d2\n\"[PATCH] optimize follow_hugetlb_page\" breaks mlock on hugepage areas.\n\nI mis-interpret pages argument and made get_page() unconditional.  It\nshould only get a ref count when \"pages\" argument is non-null.\n\nCredit goes to Adam Litke who spotted the bug.\n\nSigned-off-by: Ken Chen \u003ckenneth.w.chen@intel.com\u003e\nAcked-by: Adam Litke \u003cagl@us.ibm.com\u003e\nCc: David Gibson \u003cdavid@gibson.dropbear.id.au\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "93fac7041f082297b93655a0e49f659cd7520e40",
      "tree": "2d8f295087377d4ac0ceea49dd67bb682b04c749",
      "parents": [
        "9bf9e89c3d147ca8cf9622d2d053684fba77a464"
      ],
      "author": {
        "name": "Nick Piggin",
        "email": "npiggin@suse.de",
        "time": "Fri Mar 31 02:29:56 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Fri Mar 31 12:18:49 2006 -0800"
      },
      "message": "[PATCH] mm: schedule find_trylock_page() removal\n\nfind_trylock_page() is an odd interface in that it doesn\u0027t take a reference\nlike the others.  Now that XFS no longer uses it, and its last remaining\ncaller actually wants an elevated refcount, opencode that callsite and\nschedule find_trylock_page() for removal.\n\nSigned-off-by: Nick Piggin \u003cnpiggin@suse.de\u003e\nAcked-by: Hugh Dickins \u003chugh@veritas.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "9bf9e89c3d147ca8cf9622d2d053684fba77a464",
      "tree": "e47d654953aea7226b47489d4ed6e94acd8014d8",
      "parents": [
        "b5ac5d7edb64b3ca1a489b30d95d62492a1f0b80"
      ],
      "author": {
        "name": "Christoph Lameter",
        "email": "clameter@sgi.com",
        "time": "Fri Mar 31 02:29:56 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Fri Mar 31 12:18:49 2006 -0800"
      },
      "message": "[PATCH] migrate_pages_to() must be defined for the no swap case\n\nFix migrate_pages_to() definition.\n\nSigned-off-by: Christoph Lameter \u003cclameter@sgi.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "b5ac5d7edb64b3ca1a489b30d95d62492a1f0b80",
      "tree": "362a9f0d4c64808dd49a865dd432d3b7f8d2f025",
      "parents": [
        "4d551465986c9a0040f47700a8c736c90519418f"
      ],
      "author": {
        "name": "Petri T. Koistinen",
        "email": "petri.koistinen@iki.fi",
        "time": "Fri Mar 31 02:29:54 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Fri Mar 31 12:18:49 2006 -0800"
      },
      "message": "[PATCH] drivers/mtd/maps/vmax301.c: fix off by one vmax_mtd\n\nFix an obvious off-by-one error (vmax_mtd[] contains two elements).\n\nSigned-off-by: Adrian Bunk \u003cbunk@stusta.de\u003e\nCc: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nAcked-by: David Woodhouse \u003cdwmw2@infradead.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "4d551465986c9a0040f47700a8c736c90519418f",
      "tree": "ee0dce8a219a1cd57c8387cb4f09f4af5ad84b9b",
      "parents": [
        "84e699e6ec5b431289474f78f8df9dfcc2737085"
      ],
      "author": {
        "name": "Herbert Poetzl",
        "email": "herbert@13thfloor.at",
        "time": "Fri Mar 31 02:29:53 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Fri Mar 31 12:18:49 2006 -0800"
      },
      "message": "[PATCH] mtd: fix broken name_to_dev_t() declaration\n\ndrivers/mtd/devices/blkmtd.c uses a local declaration of name_to_dev_t()\nwhich is inconsistant with the real one.  the following patch fixes this by\nremoving the local declaration and including mount.h instead\n\nthis patch was originally done by Micah Anderson.\n\nSigned-off-by: Herbert Poetzl \u003cherbert@13thfloor.at\u003e\nAcked-by: Micah Anderson \u003cmicah@riseup.net\u003e\nAcked-by: Daniel Hokka Zakrisson \u003cdaniel@hozac.com\u003e\nCc: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nAcked-by: David Woodhouse \u003cdwmw2@infradead.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "84e699e6ec5b431289474f78f8df9dfcc2737085",
      "tree": "6f402905e4b4fd3fe8f2bdafdb8f0d13b5b5a371",
      "parents": [
        "a63ec1b7b7c38f9a61ed11eefd670a49879e9dd3"
      ],
      "author": {
        "name": "Peter Korsgaard",
        "email": "jacmet@sunsite.dk",
        "time": "Fri Mar 31 02:29:52 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Fri Mar 31 12:18:49 2006 -0800"
      },
      "message": "[PATCH] mtd/redboot: Handle holes in fis table\n\nRedboot simply sets the first character of a fis entry to 0xff on \"fis\ndelete\".  The kernel redboot parser stops parsing on such an entry, and\nwithout this patch any entries after a deleted image would not be detected.\n\nSigned-off-by: Peter Korsgaard \u003cjacmet@sunsite.dk\u003e\nCc: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nAcked-by: David Woodhouse \u003cdwmw2@infradead.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "a63ec1b7b7c38f9a61ed11eefd670a49879e9dd3",
      "tree": "68c2ca49231f102f8b4d2a3c7378706ea7a4e611",
      "parents": [
        "edcbce2150fec1f6e6670e14eb65098eebfacae8"
      ],
      "author": {
        "name": "Pavel Machek",
        "email": "pavel@ucw.cz",
        "time": "Fri Mar 31 02:29:51 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Fri Mar 31 12:18:49 2006 -0800"
      },
      "message": "[PATCH] Add chip used in collie to jedec_probe\n\nThis adds flash chip used in Sharp Zaurus sl5500 (collie) to jedec_probe.\nValues work for read-only access, but I have not figured out how to do\nread-write.\n\nSigned-off-by: Pavel Machek \u003cpavel@suse.cz\u003e\nCc: Richard Purdie \u003crpurdie@rpsys.net\u003e\nCc: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nAcked-by: David Woodhouse \u003cdwmw2@infradead.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "edcbce2150fec1f6e6670e14eb65098eebfacae8",
      "tree": "859cd7d553c223651b585e672c522efc9bf71926",
      "parents": [
        "2d2dce0eb650831046316a9cd091ea5257aa7d4b"
      ],
      "author": {
        "name": "Eric Sesterhenn",
        "email": "snakebyte@gmx.de",
        "time": "Fri Mar 31 02:29:50 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Fri Mar 31 12:18:49 2006 -0800"
      },
      "message": "[PATCH] Dead code in mtd/maps/pci.c\n\nThis fixes coverity bug #12.  The first two gotos in the function still\nhave the initial value for mtd set.  And the third goto just triggers for\n!mtd\n\nSigned-off-by: Eric Sesterhenn \u003csnakebyte@gmx.de\u003e\nCc: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nAcked-by: David Woodhouse \u003cdwmw2@infradead.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "2d2dce0eb650831046316a9cd091ea5257aa7d4b",
      "tree": "6eb57d7a6071646472b1ee0d33c685ec465af336",
      "parents": [
        "8b68a1263305d4e8a07d8a43c996969ea9e44292"
      ],
      "author": {
        "name": "Pavel Machek",
        "email": "pavel@ucw.cz",
        "time": "Fri Mar 31 02:29:49 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Fri Mar 31 12:18:49 2006 -0800"
      },
      "message": "[PATCH] Kill ifdefs in mtdcore.c\n\nKill unneccessary ifdefs in mtdcore.c.\n\nSigned-off-by: Pavel Machek \u003cpavel@suse.cz\u003e\nCc: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nSigned-off-by: Adrian Bunk \u003cbunk@stusta.de\u003e\nAcked-by: David Woodhouse \u003cdwmw2@infradead.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "8b68a1263305d4e8a07d8a43c996969ea9e44292",
      "tree": "9daf6d89b7c19463b73c3ef237e7cc7685a1556e",
      "parents": [
        "b175d03dd207283609b7f8bfdaa5dc93ac9b16dd"
      ],
      "author": {
        "name": "Eric Sesterhenn / snakebyte",
        "email": "snakebyte@gmx.de",
        "time": "Fri Mar 31 02:29:47 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Fri Mar 31 12:18:48 2006 -0800"
      },
      "message": "[PATCH] Fix debug statement in inftlcore.c\n\nFix a copy\u0007/paste bug found by cpminer inside the inftlcore.c file\n\nSigned-off-by: Eric Sesterhenn \u003csnakebyte@gmx.de\u003e\nAcked-by: Greg Ungerer \u003cgerg@snapgear.com\u003e\nCc: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nAcked-by: David Woodhouse \u003cdwmw2@infradead.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "b175d03dd207283609b7f8bfdaa5dc93ac9b16dd",
      "tree": "2a570c584d29fccf8159e87ddbd9b1cf4096b00b",
      "parents": [
        "87d10f3c7954d143e509a2af2bca2a27aeb3114d"
      ],
      "author": {
        "name": "Atsushi Nemoto",
        "email": "anemo@mba.ocn.ne.jp",
        "time": "Fri Mar 31 02:29:46 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Fri Mar 31 12:18:48 2006 -0800"
      },
      "message": "[PATCH] mtd cmdlinepart: allow zero offset value\n\nCurrent cmdlinepart.c uses offset value 0 to specify a continuous\npartition.  This prevents creating a second partition starting at 0.\n\nFor example, I can split 4MB device using \"mtdparts\u003did:2M,2M\", but I can\nnot do \"mtdparts\u003did:2M@2M,2M@0\" to swap mtd0 and mtd1.\n\nThis patch introduces special OFFSET_CONTINUOUS value for a continuous\npartition and allows 0 for offset value.\n\nAlso this patch replaces 0xffffffff with UINT_MAX for SIZE_REMAINING.\n\nSigned-off-by: Atsushi Nemoto \u003canemo@mba.ocn.ne.jp\u003e\nCc: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nAcked-by: David Woodhouse \u003cdwmw2@infradead.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "87d10f3c7954d143e509a2af2bca2a27aeb3114d",
      "tree": "dadb374a0019895f26ceca4ade9291e8f52c784b",
      "parents": [
        "54af6b46485bb706b7cdffd2e419253fd00cae6a"
      ],
      "author": {
        "name": "Tobias Klauser",
        "email": "tklauser@nuerscht.ch",
        "time": "Fri Mar 31 02:29:45 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Fri Mar 31 12:18:48 2006 -0800"
      },
      "message": "[PATCH] drivers/mtd: Use ARRAY_SIZE macro\n\nUse ARRAY_SIZE macro instead of sizeof(x)/sizeof(x[0]) and remove\nduplicates of the macro.\n\nSigned-off-by: Tobias Klauser \u003ctklauser@nuerscht.ch\u003e\nCc: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nAcked-by: David Woodhouse \u003cdwmw2@infradead.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "54af6b46485bb706b7cdffd2e419253fd00cae6a",
      "tree": "d4b80cd3d8b648af290f6ae824535db826b6a0f7",
      "parents": [
        "0500abf52109d09bf60d740dec2e41d6cf265688"
      ],
      "author": {
        "name": "Adrian Bunk",
        "email": "bunk@stusta.de",
        "time": "Fri Mar 31 02:29:43 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Fri Mar 31 12:18:48 2006 -0800"
      },
      "message": "[PATCH] MTD_NAND_SHARPSL and MTD_NAND_NANDSIM should be tristate\u0027s\n\nMTD_NAND\u003dm and MTD_NAND_SHARPSL\u003dy or MTD_NAND_NANDSIM\u003dy are illegal\ncombinations that mustn\u0027t be allowed.\n\nThis patch fixes this bug by making MTD_NAND_SHARPSL and MTD_NAND_NANDSIM\ntristate\u0027s.\n\nAdditionally, it fixes some whitespace damage at these options.\n\nSigned-off-by: Adrian Bunk \u003cbunk@stusta.de\u003e\nAcked-by: Richard Purdie \u003crpurdie@rpsys.net\u003e\nAcked-by: \"Artem B. Bityutskiy\" \u003cdedekind@yandex.ru\u003e\nCc: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nAcked-by: David Woodhouse \u003cdwmw2@infradead.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "0500abf52109d09bf60d740dec2e41d6cf265688",
      "tree": "1f1b4479e5ec5643647c02547bebe162ea8245a7",
      "parents": [
        "48b192686dd20cb1576ae1d8ccd17a07971ef24a"
      ],
      "author": {
        "name": "Adrian Bunk",
        "email": "bunk@stusta.de",
        "time": "Fri Mar 31 02:29:42 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Fri Mar 31 12:18:48 2006 -0800"
      },
      "message": "[PATCH] drivers/mtd/: small cleanups\n\n- chips/sharp.c: make two needlessly global functions static\n\n- move some declarations to a header file where they belong to\n\nSigned-off-by: Adrian Bunk \u003cbunk@stusta.de\u003e\nAcked-by: David Woodhouse \u003cdwmw2@infradead.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "48b192686dd20cb1576ae1d8ccd17a07971ef24a",
      "tree": "a4e5f5a74c230439fdbdc895f7874c68bf505565",
      "parents": [
        "040d79f906654d55c810313f29c6605593bf21c5"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Mar 31 02:29:41 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Fri Mar 31 12:18:48 2006 -0800"
      },
      "message": "[PATCH] sem2mutex: drivers/mtd/\n\nSemaphore to mutex conversion.\n\nThe conversion was generated via scripts, and the result was validated\nautomatically via a script as well.\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nAcked-by: David Woodhouse \u003cdwmw2@infradead.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    }
  ],
  "next": "040d79f906654d55c810313f29c6605593bf21c5"
}
