)]}'
{
  "log": [
    {
      "commit": "33bf56106d9be272696b73d9179da4e56b277472",
      "tree": "905fe909edf96831a988de8fd35d22ee96ab4db0",
      "parents": [
        "82006d084109bb4118f1de0dc5855abe5ccae430"
      ],
      "author": {
        "name": "Randy Dunlap",
        "email": "rdunlap@xenotime.net",
        "time": "Tue Sep 13 01:25:50 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Sep 13 08:22:33 2005 -0700"
      },
      "message": "[PATCH] feature removal of io_remap_page_range()\n\nAs written in Documentation/feature-removal-schedule.txt, remove the\nio_remap_page_range() kernel API.\n\nSigned-off-by: Randy Dunlap \u003crdunlap@xenotime.net\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "66759a01adbfe8828dd063e32cf5ed3f46696181",
      "tree": "9d34afafa1e4e5371a0e732a3f949ef8ac533ab5",
      "parents": [
        "049cdefe19f95b67b06b70915cd8e4ae7173337a"
      ],
      "author": {
        "name": "Chuck Ebbert",
        "email": "76306.1226@compuserve.com",
        "time": "Mon Sep 12 18:49:25 2005 +0200"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Mon Sep 12 10:50:58 2005 -0700"
      },
      "message": "[PATCH] x86-64: i386/x86-64: Fix time going twice as fast problem on ATI Xpress chipsets\n\nOriginal patch from Bertro Simul\n\nThis is probably still not quite correct, but seems to be\nthe best solution so far.\n\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "6e44f12ba64a58f25f8e6f35aa4c175f613001be",
      "tree": "d5fc4176f19d75389e652812a9becec4e551d171",
      "parents": [
        "e92343cc8e9ca4bc0db4b007dd37d33a207ef637"
      ],
      "author": {
        "name": "Andi Kleen",
        "email": "ak@suse.de",
        "time": "Mon Sep 12 18:49:24 2005 +0200"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Mon Sep 12 10:50:55 2005 -0700"
      },
      "message": "[PATCH] i386: add memory clobbers to syscall macros\n\nAs noted by matz@suse.de\n\nThe problem is, that on i386 the syscallN\nmacro is defined like so:\n\n  long __res; \\\n  __asm__ volatile (\"int $0x80\" \\\n        : \"\u003da\" (__res) \\\n        : \"0\" (__NR_##name),\"b\" ((long)(arg1)),\"c\" ((long)(arg2)), \\\n          \"d\" ((long)(arg3)),\"S\" ((long)(arg4)),\"D\" ((long)(arg5))); \\\n\nIf one of the arguments (in the _llseek syscall it\u0027s the arg4) is a pointer\nwhich the syscall is expected to write to (to the memory pointed to by this\nptr), then this side-effect is not captured in the asm.\n\nIf anyone uses this macro to define it\u0027s own version of the syscall\n(sometimes necessary when not using glibc) and it\u0027s inlined, then GCC\ndoesn\u0027t know that this asm write to \"*dest\", when called like so for instance:\n\n  out \u003d 1;\n  llseek (fd, bla, blubb, \u0026out, trara)\n  use (out);\n\nHere nobody tells GCC that \"out\" actually is written to (just a pointer to it\nis passed to the asm).  Hence GCC might (and in the above bug did)\ncopy-propagate \"1\" into the second use of \"out\".\n\nThe easiest solution would be to add a \"memory\" clobber to the definition\nof this syscall macro.  As this is a syscall, it shouldn\u0027t inhibit too many\noptimizations.\n\nSigned-off-by: Andi Kleen \u003cak@suse.de\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "69e1a33f62eff9b228a8cc2c3e4429dbee8966c9",
      "tree": "985f088d05f2d936cfafa5dd0232aa59391dc663",
      "parents": [
        "413588c7cb8113c03d0044f1d41b832ad7201c29"
      ],
      "author": {
        "name": "Andi Kleen",
        "email": "ak@suse.de",
        "time": "Mon Sep 12 18:49:24 2005 +0200"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Mon Sep 12 10:49:57 2005 -0700"
      },
      "message": "[PATCH] x86-64: Use ACPI PXM to parse PCI\u003c-\u003enode assignments\n\nSince this is shared code I had to implement it for i386 too\n\nSigned-off-by: Andi Kleen \u003cak@suse.de\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "e2afe67453e5b1499459ee3596b1e7924a5208f5",
      "tree": "a5de215c0df3ecff145d829cfe350b96eb643720",
      "parents": [
        "ea0e0a4f53a75ed9d0812352c0410f6fc2a0b62a"
      ],
      "author": {
        "name": "Adrian Bunk",
        "email": "bunk@stusta.de",
        "time": "Sat Sep 10 00:27:16 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sat Sep 10 10:06:34 2005 -0700"
      },
      "message": "[PATCH] include/asm-i386/: \"extern inline\" -\u003e \"static inline\"\n\n\"extern inline\" doesn\u0027t make much sense.\n\nSigned-off-by: Adrian Bunk \u003cbunk@stusta.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "fb1c8f93d869b34cacb8b8932e2b83d96a19d720",
      "tree": "a006d078aa02e421a7dc4793c335308204859d36",
      "parents": [
        "4327edf6b8a7ac7dce144313947995538842d8fd"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Sat Sep 10 00:25:56 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sat Sep 10 10:06:21 2005 -0700"
      },
      "message": "[PATCH] spinlock consolidation\n\nThis patch (written by me and also containing many suggestions of Arjan van\nde Ven) does a major cleanup of the spinlock code.  It does the following\nthings:\n\n - consolidates and enhances the spinlock/rwlock debugging code\n\n - simplifies the asm/spinlock.h files\n\n - encapsulates the raw spinlock type and moves generic spinlock\n   features (such as -\u003ebreak_lock) into the generic code.\n\n - cleans up the spinlock code hierarchy to get rid of the spaghetti.\n\nMost notably there\u0027s now only a single variant of the debugging code,\nlocated in lib/spinlock_debug.c.  (previously we had one SMP debugging\nvariant per architecture, plus a separate generic one for UP builds)\n\nAlso, i\u0027ve enhanced the rwlock debugging facility, it will now track\nwrite-owners.  There is new spinlock-owner/CPU-tracking on SMP builds too.\nAll locks have lockup detection now, which will work for both soft and hard\nspin/rwlock lockups.\n\nThe arch-level include files now only contain the minimally necessary\nsubset of the spinlock code - all the rest that can be generalized now\nlives in the generic headers:\n\n include/asm-i386/spinlock_types.h       |   16\n include/asm-x86_64/spinlock_types.h     |   16\n\nI have also split up the various spinlock variants into separate files,\nmaking it easier to see which does what. The new layout is:\n\n   SMP                         |  UP\n   ----------------------------|-----------------------------------\n   asm/spinlock_types_smp.h    |  linux/spinlock_types_up.h\n   linux/spinlock_types.h      |  linux/spinlock_types.h\n   asm/spinlock_smp.h          |  linux/spinlock_up.h\n   linux/spinlock_api_smp.h    |  linux/spinlock_api_up.h\n   linux/spinlock.h            |  linux/spinlock.h\n\n/*\n * here\u0027s the role of the various spinlock/rwlock related include files:\n *\n * on SMP builds:\n *\n *  asm/spinlock_types.h: contains the raw_spinlock_t/raw_rwlock_t and the\n *                        initializers\n *\n *  linux/spinlock_types.h:\n *                        defines the generic type and initializers\n *\n *  asm/spinlock.h:       contains the __raw_spin_*()/etc. lowlevel\n *                        implementations, mostly inline assembly code\n *\n *   (also included on UP-debug builds:)\n *\n *  linux/spinlock_api_smp.h:\n *                        contains the prototypes for the _spin_*() APIs.\n *\n *  linux/spinlock.h:     builds the final spin_*() APIs.\n *\n * on UP builds:\n *\n *  linux/spinlock_type_up.h:\n *                        contains the generic, simplified UP spinlock type.\n *                        (which is an empty structure on non-debug builds)\n *\n *  linux/spinlock_types.h:\n *                        defines the generic type and initializers\n *\n *  linux/spinlock_up.h:\n *                        contains the __raw_spin_*()/etc. version of UP\n *                        builds. (which are NOPs on non-debug, non-preempt\n *                        builds)\n *\n *   (included on UP-non-debug builds:)\n *\n *  linux/spinlock_api_up.h:\n *                        builds the _spin_*() APIs.\n *\n *  linux/spinlock.h:     builds the final spin_*() APIs.\n */\n\nAll SMP and UP architectures are converted by this patch.\n\narm, i386, ia64, ppc, ppc64, s390/s390x, x64 was build-tested via\ncrosscompilers.  m32r, mips, sh, sparc, have not been tested yet, but should\nbe mostly fine.\n\nFrom: Grant Grundler \u003cgrundler@parisc-linux.org\u003e\n\n  Booted and lightly tested on a500-44 (64-bit, SMP kernel, dual CPU).\n  Builds 32-bit SMP kernel (not booted or tested).  I did not try to build\n  non-SMP kernels.  That should be trivial to fix up later if necessary.\n\n  I converted bit ops atomic_hash lock to raw_spinlock_t.  Doing so avoids\n  some ugly nesting of linux/*.h and asm/*.h files.  Those particular locks\n  are well tested and contained entirely inside arch specific code.  I do NOT\n  expect any new issues to arise with them.\n\n If someone does ever need to use debug/metrics with them, then they will\n  need to unravel this hairball between spinlocks, atomic ops, and bit ops\n  that exist only because parisc has exactly one atomic instruction: LDCW\n  (load and clear word).\n\nFrom: \"Luck, Tony\" \u003ctony.luck@intel.com\u003e\n\n   ia64 fix\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Arjan van de Ven \u003carjanv@infradead.org\u003e\nSigned-off-by: Grant Grundler \u003cgrundler@parisc-linux.org\u003e\nCc: Matthew Wilcox \u003cwilly@debian.org\u003e\nSigned-off-by: Hirokazu Takata \u003ctakata@linux-m32r.org\u003e\nSigned-off-by: Mikael Pettersson \u003cmikpe@csd.uu.se\u003e\nSigned-off-by: Benoit Boissinot \u003cbenoit.boissinot@ens-lyon.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "486a153f0e294f7cc735838edcb6b32e623cbe52",
      "tree": "f16a31eb3526968dd08aa93c12cbb211f31f2084",
      "parents": [
        "9c8550ee25e26d14a8f0fe1b761a676e23fe3cf0",
        "f64a227b6b5cc1f8cc7f6ef9cc3351343636bac9"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Fri Sep 09 15:46:49 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Fri Sep 09 15:46:49 2005 -0700"
      },
      "message": "Merge master.kernel.org:/pub/scm/linux/kernel/git/sam/kbuild \n"
    },
    {
      "commit": "59f4e7d572980a521b7bdba74ab71b21f5995538",
      "tree": "65004b9875c8fa830de2879229ecf871de5525f4",
      "parents": [
        "6e8dcee3e63f5a2cba4affff4bbb6e228f4b258a"
      ],
      "author": {
        "name": "Truxton Fulton",
        "email": "trux@truxton.com",
        "time": "Fri Sep 09 13:02:18 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Fri Sep 09 13:57:35 2005 -0700"
      },
      "message": "[PATCH] fix reboot via keyboard controller reset\n\nI have a system (Biostar IDEQ210M mini-pc with a VIA chipset) which will\nnot reboot unless a keyboard is plugged in to it.  I have tried all\ncombinations of the kernel \"reboot\u003dx,y\" flags to no avail.  Rebooting by\nany method will leave the system in a wedged state (at the \"Restarting\nsystem\" message).\n\nI finally tracked the problem down to the machine\u0027s refusal to fully reboot\nunless the keyboard controller status register had bit 2 set.  This is the\n\"System flag\" which when set, indicates successful completion of the\nkeyboard controller self-test (Basic Assurance Test, BAT).\n\nI suppose that something is trying to protect against sporadic reboots\nunless the keyboard controller is in a good state (a keyboard is present),\nbut I need this machine to be headless.\n\nI found that setting the system flag (via the command byte) before giving\nthe \"pulse reset line\" command will allow the reboot to proceed.  The patch\nis simple, and I think it should be fine for everybody whether they have\nthis type of machine or not.  This affects the \"hard\" reboot (as done when\nthe kernel boot flags \"reboot\u003dc,h\" are used).\n\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "abda24528ac3045511fb59291a2d6ccbddf30eda",
      "tree": "ea92749d6601f57ae5836307c9c2b58a4d88ff5e",
      "parents": [
        "4b5d37ac02954572e80e09255bb5737277aaee8e"
      ],
      "author": {
        "name": "Magnus Damm",
        "email": "magnus@valinux.co.jp",
        "time": "Fri Sep 09 13:01:23 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Fri Sep 09 13:56:44 2005 -0700"
      },
      "message": "[PATCH] i386: CONFIG_ACPI_SRAT typo fix\n\nFix a typo involving CONFIG_ACPI_SRAT.\n\nSigned-off-by: Magnus Damm \u003cmagnus@valinux.co.jp\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "86feeaa8120bb1b0ab21efed49e9754039395ef1",
      "tree": "548ab411f20c74b6aebb839e01b6bc938ffa41f6",
      "parents": [
        "8920e8f94c44e31a73bdf923b04721e26e88cadd"
      ],
      "author": {
        "name": "Sam Ravnborg",
        "email": "sam@mars.(none)",
        "time": "Fri Sep 09 19:28:28 2005 +0200"
      },
      "committer": {
        "name": "Sam Ravnborg",
        "email": "sam@mars.(none)",
        "time": "Fri Sep 09 19:28:28 2005 +0200"
      },
      "message": "kbuild: full dependency check on asm-offsets.h\n\nBuilding asm-offsets.h has been moved to a seperate Kbuild file\nlocated in the top-level directory. This allow us to share the\nfunctionality across the architectures.\n\nThe old rules in architecture specific Makefiles will die\nin subsequent patches.\n\nFurhtermore the usual kbuild dependency tracking is now used\nwhen deciding to rebuild asm-offsets.s. So we no longer risk\nto fail a rebuild caused by asm-offsets.c dependencies being touched.\n\nWith this common rule-set we now force the same name across\nall architectures. Following patches will fix the rest.\n\nSigned-off-by: Sam Ravnborg \u003csam@ravnborg.org\u003e\n"
    },
    {
      "commit": "64e47488c913ac704d465a6af86a26786d1412a5",
      "tree": "d3b0148592963dcde26e4bb35ddfec8b1eaf8e23",
      "parents": [
        "4a35a46bf1cda4737c428380d1db5d15e2590d18",
        "caf39e87cc1182f7dae84eefc43ca14d54c78ef9"
      ],
      "author": {
        "name": "Len Brown",
        "email": "len.brown@intel.com",
        "time": "Thu Sep 08 01:45:47 2005 -0400"
      },
      "committer": {
        "name": "Len Brown",
        "email": "len.brown@intel.com",
        "time": "Thu Sep 08 01:45:47 2005 -0400"
      },
      "message": "Merge linux-2.6 with linux-acpi-2.6\n"
    },
    {
      "commit": "8d286aa5eaf951bf53d4a0f64576d4b377c435ba",
      "tree": "c2304e6fc3af25b6a09f974fa09db753f6bd8cea",
      "parents": [
        "5ac353f9baf7169298ebb7de86b2d697b25bca44"
      ],
      "author": {
        "name": "Stephen Rothwell",
        "email": "sfr@canb.auug.org.au",
        "time": "Tue Sep 06 15:18:01 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Wed Sep 07 16:57:38 2005 -0700"
      },
      "message": "[PATCH] Clean up struct flock64 definitions\n\nThis patch gathers all the struct flock64 definitions (and the operations),\nputs them under !CONFIG_64BIT and cleans up the arch files.\n\nSigned-off-by: Stephen Rothwell \u003csfr@canb.auug.org.au\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "5ac353f9baf7169298ebb7de86b2d697b25bca44",
      "tree": "2591e241e07c96d19db85d418ff6623ec394f984",
      "parents": [
        "1abf62afb6e9cdc1b2618b69067a186b94281587"
      ],
      "author": {
        "name": "Stephen Rothwell",
        "email": "sfr@canb.auug.org.au",
        "time": "Tue Sep 06 15:18:00 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Wed Sep 07 16:57:38 2005 -0700"
      },
      "message": "[PATCH] Clean up struct flock definitions\n\nThis patch just gathers together all the struct flock definitions except\nxtensa into asm-generic/fcntl.h.\n\nSigned-off-by: Stephen Rothwell \u003csfr@canb.auug.org.au\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "1abf62afb6e9cdc1b2618b69067a186b94281587",
      "tree": "a3e3266a23d8d75bf6c302763327b60b7372a41c",
      "parents": [
        "e64ca97fd80a129e538ca42d0b12c379746b83db"
      ],
      "author": {
        "name": "Stephen Rothwell",
        "email": "sfr@canb.auug.org.au",
        "time": "Tue Sep 06 15:17:59 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Wed Sep 07 16:57:38 2005 -0700"
      },
      "message": "[PATCH] Clean up the fcntl operations\n\nThis patch puts the most popular of each fcntl operation/flag into\nasm-generic/fcntl.h and cleans up the arch files.\n\nSigned-off-by: Stephen Rothwell \u003csfr@canb.auug.org.au\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "e64ca97fd80a129e538ca42d0b12c379746b83db",
      "tree": "196c445874941ffbcca785be713338f647b42d5b",
      "parents": [
        "2b2fa38e5f3f17a5e1ef3fe29a9869d93197ebfd"
      ],
      "author": {
        "name": "Stephen Rothwell",
        "email": "sfr@canb.auug.org.au",
        "time": "Tue Sep 06 15:17:58 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Wed Sep 07 16:57:38 2005 -0700"
      },
      "message": "[PATCH] Clean up the open flags\n\nThis patch puts the most popular of each open flag into asm-generic/fcntl.h\nand cleans up the arch files.\n\nSigned-off-by: Stephen Rothwell \u003csfr@canb.auug.org.au\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "9317259ead88fe6c05120ae1e3ace99738e2c698",
      "tree": "b899748ca57a96d59003945f97ceae01b5fdc48c",
      "parents": [
        "5ba4d46dc44c5399bc4e7a39239de5a1690848a4"
      ],
      "author": {
        "name": "Stephen Rothwell",
        "email": "sfr@canb.auug.org.au",
        "time": "Tue Sep 06 15:17:57 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Wed Sep 07 16:57:37 2005 -0700"
      },
      "message": "[PATCH] Create asm-generic/fcntl.h\n\nThis set of patches creates asm-generic/fcntl.h and consolidates as much as\npossible from the asm-*/fcntl.h files into it.\n\nThis patch just gathers all the identical bits of the asm-*/fcntl.h files into\nasm-generic/fcntl.h.\n\nSigned-off-by: Stephen Rothwell \u003csfr@canb.auug.org.au\u003e\nSigned-off-by: Yoichi Yuasa \u003cyuasa@hh.iij4u.or.jp\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "97de50c0add1e8f3b4e764c66a13c07235fee631",
      "tree": "161be1faee50800677bd01e1ca907cd135ffe0a0",
      "parents": [
        "5e5d7a22292613e55da8e91d75bcc062fd861f41"
      ],
      "author": {
        "name": "Jesper Juhl",
        "email": "jesper.juhl@gmail.com",
        "time": "Tue Sep 06 15:17:49 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Wed Sep 07 16:57:35 2005 -0700"
      },
      "message": "[PATCH] remove verify_area(): remove verify_area() from various uaccess.h headers\n\nRemove the deprecated (and unused) verify_area() from various uaccess.h\nheaders.\n\nSigned-off-by: Jesper Juhl \u003cjesper.juhl@gmail.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "c8d127418d78aaeeb1a417ef7453dc09c9118146",
      "tree": "6d227f4604b3f13566cd5e93d04773e1ee5e42da",
      "parents": [
        "96d0821cacd095e25a39dfff5232a45b63ed18dd"
      ],
      "author": {
        "name": "Christoph Hellwig",
        "email": "hch@lst.de",
        "time": "Tue Sep 06 15:17:27 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Wed Sep 07 16:57:30 2005 -0700"
      },
      "message": "[PATCH] remove asm-*/hdreg.h\n\nunused and useless..\n\nSigned-off-by: Christoph Hellwig \u003chch@lst.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "36d57ac4a818cb4aa3edbdf63ad2ebc31106f925",
      "tree": "445eda00ee5974a65e21152cd240fb604c6d112d",
      "parents": [
        "32605a18152b246df483fadc1c23854addde8755"
      ],
      "author": {
        "name": "H. J. Lu",
        "email": "hjl@lucon.org",
        "time": "Tue Sep 06 15:16:49 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Wed Sep 07 16:57:21 2005 -0700"
      },
      "message": "[PATCH] auxiliary vector cleanups\n\nThe size of auxiliary vector is fixed at 42 in linux/sched.h.  But it isn\u0027t\nvery obvious when looking at linux/elf.h.  This patch adds AT_VECTOR_SIZE\nso that we can change it if necessary when a new vector is added.\n\nBecause of include file ordering problems, doing this necessitated the\nextraction of the AT_* symbols into a standalone header file.\n\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "4732efbeb997189d9f9b04708dc26bf8613ed721",
      "tree": "885308bb2b521e52e13aaa8a67c78b2ab3c18cd8",
      "parents": [
        "5b039e681b8c5f30aac9cc04385cc94be45d0823"
      ],
      "author": {
        "name": "Jakub Jelinek",
        "email": "jakub@redhat.com",
        "time": "Tue Sep 06 15:16:25 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Wed Sep 07 16:57:17 2005 -0700"
      },
      "message": "[PATCH] FUTEX_WAKE_OP: pthread_cond_signal() speedup\n\nATM pthread_cond_signal is unnecessarily slow, because it wakes one waiter\n(which at least on UP usually means an immediate context switch to one of\nthe waiter threads).  This waiter wakes up and after a few instructions it\nattempts to acquire the cv internal lock, but that lock is still held by\nthe thread calling pthread_cond_signal.  So it goes to sleep and eventually\nthe signalling thread is scheduled in, unlocks the internal lock and wakes\nthe waiter again.\n\nNow, before 2003-09-21 NPTL was using FUTEX_REQUEUE in pthread_cond_signal\nto avoid this performance issue, but it was removed when locks were\nredesigned to the 3 state scheme (unlocked, locked uncontended, locked\ncontended).\n\nFollowing scenario shows why simply using FUTEX_REQUEUE in\npthread_cond_signal together with using lll_mutex_unlock_force in place of\nlll_mutex_unlock is not enough and probably why it has been disabled at\nthat time:\n\nThe number is value in cv-\u003e__data.__lock.\n        thr1            thr2            thr3\n0       pthread_cond_wait\n1       lll_mutex_lock (cv-\u003e__data.__lock)\n0       lll_mutex_unlock (cv-\u003e__data.__lock)\n0       lll_futex_wait (\u0026cv-\u003e__data.__futex, futexval)\n0                       pthread_cond_signal\n1                       lll_mutex_lock (cv-\u003e__data.__lock)\n1                                       pthread_cond_signal\n2                                       lll_mutex_lock (cv-\u003e__data.__lock)\n2                                         lll_futex_wait (\u0026cv-\u003e__data.__lock, 2)\n2                       lll_futex_requeue (\u0026cv-\u003e__data.__futex, 0, 1, \u0026cv-\u003e__data.__lock)\n                          # FUTEX_REQUEUE, not FUTEX_CMP_REQUEUE\n2                       lll_mutex_unlock_force (cv-\u003e__data.__lock)\n0                         cv-\u003e__data.__lock \u003d 0\n0                         lll_futex_wake (\u0026cv-\u003e__data.__lock, 1)\n1       lll_mutex_lock (cv-\u003e__data.__lock)\n0       lll_mutex_unlock (cv-\u003e__data.__lock)\n          # Here, lll_mutex_unlock doesn\u0027t know there are threads waiting\n          # on the internal cv\u0027s lock\n\nNow, I believe it is possible to use FUTEX_REQUEUE in pthread_cond_signal,\nbut it will cost us not one, but 2 extra syscalls and, what\u0027s worse, one of\nthese extra syscalls will be done for every single waiting loop in\npthread_cond_*wait.\n\nWe would need to use lll_mutex_unlock_force in pthread_cond_signal after\nrequeue and lll_mutex_cond_lock in pthread_cond_*wait after lll_futex_wait.\n\nAnother alternative is to do the unlocking pthread_cond_signal needs to do\n(the lock can\u0027t be unlocked before lll_futex_wake, as that is racy) in the\nkernel.\n\nI have implemented both variants, futex-requeue-glibc.patch is the first\none and futex-wake_op{,-glibc}.patch is the unlocking inside of the kernel.\n The kernel interface allows userland to specify how exactly an unlocking\noperation should look like (some atomic arithmetic operation with optional\nconstant argument and comparison of the previous futex value with another\nconstant).\n\nIt has been implemented just for ppc*, x86_64 and i?86, for other\narchitectures I\u0027m including just a stub header which can be used as a\nstarting point by maintainers to write support for their arches and ATM\nwill just return -ENOSYS for FUTEX_WAKE_OP.  The requeue patch has been\n(lightly) tested just on x86_64, the wake_op patch on ppc64 kernel running\n32-bit and 64-bit NPTL and x86_64 kernel running 32-bit and 64-bit NPTL.\n\nWith the following benchmark on UP x86-64 I get:\n\nfor i in nptl-orig nptl-requeue nptl-wake_op; do echo time elf/ld.so --library-path .:$i /tmp/bench; \\\nfor j in 1 2; do echo ( time elf/ld.so --library-path .:$i /tmp/bench ) 2\u003e\u00261; done; done\ntime elf/ld.so --library-path .:nptl-orig /tmp/bench\nreal 0m0.655s user 0m0.253s sys 0m0.403s\nreal 0m0.657s user 0m0.269s sys 0m0.388s\ntime elf/ld.so --library-path .:nptl-requeue /tmp/bench\nreal 0m0.496s user 0m0.225s sys 0m0.271s\nreal 0m0.531s user 0m0.242s sys 0m0.288s\ntime elf/ld.so --library-path .:nptl-wake_op /tmp/bench\nreal 0m0.380s user 0m0.176s sys 0m0.204s\nreal 0m0.382s user 0m0.175s sys 0m0.207s\n\nThe benchmark is at:\nhttp://sourceware.org/ml/libc-alpha/2005-03/txt00001.txt\nOlder futex-requeue-glibc.patch version is at:\nhttp://sourceware.org/ml/libc-alpha/2005-03/txt00002.txt\nOlder futex-wake_op-glibc.patch version is at:\nhttp://sourceware.org/ml/libc-alpha/2005-03/txt00003.txt\nWill post a new version (just x86-64 fixes so that the patch\napplies against pthread_cond_signal.S) to libc-hacker ml soon.\n\nAttached is the kernel FUTEX_WAKE_OP patch as well as a simple-minded\ntestcase that will not test the atomicity of the operation, but at least\ncheck if the threads that should have been woken up are woken up and\nwhether the arithmetic operation in the kernel gave the expected results.\n\nAcked-by: Ingo Molnar \u003cmingo@redhat.com\u003e\nCc: Ulrich Drepper \u003cdrepper@redhat.com\u003e\nCc: Jamie Lokier \u003cjamie@shareable.org\u003e\nCc: Rusty Russell \u003crusty@rustcorp.com.au\u003e\nSigned-off-by: Yoichi Yuasa \u003cyuasa@hh.iij4u.or.jp\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "ed75e8d58010fdc06e2c3a81bfbebae92314c7e3",
      "tree": "3f6f8dc5a34c9e03f613d4b907e02802ab075a9e",
      "parents": [
        "94c80b2598dbd2b8a6fe5f5c2c3af1beb37f66c7"
      ],
      "author": {
        "name": "Laurent Vivier",
        "email": "LaurentVivier@wanadoo.fr",
        "time": "Sat Sep 03 15:57:18 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@evo.osdl.org",
        "time": "Mon Sep 05 00:06:20 2005 -0700"
      },
      "message": "[PATCH] UML Support - Ptrace: adds the host SYSEMU support, for UML and general usage\n\n      Jeff Dike \u003cjdike@addtoit.com\u003e,\n      Paolo \u0027Blaisorblade\u0027 Giarrusso \u003cblaisorblade_spam@yahoo.it\u003e,\n      Bodo Stroesser \u003cbstroesser@fujitsu-siemens.com\u003e\n\nAdds a new ptrace(2) mode, called PTRACE_SYSEMU, resembling PTRACE_SYSCALL\nexcept that the kernel does not execute the requested syscall; this is useful\nto improve performance for virtual environments, like UML, which want to run\nthe syscall on their own.\n\nIn fact, using PTRACE_SYSCALL means stopping child execution twice, on entry\nand on exit, and each time you also have two context switches; with SYSEMU you\navoid the 2nd stop and so save two context switches per syscall.\n\nAlso, some architectures don\u0027t have support in the host for changing the\nsyscall number via ptrace(), which is currently needed to skip syscall\nexecution (UML turns any syscall into getpid() to avoid it being executed on\nthe host).  Fixing that is hard, while SYSEMU is easier to implement.\n\n* This version of the patch includes some suggestions of Jeff Dike to avoid\n  adding any instructions to the syscall fast path, plus some other little\n  changes, by myself, to make it work even when the syscall is executed with\n  SYSENTER (but I\u0027m unsure about them). It has been widely tested for quite a\n  lot of time.\n\n* Various fixed were included to handle the various switches between\n  various states, i.e. when for instance a syscall entry is traced with one of\n  PT_SYSCALL / _SYSEMU / _SINGLESTEP and another one is used on exit.\n  Basically, this is done by remembering which one of them was used even after\n  the call to ptrace_notify().\n\n* We\u0027re combining TIF_SYSCALL_EMU with TIF_SYSCALL_TRACE or TIF_SINGLESTEP\n  to make do_syscall_trace() notice that the current syscall was started with\n  SYSEMU on entry, so that no notification ought to be done in the exit path;\n  this is a bit of a hack, so this problem is solved in another way in next\n  patches.\n\n* Also, the effects of the patch:\n\"Ptrace - i386: fix Syscall Audit interaction with singlestep\"\nare cancelled; they are restored back in the last patch of this series.\n\nDetailed descriptions of the patches doing this kind of processing follow (but\nI\u0027ve already summed everything up).\n\n* Fix behaviour when changing interception kind #1.\n\n  In do_syscall_trace(), we check the status of the TIF_SYSCALL_EMU flag\n  only after doing the debugger notification; but the debugger might have\n  changed the status of this flag because he continued execution with\n  PTRACE_SYSCALL, so this is wrong.  This patch fixes it by saving the flag\n  status before calling ptrace_notify().\n\n* Fix behaviour when changing interception kind #2:\n  avoid intercepting syscall on return when using SYSCALL again.\n\n  A guest process switching from using PTRACE_SYSEMU to PTRACE_SYSCALL\n  crashes.\n\n  The problem is in arch/i386/kernel/entry.S.  The current SYSEMU patch\n  inhibits the syscall-handler to be called, but does not prevent\n  do_syscall_trace() to be called after this for syscall completion\n  interception.\n\n  The appended patch fixes this.  It reuses the flag TIF_SYSCALL_EMU to\n  remember \"we come from PTRACE_SYSEMU and now are in PTRACE_SYSCALL\", since\n  the flag is unused in the depicted situation.\n\n* Fix behaviour when changing interception kind #3:\n  avoid intercepting syscall on return when using SINGLESTEP.\n\n  When testing 2.6.9 and the skas3.v6 patch, with my latest patch and had\n  problems with singlestepping on UML in SKAS with SYSEMU.  It looped\n  receiving SIGTRAPs without moving forward.  EIP of the traced process was\n  the same for all SIGTRAPs.\n\nWhat\u0027s missing is to handle switching from PTRACE_SYSCALL_EMU to\nPTRACE_SINGLESTEP in a way very similar to what is done for the change from\nPTRACE_SYSCALL_EMU to PTRACE_SYSCALL_TRACE.\n\nI.e., after calling ptrace(PTRACE_SYSEMU), on the return path, the debugger is\nnotified and then wake ups the process; the syscall is executed (or skipped,\nwhen do_syscall_trace() returns 0, i.e.  when using PTRACE_SYSEMU), and\ndo_syscall_trace() is called again.  Since we are on the return path of a\nSYSEMU\u0027d syscall, if the wake up is performed through ptrace(PTRACE_SYSCALL),\nwe must still avoid notifying the parent of the syscall exit.  Now, this\nbehaviour is extended even to resuming with PTRACE_SINGLESTEP.\n\nSigned-off-by: Paolo \u0027Blaisorblade\u0027 Giarrusso \u003cblaisorblade@yahoo.it\u003e\nCc: Jeff Dike \u003cjdike@addtoit.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "c3c433e4f33afe255389ba3b1a003dc8deb3de9a",
      "tree": "071304e15e21e0a93c17050000a682f4ae1a98c1",
      "parents": [
        "57c4ce3cbfba1bb0da7f37b9328a713cbd5d0919"
      ],
      "author": {
        "name": "Shaohua Li",
        "email": "shaohua.li@intel.com",
        "time": "Sat Sep 03 15:57:07 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@evo.osdl.org",
        "time": "Mon Sep 05 00:06:18 2005 -0700"
      },
      "message": "[PATCH] add suspend/resume for timer\n\nThe timers lack .suspend/.resume methods.  Because of this, jiffies got a\nbig compensation after a S3 resume.  And then softlockup watchdog reports\nan oops.  This occured with HPET enabled, but it\u0027s also possible for other\ntimers.\n\nSigned-off-by: Shaohua Li \u003cshaohua.li@intel.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "4ad8d38342430f8b52f7a8458dce90caf8c8ca64",
      "tree": "090c471fdb44d8fe88c52e95be0e8e43e31fcd5a",
      "parents": [
        "d7271b14b2e9e5905aba0fbf5c4dc4f8980c0cb2"
      ],
      "author": {
        "name": "Zwane Mwaikambo",
        "email": "zwane@arm.linux.org.uk",
        "time": "Sat Sep 03 15:56:51 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@evo.osdl.org",
        "time": "Mon Sep 05 00:06:13 2005 -0700"
      },
      "message": "[PATCH] i386 boottime for_each_cpu broken\n\nfor_each_cpu walks through all processors in cpu_possible_map, which is\ndefined as cpu_callout_map on i386 and isn\u0027t initialised until all\nprocessors have been booted. This breaks things which do for_each_cpu\niterations early during boot. So, define cpu_possible_map as a bitmap with\nNR_CPUS bits populated. This was triggered by a patch i\u0027m working on which\ndoes alloc_percpu before bringing up secondary processors.\n\nFrom: Alexander Nyberg \u003calexn@telia.com\u003e\n\ni386-boottime-for_each_cpu-broken.patch\ni386-boottime-for_each_cpu-broken-fix.patch\n\nThe SMP version of __alloc_percpu checks the cpu_possible_map before\nallocating memory for a certain cpu.  With the above patches the BSP cpuid\nis never set in cpu_possible_map which breaks CONFIG_SMP on uniprocessor\nmachines (as soon as someone tries to dereference something allocated via\n__alloc_percpu, which in fact is never allocated since the cpu is not set\nin cpu_possible_map).\n\nSigned-off-by: Zwane Mwaikambo \u003czwane@arm.linux.org.uk\u003e\nSigned-off-by: Alexander Nyberg \u003calexn@telia.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "d7271b14b2e9e5905aba0fbf5c4dc4f8980c0cb2",
      "tree": "2e8bb68bb2501be464a4eda66c323978c2d9bb70",
      "parents": [
        "748f2edb52712aa3d926470a888608dc500d17e8"
      ],
      "author": {
        "name": "Zachary Amsden",
        "email": "zach@vmware.com",
        "time": "Sat Sep 03 15:56:50 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@evo.osdl.org",
        "time": "Mon Sep 05 00:06:13 2005 -0700"
      },
      "message": "[PATCH] i386: encapsulate copying of pgd entries\n\nAdd a clone operation for pgd updates.\n\nThis helps complete the encapsulation of updates to page tables (or pages\nabout to become page tables) into accessor functions rather than using\nmemcpy() to duplicate them.  This is both generally good for consistency\nand also necessary for running in a hypervisor which requires explicit\nupdates to page table entries.\n\nThe new function is:\n\nclone_pgd_range(pgd_t *dst, pgd_t *src, int count);\n\n   dst - pointer to pgd range anwhere on a pgd page\n   src - \"\"\n   count - the number of pgds to copy.\n\n   dst and src can be on the same page, but the range must not overlap\n   and must not cross a page boundary.\n\nNote that I ommitted using this call to copy pgd entries into the\nsoftware suspend page root, since this is not technically a live paging\nstructure, rather it is used on resume from suspend.  CC\u0027ing Pavel in case\nhe has any feedback on this.\n\nThanks to Chris Wright for noticing that this could be more optimal in\nPAE compiles by eliminating the memset.\n\nSigned-off-by: Zachary Amsden \u003czach@vmware.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "748f2edb52712aa3d926470a888608dc500d17e8",
      "tree": "9fb37795934642e11bad0d747d1271df393a993d",
      "parents": [
        "f2f30ebca6c0c95e987cb9a1fd1495770a75432e"
      ],
      "author": {
        "name": "George Anzinger",
        "email": "george@mvista.com",
        "time": "Sat Sep 03 15:56:48 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@evo.osdl.org",
        "time": "Mon Sep 05 00:06:13 2005 -0700"
      },
      "message": "[PATCH] x86 NMI: better support for debuggers\n\nThis patch adds a notify to the die_nmi notify that the system is about to\nbe taken down.  If the notify is handled with a NOTIFY_STOP return, the\nsystem is given a new lease on life.\n\nWe also change the nmi watchdog to carry on if die_nmi returns.\n\nThis give debug code a chance to a) catch watchdog timeouts and b) possibly\nallow the system to continue, realizing that the time out may be due to\ndebugger activities such as single stepping which is usually done with\n\"other\" cpus held.\n\nSigned-off-by: George Anzinger\u003cgeorge@mvista.com\u003e\nCc: Keith Owens \u003ckaos@ocs.com.au\u003e\nSigned-off-by: George Anzinger \u003cgeorge@mvista.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "f2f30ebca6c0c95e987cb9a1fd1495770a75432e",
      "tree": "ea7b1763aa0e0d36b52fa245449c79338fe735b3",
      "parents": [
        "e9f86e351fda5b3c40192fc3990453613f160779"
      ],
      "author": {
        "name": "Zachary Amsden",
        "email": "zach@vmware.com",
        "time": "Sat Sep 03 15:56:47 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@evo.osdl.org",
        "time": "Mon Sep 05 00:06:13 2005 -0700"
      },
      "message": "[PATCH] x86: introduce a write acessor for updating the current LDT\n\nIntroduce a write acessor for updating the current LDT.  This is required\nfor hypervisors like Xen that do not allow LDT pages to be directly\nwritten.\n\nTesting - here\u0027s a fun little LDT test that can be trivially modified to\ntest limits as well.\n\n/*\n * Copyright (c) 2005, Zachary Amsden (zach@vmware.com)\n * This is licensed under the GPL.\n */\n\n#include \u003cstdio.h\u003e\n#include \u003csignal.h\u003e\n#include \u003casm/ldt.h\u003e\n#include \u003casm/segment.h\u003e\n#include \u003csys/types.h\u003e\n#include \u003cunistd.h\u003e\n#include \u003csys/mman.h\u003e\n#define __KERNEL__\n#include \u003casm/page.h\u003e\n\nvoid main(void)\n{\n        struct user_desc desc;\n        char *code;\n        unsigned long long tsc;\n\n        code \u003d (char *)mmap(0, 8192, PROT_EXEC|PROT_READ|PROT_WRITE,\n                                 MAP_PRIVATE | MAP_ANONYMOUS, -1, 0);\n        desc.entry_number \u003d 0;\n        desc.base_addr \u003d code;\n        desc.limit \u003d 1;\n        desc.seg_32bit \u003d 1;\n        desc.contents \u003d MODIFY_LDT_CONTENTS_CODE;\n        desc.read_exec_only \u003d 0;\n        desc.limit_in_pages \u003d 1;\n        desc.seg_not_present \u003d 0;\n        desc.useable \u003d 1;\n        if (modify_ldt(1, \u0026desc, sizeof(desc)) !\u003d 0) {\n                perror(\"modify_ldt\");\n        }\n        printf(\"code base is 0x%08x\\n\", (unsigned)code);\n        code[0x0ffe] \u003d 0x0f;  /* rdtsc */\n        code[0x0fff] \u003d 0x31;\n        code[0x1000] \u003d 0xcb;  /* lret */\n        __asm__ __volatile(\"lcall $7,$0xffe\" : \"\u003dA\" (tsc));\n        printf(\"TSC is 0x%016llx\\n\", tsc);\n}\n\nSigned-off-by: Zachary Amsden \u003czach@vmware.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "a5201129307f414890f9a4410e38da205f5d7359",
      "tree": "ad70c5f1d3b336ef5665a7fd5ad8707aaec23847",
      "parents": [
        "0998e4228aca046fbd747c3fed909791d52e88eb"
      ],
      "author": {
        "name": "Zachary Amsden",
        "email": "zach@vmware.com",
        "time": "Sat Sep 03 15:56:44 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@evo.osdl.org",
        "time": "Mon Sep 05 00:06:12 2005 -0700"
      },
      "message": "[PATCH] x86: make IOPL explicit\n\nThe pushf/popf in switch_to are ONLY used to switch IOPL.  Making this\nexplicit in C code is more clear.  This pushf/popf pair was added as a\nbugfix for leaking IOPL to unprivileged processes when using\nsysenter/sysexit based system calls (sysexit does not restore flags).\n\nWhen requesting an IOPL change in sys_iopl(), it is just as easy to change\nthe current flags and the flags in the stack image (in case an IRET is\nrequired), but there is no reason to force an IRET if we came in from the\nSYSENTER path.\n\nThis change is the minimal solution for supporting a paravirtualized Linux\nkernel that allows user processes to run with I/O privilege.  Other\nsolutions require radical rewrites of part of the low level fault / system\ncall handling code, or do not fully support sysenter based system calls.\n\nUnfortunately, this added one field to the thread_struct.  But as a bonus,\non P4, the fastest time measured for switch_to() went from 312 to 260\ncycles, a win of about 17% in the fast case through this performance\ncritical path.\n\nSigned-off-by: Zachary Amsden \u003czach@vmware.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "0998e4228aca046fbd747c3fed909791d52e88eb",
      "tree": "314cb04a6223100bf468cc420985bfe7e3680d44",
      "parents": [
        "f2ab4461249df85b20930a7a57b54f39c5ae291a"
      ],
      "author": {
        "name": "Zachary Amsden",
        "email": "zach@vmware.com",
        "time": "Sat Sep 03 15:56:43 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@evo.osdl.org",
        "time": "Mon Sep 05 00:06:12 2005 -0700"
      },
      "message": "[PATCH] x86: privilege cleanup\n\nPrivilege checking cleanup.  Originally, these diffs were much greater, but\nrecent cleanups in Linux have already done much of the cleanup.  I added\nsome explanatory comments in places where the reasoning behind certain\ntests is rather subtle.\n\nAlso, in traps.c, we can skip the user_mode check in handle_BUG().  The\nreason is, there are only two call chains - one via die_if_kernel() and one\nvia do_page_fault(), both entering from die().  Both of these paths already\nensure that a kernel mode failure has happened.  Also, the original check\nhere, if (user_mode(regs)) was insufficient anyways, since it would not\nrule out BUG faults from V8086 mode execution.\n\nSaving the %ss segment in show_regs() rather than assuming a fixed value\nalso gives better information about the current kernel state in the\nregister dump.\n\nSigned-off-by: Zachary Amsden \u003czach@vmware.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "f2ab4461249df85b20930a7a57b54f39c5ae291a",
      "tree": "17fbe46fdc6e95bf24faccb6001d89c989442f6f",
      "parents": [
        "4f0cb8d978ab4b6e3b40147f619f48316d9d7f63"
      ],
      "author": {
        "name": "Zachary Amsden",
        "email": "zach@vmware.com",
        "time": "Sat Sep 03 15:56:42 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@evo.osdl.org",
        "time": "Mon Sep 05 00:06:12 2005 -0700"
      },
      "message": "[PATCH] x86: more asm cleanups\n\nSome more assembler cleanups I noticed along the way.\n\nSigned-off-by: Zachary Amsden \u003czach@vmware.com\u003e\nCc: \"H. Peter Anvin\" \u003chpa@zytor.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "4f0cb8d978ab4b6e3b40147f619f48316d9d7f63",
      "tree": "61be59b09245235862d3f1d932a06b0a28ecbf59",
      "parents": [
        "c9b02a24130e3ff14a553d966a79f46cf806b037"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Sat Sep 03 15:56:41 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@evo.osdl.org",
        "time": "Mon Sep 05 00:06:12 2005 -0700"
      },
      "message": "[PATCH] i386: fix incorrect TSS entry for LDT\n\nNoticed by Chuck Ebbert: the .ldt entry of the TSS was set up incorrectly.\nIt never mattered since this was a leftover from old times, so remove it.\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Adrian Bunk \u003cbunk@stusta.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "c9b02a24130e3ff14a553d966a79f46cf806b037",
      "tree": "1c496ef13e8d2d991f5197ec1c1eb34282beddf0",
      "parents": [
        "e7a2ff593c0e48b130434dee4d2fd3452a850e6f"
      ],
      "author": {
        "name": "Zachary Amsden",
        "email": "zach@vmware.com",
        "time": "Sat Sep 03 15:56:40 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@evo.osdl.org",
        "time": "Mon Sep 05 00:06:12 2005 -0700"
      },
      "message": "[PATCH] i386: use set_pte macros in a couple places where they were missing\n\nAlso, setting PDPEs in PAE mode does not require atomic operations, since the\nPDPEs are cached by the processor, and only reloaded on an explicit or\nimplicit reload of CR3.\n\nSince the four PDPEs must always be present in an active root, and the kernel\nPDPE is never updated, we are safe even from SMIs and interrupts / NMIs using\ntask gates (which reload CR3).  Actually, much of this is moot, since the user\nPDPEs are never updated either, and the only usage of task gates is by the\ndoublefault handler.  It appears the only place PGDs get updated in PAE mode\nis in init_low_mappings() / zap_low_mapping() for initial page table creation\nand recovery from ACPI sleep state, and these sites are safe by inspection.\nGetting rid of the cmpxchg8b saves code space and 720 cycles in pgd_alloc on\nP4.\n\nSigned-off-by: Zachary Amsden \u003czach@vmware.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "2f2984eb4afb2a4298e3186cb49cc7e88dd6d929",
      "tree": "213dfa4726dd010b226fbfffac9da0fbe140b3fe",
      "parents": [
        "4d37e7e3fd851428dede4d05d3e69d03795a744a"
      ],
      "author": {
        "name": "Zachary Amsden",
        "email": "zach@vmware.com",
        "time": "Sat Sep 03 15:56:38 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@evo.osdl.org",
        "time": "Mon Sep 05 00:06:11 2005 -0700"
      },
      "message": "[PATCH] i386: generate better code around descriptor update and access functions\n\nGCC can generate better code around descriptor update and access functions\nwhen there is not an explicit \"eax\" register constraint.\n\nTesting: You won\u0027t boot if this is messed up, since the TSS descriptor will be\ncorrupted.  Verified the assembler and booted.\n\nSigned-off-by: Zachary Amsden \u003czach@vmware.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "4d37e7e3fd851428dede4d05d3e69d03795a744a",
      "tree": "f830928a0baf81f462bc9176dacbaad2dac2bb65",
      "parents": [
        "245067d1674d451855692fcd4647daf9fd47f82d"
      ],
      "author": {
        "name": "Zachary Amsden",
        "email": "zach@vmware.com",
        "time": "Sat Sep 03 15:56:38 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@evo.osdl.org",
        "time": "Mon Sep 05 00:06:11 2005 -0700"
      },
      "message": "[PATCH] i386: inline assembler: cleanup and encapsulate descriptor and task register management\n\ni386 inline assembler cleanup.\n\nThis change encapsulates descriptor and task register management.  Also,\nit is possible to improve assembler generation in two cases; savesegment\nmay store the value in a register instead of a memory location, which\nallows GCC to optimize stack variables into registers, and MOV MEM, SEG\nis always a 16-bit write to memory, making the casting in math-emu\nunnecessary.\n\nSigned-off-by: Zachary Amsden \u003czach@vmware.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "245067d1674d451855692fcd4647daf9fd47f82d",
      "tree": "9e82ee9ce5c1899e0da06622716dffda02e94b15",
      "parents": [
        "4bb0d3ec3e5b1e9e2399cdc641b3b6521ac9cdaa"
      ],
      "author": {
        "name": "Zachary Amsden",
        "email": "zach@vmware.com",
        "time": "Sat Sep 03 15:56:37 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@evo.osdl.org",
        "time": "Mon Sep 05 00:06:11 2005 -0700"
      },
      "message": "[PATCH] i386: cleanup serialize msr\n\ni386 arch cleanup.  Introduce the serialize macro to serialize processor\nstate.  Why the microcode update needs it I am not quite sure, since wrmsr()\nis already a serializing instruction, but it is a microcode update, so I will\nkeep the semantic the same, since this could be a timing workaround.  As far\nas I can tell, this has always been there since the original microcode update\nsource.\n\nSigned-off-by: Zachary Amsden \u003czach@vmware.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "4bb0d3ec3e5b1e9e2399cdc641b3b6521ac9cdaa",
      "tree": "5e8d7646f5c6a2cec990b6d591f230d496b20664",
      "parents": [
        "2a0694d15d55d0deed928786a6393d5e45e37d76"
      ],
      "author": {
        "name": "Zachary Amsden",
        "email": "zach@vmware.com",
        "time": "Sat Sep 03 15:56:36 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@evo.osdl.org",
        "time": "Mon Sep 05 00:06:11 2005 -0700"
      },
      "message": "[PATCH] i386: inline asm cleanup\n\ni386 Inline asm cleanup.  Use cr/dr accessor functions.\n\nAlso, a potential bugfix.  Also, some CR accessors really should be volatile.\nReads from CR0 (numeric state may change in an exception handler), writes to\nCR4 (flipping CR4.TSD) and reads from CR2 (page fault) prevent instruction\nre-ordering.  I did not add memory clobber to CR3 / CR4 / CR0 updates, as it\nwas not there to begin with, and in no case should kernel memory be clobbered,\nexcept when doing a TLB flush, which already has memory clobber.\n\nI noticed that page invalidation does not have a memory clobber.  I can\u0027t find\na bug as a result, but there is definitely a potential for a bug here:\n\n#define __flush_tlb_single(addr) \\\n\t__asm__ __volatile__(\"invlpg %0\": :\"m\" (*(char *) addr))\n\nSigned-off-by: Zachary Amsden \u003czach@vmware.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "56f1d5d52a21b93bc2984c920b17e0d80df5d1b2",
      "tree": "c745389db3c5eda219dc6dadcb096377dc4be2cf",
      "parents": [
        "a1740913cae231fb8e485306fb09671ed9a6e550"
      ],
      "author": {
        "name": "Natalie.Protasevich@unisys.com",
        "email": "Natalie.Protasevich@unisys.com",
        "time": "Sat Sep 03 15:56:34 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@evo.osdl.org",
        "time": "Mon Sep 05 00:06:10 2005 -0700"
      },
      "message": "[PATCH] ES7000 platform update (i386)\n\nThis is subarch update for ES7000.  I\u0027ve modified platform check code and\nremoved unnecessary OEM table parsing for newer systems that don\u0027t use OEM\ninformation during boot.  Parsing the table in fact is causing problems,\nand the platform doesn\u0027t get recognized.  The patch only affects the ES7000\nsubach.\n\nSigned-off-by: \u003cNatalie.Protasevich@unisys.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "911a62d42365076209e2c327e7688db296e35d62",
      "tree": "51e6d8525cd3547ea43129b5dd20339655674d57",
      "parents": [
        "484b90c4b965d54037ff99b198d84cdf144f8a35"
      ],
      "author": {
        "name": "Venkatesh Pallipadi",
        "email": "venkatesh.pallipadi@intel.com",
        "time": "Sat Sep 03 15:56:31 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@evo.osdl.org",
        "time": "Mon Sep 05 00:06:10 2005 -0700"
      },
      "message": "[PATCH] x86: sutomatically enable bigsmp when we have more than 8 CPUs\n\ni386 generic subarchitecture requires explicit dmi strings or command line\nto enable bigsmp mode.  The patch below removes that restriction, and uses\nbigsmp as soon as it finds more than 8 logical CPUs, Intel processors and\nxAPIC support.\n\nSigned-off-by: Venkatesh Pallipadi \u003cvenkatesh.pallipadi@intel.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "7ae65fd334232468a9d6b523a4fc141cd6ec5ea4",
      "tree": "cbc63abb55033d88f9a631741603a2a379bebee2",
      "parents": [
        "4116c527ea9517623369a5b3b037aedde280d672"
      ],
      "author": {
        "name": "Matt Tolentino",
        "email": "metolent@snoqualmie.dp.intel.com",
        "time": "Sat Sep 03 15:56:27 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@evo.osdl.org",
        "time": "Mon Sep 05 00:06:09 2005 -0700"
      },
      "message": "[PATCH] x86: fix EFI memory map parsing\n\nThe memory descriptors that comprise the EFI memory map are not fixed in\nstone such that the size could change in the future.  This uses the memory\ndescriptor size obtained from EFI to iterate over the memory map entries\nduring boot.  This enables the removal of an x86 specific pad (and ifdef)\nin the EFI header.  I also couldn\u0027t stomach the broken up nature of the\nfunction to put EFI runtime calls into virtual mode any longer so I fixed\nthat up a bit as well.\n\nFor reference, this patch only impacts x86.\n\nSigned-off-by: Matt Tolentino \u003cmatthew.e.tolentino@intel.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "a600388d28419305aad3c4c0af52c223cf6fa0af",
      "tree": "c70d3d80275f189c49311183472367f45d1a1ef2",
      "parents": [
        "fa5b08d5f818063d18433194f20359ef2ae50254"
      ],
      "author": {
        "name": "Zachary Amsden",
        "email": "zach@vmware.com",
        "time": "Sat Sep 03 15:55:04 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@evo.osdl.org",
        "time": "Mon Sep 05 00:05:48 2005 -0700"
      },
      "message": "[PATCH] x86: ptep_clear optimization\n\nAdd a new accessor for PTEs, which passes the full hint from the mmu_gather\nstruct; this allows architectures with hardware pagetables to optimize away\natomic PTE operations when destroying an address space.  Removing the\nlocked operation should allow better pipelining of memory access in this\nloop.  I measured an average savings of 30-35 cycles per zap_pte_range on\nthe first 500 destructions on Pentium-M, but I believe the optimization\nwould win more on older processors which still assert the bus lock on xchg\nfor an exclusive cacheline.\n\nUpdate: I made some new measurements, and this saves exactly 26 cycles over\nptep_get_and_clear on Pentium M.  On P4, with a PAE kernel, this saves 180\ncycles per ptep_get_and_clear, for a whopping 92160 cycles savings for a\nfull address space destruction.\n\npte_clear_full is not yet used, but is provided for future optimizations\n(in particular, when running inside of a hypervisor that queues page table\nupdates, the full hint allows us to avoid queueing unnecessary page table\nupdate for an address space in the process of being destroyed.\n\nThis is not a huge win, but it does help a bit, and sets the stage for\nfurther hypervisor optimization of the mm layer on all architectures.\n\nSigned-off-by: Zachary Amsden \u003czach@vmware.com\u003e\nCc: Christoph Lameter \u003cchristoph@lameter.com\u003e\nCc: \u003clinux-mm@kvack.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "fa5b08d5f818063d18433194f20359ef2ae50254",
      "tree": "f2b2bc88347a618f0c4b535d57d2a5271a5eb98e",
      "parents": [
        "0e5c9f39f64d8a55c5db37a5ea43e37d3422fd92"
      ],
      "author": {
        "name": "Kyle Moffett",
        "email": "mrmacman_g4@mac.com",
        "time": "Sat Sep 03 15:55:03 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@evo.osdl.org",
        "time": "Mon Sep 05 00:05:48 2005 -0700"
      },
      "message": "[PATCH] sab: consolidate kmem_bufctl_t\n\nThis is used only in slab.c and each architecture gets to define whcih\nunderlying type is to be used.\n\nSeems a bit silly - move it to slab.c and use the same type for all\narchitectures: unsigned int.\n\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "0e5c9f39f64d8a55c5db37a5ea43e37d3422fd92",
      "tree": "2b7da9a3813f1ce475d276d55243b2675b90349b",
      "parents": [
        "02b0ccef903e85673ead74ddb7c431f2f7ce183d"
      ],
      "author": {
        "name": "Chen, Kenneth W",
        "email": "kenneth.w.chen@intel.com",
        "time": "Sat Sep 03 15:55:02 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@evo.osdl.org",
        "time": "Mon Sep 05 00:05:46 2005 -0700"
      },
      "message": "[PATCH] remove hugetlb_clean_stale_pgtable() and fix huge_pte_alloc()\n\nI don\u0027t think we need to call hugetlb_clean_stale_pgtable() anymore\nin 2.6.13 because of the rework with free_pgtables().  It now collect\nall the pte page at the time of munmap.  It used to only collect page\ntable pages when entire one pgd can be freed and left with staled pte\npages.  Not anymore with 2.6.13.  This function will never be called\nand We should turn it into a BUG_ON.\n\nI also spotted two problems here, not Adam\u0027s fault :-)\n(1) in huge_pte_alloc(), it looks like a bug to me that pud is not\n    checked before calling pmd_alloc()\n(2) in hugetlb_clean_stale_pgtable(), it also missed a call to\n    pmd_free_tlb.  I think a tlb flush is required to flush the mapping\n    for the page table itself when we clear out the pmd pointing to a\n    pte page.  However, since hugetlb_clean_stale_pgtable() is never\n    called, so it won\u0027t trigger the bug.\n\nSigned-off-by: Ken Chen \u003ckenneth.w.chen@intel.com\u003e\nCc: Adam Litke \u003cagl@us.ibm.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "32e51a8c976fc72c3e9bcece9767d9908816bf8e",
      "tree": "480c62a4839b6c9553689da76f49fc208c6ac7f5",
      "parents": [
        "fd195c49fb17a21e232f50bddb2267150053cf34"
      ],
      "author": {
        "name": "Adam Litke",
        "email": "agl@us.ibm.com",
        "time": "Sat Sep 03 15:54:59 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@evo.osdl.org",
        "time": "Mon Sep 05 00:05:46 2005 -0700"
      },
      "message": "[PATCH] hugetlb: add pte_huge() macro\n\nThis patch adds a macro pte_huge(pte) for i386/x86_64 which is needed by a\npatch later in the series.  Instead of repeating (_PAGE_PRESENT |\n_PAGE_PSE), I\u0027ve added __LARGE_PTE to i386 to match x86_64.\n\nSigned-off-by: Adam Litke \u003cagl@us.ibm.com\u003e\nCc: \u003clinux-mm@kvack.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "9b4ee40ebbbaf3f8c775b023d89ceedda1167d79",
      "tree": "e227c96cf51beaa942fefa64277618e5cfc71217",
      "parents": [
        "4944e76d81801b8e60ed3e7789443f210c16ed65"
      ],
      "author": {
        "name": "Paolo \u0027Blaisorblade\u0027 Giarrusso",
        "email": "blaisorblade@yahoo.it",
        "time": "Sat Sep 03 15:54:57 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@evo.osdl.org",
        "time": "Mon Sep 05 00:05:45 2005 -0700"
      },
      "message": "[PATCH] mm: correct _PAGE_FILE comment\n\n_PAGE_FILE does not indicate whether a file is in page / swap cache, it is\nset just for non-linear PTE\u0027s.  Correct the comment for i386, x86_64, UML.\nAlso clearify _PAGE_NONE.\n\nSigned-off-by: Paolo \u0027Blaisorblade\u0027 Giarrusso \u003cblaisorblade@yahoo.it\u003e\nCc: Hugh Dickins \u003chugh@veritas.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "fd4fd5aac1282825195c6816ed40a2a6d42db5bf",
      "tree": "5908cf4c88a7c9d69ea7bdc1c354d51b6ff47f86",
      "parents": [
        "28ae55c98e4d16eac9a05a8a259d7763ef3aeb18"
      ],
      "author": {
        "name": "Stephen Rothwell",
        "email": "sfr@canb.auug.org.au",
        "time": "Sat Sep 03 15:54:30 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@evo.osdl.org",
        "time": "Mon Sep 05 00:05:39 2005 -0700"
      },
      "message": "[PATCH] mm: consolidate get_order\n\nSomeone mentioned that almost all the architectures used basically the same\nimplementation of get_order.  This patch consolidates them into\nasm-generic/page.h and includes that in the appropriate places.  The\nexceptions are ia64 and ppc which have their own (presumably optimised)\nversions.\n\nSigned-off-by: Stephen Rothwell \u003csfr@canb.auug.org.au\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "129521dcc94f781890f8f668219ab79f0073ff9f",
      "tree": "9f70707c88da65577f38814fe37b24c4b4957d64",
      "parents": [
        "824b558bbe2c298b165cdb54c33718994dda30bb",
        "f505380ba7b98ec97bf25300c2a58aeae903530b"
      ],
      "author": {
        "name": "Len Brown",
        "email": "len.brown@intel.com",
        "time": "Sat Sep 03 02:44:09 2005 -0400"
      },
      "committer": {
        "name": "Len Brown",
        "email": "len.brown@intel.com",
        "time": "Sat Sep 03 02:44:09 2005 -0400"
      },
      "message": "Merge linux-2.6 into linux-acpi-2.6 test\n"
    },
    {
      "commit": "2c656491e9ce77e12337073973794c4be467a489",
      "tree": "141e5506fdca8c0ba79f0f4cf13bbd0ba25d04e2",
      "parents": [
        "a6f9a70578b981321b63786ac8015f17cca4fcbd"
      ],
      "author": {
        "name": "Thomas Graf",
        "email": "tgraf@suug.ch",
        "time": "Sat Aug 20 17:24:25 2005 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Mon Aug 29 16:02:48 2005 -0700"
      },
      "message": "[NET]: Fix ipl\u003d\u003eihl typo in ip_fast_csum\n\nSigned-off-by: Thomas Graf \u003ctgraf@suug.ch\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "b0573dea1fb32ebc72ffa05980fd840df1d80860",
      "tree": "ae10ad849dce6dbeec1b281fbd51214030f21902",
      "parents": [
        "f9e815b376dc19e6afc551cd755ac64e9e42d81f"
      ],
      "author": {
        "name": "Patrick McHardy",
        "email": "kaber@trash.net",
        "time": "Tue Aug 09 19:30:51 2005 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Mon Aug 29 15:31:35 2005 -0700"
      },
      "message": "[NET]: Introduce SO_{SND,RCV}BUFFORCE socket options\n\nAllows overriding of sysctl_{wmem,rmrm}_max\n\nSigned-off-by: Patrick McHardy \u003ckaber@trash.net\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "6153df7b2f4d27c8bde054db1b947369a6f64d83",
      "tree": "2e30598ad48d05d0ea956b6097e0943a178d6299",
      "parents": [
        "07fefe4ca93b3e45b2bea32871a4496067888852"
      ],
      "author": {
        "name": "Len Brown",
        "email": "len.brown@intel.com",
        "time": "Thu Aug 25 12:27:09 2005 -0400"
      },
      "committer": {
        "name": "Len Brown",
        "email": "len.brown@intel.com",
        "time": "Thu Aug 25 12:40:44 2005 -0400"
      },
      "message": "[ACPI] delete CONFIG_ACPI_PCI\n\nDelete the ability to build an ACPI kernel that does\nnot include PCI support.  When such a machine is created\nand it requires a tuned kernel, send a patch.\n\nhttp://bugzilla.kernel.org/show_bug.cgi?id\u003d1364\n\nSigned-off-by: Len Brown \u003clen.brown@intel.com\u003e\n"
    },
    {
      "commit": "888ba6c62bc61a995d283977eb3a6cbafd6f4ac6",
      "tree": "2a1614a7c63460e98f55ac5905f3a4be679138f1",
      "parents": [
        "84ffa747520edd4556b136bdfc9df9eb1673ce12"
      ],
      "author": {
        "name": "Len Brown",
        "email": "len.brown@intel.com",
        "time": "Wed Aug 24 12:07:20 2005 -0400"
      },
      "committer": {
        "name": "Len Brown",
        "email": "len.brown@intel.com",
        "time": "Wed Aug 24 12:08:54 2005 -0400"
      },
      "message": "[ACPI] delete CONFIG_ACPI_BOOT\n\nit has been a synonym for CONFIG_ACPI since 2.6.12\n\nSigned-off-by: Len Brown \u003clen.brown@intel.com\u003e\n"
    },
    {
      "commit": "12aaa0855b39b5464db953fedf399fa91ee365ed",
      "tree": "d202ce6d6529fe23e950e24cd04b4d562f28705e",
      "parents": [
        "5153f7e6dba37390902c8fd3edc9a8cc19358ece"
      ],
      "author": {
        "name": "Zachary Amsden",
        "email": "zach@vmware.com",
        "time": "Tue Aug 16 12:05:09 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Aug 16 12:18:01 2005 -0700"
      },
      "message": "[PATCH] i386 / desc_empty macro is incorrect\n\nChuck Ebbert noticed that the desc_empty macro is incorrect.  Fix it.\n\nThankfully, this is not used as a security check, but it can falsely\noverwrite TLS segments with carefully chosen base / limits.  I do not\nbelieve this is an issue in practice, but it is a kernel bug.\n\nSigned-off-by: Zachary Amsden \u003czach@vmware.com\u003e\nSigned-off-by: Chris Wright \u003cchrisw@osdl.org\u003e\n\n[ x86-64 had the same problem, and the same fix. Linus ]\n\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "2ba84684e8cf6f980e4e95a2300f53a505eb794e",
      "tree": "f8a746aca3ca8aeb832d83e9297f2ffe636082c6",
      "parents": [
        "b4b08e581fac8e0ba9ae348bdc13246c9798c99e"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sun Aug 14 18:21:30 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sun Aug 14 18:21:30 2005 -0700"
      },
      "message": "Revert PCIBIOS_MIN_IO changes for 2.6.13\n\nThis reverts commits\n\n  71db63acff69618b3d9d3114bd061938150e146b\n\t[PATCH] increase PCIBIOS_MIN_IO on x86\n\nand\n\n  0b2bfb4e7ff61f286676867c3508569bea6fbf7a\n    ACPI: increase PCIBIOS_MIN_IO on x86\n\nsince Lukas Sandströ\u003clukass@etek.chalmers.se\u003e reports that this breaks\nhis on-board nvidia audio.\n\nWe should re-visit this later. For now we revert the change\n\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "6c79d7260a8522a54374fa10dd2838eaef492cf2",
      "tree": "40c5b19a2e5af5e2bc4c894faed98df77bf37749",
      "parents": [
        "e525e153c7a99fc64af68e7f50a2660babd6752b"
      ],
      "author": {
        "name": "Tom Duffy",
        "email": "thomas.duffy.99@alumni.brown.edu",
        "time": "Sun Aug 07 09:42:16 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sun Aug 07 10:00:38 2005 -0700"
      },
      "message": "[PATCH] Make visws compile again\n\nIn file included from linux-2.6.13-rc5/arch/i386/kernel/timers/timer_pit.c:20:\nlinux-2.6.13-rc5/include/asm-i386/mach-visws/do_timer.h: In function `do_timer_overflow\u0027:\nlinux-2.6.13-rc5/include/asm-i386/mach-visws/do_timer.h:32: error: `i8259A_lock\u0027 undeclared (first use in this function)\nlinux-2.6.13-rc5/include/asm-i386/mach-visws/do_timer.h:32: error: (Each undeclared identifier is reported only once\nlinux-2.6.13-rc5/include/asm-i386/mach-visws/do_timer.h:32: error: for each function it appears in.)\nmake[3]: *** [arch/i386/kernel/timers/timer_pit.o] Error 1\nmake[2]: *** [arch/i386/kernel/timers] Error 2\nmake[1]: *** [arch/i386/kernel] Error 2\nmake: *** [_all] Error 2\n\nSigned-off-by: Tom Duffy \u003cthomas.duffy.99@alumni.brown.edu\u003e\nCc: Andrey Panin \u003cpazke@orbita1.ru\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "71db63acff69618b3d9d3114bd061938150e146b",
      "tree": "49c43f9115648cd730e4a11e455877ad5ee680c5",
      "parents": [
        "688d191821de7893043f5a37970472627aaffa4e"
      ],
      "author": {
        "name": "Ivan Kokshaysky",
        "email": "ink@jurassic.park.msu.ru",
        "time": "Wed Aug 03 02:59:47 2005 +0400"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Aug 02 18:21:25 2005 -0700"
      },
      "message": "[PATCH] increase PCIBIOS_MIN_IO on x86\n\nThere is a number of x86 laptops that have some non-PCI IO ports\nin the 0x1000-0x1fff range, and it\u0027s quite hard to control the correct\norder of resource allocation between PCI and other subsystems controlling\nthese ports. Especially with modular kernel.\n\nSo just increase PCIBIOS_MIN_IO to 0x4000 to prevent any new PCI\nresource allocations in the problematic range (this limitation must\napply _only_ to the root bus resources - see Linus\u0027 change in\npci_bus_alloc_resource).  As PCIBIOS_MIN_IO and PCIBIOS_MIN_CARDBUS_IO\nare the same now on i386 and x86-64, we can remove the latter.\n\nSigned-off-by: Ivan Kokshaysky \u003cink@jurassic.park.msu.ru\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "d6d2a2ab05da6e44bd127fe375078bb7c36a0ad0",
      "tree": "7b4f2893d8c09fba67c83458efeea9396977bc70",
      "parents": [
        "33ac02aa4cef417871e128ab4a6565e751e5f3b2"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@evo.osdl.org",
        "time": "Fri Jul 29 11:01:22 2005 -0400"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@evo.osdl.org",
        "time": "Fri Jul 29 11:01:22 2005 -0400"
      },
      "message": "x86: fix new find_first_bit()\n\nSome edge problems with the original C rewrite.\n\nThanks go to Cal Peake, who pinpointed the breakage to the rewrite, and\ntested this fixed version.\n\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "5b943fbfaf0dbdd3cd9ff2dda100f0b8c47a7d8c",
      "tree": "5c6082a8aa0fca1f0459871f95d83177ce02943b",
      "parents": [
        "74f0629397cb435e144ff47c48f3bc39e879f196"
      ],
      "author": {
        "name": "Andi Kleen",
        "email": "ak@suse.de",
        "time": "Thu Jul 28 21:15:26 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Thu Jul 28 21:45:58 2005 -0700"
      },
      "message": "[PATCH] x86_64: i386/x86_64: remove prototypes for not existing functions in smp.h\n\nSigned-off-by: Andi Kleen \u003cak@suse.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "cd85c8b4457a52d3545fdb9532082b2c1ebd5f21",
      "tree": "58b294ef3cd90f08fa77555352de63934a881405",
      "parents": [
        "79a8810221ee9ea96c4e5a5817afb88f22ea698c"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Thu Jul 28 08:45:06 2005 -0400"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Thu Jul 28 08:40:31 2005 -0700"
      },
      "message": "[PATCH] speed up on find_first_bit for i386 (let compiler do the work)\n\nAvoid using \"rep scas\", just let the compiler select a sequence of\nregular instructions.\n\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "388b0925f59461cb482447ea87e6942b5653ee1d",
      "tree": "45437b5403ccdf4b8e5b8bee30e8c26c09c03b2c",
      "parents": [
        "9e566d8bd61f939b7f5d7d969f5b178571471cf9"
      ],
      "author": {
        "name": "Andrew Morton",
        "email": "akpm@osdl.org",
        "time": "Wed Jul 27 11:43:25 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Wed Jul 27 16:25:47 2005 -0700"
      },
      "message": "[PATCH] user_mode_vm() build fix\n\ninclude/asm/ptrace.h: In function `user_mode_vm\u0027:\ninclude/asm/ptrace.h:67: `VM_MASK\u0027 undeclared (first use in this function)\n\nCc: Chuck Ebbert \u003c76306.1226@compuserve.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "ae6578fe9b65208dee8eda40629984efd23740c4",
      "tree": "6b3c5fdb78864ef276e0d6bb4bb1eeecfe17587d",
      "parents": [
        "4d7de66e2cc508761f050d1d4eaca88a6e6f711e"
      ],
      "author": {
        "name": "Chuck Ebbert",
        "email": "76306.1226@compuserve.com",
        "time": "Tue Jul 26 21:57:24 2005 -0400"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Jul 26 19:25:01 2005 -0700"
      },
      "message": "[PATCH] i386: clean up user_mode macros\n\n - make the new user_mode() return 0 or 1 (same as x86_64)\n\n - remove conditional jump from user_mode_vm() it\u0027s called every timer\n   tick on each CPU on SMP)\n\nSigned-off-by: Chuck Ebbert \u003c76306.1226@compuserve.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "4a1421f81b64e49ce932125e7222a2d7b7f87f13",
      "tree": "8f960fc27c718039bb9b93b237233d304eec8be7",
      "parents": [
        "59586e5a262a29361c45c929ea3253d4aec830b0"
      ],
      "author": {
        "name": "Eric W. Biederman",
        "email": "ebiederm@xmission.com",
        "time": "Tue Jul 26 11:41:26 2005 -0600"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Jul 26 14:35:42 2005 -0700"
      },
      "message": "[PATCH] i386: Implement machine_emergency_reboot\n\nset_cpus_allowed is not safe in interrupt context\nand disabling apics is complicated code so don\u0027t\ncall machine_shutdown on i386 from emergency_restart().\n\nSigned-off-by: Eric W. Biederman \u003cebiederm@xmission.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "7c9034735eccbf82608a4602c59aaf6053ea9416",
      "tree": "219e8cd4b5cfffeb261f42a2bd8e512be19cba40",
      "parents": [
        "abcd9e51f5b832439b119d530db1353c12fd4073"
      ],
      "author": {
        "name": "Eric W. Biederman",
        "email": "ebiederm@xmission.com",
        "time": "Tue Jul 26 11:29:55 2005 -0600"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Jul 26 14:35:41 2005 -0700"
      },
      "message": "[PATCH] Add emergency_restart()\n\nWhen the kernel is working well and we want to restart cleanly\nkernel_restart is the function to use.   But in many instances\nthe kernel wants to reboot when thing are expected to be working\nvery badly such as from panic or a software watchdog handler.\n\nThis patch adds the function emergency_restart() so that\ncallers can be clear what semantics they expect when calling\nrestart.  emergency_restart() is expected to be callable\nfrom interrupt context and possibly reliable in even more\ntrying circumstances.\n\nThis is an initial generic implementation for all architectures.\n\nSigned-off-by: Eric W. Biederman \u003cebiederm@xmission.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "2847e3478c3d8119eedc3e0cb85a308b21f681dd",
      "tree": "40e24b6a405331ae5fc9ed38b0d4872c84069891",
      "parents": [
        "38afd6adf6bccd7176e88c07cac104d3639aa30d"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@evo.osdl.org",
        "time": "Fri Jul 22 18:19:20 2005 -0400"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@evo.osdl.org",
        "time": "Fri Jul 22 18:19:20 2005 -0400"
      },
      "message": "x86: use alternative instructions for fnsave/fxsave too\n\nThis one ends up using an inline asm format that claims to read memory\nand then clobber it (rather than just write it directly), which made it\neasier to use the existing \"alternative_input()\" infrastructure support.\n\nNow the fxsave code matches the fxrstor.\n"
    },
    {
      "commit": "8ed1383fb7b6685968588141d5934e0e6715e954",
      "tree": "7ee8476ec114dbab907e3acf4e8a9d0342bf6751",
      "parents": [
        "b339a18b81a1f6ca1455559594f5df872b9e59f4"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@evo.osdl.org",
        "time": "Fri Jul 22 16:06:16 2005 -0400"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@evo.osdl.org",
        "time": "Fri Jul 22 16:06:16 2005 -0400"
      },
      "message": "x86: make restore_fpu() use alternative assembler instructions\n\nIt\u0027s really just a single instruction, conditional on whether the CPU\nsupports FXSR or not, so implement it as such instead of making it a\nfunction that queries FXSR dynamically.\n\nThis means that the instruction just gets automatically rewritten to the\ncorrect one at boot-time.\n"
    },
    {
      "commit": "0eeca28300df110bd6ed54b31193c83b87921443",
      "tree": "7db42d8a18d80eca538f5b7d25e0532b8fa38b85",
      "parents": [
        "bd4c625c061c2a38568d0add3478f59172455159"
      ],
      "author": {
        "name": "Robert Love",
        "email": "rml@novell.com",
        "time": "Tue Jul 12 17:06:03 2005 -0400"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Jul 12 20:38:38 2005 -0700"
      },
      "message": "[PATCH] inotify\n\ninotify is intended to correct the deficiencies of dnotify, particularly\nits inability to scale and its terrible user interface:\n\n        * dnotify requires the opening of one fd per each directory\n          that you intend to watch. This quickly results in too many\n          open files and pins removable media, preventing unmount.\n        * dnotify is directory-based. You only learn about changes to\n          directories. Sure, a change to a file in a directory affects\n          the directory, but you are then forced to keep a cache of\n          stat structures.\n        * dnotify\u0027s interface to user-space is awful.  Signals?\n\ninotify provides a more usable, simple, powerful solution to file change\nnotification:\n\n        * inotify\u0027s interface is a system call that returns a fd, not SIGIO.\n\t  You get a single fd, which is select()-able.\n        * inotify has an event that says \"the filesystem that the item\n          you were watching is on was unmounted.\"\n        * inotify can watch directories or files.\n\nInotify is currently used by Beagle (a desktop search infrastructure),\nGamin (a FAM replacement), and other projects.\n\nSee Documentation/filesystems/inotify.txt.\n\nSigned-off-by: Robert Love \u003crml@novell.com\u003e\nCc: John McCutchan \u003cttb@tentacle.dhs.org\u003e\nCc: Christoph Hellwig \u003chch@lst.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "5028770a42e7bc4d15791a44c28f0ad539323807",
      "tree": "74800e35129775413c13ce7caf036ca19e3ce56c",
      "parents": [
        "9f02d6b7b43d46a74dd385f06090104ecd0fb807",
        "d8683a0cb5d09cb7f19feefa708424a84577e68f"
      ],
      "author": {
        "name": "Len Brown",
        "email": "len.brown@intel.com",
        "time": "Tue Jul 12 17:21:56 2005 -0400"
      },
      "committer": {
        "name": "Len Brown",
        "email": "len.brown@intel.com",
        "time": "Tue Jul 12 17:21:56 2005 -0400"
      },
      "message": "[ACPI] merge acpi-2.6.12 branch into latest Linux 2.6.13-rc...\n\nSigned-off-by: Len Brown \u003clen.brown@intel.com\u003e\n"
    },
    {
      "commit": "d8683a0cb5d09cb7f19feefa708424a84577e68f",
      "tree": "56438edb1f7cd8875e405a830405e35bdc5c4740",
      "parents": [
        "02df8b9385c21fdba165bd380f60eca1d3b0578b"
      ],
      "author": {
        "name": "Len Brown",
        "email": "len.brown@intel.com",
        "time": "Sun Jul 03 16:42:23 2005 -0400"
      },
      "committer": {
        "name": "Len Brown",
        "email": "len.brown@intel.com",
        "time": "Tue Jul 12 00:16:06 2005 -0400"
      },
      "message": "[ACPI] increase MAX_IO_APICS to 64 on i386\n\nx86_64 was already 128\n\nhttp://bugzilla.kernel.org/show_bug.cgi?id\u003d3754\n\nSigned-off-by: Len Brown \u003clen.brown@intel.com\u003e\n"
    },
    {
      "commit": "02df8b9385c21fdba165bd380f60eca1d3b0578b",
      "tree": "988ad0e0ca73a40993fb1458d5cd19f90f922b31",
      "parents": [
        "17e9c78a75ce9eacd61200f9e1f1924012e28846"
      ],
      "author": {
        "name": "Venkatesh Pallipadi",
        "email": "venkatesh.pallipadi@intel.com",
        "time": "Fri Apr 15 15:07:10 2005 -0400"
      },
      "committer": {
        "name": "Len Brown",
        "email": "len.brown@intel.com",
        "time": "Tue Jul 12 00:14:36 2005 -0400"
      },
      "message": "[ACPI] enable C2 and C3 idle power states on SMP\nhttp://bugzilla.kernel.org/show_bug.cgi?id\u003d4401\n\nSigned-off-by: Venkatesh Pallipadi \u003cvenkatesh.pallipadi@intel.com\u003e\nSigned-off-by: Len Brown \u003clen.brown@intel.com\u003e\n"
    },
    {
      "commit": "c9c3e457de24cca2ca688fa397d93a241f472048",
      "tree": "570b7a07f9c6f570341481500a2bff21c1328d8d",
      "parents": [
        "acf05f4b7f558051ea0028e8e617144123650272"
      ],
      "author": {
        "name": "David Shaohua Li",
        "email": "shaohua.li@intel.com",
        "time": "Fri Apr 01 00:07:31 2005 -0500"
      },
      "committer": {
        "name": "Len Brown",
        "email": "len.brown@intel.com",
        "time": "Tue Jul 12 00:03:30 2005 -0400"
      },
      "message": "[ACPI] PNPACPI vs sound IRQ\n\nhttp://bugme.osdl.org/show_bug.cgi?id\u003d4016\n\nWritten-by: David Shaohua Li \u003cshaohua.li@intel.com\u003e\nAcked-by: Adam Belay \u003cabelay@novell.com\u003e\nSigned-off-by: Len Brown \u003clen.brown@intel.com\u003e\n"
    },
    {
      "commit": "e8af300c3bd87b2310f1e7a642f37e0fe49a754b",
      "tree": "3a4d7be252aef85fb93cd6ac65dcd9a983f5bdd8",
      "parents": [
        "8ff8b27bb8ebfd863b49653da1b7bbd8609fcd7e"
      ],
      "author": {
        "name": "Dave Jones",
        "email": "davej@redhat.com",
        "time": "Thu Jul 07 17:56:39 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Thu Jul 07 18:23:42 2005 -0700"
      },
      "message": "[PATCH] Fix up non-NUMA breakage in mmzone.h\n\nIf CONFIG_NUMA isn\u0027t set, we use the define in \u003clinux/mmzone.h\u003e for\nearly_pfn_to_nid (which defines it to 0).\n\nBecause of this, the prototype needs to move inside the CONFIG_NUMA too, or\nanal gcc\u0027s get really confused.\n\nSigned-off-by: Dave Jones \u003cdavej@redhat.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "8ff8b27bb8ebfd863b49653da1b7bbd8609fcd7e",
      "tree": "16577a65b896e0e123701791a62ac056250f6d99",
      "parents": [
        "3b520b238e018ef0e9d11c9115d5e7d9419c4ef9"
      ],
      "author": {
        "name": "Dave Jones",
        "email": "davej@redhat.com",
        "time": "Thu Jul 07 17:56:39 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Thu Jul 07 18:23:42 2005 -0700"
      },
      "message": "[PATCH] Clean up numa defines in mmzone.h\n\nThe recent cleanups to asm-i386/mmzone.h were suboptimal nesting an ifdef of\nthe same symbol.  This patch removes some of the ifdef\u0027ery to make things more\nreadable again.\n\nSigned-off-by: Dave Jones \u003cdavej@redhat.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "3b520b238e018ef0e9d11c9115d5e7d9419c4ef9",
      "tree": "8b9bf3ccf2dd13dbbbcb4a3ff5028a351817b657",
      "parents": [
        "01d299367fe868851a632cfbdb606845f57682aa"
      ],
      "author": {
        "name": "Shaohua Li",
        "email": "shaohua.li@intel.com",
        "time": "Thu Jul 07 17:56:38 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Thu Jul 07 18:23:42 2005 -0700"
      },
      "message": "[PATCH] MTRR suspend/resume cleanup\n\nThere has been some discuss about solving the SMP MTRR suspend/resume\nbreakage, but I didn\u0027t find a patch for it.  This is an intent for it.  The\nbasic idea is moving mtrr initializing into cpu_identify for all APs (so it\nworks for cpu hotplug).  For BP, restore_processor_state is responsible for\nrestoring MTRR.\n\nSigned-off-by: Shaohua Li \u003cshaohua.li@intel.com\u003e\nAcked-by: Andi Kleen \u003cak@muc.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "306e440daf5f40b195afd83d05dee89fa63189e7",
      "tree": "1f72d9d8df95a60e09968980ba6da6e8bb3d7dcf",
      "parents": [
        "bcbda35ca7470bf0123a7ae685899776f67814b2"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Jun 30 02:58:55 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@ppc970.osdl.org",
        "time": "Thu Jun 30 08:45:10 2005 -0700"
      },
      "message": "[PATCH] x86: i8253/i8259A lock cleanup\n\nIntroduce proper declarations for i8253_lock and i8259A_lock.\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "026d02a236f429eb61a1277166bd425f8514c431",
      "tree": "dc1b05766bb5737a77113dd3071431c4f164523c",
      "parents": [
        "e763b90c41563a0f8258d379fe71a9a1f1fa5445"
      ],
      "author": {
        "name": "Russell King",
        "email": "rmk@dyn-67.arm.linux.org.uk",
        "time": "Wed Jun 29 18:45:19 2005 +0100"
      },
      "committer": {
        "name": "Russell King",
        "email": "rmk+kernel@arm.linux.org.uk",
        "time": "Wed Jun 29 18:45:19 2005 +0100"
      },
      "message": "[PATCH] Serial: Split 8250 port table (part 2)\n\nRemove legacy ISA serial ports for Accent, Boca, Fourport, Hub6 and MCA\nfrom the architecture specific serial.h include.\n\nThe only ports which remain in asm-*/serial.h are the platform specific\nentries.  These should really be converted by platform maintainers to\nuse a platform device, such as can be found in\narch/arm/mach-footbridge/isa.c\n\nSigned-off-by: Russell King \u003crmk+kernel@arm.linux.org.uk\u003e\n"
    },
    {
      "commit": "8644d2a42bdba2d513f71c07eaf1b6f9b718b8eb",
      "tree": "c43b6c2fdf1b68b66906a2de69446dcec0f9af6b",
      "parents": [
        "1cde8a16815bd85c8137d1ea556398983c597c11",
        "99f95e5286df2f69edab8a04c7080d986ee4233b"
      ],
      "author": {
        "name": "Greg KH",
        "email": "greg@press.(none)",
        "time": "Mon Jun 27 22:07:56 2005 -0700"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Mon Jun 27 22:07:56 2005 -0700"
      },
      "message": "Merge rsync://rsync.kernel.org/pub/scm/linux/kernel/git/torvalds/linux-2.6\n"
    },
    {
      "commit": "bb4a61b6eaee01707f24deeefc5d7136f25f75c5",
      "tree": "8d353d7b04addad950de8ae24eda7cdfe6fbea85",
      "parents": [
        "e24c2d963a604d9eaa560c90371fa387d3eec8f1"
      ],
      "author": {
        "name": "Andrew Morton",
        "email": "akpm@osdl.org",
        "time": "Mon Jun 06 23:07:46 2005 -0700"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Mon Jun 27 21:52:46 2005 -0700"
      },
      "message": "[PATCH] PCI: fix up errors after dma bursting patch and CONFIG_PCI\u003dn\n\nWith CONFIG_PCI\u003dn:\n\nIn file included from include/linux/pci.h:917,\n                 from lib/iomap.c:6:\ninclude/asm/pci.h:104: warning: `enum pci_dma_burst_strategy\u0027 declared inside parameter list\ninclude/asm/pci.h:104: warning: its scope is only this definition or declaration, which is probably not what you want.\ninclude/asm/pci.h: In function `pci_dma_burst_advice\u0027:\ninclude/asm/pci.h:106: dereferencing pointer to incomplete type\ninclude/asm/pci.h:106: `PCI_DMA_BURST_INFINITY\u0027 undeclared (first use in this function)\ninclude/asm/pci.h:106: (Each undeclared identifier is reported only once\ninclude/asm/pci.h:106: for each function it appears in.)\nmake[1]: *** [lib/iomap.o] Error 1\n\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n"
    },
    {
      "commit": "e24c2d963a604d9eaa560c90371fa387d3eec8f1",
      "tree": "66be193d59dd22fac0b62980769c4f19e045b5a2",
      "parents": [
        "2311b1f2bbd36fa5f366a7448c718b2556e0f02c"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Jun 02 12:55:50 2005 -0700"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Mon Jun 27 21:52:45 2005 -0700"
      },
      "message": "[PATCH] PCI: DMA bursting advice\n\nAfter seeing, at best, \"guesses\" as to the following kind\nof information in several drivers, I decided that we really\nneed a way for platforms to specifically give advice in this\narea for what works best with their PCI controller implementation.\n\nBasically, this new interface gives DMA bursting advice on\nPCI.  There are three forms of the advice:\n\n1) Burst as much as possible, it is not necessary to end bursts\n   on some particular boundary for best performance.\n\n2) Burst on some byte count multiple.  A DMA burst to some multiple of\n   number of bytes may be done, but it is important to end the burst\n   on an exact multiple for best performance.\n\n   The best example of this I am aware of are the PPC64 PCI\n   controllers, where if you end a burst mid-cacheline then\n   chip has to refetch the data and the IOMMU translations\n   which hurts performance a lot.\n\n3) Burst on a single byte count multiple.  Bursts shall end\n   exactly on the next multiple boundary for best performance.\n\n   Sparc64 and Alpha\u0027s PCI controllers operate this way.  They\n   disconnect any device which tries to burst across a cacheline\n   boundary.\n\n   Actually, newer sparc64 PCI controllers do not have this behavior.\n   That is why the \"pdev\" is passed into the interface, so I can\n   add code later to check which PCI controller the system is using\n   and give advice accordingly.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n"
    },
    {
      "commit": "c47abbbffd17a7e774ec1ef952a1c3621a9cb13b",
      "tree": "553261e3b6f9c4b70d6574bed6e331ffef9c2cc4",
      "parents": [
        "da9091ee3b5f9808c64abb925cefe7b100018614"
      ],
      "author": {
        "name": "Alan Cox",
        "email": "alan@lxorguk.ukuu.org.uk",
        "time": "Mon Jun 27 15:24:31 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@ppc970.osdl.org",
        "time": "Mon Jun 27 17:36:41 2005 -0700"
      },
      "message": "[PATCH] ide: sensible probing for PCI systems\n\nOld ISA/VESA systems sometimes put tertiary IDE controllers at addresses\n0x1e8, 0x168, 0x1e0 or 0x160.  Linux thus probes these addresses on x86\nsystems.  Unfortunately some PCI systems now use these addresses for other\npurposes which leads to users seeing minute plus hangs during boot or even\ncrashes.\n\nThe following patch (again has been in Fedora for a while) only probes the\nobscure legacy ISA ports on machinea that are pre-PCI.  This seems to keep\neveryone happy and if there is someone with that utterly weird corner case\nthe ide\u003d command line still provides a get out of jail card.\nUnsurprisingly we\u0027ve not found anyone so affected.\n\nSigned-off-by: Alan Cox \u003calan@redhat.com\u003e\nAcked-by: Bartlomiej Zolnierkiewicz \u003cB.Zolnierkiewicz@elka.pw.edu.pl\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "ffaa8bd6c904d1ab79b677905067349a5ff51d84",
      "tree": "ec7960440a7d7700e15bf2e34453db448b808c5e",
      "parents": [
        "6ae3db110e62b0846aae1b5c6e661484ee3a5ed1"
      ],
      "author": {
        "name": "Andrea Arcangeli",
        "email": "andrea@suse.de",
        "time": "Mon Jun 27 14:36:36 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@ppc970.osdl.org",
        "time": "Mon Jun 27 15:11:44 2005 -0700"
      },
      "message": "[PATCH] seccomp: tsc disable\n\nI believe at least for seccomp it\u0027s worth to turn off the tsc, not just for\nHT but for the L2 cache too.  So it\u0027s up to you, either you turn it off\ncompletely (which isn\u0027t very nice IMHO) or I recommend to apply this below\npatch.\n\nThis has been tested successfully on x86-64 against current cogito\nrepository (i686 compiles so I didn\u0027t bother testing ;).  People selling\nthe cpu through cpushare may appreciate this bit for a peace of mind.\n\nThere\u0027s no way to get any timing info anymore with this applied\n(gettimeofday is forbidden of course).  The seccomp environment is\ncompletely deterministic so it can\u0027t be allowed to get timing info, it has\nto be deterministic so in the future I can enable a computing mode that\ndoes a parallel computing for each task with server side transparent\ncheckpointing and verification that the output is the same from all the 2/3\nseller computers for each task, without the buyer even noticing (for now\nthe verification is left to the buyer client side and there\u0027s no\ncheckpointing, since that would require more kernel changes to track the\ndirty bits but it\u0027ll be easy to extend once the basic mode is finished).\n\nEliminating a cold-cache read of the cr4 global variable will save one\ncacheline during the tlb flush while making the code per-cpu-safe at the\nsame time.  Thanks to Mikael Pettersson for noticing the tlb flush wasn\u0027t\nper-cpu-safe.\n\nThe global tlb flush can run from irq (IPI calling do_flush_tlb_all) but\nit\u0027ll be transparent to the switch_to code since the IPI won\u0027t make any\nchange to the cr4 contents from the point of view of the interrupted code\nand since it\u0027s now all per-cpu stuff, it will not race.  So no need to\ndisable irqs in switch_to slow path.\n\nSigned-off-by: Andrea Arcangeli \u003candrea@cpushare.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "22e2c507c301c3dbbcf91b4948b88f78842ee6c9",
      "tree": "9a97c91d1362e69703aa286021daffb8a5456f4c",
      "parents": [
        "020f46a39eb7b99a575b9f4d105fce2b142acdf1"
      ],
      "author": {
        "name": "Jens Axboe",
        "email": "axboe@suse.de",
        "time": "Mon Jun 27 10:55:12 2005 +0200"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@ppc970.osdl.org",
        "time": "Mon Jun 27 14:33:29 2005 -0700"
      },
      "message": "[PATCH] Update cfq io scheduler to time sliced design\n\nThis updates the CFQ io scheduler to the new time sliced design (cfq\nv3).  It provides full process fairness, while giving excellent\naggregate system throughput even for many competing processes.  It\nsupports io priorities, either inherited from the cpu nice value or set\ndirectly with the ioprio_get/set syscalls.  The latter closely mimic\nset/getpriority.\n\nThis import is based on my latest from -mm.\n\nSigned-off-by: Jens Axboe \u003caxboe@suse.de\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "60e64d46a58236e3c718074372cab6a5b56a3b15",
      "tree": "194e5fa7a53a1ac4a106b1527ec69cf3c2179bb0",
      "parents": [
        "5f016456c96868c27df248a54d1cc919e7b70a23"
      ],
      "author": {
        "name": "Vivek Goyal",
        "email": "vgoyal@in.ibm.com",
        "time": "Sat Jun 25 14:58:19 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@ppc970.osdl.org",
        "time": "Sat Jun 25 16:24:53 2005 -0700"
      },
      "message": "[PATCH] kdump: Routines for copying dump pages\n\nThis patch provides the interfaces necessary to read the dump contents,\ntreating it as a high memory device.\n\nSigned off by Hariprasad Nellitheertha \u003chari@in.ibm.com\u003e\nSigned-off-by: Eric Biederman \u003cebiederm@xmission.com\u003e\nSigned-off-by: Vivek Goyal \u003cvgoyal@in.ibm.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "625f1c8219d95300ed32e4c67eb62a50ded095ba",
      "tree": "2e303a649604cabc922f2ade67435eaf83bbfa98",
      "parents": [
        "cf13f0eaffa31bf6a145c53c589654b11c72ddc7"
      ],
      "author": {
        "name": "Vivek Goyal",
        "email": "vgoyal@in.ibm.com",
        "time": "Sat Jun 25 14:58:12 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@ppc970.osdl.org",
        "time": "Sat Jun 25 16:24:51 2005 -0700"
      },
      "message": "[PATCH] Kdump: Export crash notes section address through sysfs\n\no Following patch exports kexec global variable \"crash_notes\" to user space\n  through sysfs as kernel attribute in /sys/kernel.\n\nSigned-off-by: Maneesh Soni \u003cmaneesh@in.ibm.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "5033cba087f6ac773002123aafbea1aad4267682",
      "tree": "fa0301c28c004e81d3aad597f23ea2407db8396c",
      "parents": [
        "dd2a13054ffc25783a74afb5e4a0f2115e45f9cd"
      ],
      "author": {
        "name": "Eric W. Biederman",
        "email": "ebiederm@xmission.com",
        "time": "Sat Jun 25 14:57:56 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@ppc970.osdl.org",
        "time": "Sat Jun 25 16:24:49 2005 -0700"
      },
      "message": "[PATCH] kexec: x86 kexec core\n\nThis is the i386 implementation of kexec.\n\nSigned-off-by: Eric Biederman \u003cebiederm@xmission.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "3d345e3fc9e9177deb7c82e5c79e32d77eb63cce",
      "tree": "4c9ecef7b3baf0f9649933510d2645a50665c2d6",
      "parents": [
        "5ded01e83ec3b60191b03b9f88f53acd4e6112f5"
      ],
      "author": {
        "name": "Eric W. Biederman",
        "email": "ebiederm@xmission.com",
        "time": "Sat Jun 25 14:57:49 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@ppc970.osdl.org",
        "time": "Sat Jun 25 16:24:48 2005 -0700"
      },
      "message": "[PATCH] kexec: x86: add CONFIG_PYSICAL_START\n\nFor one kernel to report a crash another kernel has created we need\nto have 2 kernels loaded simultaneously in memory.  To accomplish this\nthe two kernels need to built to run at different physical addresses.\n\nThis patch adds the CONFIG_PHYSICAL_START option to the x86 kernel\nso we can do just that.  You need to know what you are doing and\nthe ramifications are before changing this value, and most users\nwon\u0027t care so I have made it depend on CONFIG_EMBEDDED\n\nbzImage kernels will work and run at a different address when compiled\nwith this option but they will still load at 1MB.  If you need a kernel\nloaded at a different address as well you need to boot a vmlinux.\n\nSigned-off-by: Eric Biederman \u003cebiederm@xmission.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "650927ef8ab1e9b05b77a3f32ca7adcedaae9306",
      "tree": "25ae75b36a2543d6f7ccc6bbe30c35c65d038ee3",
      "parents": [
        "719e711050482be667dafd39ec787859d353931c"
      ],
      "author": {
        "name": "Eric W. Biederman",
        "email": "ebiederm@xmission.com",
        "time": "Sat Jun 25 14:57:44 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@ppc970.osdl.org",
        "time": "Sat Jun 25 16:24:47 2005 -0700"
      },
      "message": "[PATCH] kexec: x86: resture apic virtual wire mode on shutdown\n\nWhen coming out of apic mode attempt to set the appropriate\napic back into virtual wire mode.  This improves on previous versions\nof this patch by by never setting bot the local apic and the ioapic\ninto veritual wire mode.\n\nThis code looks at data from the mptable to see if an ioapic has\nan ExtInt input to make this decision.  A future improvement\nis to figure out which apic or ioapic was in virtual wire mode\nat boot time and to remember it.  That is potentially a more accurate\nmethod, of selecting which apic to place in virutal wire mode.\n\nSigned-off-by: Eric Biederman \u003cebiederm@xmission.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "9635b47d910223745258768418003580ef7dba17",
      "tree": "b61adfddad3bf3069c9fa379b34805420b4ef85c",
      "parents": [
        "8f43d03fe2c4962c11d8227ac9505e590bad758b"
      ],
      "author": {
        "name": "Eric W. Biederman",
        "email": "ebiederm@xmission.com",
        "time": "Sat Jun 25 14:57:41 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@ppc970.osdl.org",
        "time": "Sat Jun 25 16:24:46 2005 -0700"
      },
      "message": "[PATCH] kexec: x86: local apic fix\n\nFrom: \"Maciej W. Rozycki\" \u003cmacro@linux-mips.org\u003e\n\nFix a kexec problem whcih causes local APIC detection failure.\n\nThe problem is detect_init_APIC() is called early, before the command line\nhave been processed.  Therefore \"lapic\" (and \"nolapic\") have not been seen,\nyet.\n\nSigned-off-by: Maciej W. Rozycki \u003cmacro@linux-mips.org\u003e\nSigned-off-by: Eric Biederman \u003cebiederm@xmission.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "8f43d03fe2c4962c11d8227ac9505e590bad758b",
      "tree": "251293c68bd6c14e850158dbd1c15168d6bdb107",
      "parents": [
        "f8cbd99bd3a023db8d6356d19a5f6f539d367327"
      ],
      "author": {
        "name": "Eric W. Biederman",
        "email": "ebiederm@xmission.com",
        "time": "Sat Jun 25 14:57:40 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@ppc970.osdl.org",
        "time": "Sat Jun 25 16:24:46 2005 -0700"
      },
      "message": "[PATCH] kexec: x86: rename APIC_MODE_EXINT\n\nFrom: \"Maciej W. Rozycki\" \u003cmacro@linux-mips.org\u003e\n\nRename APIC_MODE_EXINT to APIC_MODE_EXTINT - I think it should be named\nafter what the mode is called in documentation.\n\nFrom: \"Eric W. Biederman\" \u003cebiederm@lnxi.com\u003e\n\nI have reduced this patch to just the name change in the header.  And\nintegrated the changes into the patches that add those\nlines. Otherwise I ran into some ugly dependencies.\n\nSigned-off-by: Maciej W. Rozycki \u003cmacro@linux-mips.org\nSigned-off-by: Eric Biederman \u003cebiederm@xmission.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "687f1661d302bc70ce906594a6d3f615ef075a50",
      "tree": "2895a027851322c2badcd40acf6b871698f2962b",
      "parents": [
        "68767a0ae428801649d510d9a65bb71feed44dd1"
      ],
      "author": {
        "name": "Nick Piggin",
        "email": "nickpiggin@yahoo.com.au",
        "time": "Sat Jun 25 14:57:21 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@ppc970.osdl.org",
        "time": "Sat Jun 25 16:24:42 2005 -0700"
      },
      "message": "[PATCH] sched: sched tuning\n\nDo some basic initial tuning.\n\nSigned-off-by: Nick Piggin \u003cnickpiggin@yahoo.com.au\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "cafb20c1f9976a70d633bb1e1c8c24eab00e4e80",
      "tree": "7ff8e6060990889992d51d542abde31cf0d7a1ef",
      "parents": [
        "a3f21bce1fefdf92a4d1705e888d390b10f3ac6f"
      ],
      "author": {
        "name": "Nick Piggin",
        "email": "nickpiggin@yahoo.com.au",
        "time": "Sat Jun 25 14:57:17 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@ppc970.osdl.org",
        "time": "Sat Jun 25 16:24:42 2005 -0700"
      },
      "message": "[PATCH] sched: no aggressive idle balancing\n\nRemove the very aggressive idle stuff that has recently gone into 2.6 - it is\ngoing against the direction we are trying to go.  Hopefully we can regain\nperformance through other methods.\n\nSigned-off-by: Nick Piggin \u003cnickpiggin@yahoo.com.au\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "7897986bad8f6cd50d6149345aca7f6480f49464",
      "tree": "10a5e08e004ae685aaab6823a3774803455b7704",
      "parents": [
        "99b61ccf0bf0e9a85823d39a5db6a1519caeb13d"
      ],
      "author": {
        "name": "Nick Piggin",
        "email": "nickpiggin@yahoo.com.au",
        "time": "Sat Jun 25 14:57:13 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@ppc970.osdl.org",
        "time": "Sat Jun 25 16:24:41 2005 -0700"
      },
      "message": "[PATCH] sched: balance timers\n\nDo CPU load averaging over a number of different intervals.  Allow each\ninterval to be chosen by sending a parameter to source_load and target_load.\n0 is instantaneous, idx \u003e 0 returns a decaying average with the most recent\nsample weighted at 2^(idx-1).  To a maximum of 3 (could be easily increased).\n\nSo generally a higher number will result in more conservative balancing.\n\nSigned-off-by: Nick Piggin \u003cnickpiggin@yahoo.com.au\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "b2b18660066997420b716c1881a6be8b82700d97",
      "tree": "7c6eb8e7b8163e3d332bd4a4efe2ae5b5cfabdd2",
      "parents": [
        "ae67cd643e9e64217fd92457324625c67fec6e35"
      ],
      "author": {
        "name": "Paul E. McKenney",
        "email": "paulmck@us.ibm.com",
        "time": "Sat Jun 25 14:55:38 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@ppc970.osdl.org",
        "time": "Sat Jun 25 16:24:38 2005 -0700"
      },
      "message": "[PATCH] RCU: clean up a few remaining synchronize_kernel() calls\n\n2.6.12-rc6-mm1 has a few remaining synchronize_kernel()s, some (but not\nall) in comments.  This patch changes these synchronize_kernel() calls (and\ncomments) to synchronize_rcu() or synchronize_sched() as follows:\n\n- arch/x86_64/kernel/mce.c mce_read(): change to synchronize_sched() to\n  handle races with machine-check exceptions (synchronize_rcu() would not cut\n  it given RCU implementations intended for hardcore realtime use.\n\n- drivers/input/serio/i8042.c i8042_stop(): change to synchronize_sched() to\n  handle races with i8042_interrupt() interrupt handler.  Again,\n  synchronize_rcu() would not cut it given RCU implementations intended for\n  hardcore realtime use.\n\n- include/*/kdebug.h comments: change to synchronize_sched() to handle races\n  with NMIs.  As before, synchronize_rcu() would not cut it...\n\n- include/linux/list.h comment: change to synchronize_rcu(), since this\n  comment is for list_del_rcu().\n\n- security/keys/key.c unregister_key_type(): change to synchronize_rcu(),\n  since this is interacting with RCU read side.\n\n- security/keys/process_keys.c install_session_keyring(): change to\n  synchronize_rcu(), since this is interacting with RCU read side.\n\nSigned-off-by: \"Paul E. McKenney\" \u003cpaulmck@us.ibm.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "52a119feaad92d44a0e97d01b22afbcbaf3fc079",
      "tree": "d6ad98d25a0c4a3189af2ad960fe2f47d3eb00f1",
      "parents": [
        "e1367daf3eed5cd619ee88c9907e1e6ddaa58406"
      ],
      "author": {
        "name": "Ashok Raj",
        "email": "ashok.raj@intel.com",
        "time": "Sat Jun 25 14:54:57 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@ppc970.osdl.org",
        "time": "Sat Jun 25 16:24:30 2005 -0700"
      },
      "message": "[PATCH] make smp_prepare_cpu to a weak function\n\nI really wish smp_prepare_cpu() would disappear eventually.  In the interim\nthis is ideally a weak function, so we dont end up changing several places\nto define this dummy in headers.\n\nToday since the dummy declaration is done only in drivers/base/cpu.c but\nthe function is called in kernel/power/smp.c i get undefined reference in\nmy cpu hotplug code for x86_64 under development.\n\nSigned-off-by: Ashok Raj \u003cashok.raj@intel.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "e1367daf3eed5cd619ee88c9907e1e6ddaa58406",
      "tree": "dce60efefba356e0a914669587586a6174e41b94",
      "parents": [
        "0bb3184df537002a742bafddf3f4fb482b7fe610"
      ],
      "author": {
        "name": "Li Shaohua",
        "email": "shaohua.li@intel.com",
        "time": "Sat Jun 25 14:54:56 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@ppc970.osdl.org",
        "time": "Sat Jun 25 16:24:30 2005 -0700"
      },
      "message": "[PATCH] cpu state clean after hot remove\n\nClean CPU states in order to reuse smp boot code for CPU hotplug.\n\nSigned-off-by: Li Shaohua\u003cshaohua.li@intel.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "6fe940d6c300886de4ff1454d8ffd363172af433",
      "tree": "58c34aed66a85ff72bdba1d5e3a3e3c967621a04",
      "parents": [
        "67664c8f7e74def5adf66298a1245d82af72db2c"
      ],
      "author": {
        "name": "Li Shaohua",
        "email": "shaohua.li@intel.com",
        "time": "Sat Jun 25 14:54:53 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@ppc970.osdl.org",
        "time": "Sat Jun 25 16:24:29 2005 -0700"
      },
      "message": "[PATCH] sep initializing rework\n\nMake SEP init per-cpu, so it is hotplug safe.\n\nSigned-off-by: Li Shaohua\u003cshaohua.li@intel.com\u003e\nSigned-off-by: Ashok Raj \u003cashok.raj@intel.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "67664c8f7e74def5adf66298a1245d82af72db2c",
      "tree": "c98657d833d3ca61322a8ae54023814ebc36a480",
      "parents": [
        "f370513640492641b4046bfd9a6e4714f6ae530d"
      ],
      "author": {
        "name": "Ashok Raj",
        "email": "ashok.raj@intel.com",
        "time": "Sat Jun 25 14:54:52 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@ppc970.osdl.org",
        "time": "Sat Jun 25 16:24:29 2005 -0700"
      },
      "message": "[PATCH] i386: Dont use IPI broadcast when using cpu hotplug.\n\nThis patch introduces a startup parameter no_broadcast.  When we enable\nCONFIG_HOTPLUG_CPU, we dont want to use broadcast shortcut as it has ill\neffects on a offline cpu.  If we issue broadcast, the IPI is also delivered\nto offline cpus, or partially up cpu causing stale IPI\u0027s to be handled,\nwhich is a problem and can cause undesirable effects.\n\nIntroduces a new startup cmdline option no_ipi_broadcast, that can be\nswitched at cmdline if necessary.\n\nSigned-off-by: Ashok Raj \u003cashok.raj@intel.com\u003e\nAcked-by: Shaohua Li \u003cshaohua.li@intel.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "f370513640492641b4046bfd9a6e4714f6ae530d",
      "tree": "46da47197fcbb3614b51c5f1fac841bf26d5e572",
      "parents": [
        "d92de65cab5980c16d4a1c326c1ef9a591892883"
      ],
      "author": {
        "name": "Zwane Mwaikambo",
        "email": "zwane@linuxpower.ca",
        "time": "Sat Jun 25 14:54:50 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@ppc970.osdl.org",
        "time": "Sat Jun 25 16:24:29 2005 -0700"
      },
      "message": "[PATCH] i386 CPU hotplug\n\n(The i386 CPU hotplug patch provides infrastructure for some work which Pavel\nis doing as well as for ACPI S3 (suspend-to-RAM) work which Li Shaohua\n\u003cshaohua.li@intel.com\u003e is doing)\n\nThe following provides i386 architecture support for safely unregistering and\nregistering processors during runtime, updated for the current -mm tree.  In\norder to avoid dumping cpu hotplug code into kernel/irq/* i dropped the\ncpu_online check in do_IRQ() by modifying fixup_irqs().  The difference being\nthat on cpu offline, fixup_irqs() is called before we clear the cpu from\ncpu_online_map and a long delay in order to ensure that we never have any\nqueued external interrupts on the APICs.  There are additional changes to s390\nand ppc64 to account for this change.\n\n1) Add CONFIG_HOTPLUG_CPU\n2) disable local APIC timer on dead cpus.\n3) Disable preempt around irq balancing to prevent CPUs going down.\n4) Print irq stats for all possible cpus.\n5) Debugging check for interrupts on offline cpus.\n6) Hacky fixup_irqs() to redirect irqs when cpus go off/online.\n7) play_dead() for offline cpus to spin inside.\n8) Handle offline cpus set in flush_tlb_others().\n9) Grab lock earlier in smp_call_function() to prevent CPUs going down.\n10) Implement __cpu_disable() and __cpu_die().\n11) Enable local interrupts in cpu_enable() after fixup_irqs()\n12) Don\u0027t fiddle with NMI on dead cpu, but leave intact on other cpus.\n13) Program IRQ affinity whilst cpu is still in cpu_online_map on offline.\n\nSigned-off-by: Zwane Mwaikambo \u003czwane@linuxpower.ca\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "793ae77469121227cd910c4b99f24be1de34bcca",
      "tree": "ca8b6bbafab35c5c1099c54696c36dc0b8c17cf7",
      "parents": [
        "59a49e38711a146dc0bef4837c825b5422335460"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@ppc970.osdl.org",
        "time": "Fri Jun 24 10:39:17 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@ppc970.osdl.org",
        "time": "Fri Jun 24 10:39:17 2005 -0700"
      },
      "message": "Add \"memory\" clobbers to the x86 inline asm of strncmp and friends\n\nThey don\u0027t actually clobber memory, but gcc doesn\u0027t even know they\n_read_ memory, so can apparently re-order memory accesses around them.\n\nWhich obviously does the wrong thing if the memory access happens to\nchange the memory that the compare function is accessing..\n\nVerified to fix a strange boot problem by Jens Axboe.\n"
    },
    {
      "commit": "b94cce926b2b902b79380ccba370d6f9f2980de0",
      "tree": "da2680b1ec36eae6423ba446d09284d2642ae82b",
      "parents": [
        "2fa389c5eb8c97d621653184d2adf5fdbd4a3167"
      ],
      "author": {
        "name": "Hien Nguyen",
        "email": "hien@us.ibm.com",
        "time": "Thu Jun 23 00:09:19 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@ppc970.osdl.org",
        "time": "Thu Jun 23 09:45:21 2005 -0700"
      },
      "message": "[PATCH] kprobes: function-return probes\n\nThis patch adds function-return probes to kprobes for the i386\narchitecture.  This enables you to establish a handler to be run when a\nfunction returns.\n\n1. API\n\nTwo new functions are added to kprobes:\n\n\tint register_kretprobe(struct kretprobe *rp);\n\tvoid unregister_kretprobe(struct kretprobe *rp);\n\n2. Registration and unregistration\n\n2.1 Register\n\n  To register a function-return probe, the user populates the following\n  fields in a kretprobe object and calls register_kretprobe() with the\n  kretprobe address as an argument:\n\n  kp.addr - the function\u0027s address\n\n  handler - this function is run after the ret instruction executes, but\n  before control returns to the return address in the caller.\n\n  maxactive - The maximum number of instances of the probed function that\n  can be active concurrently.  For example, if the function is non-\n  recursive and is called with a spinlock or mutex held, maxactive \u003d 1\n  should be enough.  If the function is non-recursive and can never\n  relinquish the CPU (e.g., via a semaphore or preemption), NR_CPUS should\n  be enough.  maxactive is used to determine how many kretprobe_instance\n  objects to allocate for this particular probed function.  If maxactive \u003c\u003d\n  0, it is set to a default value (if CONFIG_PREEMPT maxactive\u003dmax(10, 2 *\n  NR_CPUS) else maxactive\u003dNR_CPUS)\n\n  For example:\n\n    struct kretprobe rp;\n    rp.kp.addr \u003d /* entrypoint address */\n    rp.handler \u003d /*return probe handler */\n    rp.maxactive \u003d /* e.g., 1 or NR_CPUS or 0, see the above explanation */\n    register_kretprobe(\u0026rp);\n\n  The following field may also be of interest:\n\n  nmissed - Initialized to zero when the function-return probe is\n  registered, and incremented every time the probed function is entered but\n  there is no kretprobe_instance object available for establishing the\n  function-return probe (i.e., because maxactive was set too low).\n\n2.2 Unregister\n\n  To unregiter a function-return probe, the user calls\n  unregister_kretprobe() with the same kretprobe object as registered\n  previously.  If a probed function is running when the return probe is\n  unregistered, the function will return as expected, but the handler won\u0027t\n  be run.\n\n3. Limitations\n\n3.1 This patch supports only the i386 architecture, but patches for\n    x86_64 and ppc64 are anticipated soon.\n\n3.2 Return probes operates by replacing the return address in the stack\n    (or in a known register, such as the lr register for ppc).  This may\n    cause __builtin_return_address(0), when invoked from the return-probed\n    function, to return the address of the return-probes trampoline.\n\n3.3 This implementation uses the \"Multiprobes at an address\" feature in\n    2.6.12-rc3-mm3.\n\n3.4 Due to a limitation in multi-probes, you cannot currently establish\n    a return probe and a jprobe on the same function.  A patch to remove\n    this limitation is being tested.\n\nThis feature is required by SystemTap (http://sourceware.org/systemtap),\nand reflects ideas contributed by several SystemTap developers, including\nWill Cohen and Ananth Mavinakayanahalli.\n\nSigned-off-by: Hien Nguyen \u003chien@us.ibm.com\u003e\nSigned-off-by: Prasanna S Panchamukhi \u003cprasanna@in.ibm.com\u003e\nSigned-off-by: Frederik Deweerdt \u003cfrederik.deweerdt@laposte.net\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "dcd497f99a1ef29a7c5e76142965be77e9dacabd",
      "tree": "684d64753c6cd71917cf3c360023dd273be376b4",
      "parents": [
        "35a82d1a53e1a9ad54efafcc940f9335beaed5c3"
      ],
      "author": {
        "name": "Jesper Juhl",
        "email": "juhl-lkml@dif.dk",
        "time": "Thu Jun 23 00:09:07 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@ppc970.osdl.org",
        "time": "Thu Jun 23 09:45:19 2005 -0700"
      },
      "message": "[PATCH] streamline preempt_count type across archs\n\nThe preempt_count member of struct thread_info is currently either defined\nas int, unsigned int or __s32 depending on arch.  This patch makes the type\nof preempt_count an int on all archs.\n\nHaving preempt_count be an unsigned type prevents the catching of\npreempt_count \u003c 0 bugs, and using int on some archs and __s32 on others is\nnot exactely \"neat\" - much nicer when it\u0027s just int all over.\n\nA previous version of this patch was already ACK\u0027ed by Robert Love, and the\nonly change in this version of the patch compared to the one he ACK\u0027ed is\nthat this one also makes sure the preempt_count member is consistently\ncommented.\n\nSigned-off-by: Jesper Juhl \u003cjuhl-lkml@dif.dk\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "fa1e1bdf78d405f9905b8290ee9211e7a7bbc99b",
      "tree": "92b63c9965beb9718cfe426f2c2a81f397eb87c4",
      "parents": [
        "1cc6f12e03ebc064b74161c684f987284ce9d0cc"
      ],
      "author": {
        "name": "Vincent Hanquez",
        "email": "vincent.hanquez@cl.cam.ac.uk",
        "time": "Thu Jun 23 00:08:44 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@ppc970.osdl.org",
        "time": "Thu Jun 23 09:45:14 2005 -0700"
      },
      "message": "[PATCH] xen: x86: Rename usermode macro\n\nRename user_mode to user_mode_vm and add a user_mode macro similar to the\nx86-64 one.\n\nThis is useful for Xen because the linux xen kernel does not runs on the same\npriviledge that a vanilla linux kernel, and with this we just need to redefine\nuser_mode().\n\nSigned-off-by: Vincent Hanquez \u003cvincent.hanquez@cl.cam.ac.uk\u003e\nCc: Ian Pratt \u003cm+Ian.Pratt@cl.cam.ac.uk\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "f5012310e35bd62fd39fce338ee44422c975ff3c",
      "tree": "c50cb94b050947c41f285f5b40896ad0a977777b",
      "parents": [
        "701067c4661ebcdc155cc8f696acb24c016c058b"
      ],
      "author": {
        "name": "Vincent Hanquez",
        "email": "vincent.hanquez@cl.cam.ac.uk",
        "time": "Thu Jun 23 00:08:42 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@ppc970.osdl.org",
        "time": "Thu Jun 23 09:45:13 2005 -0700"
      },
      "message": "[PATCH] xen: x86: add macro for debugreg\n\nAdd 2 macros to set and get debugreg on x86.  This is useful for Xen because\nit will need only to redefine each macro to a hypervisor call.\n\nSigned-off-by: Vincent Hanquez \u003cvincent.hanquez@cl.cam.ac.uk\u003e\nCc: Ian Pratt \u003cm+Ian.Pratt@cl.cam.ac.uk\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "a3a255e744dfa672e741dc24306491139d0de2d8",
      "tree": "c19348966183d3ed79f6e9593a40d95c736e0665",
      "parents": [
        "129f69465b411592247c408f93d7106939223be1"
      ],
      "author": {
        "name": "Andrew Morton",
        "email": "akpm@osdl.org",
        "time": "Thu Jun 23 00:08:34 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@ppc970.osdl.org",
        "time": "Thu Jun 23 09:45:11 2005 -0700"
      },
      "message": "[PATCH] x86: cpu_khz type fix\n\nx86_64\u0027s cpu_khz is unsigned int and there is no reason why x86 needs to use\nunsigned long.\n\nSo make cpu_khz unsigned int on x86 as well.\n\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    }
  ],
  "next": "a9ed8817966dd723754a990f1003264a21b5747e"
}
