)]}'
{
  "log": [
    {
      "commit": "a54a52caad4bd6166cb7fa64e4e93031fa2fda5d",
      "tree": "728672fae35fd344619129e78213043dabacf099",
      "parents": [
        "01cb225dad8da2e717356fab03240e2f4a8d01bf"
      ],
      "author": {
        "name": "Mike Christie",
        "email": "michaelc@cs.wisc.edu",
        "time": "Wed Jun 28 12:00:23 2006 -0500"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "jejb@mulgrave.il.steeleye.com",
        "time": "Thu Jun 29 11:07:14 2006 -0400"
      },
      "message": "[SCSI] iscsi: fixup set/get param functions\n\nReduce duplication in the software iscsi_transport modules by\nadding a libiscsi function to handle the common grunt work.\n\nThis also has the drivers return specifc -EXXX values for different\nerrors so userspace can finally handle them in a sane way.\n\nAlso just pass the sysfs buffers to the drivers so HW iscsi can\nget/set its string values, like targetname, and initiatorname.\n\nSigned-off-by: Mike Christie \u003cmichaelc@cs.wisc.edu\u003e\nSigned-off-by: James Bottomley \u003cJames.Bottomley@SteelEye.com\u003e\n"
    },
    {
      "commit": "01cb225dad8da2e717356fab03240e2f4a8d01bf",
      "tree": "8accf53a998b27b61362aec3fe61e7b72c69bbde",
      "parents": [
        "332959cb521af6bb0281c7aae797f1f91dcb4c42"
      ],
      "author": {
        "name": "Mike Christie",
        "email": "michaelc@cs.wisc.edu",
        "time": "Wed Jun 28 12:00:22 2006 -0500"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "jejb@mulgrave.il.steeleye.com",
        "time": "Thu Jun 29 11:06:59 2006 -0400"
      },
      "message": "[SCSI] iscsi: add target discvery event to transport class\n\nPatch from david.somayajulu@qlogic.com:\n\nAdd target discovery event. We may have a setup where the iscsi traffic\nis on a different netowrk than the other network traffic. In this case\nwe will want to do discovery though the iscsi card. This patch adds\na event to the transport class that can be used by hw iscsi cards that\nsupport this.\n\nSigned-off-by: Mike Christie \u003cmichaelc@cs.wisc.edu\u003e\nSigned-off-by: James Bottomley \u003cJames.Bottomley@SteelEye.com\u003e\n"
    },
    {
      "commit": "f28e71617ddaf2483e3e5c5237103484a303743f",
      "tree": "67627d2d8ddbf6a4449371e9261d796c013b1fa1",
      "parents": [
        "dc6a78f1af10d28fb8c395034ae1e099b85c05b0",
        "a39727f212426b9d5f9267b3318a2afaf9922d3b"
      ],
      "author": {
        "name": "James Bottomley",
        "email": "jejb@mulgrave.il.steeleye.com",
        "time": "Wed Jun 28 14:06:39 2006 -0400"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "jejb@mulgrave.il.steeleye.com",
        "time": "Wed Jun 28 14:06:39 2006 -0400"
      },
      "message": "Merge ../linux-2.6/\n\nConflicts:\n\n\tdrivers/scsi/aacraid/comminit.c\n\nFixed up by removing the now renamed CONFIG_IOMMU option from\naacraid\n\nSigned-off-by: James Bottomley \u003cJames.Bottomley@SteelEye.com\u003e\n"
    },
    {
      "commit": "65c92b09acf0218b64f1c7ba4fdabeb8b732c876",
      "tree": "16569cf6039b7e4e810c710f91179292a847fd45",
      "parents": [
        "2076eb6ab8339bf09620a0160be3607bbbb61a50"
      ],
      "author": {
        "name": "James Bottomley",
        "email": "James.Bottomley@steeleye.com",
        "time": "Wed Jun 28 12:22:50 2006 -0400"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "jejb@mulgrave.il.steeleye.com",
        "time": "Wed Jun 28 12:40:54 2006 -0400"
      },
      "message": "[SCSI] scsi_transport_sas: introduce a sas_port entity\n\nthis patch introduces a port object, separates out ports and phys,\nwith ports becoming the primary objects of the tree.\n\nSigned-off-by: James Bottomley \u003cJames.Bottomley@SteelEye.com\u003e\n"
    },
    {
      "commit": "936813a8807c5684c6a97f1081b31027403d4a93",
      "tree": "bc3a1343ea1548195ab4e5dd11b1830f8b9cc52b",
      "parents": [
        "73a0e405dce7d720808536b708f7c738b413b1a2",
        "6a93096195305f6f2a39544a034e77e2e74d5799"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Jun 27 19:13:56 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Jun 27 19:13:56 2006 -0700"
      },
      "message": "Merge git://git.infradead.org/mtd-2.6\n\n* git://git.infradead.org/mtd-2.6:\n  [MTD] NAND: Select chip before checking write protect status\n  [MTD] CORE mtdchar.c: fix off-by-one error in lseek()\n  [MTD] NAND: Fix typo in mtd/nand/ts7250.c\n  [JFFS2][XATTR] coexistence between xattr and write buffering support.\n  [JFFS2][XATTR] Fix wrong copyright\n  [JFFS2][XATTR] Re-define xd-\u003erefcnt as atomic_t\n  [JFFS2][XATTR] Fix memory leak with jffs2_xattr_ref\n  [JFFS2][XATTR] rid unnecessary writing of delete marker.\n  [JFFS2][XATTR] Fix ACL bug when updating null xattr by null ACL.\n  [JFFS2][XATTR] using \u0027delete marker\u0027 for xdatum/xref deletion\n  [MTD] Fix off-by-one error in physmap.c\n  [MTD] Remove unused \u0027nr_banks\u0027 variable from ixp2000 map driver\n  [MTD NAND] s3c2412 support in s3c2410.c\n  [MTD] Initialize \u0027writesize\u0027\n  [MTD] NAND: ndfc fix address offset thinko\n  [MTD] NAND: S3C2410 convert prinks to dev_*()s\n  [MTD] NAND: Missing fixups\n"
    },
    {
      "commit": "03529d9f66b7995c67ddceb8f83258df3c9915da",
      "tree": "c16b506ebbb5644849f094c23976680906d64c1f",
      "parents": [
        "11bcab9071ac204b1ca2bb0514ad1641bc4c280b",
        "2154cfa6ba560401d25f6cc083fe3fb996cbb571"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Jun 27 19:07:21 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Jun 27 19:07:21 2006 -0700"
      },
      "message": "Merge branch \u0027upstream-linus\u0027 of master.kernel.org:/pub/scm/linux/kernel/git/jgarzik/libata-dev\n\n* \u0027upstream-linus\u0027 of master.kernel.org:/pub/scm/linux/kernel/git/jgarzik/libata-dev:\n  [PATCH] ata_piix: add ICH6/7/8 to Kconfig\n  [PATCH] sata_sil: disable hotplug interrupts on two ATI IXPs\n  [PATCH] libata: cosmetic updates\n  [PATCH] ata: add some NVIDIA chipset IDs\n  [PATCH] libata reduce timeouts\n  [PATCH] libata: implement ata_port_max_devices()\n  [PATCH] libata: make two functions global\n  [PATCH] libata: update ata_do_simple_cmd()\n  [PATCH] libata: move ata_do_simple_cmd() below ata_exec_internal()\n  [PATCH] libata: clear EH action on device detach\n  [PATCH] libata: implement and use ata_deh_dev_action()\n  [PATCH] libata: move ata_eh_clear_action() upward\n  [PATCH] libata.h needs scatterlist.h\n  [libata] sata_vsc: partially revert a PCI ID-related commit\n  [libata] Bump versions\n"
    },
    {
      "commit": "999567d829b191b2cb7fd8dee31d5bccc81d7c55",
      "tree": "f684df92c99b85bace4ae5875b608c01a3fd181f",
      "parents": [
        "0e702ab38b0eed1ea5968f3b60b352e814172c27"
      ],
      "author": {
        "name": "Greg Ungerer",
        "email": "gerg@snapgear.com",
        "time": "Tue Jun 27 13:22:07 2006 +1000"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Jun 27 18:30:14 2006 -0700"
      },
      "message": "[PATCH] m68knommu: remove NO_FORMAT_VECi from ptrace.h header\n\nRemove NO_FORMAT_VEC conditional check. It is not used or defined anywhere.\n\nSigned-off-by: Greg Ungerer \u003cgerg@uclinux.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "12e56b601f66a415f88e7d60f6b6707a19c430c9",
      "tree": "c294adb1c5c1f80bbb2de82e6e41da97b3f5800f",
      "parents": [
        "ca6f8792bd5281ebaf04bf23a43ed486e5e453a9",
        "c78059f0a948404fb515db6be4bca5ec93eecd2a"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Jun 27 18:22:13 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Jun 27 18:22:13 2006 -0700"
      },
      "message": "Merge master.kernel.org:/pub/scm/linux/kernel/git/mchehab/v4l-dvb\n\n* master.kernel.org:/pub/scm/linux/kernel/git/mchehab/v4l-dvb: (26 commits)\n  V4L/DVB (4263): Fix warning when compiling on 64 bit machines\n  V4L/DVB (4261): Included required header for in-kernel compilation\n  V4L/DVB (4260): Stradis.c: make 2 functions static\n  V4L/DVB (4259): Pass an explicit log prefix to cx2341x_log_status\n  V4L/DVB (4257): Fix 64-bit compile warnings.\n  V4L/DVB (4255): Tda9887 default TOP value is 0x10\n  V4L/DVB (4254): Remove obsoleted tuner_debug option.\n  V4L/DVB (4253): IVTV VBI format description too long.\n  V4L/DVB (4252): Remove duplicate \u0027tda9887\u0027 in info messages.\n  V4L/DVB (4245): Reduce the amount of pvrusb2-sourced noise going into the system log\n  V4L/DVB (4244): Implement use of cx2341x module in pvrusb2 driver\n  V4L/DVB (4243): Exploit new V4L control features in pvrusb2\n  V4L/DVB (4242): Don\u0027t suspend encoder when changing its attributes (in pvrusb2)\n  V4L/DVB (4241): Fix faulty encoder error recovery in pvrusb2\n  V4L/DVB (4240): Various V4L control enhancements in pvrusb2\n  V4L/DVB (4239): Handle boolean controls in pvrusb2\n  V4L/DVB (4238): Make sure flags field is initialized when quering a control in pvrusb2\n  V4L/DVB (4237): Move LOG_STATUS bracketing to a different part of the pvrusb2 driver\n  V4L/DVB (4236): Rearrange things in pvrusb2 driver in preparation for using cx2341x module\n  V4L/DVB (4235): Increase the maximum number of controls that pvrusb2-sysfs.c can handle.\n  ...\n"
    },
    {
      "commit": "456229a91d2bdf884f0c01b33f1ecee762abba7d",
      "tree": "5efb884b98f785a684eebf481d1c99fbbc41e482",
      "parents": [
        "8f7607803717e9d045965b210cd16a25d80cd04b"
      ],
      "author": {
        "name": "Adrian Bunk",
        "email": "bunk@stusta.de",
        "time": "Tue Jun 27 02:55:07 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Jun 27 17:32:48 2006 -0700"
      },
      "message": "[PATCH] drivers/char/ipmi/ipmi_msghandler.c: make proc_ipmi_root static\n\nMake struct proc_ipmi_root static.\n\nBesides this, tremove removes an unused #ifdef CONFIG_PROC_FS from\ninclude/linux/ipmi.h.\n\nAcked-by: Corey Minyard \u003cminyard@acm.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "95e02ca9bb5324360e7dea1ea1c563036d84a5e6",
      "tree": "0336dd808abe113b42f53a8f700d50ea6ba674ff",
      "parents": [
        "0bafd214e4ba55dc1fb81a3031d0249292f1bc05"
      ],
      "author": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Tue Jun 27 02:55:02 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Jun 27 17:32:48 2006 -0700"
      },
      "message": "[PATCH] rtmutex: Propagate priority settings into PI lock chains\n\nWhen the priority of a task, which is blocked on a lock, changes we must\npropagate this change into the PI lock chain.  Therefor the chain walk code\nis changed to get rid of the references to current to avoid false positives\nin the deadlock detector, as setscheduler might be called by a task which\nholds the lock on which the task whose priority is changed is blocked.\n\nAlso add some comments about the get/put_task_struct usage to avoid\nconfusion.\n\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: Steven Rostedt \u003crostedt@goodmis.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "c87e2837be82df479a6bae9f155c43516d2feebc",
      "tree": "ad6ab35f0b78f71abaa7b05185e9e3f97809c6de",
      "parents": [
        "0cdbee9920fb37eb2dc49b860c2b28862d647adc"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Jun 27 02:54:58 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Jun 27 17:32:47 2006 -0700"
      },
      "message": "[PATCH] pi-futex: futex_lock_pi/futex_unlock_pi support\n\nThis adds the actual pi-futex implementation, based on rt-mutexes.\n\n[dino@in.ibm.com: fix an oops-causing race]\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nSigned-off-by: Arjan van de Ven \u003carjan@linux.intel.com\u003e\nSigned-off-by: Dinakar Guniguntala \u003cdino@in.ibm.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "61a87122869b6340a63b6f9f84097d3688604b90",
      "tree": "11d60d29763a42abd66453a920cc06bebc852427",
      "parents": [
        "e7eebaf6a81b956c989f184ee4b27277c88f8afe"
      ],
      "author": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Tue Jun 27 02:54:56 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Jun 27 17:32:47 2006 -0700"
      },
      "message": "[PATCH] pi-futex: rt mutex tester\n\nRT-mutex tester: scriptable tester for rt mutexes, which allows userspace\nscripting of mutex unit-tests (and dynamic tests as well), using the actual\nrt-mutex implementation of the kernel.\n\n[akpm@osdl.org: fixlet]\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Arjan van de Ven \u003carjan@linux.intel.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "e7eebaf6a81b956c989f184ee4b27277c88f8afe",
      "tree": "25adcfb17ec5f857791557a874cc1cced390ca9f",
      "parents": [
        "a6537be9324c67b41f6d98f5a60a1bd5a8e02861"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Jun 27 02:54:55 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Jun 27 17:32:47 2006 -0700"
      },
      "message": "[PATCH] pi-futex: rt mutex debug\n\nRuntime debugging functionality for rt-mutexes.\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nSigned-off-by: Arjan van de Ven \u003carjan@linux.intel.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "23f78d4a03c53cbd75d87a795378ea540aa08c86",
      "tree": "27dfe06337990911380fe8c5949ae9acd8e9568a",
      "parents": [
        "b29739f902ee76a05493fb7d2303490fc75364f4"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Jun 27 02:54:53 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Jun 27 17:32:47 2006 -0700"
      },
      "message": "[PATCH] pi-futex: rt mutex core\n\nCore functions for the rt-mutex subsystem.\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nSigned-off-by: Arjan van de Ven \u003carjan@linux.intel.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "b29739f902ee76a05493fb7d2303490fc75364f4",
      "tree": "1bf48dfb74752a7ef24a2a4a74c45da0aaec754b",
      "parents": [
        "77ba89c5cf28d5d98a3cae17f67a3e42b102cc25"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Jun 27 02:54:51 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Jun 27 17:32:46 2006 -0700"
      },
      "message": "[PATCH] pi-futex: scheduler support for pi\n\nAdd framework to boost/unboost the priority of RT tasks.\n\nThis consists of:\n\n - caching the \u0027normal\u0027 priority in -\u003enormal_prio\n - providing a functions to set/get the priority of the task\n - make sched_setscheduler() aware of boosting\n\nThe effective_prio() cleanups also fix a priority-calculation bug pointed out\nby Andrey Gelman, in set_user_nice().\n\nhas_rt_policy() fix: Peter Williams \u003cpwil3058@bigpond.net.au\u003e\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nSigned-off-by: Arjan van de Ven \u003carjan@linux.intel.com\u003e\nCc: Andrey Gelman \u003cagelman@012.net.il\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "77ba89c5cf28d5d98a3cae17f67a3e42b102cc25",
      "tree": "d487b536522574ab183cc600b62008c60db85b59",
      "parents": [
        "8eb94f80dd2da5977c35cd094f0802c1501a12cd"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Jun 27 02:54:51 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Jun 27 17:32:46 2006 -0700"
      },
      "message": "[PATCH] pi-futex: add plist implementation\n\nAdd the priority-sorted list (plist) implementation.\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nSigned-off-by: Arjan van de Ven \u003carjan@linux.intel.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "8eb94f80dd2da5977c35cd094f0802c1501a12cd",
      "tree": "ff2ff8f89fb04359aaf3dbe6ea3ca60cec4879f0",
      "parents": [
        "f9b8404cf8f8456dfa83459510762b700dc00385"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Jun 27 02:54:50 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Jun 27 17:32:46 2006 -0700"
      },
      "message": "[PATCH] pi-futex: introduce WARN_ON_SMP\n\nIntroduce a new WARN_ON variant: WARN_ON_SMP(cond).\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "f9b8404cf8f8456dfa83459510762b700dc00385",
      "tree": "f74b54c79ee3913d587644195d8af7ba13b6cc2a",
      "parents": [
        "6abdce7680e3e8436b3292b345d77b67d5ec9ea8"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Jun 27 02:54:49 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Jun 27 17:32:46 2006 -0700"
      },
      "message": "[PATCH] pi-futex: introduce debug_check_no_locks_freed()\n\nAdd debug_check_no_locks_freed(), as a central inline to add\nbad-lock-free-debugging functionality to.\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nSigned-off-by: Arjan van de Ven \u003carjan@linux.intel.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "e2970f2fb6950183a34e8545faa093eb49d186e1",
      "tree": "a4035274368d846488a3b0152925502c06b064b0",
      "parents": [
        "66e5393a78b3fcca63e7748e38221dcca61c4aab"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Jun 27 02:54:47 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Jun 27 17:32:46 2006 -0700"
      },
      "message": "[PATCH] pi-futex: futex code cleanups\n\nWe are pleased to announce \"lightweight userspace priority inheritance\" (PI)\nsupport for futexes.  The following patchset and glibc patch implements it,\nontop of the robust-futexes patchset which is included in 2.6.16-mm1.\n\nWe are calling it lightweight for 3 reasons:\n\n - in the user-space fastpath a PI-enabled futex involves no kernel work\n   (or any other PI complexity) at all.  No registration, no extra kernel\n   calls - just pure fast atomic ops in userspace.\n\n - in the slowpath (in the lock-contention case), the system call and\n   scheduling pattern is in fact better than that of normal futexes, due to\n   the \u0027integrated\u0027 nature of FUTEX_LOCK_PI.  [more about that further down]\n\n - the in-kernel PI implementation is streamlined around the mutex\n   abstraction, with strict rules that keep the implementation relatively\n   simple: only a single owner may own a lock (i.e.  no read-write lock\n   support), only the owner may unlock a lock, no recursive locking, etc.\n\n  Priority Inheritance - why, oh why???\n  -------------------------------------\n\nMany of you heard the horror stories about the evil PI code circling Linux for\nyears, which makes no real sense at all and is only used by buggy applications\nand which has horrible overhead.  Some of you have dreaded this very moment,\nwhen someone actually submits working PI code ;-)\n\nSo why would we like to see PI support for futexes?\n\nWe\u0027d like to see it done purely for technological reasons.  We dont think it\u0027s\na buggy concept, we think it\u0027s useful functionality to offer to applications,\nwhich functionality cannot be achieved in other ways.  We also think it\u0027s the\nright thing to do, and we think we\u0027ve got the right arguments and the right\nnumbers to prove that.  We also believe that we can address all the\ncounter-arguments as well.  For these reasons (and the reasons outlined below)\nwe are submitting this patch-set for upstream kernel inclusion.\n\nWhat are the benefits of PI?\n\n  The short reply:\n  ----------------\n\nUser-space PI helps achieving/improving determinism for user-space\napplications.  In the best-case, it can help achieve determinism and\nwell-bound latencies.  Even in the worst-case, PI will improve the statistical\ndistribution of locking related application delays.\n\n  The longer reply:\n  -----------------\n\nFirstly, sharing locks between multiple tasks is a common programming\ntechnique that often cannot be replaced with lockless algorithms.  As we can\nsee it in the kernel [which is a quite complex program in itself], lockless\nstructures are rather the exception than the norm - the current ratio of\nlockless vs.  locky code for shared data structures is somewhere between 1:10\nand 1:100.  Lockless is hard, and the complexity of lockless algorithms often\nendangers to ability to do robust reviews of said code.  I.e.  critical RT\napps often choose lock structures to protect critical data structures, instead\nof lockless algorithms.  Furthermore, there are cases (like shared hardware,\nor other resource limits) where lockless access is mathematically impossible.\n\nMedia players (such as Jack) are an example of reasonable application design\nwith multiple tasks (with multiple priority levels) sharing short-held locks:\nfor example, a highprio audio playback thread is combined with medium-prio\nconstruct-audio-data threads and low-prio display-colory-stuff threads.  Add\nvideo and decoding to the mix and we\u0027ve got even more priority levels.\n\nSo once we accept that synchronization objects (locks) are an unavoidable fact\nof life, and once we accept that multi-task userspace apps have a very fair\nexpectation of being able to use locks, we\u0027ve got to think about how to offer\nthe option of a deterministic locking implementation to user-space.\n\nMost of the technical counter-arguments against doing priority inheritance\nonly apply to kernel-space locks.  But user-space locks are different, there\nwe cannot disable interrupts or make the task non-preemptible in a critical\nsection, so the \u0027use spinlocks\u0027 argument does not apply (user-space spinlocks\nhave the same priority inversion problems as other user-space locking\nconstructs).  Fact is, pretty much the only technique that currently enables\ngood determinism for userspace locks (such as futex-based pthread mutexes) is\npriority inheritance:\n\nCurrently (without PI), if a high-prio and a low-prio task shares a lock [this\nis a quite common scenario for most non-trivial RT applications], even if all\ncritical sections are coded carefully to be deterministic (i.e.  all critical\nsections are short in duration and only execute a limited number of\ninstructions), the kernel cannot guarantee any deterministic execution of the\nhigh-prio task: any medium-priority task could preempt the low-prio task while\nit holds the shared lock and executes the critical section, and could delay it\nindefinitely.\n\n  Implementation:\n  ---------------\n\nAs mentioned before, the userspace fastpath of PI-enabled pthread mutexes\ninvolves no kernel work at all - they behave quite similarly to normal\nfutex-based locks: a 0 value means unlocked, and a value\u003d\u003dTID means locked.\n(This is the same method as used by list-based robust futexes.) Userspace uses\natomic ops to lock/unlock these mutexes without entering the kernel.\n\nTo handle the slowpath, we have added two new futex ops:\n\n  FUTEX_LOCK_PI\n  FUTEX_UNLOCK_PI\n\nIf the lock-acquire fastpath fails, [i.e.  an atomic transition from 0 to TID\nfails], then FUTEX_LOCK_PI is called.  The kernel does all the remaining work:\nif there is no futex-queue attached to the futex address yet then the code\nlooks up the task that owns the futex [it has put its own TID into the futex\nvalue], and attaches a \u0027PI state\u0027 structure to the futex-queue.  The pi_state\nincludes an rt-mutex, which is a PI-aware, kernel-based synchronization\nobject.  The \u0027other\u0027 task is made the owner of the rt-mutex, and the\nFUTEX_WAITERS bit is atomically set in the futex value.  Then this task tries\nto lock the rt-mutex, on which it blocks.  Once it returns, it has the mutex\nacquired, and it sets the futex value to its own TID and returns.  Userspace\nhas no other work to perform - it now owns the lock, and futex value contains\nFUTEX_WAITERS|TID.\n\nIf the unlock side fastpath succeeds, [i.e.  userspace manages to do a TID -\u003e\n0 atomic transition of the futex value], then no kernel work is triggered.\n\nIf the unlock fastpath fails (because the FUTEX_WAITERS bit is set), then\nFUTEX_UNLOCK_PI is called, and the kernel unlocks the futex on the behalf of\nuserspace - and it also unlocks the attached pi_state-\u003ert_mutex and thus wakes\nup any potential waiters.\n\nNote that under this approach, contrary to other PI-futex approaches, there is\nno prior \u0027registration\u0027 of a PI-futex.  [which is not quite possible anyway,\ndue to existing ABI properties of pthread mutexes.]\n\nAlso, under this scheme, \u0027robustness\u0027 and \u0027PI\u0027 are two orthogonal properties\nof futexes, and all four combinations are possible: futex, robust-futex,\nPI-futex, robust+PI-futex.\n\n  glibc support:\n  --------------\n\nUlrich Drepper and Jakub Jelinek have written glibc support for PI-futexes\n(and robust futexes), enabling robust and PI (PTHREAD_PRIO_INHERIT) POSIX\nmutexes.  (PTHREAD_PRIO_PROTECT support will be added later on too, no\nadditional kernel changes are needed for that).  [NOTE: The glibc patch is\nobviously inofficial and unsupported without matching upstream kernel\nfunctionality.]\n\nthe patch-queue and the glibc patch can also be downloaded from:\n\n  http://redhat.com/~mingo/PI-futex-patches/\n\nMany thanks go to the people who helped us create this kernel feature: Steven\nRostedt, Esben Nielsen, Benedikt Spranger, Daniel Walker, John Cooper, Arjan\nvan de Ven, Oleg Nesterov and others.  Credits for related prior projects goes\nto Dirk Grambow, Inaky Perez-Gonzalez, Bill Huey and many others.\n\nClean up the futex code, before adding more features to it:\n\n - use u32 as the futex field type - that\u0027s the ABI\n - use __user and pointers to u32 instead of unsigned long\n - code style / comment style cleanups\n - rename hash-bucket name from \u0027bh\u0027 to \u0027hb\u0027.\n\nI checked the pre and post futex.o object files to make sure this\npatch has no code effects.\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nSigned-off-by: Arjan van de Ven \u003carjan@linux.intel.com\u003e\nCc: Ulrich Drepper \u003cdrepper@redhat.com\u003e\nCc: Jakub Jelinek \u003cjakub@redhat.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "5c45bf279d378d436ce45825c0f136696c7b6109",
      "tree": "80e2fcf4866b84fccb787562e1a83b16f4bc8850",
      "parents": [
        "369381694ddcf03f1de403501c8b97099b5109ec"
      ],
      "author": {
        "name": "Siddha, Suresh B",
        "email": "suresh.b.siddha@intel.com",
        "time": "Tue Jun 27 02:54:42 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Jun 27 17:32:45 2006 -0700"
      },
      "message": "[PATCH] sched: mc/smt power savings sched policy\n\nsysfs entries \u0027sched_mc_power_savings\u0027 and \u0027sched_smt_power_savings\u0027 in\n/sys/devices/system/cpu/ control the MC/SMT power savings policy for the\nscheduler.\n\nBased on the values (1-enable, 0-disable) for these controls, sched groups\ncpu power will be determined for different domains.  When power savings\npolicy is enabled and under light load conditions, scheduler will minimize\nthe physical packages/cpu cores carrying the load and thus conserving\npower(with a perf impact based on the workload characteristics...  see OLS\n2005 CMP kernel scheduler paper for more details..)\n\nSigned-off-by: Suresh Siddha \u003csuresh.b.siddha@intel.com\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: Nick Piggin \u003cnickpiggin@yahoo.com.au\u003e\nCc: Con Kolivas \u003ckernel@kolivas.org\u003e\nCc: \"Chen, Kenneth W\" \u003ckenneth.w.chen@intel.com\u003e\nCc: \"David S. Miller\" \u003cdavem@davemloft.net\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "51888ca25a03125e742ef84d4ddfd74e139707a0",
      "tree": "b15e50f3b67f6e2b94b783fce603d4a1f54a8189",
      "parents": [
        "615052dc3bf96278a843a64d3d1eea03532028c3"
      ],
      "author": {
        "name": "Srivatsa Vaddagiri",
        "email": "vatsa@in.ibm.com",
        "time": "Tue Jun 27 02:54:38 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Jun 27 17:32:45 2006 -0700"
      },
      "message": "[PATCH] sched_domain: handle kmalloc failure\n\nTry to handle mem allocation failures in build_sched_domains by bailing out\nand cleaning up thus-far allocated memory.  The patch has a direct consequence\nthat we disable load balancing completely (even at sibling level) upon *any*\nmemory allocation failure.\n\n[Lee.Schermerhorn@hp.com: bugfix]\nSigned-off-by: Srivatsa Vaddagir \u003cvatsa@in.ibm.com\u003e\nCc: Nick Piggin \u003cnickpiggin@yahoo.com.au\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: \"Siddha, Suresh B\" \u003csuresh.b.siddha@intel.com\u003e\nSigned-off-by: Lee Schermerhorn \u003clee.schermerhorn@hp.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "2dd73a4f09beacadde827a032cf15fd8b1fa3d48",
      "tree": "f81752d44e68240231518d6a3f05ac9ff6410a2d",
      "parents": [
        "efc30814a88bdbe2bfe4ac94de2eb089ad80bee3"
      ],
      "author": {
        "name": "Peter Williams",
        "email": "pwil3058@bigpond.net.au",
        "time": "Tue Jun 27 02:54:34 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Jun 27 17:32:44 2006 -0700"
      },
      "message": "[PATCH] sched: implement smpnice\n\nProblem:\n\nThe introduction of separate run queues per CPU has brought with it \"nice\"\nenforcement problems that are best described by a simple example.\n\nFor the sake of argument suppose that on a single CPU machine with a\nnice\u003d\u003d19 hard spinner and a nice\u003d\u003d0 hard spinner running that the nice\u003d\u003d0\ntask gets 95% of the CPU and the nice\u003d\u003d19 task gets 5% of the CPU.  Now\nsuppose that there is a system with 2 CPUs and 2 nice\u003d\u003d19 hard spinners and\n2 nice\u003d\u003d0 hard spinners running.  The user of this system would be entitled\nto expect that the nice\u003d\u003d0 tasks each get 95% of a CPU and the nice\u003d\u003d19\ntasks only get 5% each.  However, whether this expectation is met is pretty\nmuch down to luck as there are four equally likely distributions of the\ntasks to the CPUs that the load balancing code will consider to be balanced\nwith loads of 2.0 for each CPU.  Two of these distributions involve one\nnice\u003d\u003d0 and one nice\u003d\u003d19 task per CPU and in these circumstances the users\nexpectations will be met.  The other two distributions both involve both\nnice\u003d\u003d0 tasks being on one CPU and both nice\u003d\u003d19 being on the other CPU and\neach task will get 50% of a CPU and the user\u0027s expectations will not be\nmet.\n\nSolution:\n\nThe solution to this problem that is implemented in the attached patch is\nto use weighted loads when determining if the system is balanced and, when\nan imbalance is detected, to move an amount of weighted load between run\nqueues (as opposed to a number of tasks) to restore the balance.  Once\nagain, the easiest way to explain why both of these measures are necessary\nis to use a simple example.  Suppose that (in a slight variation of the\nabove example) that we have a two CPU system with 4 nice\u003d\u003d0 and 4 nice\u003d19\nhard spinning tasks running and that the 4 nice\u003d\u003d0 tasks are on one CPU and\nthe 4 nice\u003d\u003d19 tasks are on the other CPU.  The weighted loads for the two\nCPUs would be 4.0 and 0.2 respectively and the load balancing code would\nmove 2 tasks resulting in one CPU with a load of 2.0 and the other with\nload of 2.2.  If this was considered to be a big enough imbalance to\njustify moving a task and that task was moved using the current\nmove_tasks() then it would move the highest priority task that it found and\nthis would result in one CPU with a load of 3.0 and the other with a load\nof 1.2 which would result in the movement of a task in the opposite\ndirection and so on -- infinite loop.  If, on the other hand, an amount of\nload to be moved is calculated from the imbalance (in this case 0.1) and\nmove_tasks() skips tasks until it find ones whose contributions to the\nweighted load are less than this amount it would move two of the nice\u003d\u003d19\ntasks resulting in a system with 2 nice\u003d\u003d0 and 2 nice\u003d19 on each CPU with\nloads of 2.1 for each CPU.\n\nOne of the advantages of this mechanism is that on a system where all tasks\nhave nice\u003d\u003d0 the load balancing calculations would be mathematically\nidentical to the current load balancing code.\n\nNotes:\n\nstruct task_struct:\n\nhas a new field load_weight which (in a trade off of space for speed)\nstores the contribution that this task makes to a CPU\u0027s weighted load when\nit is runnable.\n\nstruct runqueue:\n\nhas a new field raw_weighted_load which is the sum of the load_weight\nvalues for the currently runnable tasks on this run queue.  This field\nalways needs to be updated when nr_running is updated so two new inline\nfunctions inc_nr_running() and dec_nr_running() have been created to make\nsure that this happens.  This also offers a convenient way to optimize away\nthis part of the smpnice mechanism when CONFIG_SMP is not defined.\n\nint try_to_wake_up():\n\nin this function the value SCHED_LOAD_BALANCE is used to represent the load\ncontribution of a single task in various calculations in the code that\ndecides which CPU to put the waking task on.  While this would be a valid\non a system where the nice values for the runnable tasks were distributed\nevenly around zero it will lead to anomalous load balancing if the\ndistribution is skewed in either direction.  To overcome this problem\nSCHED_LOAD_SCALE has been replaced by the load_weight for the relevant task\nor by the average load_weight per task for the queue in question (as\nappropriate).\n\nint move_tasks():\n\nThe modifications to this function were complicated by the fact that\nactive_load_balance() uses it to move exactly one task without checking\nwhether an imbalance actually exists.  This precluded the simple\noverloading of max_nr_move with max_load_move and necessitated the addition\nof the latter as an extra argument to the function.  The internal\nimplementation is then modified to move up to max_nr_move tasks and\nmax_load_move of weighted load.  This slightly complicates the code where\nmove_tasks() is called and if ever active_load_balance() is changed to not\nuse move_tasks() the implementation of move_tasks() should be simplified\naccordingly.\n\nstruct sched_group *find_busiest_group():\n\nSimilar to try_to_wake_up(), there are places in this function where\nSCHED_LOAD_SCALE is used to represent the load contribution of a single\ntask and the same issues are created.  A similar solution is adopted except\nthat it is now the average per task contribution to a group\u0027s load (as\nopposed to a run queue) that is required.  As this value is not directly\navailable from the group it is calculated on the fly as the queues in the\ngroups are visited when determining the busiest group.\n\nA key change to this function is that it is no longer to scale down\n*imbalance on exit as move_tasks() uses the load in its scaled form.\n\nvoid set_user_nice():\n\nhas been modified to update the task\u0027s load_weight field when it\u0027s nice\nvalue and also to ensure that its run queue\u0027s raw_weighted_load field is\nupdated if it was runnable.\n\nFrom: \"Siddha, Suresh B\" \u003csuresh.b.siddha@intel.com\u003e\n\nWith smpnice, sched groups with highest priority tasks can mask the imbalance\nbetween the other sched groups with in the same domain.  This patch fixes some\nof the listed down scenarios by not considering the sched groups which are\nlightly loaded.\n\na) on a simple 4-way MP system, if we have one high priority and 4 normal\n   priority tasks, with smpnice we would like to see the high priority task\n   scheduled on one cpu, two other cpus getting one normal task each and the\n   fourth cpu getting the remaining two normal tasks.  but with current\n   smpnice extra normal priority task keeps jumping from one cpu to another\n   cpu having the normal priority task.  This is because of the\n   busiest_has_loaded_cpus, nr_loaded_cpus logic..  We are not including the\n   cpu with high priority task in max_load calculations but including that in\n   total and avg_load calcuations..  leading to max_load \u003c avg_load and load\n   balance between cpus running normal priority tasks(2 Vs 1) will always show\n   imbalanace as one normal priority and the extra normal priority task will\n   keep moving from one cpu to another cpu having normal priority task..\n\nb) 4-way system with HT (8 logical processors).  Package-P0 T0 has a\n   highest priority task, T1 is idle.  Package-P1 Both T0 and T1 have 1 normal\n   priority task each..  P2 and P3 are idle.  With this patch, one of the\n   normal priority tasks on P1 will be moved to P2 or P3..\n\nc) With the current weighted smp nice calculations, it doesn\u0027t always make\n   sense to look at the highest weighted runqueue in the busy group..\n   Consider a load balance scenario on a DP with HT system, with Package-0\n   containing one high priority and one low priority, Package-1 containing one\n   low priority(with other thread being idle)..  Package-1 thinks that it need\n   to take the low priority thread from Package-0.  And find_busiest_queue()\n   returns the cpu thread with highest priority task..  And ultimately(with\n   help of active load balance) we move high priority task to Package-1.  And\n   same continues with Package-0 now, moving high priority task from package-1\n   to package-0..  Even without the presence of active load balance, load\n   balance will fail to balance the above scenario..  Fix find_busiest_queue\n   to use \"imbalance\" when it is lightly loaded.\n\n[kernel@kolivas.org: sched: store weighted load on up]\n[kernel@kolivas.org: sched: add discrete weighted cpu load function]\n[suresh.b.siddha@intel.com: sched: remove dead code]\nSigned-off-by: Peter Williams \u003cpwil3058@bigpond.com.au\u003e\nCc: \"Siddha, Suresh B\" \u003csuresh.b.siddha@intel.com\u003e\nCc: \"Chen, Kenneth W\" \u003ckenneth.w.chen@intel.com\u003e\nAcked-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: Nick Piggin \u003cnickpiggin@yahoo.com.au\u003e\nSigned-off-by: Con Kolivas \u003ckernel@kolivas.org\u003e\nCc: John Hawkes \u003chawkes@sgi.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "f31000e573da052b6b8bcc21faff520b4e2eda7a",
      "tree": "670d5e6e00da615f70d99a950cfe7b8603edad26",
      "parents": [
        "58b087cda1e9e46c7061c2282f92bd8e1970bfe7"
      ],
      "author": {
        "name": "Jim Cromie",
        "email": "jim.cromie@gmail.com",
        "time": "Tue Jun 27 02:54:23 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Jun 27 17:32:43 2006 -0700"
      },
      "message": "[PATCH] chardev: GPIO for SCx200 \u0026 PC-8736x: use dev_dbg in common module\n\nUse of dev_dbg() and friends is considered good practice.  dev_dbg() needs a\nstruct device *devp, but nsc_gpio is only a helper module, so it doesnt\nhave/need its own.  To provide devp to the user-modules (scx200 \u0026 pc8736x\n_gpio), we add it to the vtable, and set it during init.\n\nAlso squeeze nsc_gpio_dump()\u0027s format a little.\n\n[  199.259879]  pc8736x_gpio.0: io09: 0x0044 TS OD PUE  EDGE LO DEBOUNCE\n\nSigned-off-by: Jim Cromie \u003cjim.cromie@gmail.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "1a66fdf083bf2b60c4d12feb970bc7373b59e33a",
      "tree": "f1e9d67e5c2fb3f9e7e575a6a9c44db3af6f6c22",
      "parents": [
        "1ca5df0a4cbd17a9536e63c5f69d4717c6538eb0"
      ],
      "author": {
        "name": "Jim Cromie",
        "email": "jim.cromie@gmail.com",
        "time": "Tue Jun 27 02:54:20 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Jun 27 17:32:43 2006 -0700"
      },
      "message": "[PATCH] chardev: GPIO for SCx200 \u0026 PC-8736x: migrate file-ops to common module\n\nNow that the read(), write() file-ops are dispatching gpio-ops via the vtable,\nthey are generic, and can be moved \u0027verbatim\u0027 to the nsc_gpio common-support\nmodule.  After the move, various symbols are renamed to update \u0027scx200_\u0027 to\n\u0027nsc_\u0027, and headers are adjusted accordingly.\n\nSigned-off-by: Jim Cromie \u003cjim.cromie@gmail.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "fe3a168a2ce1c93837cdf8fe27a3e67795155f90",
      "tree": "798eaa66b5e95756e800132602ace5f5c00aa3b0",
      "parents": [
        "9b170b8fdbd14a197ad26b4354f3810c65a96602"
      ],
      "author": {
        "name": "Jim Cromie",
        "email": "jim.cromie@gmail.com",
        "time": "Tue Jun 27 02:54:18 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Jun 27 17:32:42 2006 -0700"
      },
      "message": "[PATCH] chardev: GPIO for SCx200 \u0026 PC-8736x: add gpio-ops vtable\n\nAbstract the gpio operations into a new nsc_gpio_ops vtable.\n\nSigned-off-by: Jim Cromie \u003cjim.cromie@gmail.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "55b8c0455b8aeb80f94183fa3aa42e3fa62b1705",
      "tree": "ec8f219a8518f32c1d7aef9546410f074cfb352e",
      "parents": [
        "979b5ec3a7055d35b212f657e80257ec1346aa0e"
      ],
      "author": {
        "name": "Jim Cromie",
        "email": "jim.cromie@gmail.com",
        "time": "Tue Jun 27 02:54:15 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Jun 27 17:32:42 2006 -0700"
      },
      "message": "[PATCH] chardev: GPIO for SCx200 \u0026 PC-8736x: device minor numbers are unsigned ints\n\nPer kernel headers, device minor numbers are unsigned ints.  Do the same in\nthis driver.\n\nSigned-off-by: Jim Cromie \u003cjim.cromie@gmail.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "62c83cde9282a9580994a12b3063e677181b5ebe",
      "tree": "f8f2843475d0c13cdc9dc64b09b5249f31449183",
      "parents": [
        "5a67e4c5b6faaccf31740a07d93704166405d880"
      ],
      "author": {
        "name": "Jim Cromie",
        "email": "jim.cromie@gmail.com",
        "time": "Tue Jun 27 02:54:13 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Jun 27 17:32:42 2006 -0700"
      },
      "message": "[PATCH] chardev: GPIO for SCx200 \u0026 PC-8736x: whitespace pre-clean\n\nGPIO SUPPORT FOR SCx200 \u0026 PC8736x\n\nThe patch-set reworks the 2.4 vintage scx200_gpio driver for modern 2.6, and\nrefactors GPIO support to reuse it in a new driver for the GPIO on PC-8736x\nchips.  Its handy for the Soekris.com net-4801, which has both chips.\n\nThese patches have been seen recently on Kernel-Mentors, and then\nKernel-Newbies ML, where Jesper Juhl kindly reviewed it.  His feedback has\nbeen incorporated.  Thanks Jesper !\n\nIts also gone to soekris-tech@soekris.com for possible testing by linux folks,\nI\u0027ve gotten 1 promise so far.  Theyre mostly BSD folk over there, but we\u0027ll\nsee..\n\nDevice-file \u0026 Sysfs\n\nThe driver preserves the existing device-file interface, including the\nwrite/cmd set, but adds v to \u0027view\u0027 the pin-settings \u0026 configs by inducing,\nvia gpio_dump(), a dev_info() call.  Its a fairly crappy way to get status,\nbut it sticks to the syslog approach, conservatively.\n\nAllowing users to voluntarily trigger logging is good, it gives them a\nfamiliar way to confirm their app\u0027s control \u0026 use of the pins, and I\u0027ve thus\nreduced the pin-mode-updates from dev_info to dev_dbg.\n\nI\u0027ve recently bolted on a proto sysfs interface for both new drivers.  Im not\nincluding those patches here; they (the patch + doc-pre-patch) are still quite\nraw (and unreviewed on KNML), and since they \u0027invent\u0027 a convention for GPIO, a\nproper vetting is needed.  Since this patchset is much bigger than my previous\nones, Id like to keep things simpler, and address it 1st, before bolting on\nmore stuff.\n\nThe driver-split\n\nThe Geode CPU and the PC-87366 Super-IO chip have GPIO units which share a\ncommon pin-architecture (same pin features, with same bits controlling), but\nwith different addressing mechanics and port organizations.\n\nThe vintage driver expresses the pin capabilities with pin-mode commands\n[OoPpTt],etc that change the pin configurations, and since the 2 chips share\npin-arch, we can reuse the read(), write() commands, once the implementation\nis suitably adjusted.\n\nThe patchset adds a vtable: struct nsc_gpio_ops, to abstract the existing gpio\noperations, then adjusts fileops.write() code to invoke operations via that\nvtable.  Driver specific open()s set private_data to the vtable so its\navailable for use by write().\n\nThe vtable gets the gpio_dump() too, since its user-friendly, and (could be\nconstrued as) part of the current device-file interface.  To support use of\ndev_dbg() in write() \u0026 _dump(), the vtable gets a dev ptr too, set by both\nscx200 \u0026 pc8736x _gpio drivers.\n\nheres how the pins are presented in syslog:\n\n[ 1890.176223]  scx200_gpio.0: io00: 0x0044 TS OD PUE  EDGE LO DEBOUNCE\n[ 1890.287223]  scx200_gpio.0: io01: 0x0003 OE PP PUD  EDGE LO\n\nnsc_gpio.c: new file is new home of several file-ops methods, which are\nmodified to get their vtable from filp-\u003eprivate_data, and use it where needed.\n\nscx200_gpio.c: keeps some of its existing gpio routines, but now wires them up\nvia the vtable (they\u0027re invoked by nsc_gpio.c:nsc_gpio_write() thru this\nvtable).  A driver-spcific open() initializes filp-\u003eprivate_data with the\nvtable.\n\nOnce the split is clean, and the scx200_gpio driver is working, we copy and\nmodify the function and variable names, and rework the access-method bodies\nfor the different addressing scheme.\n\nHeres a working overview of the patchset:\n\n# series file for GPIO\n\n# Spring Cleaning\ngpio-scx/patch.preclean        # scripts/Lindent fixes, editor-ctrl comments\n\n# API Modernization\n\ngpio-scx/patch.api26        # what I learned from LDD3\ngpio-scx/patch.platform-dev-2    # get pdev, support for dev_dbg()\ngpio-scx/patch.unsigned-minor    # fix to match std practice\n\n# Debuggability\n\ngpio-scx/patch.dump-diet    # shrink gpio_dump()\ngpio-scx/patch.viewpins        # add new \u0027command\u0027 to call dump()\ngpio-scx/patch.init-refactor    # pull shadow-register init to sub\n\n# Access-Abstraction (add vtable)\n\ngpio-scx/patch.access-vtable    # introduce nsg_gpio_ops vtable, w dump\ngpio-scx/patch.vtable-calls    # add \u0026 use the vtable in scx200_gpio\ngpio-scx/patch.nscgpio-shell    # add empty driver for common-fops\n\n# move code under abstraction\ngpio-scx/patch.migrate-fops    # move file-ops methods from scx200_gpio\ngpio-scx/patch.common-dump    # mv scx200.c:scx200_gpio_dump() to nsc_gpio.c\ngpio-scx/patch.add-pc8736x-gpio    # add new driver, like old, w chip adapt\n# gpio-scx/patch.add-DEBUG    # enable all dev_dbg()s\n\n# Cleanups\n\n# finish printk -\u003e dev_dbg() etc\ngpio-scx/patch.pdev-pc8736x    # new drvr needs pdev too,\ngpio-scx/patch.devdbg-nscgpio    # add device to \u0027vtable\u0027, use in dev_dbg()\n\n# gpio-scx/patch.pin-config-view    # another \u0027c\u0027 \u0027command\u0027\n# gpio-scx/quiet-getset        # take out excess dbg stuff (pretty quiet\nnow)\ngpio-scx/patch.shadow-current    # imitate scx200_gpio\u0027s shadow regs in\npc87*\n\n# post KMentors-post patches ..\n\ngpio-scx/patch.mutexes        # use mutexes for config-locks\ngpio-scx/patch.viewpins-values    # extend dump to obsolete separate \u0027c\u0027 cmd\n\ngpio-scx/patch.kconfig        # add stuff for kbuild\n\n# TBC\n# combine api26 with pdev, which is just one step.\n# merge c\u0026v commands to single do-all-fn\n# delay viewpins, dump-diet should also un-ifdef it too.\n\ndiff.sys-gpio-rollup-1\n\nThis patch:\n\nRemoved editor format-control comments, and used scripts/Lindent to clean up\nwhitespace, then deleted the bogus chunks :-(\n\nSigned-off-by: Jim Cromie \u003cjim.cromie@gmail.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "39f4885c56073ecafd482d7e10dd7b17900fa312",
      "tree": "81a90a4b7bc4dae71613cce3e27da361b08ecb0a",
      "parents": [
        "26c2143b63b8078d08d562733716de142927e17a"
      ],
      "author": {
        "name": "Chandra Seetharaman",
        "email": "sekharan@us.ibm.com",
        "time": "Tue Jun 27 02:54:10 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Jun 27 17:32:41 2006 -0700"
      },
      "message": "[PATCH] cpu hotplug: add hotplug versions of cpu_notifier\n\nDefine new macros register_hotcpu_notifier() and unregister_hotcpu_notifier()\nthat redefines register_cpu_notifier() and unregister_cpu_notifier() for use\nonly when HOTPLUG_CPU is defined.\n\nSigned-off-by: Chandra Seetharaman \u003csekharan@us.ibm.com\u003e\nCc: Ashok Raj \u003cashok.raj@intel.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "65edc68c345cbe21d0b0375c3452a3ed5e322868",
      "tree": "07961d63cdacf95355a8db471c6ff4e321ca94fd",
      "parents": [
        "054cc8a2d808822dadf488a61729e3e550f114c4"
      ],
      "author": {
        "name": "Chandra Seetharaman",
        "email": "sekharan@us.ibm.com",
        "time": "Tue Jun 27 02:54:08 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Jun 27 17:32:41 2006 -0700"
      },
      "message": "[PATCH] cpu hotplug: make [un]register_cpu_notifier init time only\n\nCPUs come online only at init time (unless CONFIG_HOTPLUG_CPU is defined).\nSo, cpu_notifier functionality need to be available only at init time.\n\nThis patch makes register_cpu_notifier() available only at init time, unless\nCONFIG_HOTPLUG_CPU is defined.\n\nThis patch exports register_cpu_notifier() and unregister_cpu_notifier() only\nif CONFIG_HOTPLUG_CPU is defined.\n\nSigned-off-by: Chandra Seetharaman \u003csekharan@us.ibm.com\u003e\nCc: Ashok Raj \u003cashok.raj@intel.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "c32e066057fe0914da262c94e52cefb142f965b4",
      "tree": "c429649e39af7925a443c72f180349a451c7acbe",
      "parents": [
        "72e9bb549280b354311af30640c9433474f3a32c"
      ],
      "author": {
        "name": "Paul E. McKenney",
        "email": "paulmck@us.ibm.com",
        "time": "Tue Jun 27 02:54:04 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Jun 27 17:32:40 2006 -0700"
      },
      "message": "[PATCH] rcutorture: add call_rcu_bh() operations\n\nAdd operations for the call_rcu_bh() variant of RCU.  Also add an\nrcu_batches_completed_bh() function, which is needed by rcutorture.\n\nSigned-off-by: Paul E. McKenney \u003cpaulmck@us.ibm.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "1c0f16e5cdff59f3b132a1b0c0d44a941f8813d2",
      "tree": "b2693f9e481381ae3e703afa3b68ad3531ea6645",
      "parents": [
        "34af946a22724c4e2b204957f2b24b22a0fb121c"
      ],
      "author": {
        "name": "David Woodhouse",
        "email": "dwmw2@infradead.org",
        "time": "Tue Jun 27 02:53:56 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Jun 27 17:32:39 2006 -0700"
      },
      "message": "[PATCH] Remove gratuitous inclusion of \u003clinux/config.h\u003e from \u003clinux/dmaengine.h\u003e\n\nWe include config.h on the compiler command line. There\u0027s no need for it\nto be included again.\n\nSigned-off-by: David Woodhouse \u003cdwmw2@infradead.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "34af946a22724c4e2b204957f2b24b22a0fb121c",
      "tree": "7881dcbd0a698257c126198cdb6d97d4e45ee51e",
      "parents": [
        "b6cd0b772dcc5dc9b4c03d53946474dee399fa72"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Jun 27 02:53:55 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Jun 27 17:32:39 2006 -0700"
      },
      "message": "[PATCH] spin/rwlock init cleanups\n\nlocking init cleanups:\n\n - convert \" \u003d SPIN_LOCK_UNLOCKED\" to spin_lock_init() or DEFINE_SPINLOCK()\n - convert rwlocks in a similar manner\n\nthis patch was generated automatically.\n\nMotivation:\n\n - cleanliness\n - lockdep needs control of lock initialization, which the open-coded\n   variants do not give\n - it\u0027s also useful for -rt and for lock debugging in general\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Arjan van de Ven \u003carjan@linux.intel.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "b6cd0b772dcc5dc9b4c03d53946474dee399fa72",
      "tree": "09ef125f7595f73ba256177f894d6c341074ff5b",
      "parents": [
        "a7807a32bbb027ab9955b96734fdc7f1e6497a9f"
      ],
      "author": {
        "name": "Adrian Bunk",
        "email": "bunk@stusta.de",
        "time": "Tue Jun 27 02:53:54 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Jun 27 17:32:38 2006 -0700"
      },
      "message": "[PATCH] fs/buffer.c: cleanups\n\n- add a proper prototype for the following global function:\n  - buffer_init()\n\n- make the following needlessly global function static:\n  - end_buffer_async_write()\n\nSigned-off-by: Adrian Bunk \u003cbunk@stusta.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "a7807a32bbb027ab9955b96734fdc7f1e6497a9f",
      "tree": "8ed62e305638e1b853f1c80b5bb7ed818418765c",
      "parents": [
        "b3c681e09193559ba15f6c9562bd37045f120a96"
      ],
      "author": {
        "name": "Randy Dunlap",
        "email": "rdunlap@xenotime.net",
        "time": "Tue Jun 27 02:53:54 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Jun 27 17:32:38 2006 -0700"
      },
      "message": "[PATCH] poison: add \u0026 use more constants\n\nAdd more poison values to include/linux/poison.h.  It\u0027s not clear to me\nwhether some others should be added or not, so I haven\u0027t added any of\nthese:\n\n./include/linux/libata.h:#define ATA_TAG_POISON\t\t0xfafbfcfdU\n./arch/ppc/8260_io/fcc_enet.c:1918:\tmemset((char *)(\u0026(immap-\u003eim_dprambase[(mem_addr+64)])), 0x88, 32);\n./drivers/usb/mon/mon_text.c:429:\tmemset(mem, 0xe5, sizeof(struct mon_event_text));\n./drivers/char/ftape/lowlevel/ftape-ctl.c:738:\t\tmemset(ft_buffer[i]-\u003eaddress, 0xAA, FT_BUFF_SIZE);\n./drivers/block/sx8.c:/* 0xf is just arbitrary, non-zero noise; this is sorta like poisoning */\n\nSigned-off-by: Randy Dunlap \u003crdunlap@xenotime.net\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "b3c681e09193559ba15f6c9562bd37045f120a96",
      "tree": "8c70d20988e6b04171cb1f60b0da34978bca5f36",
      "parents": [
        "c9cf55285e87ac423c45d9efca750d3f50234d10"
      ],
      "author": {
        "name": "Randy Dunlap",
        "email": "rdunlap@xenotime.net",
        "time": "Tue Jun 27 02:53:53 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Jun 27 17:32:38 2006 -0700"
      },
      "message": "[PATCH] update two drivers for poison.h\n\nUpdate two drivers to use poison.h.\n\nSigned-off-by: Randy Dunlap \u003crdunlap@xenotime.net\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "c9cf55285e87ac423c45d9efca750d3f50234d10",
      "tree": "d46f3e90fbb38115c25b3315f6280ad65f83a14f",
      "parents": [
        "e6e5494cb23d1933735ee47cc674ffe1c4afed6f"
      ],
      "author": {
        "name": "Randy Dunlap",
        "email": "rdunlap@xenotime.net",
        "time": "Tue Jun 27 02:53:52 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Jun 27 17:32:38 2006 -0700"
      },
      "message": "[PATCH] add poison.h and patch primary users\n\nLocalize poison values into one header file for better documentation and\neasier/quicker debugging and so that the same values won\u0027t be used for\nmultiple purposes.\n\nUse these constants in core arch., mm, driver, and fs code.\n\nSigned-off-by: Randy Dunlap \u003crdunlap@xenotime.net\u003e\nAcked-by: Matt Mackall \u003cmpm@selenic.com\u003e\nCc: Paul Mackerras \u003cpaulus@samba.org\u003e\nCc: Benjamin Herrenschmidt \u003cbenh@kernel.crashing.org\u003e\nCc: \"David S. Miller\" \u003cdavem@davemloft.net\u003e\nCc: Andi Kleen \u003cak@muc.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "e6e5494cb23d1933735ee47cc674ffe1c4afed6f",
      "tree": "c8945bb3ae5bec38693d801fb589d22d48d6f8eb",
      "parents": [
        "d5fb34261dcd32c9cb3b28121fdc46308db513a1"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Jun 27 02:53:50 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Jun 27 17:32:38 2006 -0700"
      },
      "message": "[PATCH] vdso: randomize the i386 vDSO by moving it into a vma\n\nMove the i386 VDSO down into a vma and thus randomize it.\n\nBesides the security implications, this feature also helps debuggers, which\ncan COW a vma-backed VDSO just like a normal DSO and can thus do\nsingle-stepping and other debugging features.\n\nIt\u0027s good for hypervisors (Xen, VMWare) too, which typically live in the same\nhigh-mapped address space as the VDSO, hence whenever the VDSO is used, they\nget lots of guest pagefaults and have to fix such guest accesses up - which\nslows things down instead of speeding things up (the primary purpose of the\nVDSO).\n\nThere\u0027s a new CONFIG_COMPAT_VDSO (default\u003dy) option, which provides support\nfor older glibcs that still rely on a prelinked high-mapped VDSO.  Newer\ndistributions (using glibc 2.3.3 or later) can turn this option off.  Turning\nit off is also recommended for security reasons: attackers cannot use the\npredictable high-mapped VDSO page as syscall trampoline anymore.\n\nThere is a new vdso\u003d[0|1] boot option as well, and a runtime\n/proc/sys/vm/vdso_enabled sysctl switch, that allows the VDSO to be turned\non/off.\n\n(This version of the VDSO-randomization patch also has working ELF\ncoredumping, the previous patch crashed in the coredumping code.)\n\nThis code is a combined work of the exec-shield VDSO randomization\ncode and Gerd Hoffmann\u0027s hypervisor-centric VDSO patch. Rusty Russell\nstarted this patch and i completed it.\n\n[akpm@osdl.org: cleanups]\n[akpm@osdl.org: compile fix]\n[akpm@osdl.org: compile fix 2]\n[akpm@osdl.org: compile fix 3]\n[akpm@osdl.org: revernt MAXMEM change]\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Arjan van de Ven \u003carjan@infradead.org\u003e\nCc: Gerd Hoffmann \u003ckraxel@suse.de\u003e\nCc: Rusty Russell \u003crusty@rustcorp.com.au\u003e\nCc: Zachary Amsden \u003czach@vmware.com\u003e\nCc: Andi Kleen \u003cak@muc.de\u003e\nCc: Jan Beulich \u003cjbeulich@novell.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "c723e084606ca1c81e91b80b2c0c44bde7bbc4df",
      "tree": "c338f62586978093d7c6b85c3f783cb65879c1f1",
      "parents": [
        "4b89aff930d632be10d557d08d1b60dee7163dbe"
      ],
      "author": {
        "name": "Chuck Ebbert",
        "email": "76306.1226@compuserve.com",
        "time": "Tue Jun 27 02:53:47 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Jun 27 17:32:37 2006 -0700"
      },
      "message": "[PATCH] i386: use C code for current_thread_info()\n\nUsing C code for current_thread_info() lets the compiler optimize it.\nWith gcc 4.0.2, kernel is smaller:\n\n    text           data     bss     dec     hex filename\n 3645212         555556  312024 4512792  44dc18 2.6.17-rc6-nb-post/vmlinux\n 3647276         555556  312024 4514856  44e428 2.6.17-rc6-nb/vmlinux\n -------\n   -2064\n\nSigned-off-by: Chuck Ebbert \u003c76306.1226@compuserve.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "4b89aff930d632be10d557d08d1b60dee7163dbe",
      "tree": "f7d854a81b9c5b1b4e6df01cb78ce9ff34684309",
      "parents": [
        "7f35bf929ffe2b3967c8f398880fcb78fcd2ab5c"
      ],
      "author": {
        "name": "Rohit Seth",
        "email": "rohitseth@google.com",
        "time": "Tue Jun 27 02:53:46 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Jun 27 17:32:37 2006 -0700"
      },
      "message": "[PATCH] i386: move phys_proc_id and cpu_core_id to cpuinfo_x86\n\nMove the phys_core_id and cpu_core_id to cpuinfo_x86 structure.  Similar\npatch for x86_64 is already accepted by Andi earlier this week.\n\n[akpm@osdl.org: fix warning]\nSigned-off-by: Rohit Seth \u003crohitseth@google.com\u003e\nCc: Andi Kleen \u003cak@muc.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "19eadf98c8167eac843580683317b99572e2abf0",
      "tree": "a5625f7834f0f06fc28a605c3cdb8debe2218498",
      "parents": [
        "bd9e0b74f52dbac6241643fadca2393808b14c7a"
      ],
      "author": {
        "name": "Rusty Russell",
        "email": "rusty@rustcorp.com.au",
        "time": "Tue Jun 27 02:53:44 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Jun 27 17:32:37 2006 -0700"
      },
      "message": "[PATCH] x86: increase interrupt vector range\n\nRemove the limit of 256 interrupt vectors by changing the value stored in\norig_{e,r}ax to be the complemented interrupt vector.  The orig_{e,r}ax\nneeds to be \u003c 0 to allow the signal code to distinguish between return from\ninterrupt and return from syscall.  With this change applied, NR_IRQS can\nbe \u003e 256.\n\nXen extends the IRQ numbering space to include room for dynamically\nallocated virtual interrupts (in the range 256-511), which requires a more\npermissive interface to do_IRQ.\n\nSigned-off-by: Ian Pratt \u003cian.pratt@xensource.com\u003e\nSigned-off-by: Christian Limpach \u003cChristian.Limpach@cl.cam.ac.uk\u003e\nSigned-off-by: Chris Wright \u003cchrisw@sous-sol.org\u003e\nSigned-off-by: Rusty Russell \u003crusty@rustcorp.com.au\u003e\nCc: \"Protasevich, Natalie\" \u003cNatalie.Protasevich@UNISYS.com\u003e\nCc: Andi Kleen \u003cak@muc.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "76b67ed9dce69a6a329cdd66f94af1787f417b62",
      "tree": "4d80993e607ae4a870f98ad3441795737570b012",
      "parents": [
        "dd0932d9d4301bd58a4d5a634a3a8298c4fc5e24"
      ],
      "author": {
        "name": "KAMEZAWA Hiroyuki",
        "email": "kamezawa.hiroyu@jp.fujitsu.com",
        "time": "Tue Jun 27 02:53:41 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Jun 27 17:32:37 2006 -0700"
      },
      "message": "[PATCH] node hotplug: register cpu: remove node struct\n\nWith Goto-san\u0027s patch, we can add new pgdat/node at runtime.  I\u0027m now\nconsidering node-hot-add with cpu + memory on ACPI.\n\nI found acpi container, which describes node, could evaluate cpu before\nmemory. This means cpu-hot-add occurs before memory hot add.\n\nIn most part, cpu-hot-add doesn\u0027t depend on node hot add.  But register_cpu(),\nwhich creates symbolic link from node to cpu, requires that node should be\nonlined before register_cpu().  When a node is onlined, its pgdat should be\nthere.\n\nThis patch-set holds off creating symbolic link from node to cpu\nuntil node is onlined.\n\nThis removes node arguments from register_cpu().\n\nNow, register_cpu() requires \u0027struct node\u0027 as its argument.  But the array of\nstruct node is now unified in driver/base/node.c now (By Goto\u0027s node hotplug\npatch).  We can get struct node in generic way.  So, this argument is not\nnecessary now.\n\nThis patch also guarantees add cpu under node only when node is onlined.  It\nis necessary for node-hot-add vs.  cpu-hot-add patch following this.\n\nMoreover, register_cpu calculates cpu-\u003enode_id by cpu_to_node() without regard\nto its \u0027struct node *root\u0027 argument.  This patch removes it.\n\nAlso modify callers of register_cpu()/unregister_cpu, whose args are changed\nby register-cpu-remove-node-struct patch.\n\n[Brice.Goglin@ens-lyon.org: fix it]\nSigned-off-by: KAMEZAWA Hiroyuki \u003ckamezawa.hiroyu@jp.fujitsu.com\u003e\nCc: Yasunori Goto \u003cy-goto@jp.fujitsu.com\u003e\nCc: Ashok Raj \u003cashok.raj@intel.com\u003e\nCc: Dave Hansen \u003chaveblue@us.ibm.com\u003e\nSigned-off-by: Brice Goglin \u003cBrice.Goglin@ens-lyon.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "dd0932d9d4301bd58a4d5a634a3a8298c4fc5e24",
      "tree": "864da70354875dadfcaebd51571122462959530a",
      "parents": [
        "7049027c6f0098eb6b23b8f6ca65a905541faf81"
      ],
      "author": {
        "name": "Yasunori Goto",
        "email": "y-goto@jp.fujitsu.com",
        "time": "Tue Jun 27 02:53:40 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Jun 27 17:32:37 2006 -0700"
      },
      "message": "[PATCH] pgdat allocation and update for ia64 of memory hotplug: allocate pgdat and per node data\n\nThis is a patch to allocate pgdat and per node data area for ia64.  The size\nfor them can be calculated by compute_pernodesize().\n\nSigned-off-by: Yasunori Goto \u003cy-goto@jp.fujitsu.com\u003e\nCc: \"Luck, Tony\" \u003ctony.luck@intel.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "7049027c6f0098eb6b23b8f6ca65a905541faf81",
      "tree": "ab5528625be6e79c02767c6d9444599c1980cf0e",
      "parents": [
        "ae5a2c1c9b2bc3633032f97d02e60ae547a6047c"
      ],
      "author": {
        "name": "Yasunori Goto",
        "email": "y-goto@jp.fujitsu.com",
        "time": "Tue Jun 27 02:53:39 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Jun 27 17:32:37 2006 -0700"
      },
      "message": "[PATCH] pgdat allocation and update for ia64 of memory hotplug: update pgdat address array\n\nThis is to refresh node_data[] array for ia64.  As I mentioned previous\npatches, ia64 has copies of information of pgdat address array on each node as\nper node data.\n\nAt v2 of node_add, this function used stop_machine_run() to update them.  (I\nwished that they were copied safety as much as possible.) But, in this patch,\nthis arrays are just copied simply, and set node_online_map bit after\ncompletion of pgdat initialization.\n\nSo, kernel must touch NODE_DATA() macro after checking node_online_map().\n(Current code has already done it.) This is more simple way for just\nhot-add.....\n\nNote : It will be problem when hot-remove will occur,\n       because, even if online_map bit is set, kernel may\n       touch NODE_DATA() due to race condition. :-(\n\nSigned-off-by: Yasunori Goto \u003cy-goto@jp.fujitsu.com\u003e\nCc: \"Luck, Tony\" \u003ctony.luck@intel.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "0fc44159bfcb5b0afa178f9c3f50db23aebc76ff",
      "tree": "d87e47c0f5e6b2eff1d9113d3495d185924734d9",
      "parents": [
        "1f04bbd2d396a701c5af2e5b92bad896c2550c16"
      ],
      "author": {
        "name": "Yasunori Goto",
        "email": "y-goto@jp.fujitsu.com",
        "time": "Tue Jun 27 02:53:38 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Jun 27 17:32:36 2006 -0700"
      },
      "message": "[PATCH] Register sysfs file for hotplugged new node\n\nWhen new node becomes enable by hot-add, new sysfs file must be created for\nnew node.  So, if new node is enabled by add_memory(), register_one_node() is\ncalled to create it.  In addition, I386\u0027s arch_register_node() and a part of\nregister_nodes() of powerpc are consolidated to register_one_node() as a\ngeneric_code().\n\nThis is tested by Tiger4(IPF) with node hot-plug emulation.\n\nSigned-off-by: Keiichiro Tokunaga \u003ctokuanga.keiich@jp.fujitsu.com\u003e\nSigned-off-by: Yasunori Goto \u003cy-goto@jp.fujitsu.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "2842f11419704f8707fffc82e10d2263427fc130",
      "tree": "9bc86163ba7b2fa842b3aff2f087be6419f246bb",
      "parents": [
        "0a54703904a4a206686b4e8c3f5a6927b60747aa"
      ],
      "author": {
        "name": "KAMEZAWA Hiroyuki",
        "email": "kamezawa.hiroyu@jp.fujitsu.com",
        "time": "Tue Jun 27 02:53:36 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Jun 27 17:32:36 2006 -0700"
      },
      "message": "[PATCH] catch valid mem range at onlining memory\n\nThis patch allows hot-add memory which is not aligned to section.\n\nNow, hot-added memory has to be aligned to section size.  Considering big\nsection sized archs, this is not useful.\n\nWhen hot-added memory is registerd as iomem resoruce by iomem resource\npatch, we can make use of that information to detect valid memory range.\n\nNote: With this, not-aligned memory can be registerd. To allow hot-add\n      memory with holes, we have to do more work around add_memory().\n      (It doesn\u0027t allows add memory to already existing mem section.)\n\nSigned-off-by: KAMEZAWA Hiroyuki \u003ckamezawa.hiroyu@jp.fujitsu.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "3218ae14b1e3ee2ab81df30ed690c8e864d23316",
      "tree": "91933138cb7c32dad2246ed39baa8ea4e6f98cd8",
      "parents": [
        "10ad400b49aca15ecf83b0fde7e35e4064b15c85"
      ],
      "author": {
        "name": "Yasunori Goto",
        "email": "y-goto@jp.fujitsu.com",
        "time": "Tue Jun 27 02:53:33 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Jun 27 17:32:36 2006 -0700"
      },
      "message": "[PATCH] pgdat allocation for new node add (export kswapd start func)\n\nWhen node is hot-added, kswapd for the node should start.  This export kswapd\nstart function as kswapd_run() to use at add_memory().\n\n[akpm@osdl.org: daemonize() isn\u0027t needed when using the kthread API]\nSigned-off-by: Yasunori Goto \u003cy-goto@jp.fujitsu.com\u003e\nSigned-off-by: KAMEZAWA Hiroyuki \u003ckamezawa.hiroyu@jp.fujitsu.com\u003e\nCc: Dave Hansen \u003chaveblue@us.ibm.com\u003e\nCc: \"Brown, Len\" \u003clen.brown@intel.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "10ad400b49aca15ecf83b0fde7e35e4064b15c85",
      "tree": "336de747d6839add8ab3a7f70367e87ddbc7d155",
      "parents": [
        "306d6cbe86e2e6603ac3162e1294d5c75cfdeca6"
      ],
      "author": {
        "name": "Yasunori Goto",
        "email": "y-goto@jp.fujitsu.com",
        "time": "Tue Jun 27 02:53:33 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Jun 27 17:32:36 2006 -0700"
      },
      "message": "[PATCH] pgdat allocation for new node add (refresh node_data[])\n\nRefresh NODE_DATA() for generic archs.  In this case, NODE_DATA(nid) \u003d\u003d\nnode_data[nid].  node_data[] is array of address of pgdat.  So, refresh is\nquite simple.\n\nSigned-off-by: Yasunori Goto \u003cy-goto@jp.fujitsu.com\u003e\nSigned-off-by: KAMEZAWA Hiroyuki \u003ckamezawa.hiroyu@jp.fujitsu.com\u003e\nCc: Dave Hansen \u003chaveblue@us.ibm.com\u003e\nCc: \"Brown, Len\" \u003clen.brown@intel.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "306d6cbe86e2e6603ac3162e1294d5c75cfdeca6",
      "tree": "66f4b807c47eca11c272c154670ed3f8f468e11f",
      "parents": [
        "1e3590e2e4a38e8390fdac5bda23330bf2801838"
      ],
      "author": {
        "name": "Yasunori Goto",
        "email": "y-goto@jp.fujitsu.com",
        "time": "Tue Jun 27 02:53:32 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Jun 27 17:32:36 2006 -0700"
      },
      "message": "[PATCH] pgdat allocation for new node add (generic alloc node_data)\n\nFor node hotplug, basically we have to allocate new pgdat.  But, there are\nseveral types of implementations of pgdat.\n\n1. Allocate only pgdat.\n   This style allocate only pgdat area.\n   And its address is recorded in node_data[].\n   It is most popular style.\n\n2. Static array of pgdat\n   In this case, all of pgdats are static array.\n   Some archs use this style.\n\n3. Allocate not only pgdat, but also per node data.\n   To increase performance, each node has copy of some data as\n   a per node data. So, this area must be allocated too.\n\n   Ia64 is this style. Ia64 has the copies of node_data[] array\n   on each per node data to increase performance.\n\nIn this series of patches, treat (1) as generic arch.\n\ngeneric archs can use generic function. (2) and (3) should have\nits own if necessary.\n\nThis patch defines pgdat allocator.\nUpdating NODE_DATA() macro function is in other patch.\n\nSigned-off-by: Yasonori Goto \u003cy-goto@jp.fujitsu.com\u003e\nSigned-off-by: KAMEZAWA Hiroyuki \u003ckamezawa.hiroyu@jp.fujitsu.com\u003e\nCc: Dave Hansen \u003chaveblue@us.ibm.com\u003e\nCc: \"Brown, Len\" \u003clen.brown@intel.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "1e3590e2e4a38e8390fdac5bda23330bf2801838",
      "tree": "528591e9db601af913756b11d37e451202584cd2",
      "parents": [
        "bc02af93dd2bbddce1b55e0a493f833a1b7cf140"
      ],
      "author": {
        "name": "Yasunori Goto",
        "email": "y-goto@jp.fujitsu.com",
        "time": "Tue Jun 27 02:53:31 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Jun 27 17:32:36 2006 -0700"
      },
      "message": "[PATCH] pgdat allocation for new node add (get node id by acpi)\n\nThis is to find node id from acpi\u0027s handle of memory_device in DSDT.  _PXM for\nthe new node can be found by acpi_get_pxm() by using new memory\u0027s handle.  So,\nnode id can be found by pxm_to_nid_map[].\n\n  This patch becomes simpler than v2 of node hot-add patch.\n  Because old add_memory() function doesn\u0027t have node id parameter.\n  So, kernel must find its handle by physical address via DSDT again.\n  But, v3 just give node id to add_memory() now.\n\nSigned-off-by: Yasunori Goto \u003cy-goto@jp.fujitsu.com\u003e\nCc: Dave Hansen \u003chaveblue@us.ibm.com\u003e\nCc: \"Brown, Len\" \u003clen.brown@intel.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "bc02af93dd2bbddce1b55e0a493f833a1b7cf140",
      "tree": "bda7998531b9c612c5597be9158f082d1cb5ab26",
      "parents": [
        "dd56a8e36f91f63c0a31e8a118d87b7cf01526b8"
      ],
      "author": {
        "name": "Yasunori Goto",
        "email": "y-goto@jp.fujitsu.com",
        "time": "Tue Jun 27 02:53:30 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Jun 27 17:32:35 2006 -0700"
      },
      "message": "[PATCH] pgdat allocation for new node add (specify node id)\n\nChange the name of old add_memory() to arch_add_memory.  And use node id to\nget pgdat for the node at NODE_DATA().\n\nNote: Powerpc\u0027s old add_memory() is defined as __devinit. However,\n      add_memory() is usually called only after bootup.\n      I suppose it may be redundant. But, I\u0027m not well known about powerpc.\n      So, I keep it. (But, __meminit is better at least.)\n\nSigned-off-by: Yasunori Goto \u003cy-goto@jp.fujitsu.com\u003e\nCc: Dave Hansen \u003chaveblue@us.ibm.com\u003e\nCc: \"Brown, Len\" \u003clen.brown@intel.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "d7a1bb0a04ca835bffc0a91e64ab827dfba7d8f5",
      "tree": "f944d6ed6ecf23c59054b7f459e88f31f8da4235",
      "parents": [
        "12e9b5fb96028aab26af65bb06d2dee56c428a6e"
      ],
      "author": {
        "name": "James Smart",
        "email": "James.Smart@Emulex.Com",
        "time": "Wed Mar 08 14:50:12 2006 -0500"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "jejb@mulgrave.il.steeleye.com",
        "time": "Tue Jun 27 10:48:11 2006 -0500"
      },
      "message": "[SCSI] Block I/O while SG reset operation in progress - the midlayer patch\n\nThe scsi midlayer portion of the patch\n\nSigned-off-by: James Smart \u003cJames.Smart@emulex.com\u003e\nSigned-off-by: James Bottomley \u003cJames.Bottomley@SteelEye.com\u003e\n"
    },
    {
      "commit": "c9f700f840bd481b3e01fcad1ba8da01794a6726",
      "tree": "786f4a6a3f3a2d619ae4230a62f95361fcd3245a",
      "parents": [
        "6d4f8224d4ee065e0e3186cc554468d735e6015d"
      ],
      "author": {
        "name": "KaiGai Kohei",
        "email": "kaigai@ak.jp.nec.com",
        "time": "Sun Jun 11 10:35:15 2006 +0900"
      },
      "committer": {
        "name": "David Woodhouse",
        "email": "dwmw2@infradead.org",
        "time": "Tue Jun 27 16:16:26 2006 +0100"
      },
      "message": "[JFFS2][XATTR] using \u0027delete marker\u0027 for xdatum/xref deletion\n\n- When xdatum is removed, a new xdatum with \u0027delete marker\u0027 is\n  written. (version\u003d\u003d0xffffffff means \u0027delete marker\u0027)\n- When xref is removed, a new xref with \u0027delete marker\u0027 is written.\n  (odd-numbered xseqno means \u0027delete marker\u0027)\n\n- delete_xattr_(datum/xref)_delay() are new deletion functions\n  are added. We can only use them if we can detect the target\n  obsolete xdatum/xref as a orphan or errir one.\n  (e.g when inode deletion, or detecting crc error)\n\n[1/3] jffs2-xattr-v6-01-delete_marker.patch\n\nSigned-off-by: KaiGai Kohei \u003ckaigai@ak.jp.nec.com\u003e\nSigned-off-by: David Woodhouse \u003cdwmw2@infradead.org\u003e\n"
    },
    {
      "commit": "2c06a0821711a53d51a3d0492a9be0671b7152e5",
      "tree": "1ea68bac6653f454c712046976ec5d552a8bff1c",
      "parents": [
        "62ed948cb1405fe95d61d8c6445c102e0c9da0a6"
      ],
      "author": {
        "name": "Ben Dooks",
        "email": "ben-mtd@fluff.org",
        "time": "Tue Jun 27 14:35:46 2006 +0100"
      },
      "committer": {
        "name": "David Woodhouse",
        "email": "dwmw2@infradead.org",
        "time": "Tue Jun 27 14:35:46 2006 +0100"
      },
      "message": "[MTD NAND] s3c2412 support in s3c2410.c\n\nAdd support for both the S3C2412 and S3C2412 Samsung SoCs to\nthe increasingly mis-named s3c2410.c driver.\n\nThis currently only supports SLC ECCs, and a chip on nFCE0.\n\nSigned-off-by: Ben Dooks \u003cben-linux@fluff.org\u003e\nSigned-off-by: David Woodhouse \u003cdwmw2@infradead.org\u003e\n"
    },
    {
      "commit": "99eb44fe941b35b28914881774515005fa2ab7f6",
      "tree": "d76716309716fcb5be999a956d546349d02b866f",
      "parents": [
        "4d6b5aee9d19d1a982d9db0b5ffea20ee94816c6"
      ],
      "author": {
        "name": "Hans Verkuil",
        "email": "hverkuil@xs4all.nl",
        "time": "Mon Jun 26 18:24:05 2006 -0300"
      },
      "committer": {
        "name": "Mauro Carvalho Chehab",
        "email": "mchehab@infradead.org",
        "time": "Tue Jun 27 00:17:40 2006 -0300"
      },
      "message": "V4L/DVB (4259): Pass an explicit log prefix to cx2341x_log_status\n\nA card number is not unique enough. Instead, let the caller specify the\nprefix of the status messages.\n\nSigned-off-by: Hans Verkuil \u003chverkuil@xs4all.nl\u003e\nSigned-off-by: Mauro Carvalho Chehab \u003cmchehab@infradead.org\u003e\n"
    },
    {
      "commit": "4d6b5aee9d19d1a982d9db0b5ffea20ee94816c6",
      "tree": "c466ecf92c86b32eb982bddbe1b88f324f76a11d",
      "parents": [
        "f5b0142ad683a96d7c8d64cbdb95f255da8fd151"
      ],
      "author": {
        "name": "Hans Verkuil",
        "email": "hverkuil@xs4all.nl",
        "time": "Mon Jun 26 09:31:18 2006 -0300"
      },
      "committer": {
        "name": "Mauro Carvalho Chehab",
        "email": "mchehab@infradead.org",
        "time": "Tue Jun 27 00:17:39 2006 -0300"
      },
      "message": "V4L/DVB (4257): Fix 64-bit compile warnings.\n\nSigned-off-by: Hans Verkuil \u003chverkuil@xs4all.nl\u003e\nSigned-off-by: Mauro Carvalho Chehab \u003cmchehab@infradead.org\u003e\n"
    },
    {
      "commit": "353dcf7c89519a2cb9b7699f3bcf70bb685f22e1",
      "tree": "4b8623b202a34a80a06e01522029332a00da5f3b",
      "parents": [
        "a8601e5f6b77aa4f223058a93bc5f77e1ee45638"
      ],
      "author": {
        "name": "Randy Dunlap",
        "email": "randy.dunlap@oracle.com",
        "time": "Sun Jun 25 01:36:55 2006 -0700"
      },
      "committer": {
        "name": "Jeff Garzik",
        "email": "jeff@garzik.org",
        "time": "Mon Jun 26 20:59:28 2006 -0400"
      },
      "message": "[PATCH] ata: add some NVIDIA chipset IDs\n\nFrom: Randy Dunlap \u003crandy.dunlap@oracle.com\u003e\n\nAdd some nVidia chipset ID\u0027s support.\n\nhttp://www.kernel.org/git/?p\u003dlinux/kernel/git/bcollins/ubuntu-dapper.git;a\u003dcommitdiff;h\u003db407680553280f9999a20706d5ab2a3be65312c1;hp\u003dce4cb48010ab2cca537432b5ccb47d4b1fb489e5\n\nSnagged from lkml.\n\nCc: Jeff Garzik \u003cjeff@garzik.org\u003e\nCc: Alan Cox \u003calan@lxorguk.ukuu.org.uk\u003e\nCc: Tejun Heo \u003chtejun@gmail.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Jeff Garzik \u003cjeff@garzik.org\u003e\n"
    },
    {
      "commit": "5806db22cffc7557b675d3c9229f327980aee797",
      "tree": "e3ad9b2b89ad0525a29ba2e94eb4002ee30035ef",
      "parents": [
        "77b08fb56a41e84b5e78b14f24d79879235e3337"
      ],
      "author": {
        "name": "Tejun Heo",
        "email": "htejun@gmail.com",
        "time": "Sat Jun 24 20:30:19 2006 +0900"
      },
      "committer": {
        "name": "Jeff Garzik",
        "email": "jeff@garzik.org",
        "time": "Mon Jun 26 20:59:27 2006 -0400"
      },
      "message": "[PATCH] libata: implement ata_port_max_devices()\n\nImplement ata_port_max_devices().  This function returns the number of\npossible devices on a port.  This will be used by new PM\nimplementation.\n\nSigned-off-by: Tejun Heo \u003chtejun@gmail.com\u003e\nSigned-off-by: Jeff Garzik \u003cjeff@garzik.org\u003e\n"
    },
    {
      "commit": "41542dbe12e34165e586de1e3fe0a245707aa39e",
      "tree": "4084584a2d417b898c944c053b4ae9a911b8c6c3",
      "parents": [
        "438bc9c3dec27ab37f0ff78471d0b8b91addd2dd"
      ],
      "author": {
        "name": "Andrew Morton",
        "email": "akpm@osdl.org",
        "time": "Fri Jun 23 04:18:31 2006 -0700"
      },
      "committer": {
        "name": "Jeff Garzik",
        "email": "jeff@garzik.org",
        "time": "Mon Jun 26 20:59:27 2006 -0400"
      },
      "message": "[PATCH] libata.h needs scatterlist.h\n\nFrom: Andrew Morton \u003cakpm@osdl.org\u003e\n\ns390:\n\nIn file included from drivers/scsi/libata-bmdma.c:39:                           include/linux/libata.h:391: error: field \u0027sgent\u0027 has incomplete type\ninclude/linux/libata.h:392: error: field \u0027pad_sgent\u0027 has incomplete type\ninclude/linux/libata.h: In function \u0027ata_sg_is_last\u0027:                           include/linux/libata.h:849: error: arithmetic on pointer to an incomplete type\ninclude/linux/libata.h:849: error: arithmetic on pointer to an incomplete type\ninclude/linux/libata.h: In function \u0027ata_qc_next_sg\u0027:\ninclude/linux/libata.h:869: error: increment of pointer to unknown structure\ninclude/linux/libata.h:869: error: arithmetic on pointer to an incomplete type\ninclude/linux/libata.h:869: error: arithmetic on pointer to an incomplete type\ninclude/linux/libata.h:869: error: arithmetic on pointer to an incomplete type\n\nCc: Jeff Garzik \u003cjeff@garzik.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Jeff Garzik \u003cjeff@garzik.org\u003e\n"
    },
    {
      "commit": "438bc9c3dec27ab37f0ff78471d0b8b91addd2dd",
      "tree": "b0fdf3fe89cf884c8c28de20fe3977f01571a109",
      "parents": [
        "8676ce07d38a09e0f41497d178357a314c4620cf"
      ],
      "author": {
        "name": "Jeff Garzik",
        "email": "jeff@garzik.org",
        "time": "Mon Jun 26 20:52:17 2006 -0400"
      },
      "committer": {
        "name": "Jeff Garzik",
        "email": "jeff@garzik.org",
        "time": "Mon Jun 26 20:52:17 2006 -0400"
      },
      "message": "[libata] sata_vsc: partially revert a PCI ID-related commit\n\nPartially revert 74d0a988d3aa359b6b8a8536c8cb92cce02ca5d5:\n\n\t[PATCH] PCI: Move various PCI IDs to header file\n\nlibata policy is to avoid use of named PCI device ID constants.\nThese are often single-use constants, which have little value over\ndirect numeric constants save for constant include/linux/pci_ids.h\npatching/merging headaches.\n\nSigned-off-by: Jeff Garzik \u003cjeff@garzik.org\u003e\n"
    },
    {
      "commit": "f6e6e883730aff2718610d3eba7608fcf73328ed",
      "tree": "ec595db5e2454ac5f505a2ce971e45d674f8d6b3",
      "parents": [
        "ba262e4a4d4c23b5e6c15dbb3a99696b562e8035",
        "f964c303fe33b0d2ee563349bc8bea4d57d7a265"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Mon Jun 26 15:01:05 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Mon Jun 26 15:01:05 2006 -0700"
      },
      "message": "Merge master.kernel.org:/home/rmk/linux-2.6-arm\n\n* master.kernel.org:/home/rmk/linux-2.6-arm:\n  [ARM] 3657/1: S3C24XX: Documentation update of Overview.txt\n  [ARM] Update mach-types\n  [ARM] 3656/1: S3C2412: Add S3C2412 and S3C2413 documenation\n  [ARM] 3654/1: add ajeco 1arm sbc support\n  [ARM] fix drivers/mfd/ucb1x00-core.c IRQ probing bug\n  [ARM] 3651/1: S3C24XX: Make arch list more detailed\n  [ARM] 3650/1: S3C2412: Update s3c2410_defconfig\n  [ARM] 3649/1: S3C24XX: Fix capitalisation of CPU on SMDK2440\n  [ARM] 3612/1: make pci bus optional for ixp4xx platform\n  [ARM] Remove MODE_(SVC|IRQ|FIQ|USR) and DEFAULT_FIQ\n  [ARM] Remove save_lr/restore_pc macros\n  [ARM] Remove partial non-v6 binutils compatibility\n  [ARM] Remove LOADREGS macro\n  [ARM] Remove RETINSTR macro\n"
    },
    {
      "commit": "da206c9e68cb93fcab43592d46276c02889c1250",
      "tree": "21264cc26fa0322d668b398808f10bd93558d25f",
      "parents": [
        "916d15445f4ad2a9018e5451760734f36083be77",
        "2e2d0dcc1bd7ca7c26ea5e29efb7f34bbd564f1c"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Mon Jun 26 13:33:14 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Mon Jun 26 13:33:14 2006 -0700"
      },
      "message": "Merge git://git.kernel.org/pub/scm/linux/kernel/git/bunk/trivial\n\n* git://git.kernel.org/pub/scm/linux/kernel/git/bunk/trivial:\n  typo fixes\n  Clean up \u0027inline is not at beginning\u0027 warnings for usb storage\n  Storage class should be first\n  i386: Trivial typo fixes\n  ixj: make ixj_set_tone_off() static\n  spelling fixes\n  fix paniced-\u003epanicked typos\n  Spelling fixes for Documentation/atomic_ops.txt\n  move acknowledgment for Mark Adler to CREDITS\n  remove the bouncing email address of David Campbell\n"
    },
    {
      "commit": "09c0dc68625c06f5b1e786aad0d5369b592179e6",
      "tree": "19fd06de08792a4c07ee8b61e5615ee35e8ccec0",
      "parents": [
        "2a2ed2db353d949c06b6ef8b6913f65b39111eab"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Mon Jun 26 11:55:42 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Mon Jun 26 11:55:42 2006 -0700"
      },
      "message": "Revert \"[PATCH] kthread: update loop.c to use kthread\"\n\nThis reverts commit c7b2eff059fcc2d1b7085ee3d84b79fd657a537b.\n\nHugh Dickins explains:\n\n \"It seems too little tested: \"losetup -d /dev/loop0\" fails with\n  EINVAL because nothing sets lo_thread; but even when you patch\n  loop_thread() to set lo-\u003elo_thread \u003d current, it can\u0027t survive\n  more than a few dozen iterations of the loop below (with a tmpfs\n  mounted on /tst):\n\n\tj\u003d0\n\tcp /dev/zero /tst\n\twhile :\n\tdo\n\t    let j\u003dj+1\n\t    echo \"Doing pass $j\"\n\t    losetup /dev/loop0 /tst/zero\n\t    mkfs -t ext2 -b 1024 /dev/loop0 \u003e/dev/null 2\u003e\u00261\n\t    mount -t ext2 /dev/loop0 /mnt\n\t    umount /mnt\n\t    losetup -d /dev/loop0\n\tdone\n\n  it collapses with failed ioctl then BUG_ON(!bio).\n\n  I think the original lo_done completion was more subtle and safe\n  than the kthread conversion has allowed for.\"\n\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "2a2ed2db353d949c06b6ef8b6913f65b39111eab",
      "tree": "d835c3dd101da91089c3bdf51c8632e84be37232",
      "parents": [
        "972d19e837833b93466c6f6a8ef2a7d653000aa3",
        "070b98bfda3d27269519067c1c67eaef695f3e0c"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Mon Jun 26 11:05:15 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Mon Jun 26 11:05:15 2006 -0700"
      },
      "message": "Merge git://git.kernel.org/pub/scm/linux/kernel/git/sam/kbuild\n\n* git://git.kernel.org/pub/scm/linux/kernel/git/sam/kbuild: (40 commits)\n  kbuild: trivial fixes in Makefile\n  kbuild: adding symbols in Kconfig and defconfig to TAGS\n  kbuild: replace abort() with exit(1)\n  kbuild: support for %.symtypes files\n  kbuild: fix silentoldconfig recursion\n  kbuild: add option for stripping modules while installing them\n  kbuild: kill some false positives from modpost\n  kbuild: export-symbol usage report generator\n  kbuild: fix make -rR breakage\n  kbuild: append -dirty for updated but uncommited changes\n  kbuild: append git revision for all untagged commits\n  kbuild: fix module.symvers parsing in modpost\n  kbuild: ignore make\u0027s built-in rules \u0026 variables\n  kbuild: bugfix with initramfs\n  kbuild: modpost build fix\n  kbuild: check license compatibility when building modules\n  kbuild: export-type enhancement to modpost.c\n  kbuild: add dependency on kernel.release to the package targets\n  kbuild: `make kernelrelease\u0027 speedup\n  kconfig: KCONFIG_OVERWRITECONFIG\n  ...\n"
    },
    {
      "commit": "972d19e837833b93466c6f6a8ef2a7d653000aa3",
      "tree": "069258492d5347cf440b8240dadfa20621f54842",
      "parents": [
        "cdf4f383a4b0ffbf458f65380ecffbeee1f79841",
        "b9d0a25a484a90c1d60b974d115eff2fe580ce16"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Mon Jun 26 11:03:29 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Mon Jun 26 11:03:29 2006 -0700"
      },
      "message": "Merge master.kernel.org:/pub/scm/linux/kernel/git/herbert/crypto-2.6\n\n* master.kernel.org:/pub/scm/linux/kernel/git/herbert/crypto-2.6:\n  [CRYPTO] tcrypt: Forbid tcrypt from being built-in\n  [CRYPTO] aes: Add wrappers for assembly routines\n  [CRYPTO] tcrypt: Speed benchmark support for digest algorithms\n  [CRYPTO] tcrypt: Return -EAGAIN from module_init()\n  [CRYPTO] api: Allow replacement when registering new algorithms\n  [CRYPTO] api: Removed const from cra_name/cra_driver_name\n  [CRYPTO] api: Added cra_init/cra_exit\n  [CRYPTO] api: Fixed incorrect passing of context instead of tfm\n  [CRYPTO] padlock: Rearrange context structure to reduce code size\n  [CRYPTO] all: Pass tfm instead of ctx to algorithms\n  [CRYPTO] digest: Remove unnecessary zeroing during init\n  [CRYPTO] aes-i586: Get rid of useless function wrappers\n  [CRYPTO] digest: Add alignment handling\n  [CRYPTO] khazad: Use 32-bit reads on key\n"
    },
    {
      "commit": "cdf4f383a4b0ffbf458f65380ecffbeee1f79841",
      "tree": "8093cb3dbeda8827ca8b782f29474af523439c55",
      "parents": [
        "954b36d48b495afed2880320750858a2eae312c9",
        "e2e8115b54aa6f159ac3dfec8d3d23b0af5fbfa0"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Mon Jun 26 11:01:58 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Mon Jun 26 11:01:58 2006 -0700"
      },
      "message": "Merge master.kernel.org:/pub/scm/linux/kernel/git/dtor/input\n\n* master.kernel.org:/pub/scm/linux/kernel/git/dtor/input:\n  Input: iforce - remove some pointless casts\n  Input: psmouse - add support for Intellimouse 4.0\n  Input: atkbd - fix HANGEUL/HANJA keys\n  Input: fix misspelling of Hangeul key\n  Input: via-pmu - add input device support\n  Input: rearrange exports\n  Input: fix formatting to better follow CodingStyle\n  Input: reset name, phys and uniq when unregistering\n  Input: return correct size when reading modalias attribute\n  Input: change my e-mail address in MAINTAINERS file\n  Input: fix potential overflows in driver/input/keyboard\n  Input: fix potential overflows in driver/input/touchscreen\n  Input: fix potential overflows in driver/input/joystick\n  Input: fix potential overflows in driver/input/mouse\n  Input: fix accuracy of fixp-arith.h\n  Input: iforce - use ENOSPC instead of ENOMEM\n  Input: constify drivers/char/keyboard.c\n"
    },
    {
      "commit": "954b36d48b495afed2880320750858a2eae312c9",
      "tree": "0c756f15e9a2941b99b03ecf1db518b89a1e7f78",
      "parents": [
        "12ddae3348def8808fb755b23225b18fc4adfbe3"
      ],
      "author": {
        "name": "Greg Ungerer",
        "email": "gerg@snapgear.com",
        "time": "Mon Jun 26 16:33:15 2006 +1000"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Mon Jun 26 10:59:44 2006 -0700"
      },
      "message": "[PATCH] m68knommu: use configurable RAM setup page_offset.h\n\nRemove board specific base RAM conditionals from page_offset.h\nWith the Kconfig time configurable RAM setup none of this is required.\nIt is all based on the Kconfig (CONFIG_RAMBASE) option now.\n\nSigned-off-by: Greg Ungerer \u003cgerg@uclinux.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "5f2f444136abdb13dbd2094555aa65fc252aef6c",
      "tree": "eb7ff532050c76319ba9d0c190a19f10a101e844",
      "parents": [
        "81a07d7588d376c530d006e24d7981304ce96e16",
        "33f40b3b023b9f00b40ecfb3a39286de13516b33"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Mon Jun 26 10:54:02 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Mon Jun 26 10:54:02 2006 -0700"
      },
      "message": "Merge master.kernel.org:/pub/scm/linux/kernel/git/mchehab/v4l-dvb\n\n* master.kernel.org:/pub/scm/linux/kernel/git/mchehab/v4l-dvb:\n  V4L/DVB (4227): Update this driver for recent header file movement.\n  V4L/DVB (4223): Add V4L2_CID_MPEG_STREAM_VBI_FMT control\n  V4L/DVB (4222): Always switch tuner mode when calling VIDIOC_S_FREQUENCY.\n  V4L/DVB (4221): Add HM12 YUV format define.\n  V4L/DVB (4219): Av7110: analog sound output of DVB-C rev 2.3\n  V4L/DVB (4217): Fix a misplaced closing bracket/else, which caused swzigzag not to be called\n  V4L/DVB (4215): Make VIDEO_CX88_BLACKBIRD a separate build option\n  V4L/DVB (4214): Make VIDEO_CX2341X a selectable build option\n  V4L/DVB (4213): Cx88: cleanups\n  V4L/DVB (4211): Fix an Oops for all fe that have get_frontend_algo \u003d\u003d NULL\n"
    },
    {
      "commit": "81a07d7588d376c530d006e24d7981304ce96e16",
      "tree": "1608e094c88b9702c86cf2e6f65339aab9ea3f3f",
      "parents": [
        "8871e73fdbde07d0a41393f7ee30787b65387b36",
        "8501a2fbe762b21d2504ed3aca3b52be61b5e6e4"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Mon Jun 26 10:51:09 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Mon Jun 26 10:51:09 2006 -0700"
      },
      "message": "Merge branch \u0027x86-64\u0027\n\n* x86-64: (83 commits)\n  [PATCH] x86_64: x86_64 stack usage debugging\n  [PATCH] x86_64: (resend) x86_64 stack overflow debugging\n  [PATCH] x86_64: msi_apic.c build fix\n  [PATCH] x86_64: i386/x86-64 Add nmi watchdog support for new Intel CPUs\n  [PATCH] x86_64: Avoid broadcasting NMI IPIs\n  [PATCH] x86_64: fix apic error on bootup\n  [PATCH] x86_64: enlarge window for stack growth\n  [PATCH] x86_64: Minor string functions optimizations\n  [PATCH] x86_64: Move export symbols to their C functions\n  [PATCH] x86_64: Standardize i386/x86_64 handling of NMI_VECTOR\n  [PATCH] x86_64: Fix modular pc speaker\n  [PATCH] x86_64: remove sys32_ni_syscall()\n  [PATCH] x86_64: Do not use -ffunction-sections for modules\n  [PATCH] x86_64: Add cpu_relax to apic_wait_icr_idle\n  [PATCH] x86_64: adjust kstack_depth_to_print default\n  [PATCH] i386/x86-64: adjust /proc/interrupts column headings\n  [PATCH] x86_64: Fix race in cpu_local_* on preemptible kernels\n  [PATCH] x86_64: Fix fast check in safe_smp_processor_id\n  [PATCH] x86_64: x86_64 setup.c - printing cmp related boottime information\n  [PATCH] i386/x86-64/ia64: Move polling flag into thread_info_status\n  ...\n\nManual resolve of trivial conflict in arch/i386/kernel/Makefile\n"
    },
    {
      "commit": "8501a2fbe762b21d2504ed3aca3b52be61b5e6e4",
      "tree": "899bf4085bb29927a71dd90b3ed1fb444ed4b0ea",
      "parents": [
        "4961f10e2205d0ededa291e12ec634efc58aa93c"
      ],
      "author": {
        "name": "Eric Sandeen",
        "email": "sandeen@sgi.com",
        "time": "Mon Jun 26 14:00:08 2006 +0200"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Mon Jun 26 10:48:22 2006 -0700"
      },
      "message": "[PATCH] x86_64: x86_64 stack usage debugging\n\nApplies to git \u0026 2.6.17-rc6 after CONFIG_DEBUG_STACKOVERFLOW patch\n\nuses same stack-zeroing mechanism as on i386 to discover maximum stack\nexcursions.\n\nSigned-off-by: Eric Sandeen \u003csandeen@sgi.com\u003e\nSigned-off-by: Andi Kleen \u003cak@suse.de\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "0080e667550db5ae8c9318181500c413b99ff164",
      "tree": "3d6d162f0017aaa7c6049e785bbcdfc18dbc23ae",
      "parents": [
        "e77deacb7b078156fcadf27b838a4ce1a65eda04"
      ],
      "author": {
        "name": "Venkatesh Pallipadi",
        "email": "venkatesh.pallipadi@intel.com",
        "time": "Mon Jun 26 13:59:59 2006 +0200"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Mon Jun 26 10:48:22 2006 -0700"
      },
      "message": "[PATCH] x86_64: i386/x86-64 Add nmi watchdog support for new Intel CPUs\n\nIntel now has support for Architectural Performance Monitoring Counters\n( Refer to IA-32 Intel Architecture Software Developer\u0027s Manual\nhttp://www.intel.com/design/pentium4/manuals/253669.htm ). This\nfeature is present starting from Intel Core Duo and Intel Core Solo processors.\n\nWhat this means is, the performance monitoring counters and some performance\nmonitoring events are now defined in an architectural way (using cpuid).\nAnd there will be no need to check for family/model etc for these architectural\nevents.\n\nBelow is the patch to use this performance counters in nmi watchdog driver.\nPatch handles both i386 and x86-64 kernels.\n\nSigned-off-by: Venkatesh Pallipadi \u003cvenkatesh.pallipadi@intel.com\u003e\nSigned-off-by: Andi Kleen \u003cak@suse.de\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "e77deacb7b078156fcadf27b838a4ce1a65eda04",
      "tree": "e594ce9a9f65c45e19cfb3b8417c614dd2eb5386",
      "parents": [
        "704fc59e1d056de80beaf30174bc8e0b1682efbb"
      ],
      "author": {
        "name": "Keith Owens",
        "email": "kaos@sgi.com",
        "time": "Mon Jun 26 13:59:56 2006 +0200"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Mon Jun 26 10:48:22 2006 -0700"
      },
      "message": "[PATCH] x86_64: Avoid broadcasting NMI IPIs\n\nOn some i386/x86_64 systems, sending an NMI IPI as a broadcast will\nreset the system.  This seems to be a BIOS bug which affects machines\nwhere one or more cpus are not under OS control.  It occurs on HT\nsystems with a version of the OS that is not compiled without HT\nsupport.  It also occurs when a system is booted with max_cpus\u003dn where\n2 \u003c\u003d n \u003c cpus known to the BIOS.  The fix is to always send NMI IPI as\na mask instead of as a broadcast.\n\nSigned-off-by: Keith Owens \u003ckaos@sgi.com\u003e\nSigned-off-by: Andi Kleen \u003cak@suse.de\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "45486f81c9aa07218b73a38cbcf62ffa66e99088",
      "tree": "8fc03b93b941c6ba3131bb016fe126f2f95e3c86",
      "parents": [
        "9c63f8738734eb7e6d3f76ca03186f16ef88edf5"
      ],
      "author": {
        "name": "Keith Owens",
        "email": "kaos@sgi.com",
        "time": "Mon Jun 26 13:59:41 2006 +0200"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Mon Jun 26 10:48:22 2006 -0700"
      },
      "message": "[PATCH] x86_64: Standardize i386/x86_64 handling of NMI_VECTOR\n\nx86_64 and i386 behave inconsistently when sending an IPI on vector 2\n(NMI_VECTOR).  Make both behave the same, so IPI 2 is sent as NMI.\n\nThe crash code was abusing send_IPI_allbutself() by passing a code\ninstead of a vector, it only worked because crash knew about the\ninternal code of send_IPI_allbutself().  Change crash to use NMI_VECTOR\ninstead, and remove the comment about how crash was abusing the function.\n\nThis patch is a pre-requisite for fixing the problem where sending an\nIPI as NMI would reboot some Dell Xeon systems.  I cannot fix that\nproblem while crash continus to abuse send_IPI_allbutself().\n\nIt also removes the inconsistency between i386 and x86_64 for\nNMI_VECTOR.  That will simplify all the RAS code that needs to bring\nall the cpus to a clean stop, even when one or more cpus are spinning\ndisabled.\n\nSigned-off-by: Keith Owens \u003ckaos@sgi.com\u003e\nSigned-off-by: Andi Kleen \u003cak@suse.de\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "899ced0dd9457b9c349663ca4cb4ec09167728a6",
      "tree": "9b23a1d8fa804b28dba69df494bc8dc16d772738",
      "parents": [
        "cab093b9d4b40c71c6261a11ba8f1ca027e09008"
      ],
      "author": {
        "name": "Andreas Mohr",
        "email": "andi@rhlx01.fht-esslingen.de",
        "time": "Mon Jun 26 13:59:29 2006 +0200"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Mon Jun 26 10:48:21 2006 -0700"
      },
      "message": "[PATCH] x86_64: Add cpu_relax to apic_wait_icr_idle\n\nThis one is adding a cpu_relax() that already existed in the i386 version.\n\nSigned-off-by: Andreas Mohr \u003candi@lisas.de\u003e\nSigned-off-by: Andi Kleen \u003cak@suse.de\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "da5311258d2afb96fc592c8b11e818facfa46dc3",
      "tree": "cdd51f187028cb2cd3da716cb7c1b3df88902ed6",
      "parents": [
        "75bd665cc9f4d0f67164d9145e446ae554d4ed3f"
      ],
      "author": {
        "name": "Andi Kleen",
        "email": "ak@suse.de",
        "time": "Mon Jun 26 13:59:20 2006 +0200"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Mon Jun 26 10:48:21 2006 -0700"
      },
      "message": "[PATCH] x86_64: Fix race in cpu_local_* on preemptible kernels\n\nWhen a process changes CPUs while doing the non atomic cpu_local_*\noperations it might operate on the local_t of a different CPUs.\n\nFix that by disabling preemption.\n\nPointed out by Christopher Lameter\n\nSigned-off-by: Andi Kleen \u003cak@suse.de\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "495ab9c045e1b0e5c82951b762257fe1c9d81564",
      "tree": "f95c376015d340794f64f36fd52f8fa80a1daab7",
      "parents": [
        "d9005b52de7bc9b20afa93e06d3e15843bafc12f"
      ],
      "author": {
        "name": "Andi Kleen",
        "email": "ak@suse.de",
        "time": "Mon Jun 26 13:59:11 2006 +0200"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Mon Jun 26 10:48:21 2006 -0700"
      },
      "message": "[PATCH] i386/x86-64/ia64: Move polling flag into thread_info_status\n\nDuring some profiling I noticed that default_idle causes a lot of\nmemory traffic. I think that is caused by the atomic operations\nto clear/set the polling flag in thread_info. There is actually\nno reason to make this atomic - only the idle thread does it\nto itself, other CPUs only read it. So I moved it into ti-\u003estatus.\n\nConverted i386/x86-64/ia64 for now because that was the easiest\nway to fix ACPI which also manipulates these flags in its idle\nfunction.\n\nCc: Nick Piggin \u003cnpiggin@novell.com\u003e\nCc: Tony Luck \u003ctony.luck@intel.com\u003e\nCc: Len Brown \u003clen.brown@intel.com\u003e\nSigned-off-by: Andi Kleen \u003cak@suse.de\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "95268664390b19962ed41a3506c5bc8149db71e8",
      "tree": "5085fd67ead36a1d278ebdad428d7c1c5dafcecc",
      "parents": [
        "fff2e89f11dd9b9b45e9212bc543154ca3d028a1"
      ],
      "author": {
        "name": "Jacob Shin",
        "email": "jacob.w.shin@gmail.com",
        "time": "Mon Jun 26 13:58:53 2006 +0200"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Mon Jun 26 10:48:20 2006 -0700"
      },
      "message": "[PATCH] x86_64: mce_amd support for family 0x10 processors\n\nAdd support for mce threshold registers found in future\nAMD family 0x10 processors.  Backwards compatible with\nfamily 0xF hardware.\n\nAK: fixed build on !SMP\n\nSigned-off-by: Jacob Shin \u003cjacob.shin@amd.com\u003e\nSigned-off-by: Andi Kleen \u003cak@suse.de\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "fff2e89f11dd9b9b45e9212bc543154ca3d028a1",
      "tree": "fa25f3e41cf642f23c187a2fb13c0595eba825bc",
      "parents": [
        "17fc14ff1bdbc393e1cf4f6fd1e1e53d72ab9fe5"
      ],
      "author": {
        "name": "Jacob Shin",
        "email": "jacob.w.shin@gmail.com",
        "time": "Mon Jun 26 13:58:50 2006 +0200"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Mon Jun 26 10:48:20 2006 -0700"
      },
      "message": "[PATCH] x86_64: mce_amd relocate sysfs files\n\nGet rid of /sys/devices/system/threshold directory and move\nmce_amd thresholding files into the machine sysfs directory --\n/sys/devices/system/machinecheck.\n\nAK: Fixed warning\n\nSigned-off-by: Jacob Shin \u003cjacob.shin@amd.com\u003e\nSigned-off-by: Andi Kleen \u003cak@suse.de\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "17fc14ff1bdbc393e1cf4f6fd1e1e53d72ab9fe5",
      "tree": "9992a9079f4792f423f1e421d93814509b2c7d88",
      "parents": [
        "c38bfdc85aae0c6d1458269c0e063c2f4a116711"
      ],
      "author": {
        "name": "Jacob Shin",
        "email": "jacob.w.shin@gmail.com",
        "time": "Mon Jun 26 13:58:47 2006 +0200"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Mon Jun 26 10:48:20 2006 -0700"
      },
      "message": "[PATCH] x86_64: apic support for extended apic interrupt\n\nAdd support for extended APIC LVT found in future AMD processors.\n\nSigned-off-by: Jacob Shin \u003cjacob.shin@amd.com\u003e\nSigned-off-by: Andi Kleen \u003cak@suse.de\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "7b0e85012581a9a8b12a8191d365716bf3ca3d3c",
      "tree": "a8e8b5f20e910334d259f4ef8863b6a8273b3b6a",
      "parents": [
        "f8bf3c65a962530821fa9a9b4bad43d8c7e13574"
      ],
      "author": {
        "name": "Vojtech Pavlik",
        "email": "vojtech@suse.cz",
        "time": "Mon Jun 26 13:58:26 2006 +0200"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Mon Jun 26 10:48:19 2006 -0700"
      },
      "message": "[PATCH] x86_64: Add X86_FEATURE_RDTSCP, fix rdtscp in /proc/cpuinfo\n\nThis patch adds the X86_FEATURE_RDTSCP #define, so that kernel code can\ncheck for the feature easily and also fixes the location of the \"rdtscp\"\nstring in the cpuinfo tables.\n\nSigned-off-by: Vojtech Pavlik \u003cvojtech@suse.cz\u003e\nSigned-off-by: Andi Kleen \u003cak@suse.de\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "f8bf3c65a962530821fa9a9b4bad43d8c7e13574",
      "tree": "b52d7fa60f52e877abced7470e705a6a544701b9",
      "parents": [
        "05ebb76109f302b949e745724bbf0f0634dba43f"
      ],
      "author": {
        "name": "Vojtech Pavlik",
        "email": "vojtech@suse.cz",
        "time": "Mon Jun 26 13:58:23 2006 +0200"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Mon Jun 26 10:48:19 2006 -0700"
      },
      "message": "[PATCH] x86_64: Rename oem_force_hpet_timer to apic_is_clustered_box\n\nRename oem_force_hpet_timer to apic_is_clustered_box, to give the\nfunction a better fitting name - it really isn\u0027t at all about HPET.\n\nSigned-off-by: Vojtech Pavlik \u003cvojtech@suse.cz\u003e\nSigned-off-by: Andi Kleen \u003cak@suse.de\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "05ebb76109f302b949e745724bbf0f0634dba43f",
      "tree": "350fa24df135197d53fef2e7d969b1bab7f97859",
      "parents": [
        "f3fa8ebc25129bb69929e20b0c84049c39029d8d"
      ],
      "author": {
        "name": "Vojtech Pavlik",
        "email": "vojtech@suse.cz",
        "time": "Mon Jun 26 13:58:20 2006 +0200"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Mon Jun 26 10:48:19 2006 -0700"
      },
      "message": "[PATCH] x86_64: Add useful constants to time.h\n\nIn timekeeping code, one often does need to use conversion constants. Naming\nthese leads to code that\u0027s easier to understand, showing the reader between\nwhich units the conversion is made.\n\nSigned-off-by: Vojtech Pavlik \u003cvojtech@suse.cz\u003e\nSigned-off-by: Andi Kleen \u003cak@suse.de\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "f3fa8ebc25129bb69929e20b0c84049c39029d8d",
      "tree": "56b0df80a38128ca91a2e613d30c594e2e54f7c7",
      "parents": [
        "e465058d55a88feb4c7ecabe63eea7ea7147e206"
      ],
      "author": {
        "name": "Rohit Seth",
        "email": "rohitseth@google.com",
        "time": "Mon Jun 26 13:58:17 2006 +0200"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Mon Jun 26 10:48:19 2006 -0700"
      },
      "message": "[PATCH] x86_64: moving phys_proc_id and cpu_core_id to cpuinfo_x86\n\nMost of the fields of cpuinfo are defined in cpuinfo_x86 structure.\nThis patch moves the phys_proc_id and cpu_core_id for each processor to\ncpuinfo_x86 structure as well.\n\nSigned-off-by: Rohit Seth \u003crohitseth@google.com\u003e\nSigned-off-by: Andi Kleen \u003cak@suse.de\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "e465058d55a88feb4c7ecabe63eea7ea7147e206",
      "tree": "d431ed689e072415915694eecdfbcb9304287f01",
      "parents": [
        "0dc243ae10c8309c170a3af9f1adad1924a9f217"
      ],
      "author": {
        "name": "Jon Mason",
        "email": "jdmason@us.ibm.com",
        "time": "Mon Jun 26 13:58:14 2006 +0200"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Mon Jun 26 10:48:19 2006 -0700"
      },
      "message": "[PATCH] x86_64: Calgary IOMMU - Calgary specific bits\n\nThis patch hooks Calgary into the build, the x86-64 IOMMU\ninitialization paths, and introduces the Calgary specific bits.  The\nimplementation draws inspiration from both PPC (which has support for\nthe same chip but requires firmware support which we don\u0027t have on\nx86-64) and gart. Calgary is different from gart in that it support a\ntranslation table per PHB, as opposed to the single gart aperture.\n\nChanges from previous version:\n * Addition of boot-time disablement for bus-level translation/isolation\n   (e.g, enable userspace DMA for things like X)\n * Usage of newer IOMMU abstraction functions\n\nSigned-off-by: Muli Ben-Yehuda \u003cmuli@il.ibm.com\u003e\nSigned-off-by: Jon Mason \u003cjdmason@us.ibm.com\u003e\nSigned-off-by: Andi Kleen \u003cak@suse.de\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "0dc243ae10c8309c170a3af9f1adad1924a9f217",
      "tree": "f550a8097913728ce96322d5f799329489db85a1",
      "parents": [
        "a3c042a0f022dade8e02bf6c9be5d2379d7e133c"
      ],
      "author": {
        "name": "Jon Mason",
        "email": "jdmason@us.ibm.com",
        "time": "Mon Jun 26 13:58:11 2006 +0200"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Mon Jun 26 10:48:18 2006 -0700"
      },
      "message": "[PATCH] x86_64: Calgary IOMMU - IOMMU abstractions\n\nThis patch creates a new interface for IOMMUs by adding a centralized\nlocation for IOMMU allocation (for translation tables/apertures) and\nIOMMU initialization.  In creating these, code was moved around for\nabstraction, uniformity, and consiceness.\n\nTake note of the move of the iommu_setup bootarg parsing code to\n__setup.  This is enabled by moving back the location of the aperture\nallocation/detection to mem init (which while ugly, was already the\nlocation of the swiotlb_init).\n\nWhile a slight departure from the previous patch, I belive this provides\nthe true intention of the previous versions of the patch which changed\nthis code.  It also makes the addition of the upcoming calgary code much\ncleaner than previous patches.\n\n[AK: Removed one broken change. iommu_setup still has to be called\nearly]\n\nSigned-off-by: Muli Ben-Yehuda \u003cmuli@il.ibm.com\u003e\nSigned-off-by: Jon Mason \u003cjdmason@us.ibm.com\u003e\nSigned-off-by: Andi Kleen \u003cak@suse.de\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "a3c042a0f022dade8e02bf6c9be5d2379d7e133c",
      "tree": "0f690d13444c7c77c90da64ea9fb2373a21f7a4f",
      "parents": [
        "8d4f6b93a4aaa6b56b600cd1165c971f4395e4b3"
      ],
      "author": {
        "name": "Jon Mason",
        "email": "jdmason@us.ibm.com",
        "time": "Mon Jun 26 13:58:08 2006 +0200"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Mon Jun 26 10:48:18 2006 -0700"
      },
      "message": "[PATCH] x86_64: Calgary IOMMU - move valid_dma_direction into the callers\n\nBased on Andi Kleen\u0027s comments on the original Calgary patch, move\nvalid_dma_direction into the calling functions.\n\nSigned-off-by: Muli Ben-Yehuda \u003cmuli@il.ibm.com\u003e\nSigned-off-by: Jon Mason \u003cjdmason@us.ibm.com\u003e\nSigned-off-by: Andi Kleen \u003cak@suse.de\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "8d4f6b93a4aaa6b56b600cd1165c971f4395e4b3",
      "tree": "23955634ded577e53c46390714a6f069b4587c86",
      "parents": [
        "2bbc419f9d51b44f3fdeea12c5b786bdace82b8e"
      ],
      "author": {
        "name": "Jon Mason",
        "email": "jdmason@us.ibm.com",
        "time": "Mon Jun 26 13:58:05 2006 +0200"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Mon Jun 26 10:48:18 2006 -0700"
      },
      "message": "[PATCH] x86_64: Calgary IOMMU - introduce iommu_detected\n\nswiotlb relies on the gart specific iommu_aperture variable to know if\nwe discovered a hardware IOMMU before swiotlb initialization.  Introduce\niommu_detected to do the same thing, but in a HW IOMMU neutral manner,\nin preparation for adding the Calgary HW IOMMU.\n\nSigned-Off-By: Muli Ben-Yehuda \u003cmuli@il.ibm.com\u003e\nSigned-Off-By: Jon Mason \u003cjdmason@us.ibm.com\u003e\nSigned-off-by: Andi Kleen \u003cak@suse.de\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "d2ae5b5f6afd3c4caaf82444102a4372135cb994",
      "tree": "4011a28241f4528f4d922cbe718797120b31036c",
      "parents": [
        "b79c4df714ff190f7149d3d5a86278bdc25a90ec"
      ],
      "author": {
        "name": "Andi Kleen",
        "email": "ak@suse.de",
        "time": "Mon Jun 26 13:57:56 2006 +0200"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Mon Jun 26 10:48:18 2006 -0700"
      },
      "message": "[PATCH] x86_64: Get rid of pud_offset_k / __pud_offset_k\n\npud_offset_k() equivalent to pud_offset() now.  Pointed out by Jan Beulich\nSimilar for __pud_offset_ok, which needs a small change in the callers.\n\nSigned-off-by: Andi Kleen \u003cak@suse.de\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "83f4fcce7fdd213bd570b899862c3838871f8cf7",
      "tree": "ba66890ee98386e33b5d642af76291fabf8d0d29",
      "parents": [
        "c33bd9aac0597eeedaaa01ea5aafe456894b2f2b"
      ],
      "author": {
        "name": "Jan Beulich",
        "email": "jbeulich@novell.com",
        "time": "Mon Jun 26 13:57:50 2006 +0200"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Mon Jun 26 10:48:18 2006 -0700"
      },
      "message": "[PATCH] x86_64: allow unwinder to build without module support\n\nAdd proper conditionals to be able to build with CONFIG_MODULES\u003dn.\n\nSigned-off-by: Jan Beulich \u003cjbeulich@novell.com\u003e\nSigned-off-by: Andi Kleen \u003cak@suse.de\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "c33bd9aac0597eeedaaa01ea5aafe456894b2f2b",
      "tree": "cdac9bb99eb3943feccc2a21d09a1524a8867cb0",
      "parents": [
        "fe7cacc1c25e286872b878c5d46880b620cd1e2d"
      ],
      "author": {
        "name": "Jan Beulich",
        "email": "jbeulich@novell.com",
        "time": "Mon Jun 26 13:57:47 2006 +0200"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Mon Jun 26 10:48:18 2006 -0700"
      },
      "message": "[PATCH] i386/x86-64: fall back to old-style call trace if no unwinding\n\nIf no unwinding is possible at all for a certain exception instance,\nfall back to the old style call trace instead of not showing any trace\nat all.\n\nAlso, allow setting the stack trace mode at the command line.\n\nSigned-off-by: Jan Beulich \u003cjbeulich@novell.com\u003e\nSigned-off-by: Andi Kleen \u003cak@suse.de\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "fe7cacc1c25e286872b878c5d46880b620cd1e2d",
      "tree": "36b0e47e15eb00c7ee4240cb28572952f4d39348",
      "parents": [
        "176a2718f408ce92788b29127050b04dfd6e4f68"
      ],
      "author": {
        "name": "Jan Beulich",
        "email": "jbeulich@novell.com",
        "time": "Mon Jun 26 13:57:44 2006 +0200"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Mon Jun 26 10:48:17 2006 -0700"
      },
      "message": "[PATCH] i386: reliable stack trace support i386 entry.S\n\nTo increase the usefulness of reliable stack unwinding, this adds CFI\nunwind annotations to many low-level i386 routines.\n\nSigned-off-by: Jan Beulich \u003cjbeulich@novell.com\u003e\nSigned-off-by: Andi Kleen \u003cak@suse.de\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "176a2718f408ce92788b29127050b04dfd6e4f68",
      "tree": "bb637b13098f821551d07d3a13d140a908e7bc04",
      "parents": [
        "dffead4e421e289c8434351400d24fd35723e874"
      ],
      "author": {
        "name": "Jan Beulich",
        "email": "jbeulich@novell.com",
        "time": "Mon Jun 26 13:57:41 2006 +0200"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Mon Jun 26 10:48:17 2006 -0700"
      },
      "message": "[PATCH] i386: reliable stack trace support (i386)\n\nThese are the i386-specific pieces to enable reliable stack traces. This is\ngoing to be even more useful once CFI annotations get added to he assembly\ncode, namely to entry.S.\n\nSigned-off-by: Jan Beulich \u003cjbeulich@novell.com\u003e\nSigned-off-by: Andi Kleen \u003cak@suse.de\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "b538ed278b80641ee6d7b75497d5e14de1bb1137",
      "tree": "fe508a2f950ec08c832474a253f41b188ceece75",
      "parents": [
        "4552d5dc08b79868829b4be8951b29b07284753f"
      ],
      "author": {
        "name": "Jan Beulich",
        "email": "jbeulich@novell.com",
        "time": "Mon Jun 26 13:57:32 2006 +0200"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Mon Jun 26 10:48:17 2006 -0700"
      },
      "message": "[PATCH] x86_64: reliable stack trace support (x86-64)\n\nThese are the x86_64-specific pieces to enable reliable stack traces. The\nonly restriction with this is that it currently cannot unwind across the\ninterrupt-\u003enormal stack boundary, as that transition is lacking proper\nannotation.\n\nSigned-off-by: Jan Beulich \u003cjbeulich@novell.com\u003e\nSigned-off-by: Andi Kleen \u003cak@suse.de\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "4552d5dc08b79868829b4be8951b29b07284753f",
      "tree": "7b25695b4c0e1917fc80e8dd4bc494de36320ccc",
      "parents": [
        "2b28592b07223d7fc0691ce3fe57d495dc9cbe3a"
      ],
      "author": {
        "name": "Jan Beulich",
        "email": "jbeulich@novell.com",
        "time": "Mon Jun 26 13:57:28 2006 +0200"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Mon Jun 26 10:48:17 2006 -0700"
      },
      "message": "[PATCH] x86_64: reliable stack trace support\n\nThese are the generic bits needed to enable reliable stack traces based\non Dwarf2-like (.eh_frame) unwind information. Subsequent patches will\nenable x86-64 and i386 to make use of this.\n\nThanks to Andi Kleen and Ingo Molnar, who pointed out several possibilities\nfor improvement.\n\nSigned-off-by: Jan Beulich \u003cjbeulich@novell.com\u003e\nSigned-off-by: Andi Kleen \u003cak@suse.de\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "a813ce432f27c4f5011c7b5ac9d2bbbfeb41d9a7",
      "tree": "377a1aeb76547faf06ecd93b9da9b4c90817b2d4",
      "parents": [
        "4d9bc79cd28b779610d9590b3a96a28a0f64a25a"
      ],
      "author": {
        "name": "Andi Kleen",
        "email": "ak@suse.de",
        "time": "Mon Jun 26 13:57:22 2006 +0200"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Mon Jun 26 10:48:17 2006 -0700"
      },
      "message": "[PATCH] x86_64: Rename IOMMU option, fix help and mark option embedded.\n\n - Rename the GART_IOMMU option to IOMMU to make clear it\u0027s not\n   just for AMD\n - Rewrite the help text to better emphatise this fact\n - Make it an embedded option because too many people get it wrong.\n\nTo my astonishment I discovered the aacraid driver tests this\nsymbol directly. This looks quite broken to me - it\u0027s an internal\nimplementation detail of the PCI DMA API. Can the maintainer\nplease clarify what this test was intended to do?\n\nCc: linux-scsi@vger.kernel.org\nCc: alan@redhat.com\nCc: markh@osdl.org\nSigned-off-by: Andi Kleen \u003cak@suse.de\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "357c2b9056df447390b7df3e49960a4c609a89a9",
      "tree": "b4eeb5ee6dd59a32482f4498c676bac280455cb3",
      "parents": [
        "08cd36570e47176c7b6bd3e80125aa46c4638097"
      ],
      "author": {
        "name": "Jon Mason",
        "email": "jdmason@us.ibm.com",
        "time": "Mon Jun 26 13:57:13 2006 +0200"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Mon Jun 26 10:48:16 2006 -0700"
      },
      "message": "[PATCH] x86_64: remove unused gart header file\n\ninclude/asm-x86_64/gart-mapping.h is only ever used in\narch/x86_64/kernel/setup.c and none of its contents are referenced.\nLooks to be leftover cruft not removed in the dma_ops patch.\n\nSigned-off-by: Jon Mason \u003cjdmason@us.ibm.com\u003e\nSigned-off-by: Andi Kleen \u003cak@suse.de\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "08cd36570e47176c7b6bd3e80125aa46c4638097",
      "tree": "02c9cb3be4a2b520772e9b66bb57901401dd2666",
      "parents": [
        "5282aab87a8be3f5e6c36a4c2ee4b71852def1bb"
      ],
      "author": {
        "name": "Andi Kleen",
        "email": "ak@suse.de",
        "time": "Mon Jun 26 13:57:10 2006 +0200"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Mon Jun 26 10:48:16 2006 -0700"
      },
      "message": "[PATCH] x86_64: Optimize bitmap_weight for small bitmaps\n\nUse inline code bitmaps \u003c\u003d BITS_PER_LONG in bitmap_weight. This\ngives _much_ better code.\n\nSigned-off-by: Andi Kleen \u003cak@suse.de\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "5c0f80fab3724aa44b3352d88155fe0eaae0e54a",
      "tree": "da598a78562b711dadee8feaaeacee08a4a0134b",
      "parents": [
        "3e4ff115740c28dea463561aa1405a3c0de0d2d0"
      ],
      "author": {
        "name": "Andi Kleen",
        "email": "ak@suse.de",
        "time": "Mon Jun 26 13:57:04 2006 +0200"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Mon Jun 26 10:48:16 2006 -0700"
      },
      "message": "[PATCH] x86_64: Remove long obsolete CVS\n\nEarly development of x86-64 Linux was in CVS, but that hasn\u0027t been\nthe case for a long time now. Remove the obsolete $Id$s.\n\nSigned-off-by: Andi Kleen \u003cak@suse.de\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "3e4ff115740c28dea463561aa1405a3c0de0d2d0",
      "tree": "517e293240ae7f2ccb6b4545a6d9a22660e46f02",
      "parents": [
        "14118c3cdd46d72e503ee2f727b11d881f72f755"
      ],
      "author": {
        "name": "Don Zickus",
        "email": "dzickus@redhat.com",
        "time": "Mon Jun 26 13:57:01 2006 +0200"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Mon Jun 26 10:48:16 2006 -0700"
      },
      "message": "[PATCH] x86_64: nmi watchdog header cleanup\n\nMisc header cleanup for nmi watchdog.\n\nSigned-off-by: Don Zickus \u003cdzickus@redhat.com\u003e\nSigned-off-by: Andi Kleen \u003cak@suse.de\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "bebfa1013eee1d91b3242e5801cc8fbdfaf148ec",
      "tree": "d1abf916c29bbb5c312717f57798987268aff9a9",
      "parents": [
        "f201611fcecdfa825471dc425ee007997228fae4"
      ],
      "author": {
        "name": "Andi Kleen",
        "email": "ak@suse.de",
        "time": "Mon Jun 26 13:56:52 2006 +0200"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Mon Jun 26 10:48:16 2006 -0700"
      },
      "message": "[PATCH] x86_64: Add compat_printk and sysctl to turn off compat layer warnings\n\nSometimes e.g. with crashme the compat layer warnings can be noisy.\nAdd a way to turn them off by gating all output through compat_printk\nthat checks a global sysctl. The default is not changed.\n\nSigned-off-by: Andi Kleen \u003cak@suse.de\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "a32073bffc656ca4bde6002b6cf7c1a8e0e22712",
      "tree": "5ddcd3107eca8807685a19490c2c849d728a51a6",
      "parents": [
        "7c2d9cd218916276e52a5dae827b84a159fe5c96"
      ],
      "author": {
        "name": "Andi Kleen",
        "email": "ak@suse.de",
        "time": "Mon Jun 26 13:56:40 2006 +0200"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Mon Jun 26 10:48:15 2006 -0700"
      },
      "message": "[PATCH] x86_64: Clean and enhance up K8 northbridge access code\n\n - Factor out the duplicated access/cache code into a single file\n   * Shared between i386/x86-64.\n - Share flush code between AGP and IOMMU\n   * Fix a bug: AGP didn\u0027t wait for end of flush before\n - Drop 8 northbridges limit and allocate dynamically\n - Add lock to serialize AGP and IOMMU GART flushes\n - Add PCI ID for next AMD northbridge\n - Random related cleanups\n\nThe old K8 NUMA discovery code is unchanged. New systems\nshould all use SRAT for this.\n\nCc: \"Navin Boppuri\" \u003cnavin.boppuri@newisys.com\u003e\nCc: Dave Jones \u003cdavej@redhat.com\u003e\nSigned-off-by: Andi Kleen \u003cak@suse.de\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    }
  ],
  "next": "ed0a893fc8866baf116323acbcd883a3cc4a36a3"
}
