)]}'
{
  "log": [
    {
      "commit": "e7f2f9918c0e97aa98ba147ca387e2c7238f0711",
      "tree": "dd85d6d2907bffeda76b42ce55a445e3142fe738",
      "parents": [
        "11a96d1820113fde0d55c3487b7da7a9031326b8",
        "c00193f9f09f9b852249a66391985f585d066084"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Oct 13 09:54:35 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Oct 13 09:54:45 2008 -0700"
      },
      "message": "Merge phase #5 (misc) of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip\n\nMerges oprofile, timers/hpet, x86/traps, x86/time, and x86/core misc items.\n\n* \u0027x86-core-v4-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip: (132 commits)\n  x86: change early_ioremap to use slots instead of nesting\n  x86: adjust dependencies for CONFIG_X86_CMOV\n  dumpstack: x86: various small unification steps, fix\n  x86: remove additional_cpus\n  x86: remove additional_cpus configurability\n  x86: improve UP kernel when CPU-hotplug and SMP is enabled\n  dumpstack: x86: various small unification steps\n  dumpstack: i386: make kstack\u003d an early boot-param and add oops\u003dpanic\n  dumpstack: x86: use log_lvl and unify trace formatting\n  dumptrace: x86: consistently include loglevel, print stack switch\n  dumpstack: x86: add \"end\" parameter to valid_stack_ptr and print_context_stack\n  dumpstack: x86: make printk_address equal\n  dumpstack: x86: move die_nmi to dumpstack_32.c\n  traps: x86: finalize unification of traps.c\n  traps: x86: make traps_32.c and traps_64.c equal\n  traps: x86: various noop-changes preparing for unification of traps_xx.c\n  traps: x86_64: use task_pid_nr(tsk) instead of tsk-\u003epid in do_general_protection\n  traps: i386: expand clear_mem_error and remove from mach_traps.h\n  traps: x86_64: make io_check_error equal to the one on i386\n  traps: i386: use preempt_conditional_sti/cli in do_int3\n  ...\n"
    },
    {
      "commit": "11a96d1820113fde0d55c3487b7da7a9031326b8",
      "tree": "dfbb1a6f7a8aa89ea9c5133aa661c5427b6c8b3a",
      "parents": [
        "a18992d4652553f65469ac72b54b7fdd4f058277"
      ],
      "author": {
        "name": "Alan Cox",
        "email": "alan@redhat.com",
        "time": "Mon Oct 13 10:46:24 2008 +0100"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Oct 13 09:51:45 2008 -0700"
      },
      "message": "tty: rename the remaining oddly named n_tty functions\n\nOriginal idea for this from a patch by Rodolfo Giometti which merges various\nbits of PPS support\n\nSigned-off-by: Alan Cox \u003calan@redhat.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "402fda9201ac619ea1f120996b1a142c57aeeb6b",
      "tree": "9a0e1411e55148aac0a8dd662335b29ab2e13063",
      "parents": [
        "8440838bc5337243917f13bc14ea2445da5e0197"
      ],
      "author": {
        "name": "Jason Wessel",
        "email": "jason.wessel@windriver.com",
        "time": "Mon Oct 13 10:45:36 2008 +0100"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Oct 13 09:51:44 2008 -0700"
      },
      "message": "tty: tty_io.c shadows sparse fix\n\ndrivers/char/tty_io.c:1413:17: warning: symbol \u0027buf\u0027 shadows an earlier one\ndrivers/char/tty_io.c:1379:20: originally declared here\n\nSigned-off-by: Jason Wessel \u003cjason.wessel@windriver.com\u003e\nSigned-off-by: Alan Cox \u003calan@redhat.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "a7be18d436f0c7007794965e5af29fa1ffff1e05",
      "tree": "4675ce7e3a5255108bf1d9c7f4ec4507592d50b7",
      "parents": [
        "17b820606e7bdd3be31b001265d0177423fea5eb"
      ],
      "author": {
        "name": "Alan Cox",
        "email": "alan@redhat.com",
        "time": "Mon Oct 13 10:45:17 2008 +0100"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Oct 13 09:51:44 2008 -0700"
      },
      "message": "applicom: Fix an unchecked user ioctl range and an error return\n\nCloses bug #11408 by checking the card index range for command 0\nFixes the ioctl to return ENOTTY which is correct for unknown ioctls\n\nSigned-off-by: Alan Cox \u003calan@redhat.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "17b820606e7bdd3be31b001265d0177423fea5eb",
      "tree": "df962dfca41e133983ee1a68deaad646a311d8b2",
      "parents": [
        "51383f69ec56fe3f425d5255fb43e18c445e061c"
      ],
      "author": {
        "name": "Alan Cox",
        "email": "alan@redhat.com",
        "time": "Mon Oct 13 10:45:06 2008 +0100"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Oct 13 09:51:44 2008 -0700"
      },
      "message": "tty: Minor tidyups and document fixes for n_tty\n\nRemove/fix some bogus NULL checks, comment some locking etc\n\nSigned-off-by: Alan Cox \u003calan@redhat.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "51383f69ec56fe3f425d5255fb43e18c445e061c",
      "tree": "f9d9e280892702c3a47ffa807c0937ea9c80e315",
      "parents": [
        "ea1afd256258f04a290aaa7fd5c2d4deb2e79e26"
      ],
      "author": {
        "name": "Alan Cox",
        "email": "alan@redhat.com",
        "time": "Mon Oct 13 10:44:57 2008 +0100"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Oct 13 09:51:44 2008 -0700"
      },
      "message": "tty: Remove lots of NULL checks\n\nMany tty drivers contain \u0027can\u0027t happen\u0027 checks against NULL pointers passed\nin by the tty layer. These have never been possible to occur. Even more\nimportantly if they ever do occur we want to know as it would be a serious\nbug.\n\nSigned-off-by: Alan Cox \u003calan@redhat.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "47afa7a5a8a8fb9e60cdb6a3bd612e07c37e9d90",
      "tree": "4f07d3aed0a08516162e529df75a014bd0798f8f",
      "parents": [
        "fe6e29fdb1a7b94891bbdd3c67358fe4ed14639d"
      ],
      "author": {
        "name": "Alan Cox",
        "email": "alan@redhat.com",
        "time": "Mon Oct 13 10:44:17 2008 +0100"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Oct 13 09:51:44 2008 -0700"
      },
      "message": "tty: some ICANON magic is in the wrong places\n\nMove the set up on ldisc change into the ldisc\nMove the INQ/OUTQ cases into the driver not in shared ioctl code where it\ngives bogus answers for other ldisc values\n\nSigned-off-by: Alan Cox \u003calan@redhat.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "fe6e29fdb1a7b94891bbdd3c67358fe4ed14639d",
      "tree": "a1b9524ec42081e6573dd5a77bbb881117c6a73b",
      "parents": [
        "8dff04ea316125639120c0a565ce0346b892fef7"
      ],
      "author": {
        "name": "Alan Cox",
        "email": "alan@redhat.com",
        "time": "Mon Oct 13 10:44:08 2008 +0100"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Oct 13 09:51:44 2008 -0700"
      },
      "message": "tty: simplify ktermios allocation\n\nCopy the simplification from the pty unix98 special case to the generic one.\nThis allows us to kill off driver-\u003etermios_locked entirely which is nice. We\nhave to whack bits of the cris driver as it meddles in places it shouldn\u0027t\nproviding its own arrays that were never used anyway.\n\nSigned-off-by: Alan Cox \u003calan@redhat.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "8dff04ea316125639120c0a565ce0346b892fef7",
      "tree": "f6c4d0455d951d550ab55cebe109ac526c957011",
      "parents": [
        "335adde689150d2fcf4df3cb26a6fc6740ed1f3e"
      ],
      "author": {
        "name": "Alan Cox",
        "email": "alan@redhat.com",
        "time": "Mon Oct 13 10:43:58 2008 +0100"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Oct 13 09:51:44 2008 -0700"
      },
      "message": "pty: simplify unix98 allocation\n\nWe need both termios and termios_locked so allocate them as one\n\nSigned-off-by: Alan Cox \u003calan@redhat.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "335adde689150d2fcf4df3cb26a6fc6740ed1f3e",
      "tree": "93e11b89e96e8baf15a276e4008e08bb5873fb90",
      "parents": [
        "fe9cd962a62cb5f666cf48b9941d3f3cde134254"
      ],
      "author": {
        "name": "Alan Cox",
        "email": "alan@redhat.com",
        "time": "Mon Oct 13 10:43:48 2008 +0100"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Oct 13 09:51:44 2008 -0700"
      },
      "message": "pty: Fix allocation failure double free\n\nThe updating and moving around of the pty code added a bug where both the\nhelper and caller free the main tty struct (the pty driver must free the\no_tty pair itself however).\n\nSigned-off-by: Alan Cox \u003calan@redhat.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "fe9cd962a62cb5f666cf48b9941d3f3cde134254",
      "tree": "c493585da2814bc8061c84fd2052a4407105d1e1",
      "parents": [
        "a6f37daa8b892fd29dd71be0de61460a478cb122"
      ],
      "author": {
        "name": "Alan Cox",
        "email": "alan@redhat.com",
        "time": "Mon Oct 13 10:43:38 2008 +0100"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Oct 13 09:51:43 2008 -0700"
      },
      "message": "pty: Coding style and polish\n\nWe\u0027ve done the heavy lifting now its time to mop up a bit\n\nSigned-off-by: Alan Cox \u003calan@redhat.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "15f1a6338ddd4e69fff965d4b3a0e1bfb7a13d9c",
      "tree": "301eea94cb514dc12b5070fc4b3ab33d3aab4322",
      "parents": [
        "4a2b5fddd53b80efcb3266ee36e23b8de28e761a"
      ],
      "author": {
        "name": "Sukadev Bhattiprolu",
        "email": "sukadev@us.ibm.com",
        "time": "Mon Oct 13 10:42:59 2008 +0100"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Oct 13 09:51:43 2008 -0700"
      },
      "message": "Add an instance parameter devpts interfaces\n\nPass-in \u0027inode\u0027 or \u0027tty\u0027 parameter to devpts interfaces.  With multiple\ndevpts instances, these parameters will be used in subsequent patches\nto identify the instance of devpts mounted. The parameters also help\nsimplify devpts implementation.\n\nChangelog[v3]:\n\t- minor changes due to merge with ttydev updates\n\t- rename parameters to emphasize they are ptmx or pts inodes\n\t- pass-in tty_struct * to devpts_pty_kill() (this will help\n\t  cleanup the get_node() call in a subsequent patch)\n\nSigned-off-by: Sukadev Bhattiprolu \u003csukadev@us.ibm.com\u003e\nSigned-off-by: Alan Cox \u003calan@redhat.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "4a2b5fddd53b80efcb3266ee36e23b8de28e761a",
      "tree": "ecb39392a17d1e9f0668c21064e3aa4207700e76",
      "parents": [
        "bf970ee46e0fb363c8df4393229121d54330a98e"
      ],
      "author": {
        "name": "Sukadev Bhattiprolu",
        "email": "sukadev@us.ibm.com",
        "time": "Mon Oct 13 10:42:49 2008 +0100"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Oct 13 09:51:43 2008 -0700"
      },
      "message": "Move tty lookup/reopen to caller\n\nMove tty_driver_lookup_tty() and tty_reopen() from tty_init_dev()\ninto tty_open() (one of the two callers of tty_init_dev()).  These\ncalls are not really required in ptmx_open(), the other caller,\nsince ptmx_open() would be setting up a new tty.\n\nChangelog[v2]:\n\t- remove the lookup and reopen calls from ptmx_open\n\t- merge with recent changes to ttydev tree\n\nSigned-off-by: Sukadev Bhattiprolu \u003csukadev@us.ibm.com\u003e\nSigned-off-by: Alan Cox \u003calan@redhat.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "bf970ee46e0fb363c8df4393229121d54330a98e",
      "tree": "3beb09c369b3459e70689b5f9a35caacf063f116",
      "parents": [
        "73ec06fc5f5c8e1097a7a4a4ab2d7c6c3a007e81"
      ],
      "author": {
        "name": "Alan Cox",
        "email": "alan@redhat.com",
        "time": "Mon Oct 13 10:42:39 2008 +0100"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Oct 13 09:51:43 2008 -0700"
      },
      "message": "tty: extract the pty init time special cases\n\nThe majority of the remaining init_dev code is pty special cases. We\nrefactor this code into the driver-\u003einstall method.\n\nSigned-off-by: Alan Cox \u003calan@redhat.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "73ec06fc5f5c8e1097a7a4a4ab2d7c6c3a007e81",
      "tree": "2c244c8b0d853f82e479eaf72ca64d6c9209c6a6",
      "parents": [
        "8b0a88d5912ab549d5adac2c8498ecdaae5319a5"
      ],
      "author": {
        "name": "Alan Cox",
        "email": "alan@redhat.com",
        "time": "Mon Oct 13 10:42:29 2008 +0100"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Oct 13 09:51:43 2008 -0700"
      },
      "message": "tty: Finish fixing up the init_dev interface to use ERR_PTR\n\nOriginal suggestion and proposal from Sukadev Bhattiprolu.\n\nSigned-off-by: Alan Cox \u003calan@redhat.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "8b0a88d5912ab549d5adac2c8498ecdaae5319a5",
      "tree": "8ed71420259881fd6d1dd5f5841ffe2f3c5d1fa2",
      "parents": [
        "7d7b93c1452f381350dbaf276a63357fa6559e6d"
      ],
      "author": {
        "name": "Alan Cox",
        "email": "alan@redhat.com",
        "time": "Mon Oct 13 10:42:19 2008 +0100"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Oct 13 09:51:42 2008 -0700"
      },
      "message": "tty: More driver operations\n\nWe have the lookup operation abstracted which is nice for pty cleanup but\nwe really want to abstract the add/remove entries as well so that we can\npull the pty code out of the tty core and create a clear defined interface\nfor the tty driver table.\n\nSigned-off-by: Alan Cox \u003calan@redhat.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "7d7b93c1452f381350dbaf276a63357fa6559e6d",
      "tree": "02ce0c37e7fea66d1e8af20111d92171bfc0ff1d",
      "parents": [
        "99f1fe189daf8e99a847e420567e49dd7ee2aae7"
      ],
      "author": {
        "name": "Alan Cox",
        "email": "alan@redhat.com",
        "time": "Mon Oct 13 10:42:09 2008 +0100"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Oct 13 09:51:42 2008 -0700"
      },
      "message": "tty: kref the tty driver object\n\nSigned-off-by: Alan Cox \u003calan@redhat.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "99f1fe189daf8e99a847e420567e49dd7ee2aae7",
      "tree": "09db410aa2b32e74086593eb771c75efe553a585",
      "parents": [
        "23499705753ab8b4c6b0b64e6c424a370bd900a1"
      ],
      "author": {
        "name": "Alan Cox",
        "email": "alan@redhat.com",
        "time": "Mon Oct 13 10:42:00 2008 +0100"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Oct 13 09:51:42 2008 -0700"
      },
      "message": "tty: Clean up the tty_init_dev changes further\n\nFix up the naming, style and extract some bits of code into the driver\nspecific code\n\nSigned-off-by: Alan Cox \u003calan@redhat.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "23499705753ab8b4c6b0b64e6c424a370bd900a1",
      "tree": "db092164c37a2c2897275a37d61ef325a59808d9",
      "parents": [
        "d81ed10307027e1643a65ab5fe17cc01233d376d"
      ],
      "author": {
        "name": "Sukadev Bhattiprolu",
        "email": "sukadev@us.ibm.com",
        "time": "Mon Oct 13 10:41:51 2008 +0100"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Oct 13 09:51:42 2008 -0700"
      },
      "message": "tty: Move parts of tty_init_dev into new functions\n\nMove the \u0027find-tty\u0027 and \u0027fast-track-open\u0027 parts of init_dev() to\nseparate functions.\n\nSigned-off-by: Sukadev Bhattiprolu \u003csukadev@us.ibm.com\u003e\nSigned-off-by: Alan Cox \u003calan@redhat.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "d81ed10307027e1643a65ab5fe17cc01233d376d",
      "tree": "e46ac5735124308357f42214a8a26f75dcd3f412",
      "parents": [
        "feebed6515a113eeb33919e9557a8b9710ea627c"
      ],
      "author": {
        "name": "Alan Cox",
        "email": "alan@redhat.com",
        "time": "Mon Oct 13 10:41:42 2008 +0100"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Oct 13 09:51:42 2008 -0700"
      },
      "message": "tty: Remove more special casing and out of place code\n\nCarry on pushing code out of tty_io when it belongs to other drivers. I\u0027m\nnot 100% happy with some of this and it will be worth revisiting some of the\nexports later when the restructuring work is done.\n\nSigned-off-by: Alan Cox \u003calan@redhat.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "feebed6515a113eeb33919e9557a8b9710ea627c",
      "tree": "0461178ee0c5e16ea90023e4b6386cb5c57d3391",
      "parents": [
        "bf7a06bcce205705ea5c7675cbb8ea9239ea30a0"
      ],
      "author": {
        "name": "Alan Cox",
        "email": "alan@redhat.com",
        "time": "Mon Oct 13 10:41:30 2008 +0100"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Oct 13 09:51:42 2008 -0700"
      },
      "message": "tty: shutdown method\n\nRight now there are various drivers that try to use tty-\u003ecount to know when\nthey get the final close. Aristeau Rozanski showed while debugging the vt\nsysfs race that this isn\u0027t entirely safe.\n\nInstead of driver side tricks to work around this introduce a shutdown which\nis called when the tty is being destructed. This also means that the shutdown\nmethod is tied into the refcounting.\n\nUse this to rework the console close/sysfs logic.\n\nRemove lots of special case code from the tty core code. The pty code can now\nhave a shutdown() method that replaces the special case hackery in the tree\nfree up paths.\n\nSigned-off-by: Alan Cox \u003calan@redhat.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "bf7a06bcce205705ea5c7675cbb8ea9239ea30a0",
      "tree": "98decd6b145bb9e42350190bb32178584e4caca6",
      "parents": [
        "15582d36a15978355d2168eaa018a3736db7281f"
      ],
      "author": {
        "name": "Alan Cox",
        "email": "alan@redhat.com",
        "time": "Mon Oct 13 10:41:16 2008 +0100"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Oct 13 09:51:42 2008 -0700"
      },
      "message": "vt: remove bogus lock dropping\n\nFor hysterical raisins the vt layer drops and retakes locks in the write\nmethod. This is a left over from the days when user/kernel data was passed\ndirectly to the tty not pre-buffered.\n\nSigned-off-by: Alan Cox \u003calan@redhat.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "15582d36a15978355d2168eaa018a3736db7281f",
      "tree": "6ea2b94bb4504cf0d8dffdecbd85a60fe0d69c06",
      "parents": [
        "dbda4c0b97b18fd59b3964548361b4f92357f730"
      ],
      "author": {
        "name": "Alan Cox",
        "email": "alan@redhat.com",
        "time": "Mon Oct 13 10:41:03 2008 +0100"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Oct 13 09:51:42 2008 -0700"
      },
      "message": "pty: If the administrator creates a device for a ptmx slave we should not error\n\nThe open path for ptmx slaves is via the ptmx device. Opening them any\nother way is not allowed. Vegard Nossum found that previously this was not\nthe case and mknod foo c 128 42; cat foo would produce nasty diagnostics\n\nSigned-off-by: Alan Cox \u003calan@redhat.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "934e6ebf96e8c1a0f299e64129fdaebc1132a427",
      "tree": "ab4bd754997b097f06a5cfefd9e3671d56e628f4",
      "parents": [
        "2cb5998b5f0ccc886fdda3509059eef297b49577"
      ],
      "author": {
        "name": "Alan Cox",
        "email": "alan@redhat.com",
        "time": "Mon Oct 13 10:40:43 2008 +0100"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Oct 13 09:51:41 2008 -0700"
      },
      "message": "tty: Redo current tty locking\n\nCurrently it is sometimes locked by the tty mutex and sometimes by the\nsighand lock. The latter is in fact correct and now we can hand back referenced\nobjects we can fix this up without problems around sleeping functions.\n\nSigned-off-by: Alan Cox \u003calan@redhat.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "2cb5998b5f0ccc886fdda3509059eef297b49577",
      "tree": "9113731d3f892c2e164bfd05a7cf1a4b1713a619",
      "parents": [
        "216ba023a96c04e8d3aabf83d5931c35b6e2dbbb"
      ],
      "author": {
        "name": "Alan Cox",
        "email": "alan@redhat.com",
        "time": "Mon Oct 13 10:40:30 2008 +0100"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Oct 13 09:51:41 2008 -0700"
      },
      "message": "tty: the vhangup syscall is racy\n\nWe now have the infrastructure to sort this out but rather than teaching\nthe syscall tty lock rules we move the hard work into a tty helper\n\nSigned-off-by: Alan Cox \u003calan@redhat.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "216ba023a96c04e8d3aabf83d5931c35b6e2dbbb",
      "tree": "3ff36bd6874a997354dcec8d02256489cf1fe508",
      "parents": [
        "d18a750fe9fa3b6cab882d51f99bba25bb0a006e"
      ],
      "author": {
        "name": "Alan Cox",
        "email": "alan@redhat.com",
        "time": "Mon Oct 13 10:40:19 2008 +0100"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Oct 13 09:51:41 2008 -0700"
      },
      "message": "mxser: Switch to kref tty\n\nSigned-off-by: Alan Cox \u003calan@redhat.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "d18a750fe9fa3b6cab882d51f99bba25bb0a006e",
      "tree": "391ccab5a5847782ae48dde60a661486f434ae35",
      "parents": [
        "d450b5a0196b6442cf3f29fc611d9c8daa56b559"
      ],
      "author": {
        "name": "Alan Cox",
        "email": "alan@redhat.com",
        "time": "Mon Oct 13 10:40:07 2008 +0100"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Oct 13 09:51:41 2008 -0700"
      },
      "message": "stallion: Use krefs\n\nUse tty_port_init and krefs in the stallion drivers to protect us from devices\ngoing away underneath us. As with the other drives some rearranging is done to\npass the tty structure down properly on the user side.\n\nSigned-off-by: Alan Cox \u003calan@redhat.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "d450b5a0196b6442cf3f29fc611d9c8daa56b559",
      "tree": "2a6b641b033bfbe16b194897ddbc988544dcefc2",
      "parents": [
        "4a90f09b20f4622dcbff1f0e1e6bae1704f8ad8c"
      ],
      "author": {
        "name": "Alan Cox",
        "email": "alan@redhat.com",
        "time": "Mon Oct 13 10:39:58 2008 +0100"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Oct 13 09:51:41 2008 -0700"
      },
      "message": "tty: kref usage for isicom and moxa\n\nRather than blindly keep taking krefs we reorder the code in a few places\nto pass the tty down to the right place (which is important as from the user\nside it is not the case that tty \u003d\u003d port-\u003etty in all situations). For the irq\nand related paths use the krefs to stop the tty being freed under us.\n\nSigned-off-by: Alan Cox \u003calan@redhat.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "4a90f09b20f4622dcbff1f0e1e6bae1704f8ad8c",
      "tree": "9b275f88f2705cb10121d5982741aef3a088a7c8",
      "parents": [
        "95f9bfc6b76e862265a2d70ae061eec18fe14140"
      ],
      "author": {
        "name": "Alan Cox",
        "email": "alan@redhat.com",
        "time": "Mon Oct 13 10:39:46 2008 +0100"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Oct 13 09:51:41 2008 -0700"
      },
      "message": "tty: usb-serial krefs\n\nUse kref in the USB serial drivers so that we don\u0027t free tty structures\nfrom under the URB receive handlers as has historically been the case if\nyou were unlucky. This also gives us a framework for general tty drivers to\nuse tty_port objects and refcount.\n\nContains two err-\u003edev_err changes merged together to fix clashes in the\n-next tree.\n\nSigned-off-by: Alan Cox \u003calan@redhat.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "95f9bfc6b76e862265a2d70ae061eec18fe14140",
      "tree": "88e72e0d31b9f368d5c9dcb3e0d92994effe5edc",
      "parents": [
        "452a00d2ee288f2cbc36f676edd06cb14d2878c1"
      ],
      "author": {
        "name": "Alan Cox",
        "email": "alan@redhat.com",
        "time": "Mon Oct 13 10:39:23 2008 +0100"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Oct 13 09:51:41 2008 -0700"
      },
      "message": "tty: Move tty_write_message out of kernel/printk\n\nThis is pure tty code so put it in the tty layer where it can be with the\nlocking relevant material it uses\n\nSigned-off-by: Alan Cox \u003calan@redhat.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "452a00d2ee288f2cbc36f676edd06cb14d2878c1",
      "tree": "c8251c73924a6ac9b174bc557357bfeff0c8d1a8",
      "parents": [
        "f4d2a6c2096b764decb20070b1bf4356de9144a8"
      ],
      "author": {
        "name": "Alan Cox",
        "email": "alan@redhat.com",
        "time": "Mon Oct 13 10:39:13 2008 +0100"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Oct 13 09:51:41 2008 -0700"
      },
      "message": "tty: Make get_current_tty use a kref\n\nWe now return a kref covered tty reference. That ensures the tty structure\ndoesn\u0027t go away when you have a return from get_current_tty. This is not\nenough to protect you from most of the resources being freed behind your\nback - yet.\n\n[Updated to include fixes for SELinux problems found by Andrew Morton and\n an s390 leak found while debugging the former]\n\nSigned-off-by: Alan Cox \u003calan@redhat.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "f4d2a6c2096b764decb20070b1bf4356de9144a8",
      "tree": "ff1f86d51ea0a60c0a1d22df68e39dd78e625ab1",
      "parents": [
        "8f520021837d45c47d0ab57e7271f8d88bf7f3a4"
      ],
      "author": {
        "name": "Alan Cox",
        "email": "alan@redhat.com",
        "time": "Mon Oct 13 10:39:01 2008 +0100"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Oct 13 09:51:41 2008 -0700"
      },
      "message": "tty: compare the tty winsize\n\nWe always use the real tty one for stuff so the pty one should not be\ncompared. As we propagate window changes to both it doesn\u0027t currently\nmatter but will when we tidy up the pty termios logic a bit more\n\nSigned-off-by: Alan Cox \u003calan@redhat.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "8f520021837d45c47d0ab57e7271f8d88bf7f3a4",
      "tree": "4435f3141163480c23f7274c502d58e3cd9cb963",
      "parents": [
        "1d65b4a088de407e99714fdc27862449db04fb5c"
      ],
      "author": {
        "name": "Alan Cox",
        "email": "alan@redhat.com",
        "time": "Mon Oct 13 10:38:46 2008 +0100"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Oct 13 09:51:41 2008 -0700"
      },
      "message": "tty: Termios locking - sort out real_tty confusions and lock reads\n\nThis moves us towards sanity and should mean our termios locking is now\ncomplete and comprehensive.\n\nSigned-off-by: Alan Cox \u003calan@redhat.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "1d65b4a088de407e99714fdc27862449db04fb5c",
      "tree": "89f378767b9e0fe1a902d73bf43be382c6110f72",
      "parents": [
        "5aaa70a80f5bbfcc4d6a1f844bdd1c5d6b445b5f"
      ],
      "author": {
        "name": "Alan Cox",
        "email": "alan@redhat.com",
        "time": "Mon Oct 13 10:38:18 2008 +0100"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Oct 13 09:51:40 2008 -0700"
      },
      "message": "tty: Add termiox\n\nWe need a way to describe the various additional modes and flow control\nfeatures that random weird hardware shows up and software such as wine\nwants to emulate as Windows supports them.\n\nTCGETX/TCSETX and the termiox ioctl are a SYS5 extension that we might as\nwell adopt. This patches adds the structures and the basic ioctl interfaces\nwhen the TCGETX etc defines are added for an architecture. Drivers wishing\nto use this stuff need to add new methods.\n\nSigned-off-by: Alan Cox \u003calan@redhat.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "5aaa70a80f5bbfcc4d6a1f844bdd1c5d6b445b5f",
      "tree": "8826ff2e11d11ab0070d1ebf0ca8d0b91a9fa586",
      "parents": [
        "c26c56c0f40e200e61d1390629c806f6adaffbcc"
      ],
      "author": {
        "name": "Alan Cox",
        "email": "alan@redhat.com",
        "time": "Mon Oct 13 10:38:07 2008 +0100"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Oct 13 09:51:40 2008 -0700"
      },
      "message": "tty: ipw need reworking\n\nThis came in via another tree and unfortunately is rather broken on\nthe tty side. Comment the apparent locking problems for someone who knows\nthe driver to look at.\n\nFix the termios and other ioctl handling. The driver was calling the wrong\nmethods for what it wanted to do but the right ones existed so its a simple\nfix up.\n\nSigned-off-by: Alan Cox \u003calan@redhat.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "6f967f7891076abc09e12ce952f85825e7ee8caf",
      "tree": "1ebd77aae1dc887676915b3c469d84681db2d9ac",
      "parents": [
        "9c9f4ded90a59eee84e15f5fd38c03d60184e112"
      ],
      "author": {
        "name": "Alan Cox",
        "email": "alan@redhat.com",
        "time": "Mon Oct 13 10:37:36 2008 +0100"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Oct 13 09:51:40 2008 -0700"
      },
      "message": "tty: use krefs to protect driver module counts\n\nThe tty layer keeps driver module counts that are used so the driver knows\nwhen it can be unloaded. For obvious reasons we want to tie that to the\nrefcounting properly.\n\nAt this point the driver side itself isn\u0027t refcounted nicely but we can do\nthat later and kref the drivers.\n\nSigned-off-by: Alan Cox \u003calan@redhat.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "9c9f4ded90a59eee84e15f5fd38c03d60184e112",
      "tree": "925a7f7c30136477b3f8551123fd86b355fd60fb",
      "parents": [
        "348eb12e5598be97400c749d3d93a71856ae0b2b"
      ],
      "author": {
        "name": "Alan Cox",
        "email": "alan@redhat.com",
        "time": "Mon Oct 13 10:37:26 2008 +0100"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Oct 13 09:51:40 2008 -0700"
      },
      "message": "tty: Add a kref count\n\nIntroduce a kref to the tty structure and use it to protect the tty-\u003esignal\ntty references. For now we don\u0027t introduce it for anything else.\n\nSigned-off-by: Alan Cox \u003calan@redhat.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "9e48565d217a8a96cc7577308ad41e9e4b806a62",
      "tree": "2ff5f745d72e0d33a93cdc51622f011f0031eb76",
      "parents": [
        "e04957365b21066285557e42ffe16d8330d46c02"
      ],
      "author": {
        "name": "Alan Cox",
        "email": "alan@redhat.com",
        "time": "Mon Oct 13 10:37:07 2008 +0100"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Oct 13 09:51:40 2008 -0700"
      },
      "message": "tty: Split tty_port into its own file\n\nNot much in it yet but this will grow a lot\n\nSigned-off-by: Alan Cox \u003calan@redhat.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "e04957365b21066285557e42ffe16d8330d46c02",
      "tree": "c359a59a0ac283d051736534d835df2cc0f8e17b",
      "parents": [
        "c564b6fda961bd999aac0b709b79288dd8f426cd"
      ],
      "author": {
        "name": "Alan Cox",
        "email": "alan@redhat.com",
        "time": "Mon Oct 13 10:36:58 2008 +0100"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Oct 13 09:51:40 2008 -0700"
      },
      "message": "tty: split the buffering from tty_io\n\nThe two are basically independent chunks of code so lets split them up for\nreadability and sanity. It also makes the API boundaries much clearer.\n\nSigned-off-by: Alan Cox \u003calan@redhat.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "e6885107736a4dd23e7d3bc103fe6d043c63c4de",
      "tree": "77454a1a03bd0021945e3e6ef08b6f39ef8dbf14",
      "parents": [
        "b70ac7718579b5cbf3bdd74fd01132d1c91596f4"
      ],
      "author": {
        "name": "Alan Cox",
        "email": "alan@redhat.com",
        "time": "Mon Oct 13 10:36:40 2008 +0100"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Oct 13 09:51:40 2008 -0700"
      },
      "message": "tty: move tioclinux from a special case\n\nRight now we have ifdefs and hooks in the core ioctl handler for TIOCLINUX\nand then test if its a console. This is brain dead. Instead call the\ntioclinux helper from the relevant driver ioctl methods.\n\nSigned-off-by: Alan Cox \u003calan@redhat.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "716da631ae91fc5e9f8d5815f8ef5fbfed862b80",
      "tree": "cfb920b117c19b4f88722e910358c2a812349a7f",
      "parents": [
        "0c8946d97ae7d2d6691f8290a10faa63453b63f8"
      ],
      "author": {
        "name": "Alan Cox",
        "email": "alan@redhat.com",
        "time": "Mon Oct 13 10:35:33 2008 +0100"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Oct 13 09:51:39 2008 -0700"
      },
      "message": "nozomi: Fix close on error\n\nNozomi assumes the close method isn\u0027t called if open errors. The tty layer\nis different to other drives in this respect however. Pointed out by Denis J\nBarrow.\n\nSigned-off-by: Alan Cox \u003calan@redhat.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "7459b6ff36ab5e7d160980c3cb2be2f8cd194778",
      "tree": "0cac8e47e2f4242aed9dcb124007b5f6e9c8cf8c",
      "parents": [
        "9d020a2e5fd2c79f5b08a6cab2b02e7231d7cb84"
      ],
      "author": {
        "name": "Miloslav Trmac",
        "email": "mitr@redhat.com",
        "time": "Mon Oct 13 10:35:15 2008 +0100"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Oct 13 09:51:39 2008 -0700"
      },
      "message": "audit: Handle embedded NUL in TTY input auditing\n\nData read from a TTY can contain an embedded NUL byte (e.g. after\npressing Ctrl-2, or sent to a PTY).  After the previous patch, the data\nwould be logged only up to the first NUL.\n\nThis patch modifies the AUDIT_TTY record to always use the hexadecimal\nformat, which does not terminate at the first NUL byte.  The vast\nmajority of recorded TTY input data will contain either \u0027 \u0027 or \u0027\\n\u0027, so\nthe hexadecimal format would have been used anyway.\n\nSigned-off-by: Miloslav Trmac \u003cmitr@redhat.com\u003e\nSigned-off-by: Alan Cox \u003calan@redhat.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "9d020a2e5fd2c79f5b08a6cab2b02e7231d7cb84",
      "tree": "2c3d42f2a0fd4617d2e708e91dae6bbc4b4a5c15",
      "parents": [
        "f1ddfd950221cca4d7ba753a71bc4b8930a42a43"
      ],
      "author": {
        "name": "Akinobu Mita",
        "email": "akinobu.mita@gmail.com",
        "time": "Mon Oct 13 10:35:05 2008 +0100"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Oct 13 09:51:39 2008 -0700"
      },
      "message": "ip2: avoid add_timer with pending timer\n\nadd_timer() is not supposed to be called when the timer is pending.\nip2 driver attempts to avoid that condition by setting and resetting\na flag (TimerOn) in timer function. But there is some gap between\nadd_timer() and setting TimerOn.\n\nThis patch fix this problem by using mod_timer() and remove TimerOn\nwhich has been unnecessary by this change.\n\nSigned-off-by: Akinobu Mita \u003cakinobu.mita@gmail.com\u003e\nSigned-off-by: Jiri Slaby \u003cjirislaby@gmail.com\u003e\nSigned-off-by: Alan Cox \u003calan@redhat.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "f1ddfd950221cca4d7ba753a71bc4b8930a42a43",
      "tree": "5051c57c141121e3ad1b6532908c202b1e5731d6",
      "parents": [
        "7ccd7020ef188b62781fe2f0a68131aa066d59a5"
      ],
      "author": {
        "name": "Jiri Slaby",
        "email": "jirislaby@gmail.com",
        "time": "Mon Oct 13 10:34:56 2008 +0100"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Oct 13 09:51:39 2008 -0700"
      },
      "message": "ip2: init/deinit cleanup\n\nCleanup of module_init/exit:\n- mostly whitespace\n- remove empty functions\n- replace c++ comments\n- remove useless prints (module loaded, unloaded)\n- mark the calls as __exit and __init\n- use break; and return; to save some indent levels after it\n- note resource leakage\n\nIt\u0027s still mess, but now it\u0027s readable.\n\nSigned-off-by: Jiri Slaby \u003cjirislaby@gmail.com\u003e\nSigned-off-by: Alan Cox \u003calan@redhat.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "7ccd7020ef188b62781fe2f0a68131aa066d59a5",
      "tree": "26bff62cfbc6257aa6aadede5255d594c16e63ee",
      "parents": [
        "cf176bc30289f1e3ed858bc7630766cbd7d68a86"
      ],
      "author": {
        "name": "Jiri Slaby",
        "email": "jirislaby@gmail.com",
        "time": "Mon Oct 13 10:34:45 2008 +0100"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Oct 13 09:51:39 2008 -0700"
      },
      "message": "ip2: fix sparse warnings\n\nSigned-off-by: Jiri Slaby \u003cjirislaby@gmail.com\u003e\nSigned-off-by: Alan Cox \u003calan@redhat.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "cf176bc30289f1e3ed858bc7630766cbd7d68a86",
      "tree": "0e30dc91b288ce353aed0fc613ae5f4a6550d319",
      "parents": [
        "47babd4c6a16915aeb15d4216d91f03910572982"
      ],
      "author": {
        "name": "Jiri Slaby",
        "email": "jirislaby@gmail.com",
        "time": "Mon Oct 13 10:34:36 2008 +0100"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Oct 13 09:51:39 2008 -0700"
      },
      "message": "ip2: cleanup globals\n\n- do not init .bss zeroed data to zero again (by memset or\n  explicit assignment)\n- use char [] instead of char * for string constants\n\nSigned-off-by: Jiri Slaby \u003cjirislaby@gmail.com\u003e\nSigned-off-by: Alan Cox \u003calan@redhat.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "47babd4c6a16915aeb15d4216d91f03910572982",
      "tree": "ca30c2ca459e5e91ccb657be4367e51043d73801",
      "parents": [
        "1361b7d3592b006574fb3cfeb21a02d520cca315"
      ],
      "author": {
        "name": "Jiri Slaby",
        "email": "jirislaby@gmail.com",
        "time": "Mon Oct 13 10:34:27 2008 +0100"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Oct 13 09:51:39 2008 -0700"
      },
      "message": "Char: merge ip2main and ip2base\n\nIt\u0027s pretty useless to have one setup() function separated along with\nmodule_init() which only calls a function from ip2main anyway. Get rid\nof ip2base.\n\nRemove also checks of always-true now.\n\nSigned-off-by: Jiri Slaby \u003cjirislaby@gmail.com\u003e\nSigned-off-by: Alan Cox \u003calan@redhat.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "1361b7d3592b006574fb3cfeb21a02d520cca315",
      "tree": "eff43bb8794ed26439c7ecf11ad60eae353fb80b",
      "parents": [
        "24e6fd4cdc841176ca3713fddc9a02bd128b1191"
      ],
      "author": {
        "name": "Jiri Slaby",
        "email": "jirislaby@gmail.com",
        "time": "Mon Oct 13 10:34:18 2008 +0100"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Oct 13 09:51:39 2008 -0700"
      },
      "message": "Char: sx, fix io unmapping\n\nboard-\u003ebase is increased for CF cards after mapping. Use board-\u003ebase2\nfor unmapping the region, since it holds the original/correct address.\n\nSigned-off-by: Jiri Slaby \u003cjirislaby@gmail.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Alan Cox \u003calan@redhat.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "24e6fd4cdc841176ca3713fddc9a02bd128b1191",
      "tree": "381cb04a4c12bb550c8e5a0e99a5f732e526eb6a",
      "parents": [
        "7aef709bf6f7a0886ee044960a7a86ea76dc6e2b"
      ],
      "author": {
        "name": "Jiri Slaby",
        "email": "jirislaby@gmail.com",
        "time": "Mon Oct 13 10:34:09 2008 +0100"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Oct 13 09:51:38 2008 -0700"
      },
      "message": "Char: cyclades. remove bogus iomap\n\nreadl/writel are not expected to accept iomap return value. Replace\nbogus mapping by standard ioremap.\n\nSigned-off-by: Jiri Slaby \u003cjirislaby@gmail.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Alan Cox \u003calan@redhat.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "9ae7b08ad5c91baf9c223844bfd41ca9bc54917b",
      "tree": "dc35773e846a31beca5941773274afcf0451e1a8",
      "parents": [
        "02f11f392434656f00fdcc8c51348d52bd39afe8"
      ],
      "author": {
        "name": "Alan Cox",
        "email": "alan@redhat.com",
        "time": "Mon Oct 13 10:32:09 2008 +0100"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Oct 13 09:51:38 2008 -0700"
      },
      "message": "epca: call tty_port_init\n\nSigned-off-by: Alan Cox \u003calan@redhat.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "2571cd6a8e07a13fd3ac77f5e2c5470966d6f9c9",
      "tree": "7e8790bb46b7decdb94d9efd2d6c0d76a1712668",
      "parents": [
        "41ca73229809eb3d173e316d11d3943d49924209"
      ],
      "author": {
        "name": "Julia Lawall",
        "email": "julia@diku.dk",
        "time": "Mon Oct 13 10:31:49 2008 +0100"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Oct 13 09:51:37 2008 -0700"
      },
      "message": "drivers/char/hvc_console.c: adjust call to put_tty_driver\n\nThe call to put_tty_driver is out of place and is applied to the wrong\nargument.\n\nThe function enclosing the patched code calls alloc_tty_driver and stores\nthe result in drv.  Subsequently, there are two occurrences of error\nhandling code, one making a goto to put_tty and one making a goto to\nstop_thread.  At the point of the first one the assignment hvc_driver \u003d drv\nhas not yet been executed, and from inspecting the rest of the file it\nseems that hvc_driver would be NULL.  Thus the current call to\nput_tty_driver is useless, and one applied to drv is needed.  The goto\nstop_thread is in the error handling code for a call to\ntty_register_driver, but the error cases in tty_register_driver do not free\nits argument, so it should be done here.  Thus, I have moved the put_tty\nlabel after the stop_thread label, so that put_tty_driver is called in both\ncases.\n\nThe semantic match that finds this problem is as follows:\n(http://www.emn.fr/x-info/coccinelle/)\n\n// \u003csmpl\u003e\n@r exists@\nlocal idexpression x;\nexpression E,f;\nposition p1,p2,p3;\nidentifier l;\nstatement S;\n@@\n\nx \u003d alloc_tty_driver@p1(...)\n...\nif (x \u003d\u003d NULL) S\n... when !\u003d E \u003d x\n    when !\u003d put_tty_driver(x)\ngoto@p2 l;\n... when !\u003d E \u003d x\n    when !\u003d f(...,x,...)\n    when any\n(\nreturn \\(0\\|x\\);\n|\nreturn@p3 ...;\n)\n\n@script:python@\np1 \u003c\u003c r.p1;\np2 \u003c\u003c r.p2;\np3 \u003c\u003c r.p3;\n@@\n\nprint \"%s: call on line %s not freed or saved before return on line %s via line %s\" % (p1[0].file,p1[0].line,p3[0].line,p2[0].line)\n// \u003c/smpl\u003e\n\nSigned-off-by: Julia Lawall \u003cjulia@diku.dk\u003e\nSigned-off-by: Alan Cox \u003calan@redhat.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "c00193f9f09f9b852249a66391985f585d066084",
      "tree": "7ec2e0584fdddd89222a26f666903680b9b73892",
      "parents": [
        "c1a2f4b10852ce68e70f7e4c53600c36cc63ea45",
        "accba5f3965d6a9d1bf7c1e1a7995d17e9d521b6",
        "f26ed116c0baa8f9cbbe3d5db84034d75f6250f8"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Oct 13 14:18:42 2008 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Oct 13 14:18:42 2008 +0200"
      },
      "message": "Merge branches \u0027oprofile-v2\u0027 and \u0027timers/hpet\u0027 into x86/core-v4\n"
    },
    {
      "commit": "807f4f8cdd5b65a8a5fcfda266c074f6a23818dd",
      "tree": "395afdf45badd02d03871c827b8baa850cbe5841",
      "parents": [
        "1a2217a9516b134e0a0e54cb4629e1e075d97b17",
        "8daf14cf56816303d64d1a705fcbc389211ba36e"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun Oct 12 12:04:59 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun Oct 12 12:05:14 2008 -0700"
      },
      "message": "Merge branch \u0027x86-core-v2-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip\n\nThis merges in:\n\n  x86/build, x86/microcode, x86/spinlocks, x86/memory-corruption-check,\n  x86/early-printk, x86/xsave, x86/quirks, x86/setup, x86/signal,\n  core/signal, x86/urgent, x86/xen\n\n* \u0027x86-core-v2-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip: (142 commits)\n  x86: make processor type select depend on CONFIG_EMBEDDED\n  x86: extend processor type select help text\n  x86, amd-iommu: propagate PCI device enabling error\n  warnings: fix arch/x86/kernel/io_apic_64.c\n  warnings: fix arch/x86/kernel/early_printk.c\n  x86, fpu: check __clear_user() return value\n  x86: memory corruption check - cleanup\n  x86: ioperm user_regset\n  xen: do not reserve 2 pages of padding between hypervisor and fixmap.\n  xen: use spin_lock_nest_lock when pinning a pagetable\n  x86: xsave: set FP, SSE bits in the xsave header in the user sigcontext\n  x86: xsave: fix error condition in save_i387_xstate()\n  x86: SB450: deprioritize DMI quirks\n  x86: SB450: skip IRQ0 override if it is not routed to INT2 of IOAPIC\n  x86: replace a magic number with a named constant in the VESA boot code\n  x86 setup: remove IMAGE_OFFSET\n  x86 setup: remove DEF_INITSEG and DEF_SETUPSEG\n  Revert \"x86: fix ghost EDD devices in /sys again\"\n  x86 setup: fix ghost entries under /sys/firmware/edd take 3\n  x86: signal: remove indent in restore_sigcontext()\n  ...\n"
    },
    {
      "commit": "365d46dc9be9b3c833990a06f3994b1987eda578",
      "tree": "9397d1304144a288411f2118707f44ff5e862fa6",
      "parents": [
        "5dc64a3442b98eaa0e3730c35fcf00cf962a93e7",
        "fd048088306656824958e7783ffcee27e241b361"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Sun Oct 12 12:35:23 2008 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Sun Oct 12 12:37:32 2008 +0200"
      },
      "message": "Merge branch \u0027linus\u0027 into x86/xen\n\nConflicts:\n\tarch/x86/kernel/cpu/common.c\n\tarch/x86/kernel/process_64.c\n\tarch/x86/xen/enlighten.c\n"
    },
    {
      "commit": "56c5d900dbb8e042bfad035d18433476931d8f93",
      "tree": "00b793965beeef10db03e0ff021d2d965c410759",
      "parents": [
        "4dd95b63ae25c5cad6986829b5e8788e9faa0330",
        "ead9d23d803ea3a73766c3cb27bf7563ac8d7266"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sat Oct 11 12:39:35 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sat Oct 11 12:39:35 2008 -0700"
      },
      "message": "Merge branch \u0027master\u0027 of master.kernel.org:/pub/scm/linux/kernel/git/torvalds/linux-2.6\n\nConflicts:\n\n\tsound/core/memalloc.c\n"
    },
    {
      "commit": "ec8deffa33757286ba59e71d3d98173c37638b37",
      "tree": "2a176fd94d4665fe3c03f6e9f09dda8060fdb4a7",
      "parents": [
        "7cc4e87f912bbefa440a51856b8d076e5d1f554a",
        "3dd392a407d15250a501fa109cc1f93fee95ef85"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Oct 11 10:59:00 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Oct 11 11:02:56 2008 -0700"
      },
      "message": "Merge phase #2 (PAT updates) of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip\n\n* \u0027x86-v28-for-linus-phase2-B\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip: (27 commits)\n  x86, cpa: make the kernel physical mapping initialization a two pass sequence, fix\n  x86, pat: cleanups\n  x86: fix pagetable init 64-bit breakage\n  x86: track memtype for RAM in page struct\n  x86, cpa: srlz cpa(), global flush tlb after splitting big page and before doing cpa\n  x86, cpa: remove cpa pool code\n  x86, cpa: no need to check alias for __set_pages_p/__set_pages_np\n  x86, cpa: dont use large pages for kernel identity mapping with DEBUG_PAGEALLOC\n  x86, cpa: make the kernel physical mapping initialization a two pass sequence\n  x86, cpa: remove USER permission from the very early identity mapping attribute\n  x86, cpa: rename PTE attribute macros for kernel direct mapping in early boot\n  x86: make sure the CPA test code\u0027s use of _PAGE_UNUSED1 is obvious\n  linux-next: fix x86 tree build failure\n  x86: have set_memory_array_{uc,wb} coalesce memtypes, fix\n  agp: enable optimized agp_alloc_pages methods\n  x86: have set_memory_array_{uc,wb} coalesce memtypes.\n  x86: {reverve,free}_memtype() take a physical address\n  x86: fix pageattr-test\n  agp: add agp_generic_destroy_pages()\n  agp: generic_alloc_pages()\n  ...\n"
    },
    {
      "commit": "c54dcd8ec9f05c8951d1e622e90904aef95379f9",
      "tree": "6f657b3ec509975c0f295197156e2bbc530457a2",
      "parents": [
        "b11ce8a26d26ed9019a8803aa90d580b52f23e79",
        "9ac684fc38cf17fbd25c0c9e388713c5ddfa3b14"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Oct 10 12:44:43 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Oct 10 12:44:43 2008 -0700"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/jmorris/security-testing-2.6\n\n* \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/jmorris/security-testing-2.6:\n  selinux: Fix an uninitialized variable BUG/panic in selinux_secattr_to_sid()\n  selinux: use default proc sid on symlinks\n  file capabilities: uninline cap_safe_nice\n  Update selinux info in MAINTAINERS and Kconfig help text\n  SELinux: add gitignore file for mdp script\n  SELinux: add boundary support and thread context assignment\n  securityfs: do not depend on CONFIG_SECURITY\n  selinux: add support for installing a dummy policy (v2)\n  security: add/fix security kernel-doc\n  selinux: Unify for- and while-loop style\n  selinux: conditional expression type validation was off-by-one\n  smack: limit privilege by label\n  SELinux: Fix a potentially uninitialised variable in SELinux hooks\n  SELinux: trivial, remove unneeded local variable\n  SELinux: Trivial minor fixes that change C null character style\n  make selinux_write_opts() static\n"
    },
    {
      "commit": "3dd392a407d15250a501fa109cc1f93fee95ef85",
      "tree": "c1faca3fa8bd0f7c8790b3e0887229b4a5a90e8b",
      "parents": [
        "b27a43c1e90582facad44de67d02bc9e9f900289",
        "d403a6484f0341bf0624d17ece46f24f741b6a92"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Oct 10 19:30:08 2008 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Oct 10 19:30:08 2008 +0200"
      },
      "message": "Merge branch \u0027linus\u0027 into x86/pat2\n\nConflicts:\n\tarch/x86/mm/init_64.c\n"
    },
    {
      "commit": "f26ed116c0baa8f9cbbe3d5db84034d75f6250f8",
      "tree": "92dc8d0901bdd707967c2055375acadda5b8929a",
      "parents": [
        "8eb95f28f66b1a5461fdbcc9a1ee9068fb2cf2b6"
      ],
      "author": {
        "name": "David John",
        "email": "davidjon@xenontk.org",
        "time": "Fri Oct 10 11:42:44 2008 +0530"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Oct 10 09:25:43 2008 +0200"
      },
      "message": "HPET: Remove spurious HPET busy warning message.\n\nOn x86 systems with CONFIG_HPET_TIMER enabled, when\nthe HPET driver (drivers/char/hpet.c) is loaded,\nan incorrect busy message is printed when the driver\ninitializes since the HPET has already been allocated\nby the core timer code. Remove the warning message.\n\nSigned-off-by: David John \u003cdavidjon@xenontk.org\u003e\nAcked-by: Venkatesh Pallipadi \u003cvenkatesh.pallipadi@intel.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "8eb95f28f66b1a5461fdbcc9a1ee9068fb2cf2b6",
      "tree": "e42d0e004b07f86d38de930fc163f3ca7d121f9c",
      "parents": [
        "d7451fca18e2ec62641ae4bbfe946069f13765a3",
        "3fa8749e584b55f1180411ab1b51117190bac1e5"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Oct 10 09:25:29 2008 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Oct 10 09:25:29 2008 +0200"
      },
      "message": "Merge commit \u0027v2.6.27\u0027 into timers/hpet\n"
    },
    {
      "commit": "9ac684fc38cf17fbd25c0c9e388713c5ddfa3b14",
      "tree": "f2715b294d64efe1c5788f4fa5f0b25cdff071a7",
      "parents": [
        "3fa8749e584b55f1180411ab1b51117190bac1e5",
        "81990fbdd18b9cfdc93dc221ff3250f81468aed8"
      ],
      "author": {
        "name": "James Morris",
        "email": "jmorris@namei.org",
        "time": "Fri Oct 10 11:09:47 2008 +1100"
      },
      "committer": {
        "name": "James Morris",
        "email": "jmorris@namei.org",
        "time": "Fri Oct 10 11:09:47 2008 +1100"
      },
      "message": "Merge branch \u0027next\u0027 into for-linus\n"
    },
    {
      "commit": "f331c0296f2a9fee0d396a70598b954062603015",
      "tree": "f74c467d58940131d97d90c4ea549843185e6ef0",
      "parents": [
        "cf771cb5a7b716f3f9e532fd42a1e3a0a75adec5"
      ],
      "author": {
        "name": "Tejun Heo",
        "email": "tj@kernel.org",
        "time": "Wed Sep 03 09:01:48 2008 +0200"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "jens.axboe@oracle.com",
        "time": "Thu Oct 09 08:56:05 2008 +0200"
      },
      "message": "block: don\u0027t depend on consecutive minor space\n\n* Implement disk_devt() and part_devt() and use them to directly\n  access devt instead of computing it from -\u003emajor and -\u003efirst_minor.\n\n  Note that all references to -\u003emajor and -\u003efirst_minor outside of\n  block layer is used to determine devt of the disk (the part0) and as\n  -\u003emajor and -\u003efirst_minor will continue to represent devt for the\n  disk, converting these users aren\u0027t strictly necessary.  However,\n  convert them for consistency.\n\n* Implement disk_max_parts() to avoid directly deferencing\n  genhd-\u003eminors.\n\n* Update bdget_disk() such that it doesn\u0027t assume consecutive minor\n  space.\n\n* Move devt computation from register_disk() to add_disk() and make it\n  the only one (all other usages use the initially determined value).\n\nThese changes clean up the code and will help disk-\u003epart dereference\nfix and extended block device numbers.\n\nSigned-off-by: Tejun Heo \u003ctj@kernel.org\u003e\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\n"
    },
    {
      "commit": "0dca0fd2bfeb99738708d6c9117994ebf398e72c",
      "tree": "115e01e2db84ebf7069c3c12c22c9d8934f4bc63",
      "parents": [
        "703a1edcd1534468fc18f733c03bd91a65c8c6f0"
      ],
      "author": {
        "name": "Jason Wessel",
        "email": "jason.wessel@windriver.com",
        "time": "Fri Sep 26 10:36:42 2008 -0500"
      },
      "committer": {
        "name": "Jason Wessel",
        "email": "jason.wessel@windriver.com",
        "time": "Fri Sep 26 10:36:42 2008 -0500"
      },
      "message": "kgdboc,tty: Fix tty polling search to use name correctly\n\nThe tty_find_polling_driver() routine did not correctly check the base\npart of the tty name.  This can lead to kgdboc selecting an incorrect\ndriver, as well as accepting a completely invalid tty such as \"echo\nffff0 \u003e /sys/module/kgdboc/parameters/kgdboc\".\n\nSigned-off-by: Jason Wessel \u003cjason.wessel@windriver.com\u003e\n"
    },
    {
      "commit": "ab2b49518e743962f71b94246855c44ee9cf52cc",
      "tree": "26b260a350f0a0a0d19b558bf147b812e3a1564c",
      "parents": [
        "f058925b201357fba48d56cc9c1719ae274b2022",
        "72d31053f62c4bc464c2783974926969614a8649"
      ],
      "author": {
        "name": "James Morris",
        "email": "jmorris@namei.org",
        "time": "Sun Sep 21 17:41:56 2008 -0700"
      },
      "committer": {
        "name": "James Morris",
        "email": "jmorris@namei.org",
        "time": "Sun Sep 21 17:41:56 2008 -0700"
      },
      "message": "Merge branch \u0027master\u0027 into next\n\nConflicts:\n\n\tMAINTAINERS\n\nThanks for breaking my tree :-)\n\nSigned-off-by: James Morris \u003cjmorris@namei.org\u003e\n"
    },
    {
      "commit": "2e57572a50a4de41c6cbc879a4866a312d4cd316",
      "tree": "c4f58ec96c06642c4b415b881d3f0a3b673d5b44",
      "parents": [
        "9b2e43ae4e9609f80034dfe8de895045cac52d77",
        "f948cc6ab9e61a8e88d70ee9aafc690e6d26f92c"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Sep 16 14:11:43 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Sep 16 14:11:43 2008 -0700"
      },
      "message": "Merge branch \u0027master\u0027 of master.kernel.org:/pub/scm/linux/kernel/git/davem/sparc-2.6\n\nConflicts:\n\n\tarch/sparc64/kernel/pci_psycho.c\n"
    },
    {
      "commit": "83bd6998b04fc1bb7280b14f16b2bdbdc07c914b",
      "tree": "af1bbe2bac5752b69b1ac58bf5d822c735da439b",
      "parents": [
        "e7250b8ae3870f37f660c2f65cafcaba85e3bfd3",
        "adee14b2e1557d0a8559f29681732d05a89dfc35"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Sun Sep 14 18:24:00 2008 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Sun Sep 14 18:24:00 2008 +0200"
      },
      "message": "Merge commit \u0027v2.6.27-rc6\u0027 into timers/hpet\n"
    },
    {
      "commit": "f81b691a3df09806385ea413c3a2ee094c705ca3",
      "tree": "01c0d6d319fcbddc98171d06cfe8e742cd270455",
      "parents": [
        "110e0358e7dfd9cc56d47077068f3680dae10b56",
        "adee14b2e1557d0a8559f29681732d05a89dfc35"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Sun Sep 14 17:26:53 2008 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Sun Sep 14 17:26:53 2008 +0200"
      },
      "message": "Merge commit \u0027v2.6.27-rc6\u0027 into x86/pat\n"
    },
    {
      "commit": "3ce9bcb583536c45a46c7302747029450e22279c",
      "tree": "7a4167189ffc6dc909151d1a5d040f9f0656a9f4",
      "parents": [
        "26fd10517e810dd59ea050b052de24a75ee6dc07",
        "f7d0b926ac8c8ec0c7a83ee69409bd2e6bb39f81"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Sep 10 14:05:45 2008 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Sep 10 14:05:45 2008 +0200"
      },
      "message": "Merge branch \u0027core/xen\u0027 into x86/xen\n"
    },
    {
      "commit": "8b76f46a2db29407fed66cf4aca19d61b3dcb3e1",
      "tree": "f908592be7c11065b56573722a71dc468817b925",
      "parents": [
        "9d3593574702ae1899e23a1535da1ac71f928042"
      ],
      "author": {
        "name": "Andrew Morton",
        "email": "akpm@linux-foundation.org",
        "time": "Tue Sep 02 14:36:14 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Sep 02 19:21:40 2008 -0700"
      },
      "message": "drivers/char/random.c: fix a race which can lead to a bogus BUG()\n\nFix a bug reported by and diagnosed by Aaron Straus.\n\nThis is a regression intruduced into 2.6.26 by\n\n    commit adc782dae6c4c0f6fb679a48a544cfbcd79ae3dc\n    Author: Matt Mackall \u003cmpm@selenic.com\u003e\n    Date:   Tue Apr 29 01:03:07 2008 -0700\n\n        random: simplify and rename credit_entropy_store\n\ncredit_entropy_bits() does:\n\n\tspin_lock_irqsave(\u0026r-\u003elock, flags);\n\t...\n\tif (r-\u003eentropy_count \u003e r-\u003epoolinfo-\u003ePOOLBITS)\n\t\tr-\u003eentropy_count \u003d r-\u003epoolinfo-\u003ePOOLBITS;\n\nso there is a time window in which this BUG_ON():\n\nstatic size_t account(struct entropy_store *r, size_t nbytes, int min,\n\t\t      int reserved)\n{\n\tunsigned long flags;\n\n\tBUG_ON(r-\u003eentropy_count \u003e r-\u003epoolinfo-\u003ePOOLBITS);\n\n\t/* Hold lock while accounting */\n\tspin_lock_irqsave(\u0026r-\u003elock, flags);\n\ncan trigger.\n\nWe could fix this by moving the assertion inside the lock, but it seems\nsafer and saner to revert to the old behaviour wherein\nentropy_store.entropy_count at no time exceeds\nentropy_store.poolinfo-\u003ePOOLBITS.\n\nReported-by: Aaron Straus \u003caaron@merfinllc.com\u003e\nCc: Matt Mackall \u003cmpm@selenic.com\u003e\nCc: Theodore Ts\u0027o \u003ctytso@mit.edu\u003e\nCc: \u003cstable@kernel.org\u003e\t\t[2.6.26.x]\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "fd098316ef533e8441576f020ead4beab93154ce",
      "tree": "6188bbbf2357585dbeeac9d055ef2e771b78bac8",
      "parents": [
        "933b2a1d8d458d6fe12b5efd63a0432852c44d6d"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun Aug 31 01:23:17 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun Aug 31 01:23:17 2008 -0700"
      },
      "message": "sparc: Annotate of_device_id arrays with const or __initdata.\n\nAs suggested by Stephen Rothwell.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "75081322c9d0d56f8880178f9fcc93778bcf0220",
      "tree": "c9929d7f16b31420e398c3db6af2f326a86a4faa",
      "parents": [
        "afc88ad6b38797aeec4d635140099ace077df587"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sat Aug 30 00:23:51 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sat Aug 30 00:23:51 2008 -0700"
      },
      "message": "sparc32: Convert PC RTC probing to pure OF driver.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "da31894ed7b654e2e1741e7ac4ef6c15be0dd14b",
      "tree": "7247357082b105a4aab13a2fb7dad73886f1a9e5",
      "parents": [
        "86d688984deefa3ae5a802880c11f2b408b5d6cf"
      ],
      "author": {
        "name": "Eric Paris",
        "email": "eparis@redhat.com",
        "time": "Fri Aug 22 11:35:57 2008 -0400"
      },
      "committer": {
        "name": "James Morris",
        "email": "jmorris@namei.org",
        "time": "Thu Aug 28 10:47:42 2008 +1000"
      },
      "message": "securityfs: do not depend on CONFIG_SECURITY\n\nAdd a new Kconfig option SECURITYFS which will build securityfs support\nbut does not require CONFIG_SECURITY.  The only current user of\nsecurityfs does not depend on CONFIG_SECURITY and there is no reason the\nfull LSM needs to be built to build this fs.\n\nSigned-off-by: Eric Paris \u003ceparis@redhat.com\u003e\nSigned-off-by: James Morris \u003cjmorris@namei.org\u003e\n"
    },
    {
      "commit": "a152db71d962f405f7e9be5c818bddf6d1be50a7",
      "tree": "ec9bd5c50f1e925318488d585a8504a552a63f30",
      "parents": [
        "f753f3272b4d2108d1e4b121ddcde504737a8693"
      ],
      "author": {
        "name": "Alan Cox",
        "email": "alan@lxorguk.ukuu.org.uk",
        "time": "Tue Aug 26 19:55:58 2008 +0100"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Aug 27 14:37:09 2008 -0700"
      },
      "message": "tty: Fix termios tty window resize race with pty/tty pair\n\nKanru Chen posted a patch versus the old code which deals with the case\nwhere you resize the pty side of a pty/tty pair. In that situation the\ntermios data is updated for both pty and tty but the locks are not held\nfor the right side.\n\nThis implements the fix differently against the updated tty code. Patch\nby self but the hard bit (noticing and fixing the bug) is thanks to Kanru\nChen.\n\nSigned-off-by: Alan Cox \u003calan@redhat.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "f753f3272b4d2108d1e4b121ddcde504737a8693",
      "tree": "8cb292ba9bd8249c578fdb77f49d7343beaa7815",
      "parents": [
        "325a9a3d3990e77c62b771a71239fcd0cb6f6e2c"
      ],
      "author": {
        "name": "Alan Cox",
        "email": "alan@lxorguk.ukuu.org.uk",
        "time": "Tue Aug 26 19:52:47 2008 +0100"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Aug 27 14:37:09 2008 -0700"
      },
      "message": "tty: TIOCGSOFTCAR/SSOFTCAR on pty is wron\n\nThe termios settings ioctls on a pty should affect the bound tty side not\nthe pty. The SOFTCAR ioctls use the wrong device file.\n\nSigned-off-by: Alan Cox \u003calan@redhat.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "c09ff7e1744047be1043cb32453ef90b7f6b8451",
      "tree": "1e1aeefd3e04a85ffb641b7d27ed57937777e497",
      "parents": [
        "01de05af94db5d5214b0a5e191068d19c82059a8"
      ],
      "author": {
        "name": "Stephen Rothwell",
        "email": "sfr@canb.auug.org.au",
        "time": "Mon Aug 25 20:22:21 2008 +1000"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Aug 25 12:28:33 2008 +0200"
      },
      "message": "linux-next: fix x86 tree build failure\n\nToday\u0027s linux-next build (powerpc allyesconfig) failed like this:\n\ndrivers/char/agp/uninorth-agp.c:541: error: unknown field \u0027agp_destroy_paged\u0027 specified in initializer\n\nCaused by commit 5f310b63781f6777bf4e812570560ec0f8ea42d8\n(\"agp: enable optimized agp_alloc_pages methods\").  A simple typo ...\n\nSigned-off-by: Stephen Rothwell \u003csfr@canb.auug.org.au\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "e4f807c2b4d81636fc63993368646c5bfd42b22f",
      "tree": "2ff100911b1ba4e26e3d9aad41edb9b48405f01e",
      "parents": [
        "25258ef762bc4a05fa9c4523f7dae56e3fd01864",
        "83097aca8567a0bd593534853b71fe0fa9a75d69"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Aug 25 10:54:07 2008 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Aug 25 10:54:07 2008 +0200"
      },
      "message": "Merge branch \u0027linus\u0027 into x86/xen\n\nConflicts:\n\tarch/x86/kernel/paravirt.c\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "7a8fc9b248e77a4eab0613acf30a6811799786b3",
      "tree": "24b3beb8bc0633db27ffdb791f94dce95d51b1d0",
      "parents": [
        "d3ee1b405872214609868f3cde631ac157026dd0"
      ],
      "author": {
        "name": "Adrian Bunk",
        "email": "bunk@kernel.org",
        "time": "Sun Aug 17 17:36:59 2008 +0300"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Aug 23 12:14:12 2008 -0700"
      },
      "message": "removed unused #include \u003clinux/version.h\u003e\u0027s\n\nThis patch lets the files using linux/version.h match the files that\n#include it.\n\nSigned-off-by: Adrian Bunk \u003cbunk@kernel.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "5f310b63781f6777bf4e812570560ec0f8ea42d8",
      "tree": "74601f57c2d89f230b85bd0bf7be99663a73ef9d",
      "parents": [
        "c5e147cf5aeb31aa1a9030be9727914855fc4133"
      ],
      "author": {
        "name": "Rene Herman",
        "email": "rene.herman@keyaccess.nl",
        "time": "Thu Aug 21 19:15:46 2008 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Aug 22 06:07:33 2008 +0200"
      },
      "message": "agp: enable optimized agp_alloc_pages methods\n\nThe pageattr-array patch that you currently have in tip/master only\nenables it for intel-agp, not the others. The attached enables it for\nall drivers currently directly using agp_generic_alloc_page() and\nagp_generic_destroy_page() (ocal driver is amd-k7-agp).\n\nThe new agp_generic_alloc_pages() interface uses the also new\npageattr array interface API. This makes all AGP drivers that\nup to now used generic_{alloc,destroy}_page() use it.\n\nSigned-off-by: Rene Herman \u003crene.herman@gmail.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "8b53b57576292b92b27769f9e213df19b6e57786",
      "tree": "cd851ce4fa71b2653f120d7f11a9c6cbcf311b19",
      "parents": [
        "ab7e79243746e2a9c5f00243e60108189c44c9eb",
        "38cc1c3df77c1bb739a4766788eb9fa49f16ffdf"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Aug 22 06:06:51 2008 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Aug 22 06:06:51 2008 +0200"
      },
      "message": "Merge branch \u0027x86/urgent\u0027 into x86/pat\n\nConflicts:\n\tarch/x86/mm/pageattr.c\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "bd07928c0f9c3dbe53baf28eae4de4c579772c4c",
      "tree": "7210c0a3c96bd58517ba45365ef87092394870b4",
      "parents": [
        "37acee10f49cf3caa323e05675e8dc9221ef4fd8"
      ],
      "author": {
        "name": "Shaohua Li",
        "email": "shaohua.li@intel.com",
        "time": "Thu Aug 21 10:46:17 2008 +0800"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Aug 21 13:47:46 2008 +0200"
      },
      "message": "agp: add agp_generic_destroy_pages()\n\nAdd agp_generic_destroy_pages(), it uses new pageattr array interface API.\n\nSigned-off-by: Dave Airlie \u003cairlied@gmail.com\u003e\nSigned-off-by: Shaohua Li \u003cshaohua.li@intel.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "37acee10f49cf3caa323e05675e8dc9221ef4fd8",
      "tree": "212754bec108fc139d47d3eecaf52bab90cf1603",
      "parents": [
        "d75586ad01e6c5a30e7337fb87d61e03556a1ecb"
      ],
      "author": {
        "name": "Shaohua Li",
        "email": "shaohua.li@intel.com",
        "time": "Thu Aug 21 10:46:11 2008 +0800"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Aug 21 13:47:46 2008 +0200"
      },
      "message": "agp: generic_alloc_pages()\n\nAdd agp_generic_alloc_pages(), it uses new pageattr array interface API.\n\nSigned-off-by: Dave Airlie \u003cairlied@gmail.com\u003e\nSigned-off-by: Shaohua Li \u003cshaohua.li@intel.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "9326d61bf64c4293f834e86c11f52db5be9798d6",
      "tree": "96041087b2600d70d469924fec38b004678b5093",
      "parents": [
        "5843d9a4d0ba89719916c8f07fc9c57b7126be6d"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Aug 21 13:46:25 2008 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Aug 21 13:46:25 2008 +0200"
      },
      "message": "Revert \"reduce tlb/cache flush times of agpgart memory allocation\"\n\nThis reverts commit 466ae837424dcc538b1af2a0eaf53be32edcdbe7.\n"
    },
    {
      "commit": "a09f48551273ee89d4e9ae37474807dc2da1d757",
      "tree": "0d0e64ed51a40405b04926c66972c52afc723953",
      "parents": [
        "27aa069a8850a36b8aef0160e73cfd928c6bbcc4"
      ],
      "author": {
        "name": "Andrew Morton",
        "email": "akpm@linux-foundation.org",
        "time": "Wed Aug 20 14:09:14 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Aug 20 15:40:31 2008 -0700"
      },
      "message": "drivers/char/ipmi/ipmi_si_intf.c:default_find_bmc(): fix leak\n\nIf check_legacy_ioport() returns true, we leak *info.\n\nAddresses http://bugzilla.kernel.org/show_bug.cgi?id\u003d11362\n\nReported-by: Daniel Marjamki \u003cdanielm77@spray.se\u003e\nCc: Christian Krafft \u003ckrafft@de.ibm.com\u003e\nCc: Michael Ellerman \u003cmichael@ellerman.id.au\u003e\nCc: Corey Minyard \u003cminyard@acm.org\u003e\nCc: Paul Mackerras \u003cpaulus@samba.org\u003e\nCc: Benjamin Herrenschmidt \u003cbenh@kernel.crashing.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "6e833587e11ed0dbf12e647127f2650e2f80b26d",
      "tree": "7ba3d76705547ed1377f87694e0b0e4391fe0015",
      "parents": [
        "170465ee7f5a9a2d0ac71285507e52642e040353"
      ],
      "author": {
        "name": "Jeremy Fitzhardinge",
        "email": "jeremy@goop.org",
        "time": "Tue Aug 19 13:16:17 2008 -0700"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Aug 20 12:40:07 2008 +0200"
      },
      "message": "xen: clean up domain mode predicates\n\nThere are four operating modes Xen code may find itself running in:\n - native\n - hvm domain\n - pv dom0\n - pv domU\n\nClean up predicates for testing for these states to make them more consistent.\n\nSigned-off-by: Jeremy Fitzhardinge \u003cjeremy.fitzhardinge@citrix.com\u003e\nCc: Xen-devel \u003cxen-devel@lists.xensource.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "4309e092421e08f411830b2675bc1538a9b90e9b",
      "tree": "018a21fceba5edb73ec0dfb770a602eef54cb564",
      "parents": [
        "1fca25427482387689fa27594c992a961d98768f",
        "195648bbc5ae0848e82f771ecf4cd7497054c212"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Aug 19 09:59:02 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Aug 19 09:59:02 2008 -0700"
      },
      "message": "Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-2.6\n\n* git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-2.6: (94 commits)\n  pkt_sched: Prevent livelock in TX queue running.\n  Revert \"pkt_sched: Add BH protection for qdisc_stab_lock.\"\n  Revert \"pkt_sched: Protect gen estimators under est_lock.\"\n  pkt_sched: remove bogus block (cleanup)\n  nf_nat: use secure_ipv4_port_ephemeral() for NAT port randomization\n  netfilter: ctnetlink: sleepable allocation with spin lock bh\n  netfilter: ctnetlink: fix sleep in read-side lock section\n  netfilter: ctnetlink: fix double helper assignation for NAT\u0027ed conntracks\n  netfilter: ipt_addrtype: Fix matching of inverted destination address type\n  dccp: Fix panic caused by too early termination of retransmission mechanism\n  pkt_sched: Don\u0027t hold qdisc lock over qdisc_destroy().\n  pkt_sched: Add lockdep annotation for qdisc locks\n  pkt_sched: Never schedule non-root qdiscs.\n  removed unused #include \u003cversion.h\u003e\n  rt2x00: Fix txdone_entry_desc_flags\n  b43: Fix for another Bluetooth Coexistence SPROM Programming error for BCM4306\n  mac80211: remove kdoc references to IEEE80211_HW_HOST_GEN_BEACON_TEMPLATE\n  p54u: reset skb\u0027s data/tail pointer on requeue\n  p54: move p54_vdcf_init to the right place.\n  iwlwifi: fix printk newlines\n  ...\n"
    },
    {
      "commit": "9f593653742d1dd816c4e94c6e5154a57ccba6d1",
      "tree": "1e71181cc80da8dc3d6e1da202943482b9eb5500",
      "parents": [
        "fab00c5d15091546be681426c60b2ed2c10513bf"
      ],
      "author": {
        "name": "Stephen Hemminger",
        "email": "shemminger@vyatta.com",
        "time": "Mon Aug 18 21:32:32 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Aug 18 21:32:32 2008 -0700"
      },
      "message": "nf_nat: use secure_ipv4_port_ephemeral() for NAT port randomization\n\nUse incoming network tuple as seed for NAT port randomization.\nThis avoids concerns of leaking net_random() bits, and also gives better\nport distribution. Don\u0027t have NAT server, compile tested only.\n\nSigned-off-by: Stephen Hemminger \u003cshemminger@vyatta.com\u003e\n\n[ added missing EXPORT_SYMBOL_GPL ]\n\nSigned-off-by: Patrick McHardy \u003ckaber@trash.net\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "b09c3e3f1710b554348c98e78fbf4a661918779a",
      "tree": "6c348481d17ac3115d235c59c8cec5274d561f9f",
      "parents": [
        "406703f8de33bed0d34c6a083d58178317e27183"
      ],
      "author": {
        "name": "Huang Weiyi",
        "email": "weiyi.huang@gmail.com",
        "time": "Sun Aug 17 07:51:05 2008 +0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Aug 16 17:21:58 2008 -0700"
      },
      "message": "removed unused #include \u003cversion.h\u003e\n\nThe drivers below do not use LINUX_VERSION_CODE nor KERNEL_VERSION.\n  drivers/char/pcmcia/ipwireless/tty.c\n  drivers/char/synclink_gt.c\n  drivers/char/xilinx_hwicap/xilinx_hwicap.c\n\nThis patch removes the said #include \u003cversion.h\u003e.\n\nSigned-off-by: Huang Weiyi \u003cweiyi.huang@gmail.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "8c9a9dd0fa3a269d380eaae2dc1bee39e865fae1",
      "tree": "c4617de83246eb6b7ed9c125c5777f05b445c975",
      "parents": [
        "21d3bdb1606311a2900eabccfcb5a887952e2c44"
      ],
      "author": {
        "name": "Alan Cox",
        "email": "alan@redhat.com",
        "time": "Fri Aug 15 10:39:38 2008 +0100"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Aug 15 10:34:07 2008 -0700"
      },
      "message": "tty: remove resize window special case\n\nThis moves it to being a tty operation. That removes special cases and now\nalso means that resize can be picked up by um and other non vt consoles\nwhich may have a resize operation.\n\nSigned-off-by: Alan Cox \u003calan@redhat.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "466ae837424dcc538b1af2a0eaf53be32edcdbe7",
      "tree": "fb19282470b844aa6e1affc52b65dd707196d223",
      "parents": [
        "1ac2f7d55b7ee1613c90631e87fea22ec06781e5"
      ],
      "author": {
        "name": "Shaohua Li",
        "email": "shaohua.li@intel.com",
        "time": "Mon Aug 04 14:51:30 2008 +0800"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Aug 15 16:30:48 2008 +0200"
      },
      "message": "reduce tlb/cache flush times of agpgart memory allocation\n\nTo reduce tlb/cache flush, makes agp memory allocation do one flush\nafter all pages in a region are changed to uc.\n\nAll agp drivers except agp-sgi uses agp_generic_alloc_page()\nfor .agp_alloc_page, so the patch should work for them. agp-sgi is only\nfor ia64, so not a problem too.\n\nSigned-off-by: Shaohua Li \u003cshaohua.li@intel.com\u003e\nCc: airlied@linux.ie\nCc: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nCc: Arjan van de Ven \u003carjan@infradead.org\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "e49140120c88eb99db1a9172d9ac224c0f2bbdd2",
      "tree": "2436693f64f185f45d67d4299b879091b2301f4b",
      "parents": [
        "318e5313923197e71a94f7b18835151649384b7f"
      ],
      "author": {
        "name": "Suresh Siddha",
        "email": "suresh.b.siddha@intel.com",
        "time": "Wed Aug 13 22:02:26 2008 +1000"
      },
      "committer": {
        "name": "Herbert Xu",
        "email": "herbert@gondor.apana.org.au",
        "time": "Wed Aug 13 22:02:26 2008 +1000"
      },
      "message": "crypto: padlock - fix VIA PadLock instruction usage with irq_ts_save/restore()\n\nWolfgang Walter reported this oops on his via C3 using padlock for\nAES-encryption:\n\n##################################################################\n\nBUG: unable to handle kernel NULL pointer dereference at 000001f0\nIP: [\u003cc01028c5\u003e] __switch_to+0x30/0x117\n*pde \u003d 00000000\nOops: 0002 [#1] PREEMPT\nModules linked in:\n\nPid: 2071, comm: sleep Not tainted (2.6.26 #11)\nEIP: 0060:[\u003cc01028c5\u003e] EFLAGS: 00010002 CPU: 0\nEIP is at __switch_to+0x30/0x117\nEAX: 00000000 EBX: c0493300 ECX: dc48dd00 EDX: c0493300\nESI: dc48dd00 EDI: c0493530 EBP: c04cff8c ESP: c04cff7c\n DS: 007b ES: 007b FS: 0000 GS: 0033 SS: 0068\nProcess sleep (pid: 2071, ti\u003dc04ce000 task\u003ddc48dd00 task.ti\u003dd2fe6000)\nStack: dc48df30 c0493300 00000000 00000000 d2fe7f44 c03b5b43 c04cffc8 00000046\n       c0131856 0000005a dc472d3c c0493300 c0493470 d983ae00 00002696 00000000\n       c0239f54 00000000 c04c4000 c04cffd8 c01025fe c04f3740 00049800 c04cffe0\nCall Trace:\n [\u003cc03b5b43\u003e] ? schedule+0x285/0x2ff\n [\u003cc0131856\u003e] ? pm_qos_requirement+0x3c/0x53\n [\u003cc0239f54\u003e] ? acpi_processor_idle+0x0/0x434\n [\u003cc01025fe\u003e] ? cpu_idle+0x73/0x7f\n [\u003cc03a4dcd\u003e] ? rest_init+0x61/0x63\n \u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\n\nWolfgang also found out that adding kernel_fpu_begin() and kernel_fpu_end()\naround the padlock instructions fix the oops.\n\nSuresh wrote:\n\nThese padlock instructions though don\u0027t use/touch SSE registers, but it behaves\nsimilar to other SSE instructions. For example, it might cause DNA faults\nwhen cr0.ts is set. While this is a spurious DNA trap, it might cause\noops with the recent fpu code changes.\n\nThis is the code sequence  that is probably causing this problem:\n\na) new app is getting exec\u0027d and it is somewhere in between\n   start_thread() and flush_old_exec() in the load_xyz_binary()\n\nb) At pont \"a\", task\u0027s fpu state (like TS_USEDFPU, used_math() etc) is\n   cleared.\n\nc) Now we get an interrupt/softirq which starts using these encrypt/decrypt\n   routines in the network stack. This generates a math fault (as\n   cr0.ts is \u00271\u0027) which sets TS_USEDFPU and restores the math that is\n   in the task\u0027s xstate.\n\nd) Return to exec code path, which does start_thread() which does\n   free_thread_xstate() and sets xstate pointer to NULL while\n   the TS_USEDFPU is still set.\n\ne) At the next context switch from the new exec\u0027d task to another task,\n   we have a scenarios where TS_USEDFPU is set but xstate pointer is null.\n   This can cause an oops during unlazy_fpu() in __switch_to()\n\nNow:\n\n1) This should happen with or with out pre-emption. Viro also encountered\n   similar problem with out CONFIG_PREEMPT.\n\n2) kernel_fpu_begin() and kernel_fpu_end() will fix this problem, because\n   kernel_fpu_begin() will manually do a clts() and won\u0027t run in to the\n   situation of setting TS_USEDFPU in step \"c\" above.\n\n3) This was working before the fpu changes, because its a spurious\n   math fault  which doesn\u0027t corrupt any fpu/sse registers and the task\u0027s\n   math state was always in an allocated state.\n\nWith out the recent lazy fpu allocation changes, while we don\u0027t see oops,\nthere is a possible race still present in older kernels(for example,\nwhile kernel is using kernel_fpu_begin() in some optimized clear/copy\npage and an interrupt/softirq happens which uses these padlock\ninstructions generating DNA fault).\n\nThis is the failing scenario that existed even before the lazy fpu allocation\nchanges:\n\n0. CPU\u0027s TS flag is set\n\n1. kernel using FPU in some optimized copy  routine and while doing\nkernel_fpu_begin() takes an interrupt just before doing clts()\n\n2. Takes an interrupt and ipsec uses padlock instruction. And we\ntake a DNA fault as TS flag is still set.\n\n3. We handle the DNA fault and set TS_USEDFPU and clear cr0.ts\n\n4. We complete the padlock routine\n\n5. Go back to step-1, which resumes clts() in kernel_fpu_begin(), finishes\nthe optimized copy routine and does kernel_fpu_end(). At this point,\nwe have cr0.ts again set to \u00271\u0027 but the task\u0027s TS_USEFPU is stilll\nset and not cleared.\n\n6. Now kernel resumes its user operation. And at the next context\nswitch, kernel sees it has do a FP save as TS_USEDFPU is still set\nand then will do a unlazy_fpu() in __switch_to(). unlazy_fpu()\nwill take a DNA fault, as cr0.ts is \u00271\u0027 and now, because we are\nin __switch_to(), math_state_restore() will get confused and will\nrestore the next task\u0027s FP state and will save it in prev tasks\u0027s FP state.\nRemember, in __switch_to() we are already on the stack of the next task\nbut take a DNA fault for the prev task.\n\nThis causes the fpu leakage.\n\nFix the padlock instruction usage by calling them inside the\ncontext of new routines irq_ts_save/restore(), which clear/restore cr0.ts\nmanually in the interrupt context. This will not generate spurious DNA\nin the  context of the interrupt which will fix the oops encountered and\nthe possible FPU leakage issue.\n\nReported-and-bisected-by: Wolfgang Walter \u003cwolfgang.walter@stwm.de\u003e\nSigned-off-by: Suresh Siddha \u003csuresh.b.siddha@intel.com\u003e\nSigned-off-by: Herbert Xu \u003cherbert@gondor.apana.org.au\u003e\n"
    },
    {
      "commit": "98b0da43079740ecd07197dacd9720d54bb4dce0",
      "tree": "3af6770b38420810dcfab6aed8f355a79f0f1d8d",
      "parents": [
        "fc1efbdb7a1175759b099d74b67921396e5e8e3d"
      ],
      "author": {
        "name": "Huang Weiyi",
        "email": "weiyi.huang@gmail.com",
        "time": "Tue Aug 12 15:09:00 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Aug 12 16:07:30 2008 -0700"
      },
      "message": "drivers/char/rtc.c: removed duplicated include\n\nSigned-off-by: Huang Weiyi \u003cweiyi.huang@gmail.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "1c89ac55017f982355c7761e1c912c88c941483d",
      "tree": "6878e95a0572defc725ea58f5a1449db937a5066",
      "parents": [
        "88fa08f67bee1a0c765237bdac106a32872f57d2",
        "b1b135c8d619cb2c7045d6ee4e48375882518bb5"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Aug 12 08:40:19 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Aug 12 08:40:19 2008 -0700"
      },
      "message": "Merge git://git.kernel.org/pub/scm/linux/kernel/git/rusty/linux-2.6-for-linus\n\n* git://git.kernel.org/pub/scm/linux/kernel/git/rusty/linux-2.6-for-linus:\n  fix spinlock recursion in hvc_console\n  stop_machine: remove unused variable\n  modules: extend initcall_debug functionality to the module loader\n  export virtio_rng.h\n  lguest: use get_user_pages_fast() instead of get_user_pages()\n  mm: Make generic weak get_user_pages_fast and EXPORT_GPL it\n  lguest: don\u0027t set MAC address for guest unless specified\n"
    },
    {
      "commit": "b1b135c8d619cb2c7045d6ee4e48375882518bb5",
      "tree": "7c48ccd12e2d01e548351f34bde77fb13f5dc513",
      "parents": [
        "ed6d68763b8b589c0ae9d231cbd72bd01f6685c5"
      ],
      "author": {
        "name": "Christian Borntraeger",
        "email": "borntraeger@de.ibm.com",
        "time": "Thu Aug 07 09:18:34 2008 +0200"
      },
      "committer": {
        "name": "Rusty Russell",
        "email": "rusty@rustcorp.com.au",
        "time": "Tue Aug 12 17:52:55 2008 +1000"
      },
      "message": "fix spinlock recursion in hvc_console\n\ncommit 611e097d7707741a336a0677d9d69bec40f29f3d\nAuthor: Christian Borntraeger \u003cborntraeger@de.ibm.com\u003e\nhvc_console: rework setup to replace irq functions with callbacks\nintroduced a spinlock recursion problem.\n\nrequest_irq tries to call the handler if the IRQ is shared.\nThe irq handler of hvc_console calls hvc_poll and hvc_kill\nwhich might take the hvc_struct spinlock. Therefore, we have\nto call request_irq outside the spinlock.\n\nWe can move the notifier_add safely outside the spinlock as -\u003edata must\nnot be changed by the backend. Otherwise, tty_hangup would fail anyway.\n\nSigned-off-by: Christian Borntraeger \u003cborntraeger@de.ibm.com\u003e\nSigned-off-by: Rusty Russell \u003crusty@rustcorp.com.au\u003e\n"
    },
    {
      "commit": "91397585e3fb47b3900e17d70c6edc356e36bb46",
      "tree": "b4ec3466d1ad4ed2dcf52b76953aa63905890a1c",
      "parents": [
        "a8c84df9f71e4a7b14bdd41687a70d366c087eef"
      ],
      "author": {
        "name": "Krzysztof Helt",
        "email": "krzysztof.h1@wp.pl",
        "time": "Wed Aug 06 18:48:45 2008 +0200"
      },
      "committer": {
        "name": "Dave Airlie",
        "email": "airlied@redhat.com",
        "time": "Tue Aug 12 10:13:38 2008 +1000"
      },
      "message": "agp: fix SIS 5591/5592 wrong PCI id\n\nThe correct id is the id of the main host (5591) not\nthe id of the PCI-to-PCI bridge AGP (0001).\nOutput from \"lspci -nv\" shows that only the former\nhas AGP capabilities flag set:\n\n00:00.0 0600: 1039:5591 (rev 02)\n        Flags: bus master, medium devsel, latency 64\n        Memory at ec000000 (32-bit, non-prefetchable) [size\u003d32M]\n        Capabilities: [c0] AGP version 1.0\n\n00:02.0 0604: 1039:0001 (prog-if 00 [Normal decode])\n        Flags: bus master, fast devsel, latency 0\n        Bus: primary\u003d00, secondary\u003d01, subordinate\u003d01, sec-latency\u003d0\n        I/O behind bridge: 0000c000-0000cfff\n        Memory behind bridge: eb500000-eb5fffff\n        Prefetchable memory behind bridge: eb300000-eb3fffff\n\nSigned-off-by: Krzysztof Helt \u003ckrzysztof.h1@wp.pl\u003e\nSigned-off-by: Dave Airlie \u003cairlied@redhat.com\u003e\n"
    },
    {
      "commit": "a8c84df9f71e4a7b14bdd41687a70d366c087eef",
      "tree": "fc11f372de1543c6816d783ee8a852fcecf434d7",
      "parents": [
        "e3cf69511a2c5369c58f6fd6a065de152c3d4b22"
      ],
      "author": {
        "name": "Keith Packard",
        "email": "keithp@keithp.com",
        "time": "Thu Jul 31 15:48:07 2008 +1000"
      },
      "committer": {
        "name": "Dave Airlie",
        "email": "airlied@redhat.com",
        "time": "Tue Aug 12 10:13:38 2008 +1000"
      },
      "message": "intel/agp: rewrite GTT on resume\n\nOn my Intel chipset (965GM), the GTT is entirely erased across\nsuspend/resume.  This patch simply re-plays the current mapping at resume\ntime to restore the table.\u003d20\n\nI noticed this once I started relying on persistent GTT mappings across VT\nswitch in our GEM work -- the old X server and DRM code carefully unbind\nall memory from the GTT on VT switch, but GEM does not bother.\n\nI placed the list management and rewrite code in the generic layer on the\nassumption that it will be needed on other hardware, but I did not add the\nrewrite call to anything other than the Intel resume function.\n\nKeep a list of current GATT mappings.  At resume time, rewrite them into\nthe GATT.  This is needed on Intel (at least) as the entire GATT is\ncleared across suspend/resume.\n\n[akpm@linux-foundation.org: coding-style fixes]\nSigned-off-by: Keith Packard \u003ckeithp@keithp.com\u003e\nCc: Dave Jones \u003cdavej@codemonkey.org.uk\u003e\nCc: Andi Kleen \u003candi@firstfloor.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Dave Airlie \u003cairlied@redhat.com\u003e\n"
    },
    {
      "commit": "e3cf69511a2c5369c58f6fd6a065de152c3d4b22",
      "tree": "7293c1f55a726e7740949afaf851f1e453dfc087",
      "parents": [
        "55814b74c95a73dae6795e167294e6edc733aae9"
      ],
      "author": {
        "name": "Bjorn Helgaas",
        "email": "bjorn.helgaas@hp.com",
        "time": "Wed Jul 30 12:26:51 2008 -0700"
      },
      "committer": {
        "name": "Dave Airlie",
        "email": "airlied@redhat.com",
        "time": "Tue Aug 12 10:13:38 2008 +1000"
      },
      "message": "agp: use dev_printk when possible\n\nConvert printks to use dev_printk().\n\nSigned-off-by: Bjorn Helgaas \u003cbjorn.helgaas@hp.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Dave Airlie \u003cairlied@redhat.com\u003e\n"
    },
    {
      "commit": "55814b74c95a73dae6795e167294e6edc733aae9",
      "tree": "3802b06298c7f2796546e70779e1094bc585973f",
      "parents": [
        "99d32bd5c7b1caa05d1fe3c89b08aabd459bc12a"
      ],
      "author": {
        "name": "Bjorn Helgaas",
        "email": "bjorn.helgaas@hp.com",
        "time": "Wed Jul 30 12:26:51 2008 -0700"
      },
      "committer": {
        "name": "Dave Airlie",
        "email": "airlied@redhat.com",
        "time": "Tue Aug 12 10:13:37 2008 +1000"
      },
      "message": "amd64-agp: run fallback when no bridges found, not when driver registration fails\n\nI think the intent was that if no bridges matched agp_amd64_pci_table[],\nwe would fall back to checking for any bridge with the AGP capability.\nBut in the current code, we execute the fallback path only when\npci_register_driver() itself fails, which is unrelated to whether any\nmatching devices were found.\n\nThis patch counts the AGP bridges found in the probe() method and executes\nthe fallback path when none is found.\n\nSigned-off-by: Bjorn Helgaas \u003cbjorn.helgaas@hp.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Dave Airlie \u003cairlied@redhat.com\u003e\n"
    },
    {
      "commit": "99d32bd5c7b1caa05d1fe3c89b08aabd459bc12a",
      "tree": "70ea30557ab4679c8135cdb5308f060ab3a91dee",
      "parents": [
        "10fec20ef5eec1c91913baec1225400f0d02df40"
      ],
      "author": {
        "name": "Zhenyu Wang",
        "email": "zhenyu.z.wang@intel.com",
        "time": "Wed Jul 30 12:26:50 2008 -0700"
      },
      "committer": {
        "name": "Dave Airlie",
        "email": "airlied@redhat.com",
        "time": "Tue Aug 12 10:13:37 2008 +1000"
      },
      "message": "intel_agp: official name for GM45 chipset\n\nSigned-off-by: Zhenyu Wang \u003czhenyu.z.wang@intel.com\u003e\nCc: Dave Airlie \u003cairlied@linux.ie\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Dave Airlie \u003cairlied@redhat.com\u003e\n"
    },
    {
      "commit": "000b9151d7851cc1e490b2a76d0206e524f43cca",
      "tree": "6f17cee4de9353932d3f42b9e1f78c87085fe69d",
      "parents": [
        "0e7d5bb8480e10f98f89bd1d418a430393b1e995"
      ],
      "author": {
        "name": "Christian Borntraeger",
        "email": "borntraeger@de.ibm.com",
        "time": "Mon Aug 11 09:02:49 2008 +0100"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Aug 11 10:37:34 2008 -0700"
      },
      "message": "Fix race/oops in tty layer after BKL pushdown\n\nWhile testing our KVM code for s390 (starting and killall kvm in a loop)\nI can reproduce the following oops:\n\n  Unable to handle kernel pointer dereference at virtual kernel address 6b6b6b6b6b6b6000 Oops: 0038 [#1] SMP\n  Modules linked in: dm_multipath sunrpc qeth_l3 qeth_l2 dm_mod qeth\n  ccwgroup CPU: 1 Not tainted 2.6.27-rc1 #54\n  Process kuli (pid: 4409, task: 00000000b6aa5940, ksp: 00000000b7343e10)\n  Krnl PSW : 0704e00180000000 00000000002e0b8c\n  (disassociate_ctty+0x1c0/0x288) R:0 T:1 IO:1 EX:1 Key:0 M:1 W:0 P:0 AS:3\n  CC:2 PM:0 EA:3 Krnl GPRS: 0000000000000000 6b6b6b6b6b6b6b6b\n  0000000000000001 00000000000003a6 00000000002e0a46 00000000004b4160\n  0000000000000001 00000000bbd79758 00000000b7343e58 00000000b8854148\n  00000000bd34dea0 00000000b7343c20 0000000000000001 00000000004b6d08\n  00000000002e0a46 00000000b7343c20 Krnl Code: 00000000002e0b7e:\n  eb9fb0a00004\tlmg\t%r9,%r15,160(%r11) 00000000002e0b84:\n  07f4\t\tbcr\t15,%r4 00000000002e0b86:\n  e31090080004\tlg\t%r1,8(%r9) \u003e00000000002e0b8c:\n  d501109cd000\tclc\t156(2,%r1),0(%r13) 00000000002e0b92:\n  a784ff5d\t\tbrc\t8,2e0a4c 00000000002e0b96:\n  b9040029\t\tlgr\t%r2,%r9 00000000002e0b9a:\n  c0e5fffff9c3\tbrasl\t%r14,2dff20 00000000002e0ba0:\n  a7f4ff56\t\tbrc\t15,2e0a4c Call Trace:\n  ([\u003c00000000002e0a46\u003e] disassociate_ctty+0x7a/0x288)\n   [\u003c0000000000141fe6\u003e] do_exit+0x212/0x8d4\n   [\u003c0000000000142708\u003e] do_group_exit+0x60/0xcc\n   [\u003c0000000000150660\u003e] get_signal_to_deliver+0x270/0x3ac\n   [\u003c000000000010bfd6\u003e] do_signal+0x8e/0x8dc\n   [\u003c0000000000113772\u003e] sysc_sigpending+0xe/0x22\n   [\u003c000001ff0000b134\u003e] 0x1ff0000b134\n  INFO: lockdep is turned off.\n  Last Breaking-Event-Address:\n   [\u003c00000000002e0a48\u003e] disassociate_ctty+0x7c/0x288\n  Kernel panic - not syncing: Fatal exception: panic_on_oops\n\nIt seems that tty was already free in disassocate_ctty when it tries\nto dereference tty-\u003edriver.\n\nAfter moving the lock_kernel before the mutex_unlock, I can no longer\nreproduce the problem.\n\n[ This is a temporary partial fix for the documented and long standing\n  race in disassociate_tty.  This stops most problem cases for now.\n\n  For the next release the -next tree has an initial implementation of\n  kref counting for tty structures and this quickfix will be dropped.\n\n                                                              - Alan ]\n\nSigned-off-by: Christian Borntraeger \u003cborntraeger@de.ibm.com\u003e\nSigned-off-by; Alan Cox \u003calan@redhat.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "49b75b87ce2dfbd99e59a50c3681b154d07e3a22",
      "tree": "f14e1da19a13d87a512f9043c2f37fd75dd122b3",
      "parents": [
        "f1c7f79b6ab4f7ada002a0fae47f462ede6b6857",
        "097d9eb537ff4d88b74c3fe67392e27c478ca3c5"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Aug 08 11:38:42 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Aug 08 11:38:42 2008 -0700"
      },
      "message": "Merge branch \u0027for-linus-merged\u0027 of master.kernel.org:/home/rmk/linux-2.6-arm\n\n* \u0027for-linus-merged\u0027 of master.kernel.org:/home/rmk/linux-2.6-arm:\n  [ARM] 5177/1: arm/mach-sa1100/Makefile: remove CONFIG_SA1100_USB\n  [ARM] 5166/1: magician: add MAINTAINERS entry\n  [ARM] fix pnx4008 build errors\n  [ARM] Fix SMP booting with non-zero PHYS_OFFSET\n  [ARM] 5185/1: Fix spi num_chipselect for lubbock\n  [ARM] Move include/asm-arm/arch-* to arch/arm/*/include/mach\n  [ARM] Add support for arch/arm/mach-*/include and arch/arm/plat-*/include\n  [ARM] Remove asm/hardware.h, use asm/arch/hardware.h instead\n  [ARM] Eliminate useless includes of asm/mach-types.h\n  [ARM] Fix circular include dependency with IRQ headers\n  avr32: Use \u003cmach/foo.h\u003e instead of \u003casm/arch/foo.h\u003e\n  avr32: Introduce arch/avr32/mach-*/include/mach\n  avr32: Move include/asm-avr32 to arch/avr32/include/asm\n  [ARM] sa1100_wdt: use reset_status to remember watchdog reset status\n  [ARM] pxa: introduce reset_status and clear_reset_status for driver\u0027s usage\n  [ARM] pxa: introduce reset.h for reset specific header information\n"
    }
  ],
  "next": "097d9eb537ff4d88b74c3fe67392e27c478ca3c5"
}
