)]}'
{
  "log": [
    {
      "commit": "5b4787719f8870104fada924ef65ee9fd5eb2514",
      "tree": "6f82375d8f2372d70e00430292190fb63776056c",
      "parents": [
        "5bab188a316718a26346cdb25c4cc6b319f8f907"
      ],
      "author": {
        "name": "Chris Metcalf",
        "email": "cmetcalf@tilera.com",
        "time": "Sat Mar 19 11:45:34 2011 -0400"
      },
      "committer": {
        "name": "Chris Metcalf",
        "email": "cmetcalf@tilera.com",
        "time": "Sun Mar 20 00:08:21 2011 -0400"
      },
      "message": "arch/tile: fix futex sanitization definition/prototype mismatch\n\nCommit 8d7718aa082aaf30a0b4989e1f04858952f941bc changed \"int\"\nto \"u32\" in the prototypes but not the definition.\nI missed this when I saw the patch go by on LKML.\n\nWe cast \"u32 *\" to \"int *\" since we are tying into the underlying\natomics framework, and atomic_t uses int as its value type.\n\nSigned-off-by: Chris Metcalf \u003ccmetcalf@tilera.com\u003e\nReviewed-by: Michel Lespinasse \u003cwalken@google.com\u003e\n"
    },
    {
      "commit": "08351fc6a75731226e1112fc7254542bd3a2912e",
      "tree": "8b25bd168e0663c766f0332c8be082aa7d6ed265",
      "parents": [
        "0df0914d414a504b975f3cc66ace0c16ef55b7f3",
        "0dccb0489f9a5a13a33e828ab965aa49685d12f8"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Mar 17 19:34:12 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Mar 17 19:34:12 2011 -0700"
      },
      "message": "Merge git://git.kernel.org/pub/scm/linux/kernel/git/cmetcalf/linux-tile\n\n* git://git.kernel.org/pub/scm/linux/kernel/git/cmetcalf/linux-tile: (27 commits)\n  arch/tile: support newer binutils assembler shift semantics\n  arch/tile: fix deadlock bugs in rwlock implementation\n  drivers/edac: provide support for tile architecture\n  tile on-chip network driver: sync up with latest fixes\n  arch/tile: support 4KB page size as well as 64KB\n  arch/tile: add some more VMSPLIT options and use consistent naming\n  arch/tile: fix some comments and whitespace\n  arch/tile: export some additional module symbols\n  arch/tile: enhance existing finv_buffer_remote() routine\n  arch/tile: fix two bugs in the backtracer code\n  arch/tile: use extended assembly to inline __mb_incoherent()\n  arch/tile: use a cleaner technique to enable interrupt for cpu_idle()\n  arch/tile: sync up with \u003carch/sim.h\u003e and \u003carch/sim_def.h\u003e changes\n  arch/tile: fix reversed test of strict_strtol() return value\n  arch/tile: avoid a simulator warning during bootup\n  arch/tile: export \u003casm/hardwall.h\u003e to userspace\n  arch/tile: warn and retry if an IPI is not accepted by the target cpu\n  arch/tile: stop disabling INTCTRL_1 interrupts during hypervisor downcalls\n  arch/tile: fix __ndelay etc to work better\n  arch/tile: bug fix: exec\u0027ed task thought it was still single-stepping\n  ...\n\nFix up trivial conflict in arch/tile/kernel/vmlinux.lds.S (percpu\nalignment vs section naming convention fix)\n"
    },
    {
      "commit": "0dccb0489f9a5a13a33e828ab965aa49685d12f8",
      "tree": "0d6b96c5071982ee510abfc1cca9787b550270ed",
      "parents": [
        "325d1605542960903c88409b199734a3d8fc6612"
      ],
      "author": {
        "name": "Chris Metcalf",
        "email": "cmetcalf@tilera.com",
        "time": "Thu Mar 17 14:32:06 2011 -0400"
      },
      "committer": {
        "name": "Chris Metcalf",
        "email": "cmetcalf@tilera.com",
        "time": "Thu Mar 17 14:32:06 2011 -0400"
      },
      "message": "arch/tile: support newer binutils assembler shift semantics\n\nThis change supports building the kernel with newer binutils where\na shift of greater than the word size is no longer interpreted\nsilently as modulo the word size, but instead generates a warning.\n\nSigned-off-by: Chris Metcalf \u003ccmetcalf@tilera.com\u003e\n"
    },
    {
      "commit": "79d8a8f736151b12129984b1250fd708440e742c",
      "tree": "f67eebe2bafca8820955ee9f851985a41fb32e66",
      "parents": [
        "bd2895eeade5f11f3e5906283c630bbdb4b57454",
        "b9ec40af0e18fb7d02106be148036c2ea490fdf9"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Mar 16 08:22:41 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Mar 16 08:22:41 2011 -0700"
      },
      "message": "Merge branch \u0027for-2.6.39\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tj/percpu\n\n* \u0027for-2.6.39\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tj/percpu:\n  percpu, x86: Add arch-specific this_cpu_cmpxchg_double() support\n  percpu: Generic support for this_cpu_cmpxchg_double()\n  alpha: use L1_CACHE_BYTES for cacheline size in the linker script\n  percpu: align percpu readmostly subsection to cacheline\n\nFix up trivial conflict in arch/x86/kernel/vmlinux.lds.S due to the\npercpu alignment having changed (\"x86: Reduce back the alignment of the\nper-CPU data section\")\n"
    },
    {
      "commit": "8d7718aa082aaf30a0b4989e1f04858952f941bc",
      "tree": "f006a565d138cec2b497c2bd619f570ad1a11f6e",
      "parents": [
        "37a9d912b24f96a0591773e6e6c3642991ae5a70"
      ],
      "author": {
        "name": "Michel Lespinasse",
        "email": "walken@google.com",
        "time": "Thu Mar 10 18:50:58 2011 -0800"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Fri Mar 11 12:23:31 2011 +0100"
      },
      "message": "futex: Sanitize futex ops argument types\n\nChange futex_atomic_op_inuser and futex_atomic_cmpxchg_inatomic\nprototypes to use u32 types for the futex as this is the data type the\nfutex core code uses all over the place.\n\nSigned-off-by: Michel Lespinasse \u003cwalken@google.com\u003e\nCc: Darren Hart \u003cdarren@dvhart.com\u003e\nCc: Peter Zijlstra \u003cpeterz@infradead.org\u003e\nCc: Matt Turner \u003cmattst88@gmail.com\u003e\nCc: Russell King \u003clinux@arm.linux.org.uk\u003e\nCc: David Howells \u003cdhowells@redhat.com\u003e\nCc: Tony Luck \u003ctony.luck@intel.com\u003e\nCc: Michal Simek \u003cmonstr@monstr.eu\u003e\nCc: Ralf Baechle \u003cralf@linux-mips.org\u003e\nCc: \"James E.J. Bottomley\" \u003cjejb@parisc-linux.org\u003e\nCc: Benjamin Herrenschmidt \u003cbenh@kernel.crashing.org\u003e\nCc: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\nCc: Paul Mundt \u003clethal@linux-sh.org\u003e\nCc: \"David S. Miller\" \u003cdavem@davemloft.net\u003e\nCc: Chris Metcalf \u003ccmetcalf@tilera.com\u003e\nCc: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\nLKML-Reference: \u003c20110311025058.GD26122@google.com\u003e\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\n"
    },
    {
      "commit": "37a9d912b24f96a0591773e6e6c3642991ae5a70",
      "tree": "5c4d5b9a52e2c533269e589115afbd25b6c8534b",
      "parents": [
        "522d7decc0370070448a8c28982c8dfd8970489e"
      ],
      "author": {
        "name": "Michel Lespinasse",
        "email": "walken@google.com",
        "time": "Thu Mar 10 18:48:51 2011 -0800"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Fri Mar 11 12:23:08 2011 +0100"
      },
      "message": "futex: Sanitize cmpxchg_futex_value_locked API\n\nThe cmpxchg_futex_value_locked API was funny in that it returned either\nthe original, user-exposed futex value OR an error code such as -EFAULT.\nThis was confusing at best, and could be a source of livelocks in places\nthat retry the cmpxchg_futex_value_locked after trying to fix the issue\nby running fault_in_user_writeable().\n    \nThis change makes the cmpxchg_futex_value_locked API more similar to the\nget_futex_value_locked one, returning an error code and updating the\noriginal value through a reference argument.\n    \nSigned-off-by: Michel Lespinasse \u003cwalken@google.com\u003e\nAcked-by: Chris Metcalf \u003ccmetcalf@tilera.com\u003e  [tile]\nAcked-by: Tony Luck \u003ctony.luck@intel.com\u003e  [ia64]\nAcked-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nTested-by: Michal Simek \u003cmonstr@monstr.eu\u003e  [microblaze]\nAcked-by: David Howells \u003cdhowells@redhat.com\u003e [frv]\nCc: Darren Hart \u003cdarren@dvhart.com\u003e\nCc: Peter Zijlstra \u003cpeterz@infradead.org\u003e\nCc: Matt Turner \u003cmattst88@gmail.com\u003e\nCc: Russell King \u003clinux@arm.linux.org.uk\u003e\nCc: Ralf Baechle \u003cralf@linux-mips.org\u003e\nCc: \"James E.J. Bottomley\" \u003cjejb@parisc-linux.org\u003e\nCc: Benjamin Herrenschmidt \u003cbenh@kernel.crashing.org\u003e\nCc: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\nCc: Paul Mundt \u003clethal@linux-sh.org\u003e\nCc: \"David S. Miller\" \u003cdavem@davemloft.net\u003e\nCc: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\nLKML-Reference: \u003c20110311024851.GC26122@google.com\u003e\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\n\n"
    },
    {
      "commit": "3c5ead52ed68406c0ee789024c4ae581be8bcee4",
      "tree": "cd634aba3710115640b372b4fc49fee5ead75acf",
      "parents": [
        "5c7707554858eca8903706b6df7cba5c0f802244"
      ],
      "author": {
        "name": "Chris Metcalf",
        "email": "cmetcalf@tilera.com",
        "time": "Tue Mar 01 13:30:15 2011 -0500"
      },
      "committer": {
        "name": "Chris Metcalf",
        "email": "cmetcalf@tilera.com",
        "time": "Thu Mar 10 16:10:41 2011 -0500"
      },
      "message": "arch/tile: fix deadlock bugs in rwlock implementation\n\nThe first issue fixed in this patch is that pending rwlock write locks\ncould lock out new readers; this could cause a deadlock if a read lock was\nheld on cpu 1, a write lock was then attempted on cpu 2 and was pending,\nand cpu 1 was interrupted and attempted to re-acquire a read lock.\nThe write lock code was modified to not lock out new readers.\n\nThe second issue fixed is that there was a narrow race window where a tns\ninstruction had been issued (setting the lock value to \"1\") and the store\ninstruction to reset the lock value correctly had not yet been issued.\nIn this case, if an interrupt occurred and the same cpu then tried to\nmanipulate the lock, it would find the lock value set to \"1\" and spin\nforever, assuming some other cpu was partway through updating it.  The fix\nis to enforce an interrupt critical section around the tns/store pair.\n\nIn addition, this change now arranges to always validate that after\na readlock we have not wrapped around the count of readers, which\nis only eight bits.\n\nSince these changes make the rwlock \"fast path\" code heavier weight,\nI decided to move all the rwlock code all out of line, leaving only the\nconventional spinlock code with fastpath inlines.  Since the read_lock\nand read_trylock implementations ended up very similar, I just expressed\nread_lock in terms of read_trylock.\n\nAs part of this change I also eliminate support for the now-obsolete\ntns_atomic mode.\n\nSigned-off-by: Chris Metcalf \u003ccmetcalf@tilera.com\u003e\n"
    },
    {
      "commit": "5c7707554858eca8903706b6df7cba5c0f802244",
      "tree": "6ebb5ef933b1cf4dbca374cf2a03e249383cd41e",
      "parents": [
        "d91c641233ae09fcccec75313b7f55992668bf8d"
      ],
      "author": {
        "name": "Chris Metcalf",
        "email": "cmetcalf@tilera.com",
        "time": "Tue Mar 01 13:01:49 2011 -0500"
      },
      "committer": {
        "name": "Chris Metcalf",
        "email": "cmetcalf@tilera.com",
        "time": "Thu Mar 10 13:30:14 2011 -0500"
      },
      "message": "drivers/edac: provide support for tile architecture\n\nAdd tile support for the EDAC driver, which provides unified system\nerror (memory, PCI, etc.) reporting. For now, the TILEPro port\nreports memory correctable error (CE) only.\n\nSigned-off-by: Chris Metcalf \u003ccmetcalf@tilera.com\u003e\n"
    },
    {
      "commit": "76c567fbba50c3da2f4d40e2e551bab26cfd4381",
      "tree": "6e3c92a266d0ec255e1930adf5ba5268cd71dee9",
      "parents": [
        "09c17eab075ceeafb53935d858c575b6776394d1"
      ],
      "author": {
        "name": "Chris Metcalf",
        "email": "cmetcalf@tilera.com",
        "time": "Mon Feb 28 16:37:34 2011 -0500"
      },
      "committer": {
        "name": "Chris Metcalf",
        "email": "cmetcalf@tilera.com",
        "time": "Thu Mar 10 13:17:53 2011 -0500"
      },
      "message": "arch/tile: support 4KB page size as well as 64KB\n\nThe Tilera architecture traditionally supports 64KB page sizes\nto improve TLB utilization and improve performance when the\nhardware is being used primarily to run a single application.\n\nFor more generic server scenarios, it can be beneficial to run\nwith 4KB page sizes, so this commit allows that to be specified\n(by modifying the arch/tile/include/hv/pagesize.h header).\n\nAs part of this change, we also re-worked the PTE management\nslightly so that PTE writes all go through a __set_pte() function\nwhere we can do some additional validation.  The set_pte_order()\nfunction was eliminated since the \"order\" argument wasn\u0027t being used.\n\nOne bug uncovered was in the PCI DMA code, which wasn\u0027t properly\nflushing the specified range.  This was benign with 64KB pages,\nbut with 4KB pages we were getting some larger flushes wrong.\n\nThe per-cpu memory reservation code also needed updating to\nconform with the newer percpu stuff; before it always chose 64KB,\nand that was always correct, but with 4KB granularity we now have\nto pay closer attention and reserve the amount of memory that will\nbe requested when the percpu code starts allocating.\n\nSigned-off-by: Chris Metcalf \u003ccmetcalf@tilera.com\u003e\n"
    },
    {
      "commit": "09c17eab075ceeafb53935d858c575b6776394d1",
      "tree": "b455f5a2b7ce41a2ac3f0ebaadc525144deac5fa",
      "parents": [
        "5fb682b0644cd20015d9b0e3ca6921ad5533f4ba"
      ],
      "author": {
        "name": "Chris Metcalf",
        "email": "cmetcalf@tilera.com",
        "time": "Mon Feb 28 16:01:09 2011 -0500"
      },
      "committer": {
        "name": "Chris Metcalf",
        "email": "cmetcalf@tilera.com",
        "time": "Thu Mar 10 13:17:44 2011 -0500"
      },
      "message": "arch/tile: add some more VMSPLIT options and use consistent naming\n\nThis renames 3G_OPT to 2_75G, and adds 2_5G and 2_25G.\n\nFor memory-intensive applications that are also network-buffer\nintensive it can be helpful to be able to tune the virtual address\nof the start of kernel memory.\n\nSigned-off-by: Chris Metcalf \u003ccmetcalf@tilera.com\u003e\n"
    },
    {
      "commit": "5fb682b0644cd20015d9b0e3ca6921ad5533f4ba",
      "tree": "0a2520197ebf92b6a27e69241bd4f242d1b39be3",
      "parents": [
        "00dce03134689a257120ae2aa18ba7d1a736bef7"
      ],
      "author": {
        "name": "Chris Metcalf",
        "email": "cmetcalf@tilera.com",
        "time": "Mon Feb 28 15:58:39 2011 -0500"
      },
      "committer": {
        "name": "Chris Metcalf",
        "email": "cmetcalf@tilera.com",
        "time": "Thu Mar 10 13:14:03 2011 -0500"
      },
      "message": "arch/tile: fix some comments and whitespace\n\nThis is a grab bag of changes with no actual change to generated code.\nThis includes whitespace and comment typos, plus a couple of stale\ncomments being removed.\n\nSigned-off-by: Chris Metcalf \u003ccmetcalf@tilera.com\u003e\n"
    },
    {
      "commit": "00dce03134689a257120ae2aa18ba7d1a736bef7",
      "tree": "34a677cb2caf400c22fba986cf53da2d05ad6f63",
      "parents": [
        "63b7ca6b04427aea9075d6f5f5f15b82e115bce4"
      ],
      "author": {
        "name": "Chris Metcalf",
        "email": "cmetcalf@tilera.com",
        "time": "Mon Feb 28 15:51:25 2011 -0500"
      },
      "committer": {
        "name": "Chris Metcalf",
        "email": "cmetcalf@tilera.com",
        "time": "Tue Mar 01 16:21:12 2011 -0500"
      },
      "message": "arch/tile: export some additional module symbols\n\nThis adds a grab bag of symbols that have been missing for\nvarious modules.\n\nSigned-off-by: Chris Metcalf \u003ccmetcalf@tilera.com\u003e\n"
    },
    {
      "commit": "63b7ca6b04427aea9075d6f5f5f15b82e115bce4",
      "tree": "97a72ec3d243a46475e880b2c5703a167165f961",
      "parents": [
        "3cebbafd28e6f91677f3becffcdf9150b74a4e0c"
      ],
      "author": {
        "name": "Chris Metcalf",
        "email": "cmetcalf@tilera.com",
        "time": "Mon Feb 28 15:48:39 2011 -0500"
      },
      "committer": {
        "name": "Chris Metcalf",
        "email": "cmetcalf@tilera.com",
        "time": "Tue Mar 01 16:21:06 2011 -0500"
      },
      "message": "arch/tile: enhance existing finv_buffer_remote() routine\n\nIt now takes an additional argument so it can be used to\nflush-and-invalidate pages that are cached using hash-for-home\nas well those that are cached with coherence point on a single cpu.\n\nThis allows it to be used more widely for changing the coherence\npoint of arbitrary pages when necessary.\n\nSigned-off-by: Chris Metcalf \u003ccmetcalf@tilera.com\u003e\n"
    },
    {
      "commit": "3cebbafd28e6f91677f3becffcdf9150b74a4e0c",
      "tree": "e744b9970878141fea0bd9e6f868cc5b6bae5d31",
      "parents": [
        "6c4d11268819d9c920c7befd8e8e9aad456bb067"
      ],
      "author": {
        "name": "Chris Metcalf",
        "email": "cmetcalf@tilera.com",
        "time": "Mon Feb 28 15:30:16 2011 -0500"
      },
      "committer": {
        "name": "Chris Metcalf",
        "email": "cmetcalf@tilera.com",
        "time": "Tue Mar 01 16:21:00 2011 -0500"
      },
      "message": "arch/tile: fix two bugs in the backtracer code\n\nThe first is that we were using an incorrect hand-rolled variant\nof __kernel_text_address() which didn\u0027t handle module PCs.  We now\njust use the standard API.\n\nThe second was that we weren\u0027t accounting for the three-level\npage table when we were trying to pre-verify the addresses on\nthe 64-bit TILE-Gx processor; we now do that correctly.\n\nSigned-off-by: Chris Metcalf \u003ccmetcalf@tilera.com\u003e\n"
    },
    {
      "commit": "6c4d11268819d9c920c7befd8e8e9aad456bb067",
      "tree": "85aeb083d5973696bf704becf261ad91bd484613",
      "parents": [
        "0b989cac90144565b8780ddde36e6a927f8ca7ba"
      ],
      "author": {
        "name": "Chris Metcalf",
        "email": "cmetcalf@tilera.com",
        "time": "Mon Feb 28 15:28:00 2011 -0500"
      },
      "committer": {
        "name": "Chris Metcalf",
        "email": "cmetcalf@tilera.com",
        "time": "Tue Mar 01 16:20:54 2011 -0500"
      },
      "message": "arch/tile: use extended assembly to inline __mb_incoherent()\n\nThis avoids having to maintain an additional separate assembly\nfile, and of course the inline is slightly more efficient as well.\n\nSigned-off-by: Chris Metcalf \u003ccmetcalf@tilera.com\u003e\n"
    },
    {
      "commit": "0b989cac90144565b8780ddde36e6a927f8ca7ba",
      "tree": "5867cd253d019b8e23e9e581482c87551b32accb",
      "parents": [
        "a5c149c8a00b247749d0f18c13b130069dcc36e3"
      ],
      "author": {
        "name": "Chris Metcalf",
        "email": "cmetcalf@tilera.com",
        "time": "Mon Feb 28 15:22:40 2011 -0500"
      },
      "committer": {
        "name": "Chris Metcalf",
        "email": "cmetcalf@tilera.com",
        "time": "Tue Mar 01 16:20:48 2011 -0500"
      },
      "message": "arch/tile: use a cleaner technique to enable interrupt for cpu_idle()\n\nPreviously we used iret to atomically return to kernel PL with\ninterrupts enabled.  However, it turns out that we are architecturally\nguaranteed that we can just set and clear the \"interrupt critical\nsection\" and only interrupt on the following instruction, so we\nnow do that instead, since it\u0027s cleaner.\n\nSigned-off-by: Chris Metcalf \u003ccmetcalf@tilera.com\u003e\n"
    },
    {
      "commit": "a5c149c8a00b247749d0f18c13b130069dcc36e3",
      "tree": "23fe734b22a2ab4e0f0f37b2243facf95e09f8c4",
      "parents": [
        "ed54d38f0852b2e685393ddae2405d59ef44bed4"
      ],
      "author": {
        "name": "Chris Metcalf",
        "email": "cmetcalf@tilera.com",
        "time": "Mon Feb 28 15:19:10 2011 -0500"
      },
      "committer": {
        "name": "Chris Metcalf",
        "email": "cmetcalf@tilera.com",
        "time": "Tue Mar 01 16:20:42 2011 -0500"
      },
      "message": "arch/tile: sync up with \u003carch/sim.h\u003e and \u003carch/sim_def.h\u003e changes\n\nThese headers are used by Linux but are maintained upstream.\nThis change incorporates a few minor fixes to these headers,\nincluding a new sim_print() function, cleaner support for the\nsim_syscall() API, and a sim_query_cpu_speed() method.\n\nSigned-off-by: Chris Metcalf \u003ccmetcalf@tilera.com\u003e\n"
    },
    {
      "commit": "ed54d38f0852b2e685393ddae2405d59ef44bed4",
      "tree": "17b70bfc11ed1db51ea110e8e8691162beddcee7",
      "parents": [
        "401586e9164d225d24bb9d3ddfeb03ef2e931ee3"
      ],
      "author": {
        "name": "Chris Metcalf",
        "email": "cmetcalf@tilera.com",
        "time": "Mon Feb 28 15:14:19 2011 -0500"
      },
      "committer": {
        "name": "Chris Metcalf",
        "email": "cmetcalf@tilera.com",
        "time": "Tue Mar 01 16:20:36 2011 -0500"
      },
      "message": "arch/tile: fix reversed test of strict_strtol() return value\n\nThis fixes the \"initfree\" boot argument.\n\nSigned-off-by: Chris Metcalf \u003ccmetcalf@tilera.com\u003e\n"
    },
    {
      "commit": "401586e9164d225d24bb9d3ddfeb03ef2e931ee3",
      "tree": "803b962adb1688da4c6220fec2681e0b66ea1638",
      "parents": [
        "9ff27fdbd5d1ffbe2e0a277b4b7bfd0eb8a4bb1c"
      ],
      "author": {
        "name": "Chris Metcalf",
        "email": "cmetcalf@tilera.com",
        "time": "Mon Feb 28 15:01:53 2011 -0500"
      },
      "committer": {
        "name": "Chris Metcalf",
        "email": "cmetcalf@tilera.com",
        "time": "Tue Mar 01 16:20:29 2011 -0500"
      },
      "message": "arch/tile: avoid a simulator warning during bootup\n\nAs the added comment says, we can sometimes see a coherence warning\nfrom our simulator if the \"swapper_pgprot\" variable on the boot cpu\nhas not been evicted from cache by the time the other cpus come up.\nForce it to be evicted so we never see the warning.\n\nSigned-off-by: Chris Metcalf \u003ccmetcalf@tilera.com\u003e\n"
    },
    {
      "commit": "9ff27fdbd5d1ffbe2e0a277b4b7bfd0eb8a4bb1c",
      "tree": "0600b5b4bb25d4b66da91a329c395336c85752ee",
      "parents": [
        "bbeee4b2815dd318e9ec9d092d7f79061cc8ba36"
      ],
      "author": {
        "name": "Chris Metcalf",
        "email": "cmetcalf@tilera.com",
        "time": "Mon Feb 28 13:35:16 2011 -0500"
      },
      "committer": {
        "name": "Chris Metcalf",
        "email": "cmetcalf@tilera.com",
        "time": "Tue Mar 01 16:20:23 2011 -0500"
      },
      "message": "arch/tile: export \u003casm/hardwall.h\u003e to userspace\n\nThis should have been as part of the initial hardwall submission to\nLKML but was overlooked.  The header provides the ioctl definitions for\nmanipulating the hardwall fd, so needs to be available to userspace.\n\nSigned-off-by: Chris Metcalf \u003ccmetcalf@tilera.com\u003e\n"
    },
    {
      "commit": "bbeee4b2815dd318e9ec9d092d7f79061cc8ba36",
      "tree": "303698ddc85ff93272bc9ef923f472edeb3f9d0d",
      "parents": [
        "b2ce2bdaf942172914a9a39b26065ff7aacdf962"
      ],
      "author": {
        "name": "Chris Metcalf",
        "email": "cmetcalf@tilera.com",
        "time": "Mon Feb 28 13:32:14 2011 -0500"
      },
      "committer": {
        "name": "Chris Metcalf",
        "email": "cmetcalf@tilera.com",
        "time": "Tue Mar 01 16:20:16 2011 -0500"
      },
      "message": "arch/tile: warn and retry if an IPI is not accepted by the target cpu\n\nPreviously we assumed this was impossible, but in fact it can happen.\nHandle it gracefully by retrying after issuing a warning.\n\nSigned-off-by: Chris Metcalf \u003ccmetcalf@tilera.com\u003e\n"
    },
    {
      "commit": "b2ce2bdaf942172914a9a39b26065ff7aacdf962",
      "tree": "b91ee72c1bd0b4586ebf69ee7889b82c9c5963b3",
      "parents": [
        "13371731487896a6ef158b1cd74297f40a3da4bb"
      ],
      "author": {
        "name": "Chris Metcalf",
        "email": "cmetcalf@tilera.com",
        "time": "Mon Feb 28 13:24:37 2011 -0500"
      },
      "committer": {
        "name": "Chris Metcalf",
        "email": "cmetcalf@tilera.com",
        "time": "Tue Mar 01 16:20:10 2011 -0500"
      },
      "message": "arch/tile: stop disabling INTCTRL_1 interrupts during hypervisor downcalls\n\nThe problem was that this could lead to IPIs being disabled during\nthe softirq processing after a hypervisor downcall (e.g. for I/O),\nsince both IPI and device interrupts use the INCTRL_1 downcall mechanism.\nWhen this happened at the wrong time, it could lead to deadlock.\n\nLuckily, we were already maintaining the per-interrupt state we need,\nand using it in the proper way in the hypervisor, so all we had to do\nwas to change Linux to stop blocking downcall interrupts for the entire\nlength of the downcall.  (Now they\u0027re blocked while we\u0027re executing the\ndowncall routine itself, but not while we\u0027re executing any subsequent\nsoftirq routines.)  The hypervisor is doing a very small amount of\nwork it no longer needs to do (masking INTCTRL_1 on entry to the client\ninterrupt routine), but doing so means that older versions of Tile Linux\nwill continue to work with a current hypervisor, so that seems reasonable.\n\nSigned-off-by: Chris Metcalf \u003ccmetcalf@tilera.com\u003e\n"
    },
    {
      "commit": "13371731487896a6ef158b1cd74297f40a3da4bb",
      "tree": "af09fca3fd8811340b373faaddcdb528f8a07669",
      "parents": [
        "04f7a3f12e10032ee3d44df1a509dbf5b2001fce"
      ],
      "author": {
        "name": "Chris Metcalf",
        "email": "cmetcalf@tilera.com",
        "time": "Mon Feb 28 13:21:52 2011 -0500"
      },
      "committer": {
        "name": "Chris Metcalf",
        "email": "cmetcalf@tilera.com",
        "time": "Tue Mar 01 16:20:04 2011 -0500"
      },
      "message": "arch/tile: fix __ndelay etc to work better\n\nThe current implementations of __ndelay and __udelay call a hypervisor\nservice to delay, but the hypervisor service isn\u0027t actually implemented\nvery well, and the consensus is that Linux should handle figuring this\nout natively and not use a hypervisor service.\n\nBy converting nanoseconds to cycles, and then spinning until the\ncycle counter reaches the desired cycle, we get several benefits:\nfirst, we are sensitive to the actual clock speed; second, we use\nless power by issuing a slow SPR read once every six cycles while\nwe delay; and third, we properly handle the case of an interrupt by\nexiting at the target time rather than after some number of cycles.\n\nSigned-off-by: Chris Metcalf \u003ccmetcalf@tilera.com\u003e\n"
    },
    {
      "commit": "04f7a3f12e10032ee3d44df1a509dbf5b2001fce",
      "tree": "2e9281f10f1dffc9fc6b470e823b02bb720ecc4c",
      "parents": [
        "2cb82400719e085a3c226cf7cce8950208f09a06"
      ],
      "author": {
        "name": "Chris Metcalf",
        "email": "cmetcalf@tilera.com",
        "time": "Mon Feb 28 13:08:32 2011 -0500"
      },
      "committer": {
        "name": "Chris Metcalf",
        "email": "cmetcalf@tilera.com",
        "time": "Tue Mar 01 16:19:58 2011 -0500"
      },
      "message": "arch/tile: bug fix: exec\u0027ed task thought it was still single-stepping\n\nTo handle single-step, tile mmap\u0027s a page of memory in the process\nspace for each thread and uses it to construct a version of the\ninstruction that we want to single step.  If the process exec\u0027s,\nthough, we lose that mapping, and the kernel needs to be aware that\nit will need to recreate it if the exec\u0027ed process than tries to\nsingle-step as well.\n\nAlso correct some int32_t to s32 for better kernel style.\n\nSigned-off-by: Chris Metcalf \u003ccmetcalf@tilera.com\u003e\n"
    },
    {
      "commit": "2cb82400719e085a3c226cf7cce8950208f09a06",
      "tree": "f37f00fb93625da933d271d4260a3ea4e7ec9f9c",
      "parents": [
        "d356b595e5a95c0c2305ec0a7d1cdb3e26f57716"
      ],
      "author": {
        "name": "Chris Metcalf",
        "email": "cmetcalf@tilera.com",
        "time": "Sun Feb 27 18:52:24 2011 -0500"
      },
      "committer": {
        "name": "Chris Metcalf",
        "email": "cmetcalf@tilera.com",
        "time": "Tue Mar 01 16:18:52 2011 -0500"
      },
      "message": "arch/tile: catch up with section naming convention in 2.6.35\n\nThe convention changed to, e.g., \".data..page_aligned\".  This commit\nfixes the places in the tile architecture that were still using the\nold convention.  One tile-specific section (.init.page) was dropped\nin favor of just using an \"aligned\" attribute.\n\nSam Ravnborg \u003csam@ravnborg.org\u003e pointed out __PAGE_ALIGNED_BSS, etc.\n\nSigned-off-by: Chris Metcalf \u003ccmetcalf@tilera.com\u003e\n"
    },
    {
      "commit": "d356b595e5a95c0c2305ec0a7d1cdb3e26f57716",
      "tree": "8256f0460d6ff5f50d57590a53c10336b66cb241",
      "parents": [
        "deb4b003eb33e63af23cd887ded04ad77ab3dcbb"
      ],
      "author": {
        "name": "Chris Metcalf",
        "email": "cmetcalf@tilera.com",
        "time": "Fri Feb 25 08:46:38 2011 -0500"
      },
      "committer": {
        "name": "Chris Metcalf",
        "email": "cmetcalf@tilera.com",
        "time": "Fri Feb 25 08:46:38 2011 -0500"
      },
      "message": "arch/tile: Fix atomic_read() definition to use ACCESS_ONCE\n\nThis adds the volatile cast which forces the compiler to emit the load.\nSuggested by Peter Zijlstra \u003cpeterz@infradead.org\u003e.\n\nSigned-off-by: Chris Metcalf \u003ccmetcalf@tilera.com\u003e\n"
    },
    {
      "commit": "deb4b003eb33e63af23cd887ded04ad77ab3dcbb",
      "tree": "f8c98783f3d19a9a4ca7a9196b0523a577f02c34",
      "parents": [
        "14536076dfa382a4b302709ffd3041ae10107144"
      ],
      "author": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Sun Feb 06 23:04:44 2011 +0000"
      },
      "committer": {
        "name": "Chris Metcalf",
        "email": "cmetcalf@tilera.com",
        "time": "Wed Feb 23 16:07:36 2011 -0500"
      },
      "message": "tile: Select GENERIC_HARDIRQS_NO_DEPRECATED\n\nirq chip converted and proper accessor functions used.\n\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nSigned-off-by: Chris Metcalf \u003ccmetcalf@tilera.com\u003e\n"
    },
    {
      "commit": "14536076dfa382a4b302709ffd3041ae10107144",
      "tree": "5deab8e53f34c317f41105d5932ae764aebe529d",
      "parents": [
        "f5b42c93d891cc9e6528b4e1ab11160ce670e67d"
      ],
      "author": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Sun Feb 06 23:04:42 2011 +0000"
      },
      "committer": {
        "name": "Chris Metcalf",
        "email": "cmetcalf@tilera.com",
        "time": "Wed Feb 23 16:07:34 2011 -0500"
      },
      "message": "tile: Use proper accessor functions in show_interrupt()\n\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nSigned-off-by: Chris Metcalf \u003ccmetcalf@tilera.com\u003e\n"
    },
    {
      "commit": "f5b42c93d891cc9e6528b4e1ab11160ce670e67d",
      "tree": "ce477d7dae703829807e9c8ec339266a146ac149",
      "parents": [
        "342d87ef21cef81b5af973c52bc1ab4e70c8b877"
      ],
      "author": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Sun Feb 06 23:04:40 2011 +0000"
      },
      "committer": {
        "name": "Chris Metcalf",
        "email": "cmetcalf@tilera.com",
        "time": "Wed Feb 23 16:07:33 2011 -0500"
      },
      "message": "tile: Convert irq_chip to new functions\n\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nSigned-off-by: Chris Metcalf \u003ccmetcalf@tilera.com\u003e\n"
    },
    {
      "commit": "342d87ef21cef81b5af973c52bc1ab4e70c8b877",
      "tree": "7c41b59142ce05df23c6f09fbcce58a1675e4d55",
      "parents": [
        "cddb5de0531738b1adcebca8186e7078fd8c33fd"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "a.p.zijlstra@chello.nl",
        "time": "Tue Jan 25 18:31:12 2011 +0100"
      },
      "committer": {
        "name": "Chris Metcalf",
        "email": "cmetcalf@tilera.com",
        "time": "Wed Feb 23 15:58:09 2011 -0500"
      },
      "message": "tile: Fix __pte_free_tlb\n\nTile\u0027s __pte_free_tlb() implementation makes assumptions about the\ngeneric mmu_gather implementation, cure this ;-)\n\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nSigned-off-by: Chris Metcalf \u003ccmetcalf@tilera.com\u003e\n"
    },
    {
      "commit": "19df0c2fef010e94e90df514aaf4e73f6b80145c",
      "tree": "4b0b9c10622aead0d8b658cca6c49090149a91a8",
      "parents": [
        "c723fdab8aa728dc2bf0da6a0de8bb9c3f588d84"
      ],
      "author": {
        "name": "Tejun Heo",
        "email": "tj@kernel.org",
        "time": "Tue Jan 25 14:26:50 2011 +0100"
      },
      "committer": {
        "name": "Tejun Heo",
        "email": "tj@kernel.org",
        "time": "Tue Jan 25 14:26:50 2011 +0100"
      },
      "message": "percpu: align percpu readmostly subsection to cacheline\n\nCurrently percpu readmostly subsection may share cachelines with other\npercpu subsections which may result in unnecessary cacheline bounce\nand performance degradation.\n\nThis patch adds @cacheline parameter to PERCPU() and PERCPU_VADDR()\nlinker macros, makes each arch linker scripts specify its cacheline\nsize and use it to align percpu subsections.\n\nThis is based on Shaohua\u0027s x86 only patch.\n\nSigned-off-by: Tejun Heo \u003ctj@kernel.org\u003e\nCc: Shaohua Li \u003cshaohua.li@intel.com\u003e\n"
    },
    {
      "commit": "8df274064e02aa8929eb5087dd8841b6601ab0ae",
      "tree": "9c5d72e3a2b765242ce9bcbaea605540327ca8c2",
      "parents": [
        "373b25c3bff14fd9ed30b6ddba49cbeeb7ccdf88"
      ],
      "author": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Wed Jan 19 20:44:43 2011 +0100"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Fri Jan 21 11:55:34 2011 +0100"
      },
      "message": "tile: Use generic irq Kconfig\n\nNo functional change.\n\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nAcked-by: Chris Metcalf \u003ccmetcalf@tilera.com\u003e\n"
    },
    {
      "commit": "1c77ff22f539ceaa64ea43d6a26d867e84602cb7",
      "tree": "d1623ae6a2f8ed56acbaa03b514e393496c42802",
      "parents": [
        "0e155b2ce293382730b8473f6ceeb7ac9b939b7d"
      ],
      "author": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Wed Jan 19 19:41:35 2011 +0100"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Fri Jan 21 11:55:31 2011 +0100"
      },
      "message": "genirq: Remove __do_IRQ\n\nAll architectures are finally converted. Remove the cruft.\n\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nCc: Richard Henderson \u003crth@twiddle.net\u003e\nCc: Mike Frysinger \u003cvapier@gentoo.org\u003e\nCc: David Howells \u003cdhowells@redhat.com\u003e\nCc: Tony Luck \u003ctony.luck@intel.com\u003e\nCc: Greg Ungerer \u003cgerg@uclinux.org\u003e\nCc: Michal Simek \u003cmonstr@monstr.eu\u003e\nAcked-by: David Howells \u003cdhowells@redhat.com\u003e\nCc: Kyle McMartin \u003ckyle@mcmartin.ca\u003e\nAcked-by: Benjamin Herrenschmidt \u003cbenh@kernel.crashing.org\u003e\nCc: Chen Liqin \u003cliqin.chen@sunplusct.com\u003e\nCc: \"David S. Miller\" \u003cdavem@davemloft.net\u003e\nCc: Chris Metcalf \u003ccmetcalf@tilera.com\u003e\nCc: Jeff Dike \u003cjdike@addtoit.com\u003e\n"
    },
    {
      "commit": "6a108a14fa356ef607be308b68337939e56ea94e",
      "tree": "1bf260572bd8f95ed867307a2bcf5d881c8ae4a6",
      "parents": [
        "12fcdba1b7ae8b25696433f420b775aeb556d89b"
      ],
      "author": {
        "name": "David Rientjes",
        "email": "rientjes@google.com",
        "time": "Thu Jan 20 14:44:16 2011 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Jan 20 17:02:05 2011 -0800"
      },
      "message": "kconfig: rename CONFIG_EMBEDDED to CONFIG_EXPERT\n\nThe meaning of CONFIG_EMBEDDED has long since been obsoleted; the option\nis used to configure any non-standard kernel with a much larger scope than\nonly small devices.\n\nThis patch renames the option to CONFIG_EXPERT in init/Kconfig and fixes\nreferences to the option throughout the kernel.  A new CONFIG_EMBEDDED\noption is added that automatically selects CONFIG_EXPERT when enabled and\ncan be used in the future to isolate options that should only be\nconsidered for embedded systems (RISC architectures, SLOB, etc).\n\nCalling the option \"EXPERT\" more accurately represents its intention: only\nexpert users who understand the impact of the configuration changes they\nare making should enable it.\n\nReviewed-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nAcked-by: David Woodhouse \u003cdavid.woodhouse@intel.com\u003e\nSigned-off-by: David Rientjes \u003crientjes@google.com\u003e\nCc: Greg KH \u003cgregkh@suse.de\u003e\nCc: \"David S. Miller\" \u003cdavem@davemloft.net\u003e\nCc: Jens Axboe \u003caxboe@kernel.dk\u003e\nCc: Arnd Bergmann \u003carnd@arndb.de\u003e\nCc: Robin Holt \u003cholt@sgi.com\u003e\nCc: \u003clinux-arch@vger.kernel.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "81711cee933599fa114abb0d258d8bbabef8adfb",
      "tree": "cef17c099689b15b3b8bb29b0eae84acd474ed8a",
      "parents": [
        "bc4cf2bb271b2d557fc510426755da786fc985be"
      ],
      "author": {
        "name": "Chris Metcalf",
        "email": "cmetcalf@tilera.com",
        "time": "Tue Dec 14 16:07:25 2010 -0500"
      },
      "committer": {
        "name": "Chris Metcalf",
        "email": "cmetcalf@tilera.com",
        "time": "Fri Dec 17 16:59:29 2010 -0500"
      },
      "message": "arch/tile: handle rt_sigreturn() more cleanly\n\nThe current tile rt_sigreturn() syscall pattern uses the common idiom\nof loading up pt_regs with all the saved registers from the time of\nthe signal, then anticipating the fact that we will clobber the ABI\n\"return value\" register (r0) as we return from the syscall by setting\nthe rt_sigreturn return value to whatever random value was in the pt_regs\nfor r0.\n\nHowever, this breaks in our 64-bit kernel when running \"compat\" tasks,\nsince we always sign-extend the \"return value\" register to properly\nhandle returned pointers that are in the upper 2GB of the 32-bit compat\naddress space.  Doing this to the sigreturn path then causes occasional\nrandom corruption of the 64-bit r0 register.\n\nInstead, we stop doing the crazy \"load the return-value register\"\nhack in sigreturn.  We already have some sigreturn-specific assembly\ncode that we use to pass the pt_regs pointer to C code.  We extend that\ncode to also set the link register to point to a spot a few instructions\nafter the usual syscall return address so we don\u0027t clobber the saved r0.\nNow it no longer matters what the rt_sigreturn syscall returns, and the\npt_regs structure can be cleanly and completely reloaded.\n\nSigned-off-by: Chris Metcalf \u003ccmetcalf@tilera.com\u003e\n"
    },
    {
      "commit": "bc4cf2bb271b2d557fc510426755da786fc985be",
      "tree": "25fa4e868d810603da82d1a7c800cf1b0eb0d100",
      "parents": [
        "5111711d3ed8f4f1012cac3ec3f2b463b549fbfd"
      ],
      "author": {
        "name": "Chris Metcalf",
        "email": "cmetcalf@tilera.com",
        "time": "Tue Dec 14 15:57:49 2010 -0500"
      },
      "committer": {
        "name": "Chris Metcalf",
        "email": "cmetcalf@tilera.com",
        "time": "Fri Dec 17 16:56:50 2010 -0500"
      },
      "message": "arch/tile: handle CLONE_SETTLS in copy_thread(), not user space\n\nPreviously we were just setting up the \"tp\" register in the\nnew task as started by clone() in libc.  However, this is not\nquite right, since in principle a signal might be delivered to\nthe new task before it had its TLS set up.  (Of course, this race\nwindow still exists for resetting the libc getpid() cached value\nin the new task, in principle.  But in any case, we are now doing\nthis exactly the way all other architectures do it.)\n\nThis change is important for 2.6.37 since the tile glibc we will\nbe submitting upstream will not set TLS in user space any more,\nso it will only work on a kernel that has this fix.  It should\nalso be taken for 2.6.36.x in the stable tree if possible.\n\nSigned-off-by: Chris Metcalf \u003ccmetcalf@tilera.com\u003e\nCc: stable \u003cstable@kernel.org\u003e\n"
    },
    {
      "commit": "c12ae95ccc2dc80b4bd57363240cdb6eab2adcbc",
      "tree": "af3312bda2b0740278767867dadcf9c6223dc377",
      "parents": [
        "47143b094d4700842e42b0a7cc2548d7ae292690",
        "3edabee2ed22ee4f98f4b4bb38a41059226a8446"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Nov 25 07:42:32 2010 +0900"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Nov 25 07:42:32 2010 +0900"
      },
      "message": "Merge git://git.kernel.org/pub/scm/linux/kernel/git/cmetcalf/linux-tile\n\n* git://git.kernel.org/pub/scm/linux/kernel/git/cmetcalf/linux-tile:\n  arch/tile: fix memchr() not to dereference memory for zero length\n  arch/tile: make glibc\u0027s sysconf(_SC_NPROCESSORS_CONF) work correctly\n  arch/tile: fix rwlock so would-be write lockers don\u0027t block new readers\n"
    },
    {
      "commit": "47143b094d4700842e42b0a7cc2548d7ae292690",
      "tree": "ab1e7fb7cdedd29c8a9b953e58110ff3870946e4",
      "parents": [
        "0b9466ccea3c4ec363737288dd9467bf978c9c2d",
        "f02cbbe657939489347cbda598401a56913ffcbd"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Nov 25 07:42:03 2010 +0900"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Nov 25 07:42:03 2010 +0900"
      },
      "message": "Merge branch \u0027drivers\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/cmetcalf/linux-tile\n\n* \u0027drivers\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/cmetcalf/linux-tile:\n  pci root complex: support for tile architecture\n  drivers/net/tile/: on-chip network drivers for the tile architecture\n  MAINTAINERS: add drivers/char/hvc_tile.c as maintained by tile\n"
    },
    {
      "commit": "3edabee2ed22ee4f98f4b4bb38a41059226a8446",
      "tree": "18b13a940115d81841868e69782b336cabc4fed9",
      "parents": [
        "4d658d13c90f14cf3510ca15cafe2f4aa9e23d64"
      ],
      "author": {
        "name": "Chris Metcalf",
        "email": "cmetcalf@tilera.com",
        "time": "Wed Nov 24 13:57:42 2010 -0500"
      },
      "committer": {
        "name": "Chris Metcalf",
        "email": "cmetcalf@tilera.com",
        "time": "Wed Nov 24 13:57:42 2010 -0500"
      },
      "message": "arch/tile: fix memchr() not to dereference memory for zero length\n\nThis change fixes a bug that memchr() will read the first word\nof the source even if the length is zero.  Ironically, the code\nwas originally written with a test to avoid exactly this problem,\nbut to make the code conform to Linux coding standards with all\ndeclarations preceding all statements, the first load from memory\nwas moved up above that test as the initial value for a variable.\n\nThe change just moves all the variable declarations to the top\nof the file, with no initializers, so that the test can also be\nat the top of the file.\n\nSigned-off-by: Chris Metcalf \u003ccmetcalf@tilera.com\u003e\n"
    },
    {
      "commit": "4d658d13c90f14cf3510ca15cafe2f4aa9e23d64",
      "tree": "77cf85314ed34c6246edd2a1e4fee4277de8169d",
      "parents": [
        "b03a6c4c7d8ebd8118d668eafdb85f5f76b5437f"
      ],
      "author": {
        "name": "Chris Metcalf",
        "email": "cmetcalf@tilera.com",
        "time": "Wed Nov 24 13:42:15 2010 -0500"
      },
      "committer": {
        "name": "Chris Metcalf",
        "email": "cmetcalf@tilera.com",
        "time": "Wed Nov 24 13:42:15 2010 -0500"
      },
      "message": "arch/tile: make glibc\u0027s sysconf(_SC_NPROCESSORS_CONF) work correctly\n\nglibc assumes that it can count /sys/devices/system/cpu/cpu* to get\nthe number of configured cpus.  For this to be valid on tile, we need\nto generate a \"cpu\" entry for all cpus, including the ones that are\nnot currently allocated for Linux\u0027s use.\n\nSigned-off-by: Chris Metcalf \u003ccmetcalf@tilera.com\u003e\n"
    },
    {
      "commit": "b03a6c4c7d8ebd8118d668eafdb85f5f76b5437f",
      "tree": "f6ca7059e9c1bc1aac9a6741316f8e07ba349f7f",
      "parents": [
        "24f3f6b5eff92608a62449e33bfac0eed1447d02",
        "3561d43fd289f590fdae672e5eb831b8d5cf0bf6"
      ],
      "author": {
        "name": "Chris Metcalf",
        "email": "cmetcalf@tilera.com",
        "time": "Wed Nov 24 13:30:28 2010 -0500"
      },
      "committer": {
        "name": "Chris Metcalf",
        "email": "cmetcalf@tilera.com",
        "time": "Wed Nov 24 13:30:28 2010 -0500"
      },
      "message": "Merge branch \u0027master\u0027 into for-linus\n"
    },
    {
      "commit": "f02cbbe657939489347cbda598401a56913ffcbd",
      "tree": "0d21e68d899958e6549f908b0c715c6f37200027",
      "parents": [
        "e5a06939736277c54a68ae275433db55b99d187c"
      ],
      "author": {
        "name": "Chris Metcalf",
        "email": "cmetcalf@tilera.com",
        "time": "Tue Nov 02 12:05:10 2010 -0400"
      },
      "committer": {
        "name": "Chris Metcalf",
        "email": "cmetcalf@tilera.com",
        "time": "Wed Nov 24 13:13:49 2010 -0500"
      },
      "message": "pci root complex: support for tile architecture\n\nThis change enables PCI root complex support for TILEPro.  Unlike\nTILE-Gx, TILEPro has no support for memory-mapped I/O, so the PCI\nsupport consists of hypervisor upcalls for PIO, DMA, etc.  However,\nthe performance is fine for the devices we have tested with so far\n(1Gb Ethernet, SATA, etc.).\n\nThe \u003casm/io.h\u003e header was tweaked to be a little bit more aggressive\nabout disabling attempts to map/unmap IO port space.  The hacky\n\u003casm/pci-bridge.h\u003e header was rolled into the \u003casm/pci.h\u003e header\nand the result was simplified.  Both of the latter two headers were\npreliminary versions not meant for release before now - oh well.\n\nThere is one quirk for our TILEmpower platform, which accidentally\nnegotiates up to 5GT and needs to be kicked down to 2.5GT.\n\nSigned-off-by: Chris Metcalf \u003ccmetcalf@tilera.com\u003e\n"
    },
    {
      "commit": "e5a06939736277c54a68ae275433db55b99d187c",
      "tree": "94a38715a5af3d269574dd4369e37a0f6f859957",
      "parents": [
        "239b0b441449b2c70492880e6c6a4a885afa74ba"
      ],
      "author": {
        "name": "Chris Metcalf",
        "email": "cmetcalf@tilera.com",
        "time": "Mon Nov 01 17:00:37 2010 -0400"
      },
      "committer": {
        "name": "Chris Metcalf",
        "email": "cmetcalf@tilera.com",
        "time": "Wed Nov 24 13:11:18 2010 -0500"
      },
      "message": "drivers/net/tile/: on-chip network drivers for the tile architecture\n\nThis change adds the first network driver for the tile architecture,\nsupporting the on-chip XGBE and GBE shims.\n\nThe infrastructure is present for the TILE-Gx networking drivers (another\nthree source files in the new directory) but for now the the actual\ntilegx sources are waiting on releasing hardware to initial customers.\n\nNote that arch/tile/include/hv/* are \"upstream\" headers from the\nTilera hypervisor and will probably benefit less from LKML review.\n\nSigned-off-by: Chris Metcalf \u003ccmetcalf@tilera.com\u003e\n"
    },
    {
      "commit": "451a3c24b0135bce54542009b5fde43846c7cf67",
      "tree": "f0fbbcc155aef2a1ffcb8aa593fe7a966d0e6900",
      "parents": [
        "55f6561c6941713ab5ae9180525b026dd40b7d14"
      ],
      "author": {
        "name": "Arnd Bergmann",
        "email": "arnd@arndb.de",
        "time": "Wed Nov 17 16:26:55 2010 +0100"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Nov 17 08:59:32 2010 -0800"
      },
      "message": "BKL: remove extraneous #include \u003csmp_lock.h\u003e\n\nThe big kernel lock has been removed from all these files at some point,\nleaving only the #include.\n\nRemove this too as a cleanup.\n\nSigned-off-by: Arnd Bergmann \u003carnd@arndb.de\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "24f3f6b5eff92608a62449e33bfac0eed1447d02",
      "tree": "7f487b3989657b9c1c896d6c0b3916c60c3ddfa8",
      "parents": [
        "d02db4f8d79c5841ba32b326edb75ea6acd081ca"
      ],
      "author": {
        "name": "Chris Metcalf",
        "email": "cmetcalf@tilera.com",
        "time": "Mon Nov 15 09:18:49 2010 -0500"
      },
      "committer": {
        "name": "Chris Metcalf",
        "email": "cmetcalf@tilera.com",
        "time": "Mon Nov 15 09:18:49 2010 -0500"
      },
      "message": "arch/tile: fix rwlock so would-be write lockers don\u0027t block new readers\n\nThis avoids a deadlock in the IGMP code where one core gets a read\nlock, another core starts trying to get a write lock (thus blocking\nnew readers), and then the first core tries to recursively re-acquire\nthe read lock.\n\nWe still try to preserve some degree of balance by giving priority\nto additional write lockers that come along while the lock is held\nfor write, so they can all complete quickly and return the lock to\nthe readers.\n\nSigned-off-by: Chris Metcalf \u003ccmetcalf@tilera.com\u003e\n"
    },
    {
      "commit": "d02db4f8d79c5841ba32b326edb75ea6acd081ca",
      "tree": "ee753e0f72929c143b16ba4723ff2c1b4eaefade",
      "parents": [
        "2c7387ef9969bb073c25ecbdcc5be30770267b16"
      ],
      "author": {
        "name": "Chris Metcalf",
        "email": "cmetcalf@tilera.com",
        "time": "Mon Nov 01 12:46:10 2010 -0400"
      },
      "committer": {
        "name": "Chris Metcalf",
        "email": "cmetcalf@tilera.com",
        "time": "Mon Nov 01 15:31:42 2010 -0400"
      },
      "message": "arch/tile: mark \"hardwall\" device as non-seekable\n\nArnd\u0027s recent patch series tagged this device with noop_llseek,\nconservatively.  In fact, it should be no_llseek, which we arrange\nfor by opening the device with nonseekable_open().\n\nSigned-off-by: Chris Metcalf \u003ccmetcalf@tilera.com\u003e\n"
    },
    {
      "commit": "2c7387ef9969bb073c25ecbdcc5be30770267b16",
      "tree": "21025658ae17a84b0df346b589eb6c986c6f599d",
      "parents": [
        "1deb9c5dfb179819ecdbf80a1d121e26c63caab3"
      ],
      "author": {
        "name": "Chris Metcalf",
        "email": "cmetcalf@tilera.com",
        "time": "Thu Oct 28 16:07:07 2010 -0400"
      },
      "committer": {
        "name": "Chris Metcalf",
        "email": "cmetcalf@tilera.com",
        "time": "Mon Nov 01 15:31:29 2010 -0400"
      },
      "message": "asm-generic/stat.h: support 64-bit file time_t for stat()\n\nThe existing asm-generic/stat.h specifies st_mtime, etc., as a 32-value,\nand works well for 32-bit architectures (currently microblaze, score,\nand 32-bit tile).  However, for 64-bit architectures it isn\u0027t sufficient\nto return 32 bits of time_t; this isn\u0027t good insurance against the 2037\nrollover.  (It also makes glibc support less convenient, since we can\u0027t\nuse glibc\u0027s handy STAT_IS_KERNEL_STAT mode.)\n\nThis change extends the two \"timespec\" fields for each of the three atime,\nmtime, and ctime fields from \"int\" to \"long\".  As a result, on 32-bit\nplatforms nothing changes, and 64-bit platforms will now work as expected.\n\nThe only wrinkle is 32-bit userspace under 64-bit kernels taking advantage\nof COMPAT mode.  For these, we leave the \"struct stat64\" definitions with\nthe \"int\" versions of the time_t and nsec fields, so that architectures\ncan implement compat_sys_stat64() and friends with sys_stat64(), etc.,\nand get the expected 32-bit structure layout.  This requires a\nfield-by-field copy in the kernel, implemented by the code guarded\nunder __ARCH_WANT_STAT64.\n\nThis does mean that the shape of the \"struct stat\" and \"struct stat64\"\nstructures is different on a 64-bit kernel, but only one of the two\nstructures should ever be used by any given process: \"struct stat\"\nis meant for 64-bit userspace only, and \"struct stat64\" for 32-bit\nuserspace only.  (On a 32-bit kernel the two structures continue to have\nthe same shape, since \"long\" is 32 bits.)\n\nThe alternative is keeping the two structures the same shape on 64-bit\nkernels, which means a 64-bit time_t in \"struct stat64\" for 32-bit\nprocesses.  This is a little unnatural since 32-bit userspace can\u0027t\ndo anything with 64 bits of time_t information, since time_t is just\n\"long\", not \"int64_t\"; and in any case 32-bit userspace might expect\nto be running under a 32-bit kernel, which can\u0027t provide the high 32\nbits anyway.  In the case of a 32-bit kernel we\u0027d then be extending the\nkernel\u0027s 32-bit time_t to 64 bits, then truncating it back to 32 bits\nagain in userspace, for no particular reason.  And, as mentioned above,\nif we have 64-bit time_t for 32-bit processes we can\u0027t easily use glibc\u0027s\nSTAT_IS_KERNEL_STAT, since glibc\u0027s stat structure requires an embedded\n\"struct timespec\", which is a pair of \"long\" (32-bit) values in a 32-bit\nuserspace.  \"Inventive\" solutions are possible, but are pretty hacky.\n\nSigned-off-by: Chris Metcalf \u003ccmetcalf@tilera.com\u003e\nAcked-by: Arnd Bergmann \u003carnd@arndb.de\u003e\n"
    },
    {
      "commit": "1deb9c5dfb179819ecdbf80a1d121e26c63caab3",
      "tree": "c6f6ec6030eb22f094a65c07e63312758d079794",
      "parents": [
        "34a89d26bdc4ba46a406fa3842239e921c493d44"
      ],
      "author": {
        "name": "Chris Metcalf",
        "email": "cmetcalf@tilera.com",
        "time": "Thu Oct 28 15:47:06 2010 -0400"
      },
      "committer": {
        "name": "Chris Metcalf",
        "email": "cmetcalf@tilera.com",
        "time": "Mon Nov 01 15:31:17 2010 -0400"
      },
      "message": "arch/tile: don\u0027t allow user code to set the PL via ptrace or signal return\n\nThe kernel was allowing any component of the pt_regs to be updated either\nby signal handlers writing to the stack, or by processes writing via\nPTRACE_POKEUSR or PTRACE_SETREGS, which meant they could set their PL\nup from 0 to 1 and get access to kernel code and data (or, in practice,\ncause a kernel panic).  We now always reset the ex1 field, allowing the\nuser to set their ICS bit only.\n\nSigned-off-by: Chris Metcalf \u003ccmetcalf@tilera.com\u003e\n"
    },
    {
      "commit": "34a89d26bdc4ba46a406fa3842239e921c493d44",
      "tree": "bbfc0dcd4376f6f6337cc199fa785f53243b36cb",
      "parents": [
        "d59e609d6568ba5ab23c256f412ac5ec360722c1"
      ],
      "author": {
        "name": "Chris Metcalf",
        "email": "cmetcalf@tilera.com",
        "time": "Thu Oct 28 15:03:30 2010 -0400"
      },
      "committer": {
        "name": "Chris Metcalf",
        "email": "cmetcalf@tilera.com",
        "time": "Mon Nov 01 15:31:04 2010 -0400"
      },
      "message": "arch/tile: correct double syscall restart for nested signals\n\nThis change is modelled on similar fixes for other architectures.\nThe pt_regs \"faultnum\" member is set to the trap (fault) number that\ncaused us to enter the kernel, and is INT_SWINT_1 for the syscall software\ninterrupt.  We already supported a pseudo value, INT_SWINT_1_SIGRETURN,\nthat we used for the rt_sigreturn syscall; it avoided the case where\none signal was handled, then we \"tail-called\" to another handler.\n\nThis change avoids the similar case where we start to call one handler,\nthen are preempted into another handler when we start trying to run\nthe first handler.  We clear -\u003efaultnum after calling handle_signal(),\nand to be paranoid also in the case where there was no signal to deliver.\n\nSigned-off-by: Chris Metcalf \u003ccmetcalf@tilera.com\u003e\n"
    },
    {
      "commit": "d59e609d6568ba5ab23c256f412ac5ec360722c1",
      "tree": "2caad01eb530fc5ab31d189c8b9749021a596934",
      "parents": [
        "5d966115de84c22cd4df029cb00be0e51fab6c10"
      ],
      "author": {
        "name": "Chris Metcalf",
        "email": "cmetcalf@tilera.com",
        "time": "Mon Nov 01 15:25:16 2010 -0400"
      },
      "committer": {
        "name": "Chris Metcalf",
        "email": "cmetcalf@tilera.com",
        "time": "Mon Nov 01 15:30:53 2010 -0400"
      },
      "message": "arch/tile: avoid __must_check warning on one strict_strtol check\n\nFor the \"initfree\" boot argument it\u0027s not that big a deal, but\nto avoid warnings in the code, we check for a valid value before\nallowing the specified argument to override the kernel default.\n\nSigned-off-by: Chris Metcalf \u003ccmetcalf@tilera.com\u003e\n"
    },
    {
      "commit": "5d966115de84c22cd4df029cb00be0e51fab6c10",
      "tree": "85095d93900f7f76a7591620651c5480065cacfb",
      "parents": [
        "38a6f4266989c4dae68eccb1a5cb4580a48003e4"
      ],
      "author": {
        "name": "Chris Metcalf",
        "email": "cmetcalf@tilera.com",
        "time": "Mon Nov 01 15:24:29 2010 -0400"
      },
      "committer": {
        "name": "Chris Metcalf",
        "email": "cmetcalf@tilera.com",
        "time": "Mon Nov 01 15:30:42 2010 -0400"
      },
      "message": "arch/tile: bomb raw_local_irq_ to arch_local_irq_\n\nThis completes the tile migration to the new naming scheme for\nthe architecture-specific irq management code.\n\nSigned-off-by: Chris Metcalf \u003ccmetcalf@tilera.com\u003e\n"
    },
    {
      "commit": "38a6f4266989c4dae68eccb1a5cb4580a48003e4",
      "tree": "dba1fecb1c0631f4d9b3dfb9f56d11f92d905a4f",
      "parents": [
        "c8ddb2713c624f432fa5fe3c7ecffcdda46ea0d4"
      ],
      "author": {
        "name": "Chris Metcalf",
        "email": "cmetcalf@tilera.com",
        "time": "Mon Nov 01 15:21:35 2010 -0400"
      },
      "committer": {
        "name": "Chris Metcalf",
        "email": "cmetcalf@tilera.com",
        "time": "Mon Nov 01 15:30:36 2010 -0400"
      },
      "message": "arch/tile: complete migration to new kmap_atomic scheme\n\nThis change makes KM_TYPE_NR independent of the actual deprecated\nlist of km_type values, which are no longer used in tile code anywhere.\nFor now we leave it set to 8, allowing that many nested mappings,\nand thus reserving 32MB of address space.\n\nA few remaining places using KM_* values were cleaned up as well.\n\nSigned-off-by: Chris Metcalf \u003ccmetcalf@tilera.com\u003e\n"
    },
    {
      "commit": "51399a391940e676877c7a791138081f13a0bab7",
      "tree": "6caefb858ee4b31172b85ec7bcedb826a29a551b",
      "parents": [
        "b779b332d0e1ef68f40867948ae5526a3e925163",
        "df4d303647ebe5e2f7e473e32ccef9f8549e9d45"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Oct 28 16:16:39 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Oct 28 16:16:39 2010 -0700"
      },
      "message": "Merge branch \u0027kconfig\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/mmarek/kbuild-2.6\n\n* \u0027kconfig\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/mmarek/kbuild-2.6: (38 commits)\n  kbuild: convert `arch/tile\u0027 to the kconfig mainmenu upgrade\n  README: cite nconfig\n  Revert \"kconfig: Temporarily disable dependency warnings\"\n  kconfig: Use PATH_MAX instead of 128 for path buffer sizes.\n  kconfig: Fix realloc usage()\n  kconfig: Propagate const\n  kconfig: Don\u0027t go out from read config loop when you read new symbol\n  kconfig: fix menuconfig on debian lenny\n  kbuild: migrate all arch to the kconfig mainmenu upgrade\n  kconfig: expand file names\n  kconfig: use the file\u0027s name of sourced file\n  kconfig: constify file name\n  kconfig: don\u0027t emit warning upon rootmenu\u0027s prompt redefinition\n  kconfig: replace KERNELVERSION usage by the mainmenu\u0027s prompt\n  kconfig: delay gconf window initialization\n  kconfig: expand by default the rootmenu\u0027s prompt\n  kconfig: add a symbol string expansion helper\n  kconfig: regen parser\n  kconfig: implement the `mainmenu\u0027 directive\n  kconfig: allow PACKAGE to be defined on the compiler\u0027s command-line\n  ...\n\nFix up trivial conflict in arch/mn10300/Kconfig\n"
    },
    {
      "commit": "df4d303647ebe5e2f7e473e32ccef9f8549e9d45",
      "tree": "44564a78726c31eac7cac0955224f2e3f7f5c181",
      "parents": [
        "70c74e59db7450d5c9164abeb3b6752f8045288b"
      ],
      "author": {
        "name": "Arnaud Lacombe",
        "email": "lacombar@gmail.com",
        "time": "Wed Oct 27 22:24:49 2010 -0400"
      },
      "committer": {
        "name": "Michal Marek",
        "email": "mmarek@suse.cz",
        "time": "Thu Oct 28 22:41:14 2010 +0200"
      },
      "message": "kbuild: convert `arch/tile\u0027 to the kconfig mainmenu upgrade\n\nSigned-off-by: Arnaud Lacombe \u003clacombar@gmail.com\u003e\nSigned-off-by: Michal Marek \u003cmmarek@suse.cz\u003e\n"
    },
    {
      "commit": "61d8e11e519ee7912ab59610fba1aaf08e3c1d84",
      "tree": "f06e035c88cbf508eb6e24875b878ee78d581cf8",
      "parents": [
        "c3b92ce9e75f6353104fc7f8e32fb9fdb2550ad0"
      ],
      "author": {
        "name": "Zimny Lech",
        "email": "napohybelskurwysynom2010@gmail.com",
        "time": "Wed Oct 27 15:34:53 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Oct 27 18:03:18 2010 -0700"
      },
      "message": "Remove duplicate includes from many files\n\nSigned-off-by: Zimny Lech \u003cnapohybelskurwysynom2010@gmail.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "8c0acac3676103113a2e259291a07c073ac07879",
      "tree": "dd54dbe6d01be0f1afb1f06fc0eff51518fc39a0",
      "parents": [
        "a9384e23ab19eba0dedb861ebcba805b98a3b7a5"
      ],
      "author": {
        "name": "Namhyung Kim",
        "email": "namhyung@gmail.com",
        "time": "Wed Oct 27 15:34:04 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Oct 27 18:03:12 2010 -0700"
      },
      "message": "ptrace: cleanup arch_ptrace() on tile\n\nRemove checking @addr less than 0 because @addr is now unsigned.\n\nSigned-off-by: Namhyung Kim \u003cnamhyung@gmail.com\u003e\nAcked-by: Chris Metcalf \u003ccmetcalf@tilera.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "9b05a69e0534ec70bc94921936ffa05b330507cb",
      "tree": "4116a7b7db286edf9486a29a7742d47fa67baa68",
      "parents": [
        "9fed81dc40f5a1ac2783bcc78d4029873be72894"
      ],
      "author": {
        "name": "Namhyung Kim",
        "email": "namhyung@gmail.com",
        "time": "Wed Oct 27 15:33:47 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Oct 27 18:03:10 2010 -0700"
      },
      "message": "ptrace: change signature of arch_ptrace()\n\nFix up the arguments to arch_ptrace() to take account of the fact that\n@addr and @data are now unsigned long rather than long as of a preceding\npatch in this series.\n\nSigned-off-by: Namhyung Kim \u003cnamhyung@gmail.com\u003e\nCc: \u003clinux-arch@vger.kernel.org\u003e\nAcked-by: Roland McGrath \u003croland@redhat.com\u003e\nAcked-by: David Howells \u003cdhowells@redhat.com\u003e\nAcked-by: Geert Uytterhoeven \u003cgeert@linux-m68k.org\u003e\nAcked-by: David S. Miller \u003cdavem@davemloft.net\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "d31eb5194bbdcc7db9fd6956c293e45093bfb394",
      "tree": "2cf497c8708786f99727411a07fcc63621cfec40",
      "parents": [
        "20273941f2129aa5a432796d98a276ed73d60782"
      ],
      "author": {
        "name": "FUJITA Tomonori",
        "email": "fujita.tomonori@lab.ntt.co.jp",
        "time": "Wed Oct 27 15:32:58 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Oct 27 18:03:05 2010 -0700"
      },
      "message": "tile: enable ARCH_DMA_ADDR_T_64BIT\n\nSigned-off-by: FUJITA Tomonori \u003cfujita.tomonori@lab.ntt.co.jp\u003e\nAcked-by: Chris Metcalf \u003ccmetcalf@tilera.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "20273941f2129aa5a432796d98a276ed73d60782",
      "tree": "85da0d951ac10f239f81ad7f69559fdeb692095b",
      "parents": [
        "a8e23a291852cd7c4fb5ca696dbb93912185ad10"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "a.p.zijlstra@chello.nl",
        "time": "Wed Oct 27 15:32:58 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Oct 27 18:03:05 2010 -0700"
      },
      "message": "mm: fix race in kunmap_atomic()\n\nChristoph reported a nice splat which illustrated a race in the new stack\nbased kmap_atomic implementation.\n\nThe problem is that we pop our stack slot before we\u0027re completely done\nresetting its state -- in particular clearing the PTE (sometimes that\u0027s\nCONFIG_DEBUG_HIGHMEM).  If an interrupt happens before we actually clear\nthe PTE used for the last slot, that interrupt can reuse the slot in a\ndirty state, which triggers a BUG in kmap_atomic().\n\nFix this by introducing kmap_atomic_idx() which reports the current slot\nindex without actually releasing it and use that to find the PTE and delay\nthe _pop() until after we\u0027re completely done.\n\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nReported-by: Christoph Hellwig \u003chch@infradead.org\u003e\nAcked-by: Rik van Riel \u003criel@redhat.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "e404f91ed2180dfecbab15dd4d39c543353385fb",
      "tree": "c256e29b1c738d5e5b5478f19b369b1fd90bd1e2",
      "parents": [
        "18a043f9413277523cf5011e594caa1747db4948",
        "e18105c128734b1671739ad4d85e216ebec28c61"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Oct 26 17:25:38 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Oct 26 17:25:38 2010 -0700"
      },
      "message": "Merge git://git.kernel.org/pub/scm/linux/kernel/git/cmetcalf/linux-tile\n\n* git://git.kernel.org/pub/scm/linux/kernel/git/cmetcalf/linux-tile:\n  arch/tile: convert a BUG_ON to BUILD_BUG_ON\n  arch/tile: make ptrace() work properly for TILE-Gx COMPAT mode\n  arch/tile: support new info op generated by compiler\n  arch/tile: minor whitespace/naming changes for string support files\n  arch/tile: enable single-step support for TILE-Gx\n  arch/tile: parameterize system PLs to support KVM port\n  arch/tile: add Tilera\u0027s \u003carch/sim.h\u003e header as an open-source header\n  arch/tile: Bomb C99 comments to C89 comments in tile\u0027s \u003carch/sim_def.h\u003e\n  arch/tile: prevent corrupt top frame from causing backtracer runaway\n  arch/tile: various top-level Makefile cleanups\n  arch/tile: change lower bound on syscall error return to -4095\n  arch/tile: properly export __mb_incoherent for modules\n  arch/tile: provide a definition of MAP_STACK\n  kmemleak: add TILE to the list of supported architectures.\n  char: hvc: check for error case\n  arch/tile: Add a warning if we try to allocate too much vmalloc memory.\n  arch/tile: update some comments to clarify register usage.\n  arch/tile: use better \"punctuation\" for VMSPLIT_3_5G and friends\n  arch/tile: Use \u003casm-generic/syscalls.h\u003e\n  tile: replace some BUG_ON checks with BUILD_BUG_ON checks\n"
    },
    {
      "commit": "ece0e2b6406a995c371e0311190631ea34ad851a",
      "tree": "726a516a91f5f7efe9dbb247ba28d019981d456e",
      "parents": [
        "3e4d3af501cccdc8a8cca41bdbe57d54ad7e7e73"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "a.p.zijlstra@chello.nl",
        "time": "Tue Oct 26 14:21:52 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Oct 26 16:52:08 2010 -0700"
      },
      "message": "mm: remove pte_*map_nested()\n\nSince we no longer need to provide KM_type, the whole pte_*map_nested()\nAPI is now redundant, remove it.\n\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nAcked-by: Chris Metcalf \u003ccmetcalf@tilera.com\u003e\nCc: David Howells \u003cdhowells@redhat.com\u003e\nCc: Hugh Dickins \u003chughd@google.com\u003e\nCc: Rik van Riel \u003criel@redhat.com\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nCc: \"H. Peter Anvin\" \u003chpa@zytor.com\u003e\nCc: Steven Rostedt \u003crostedt@goodmis.org\u003e\nCc: Russell King \u003crmk@arm.linux.org.uk\u003e\nCc: Ralf Baechle \u003cralf@linux-mips.org\u003e\nCc: David Miller \u003cdavem@davemloft.net\u003e\nCc: Paul Mackerras \u003cpaulus@samba.org\u003e\nCc: Benjamin Herrenschmidt \u003cbenh@kernel.crashing.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "3e4d3af501cccdc8a8cca41bdbe57d54ad7e7e73",
      "tree": "2ce507f7ec7275563653e52f18606aba4f99b7f1",
      "parents": [
        "61ecdb801ef2cd28e32442383106d7837d76deac"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "a.p.zijlstra@chello.nl",
        "time": "Tue Oct 26 14:21:51 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Oct 26 16:52:08 2010 -0700"
      },
      "message": "mm: stack based kmap_atomic()\n\nKeep the current interface but ignore the KM_type and use a stack based\napproach.\n\nThe advantage is that we get rid of crappy code like:\n\n\t#define __KM_PTE\t\t\t\\\n\t\t(in_nmi() ? KM_NMI_PTE : \t\\\n\t\t in_irq() ? KM_IRQ_PTE :\t\\\n\t\t KM_PTE0)\n\nand in general can stop worrying about what context we\u0027re in and what kmap\nslots might be appropriate for that.\n\nThe downside is that FRV kmap_atomic() gets more expensive.\n\nFor now we use a CPP trick suggested by Andrew:\n\n  #define kmap_atomic(page, args...) __kmap_atomic(page)\n\nto avoid having to touch all kmap_atomic() users in a single patch.\n\n[ not compiled on:\n  - mn10300: the arch doesn\u0027t actually build with highmem to begin with ]\n\n[akpm@linux-foundation.org: coding-style fixes]\n[akpm@linux-foundation.org: fix up drivers/gpu/drm/i915/intel_overlay.c]\nAcked-by: Rik van Riel \u003criel@redhat.com\u003e\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nAcked-by: Chris Metcalf \u003ccmetcalf@tilera.com\u003e\nCc: David Howells \u003cdhowells@redhat.com\u003e\nCc: Hugh Dickins \u003chughd@google.com\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nCc: \"H. Peter Anvin\" \u003chpa@zytor.com\u003e\nCc: Steven Rostedt \u003crostedt@goodmis.org\u003e\nCc: Russell King \u003crmk@arm.linux.org.uk\u003e\nCc: Ralf Baechle \u003cralf@linux-mips.org\u003e\nCc: David Miller \u003cdavem@davemloft.net\u003e\nCc: Paul Mackerras \u003cpaulus@samba.org\u003e\nCc: Benjamin Herrenschmidt \u003cbenh@kernel.crashing.org\u003e\nCc: Dave Airlie \u003cairlied@linux.ie\u003e\nCc: Li Zefan \u003clizf@cn.fujitsu.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "db08bf0877f3464fb0c2c37dcdd9f9683192ea26",
      "tree": "c9d47587ac07cb1622156899414c78f097fcb0c9",
      "parents": [
        "092e0e7e520a1fca03e13c9f2d157432a8657ff2",
        "35dbc0e020c6587f78a6c17693beca73aead7b54"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Oct 22 11:17:06 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Oct 22 11:17:06 2010 -0700"
      },
      "message": "Merge git://git.kernel.org/pub/scm/linux/kernel/git/arnd/asm-generic\n\n* git://git.kernel.org/pub/scm/linux/kernel/git/arnd/asm-generic:\n  asm-generic/io.h: allow people to override individual funcs\n  bitops: remove duplicated extern declarations\n  bitops: make asm-generic/bitops/find.h more generic\n  asm-generic: kdebug.h: Checkpatch cleanup\n  asm-generic: fcntl: make exported headers use strict posix types\n  asm-generic: cmpxchg does not handle non-long arguments\n  asm-generic: make atomic_add_unless a function\n"
    },
    {
      "commit": "092e0e7e520a1fca03e13c9f2d157432a8657ff2",
      "tree": "451897252c4c08c4b5a8ef535da156f1e817e80b",
      "parents": [
        "79f14b7c56d3b3ba58f8b43d1f70b9b71477a800",
        "776c163b1b93c8dfa5edba885bc2bfbc2d228a5f"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Oct 22 10:52:56 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Oct 22 10:52:56 2010 -0700"
      },
      "message": "Merge branch \u0027llseek\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/arnd/bkl\n\n* \u0027llseek\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/arnd/bkl:\n  vfs: make no_llseek the default\n  vfs: don\u0027t use BKL in default_llseek\n  llseek: automatically add .llseek fop\n  libfs: use generic_file_llseek for simple_attr\n  mac80211: disallow seeks in minstrel debug code\n  lirc: make chardev nonseekable\n  viotape: use noop_llseek\n  raw: use explicit llseek file operations\n  ibmasmfs: use generic_file_llseek\n  spufs: use llseek in all file operations\n  arm/omap: use generic_file_llseek in iommu_debug\n  lkdtm: use generic_file_llseek in debugfs\n  net/wireless: use generic_file_llseek in debugfs\n  drm: use noop_llseek\n"
    },
    {
      "commit": "e36f561a2c88394ef2708f1ab300fe8a79e9f651",
      "tree": "385f378c4240955e4356d49686a8ef606a82a7c1",
      "parents": [
        "70ada77920723fbc2b35e9b301022fb1e166b41b",
        "df9ee29270c11dba7d0fe0b83ce47a4d8e8d2101"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Oct 21 14:37:27 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Oct 21 14:37:27 2010 -0700"
      },
      "message": "Merge git://git.kernel.org/pub/scm/linux/kernel/git/dhowells/linux-2.6-irqflags\n\n* git://git.kernel.org/pub/scm/linux/kernel/git/dhowells/linux-2.6-irqflags:\n  Fix IRQ flag handling naming\n  MIPS: Add missing #inclusions of \u003clinux/irq.h\u003e\n  smc91x: Add missing #inclusion of \u003clinux/irq.h\u003e\n  Drop a couple of unnecessary asm/system.h inclusions\n  SH: Add missing consts to sys_execve() declaration\n  Blackfin: Rename IRQ flags handling functions\n  Blackfin: Add missing dep to asm/irqflags.h\n  Blackfin: Rename DES PC2() symbol to avoid collision\n  Blackfin: Split the BF532 BFIN_*_FIO_FLAG() functions to their own header\n  Blackfin: Split PLL code from mach-specific cdef headers\n"
    },
    {
      "commit": "e18105c128734b1671739ad4d85e216ebec28c61",
      "tree": "66846afddb58b824b3146a1ea10cbffcb6f2d206",
      "parents": [
        "ce7f2a39675ea5e8e27b3f3bb03e5041c7d10412"
      ],
      "author": {
        "name": "Chris Metcalf",
        "email": "cmetcalf@tilera.com",
        "time": "Thu Oct 14 16:50:26 2010 -0400"
      },
      "committer": {
        "name": "Chris Metcalf",
        "email": "cmetcalf@tilera.com",
        "time": "Fri Oct 15 15:40:03 2010 -0400"
      },
      "message": "arch/tile: convert a BUG_ON to BUILD_BUG_ON\n\nInspired by Akinobu Mita\u0027s cleanup work.\n\nSigned-off-by: Chris Metcalf \u003ccmetcalf@tilera.com\u003e\n"
    },
    {
      "commit": "ce7f2a39675ea5e8e27b3f3bb03e5041c7d10412",
      "tree": "5552e14b279cac5acc56c2b9cd3114d8e612a078",
      "parents": [
        "c569cac8b69397d8bc80f95bc6edf13ed902e28b"
      ],
      "author": {
        "name": "Chris Metcalf",
        "email": "cmetcalf@tilera.com",
        "time": "Thu Oct 14 16:48:00 2010 -0400"
      },
      "committer": {
        "name": "Chris Metcalf",
        "email": "cmetcalf@tilera.com",
        "time": "Fri Oct 15 15:39:44 2010 -0400"
      },
      "message": "arch/tile: make ptrace() work properly for TILE-Gx COMPAT mode\n\nPreviously, we tried to pass 64-bit arguments through the\n\"COMPAT\" mode 32-bit syscall API, which turned out not to work\nwell.  Now we just use straight 32-bit arguments in COMPAT mode,\nthus requiring individual registers to be read/written with\ntwo syscalls.  Of course this is uncommon, since usually all\nthe registers are read or written at once.\n\nThe restructuring applies to all the tile platforms, but is\nplausibly better than the original code in any case.\n\nSigned-off-by: Chris Metcalf \u003ccmetcalf@tilera.com\u003e\n"
    },
    {
      "commit": "c569cac8b69397d8bc80f95bc6edf13ed902e28b",
      "tree": "9a51659777f876f401189fe17d35c69430a91797",
      "parents": [
        "29507663dfa2590647a1ef66f3652a0cac033eca"
      ],
      "author": {
        "name": "Chris Metcalf",
        "email": "cmetcalf@tilera.com",
        "time": "Thu Oct 14 16:46:22 2010 -0400"
      },
      "committer": {
        "name": "Chris Metcalf",
        "email": "cmetcalf@tilera.com",
        "time": "Fri Oct 15 15:39:25 2010 -0400"
      },
      "message": "arch/tile: support new info op generated by compiler\n\nThis just syncs the backtracing support in the kernel to the\nupstream backtrace library.\n\nSigned-off-by: Chris Metcalf \u003ccmetcalf@tilera.com\u003e\n"
    },
    {
      "commit": "29507663dfa2590647a1ef66f3652a0cac033eca",
      "tree": "80509f81ce8e6b6846f78e62cb0cbf1ac03321be",
      "parents": [
        "233325b94999d4bb8df227bb39904a57509e4995"
      ],
      "author": {
        "name": "Chris Metcalf",
        "email": "cmetcalf@tilera.com",
        "time": "Thu Oct 14 16:39:42 2010 -0400"
      },
      "committer": {
        "name": "Chris Metcalf",
        "email": "cmetcalf@tilera.com",
        "time": "Fri Oct 15 15:38:54 2010 -0400"
      },
      "message": "arch/tile: minor whitespace/naming changes for string support files\n\nOur internal process shares memcpy, memset, etc., with libc, and\nwe did some minor tweaking as part of moving from uclibc to glibc,\nwhich is now reflected in the kernel versions of these files.\n\nThere are no semantic changes in this commit, just whitespace\n(memcpy_32.S now properly uses tabs), naming (memmove.c instead\nof memmove_32.c, since TILE-Gx shares the file with TILEPro),\nand a couple of other minor tweaks.\n\nSigned-off-by: Chris Metcalf \u003ccmetcalf@tilera.com\u003e\n"
    },
    {
      "commit": "233325b94999d4bb8df227bb39904a57509e4995",
      "tree": "1f195bded03ce5aa483b41531e739a8cc61ce392",
      "parents": [
        "a78c942df64ef4cf495fd4d8715e48501bd7f8a4"
      ],
      "author": {
        "name": "Chris Metcalf",
        "email": "cmetcalf@tilera.com",
        "time": "Thu Oct 14 16:32:41 2010 -0400"
      },
      "committer": {
        "name": "Chris Metcalf",
        "email": "cmetcalf@tilera.com",
        "time": "Fri Oct 15 15:38:26 2010 -0400"
      },
      "message": "arch/tile: enable single-step support for TILE-Gx\n\nThis is not quite the complete support, since we\u0027re not yet shipping\nintvec_64.S, but it is the support relevant to the set of files we are\ncurrently shipping, and makes it easier to track changes between\nour internal sources and our public GIT repository.\n\nSigned-off-by: Chris Metcalf \u003ccmetcalf@tilera.com\u003e\n"
    },
    {
      "commit": "a78c942df64ef4cf495fd4d8715e48501bd7f8a4",
      "tree": "fe44212d36e6ca23dbe9f2c633824389216a3d1d",
      "parents": [
        "bf65e440e8248f22b2eacf8d47961bb9d52260f7"
      ],
      "author": {
        "name": "Chris Metcalf",
        "email": "cmetcalf@tilera.com",
        "time": "Thu Oct 14 16:23:03 2010 -0400"
      },
      "committer": {
        "name": "Chris Metcalf",
        "email": "cmetcalf@tilera.com",
        "time": "Fri Oct 15 15:38:09 2010 -0400"
      },
      "message": "arch/tile: parameterize system PLs to support KVM port\n\nWhile not a port to KVM (yet), this change modifies the kernel\nto be able to build either at PL1 or at PL2 with a suitable\nconfig switch.  Pushing up this change avoids handling branch\nmerge issues going forward with the KVM work.\n\nSigned-off-by: Chris Metcalf \u003ccmetcalf@tilera.com\u003e\n"
    },
    {
      "commit": "bf65e440e8248f22b2eacf8d47961bb9d52260f7",
      "tree": "49189dfa1bc90732caedc1e872baed9fb360adf0",
      "parents": [
        "4fe938c5134fce1f25e1261eef6252fb47634962"
      ],
      "author": {
        "name": "Chris Metcalf",
        "email": "cmetcalf@tilera.com",
        "time": "Thu Oct 14 16:00:11 2010 -0400"
      },
      "committer": {
        "name": "Chris Metcalf",
        "email": "cmetcalf@tilera.com",
        "time": "Fri Oct 15 15:36:54 2010 -0400"
      },
      "message": "arch/tile: add Tilera\u0027s \u003carch/sim.h\u003e header as an open-source header\n\nThis change adds one of the Tilera standard \u003carch\u003e headers to the set\nof headers shipped with Linux.  The \u003carch/sim.h\u003e header provides\nmethods for programmatically interacting with the Tilera simulator.\n\nThe current \u003carch/sim.h\u003e provides inline assembly for the _sim_syscall\nfunction, so the declaration and definition previously provided\nmanually in Linux are no longer needed.  We now use the standard\nsim_validate_lines_evicted() method from \u003carch/sim.h\u003e rather than\nrolling our own direct call to sim_syscall().\n\nSigned-off-by: Chris Metcalf \u003ccmetcalf@tilera.com\u003e\n"
    },
    {
      "commit": "4fe938c5134fce1f25e1261eef6252fb47634962",
      "tree": "12cb1362006cefc53ca77832e4c365eccdd9d97e",
      "parents": [
        "dabe98c972091818762e02841ab1f982e573e7d0"
      ],
      "author": {
        "name": "Chris Metcalf",
        "email": "cmetcalf@tilera.com",
        "time": "Thu Oct 14 15:57:59 2010 -0400"
      },
      "committer": {
        "name": "Chris Metcalf",
        "email": "cmetcalf@tilera.com",
        "time": "Fri Oct 15 15:35:25 2010 -0400"
      },
      "message": "arch/tile: Bomb C99 comments to C89 comments in tile\u0027s \u003carch/sim_def.h\u003e\n\nAlso, sync the file up the upstream version (an additional #define).\n\nSigned-off-by: Chris Metcalf \u003ccmetcalf@tilera.com\u003e\n"
    },
    {
      "commit": "6038f373a3dc1f1c26496e60b6c40b164716f07e",
      "tree": "a0d3bbd026eea41b9fc36b8c722cbaf56cd9f825",
      "parents": [
        "1ec5584e3edf9c4bf2c88c846534d19cf986ba11"
      ],
      "author": {
        "name": "Arnd Bergmann",
        "email": "arnd@arndb.de",
        "time": "Sun Aug 15 18:52:59 2010 +0200"
      },
      "committer": {
        "name": "Arnd Bergmann",
        "email": "arnd@arndb.de",
        "time": "Fri Oct 15 15:53:27 2010 +0200"
      },
      "message": "llseek: automatically add .llseek fop\n\nAll file_operations should get a .llseek operation so we can make\nnonseekable_open the default for future file operations without a\n.llseek pointer.\n\nThe three cases that we can automatically detect are no_llseek, seq_lseek\nand default_llseek. For cases where we can we can automatically prove that\nthe file offset is always ignored, we use noop_llseek, which maintains\nthe current behavior of not returning an error from a seek.\n\nNew drivers should normally not use noop_llseek but instead use no_llseek\nand call nonseekable_open at open time.  Existing drivers can be converted\nto do the same when the maintainer knows for certain that no user code\nrelies on calling seek on the device file.\n\nThe generated code is often incorrectly indented and right now contains\ncomments that clarify for each added line why a specific variant was\nchosen. In the version that gets submitted upstream, the comments will\nbe gone and I will manually fix the indentation, because there does not\nseem to be a way to do that using coccinelle.\n\nSome amount of new code is currently sitting in linux-next that should get\nthe same modifications, which I will do at the end of the merge window.\n\nMany thanks to Julia Lawall for helping me learn to write a semantic\npatch that does all this.\n\n\u003d\u003d\u003d\u003d\u003d begin semantic patch \u003d\u003d\u003d\u003d\u003d\n// This adds an llseek\u003d method to all file operations,\n// as a preparation for making no_llseek the default.\n//\n// The rules are\n// - use no_llseek explicitly if we do nonseekable_open\n// - use seq_lseek for sequential files\n// - use default_llseek if we know we access f_pos\n// - use noop_llseek if we know we don\u0027t access f_pos,\n//   but we still want to allow users to call lseek\n//\n@ open1 exists @\nidentifier nested_open;\n@@\nnested_open(...)\n{\n\u003c+...\nnonseekable_open(...)\n...+\u003e\n}\n\n@ open exists@\nidentifier open_f;\nidentifier i, f;\nidentifier open1.nested_open;\n@@\nint open_f(struct inode *i, struct file *f)\n{\n\u003c+...\n(\nnonseekable_open(...)\n|\nnested_open(...)\n)\n...+\u003e\n}\n\n@ read disable optional_qualifier exists @\nidentifier read_f;\nidentifier f, p, s, off;\ntype ssize_t, size_t, loff_t;\nexpression E;\nidentifier func;\n@@\nssize_t read_f(struct file *f, char *p, size_t s, loff_t *off)\n{\n\u003c+...\n(\n   *off \u003d E\n|\n   *off +\u003d E\n|\n   func(..., off, ...)\n|\n   E \u003d *off\n)\n...+\u003e\n}\n\n@ read_no_fpos disable optional_qualifier exists @\nidentifier read_f;\nidentifier f, p, s, off;\ntype ssize_t, size_t, loff_t;\n@@\nssize_t read_f(struct file *f, char *p, size_t s, loff_t *off)\n{\n... when !\u003d off\n}\n\n@ write @\nidentifier write_f;\nidentifier f, p, s, off;\ntype ssize_t, size_t, loff_t;\nexpression E;\nidentifier func;\n@@\nssize_t write_f(struct file *f, const char *p, size_t s, loff_t *off)\n{\n\u003c+...\n(\n  *off \u003d E\n|\n  *off +\u003d E\n|\n  func(..., off, ...)\n|\n  E \u003d *off\n)\n...+\u003e\n}\n\n@ write_no_fpos @\nidentifier write_f;\nidentifier f, p, s, off;\ntype ssize_t, size_t, loff_t;\n@@\nssize_t write_f(struct file *f, const char *p, size_t s, loff_t *off)\n{\n... when !\u003d off\n}\n\n@ fops0 @\nidentifier fops;\n@@\nstruct file_operations fops \u003d {\n ...\n};\n\n@ has_llseek depends on fops0 @\nidentifier fops0.fops;\nidentifier llseek_f;\n@@\nstruct file_operations fops \u003d {\n...\n .llseek \u003d llseek_f,\n...\n};\n\n@ has_read depends on fops0 @\nidentifier fops0.fops;\nidentifier read_f;\n@@\nstruct file_operations fops \u003d {\n...\n .read \u003d read_f,\n...\n};\n\n@ has_write depends on fops0 @\nidentifier fops0.fops;\nidentifier write_f;\n@@\nstruct file_operations fops \u003d {\n...\n .write \u003d write_f,\n...\n};\n\n@ has_open depends on fops0 @\nidentifier fops0.fops;\nidentifier open_f;\n@@\nstruct file_operations fops \u003d {\n...\n .open \u003d open_f,\n...\n};\n\n// use no_llseek if we call nonseekable_open\n////////////////////////////////////////////\n@ nonseekable1 depends on !has_llseek \u0026\u0026 has_open @\nidentifier fops0.fops;\nidentifier nso ~\u003d \"nonseekable_open\";\n@@\nstruct file_operations fops \u003d {\n...  .open \u003d nso, ...\n+.llseek \u003d no_llseek, /* nonseekable */\n};\n\n@ nonseekable2 depends on !has_llseek @\nidentifier fops0.fops;\nidentifier open.open_f;\n@@\nstruct file_operations fops \u003d {\n...  .open \u003d open_f, ...\n+.llseek \u003d no_llseek, /* open uses nonseekable */\n};\n\n// use seq_lseek for sequential files\n/////////////////////////////////////\n@ seq depends on !has_llseek @\nidentifier fops0.fops;\nidentifier sr ~\u003d \"seq_read\";\n@@\nstruct file_operations fops \u003d {\n...  .read \u003d sr, ...\n+.llseek \u003d seq_lseek, /* we have seq_read */\n};\n\n// use default_llseek if there is a readdir\n///////////////////////////////////////////\n@ fops1 depends on !has_llseek \u0026\u0026 !nonseekable1 \u0026\u0026 !nonseekable2 \u0026\u0026 !seq @\nidentifier fops0.fops;\nidentifier readdir_e;\n@@\n// any other fop is used that changes pos\nstruct file_operations fops \u003d {\n... .readdir \u003d readdir_e, ...\n+.llseek \u003d default_llseek, /* readdir is present */\n};\n\n// use default_llseek if at least one of read/write touches f_pos\n/////////////////////////////////////////////////////////////////\n@ fops2 depends on !fops1 \u0026\u0026 !has_llseek \u0026\u0026 !nonseekable1 \u0026\u0026 !nonseekable2 \u0026\u0026 !seq @\nidentifier fops0.fops;\nidentifier read.read_f;\n@@\n// read fops use offset\nstruct file_operations fops \u003d {\n... .read \u003d read_f, ...\n+.llseek \u003d default_llseek, /* read accesses f_pos */\n};\n\n@ fops3 depends on !fops1 \u0026\u0026 !fops2 \u0026\u0026 !has_llseek \u0026\u0026 !nonseekable1 \u0026\u0026 !nonseekable2 \u0026\u0026 !seq @\nidentifier fops0.fops;\nidentifier write.write_f;\n@@\n// write fops use offset\nstruct file_operations fops \u003d {\n... .write \u003d write_f, ...\n+\t.llseek \u003d default_llseek, /* write accesses f_pos */\n};\n\n// Use noop_llseek if neither read nor write accesses f_pos\n///////////////////////////////////////////////////////////\n\n@ fops4 depends on !fops1 \u0026\u0026 !fops2 \u0026\u0026 !fops3 \u0026\u0026 !has_llseek \u0026\u0026 !nonseekable1 \u0026\u0026 !nonseekable2 \u0026\u0026 !seq @\nidentifier fops0.fops;\nidentifier read_no_fpos.read_f;\nidentifier write_no_fpos.write_f;\n@@\n// write fops use offset\nstruct file_operations fops \u003d {\n...\n .write \u003d write_f,\n .read \u003d read_f,\n...\n+.llseek \u003d noop_llseek, /* read and write both use no f_pos */\n};\n\n@ depends on has_write \u0026\u0026 !has_read \u0026\u0026 !fops1 \u0026\u0026 !fops2 \u0026\u0026 !has_llseek \u0026\u0026 !nonseekable1 \u0026\u0026 !nonseekable2 \u0026\u0026 !seq @\nidentifier fops0.fops;\nidentifier write_no_fpos.write_f;\n@@\nstruct file_operations fops \u003d {\n... .write \u003d write_f, ...\n+.llseek \u003d noop_llseek, /* write uses no f_pos */\n};\n\n@ depends on has_read \u0026\u0026 !has_write \u0026\u0026 !fops1 \u0026\u0026 !fops2 \u0026\u0026 !has_llseek \u0026\u0026 !nonseekable1 \u0026\u0026 !nonseekable2 \u0026\u0026 !seq @\nidentifier fops0.fops;\nidentifier read_no_fpos.read_f;\n@@\nstruct file_operations fops \u003d {\n... .read \u003d read_f, ...\n+.llseek \u003d noop_llseek, /* read uses no f_pos */\n};\n\n@ depends on !has_read \u0026\u0026 !has_write \u0026\u0026 !fops1 \u0026\u0026 !fops2 \u0026\u0026 !has_llseek \u0026\u0026 !nonseekable1 \u0026\u0026 !nonseekable2 \u0026\u0026 !seq @\nidentifier fops0.fops;\n@@\nstruct file_operations fops \u003d {\n...\n+.llseek \u003d noop_llseek, /* no read or write fn */\n};\n\u003d\u003d\u003d\u003d\u003d End semantic patch \u003d\u003d\u003d\u003d\u003d\n\nSigned-off-by: Arnd Bergmann \u003carnd@arndb.de\u003e\nCc: Julia Lawall \u003cjulia@diku.dk\u003e\nCc: Christoph Hellwig \u003chch@infradead.org\u003e\n"
    },
    {
      "commit": "dabe98c972091818762e02841ab1f982e573e7d0",
      "tree": "3770c66ab60cc34225158e87a6532afa5704806c",
      "parents": [
        "45123f7e74e004848da765f3182cd401a38d354d"
      ],
      "author": {
        "name": "Chris Metcalf",
        "email": "cmetcalf@tilera.com",
        "time": "Thu Oct 14 15:19:04 2010 -0400"
      },
      "committer": {
        "name": "Chris Metcalf",
        "email": "cmetcalf@tilera.com",
        "time": "Thu Oct 14 15:19:04 2010 -0400"
      },
      "message": "arch/tile: prevent corrupt top frame from causing backtracer runaway\n\nThe backtracer will normally cut itself off after 100 frames anyway,\nbut it\u0027s messy.  With this change we notice that the frame being\nreported is the same as the last one, and cut off the dump with a\nmessage similar to what gdb displays in the same circumstance.\n\nSigned-off-by: Chris Metcalf \u003ccmetcalf@tilera.com\u003e\n"
    },
    {
      "commit": "45123f7e74e004848da765f3182cd401a38d354d",
      "tree": "f546a5d605f73b4d546da156009737ef234fdc74",
      "parents": [
        "a4dbc5ee52e8741522a2f87067b80116c6c7a934"
      ],
      "author": {
        "name": "Chris Metcalf",
        "email": "cmetcalf@tilera.com",
        "time": "Thu Oct 14 15:16:59 2010 -0400"
      },
      "committer": {
        "name": "Chris Metcalf",
        "email": "cmetcalf@tilera.com",
        "time": "Thu Oct 14 15:16:59 2010 -0400"
      },
      "message": "arch/tile: various top-level Makefile cleanups\n\nAvoid a compile failure if CONFIG_DEBUG_EXTRA_FLAGS is empty (\"\");\nprovide an \"install\" hook as well as a matching archhelp target;\nand some minor whitespace cleanup.\n\nSigned-off-by: Chris Metcalf \u003ccmetcalf@tilera.com\u003e\n"
    },
    {
      "commit": "a4dbc5ee52e8741522a2f87067b80116c6c7a934",
      "tree": "fc746caaac94740c81efb3ac5316fa01ab88cbed",
      "parents": [
        "13c9d5a6309763a494f7c3ed5aa45fb473985fd7"
      ],
      "author": {
        "name": "Chris Metcalf",
        "email": "cmetcalf@tilera.com",
        "time": "Thu Oct 14 15:14:29 2010 -0400"
      },
      "committer": {
        "name": "Chris Metcalf",
        "email": "cmetcalf@tilera.com",
        "time": "Thu Oct 14 15:14:29 2010 -0400"
      },
      "message": "arch/tile: change lower bound on syscall error return to -4095\n\nPreviously we were using -1023, which is fine for normal syscall\nerror returns, but the common value in use for other platforms\nis -4095, and one Tilera-specific driver does use values in the\n-1100 range, so tickled this bug.\n\nSigned-off-by: Chris Metcalf \u003ccmetcalf@tilera.com\u003e\n"
    },
    {
      "commit": "13c9d5a6309763a494f7c3ed5aa45fb473985fd7",
      "tree": "dd1feef325e2ed2f16ea07156155c865996a5367",
      "parents": [
        "bbacff94d0c38163ef01361de006797c92e69e58"
      ],
      "author": {
        "name": "Chris Metcalf",
        "email": "cmetcalf@tilera.com",
        "time": "Thu Oct 14 15:12:55 2010 -0400"
      },
      "committer": {
        "name": "Chris Metcalf",
        "email": "cmetcalf@tilera.com",
        "time": "Thu Oct 14 15:12:55 2010 -0400"
      },
      "message": "arch/tile: properly export __mb_incoherent for modules\n\nSigned-off-by: Chris Metcalf \u003ccmetcalf@tilera.com\u003e\n"
    },
    {
      "commit": "bbacff94d0c38163ef01361de006797c92e69e58",
      "tree": "3c730c114a450c7cf97cd7841f231eb5f8f1e4da",
      "parents": [
        "6b945df74233386aab526cddd3593ed4b854f574"
      ],
      "author": {
        "name": "Chris Metcalf",
        "email": "cmetcalf@tilera.com",
        "time": "Thu Oct 14 15:09:02 2010 -0400"
      },
      "committer": {
        "name": "Chris Metcalf",
        "email": "cmetcalf@tilera.com",
        "time": "Thu Oct 14 15:09:02 2010 -0400"
      },
      "message": "arch/tile: provide a definition of MAP_STACK\n\nIt\u0027s convenient for userspace (in particular, glibc) to find a\ndefinition of MAP_STACK.  We use MAP_GROWSDOWN as an alias since\nthat\u0027s appropriate for the main stack, and since our current\nallocation of mmap flags bits is running a bit short otherwise.\n\nSigned-off-by: Chris Metcalf \u003ccmetcalf@tilera.com\u003e\n"
    },
    {
      "commit": "77d233036ea886398770f208aa22235acf0d011c",
      "tree": "f3edb38ea286885b65cd1e615fddb796d0799c6a",
      "parents": [
        "d6f0f22c3c409f9ed88e64f881f8308730be76f0"
      ],
      "author": {
        "name": "Chris Metcalf",
        "email": "cmetcalf@tilera.com",
        "time": "Thu Oct 14 14:47:35 2010 -0400"
      },
      "committer": {
        "name": "Chris Metcalf",
        "email": "cmetcalf@tilera.com",
        "time": "Thu Oct 14 14:47:35 2010 -0400"
      },
      "message": "arch/tile: Add a warning if we try to allocate too much vmalloc memory.\n\nSigned-off-by: Chris Metcalf \u003ccmetcalf@tilera.com\u003e\n"
    },
    {
      "commit": "d6f0f22c3c409f9ed88e64f881f8308730be76f0",
      "tree": "5521d78679fd3441cecdfe5a273eeca81aee922f",
      "parents": [
        "5592840ba83c281b4df45345863b224bb290020c"
      ],
      "author": {
        "name": "Chris Metcalf",
        "email": "cmetcalf@tilera.com",
        "time": "Thu Oct 14 14:42:58 2010 -0400"
      },
      "committer": {
        "name": "Chris Metcalf",
        "email": "cmetcalf@tilera.com",
        "time": "Thu Oct 14 14:42:58 2010 -0400"
      },
      "message": "arch/tile: update some comments to clarify register usage.\n\nSigned-off-by: Chris Metcalf \u003ccmetcalf@tilera.com\u003e\n"
    },
    {
      "commit": "5592840ba83c281b4df45345863b224bb290020c",
      "tree": "6f8f5aab927f1d71b3de355de9b93abdeb7f8bb9",
      "parents": [
        "d929b6aeaacbe78cbfef4a80e3eed1bf0464d984"
      ],
      "author": {
        "name": "Chris Metcalf",
        "email": "cmetcalf@tilera.com",
        "time": "Mon Sep 13 08:50:09 2010 -0400"
      },
      "committer": {
        "name": "Chris Metcalf",
        "email": "cmetcalf@tilera.com",
        "time": "Thu Oct 14 14:36:50 2010 -0400"
      },
      "message": "arch/tile: use better \"punctuation\" for VMSPLIT_3_5G and friends\n\nSigned-off-by: Chris Metcalf \u003ccmetcalf@tilera.com\u003e\n"
    },
    {
      "commit": "d929b6aeaacbe78cbfef4a80e3eed1bf0464d984",
      "tree": "5f121a845d616a3926768c2fa1b25c4ae417d9c2",
      "parents": [
        "ce0ecc8abfa9904e27a5f3ac4dd83398b134278d"
      ],
      "author": {
        "name": "Chris Metcalf",
        "email": "cmetcalf@tilera.com",
        "time": "Thu Oct 14 14:34:33 2010 -0400"
      },
      "committer": {
        "name": "Chris Metcalf",
        "email": "cmetcalf@tilera.com",
        "time": "Thu Oct 14 14:34:33 2010 -0400"
      },
      "message": "arch/tile: Use \u003casm-generic/syscalls.h\u003e\n\nWith this change we now include \u003casm-generic/syscalls.h\u003e into the \"tile\"\nversion of the header.  To take full advantage of the prototypes there,\nwe also change our naming convention for \"struct pt_regs *\" syscalls so\nthat, e.g., _sys_execve() is the \"true\" syscall entry, which sets the\nappropriate register to point to the pt_regs before calling sys_execve().\n\nWhile doing this I realized I no longer needed the fork and vfork\nentry point stubs, since those functions aren\u0027t in the generic\nsyscall ABI, so I removed them as well.\n\nSigned-off-by: Chris Metcalf \u003ccmetcalf@tilera.com\u003e\n"
    },
    {
      "commit": "ce0ecc8abfa9904e27a5f3ac4dd83398b134278d",
      "tree": "031363a799c1869889c961fcc49715896f59f703",
      "parents": [
        "de5bbad6770882209b0ac58b0ba9259a98cfb953",
        "cb655d0f3d57c23db51b981648e452988c0223f9"
      ],
      "author": {
        "name": "Chris Metcalf",
        "email": "cmetcalf@tilera.com",
        "time": "Thu Oct 14 11:57:29 2010 -0400"
      },
      "committer": {
        "name": "Chris Metcalf",
        "email": "cmetcalf@tilera.com",
        "time": "Thu Oct 14 11:57:29 2010 -0400"
      },
      "message": "Merge branch \u0027master\u0027 into for-linus\n"
    },
    {
      "commit": "7c5f13519a67aa7ba3a99155f128d4bdef87d087",
      "tree": "e4d0537092930a53a85932de83a7861990c58607",
      "parents": [
        "5e62feabcc3e4127a084701ec54ffe891985b7e8",
        "021989622810b02aab4b24f91e1f5ada2b654579"
      ],
      "author": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Tue Oct 12 16:41:22 2010 +0200"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Tue Oct 12 16:41:26 2010 +0200"
      },
      "message": "Merge branch \u0027x86/urgent\u0027 of into irq/sparseirq\n\nReason: Pull in the latest io_apic bugfixes\n\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\n"
    },
    {
      "commit": "708ff2a0097b02d32d375b66996661f36cd4d6d1",
      "tree": "66f7922a1e35de1ad15ba84849bd6fc602c26087",
      "parents": [
        "c24cef0b68a719324c344c1563ef3d750ac6bf0e"
      ],
      "author": {
        "name": "Akinobu Mita",
        "email": "akinobu.mita@gmail.com",
        "time": "Wed Sep 29 18:08:50 2010 +0900"
      },
      "committer": {
        "name": "Arnd Bergmann",
        "email": "arnd@arndb.de",
        "time": "Sat Oct 09 21:51:44 2010 +0200"
      },
      "message": "bitops: make asm-generic/bitops/find.h more generic\n\nasm-generic/bitops/find.h has the extern declarations of find_next_bit()\nand find_next_zero_bit() and the macro definitions of find_first_bit()\nand find_first_zero_bit(). It is only usable by the architectures which\nenables CONFIG_GENERIC_FIND_NEXT_BIT and disables\nCONFIG_GENERIC_FIND_FIRST_BIT.\n\nx86 and tile enable both CONFIG_GENERIC_FIND_NEXT_BIT and\nCONFIG_GENERIC_FIND_FIRST_BIT. These architectures cannot include\nasm-generic/bitops/find.h in their asm/bitops.h. So ifdefed extern\ndeclarations of find_first_bit and find_first_zero_bit() are put in\nlinux/bitops.h.\n\nThis makes asm-generic/bitops/find.h usable by these architectures\nand use it. Also this change is needed for the forthcoming duplicated\nextern declarations cleanup.\n\nSigned-off-by: Akinobu Mita \u003cakinobu.mita@gmail.com\u003e\nSigned-off-by: Arnd Bergmann \u003carnd@arndb.de\u003e\nCc: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nCc: Ingo Molnar \u003cmingo@redhat.com\u003e\nCc: \"H. Peter Anvin\" \u003chpa@zytor.com\u003e\nCc: x86@kernel.org\nCc: Chris Metcalf \u003ccmetcalf@tilera.com\u003e\n"
    },
    {
      "commit": "df9ee29270c11dba7d0fe0b83ce47a4d8e8d2101",
      "tree": "0c9a87ef1ea042c4432f122c3d03614d21156fc1",
      "parents": [
        "ca4d3e6746bdcfccb517349bce2d2c5b5614fb6f"
      ],
      "author": {
        "name": "David Howells",
        "email": "dhowells@redhat.com",
        "time": "Thu Oct 07 14:08:55 2010 +0100"
      },
      "committer": {
        "name": "David Howells",
        "email": "dhowells@redhat.com",
        "time": "Thu Oct 07 14:08:55 2010 +0100"
      },
      "message": "Fix IRQ flag handling naming\n\nFix the IRQ flag handling naming.  In linux/irqflags.h under one configuration,\nit maps:\n\n\tlocal_irq_enable() -\u003e raw_local_irq_enable()\n\tlocal_irq_disable() -\u003e raw_local_irq_disable()\n\tlocal_irq_save() -\u003e raw_local_irq_save()\n\t...\n\nand under the other configuration, it maps:\n\n\traw_local_irq_enable() -\u003e local_irq_enable()\n\traw_local_irq_disable() -\u003e local_irq_disable()\n\traw_local_irq_save() -\u003e local_irq_save()\n\t...\n\nThis is quite confusing.  There should be one set of names expected of the\narch, and this should be wrapped to give another set of names that are expected\nby users of this facility.\n\nChange this to have the arch provide:\n\n\tflags \u003d arch_local_save_flags()\n\tflags \u003d arch_local_irq_save()\n\tarch_local_irq_restore(flags)\n\tarch_local_irq_disable()\n\tarch_local_irq_enable()\n\tarch_irqs_disabled_flags(flags)\n\tarch_irqs_disabled()\n\tarch_safe_halt()\n\nThen linux/irqflags.h wraps these to provide:\n\n\traw_local_save_flags(flags)\n\traw_local_irq_save(flags)\n\traw_local_irq_restore(flags)\n\traw_local_irq_disable()\n\traw_local_irq_enable()\n\traw_irqs_disabled_flags(flags)\n\traw_irqs_disabled()\n\traw_safe_halt()\n\nwith type checking on the flags \u0027arguments\u0027, and then wraps those to provide:\n\n\tlocal_save_flags(flags)\n\tlocal_irq_save(flags)\n\tlocal_irq_restore(flags)\n\tlocal_irq_disable()\n\tlocal_irq_enable()\n\tirqs_disabled_flags(flags)\n\tirqs_disabled()\n\tsafe_halt()\n\nwith tracing included if enabled.\n\nThe arch functions can now all be inline functions rather than some of them\nhaving to be macros.\n\nSigned-off-by: David Howells \u003cdhowells@redhat.com\u003e [X86, FRV, MN10300]\nSigned-off-by: Chris Metcalf \u003ccmetcalf@tilera.com\u003e [Tile]\nSigned-off-by: Michal Simek \u003cmonstr@monstr.eu\u003e [Microblaze]\nTested-by: Catalin Marinas \u003ccatalin.marinas@arm.com\u003e [ARM]\nAcked-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nAcked-by: Haavard Skinnemoen \u003chaavard.skinnemoen@atmel.com\u003e [AVR]\nAcked-by: Tony Luck \u003ctony.luck@intel.com\u003e [IA-64]\nAcked-by: Hirokazu Takata \u003ctakata@linux-m32r.org\u003e [M32R]\nAcked-by: Greg Ungerer \u003cgerg@uclinux.org\u003e [M68K/M68KNOMMU]\nAcked-by: Ralf Baechle \u003cralf@linux-mips.org\u003e [MIPS]\nAcked-by: Kyle McMartin \u003ckyle@mcmartin.ca\u003e [PA-RISC]\nAcked-by: Paul Mackerras \u003cpaulus@samba.org\u003e [PowerPC]\nAcked-by: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e [S390]\nAcked-by: Chen Liqin \u003cliqin.chen@sunplusct.com\u003e [Score]\nAcked-by: Matt Fleming \u003cmatt@console-pimps.org\u003e [SH]\nAcked-by: David S. Miller \u003cdavem@davemloft.net\u003e [Sparc]\nAcked-by: Chris Zankel \u003cchris@zankel.net\u003e [Xtensa]\nReviewed-by: Richard Henderson \u003crth@twiddle.net\u003e [Alpha]\nReviewed-by: Yoshinori Sato \u003cysato@users.sourceforge.jp\u003e [H8300]\nCc: starvik@axis.com [CRIS]\nCc: jesper.nilsson@axis.com [CRIS]\nCc: linux-cris-kernel@axis.com\n"
    },
    {
      "commit": "de5bbad6770882209b0ac58b0ba9259a98cfb953",
      "tree": "da258f026fbd5342a61ce858fc2de5ed1e233932",
      "parents": [
        "2bfc96a127bc1cc94d26bfaa40159966064f9c8c"
      ],
      "author": {
        "name": "Akinobu Mita",
        "email": "akinobu.mita@gmail.com",
        "time": "Wed Oct 06 00:55:29 2010 +0900"
      },
      "committer": {
        "name": "Chris Metcalf",
        "email": "cmetcalf@tilera.com",
        "time": "Tue Oct 05 12:49:35 2010 -0400"
      },
      "message": "tile: replace some BUG_ON checks with BUILD_BUG_ON checks\n\nSome BUG_ON checks can be detected at compile time rather than\nat runtime.\n\nSigned-off-by: Akinobu Mita \u003cakinobu.mita@gmail.com\u003e\nSigned-off-by: Chris Metcalf \u003ccmetcalf@tilera.com\u003e\n"
    },
    {
      "commit": "fd194e6493be47bd491931d19f563f59b54fd769",
      "tree": "e38e18522cd522599f3e5dc57acf232d08099894",
      "parents": [
        "e92b05dec8865619ea2608c5c11a54b01467482f",
        "ea44e06e79a393fb577272399ef7521a143b6b59"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Sep 24 19:08:39 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Sep 24 19:08:39 2010 -0700"
      },
      "message": "Merge branch \u0027stable\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/cmetcalf/linux-tile\n\n* \u0027stable\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/cmetcalf/linux-tile:\n  arch/tile: remove dead code from intvec_32.S\n"
    },
    {
      "commit": "ea44e06e79a393fb577272399ef7521a143b6b59",
      "tree": "0bd32a6dd55a82966a51fbb190afa5fadfa2d4c9",
      "parents": [
        "7040dea4d2a0609241c7a98a944b7c432c69db2e"
      ],
      "author": {
        "name": "Chris Metcalf",
        "email": "cmetcalf@tilera.com",
        "time": "Fri Sep 24 17:19:20 2010 -0400"
      },
      "committer": {
        "name": "Chris Metcalf",
        "email": "cmetcalf@tilera.com",
        "time": "Fri Sep 24 17:19:20 2010 -0400"
      },
      "message": "arch/tile: remove dead code from intvec_32.S\n\nThis \"bpt_code\" instruction was killed off in our development line a while\nago (the actual definition of bpt_code that is used is in kernel/traps.c)\nbut I didn\u0027t push it for 2.6.36 because it seemed harmless and I didn\u0027t\nwant to try to push more than absolutely necessary.\n\nHowever, we recently fixed a bug in our gcc that had been causing\n\"-gdwarf2\" not to be passed to the assembler, and passing this flag causes\nan erroneous assembler failure in the presence of code in a data section,\nsometimes.  While we\u0027d like to track down the bug in the assembler,\nwe\u0027d also like to make sure 2.6.36 builds with the current toolchain,\nso I\u0027m removing this dead code as well.\n\nSigned-off-by: Chris Metcalf \u003ccmetcalf@tilera.com\u003e\n"
    },
    {
      "commit": "d1ea13c6e2cce0106531852daaa93dd97aec9580",
      "tree": "9a49b1029af4e63e08267d2b4d6e2f66396be0aa",
      "parents": [
        "a800c7cc5380fbb6b4f2f3bd89f6776eb3da2242"
      ],
      "author": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Thu Sep 23 18:40:07 2010 +0200"
      },
      "committer": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Thu Sep 23 19:12:26 2010 +0200"
      },
      "message": "genirq: Cleanup irq_chip-\u003etypename leftovers\n\n3 years transition phase is enough. Cleanup the last users and remove\nthe cruft.\n\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nCc: Leo Chen \u003cleochen@broadcom.com\u003e\nCc: Hirokazu Takata \u003ctakata@linux-m32r.org\u003e\nCc: Chris Metcalf \u003ccmetcalf@tilera.com\u003e\nCc: Jeff Dike \u003cjdike@addtoit.com\u003e\nCc: Chris Zankel \u003cchris@zankel.net\u003e\n"
    },
    {
      "commit": "8be7eb359d96a6503de18b1a73fd6a24d8c983c9",
      "tree": "36795b7369a137ab6663bc018d452b58bf1d5e72",
      "parents": [
        "3a919cf0bfb7b51205e7f8bacc491996e958b1a2",
        "7040dea4d2a0609241c7a98a944b7c432c69db2e"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Sep 16 12:54:54 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Sep 16 12:54:54 2010 -0700"
      },
      "message": "Merge branch \u0027stable\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/cmetcalf/linux-tile\n\n* \u0027stable\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/cmetcalf/linux-tile:\n  arch/tile: fix formatting bug in register dumps\n  arch/tile: fix memcpy_fromio()/memcpy_toio() signatures\n  arch/tile: Save and restore extra user state for tilegx\n  arch/tile: Change struct sigcontext to be more useful\n  arch/tile: finish const-ifying sys_execve()\n"
    },
    {
      "commit": "7040dea4d2a0609241c7a98a944b7c432c69db2e",
      "tree": "dc333496a8cdb0b1a5e96f92995a8c09002d262e",
      "parents": [
        "0fab59e5ddb4e0557825e9ab8e41b66b5f336941"
      ],
      "author": {
        "name": "Chris Metcalf",
        "email": "cmetcalf@tilera.com",
        "time": "Wed Sep 15 11:17:05 2010 -0400"
      },
      "committer": {
        "name": "Chris Metcalf",
        "email": "cmetcalf@tilera.com",
        "time": "Wed Sep 15 11:17:05 2010 -0400"
      },
      "message": "arch/tile: fix formatting bug in register dumps\n\nThis cut-and-paste bug was caused by rewriting the register dump\ncode to use only a single printk per line of output.\n\nSigned-off-by: Chris Metcalf \u003ccmetcalf@tilera.com\u003e\n"
    },
    {
      "commit": "0fab59e5ddb4e0557825e9ab8e41b66b5f336941",
      "tree": "71daceee4745b3607d7a6504e667402286c06fa7",
      "parents": [
        "a802fc685426303ab627b7ad3fd5c97b5dea7e00"
      ],
      "author": {
        "name": "Chris Metcalf",
        "email": "cmetcalf@tilera.com",
        "time": "Wed Sep 15 11:17:04 2010 -0400"
      },
      "committer": {
        "name": "Chris Metcalf",
        "email": "cmetcalf@tilera.com",
        "time": "Wed Sep 15 11:17:04 2010 -0400"
      },
      "message": "arch/tile: fix memcpy_fromio()/memcpy_toio() signatures\n\nThis tripped up a driver (not yet committed to git).  Fix it now.\n\nSigned-off-by: Chris Metcalf \u003ccmetcalf@tilera.com\u003e\n"
    },
    {
      "commit": "a802fc685426303ab627b7ad3fd5c97b5dea7e00",
      "tree": "29a4ae60405318129efc0897f311a6ac4b1328d2",
      "parents": [
        "74fca9da097b74117ae2cef9e5f0d9b0e28ccbb7"
      ],
      "author": {
        "name": "Chris Metcalf",
        "email": "cmetcalf@tilera.com",
        "time": "Wed Sep 15 11:16:10 2010 -0400"
      },
      "committer": {
        "name": "Chris Metcalf",
        "email": "cmetcalf@tilera.com",
        "time": "Wed Sep 15 11:16:10 2010 -0400"
      },
      "message": "arch/tile: Save and restore extra user state for tilegx\n\nDuring context switch, save and restore a couple of additional bits of\ntilegx user state that can be persistently modified by userspace.\n\nSigned-off-by: Chris Metcalf \u003ccmetcalf@tilera.com\u003e\n"
    },
    {
      "commit": "74fca9da097b74117ae2cef9e5f0d9b0e28ccbb7",
      "tree": "cbdb9e9b760429016a31e1dca3b115548dbebc0a",
      "parents": [
        "e6e6c46d759cd013cb57eba112a4129a3a353c4b"
      ],
      "author": {
        "name": "Chris Metcalf",
        "email": "cmetcalf@tilera.com",
        "time": "Wed Sep 15 11:16:08 2010 -0400"
      },
      "committer": {
        "name": "Chris Metcalf",
        "email": "cmetcalf@tilera.com",
        "time": "Wed Sep 15 11:16:08 2010 -0400"
      },
      "message": "arch/tile: Change struct sigcontext to be more useful\n\nRather than just using pt_regs, it now contains the actual saved\nstate explicitly, similar to pt_regs.  By doing it this way, we\nprovide a cleaner API for userspace (or equivalently, we avoid the\nneed for libc to provide its own definition of sigcontext).\n\nWhile we\u0027re at it, move PT_FLAGS_xxx to where they are not visible\nfrom userspace.  And always pass siginfo and mcontext to signal\nhandlers, even if they claim they don\u0027t need it, since sometimes\nthey actually try to use it anyway in practice.\n\nSigned-off-by: Chris Metcalf \u003ccmetcalf@tilera.com\u003e\n"
    },
    {
      "commit": "e6e6c46d759cd013cb57eba112a4129a3a353c4b",
      "tree": "12dbe6085c713832d0df037efc709e2b0b08ad2b",
      "parents": [
        "49553c2ef88749dd502687f4eb9c258bb10a4f44"
      ],
      "author": {
        "name": "Chris Metcalf",
        "email": "cmetcalf@tilera.com",
        "time": "Wed Sep 15 11:16:05 2010 -0400"
      },
      "committer": {
        "name": "Chris Metcalf",
        "email": "cmetcalf@tilera.com",
        "time": "Wed Sep 15 11:16:05 2010 -0400"
      },
      "message": "arch/tile: finish const-ifying sys_execve()\n\nThe sys_execve() implementation was properly const-ified but not\nthe declaration, the syscall wrappers, or the compat version.\nThis change completes the constification process.\n\nSigned-off-by: Chris Metcalf \u003ccmetcalf@tilera.com\u003e\n"
    },
    {
      "commit": "c41d68a513c71e35a14f66d71782d27a79a81ea6",
      "tree": "2729377678b4f0fa516404eec6c3a87a4fd7c823",
      "parents": [
        "bfa88ea7ee9e6b4fd673e45a8cc0a8e0b7ef4761"
      ],
      "author": {
        "name": "H. Peter Anvin",
        "email": "hpa@linux.intel.com",
        "time": "Tue Sep 07 16:16:18 2010 -0700"
      },
      "committer": {
        "name": "H. Peter Anvin",
        "email": "hpa@linux.intel.com",
        "time": "Tue Sep 14 16:08:45 2010 -0700"
      },
      "message": "compat: Make compat_alloc_user_space() incorporate the access_ok()\n\ncompat_alloc_user_space() expects the caller to independently call\naccess_ok() to verify the returned area.  A missing call could\nintroduce problems on some architectures.\n\nThis patch incorporates the access_ok() check into\ncompat_alloc_user_space() and also adds a sanity check on the length.\nThe existing compat_alloc_user_space() implementations are renamed\narch_compat_alloc_user_space() and are used as part of the\nimplementation of the new global function.\n\nThis patch assumes NULL will cause __get_user()/__put_user() to either\nfail or access userspace on all architectures.  This should be\nfollowed by checking the return value of compat_access_user_space()\nfor NULL in the callers, at which time the access_ok() in the callers\ncan also be removed.\n\nReported-by: Ben Hawkes \u003chawkes@sota.gen.nz\u003e\nSigned-off-by: H. Peter Anvin \u003chpa@linux.intel.com\u003e\nAcked-by: Benjamin Herrenschmidt \u003cbenh@kernel.crashing.org\u003e\nAcked-by: Chris Metcalf \u003ccmetcalf@tilera.com\u003e\nAcked-by: David S. Miller \u003cdavem@davemloft.net\u003e\nAcked-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nAcked-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nAcked-by: Tony Luck \u003ctony.luck@intel.com\u003e\nCc: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nCc: Arnd Bergmann \u003carnd@arndb.de\u003e\nCc: Fenghua Yu \u003cfenghua.yu@intel.com\u003e\nCc: H. Peter Anvin \u003chpa@zytor.com\u003e\nCc: Heiko Carstens \u003cheiko.carstens@de.ibm.com\u003e\nCc: Helge Deller \u003cdeller@gmx.de\u003e\nCc: James Bottomley \u003cjejb@parisc-linux.org\u003e\nCc: Kyle McMartin \u003ckyle@mcmartin.ca\u003e\nCc: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\nCc: Paul Mackerras \u003cpaulus@samba.org\u003e\nCc: Ralf Baechle \u003cralf@linux-mips.org\u003e\nCc: \u003cstable@kernel.org\u003e\n"
    },
    {
      "commit": "d7627467b7a8dd6944885290a03a07ceb28c10eb",
      "tree": "a18c83468418e878cfb2d44e4310d81b8db84ad7",
      "parents": [
        "da5cabf80e2433131bf0ed8993abc0f7ea618c73"
      ],
      "author": {
        "name": "David Howells",
        "email": "dhowells@redhat.com",
        "time": "Tue Aug 17 23:52:56 2010 +0100"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Aug 17 18:07:43 2010 -0700"
      },
      "message": "Make do_execve() take a const filename pointer\n\nMake do_execve() take a const filename pointer so that kernel_execve() compiles\ncorrectly on ARM:\n\narch/arm/kernel/sys_arm.c:88: warning: passing argument 1 of \u0027do_execve\u0027 discards qualifiers from pointer target type\n\nThis also requires the argv and envp arguments to be consted twice, once for\nthe pointer array and once for the strings the array points to.  This is\nbecause do_execve() passes a pointer to the filename (now const) to\ncopy_strings_kernel().  A simpler alternative would be to cast the filename\npointer in do_execve() when it\u0027s passed to copy_strings_kernel().\n\ndo_execve() may not change any of the strings it is passed as part of the argv\nor envp lists as they are some of them in .rodata, so marking these strings as\nconst should be fine.\n\nFurther kernel_execve() and sys_execve() need to be changed to match.\n\nThis has been test built on x86_64, frv, arm and mips.\n\nSigned-off-by: David Howells \u003cdhowells@redhat.com\u003e\nTested-by: Ralf Baechle \u003cralf@linux-mips.org\u003e\nAcked-by: Russell King \u003crmk+kernel@arm.linux.org.uk\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "7a1b29a82ba76427de791098c095ce31dab9333d",
      "tree": "077a1563ce243b6ac619397a0b7904623a28de50",
      "parents": [
        "d7824370e26325c881b665350ce64fb0a4fde24a",
        "a5854dd7f30c3849edf9b9711362e2dd51d3f855"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun Aug 15 17:31:43 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun Aug 15 17:31:43 2010 -0700"
      },
      "message": "Merge git://git.kernel.org/pub/scm/linux/kernel/git/cmetcalf/linux-tile\n\n* git://git.kernel.org/pub/scm/linux/kernel/git/cmetcalf/linux-tile:\n  arch/tile: don\u0027t validate CROSS_COMPILE needlessly\n  arch/tile: export only COMMAND_LINE_SIZE to userspace.\n  arch/tile: rename ARCH_KMALLOC_MINALIGN to ARCH_DMA_MINALIGN\n  arch/tile: Rename the hweight() implementations to __arch_hweight()\n  arch/tile: extend syscall ABI to set r1 on return as well.\n  arch/tile: Various cleanups.\n  arch/tile: support backtracing on TILE-Gx\n  arch/tile: Fix a couple of issues with the COMPAT code for TILE-Gx.\n  arch/tile: Use separate, better minsec values for clocksource and sched_clock.\n  arch/tile: correct a bug in freeing bootmem by VA for the optional second initrd.\n  arch: tile: mm: pgtable.c: Removed duplicated #include\n  arch: tile: kernel/proc.c Removed duplicated #include\n  Add fanotify syscalls to \u003casm-generic/unistd.h\u003e.\n  arch/tile: support new kunmap_atomic() naming convention.\n  tile: remove unused ISA_DMA_THRESHOLD define\n\nConflicts in arch/tile/configs/tile_defconfig (pick the mainline version\nwith the reduced defconfig).\n"
    }
  ],
  "next": "a5854dd7f30c3849edf9b9711362e2dd51d3f855"
}
