)]}'
{
  "log": [
    {
      "commit": "912d35f86781e64d73be1ef358f703c08905ac37",
      "tree": "5863ad70f5cdccba0c1cd28f83d173deaf71fb83",
      "parents": [
        "016b661e2f717168e600f3c85f29e1a49f88e004"
      ],
      "author": {
        "name": "Jens Axboe",
        "email": "axboe@suse.de",
        "time": "Wed Apr 26 10:59:21 2006 +0200"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "axboe@suse.de",
        "time": "Wed Apr 26 10:59:21 2006 +0200"
      },
      "message": "[PATCH] Add support for the sys_vmsplice syscall\n\nsys_splice() moves data to/from pipes with a file input/output. sys_vmsplice()\nmoves data to a pipe, with the input being a user address range instead.\n\nThis uses an approach suggested by Linus, where we can hold partial ranges\ninside the pages[] map. Hopefully this will be useful for network\nreceive support as well.\n\nSigned-off-by: Jens Axboe \u003caxboe@suse.de\u003e\n"
    },
    {
      "commit": "0b699e36b2d43c1b4288992683e5913d347b5b78",
      "tree": "1ed44a6e82f71e596a0a7de75aefbbbdd904534e",
      "parents": [
        "18bd057b1408cd110ed23281533430cfc2d52091"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "dada1@cosmosbay.com",
        "time": "Thu Apr 20 02:36:48 2006 +0200"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Thu Apr 20 07:58:11 2006 -0700"
      },
      "message": "[PATCH] x86_64: bring back __read_mostly support to linux-2.6.17-rc2\n\nIt seems latest kernel has a wrong/missing __read_mostly implementation\nfor x86_64\n\n__read_mostly macro should be declared outside of #if CONFIG_X86_VSMP block\n\nSigned-off-by: Eric Dumazet \u003cdada1@cosmosbay.com\u003e\nSigned-off-by: Andi Kleen \u003cak@suse.de\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "18bd057b1408cd110ed23281533430cfc2d52091",
      "tree": "09d8c44ebdb45763173fe54f6962921f4268cf9f",
      "parents": [
        "5dc5cf7dd2723430b6df3d91c5b22af49e063622"
      ],
      "author": {
        "name": "Andi Kleen",
        "email": "ak@suse.de",
        "time": "Thu Apr 20 02:36:45 2006 +0200"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Thu Apr 20 07:58:11 2006 -0700"
      },
      "message": "[PATCH] i386/x86-64: Fix x87 information leak between processes\n\nAMD K7/K8 CPUs only save/restore the FOP/FIP/FDP x87 registers in FXSAVE\nwhen an exception is pending.  This means the value leak through\ncontext switches and allow processes to observe some x87 instruction\nstate of other processes.\n\nThis was actually documented by AMD, but nobody recognized it as\nbeing different from Intel before.\n\nThe fix first adds an optimization: instead of unconditionally\ncalling FNCLEX after each FXSAVE test if ES is pending and skip\nit when not needed. Then do a x87 load from a kernel variable to\nclear FOP/FIP/FDP.\n\nThis means other processes always will only see a constant value\ndefined by the kernel in their FP state.\n\nI took some pain to make sure to chose a variable that\u0027s already\nin L1 during context switch to make the overhead of this low.\n\nAlso alternative() is used to patch away the new code on CPUs\nwho don\u0027t need it.\n\nPatch for both i386/x86-64.\n\nThe problem was discovered originally by Jan Beulich. Richard\nBrunner provided the basic code for the workarounds, with contribution\nfrom Jan.\n\nThis is CVE-2006-1056\n\nCc: richard.brunner@amd.com\nCc: jbeulich@novell.com\n\nSigned-off-by: Andi Kleen \u003cak@suse.de\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "676ff453e58c5ff7ddbfebf5a11142e3e4add161",
      "tree": "73dd2d5fa0baa38be1357947b0a90b013b14115f",
      "parents": [
        "5e85d4abe3f43bb5362f384bab0e20ef082ce0b5"
      ],
      "author": {
        "name": "KAMEZAWA Hiroyuki",
        "email": "kamezawa.hiroyu@jp.fujitsu.com",
        "time": "Tue Apr 18 22:20:21 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Wed Apr 19 09:13:49 2006 -0700"
      },
      "message": "[PATCH] for_each_possible_cpu: x86_64\n\nfor_each_cpu() actually iterates across all possible CPUs.  We\u0027ve had\nmistakes in the past where people were using for_each_cpu() where they\nshould have been iterating across only online or present CPUs.  This is\ninefficient and possibly buggy.\n\nWe\u0027re renaming for_each_cpu() to for_each_possible_cpu() to avoid this\nin the future.\n\nThis patch replaces for_each_cpu with for_each_possible_cpu.\n\nSigned-off-by: KAMEZAWA Hiroyuki \u003ckamezawa.hiroyu@jp.fujitsu.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": "f1233ab2cebb22a98df55de206a33a6693e3a78b",
      "tree": "0f5a5dd65e8e91273f1118d3d54d3517964768a3",
      "parents": [
        "6fa679fdea22cd96287d4aa11ee771bcd46c6dfb"
      ],
      "author": {
        "name": "Andi Kleen",
        "email": "ak@suse.de",
        "time": "Tue Apr 18 12:35:19 2006 +0200"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Apr 18 10:39:20 2006 -0700"
      },
      "message": "[PATCH] x86_64: Add tee and sync_file_range\n\ntee was already there for some reason for native 64bit, but\nsys_sync_file_range was missing. Also add it to the compat layer.\n\nSigned-off-by: Andi Kleen \u003cak@suse.de\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "6fa679fdea22cd96287d4aa11ee771bcd46c6dfb",
      "tree": "42c96f5178c7c15ad4032918375ad097cf8ea0a1",
      "parents": [
        "8bcc5280e68878d2b989c91d98305109e391c86a"
      ],
      "author": {
        "name": "Andi Kleen",
        "email": "ak@suse.de",
        "time": "Tue Apr 18 12:35:16 2006 +0200"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Apr 18 10:39:19 2006 -0700"
      },
      "message": "[PATCH] x86_64: Increase NUMA hash function nodemap\n\nNeeded for some big Opteron systems to compute a numa hash function\nThey have more than 12 bits significant address.\n\nTBD switch this over to dynamic allocation or use better hash\n\nSigned-off-by: Andi Kleen \u003cak@suse.de\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "70524490ee2ea1bbf6cee6c106597b3ac25a3fc2",
      "tree": "c61dd500035bc3e0dea364777de1b7a58b41a75c",
      "parents": [
        "cbb7e577e732f576b9f399bc2600bdc0626c68dc"
      ],
      "author": {
        "name": "Jens Axboe",
        "email": "axboe@suse.de",
        "time": "Tue Apr 11 15:51:17 2006 +0200"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "axboe@suse.de",
        "time": "Tue Apr 11 15:51:17 2006 +0200"
      },
      "message": "[PATCH] splice: add support for sys_tee()\n\nBasically an in-kernel implementation of tee, which uses splice and the\npipe buffers as an intelligent way to pass data around by reference.\n\nWhere the user space tee consumes the input and produces a stdout and\nfile output, this syscall merely duplicates the data inside a pipe to\nanother pipe. No data is copied, the output just grabs a reference to the\ninput pipe data.\n\nSigned-off-by: Jens Axboe \u003caxboe@suse.de\u003e\n"
    },
    {
      "commit": "cde227afe6b997dce08bcfc2aa6e373fb56857b0",
      "tree": "45b0bc04f54a830d0c3cd3a5afb46fcf7679a4dc",
      "parents": [
        "44b940c299dfaaf25b7aad683ff55cb213502ddd"
      ],
      "author": {
        "name": "mao, bibo",
        "email": "bibo.mao@intel.com",
        "time": "Tue Apr 11 12:54:54 2006 +0200"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Apr 11 06:38:57 2006 -0700"
      },
      "message": "[PATCH] x86_64: inline function prefix with __always_inline in vsyscall\n\nIn vsyscall function do_vgettimeofday(), some functions are declared as\ninlined, which is a hint for gcc to compile the function inlined but it\nnot forced.  Sometimes compiler does not compile the function as\ninlined, so here inline is replaced by __always_inline prefix.\n\nIt does not happen in gcc compiler actually, but it possibly happens.\n\nSigned-off-by: bibo mao \u003cbibo.mao@intel.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "e4cff6ac78e9c3bbb90c0e01b20418eeae0c6b52",
      "tree": "8238a3c16227089250de19a6ab0fc0a8ec939b36",
      "parents": [
        "97a4d00388db4f0bfa37425b31d7d9751ea649db"
      ],
      "author": {
        "name": "Siddha, Suresh B",
        "email": "suresh.b.siddha@intel.com",
        "time": "Tue Apr 11 12:54:42 2006 +0200"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Apr 11 06:38:57 2006 -0700"
      },
      "message": "[PATCH] x86_64: fix sync before RDTSC on Intel cpus\n\nCommit c818a18146997d1356a4840b0c01f1168c16c8a4 didn\u0027t do the expected\nthing.  This fix will remove the additional sync(cpuid) before RDTSC on\nIntel platforms..\n\nSigned-off-by: Suresh Siddha \u003csuresh.b.siddha@intel.com\u003e\nSigned-off-by: Andi Kleen \u003cak@suse.de\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "c80d79d746cc48bd94b0ce4f6d4f3c90cd403aaf",
      "tree": "5aa8d1590d95f8fd820ad797fe03a063b592e9bf",
      "parents": [
        "653edba1a8b2ed018bdfb078131324dfbfe1dd6a"
      ],
      "author": {
        "name": "Yasunori Goto",
        "email": "y-goto@jp.fujitsu.com",
        "time": "Mon Apr 10 22:53:53 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Apr 11 06:18:39 2006 -0700"
      },
      "message": "[PATCH] Configurable NODES_SHIFT\n\nCurrent implementations define NODES_SHIFT in include/asm-xxx/numnodes.h for\neach arch.  Its definition is sometimes configurable.  Indeed, ia64 defines 5\nNODES_SHIFT values in the current git tree.  But it looks a bit messy.\n\nSGI-SN2(ia64) system requires 1024 nodes, and the number of nodes already has\nbeen changeable by config.  Suitable node\u0027s number may be changed in the\nfuture even if it is other architecture.  So, I wrote configurable node\u0027s\nnumber.\n\nThis patch set defines just default value for each arch which needs multi\nnodes except ia64.  But, it is easy to change to configurable if necessary.\n\nOn ia64 the number of nodes can be already configured in generic ia64 and SN2\nconfig.  But, NODES_SHIFT is defined for DIG64 and HP\u0027S machine too.  So, I\nchanged it so that all platforms can be configured via CONFIG_NODES_SHIFT.  It\nwould be simpler.\n\nSee also: http://marc.theaimsgroup.com/?l\u003dlinux-kernel\u0026m\u003d114358010523896\u0026w\u003d2\n\nSigned-off-by: Yasunori Goto \u003cy-goto@jp.fujitsu.com\u003e\nCc: Hirokazu Takata \u003ctakata@linux-m32r.org\u003e\nCc: \"Luck, Tony\" \u003ctony.luck@intel.com\u003e\nCc: Andi Kleen \u003cak@muc.de\u003e\nCc: Paul Mackerras \u003cpaulus@samba.org\u003e\nCc: Benjamin Herrenschmidt \u003cbenh@kernel.crashing.org\u003e\nCc: Ivan Kokshaysky \u003cink@jurassic.park.msu.ru\u003e\nCc: Richard Henderson \u003crth@twiddle.net\u003e\nCc: Kyle McMartin \u003ckyle@mcmartin.ca\u003e\nCc: Russell King \u003crmk@arm.linux.org.uk\u003e\nCc: Ralf Baechle \u003cralf@linux-mips.org\u003e\nCc: Jack Steiner \u003csteiner@sgi.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "67d53ea5a3d42aadeb1584e757ca4660c0e8a810",
      "tree": "054906bb672c6faad287ede5b34c53d56afdc629",
      "parents": [
        "bbd3aff89d4b34ef17a748e4c001ecc5b43e3e55"
      ],
      "author": {
        "name": "Andi Kleen",
        "email": "ak@suse.de",
        "time": "Fri Apr 07 19:50:31 2006 +0200"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sun Apr 09 11:53:53 2006 -0700"
      },
      "message": "[PATCH] x86_64: Eliminate IA32_NR_syscalls define\n\nOr rather compute it based on the table length automatically.\n\nThis also has the intended side effect of not warning for new system calls\nanymore.\n\nSigned-off-by: Andi Kleen \u003cak@suse.de\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "bbd3aff89d4b34ef17a748e4c001ecc5b43e3e55",
      "tree": "26e9521b03e9cff515a96774cf3ac67c9b612bce",
      "parents": [
        "97c2803c9c694cafbd9f5e43a25903e0abf25188"
      ],
      "author": {
        "name": "Sam Ravnborg",
        "email": "sam@ravnborg.org",
        "time": "Fri Apr 07 19:50:28 2006 +0200"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sun Apr 09 11:53:53 2006 -0700"
      },
      "message": "[PATCH] x86_64: fix CONFIG_REORDER\n\nFix CONFIG_REORDER.\n\nThe value of cflags-y was assined to CFLAGS before cflags-y was assigned\nthe value used for CONFIG_REORDER.\n\nUse cflags-y for all CFLAGS options in the Makefile to avoid this\nhappening again.\n\nSigned-off-by: Sam Ravnborg \u003csam@ravnborg.org\u003e\nSigned-off-by: Andi Kleen \u003cak@suse.de\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "b20367a6c2a0cd937cb1f0a8cf848f1402fef99c",
      "tree": "8624096baed40f8f89e757b2d170a7b4d1844575",
      "parents": [
        "49c93e84d8b2d602a07c302c7e3cd4fa09095fbb"
      ],
      "author": {
        "name": "Jordan Hargrave",
        "email": "jordan_hargrave@dell.com",
        "time": "Fri Apr 07 19:50:18 2006 +0200"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sun Apr 09 11:53:53 2006 -0700"
      },
      "message": "[PATCH] x86_64: Fix drift with HPET timer enabled\n\nIf the HPET timer is enabled, the clock can drift by ~3 seconds a day.\nThis is due to the HPET timer not being initialized with the correct\nsetting (still using PIT count).\n\nIf HZ changes, this drift can become even more pronounced.\n\nHPET patch initializes tick_nsec with correct tick_nsec settings for\nHPET timer.\n\nVojtech comments:\n\n  \"It\u0027s not entirely correct (it assumes the HPET ticks totally\n   exactly), but it\u0027s significantly better than assuming the PIT error\n   there.\"\n\nSigned-off-by: Andi Kleen \u003cak@suse.de\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "553f265fe883a23502ee351845f09334790f18b8",
      "tree": "1fd60e72d7d5cbed34812eb6763899d2bd37c152",
      "parents": [
        "be56db6186999a8571ae480cf2b929578f6dfd68"
      ],
      "author": {
        "name": "Andi Kleen",
        "email": "ak@suse.de",
        "time": "Fri Apr 07 19:49:57 2006 +0200"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sun Apr 09 11:53:52 2006 -0700"
      },
      "message": "[PATCH] x86_64: Don\u0027t run NMI watchdog during machine checks\n\nMachine checks can stall the machine for a long time and\nit\u0027s not good to trigger the nmi watchdog during that.\n\nSigned-off-by: Andi Kleen \u003cak@suse.de\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "be56db6186999a8571ae480cf2b929578f6dfd68",
      "tree": "df0760d15a76b9615c02f37ad5941fd5b52c5658",
      "parents": [
        "4211a30349e8d2b724cfb4ce2584604f5e59c299"
      ],
      "author": {
        "name": "Dave Hansen",
        "email": "haveblue@us.ibm.com",
        "time": "Fri Apr 07 19:49:54 2006 +0200"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sun Apr 09 11:53:51 2006 -0700"
      },
      "message": "[PATCH] x86_64: extra NODES_SHIFT definition\n\nThe generic linux/numa.h file defines NODES_SHIFT to 0 in case\nthe architecture did not.\n\nEvery architecture which has a NUMA config option defines\nNODES_SHIFT in its asm-$ARCH headers, but only if NUMA is\nenabled, except for x86_64.\n\nThis should make it like all the rest.\n\nSigned-off-by: Dave Hansen \u003chaveblue@us.ibm.com\u003e\nSigned-off-by: Andi Kleen \u003cak@suse.de\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "952223683ec989e86328c24808fdb962c4dbeb0a",
      "tree": "0c7473d4469cba883bf880bbaa04900960806742",
      "parents": [
        "eee5a9fa63c97366cdea6ab3aa2ed9e3601812d0"
      ],
      "author": {
        "name": "Arjan van de Ven",
        "email": "arjan@linux.intel.com",
        "time": "Fri Apr 07 19:49:27 2006 +0200"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sun Apr 09 11:53:50 2006 -0700"
      },
      "message": "[PATCH] x86_64: Introduce e820_all_mapped\n\nIntroduce a e820_all_mapped() function which checks if the entire range\n\u003cstart,end\u003e is mapped with type.\n\nThis is done by moving the local start variable to the end of each\nknown-good region; if at the end of the function the start address is\nstill before end, there must be a part that\u0027s not of the correct type;\notherwise it\u0027s a good region.\n\nSigned-off-by: Arjan van de Ven \u003carjan@linux.intel.com\u003e\nSigned-off-by: Andi Kleen \u003cak@suse.de\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "eee5a9fa63c97366cdea6ab3aa2ed9e3601812d0",
      "tree": "b01876c5417f52173e9ab3d76c124df2042c9f62",
      "parents": [
        "a8062231d80239cf3405982858c02aea21a6066a"
      ],
      "author": {
        "name": "Arjan van de Ven",
        "email": "arjan@linux.intel.com",
        "time": "Fri Apr 07 19:49:24 2006 +0200"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sun Apr 09 11:53:17 2006 -0700"
      },
      "message": "[PATCH] x86_64: Rename e820_mapped to e820_any_mapped\n\nRename e820_mapped to e820_any_mapped since it tests if any part of the\nrange is mapped according to the type.\n\nLater steps will introduce e820_all_mapped which will check if the\nentire range is mapped with the type.  Both have their merit.\n\nSigned-off-by: Arjan van de Ven \u003carjan@linux.intel.com\u003e\nSigned-off-by: Andi Kleen \u003cak@suse.de\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "68a3a7feb08f960095072f28ec20f7900793c506",
      "tree": "1d458822fd4414997b6f12ad8a915f785d7e730f",
      "parents": [
        "9d99aaa31f5994d1923c3713ce9144c4c42332e1"
      ],
      "author": {
        "name": "Andi Kleen",
        "email": "ak@suse.de",
        "time": "Fri Apr 07 19:49:18 2006 +0200"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sun Apr 09 11:53:16 2006 -0700"
      },
      "message": "[PATCH] x86_64: Reserve SRAT hotadd memory on x86-64\n\nFrom: Keith Mannthey, Andi Kleen\n\nImplement memory hotadd without sparsemem. The memory in the SRAT\nhotadd area is just preserved instead and can be activated later.\n\nThere are a few restrictions:\n- Only one continuous hotadd area allowed per node\n\nThe main problem is dealing with the many buggy SRAT tables\nthat are out there. The strategy here is to reject anything\nsuspicious.\n\nOriginally from Keith Mannthey, with several hacks and changes by AK\nand also contributions from Andrew Morton\n\n[ TBD: Problems pointed out by KAMEZAWA Hiroyuki \u003ckamezawa.hiroyu@jp.fujitsu.com\u003e:\n\n 1) Goto\u0027s rebuild_zonelist patch will not work if CONFIG_MEMORY_HOTPLUG\u003dn.\n\n    Rebuilding zonelist is necessary when the system has just memory \u003c\n    4G at boot, and hot add memory \u003e 4G.  because x86_64 has DMA32,\n    ZONE_NORAML is not included into zonelist at boot time if system\n    doesn\u0027t have memory \u003e4G at boot.\n\n    [AK: should just force the higher zones at boot time when SRAT tells us]\n\n 2) zone and node\u0027s spanned_pages and present_pages are not incremented.\n    They should be.\n\n    For example, our server (ia64/Fujitsu PrimeQuest) can equip memory\n    from 4G to 1T(maybe 2T in future), and SRAT will *always* say we have\n    possible 1T +memory.  (Microsoft requires \"write all possible memory\n    in SRAT\") When we reserve memmap for possible 1T memory, Linux will\n    not work well in +minimum 4G configuraion ;)\n\n    [AK: needs limiting to 5-10% of max memory]\n ]\n\nSigned-off-by: Andi Kleen \u003cak@suse.de\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "2cf8d82d63807c2c68adf20bb28bf502496186dd",
      "tree": "13cafaa87dafa639f3876bcda6d302266a349c88",
      "parents": [
        "09ce3512dcad0ad1d07eee0dc5ebb6d037c39c16"
      ],
      "author": {
        "name": "Andrew Morton",
        "email": "akpm@osdl.org",
        "time": "Fri Mar 31 02:30:49 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Fri Mar 31 12:18:55 2006 -0800"
      },
      "message": "[PATCH] make local_t signed\n\nlocal_t\u0027s were defined to be unsigned.  This increases confusion because\natomic_t\u0027s are signed.  The patch goes through and changes all implementations\nto use signed longs throughout.\n\nAlso, x86-64 was using 32-bit quantities for the value passed into local_add()\nand local_sub().  Fixed.\n\nAll (actually, both) existing users have been audited.\n\n(Also s/__inline__/inline/ in x86_64/local.h)\n\nCc: Andi Kleen \u003cak@muc.de\u003e\nCc: Benjamin LaHaise \u003cbcrl@kvack.org\u003e\nCc: Kyle McMartin \u003ckyle@parisc-linux.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "5274f052e7b3dbd81935772eb551dfd0325dfa9d",
      "tree": "c79f813ec513660edb6f1e4a75cb366c6b84f53f",
      "parents": [
        "5d4fe2c1ce83c3e967ccc1ba3d580c1a5603a866"
      ],
      "author": {
        "name": "Jens Axboe",
        "email": "axboe@suse.de",
        "time": "Thu Mar 30 15:15:30 2006 +0200"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Thu Mar 30 12:28:18 2006 -0800"
      },
      "message": "[PATCH] Introduce sys_splice() system call\n\nThis adds support for the sys_splice system call. Using a pipe as a\ntransport, it can connect to files or sockets (latter as output only).\n\nFrom the splice.c comments:\n\n   \"splice\": joining two ropes together by interweaving their strands.\n\n   This is the \"extended pipe\" functionality, where a pipe is used as\n   an arbitrary in-memory buffer. Think of a pipe as a small kernel\n   buffer that you can use to transfer data from one end to the other.\n\n   The traditional unix read/write is extended with a \"splice()\" operation\n   that transfers data buffers to or from a pipe buffer.\n\n   Named by Larry McVoy, original implementation from Linus, extended by\n   Jens to support splicing to files and fixing the initial implementation\n   bugs.\n\nSigned-off-by: Jens Axboe \u003caxboe@suse.de\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "f45e4656ac0609437267b242953c07d523649f8d",
      "tree": "bd70b8ae51d2a29c435a6567852f32badafb2720",
      "parents": [
        "50fc9999ec27ad66ce6db31ebb03759f77962bc1"
      ],
      "author": {
        "name": "Adrian Bunk",
        "email": "bunk@stusta.de",
        "time": "Tue Mar 28 01:56:43 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Mar 28 09:16:06 2006 -0800"
      },
      "message": "[PATCH] arch/i386/kernel/microcode.c: remove the obsolete microcode_ioctl\n\nNowadays, even Debian stable ships a microcode_ctl utility recent enough to no\nlonger use this ioctl.\n\nSigned-off-by: Adrian Bunk \u003cbunk@stusta.de\u003e\nAcked-by: Tigran Aivazian \u003ctigran_aivazian@symantec.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "e041c683412d5bf44dc2b109053e3b837b71742d",
      "tree": "9d271066ef379da0c0fb3b8cb4137abd5d2ebba0",
      "parents": [
        "76b81e2b0e2241accebcc68e126bc5ab958661b9"
      ],
      "author": {
        "name": "Alan Stern",
        "email": "stern@rowland.harvard.edu",
        "time": "Mon Mar 27 01:16:30 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Mon Mar 27 08:44:50 2006 -0800"
      },
      "message": "[PATCH] Notifier chain update: API changes\n\nThe kernel\u0027s implementation of notifier chains is unsafe.  There is no\nprotection against entries being added to or removed from a chain while the\nchain is in use.  The issues were discussed in this thread:\n\n    http://marc.theaimsgroup.com/?l\u003dlinux-kernel\u0026m\u003d113018709002036\u0026w\u003d2\n\nWe noticed that notifier chains in the kernel fall into two basic usage\nclasses:\n\n\t\"Blocking\" chains are always called from a process context\n\tand the callout routines are allowed to sleep;\n\n\t\"Atomic\" chains can be called from an atomic context and\n\tthe callout routines are not allowed to sleep.\n\nWe decided to codify this distinction and make it part of the API.  Therefore\nthis set of patches introduces three new, parallel APIs: one for blocking\nnotifiers, one for atomic notifiers, and one for \"raw\" notifiers (which is\nreally just the old API under a new name).  New kinds of data structures are\nused for the heads of the chains, and new routines are defined for\nregistration, unregistration, and calling a chain.  The three APIs are\nexplained in include/linux/notifier.h and their implementation is in\nkernel/sys.c.\n\nWith atomic and blocking chains, the implementation guarantees that the chain\nlinks will not be corrupted and that chain callers will not get messed up by\nentries being added or removed.  For raw chains the implementation provides no\nguarantees at all; users of this API must provide their own protections.  (The\nidea was that situations may come up where the assumptions of the atomic and\nblocking APIs are not appropriate, so it should be possible for users to\nhandle these things in their own way.)\n\nThere are some limitations, which should not be too hard to live with.  For\natomic/blocking chains, registration and unregistration must always be done in\na process context since the chain is protected by a mutex/rwsem.  Also, a\ncallout routine for a non-raw chain must not try to register or unregister\nentries on its own chain.  (This did happen in a couple of places and the code\nhad to be changed to avoid it.)\n\nSince atomic chains may be called from within an NMI handler, they cannot use\nspinlocks for synchronization.  Instead we use RCU.  The overhead falls almost\nentirely in the unregister routine, which is okay since unregistration is much\nless frequent that calling a chain.\n\nHere is the list of chains that we adjusted and their classifications.  None\nof them use the raw API, so for the moment it is only a placeholder.\n\n  ATOMIC CHAINS\n  -------------\narch/i386/kernel/traps.c:\t\ti386die_chain\narch/ia64/kernel/traps.c:\t\tia64die_chain\narch/powerpc/kernel/traps.c:\t\tpowerpc_die_chain\narch/sparc64/kernel/traps.c:\t\tsparc64die_chain\narch/x86_64/kernel/traps.c:\t\tdie_chain\ndrivers/char/ipmi/ipmi_si_intf.c:\txaction_notifier_list\nkernel/panic.c:\t\t\t\tpanic_notifier_list\nkernel/profile.c:\t\t\ttask_free_notifier\nnet/bluetooth/hci_core.c:\t\thci_notifier\nnet/ipv4/netfilter/ip_conntrack_core.c:\tip_conntrack_chain\nnet/ipv4/netfilter/ip_conntrack_core.c:\tip_conntrack_expect_chain\nnet/ipv6/addrconf.c:\t\t\tinet6addr_chain\nnet/netfilter/nf_conntrack_core.c:\tnf_conntrack_chain\nnet/netfilter/nf_conntrack_core.c:\tnf_conntrack_expect_chain\nnet/netlink/af_netlink.c:\t\tnetlink_chain\n\n  BLOCKING CHAINS\n  ---------------\narch/powerpc/platforms/pseries/reconfig.c:\tpSeries_reconfig_chain\narch/s390/kernel/process.c:\t\tidle_chain\narch/x86_64/kernel/process.c\t\tidle_notifier\ndrivers/base/memory.c:\t\t\tmemory_chain\ndrivers/cpufreq/cpufreq.c\t\tcpufreq_policy_notifier_list\ndrivers/cpufreq/cpufreq.c\t\tcpufreq_transition_notifier_list\ndrivers/macintosh/adb.c:\t\tadb_client_list\ndrivers/macintosh/via-pmu.c\t\tsleep_notifier_list\ndrivers/macintosh/via-pmu68k.c\t\tsleep_notifier_list\ndrivers/macintosh/windfarm_core.c\twf_client_list\ndrivers/usb/core/notify.c\t\tusb_notifier_list\ndrivers/video/fbmem.c\t\t\tfb_notifier_list\nkernel/cpu.c\t\t\t\tcpu_chain\nkernel/module.c\t\t\t\tmodule_notify_list\nkernel/profile.c\t\t\tmunmap_notifier\nkernel/profile.c\t\t\ttask_exit_notifier\nkernel/sys.c\t\t\t\treboot_notifier_list\nnet/core/dev.c\t\t\t\tnetdev_chain\nnet/decnet/dn_dev.c:\t\t\tdnaddr_chain\nnet/ipv4/devinet.c:\t\t\tinetaddr_chain\n\nIt\u0027s possible that some of these classifications are wrong.  If they are,\nplease let us know or submit a patch to fix them.  Note that any chain that\ngets called very frequently should be atomic, because the rwsem read-locking\nused for blocking chains is very likely to incur cache misses on SMP systems.\n(However, if the chain\u0027s callout routines may sleep then the chain cannot be\natomic.)\n\nThe patch set was written by Alan Stern and Chandra Seetharaman, incorporating\nmaterial written by Keith Owens and suggestions from Paul McKenney and Andrew\nMorton.\n\n[jes@sgi.com: restructure the notifier chain initialization macros]\nSigned-off-by: Alan Stern \u003cstern@rowland.harvard.edu\u003e\nSigned-off-by: Chandra Seetharaman \u003csekharan@us.ibm.com\u003e\nSigned-off-by: Jes Sorensen \u003cjes@sgi.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "8f17d3a5049d32392b79925c73a0cf99ce6d5af0",
      "tree": "3c2aa0cbe337684d353dd2cfb0c177b4ae15217c",
      "parents": [
        "8fdd6c6df7889dc89df3d9fe0f5bbe6733e39f48"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Mar 27 01:16:27 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Mon Mar 27 08:44:49 2006 -0800"
      },
      "message": "[PATCH] lightweight robust futexes updates\n\n- fix: initialize the robust list(s) to NULL in copy_process.\n\n- doc update\n\n- cleanup: rename _inuser to _inatomic\n\n- __user cleanups and other small cleanups\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nCc: Arjan van de Ven \u003carjan@infradead.org\u003e\nCc: Ulrich Drepper \u003cdrepper@redhat.com\u003e\nCc: Andi Kleen \u003cak@muc.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "8fdd6c6df7889dc89df3d9fe0f5bbe6733e39f48",
      "tree": "e037a0eb7214818ad4ef177c618ef1e302c2aed9",
      "parents": [
        "dfd4e3ec246355274c9cf62c6b04a1ee6fa3caba"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Mar 27 01:16:26 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Mon Mar 27 08:44:49 2006 -0800"
      },
      "message": "[PATCH] lightweight robust futexes: x86_64\n\nx86_64: add the futex_atomic_cmpxchg_inuser() assembly implementation, and\nwire up the new syscalls.\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nSigned-off-by: Arjan van de Ven \u003carjan@infradead.org\u003e\nAcked-by: Ulrich Drepper \u003cdrepper@redhat.com\u003e\nCc: Andi Kleen \u003cak@muc.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "e9056f13bfcdd054a0c3d730e4e096748d8a363a",
      "tree": "876d70d99cb679f7c4cbf6609d6341cadfb5c57e",
      "parents": [
        "62ac285f3c701f0457a15fe01baa64a965c4f5f1"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Mar 27 01:16:21 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Mon Mar 27 08:44:49 2006 -0800"
      },
      "message": "[PATCH] lightweight robust futexes: arch defaults\n\nThis patchset provides a new (written from scratch) implementation of robust\nfutexes, called \"lightweight robust futexes\".  We believe this new\nimplementation is faster and simpler than the vma-based robust futex solutions\npresented before, and we\u0027d like this patchset to be adopted in the upstream\nkernel.  This is version 1 of the patchset.\n\n  Background\n  ----------\n\nWhat are robust futexes?  To answer that, we first need to understand what\nfutexes are: normal futexes are special types of locks that in the\nnoncontended case can be acquired/released from userspace without having to\nenter the kernel.\n\nA futex is in essence a user-space address, e.g.  a 32-bit lock variable\nfield.  If userspace notices contention (the lock is already owned and someone\nelse wants to grab it too) then the lock is marked with a value that says\n\"there\u0027s a waiter pending\", and the sys_futex(FUTEX_WAIT) syscall is used to\nwait for the other guy to release it.  The kernel creates a \u0027futex queue\u0027\ninternally, so that it can later on match up the waiter with the waker -\nwithout them having to know about each other.  When the owner thread releases\nthe futex, it notices (via the variable value) that there were waiter(s)\npending, and does the sys_futex(FUTEX_WAKE) syscall to wake them up.  Once all\nwaiters have taken and released the lock, the futex is again back to\n\u0027uncontended\u0027 state, and there\u0027s no in-kernel state associated with it.  The\nkernel completely forgets that there ever was a futex at that address.  This\nmethod makes futexes very lightweight and scalable.\n\n\"Robustness\" is about dealing with crashes while holding a lock: if a process\nexits prematurely while holding a pthread_mutex_t lock that is also shared\nwith some other process (e.g.  yum segfaults while holding a pthread_mutex_t,\nor yum is kill -9-ed), then waiters for that lock need to be notified that the\nlast owner of the lock exited in some irregular way.\n\nTo solve such types of problems, \"robust mutex\" userspace APIs were created:\npthread_mutex_lock() returns an error value if the owner exits prematurely -\nand the new owner can decide whether the data protected by the lock can be\nrecovered safely.\n\nThere is a big conceptual problem with futex based mutexes though: it is the\nkernel that destroys the owner task (e.g.  due to a SEGFAULT), but the kernel\ncannot help with the cleanup: if there is no \u0027futex queue\u0027 (and in most cases\nthere is none, futexes being fast lightweight locks) then the kernel has no\ninformation to clean up after the held lock!  Userspace has no chance to clean\nup after the lock either - userspace is the one that crashes, so it has no\nopportunity to clean up.  Catch-22.\n\nIn practice, when e.g.  yum is kill -9-ed (or segfaults), a system reboot is\nneeded to release that futex based lock.  This is one of the leading\nbugreports against yum.\n\nTo solve this problem, \u0027Robust Futex\u0027 patches were created and presented on\nlkml: the one written by Todd Kneisel and David Singleton is the most advanced\nat the moment.  These patches all tried to extend the futex abstraction by\nregistering futex-based locks in the kernel - and thus give the kernel a\nchance to clean up.\n\nE.g.  in David Singleton\u0027s robust-futex-6.patch, there are 3 new syscall\nvariants to sys_futex(): FUTEX_REGISTER, FUTEX_DEREGISTER and FUTEX_RECOVER.\nThe kernel attaches such robust futexes to vmas (via\nvma-\u003evm_file-\u003ef_mapping-\u003erobust_head), and at do_exit() time, all vmas are\nsearched to see whether they have a robust_head set.\n\nLots of work went into the vma-based robust-futex patch, and recently it has\nimproved significantly, but unfortunately it still has two fundamental\nproblems left:\n\n - they have quite complex locking and race scenarios.  The vma-based\n   patches had been pending for years, but they are still not completely\n   reliable.\n\n - they have to scan _every_ vma at sys_exit() time, per thread!\n\nThe second disadvantage is a real killer: pthread_exit() takes around 1\nmicrosecond on Linux, but with thousands (or tens of thousands) of vmas every\npthread_exit() takes a millisecond or more, also totally destroying the CPU\u0027s\nL1 and L2 caches!\n\nThis is very much noticeable even for normal process sys_exit_group() calls:\nthe kernel has to do the vma scanning unconditionally!  (this is because the\nkernel has no knowledge about how many robust futexes there are to be cleaned\nup, because a robust futex might have been registered in another task, and the\nfutex variable might have been simply mmap()-ed into this process\u0027s address\nspace).\n\nThis huge overhead forced the creation of CONFIG_FUTEX_ROBUST, but worse than\nthat: the overhead makes robust futexes impractical for any type of generic\nLinux distribution.\n\nSo it became clear to us, something had to be done.  Last week, when Thomas\nGleixner tried to fix up the vma-based robust futex patch in the -rt tree, he\nfound a handful of new races and we were talking about it and were analyzing\nthe situation.  At that point a fundamentally different solution occured to\nme.  This patchset (written in the past couple of days) implements that new\nsolution.  Be warned though - the patchset does things we normally dont do in\nLinux, so some might find the approach disturbing.  Parental advice\nrecommended ;-)\n\n  New approach to robust futexes\n  ------------------------------\n\nAt the heart of this new approach there is a per-thread private list of robust\nlocks that userspace is holding (maintained by glibc) - which userspace list\nis registered with the kernel via a new syscall [this registration happens at\nmost once per thread lifetime].  At do_exit() time, the kernel checks this\nuser-space list: are there any robust futex locks to be cleaned up?\n\nIn the common case, at do_exit() time, there is no list registered, so the\ncost of robust futexes is just a simple current-\u003erobust_list !\u003d NULL\ncomparison.  If the thread has registered a list, then normally the list is\nempty.  If the thread/process crashed or terminated in some incorrect way then\nthe list might be non-empty: in this case the kernel carefully walks the list\n[not trusting it], and marks all locks that are owned by this thread with the\nFUTEX_OWNER_DEAD bit, and wakes up one waiter (if any).\n\nThe list is guaranteed to be private and per-thread, so it\u0027s lockless.  There\nis one race possible though: since adding to and removing from the list is\ndone after the futex is acquired by glibc, there is a few instructions window\nfor the thread (or process) to die there, leaving the futex hung.  To protect\nagainst this possibility, userspace (glibc) also maintains a simple per-thread\n\u0027list_op_pending\u0027 field, to allow the kernel to clean up if the thread dies\nafter acquiring the lock, but just before it could have added itself to the\nlist.  Glibc sets this list_op_pending field before it tries to acquire the\nfutex, and clears it after the list-add (or list-remove) has finished.\n\nThat\u0027s all that is needed - all the rest of robust-futex cleanup is done in\nuserspace [just like with the previous patches].\n\nUlrich Drepper has implemented the necessary glibc support for this new\nmechanism, which fully enables robust mutexes.  (Ulrich plans to commit these\nchanges to glibc-HEAD later today.)\n\nKey differences of this userspace-list based approach, compared to the vma\nbased method:\n\n - it\u0027s much, much faster: at thread exit time, there\u0027s no need to loop\n   over every vma (!), which the VM-based method has to do.  Only a very\n   simple \u0027is the list empty\u0027 op is done.\n\n - no VM changes are needed - \u0027struct address_space\u0027 is left alone.\n\n - no registration of individual locks is needed: robust mutexes dont need\n   any extra per-lock syscalls.  Robust mutexes thus become a very lightweight\n   primitive - so they dont force the application designer to do a hard choice\n   between performance and robustness - robust mutexes are just as fast.\n\n - no per-lock kernel allocation happens.\n\n - no resource limits are needed.\n\n - no kernel-space recovery call (FUTEX_RECOVER) is needed.\n\n - the implementation and the locking is \"obvious\", and there are no\n   interactions with the VM.\n\n  Performance\n  -----------\n\nI have benchmarked the time needed for the kernel to process a list of 1\nmillion (!) held locks, using the new method [on a 2GHz CPU]:\n\n - with FUTEX_WAIT set [contended mutex]: 130 msecs\n - without FUTEX_WAIT set [uncontended mutex]: 30 msecs\n\nI have also measured an approach where glibc does the lock notification [which\nit currently does for !pshared robust mutexes], and that took 256 msecs -\nclearly slower, due to the 1 million FUTEX_WAKE syscalls userspace had to do.\n\n(1 million held locks are unheard of - we expect at most a handful of locks to\nbe held at a time.  Nevertheless it\u0027s nice to know that this approach scales\nnicely.)\n\n  Implementation details\n  ----------------------\n\nThe patch adds two new syscalls: one to register the userspace list, and one\nto query the registered list pointer:\n\n asmlinkage long\n sys_set_robust_list(struct robust_list_head __user *head,\n                     size_t len);\n\n asmlinkage long\n sys_get_robust_list(int pid, struct robust_list_head __user **head_ptr,\n                     size_t __user *len_ptr);\n\nList registration is very fast: the pointer is simply stored in\ncurrent-\u003erobust_list.  [Note that in the future, if robust futexes become\nwidespread, we could extend sys_clone() to register a robust-list head for new\nthreads, without the need of another syscall.]\n\nSo there is virtually zero overhead for tasks not using robust futexes, and\neven for robust futex users, there is only one extra syscall per thread\nlifetime, and the cleanup operation, if it happens, is fast and\nstraightforward.  The kernel doesnt have any internal distinction between\nrobust and normal futexes.\n\nIf a futex is found to be held at exit time, the kernel sets the highest bit\nof the futex word:\n\n\t#define FUTEX_OWNER_DIED        0x40000000\n\nand wakes up the next futex waiter (if any). User-space does the rest of\nthe cleanup.\n\nOtherwise, robust futexes are acquired by glibc by putting the TID into the\nfutex field atomically.  Waiters set the FUTEX_WAITERS bit:\n\n\t#define FUTEX_WAITERS           0x80000000\n\nand the remaining bits are for the TID.\n\n  Testing, architecture support\n  -----------------------------\n\nI\u0027ve tested the new syscalls on x86 and x86_64, and have made sure the parsing\nof the userspace list is robust [ ;-) ] even if the list is deliberately\ncorrupted.\n\ni386 and x86_64 syscalls are wired up at the moment, and Ulrich has tested the\nnew glibc code (on x86_64 and i386), and it works for his robust-mutex\ntestcases.\n\nAll other architectures should build just fine too - but they wont have the\nnew syscalls yet.\n\nArchitectures need to implement the new futex_atomic_cmpxchg_inuser() inline\nfunction before writing up the syscalls (that function returns -ENOSYS right\nnow).\n\nThis patch:\n\nAdd placeholder futex_atomic_cmpxchg_inuser() implementations to every\narchitecture that supports futexes.  It returns -ENOSYS.\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nSigned-off-by: Arjan van de Ven \u003carjan@infradead.org\u003e\nAcked-by: Ulrich Drepper \u003cdrepper@redhat.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "dc8ecb43701a78bd3c38e7fed1d1c76840579450",
      "tree": "4e9056ec8a86fc321384da15ba7a05bfda32e034",
      "parents": [
        "ad658b385e6308066f9084a7ea01305b223cd3a0"
      ],
      "author": {
        "name": "KAMEZAWA Hiroyuki",
        "email": "kamezawa.hiroyu@jp.fujitsu.com",
        "time": "Mon Mar 27 01:15:34 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Mon Mar 27 08:44:44 2006 -0800"
      },
      "message": "[PATCH] unify pfn_to_page: x86_64 pfn_to_page\n\nx86_64 can use generic funcs.\nFor DISCONTIGMEM, CONFIG_OUT_OF_LINE_PFN_TO_PAGE is selected.\n\nSigned-off-by: KAMEZAWA Hiroyuki \u003ckamezawa.hiroyu@jp.fujitsu.com\u003e\nCc: Andi Kleen \u003cak@muc.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "1e9f28fa1eb9773bf65bae08288c6a0a38eef4a7",
      "tree": "ccfa4927ebc7a8f663f9ac9e7789a713a33253ff",
      "parents": [
        "77e4bfbcf071f795b54862455dce8902b3fc29c2"
      ],
      "author": {
        "name": "Siddha, Suresh B",
        "email": "suresh.b.siddha@intel.com",
        "time": "Mon Mar 27 01:15:22 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Mon Mar 27 08:44:43 2006 -0800"
      },
      "message": "[PATCH] sched: new sched domain for representing multi-core\n\nAdd a new sched domain for representing multi-core with shared caches\nbetween cores.  Consider a dual package system, each package containing two\ncores and with last level cache shared between cores with in a package.  If\nthere are two runnable processes, with this appended patch those two\nprocesses will be scheduled on different packages.\n\nOn such systems, with this patch we have observed 8% perf improvement with\nspecJBB(2 warehouse) benchmark and 35% improvement with CFP2000 rate(with 2\nusers).\n\nThis new domain will come into play only on multi-core systems with shared\ncaches.  On other systems, this sched domain will be removed by domain\ndegeneration code.  This new domain can be also used for implementing power\nsavings policy (see OLS 2005 CMP kernel scheduler paper for more details..\nI will post another patch for power savings policy soon)\n\nMost of the arch/* file changes are for cpu_coregroup_map() implementation.\n\nSigned-off-by: Suresh Siddha \u003csuresh.b.siddha@intel.com\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "f33e2fbacce8008984db99c45120db31081577c5",
      "tree": "762b2bdbbc10e36cca280ed06710d7a4964fba88",
      "parents": [
        "a58259cddf9f824af27abf8960ed604bee53f7c1"
      ],
      "author": {
        "name": "Akinobu Mita",
        "email": "mita@miraclelinux.com",
        "time": "Sun Mar 26 01:39:42 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sun Mar 26 08:57:14 2006 -0800"
      },
      "message": "[PATCH] bitops: x86_64: use generic bitops\n\n- remove sched_find_first_bit()\n- remove generic_hweight{64,32,16,8}()\n- remove ext2_{set,clear,test,find_first_zero,find_next_zero}_bit()\n- remove minix_{test,set,test_and_clear,test,find_first_zero}_bit()\n\nSigned-off-by: Akinobu Mita \u003cmita@miraclelinux.com\u003e\nCc: Andi Kleen \u003cak@muc.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "f271a6f557497830f3995138b0c78d8634b33863",
      "tree": "32d2fdb8f4e95c7414bdf8a2aa339daecabe14c8",
      "parents": [
        "3076a492a5e8dd624f237886646b35d12193502d"
      ],
      "author": {
        "name": "Andi Kleen",
        "email": "ak@suse.de",
        "time": "Sat Mar 25 16:31:58 2006 +0100"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sat Mar 25 09:14:39 2006 -0800"
      },
      "message": "[PATCH] x86_64: Removed duplicated declaration of force_iommu\n\nNoticed by Andrew Morton.\n\nSigned-off-by: Andi Kleen \u003cak@suse.de\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "dcf36bfa5de6d4e37878d4c98b6986fee4eb8b4c",
      "tree": "6b18d3efd64e55f14209f40ee3232da2ea25d69e",
      "parents": [
        "40caa884650fc6931cf55918dbf7496c49b3ddf8"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "dada1@cosmosbay.com",
        "time": "Sat Mar 25 16:31:46 2006 +0100"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sat Mar 25 09:14:38 2006 -0800"
      },
      "message": "[PATCH] x86_64: group memnodemap and memnodeshift in a memnode structure\n\npfn_to_page() and others need to access both memnode_shift and the very\nfirst bytes of memnodemap[]. If we force memnode_shift to be just before the\nmemnodemap array, we can reduce the memory footprint to one cache line\ninstead of two for most setups. This patch introduce a \u0027memnode\u0027 structure\nwhere shift and map[] are carefully placed.\n\nSigned-off-by: Eric Dumazet \u003cdada1@cosmosbay.com\u003e\nSigned-off-by: Andi Kleen \u003cak@suse.de\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "94949436191f69dac735919a9698612ef6b3dbba",
      "tree": "9648177bb03f620b6333153102e5bdd7e56f47ca",
      "parents": [
        "5d05f4de414c98348219b633401ad9c9a5348a8b"
      ],
      "author": {
        "name": "Andi Kleen",
        "email": "ak@suse.de",
        "time": "Sat Mar 25 16:31:37 2006 +0100"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sat Mar 25 09:14:38 2006 -0800"
      },
      "message": "[PATCH] x86_64: Make local_t 64bit instead of 32bit\n\nFor consistency with other architectures\n\nSigned-off-by: Andi Kleen \u003cak@suse.de\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "ba22f13563de5773701fc318ccaaa37b1fb6d294",
      "tree": "e29ddeaca4c9f7b1b5ef08804980600d0e089f5b",
      "parents": [
        "9d95dd849ccc43c4b21504e1829b5bed68cdb1bc"
      ],
      "author": {
        "name": "Andi Kleen",
        "email": "ak@suse.de",
        "time": "Sat Mar 25 16:31:31 2006 +0100"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sat Mar 25 09:14:38 2006 -0800"
      },
      "message": "[PATCH] x86_64: Remove CONFIG_UNORDERED_IO\n\nIt was a failed experiment - all benchmarks done with it on both AMD\nand Intel showed it was a loss. That was probably because the store\nbuffers of the CPUs for write combining traffic weren\u0027t large enough.\n\nSigned-off-by: Andi Kleen \u003cak@suse.de\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "da7ed9f98f6f3f18664f8ab24303f9428b9d78f8",
      "tree": "692653ace76f945b130eeb991b8e3857caf866b6",
      "parents": [
        "b1fc513d81b0f50f9543428ce95ec63ae70ab184"
      ],
      "author": {
        "name": "Vivek Goyal",
        "email": "vgoyal@in.ibm.com",
        "time": "Sat Mar 25 16:31:16 2006 +0100"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sat Mar 25 09:10:57 2006 -0800"
      },
      "message": "[PATCH] x86_64: timer interrupt lockup due to pending interrupt\n\no check_timer() routine fails while second kernel is booting after a crash\n  on an opetron box. Problem happens because timer vector (0x31) seems to be\n  locked.\n\no After a system crash, it is not safe to service interrupts any more, hence\n  interrupts are disabled. This leads to pending interrupts at LAPIC. LAPIC\n  sends these interrupts to the CPU during early boot of second kernel. Other\n  pending interrupts are discarded saying unexpected trap but timer interrupt\n  is serviced and CPU does not issue an LAPIC EOI because it think this\n  interrupt came from i8259 and sends ack to 8259. This leads to vector 0x31\n  locking as LAPIC does not clear respective ISR and keeps on waiting for\n  EOI.\n\no This patch issues extra EOI for the pending interrupts who have ISR set.\n\no Though today only timer seems to be the special case because in early\n  boot it thinks interrupts are coming from i8259 and uses\n  mask_and_ack_8259A() as ack handler and does not issue LAPIC EOI. But\n  probably doing it in generic manner for all vectors makes sense.\n\nSigned-off-by: Vivek Goyal \u003cvgoyal@in.ibm.com\u003e\nSigned-off-by: Andi Kleen \u003cak@suse.de\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "df92004ce60a0bb60c8315903c0765873c34a702",
      "tree": "420782e1621f8d5d44dd8b4ecc640cbcfc0c4131",
      "parents": [
        "01d4bed417b5943577e9290fbf672ea9a449dc46"
      ],
      "author": {
        "name": "Arjan van de Ven",
        "email": "arjan@linux.intel.com",
        "time": "Sat Mar 25 16:31:01 2006 +0100"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sat Mar 25 09:10:56 2006 -0800"
      },
      "message": "[PATCH] x86_64: Reorder one field of the PDA to reduce padding\n\nThis reorders the mmu_state int in the pda, such that there is no more\npadding (there currently is 4 bytes of padding).  Boot tested.\n\nSigned-off-by: Arjan van de Ven \u003carjan@linux.intel.com\u003e\nSigned-off-by: Andi Kleen \u003cak@suse.de\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "554d284ba90bc2306c31e5363789f05c320969c3",
      "tree": "8fb67f8c7bed5c6525a060b094ff461fb4bfb104",
      "parents": [
        "28456edeff2ef9273c55cd12e4b193208717d4cd"
      ],
      "author": {
        "name": "Andi Kleen",
        "email": "ak@suse.de",
        "time": "Sat Mar 25 16:30:40 2006 +0100"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sat Mar 25 09:10:55 2006 -0800"
      },
      "message": "[PATCH] x86_64: Don\u0027t invoke OOM killer while allocating floppy DMA buffers\n\nFloppy can fall back to smaller buffers, so don\u0027t do OOM killing.\n\nSigned-off-by: Andi Kleen \u003cak@suse.de\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "f2d3efedbecc04dc348d723e4c90b46731b3bb48",
      "tree": "982c7838a97a5c2420de392e5a36f49eaa1778b0",
      "parents": [
        "f083a329e63d471a5e9238e837772b1b76c218db"
      ],
      "author": {
        "name": "Andi Kleen",
        "email": "ak@suse.de",
        "time": "Sat Mar 25 16:30:22 2006 +0100"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sat Mar 25 09:10:55 2006 -0800"
      },
      "message": "[PATCH] x86_64: Implement early DMI scanning\n\nThere are more and more cases where we need to know DMI information\nearly to work around bugs.  i386 already had early DMI scanning, but\nx86-64 didn\u0027t.  Implement this now.\n\nThis required some cleanup in the i386 code.\n\nSigned-off-by: Andi Kleen \u003cak@suse.de\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "6edfba1b33c701108717f4e036320fc39abe1912",
      "tree": "48f69c4e9c103c88541d4c5e36fae9a688c45bb1",
      "parents": [
        "681558fdb5848f0a6dc248108f0f7323f7380857"
      ],
      "author": {
        "name": "Andi Kleen",
        "email": "ak@suse.de",
        "time": "Sat Mar 25 16:29:49 2006 +0100"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sat Mar 25 09:10:53 2006 -0800"
      },
      "message": "[PATCH] x86_64: Don\u0027t define string functions to builtin\n\ngcc should handle this anyways, and it causes problems when\nsprintf is turned into strcpy by gcc behind our backs and\nthe C fallback version of strcpy is actually defining __builtin_strcpy\n\nThen drop -ffreestanding from the main Makefile because it isn\u0027t\nneeded anymore and implies -fno-builtin, which is wrong now.\n(it was only added for x86-64, so dropping it should be safe)\n\nNoticed by Roman Zippel\n\nCc: Roman Zippel \u003czippel@linux-m68k.org\u003e\nSigned-off-by: Andi Kleen \u003cak@suse.de\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "86ebcea899ff01274c1e8e15bf1d1f1cf5fac471",
      "tree": "d14b575e09c71aaf6f467a28c72f943ab815dd8f",
      "parents": [
        "8c914cb704a11460eec7ed2a572bb5e9bd513d24"
      ],
      "author": {
        "name": "Jan Beulich",
        "email": "jbeulich@novell.com",
        "time": "Sat Mar 25 16:29:43 2006 +0100"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sat Mar 25 09:10:53 2006 -0800"
      },
      "message": "[PATCH] x86_64: remove dead do_softirq_thunk\n\nAppearantly a left-over...\n\nSigned-off-by: Jan Beulich \u003cjbeulich@novell.com\u003e\nSigned-off-by: Andi Kleen \u003cak@suse.de\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "8c914cb704a11460eec7ed2a572bb5e9bd513d24",
      "tree": "3d735f0e33f474b296f106dee70935d77e267a74",
      "parents": [
        "85f9eebccde51e24896f31383f5b70776362e1a6"
      ],
      "author": {
        "name": "Jan Beulich",
        "email": "jbeulich@novell.com",
        "time": "Sat Mar 25 16:29:40 2006 +0100"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sat Mar 25 09:10:53 2006 -0800"
      },
      "message": "[PATCH] x86_64: actively synchronize vmalloc area when registering certain callbacks\n\nWhile the modular aspect of the respective i386 patch doesn\u0027t apply to\nx86-64 (as the top level page directory entry is shared between modules\nand the base kernel), handlers registered with register_die_notifier()\nare still under similar constraints for touching ioremap()ed or\nvmalloc()ed memory. The likelihood of this problem becoming visible is\nof course significantly lower, as the assigned virtual addresses would\nhave to cross a 2**39 byte boundary. This is because the callback gets\ninvoked\n(a) in the page fault path before the top level page table propagation\ngets carried out (hence a fault to propagate the top level page table\nentry/entries mapping to module\u0027s code/data would nest infinitly) and\n(b) in the NMI path, where nested faults must absolutely not happen,\nsince otherwise the IRET from the nested fault re-enables NMIs,\npotentially resulting in nested NMI occurences.\n\nSigned-off-by: Jan Beulich \u003cjbeulich@novell.com\u003e\nSigned-off-by: Andi Kleen \u003cak@suse.de\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "2b514e74f4e59e3b8e54891580fef2c9ff6c7bd0",
      "tree": "106ddc876df761c2b3d9aa3ef27c576ad15ed54b",
      "parents": [
        "893efca9279d7a78bae6532de0524e53370819d5"
      ],
      "author": {
        "name": "Jan Beulich",
        "email": "jbeulich@novell.com",
        "time": "Sat Mar 25 16:29:22 2006 +0100"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sat Mar 25 09:10:52 2006 -0800"
      },
      "message": "[PATCH] x86_64: eliminate set_debug()\n\nFor consistency and to have only a single place of definition, replace\nset_debug() uses with set_debugreg(), and eliminate the definition of\nthj former.\n\nSigned-off-by: Jan Beulich \u003cjbeulich@novell.com\u003e\nSigned-off-by: Andi Kleen \u003cak@suse.de\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "abe059e7590fd4475285f2d037c70dec712a4572",
      "tree": "4c15ffcf11786a89cd87d0766c6d6717342aa722",
      "parents": [
        "913bd906019514579b3c7ec5ab9c463e89207a57"
      ],
      "author": {
        "name": "Andi Kleen",
        "email": "ak@suse.de",
        "time": "Sat Mar 25 16:29:12 2006 +0100"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sat Mar 25 09:10:52 2006 -0800"
      },
      "message": "[PATCH] x86_64: Rename struct node in x86-64 NUMA code to struct bootnode\n\nIt conflicts with the struct node in node.h\nActually the x86-64 version was there first, but ..\n\nSuggested by Jan Beulich\n\nCc: jbeulich@novell.com\nSigned-off-by: Andi Kleen \u003cak@suse.de\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "913bd906019514579b3c7ec5ab9c463e89207a57",
      "tree": "8f73c66bf2b30afb2807814d97f9307af0508454",
      "parents": [
        "dca99a38bccceda9e079d4c95abefbd9028605fe"
      ],
      "author": {
        "name": "Andi Kleen",
        "email": "ak@suse.de",
        "time": "Sat Mar 25 16:29:09 2006 +0100"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sat Mar 25 09:10:52 2006 -0800"
      },
      "message": "[PATCH] x86_64: Increase the variability of the process stack on 64bit architectures\n\n8MB is not really very random, use 1GB (or more with larger page sizes)\ninstead.\n\nAlso use the low bits of the random generator output now instead of\nthrowing them away.\n\nOnly enabled on x86-64 right now. Other architectures need to add\na suitable STACK_RND_MASK\n\nCc: mingo@elte.hu\nSigned-off-by: Andi Kleen \u003cak@suse.de\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "f348d70a324e15afc701a494f32ec468abb7d1eb",
      "tree": "a4cb43429f7f08a6621c581bd99e4a03198e8c67",
      "parents": [
        "501f2499b897ca4be68b1acc7a4bc8cf66f5fd24"
      ],
      "author": {
        "name": "Davide Libenzi",
        "email": "davidel@xmailserver.org",
        "time": "Sat Mar 25 03:07:39 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sat Mar 25 08:22:56 2006 -0800"
      },
      "message": "[PATCH] POLLRDHUP/EPOLLRDHUP handling for half-closed devices notifications\n\nImplement the half-closed devices notifiation, by adding a new POLLRDHUP\n(and its alias EPOLLRDHUP) bit to the existing poll/select sets.  Since the\nexisting POLLHUP handling, that does not report correctly half-closed\ndevices, was feared to be changed, this implementation leaves the current\nPOLLHUP reporting unchanged and simply add a new bit that is set in the few\nplaces where it makes sense.  The same thing was discussed and conceptually\nagreed quite some time ago:\n\nhttp://lkml.org/lkml/2003/7/12/116\n\nSince this new event bit is added to the existing Linux poll infrastruture,\neven the existing poll/select system calls will be able to use it.  As far\nas the existing POLLHUP handling, the patch leaves it as is.  The\npollrdhup-2.6.16.rc5-0.10.diff defines the POLLRDHUP for all the existing\narchs and sets the bit in the six relevant files.  The other attached diff\nis the simple change required to sys/epoll.h to add the EPOLLRDHUP\ndefinition.\n\nThere is \"a stupid program\" to test POLLRDHUP delivery here:\n\n http://www.xmailserver.org/pollrdhup-test.c\n\nIt tests poll(2), but since the delivery is same epoll(2) will work equally.\n\nSigned-off-by: Davide Libenzi \u003cdavidel@xmailserver.org\u003e\nCc: \"David S. Miller\" \u003cdavem@davemloft.net\u003e\nCc: Michael Kerrisk \u003cmtk-manpages@gmx.net\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "57f3ebccaa560d1eeb40b5c719773bed5cb0df46",
      "tree": "5c475fe84dbd352f9758f63c20a3c76c1b89c8ca",
      "parents": [
        "c44fec118b62baad3fc70e2ef3447729a1d9b194"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Fri Mar 24 03:15:41 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Fri Mar 24 07:33:19 2006 -0800"
      },
      "message": "[PATCH] remove ISA legacy functions: remove the helpers\n\nunused isa_...() helpers removed.\n\nAdrian Bunk:\nThe asm-sh part was rediffed due to unrelated changes.\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\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": "3d1712c91df01d2573b934e972e231e8edb102c7",
      "tree": "71ed84ab8e8a59517ec1b7b1af082adc2beb1758",
      "parents": [
        "9b04c997b1120feefa1e6ee8e2902270bc055cd2"
      ],
      "author": {
        "name": "Akinobu Mita",
        "email": "mita@miraclelinux.com",
        "time": "Fri Mar 24 03:15:11 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Fri Mar 24 07:33:15 2006 -0800"
      },
      "message": "[PATCH] x86_64: {set,clear,test}_bit() related cleanup and pci_mmcfg_init() fix\n\nWhile working on these patch set, I found several possible cleanup on x86-64\nand ia64.\n\nakpm: I stole this from Andi\u0027s queue.\n\nNot only does it clean up bitops.  It also unrelatedly changes the prototype\nof pci_mmcfg_init() and removes its arch_initcall().  It seems that the wrong\ntwo patches got joined together, but this is the one which has been tested.\n\nThis patch fixes the current x86_64 build error (the pci_mmcfg_init()\ndeclaration in arch/i386/pci/pci.h disagrees with the definition in\narch/x86_64/pci/mmconfig.c)\n\nThis also means that x86_64\u0027s pci_mmcfg_init() gets called in the same (new)\nmanner as x86\u0027s: from arch/i386/pci/init.c:pci_access_init(), rather than via\ninitcall.\n\nThe bitops cleanups came along for free.\n\nAll this worked OK in -mm testing (since 2.6.16-rc4-mm1) because x86_64 was\ntested with both patches applied.\n\nSigned-off-by: Akinobu Mita \u003cmita@miraclelinux.com\u003e\nSigned-off-by: Andi Kleen \u003cak@suse.de\u003e\nCc: Con Kolivas \u003ckernel@kolivas.org\u003e\nCc: Jean Delvare \u003ckhali@linux-fr.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "394e3902c55e667945f6f1c2bdbc59842cce70f7",
      "tree": "f4bca0bdc0c291fda6f6949265aacec0669b9084",
      "parents": [
        "63872f87a151413100678f110d1556026002809e"
      ],
      "author": {
        "name": "Andrew Morton",
        "email": "akpm@osdl.org",
        "time": "Thu Mar 23 03:01:05 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Thu Mar 23 07:38:17 2006 -0800"
      },
      "message": "[PATCH] more for_each_cpu() conversions\n\nWhen we stop allocating percpu memory for not-possible CPUs we must not touch\nthe percpu data for not-possible CPUs at all.  The correct way of doing this\nis to test cpu_possible() or to use for_each_cpu().\n\nThis patch is a kernel-wide sweep of all instances of NR_CPUS.  I found very\nfew instances of this bug, if any.  But the patch converts lots of open-coded\ntest to use the preferred helper macros.\n\nCc: Mikael Starvik \u003cstarvik@axis.com\u003e\nCc: David Howells \u003cdhowells@redhat.com\u003e\nAcked-by: Kyle McMartin \u003ckyle@parisc-linux.org\u003e\nCc: Anton Blanchard \u003canton@samba.org\u003e\nCc: Benjamin Herrenschmidt \u003cbenh@kernel.crashing.org\u003e\nCc: Paul Mackerras \u003cpaulus@samba.org\u003e\nCc: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\nCc: Heiko Carstens \u003cheiko.carstens@de.ibm.com\u003e\nCc: Paul Mundt \u003clethal@linux-sh.org\u003e\nCc: \"David S. Miller\" \u003cdavem@davemloft.net\u003e\nCc: William Lee Irwin III \u003cwli@holomorphy.com\u003e\nCc: Andi Kleen \u003cak@muc.de\u003e\nCc: Christian Zankel \u003cchris@zankel.net\u003e\nCc: Philippe Elie \u003cphil.el@wanadoo.fr\u003e\nCc: Nathan Scott \u003cnathans@sgi.com\u003e\nCc: Jens Axboe \u003caxboe@suse.de\u003e\nCc: Eric Dumazet \u003cdada1@cosmosbay.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "0b2fcfdb8b4e7e379192f24ea2203163ddf5df1d",
      "tree": "1f3995e41ab12ff76e737389e0b59a40c0c73668",
      "parents": [
        "713729e8b993cb880225e2ced50a3f5ac05c2b3f"
      ],
      "author": {
        "name": "Nick Piggin",
        "email": "npiggin@suse.de",
        "time": "Thu Mar 23 03:01:02 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Thu Mar 23 07:38:17 2006 -0800"
      },
      "message": "[PATCH] atomic: add_unless cmpxchg optimise\n\nWithout branch hints, the very unlikely chance of the loop repeating due to\ncmpxchg failure is unrolled with gcc-4 that I have tested.\n\nImprove this for architectures with a native cas/cmpxchg.  llsc archs\nshould try to implement this natively.\n\nSigned-off-by: Nick Piggin \u003cnpiggin@suse.de\u003e\nCc: Andi Kleen \u003cak@muc.de\u003e\nCc: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\nCc: Heiko Carstens \u003cheiko.carstens@de.ibm.com\u003e\nCc: \"David S. Miller\" \u003cdavem@davemloft.net\u003e\nCc: Roman Zippel \u003czippel@linux-m68k.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "804f1594cc3deb161e531a43d90c501f0db2635a",
      "tree": "81f7a7cea8dbf671c733df379c6582e36459e8da",
      "parents": [
        "6a2900b67652421b51fe25e4b86ecfec742b1f30"
      ],
      "author": {
        "name": "Kyle McMartin",
        "email": "kyle@parisc-linux.org",
        "time": "Thu Mar 23 03:00:16 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Thu Mar 23 07:38:10 2006 -0800"
      },
      "message": "[PATCH] Move read_mostly definition to asm/cache.h\n\nSeems like needless clutter having a bunch of #if defined(CONFIG_$ARCH) in\ninclude/linux/cache.h.  Move the per architecture section definition to\nasm/cache.h, and keep the if-not-defined dummy case in linux/cache.h to\ncatch architectures which don\u0027t implement the section.\n\nVerified that symbols still go in .data.read_mostly on parisc,\nand the compile doesn\u0027t break.\n\nSigned-off-by: Kyle McMartin \u003ckyle@parisc-linux.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "8f860591ffb29738cf5539b6fbf27f50dcdeb380",
      "tree": "4265e45c4a79d86a16cd5175a836e8c531be8117",
      "parents": [
        "aed75ff3caafce404d9be7f0c088716375be5279"
      ],
      "author": {
        "name": "Zhang, Yanmin",
        "email": "yanmin_zhang@linux.intel.com",
        "time": "Wed Mar 22 00:08:50 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Wed Mar 22 07:54:03 2006 -0800"
      },
      "message": "[PATCH] Enable mprotect on huge pages\n\n2.6.16-rc3 uses hugetlb on-demand paging, but it doesn_t support hugetlb\nmprotect.\n\nFrom: David Gibson \u003cdavid@gibson.dropbear.id.au\u003e\n\n  Remove a test from the mprotect() path which checks that the mprotect()ed\n  range on a hugepage VMA is hugepage aligned (yes, really, the sense of\n  is_aligned_hugepage_range() is the opposite of what you\u0027d guess :-/).\n\n  In fact, we don\u0027t need this test.  If the given addresses match the\n  beginning/end of a hugepage VMA they must already be suitably aligned.  If\n  they don\u0027t, then mprotect_fixup() will attempt to split the VMA.  The very\n  first test in split_vma() will check for a badly aligned address on a\n  hugepage VMA and return -EINVAL if necessary.\n\nFrom: \"Chen, Kenneth W\" \u003ckenneth.w.chen@intel.com\u003e\n\n  On i386 and x86-64, pte flag _PAGE_PSE collides with _PAGE_PROTNONE.  The\n  identify of hugetlb pte is lost when changing page protection via mprotect.\n  A page fault occurs later will trigger a bug check in huge_pte_alloc().\n\n  The fix is to always make new pte a hugetlb pte and also to clean up\n  legacy code where _PAGE_PRESENT is forced on in the pre-faulting day.\n\nSigned-off-by: Zhang Yanmin \u003cyanmin.zhang@intel.com\u003e\nCc: David Gibson \u003cdavid@gibson.dropbear.id.au\u003e\nCc: \"David S. Miller\" \u003cdavem@davemloft.net\u003e\nCc: Benjamin Herrenschmidt \u003cbenh@kernel.crashing.org\u003e\nCc: Paul Mackerras \u003cpaulus@samba.org\u003e\nCc: William Lee Irwin III \u003cwli@holomorphy.com\u003e\nSigned-off-by: Ken Chen \u003ckenneth.w.chen@intel.com\u003e\nSigned-off-by: Nishanth Aravamudan \u003cnacc@us.ibm.com\u003e\nCc: Andi Kleen \u003cak@muc.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "637029c6cb5efcbaa3d5831af4c1972bdd629779",
      "tree": "cd6d32dceef73f0ad467f495f51f331a459d01db",
      "parents": [
        "d4f0f122ec407bd1b4d1c773d0c87edc6a92cd26"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Mon Feb 27 20:41:56 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Mon Feb 27 20:41:56 2006 -0800"
      },
      "message": "Revert \"[PATCH] x86_64: Only do the clustered systems have unsynchronized TSC assumption on IBM systems\"\n\nThis reverts commit 13a229abc25640813f1480c0478dfc6bdbc1c19e.\n\nQuoth Andi:\n  \"After some consideration and feedback from various people it turns\n   out this wasn\u0027t that good an idea.  It has some problems and needs\n   more work.  Since it was only an optimization anyways it\u0027s best to\n   just back it out again for now.\"\n\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "e8b917775b572bc27de105f1317c2de4335db5b3",
      "tree": "940351af2d1690331d82a65331acf34254621936",
      "parents": [
        "e2c0388866dc12bef56b178b958f9b778fe6c687"
      ],
      "author": {
        "name": "Andi Kleen",
        "email": "ak@suse.de",
        "time": "Sun Feb 26 04:18:49 2006 +0100"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sun Feb 26 09:53:31 2006 -0800"
      },
      "message": "[PATCH] x86_64: Move the SMP time selection earlier\n\nSMP time selection originally ran after all CPUs were brought up because\nit needed to know the number of CPUs to decide if it needs an MP safe\ntimer or not.\n\nThis is not needed anymore because we know present CPUs early.\n\nThis fixes a couple of problems:\n - apicmaintimer didn\u0027t always work because it relied on state that was\n   set up time_init_gtod too late.\n - The output for the used timer in early kernel log was misleading\n   because time_init_gtod could actually change it later.  Now always\n   print the final timer choice\n\nSigned-off-by: Andi Kleen \u003cak@suse.de\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "e2c0388866dc12bef56b178b958f9b778fe6c687",
      "tree": "8a029b1e859215340fd7a029194bffdd7661e4c8",
      "parents": [
        "2eb1bdbad89b19c99f8ac1de1492cdabbff6b3d3"
      ],
      "author": {
        "name": "Andi Kleen",
        "email": "ak@suse.de",
        "time": "Sun Feb 26 04:18:46 2006 +0100"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sun Feb 26 09:53:30 2006 -0800"
      },
      "message": "[PATCH] x86_64: Fix the additional_cpus\u003d.. option\n\nIt didn\u0027t set up the CPU possible map early enough, so the\noption didn\u0027t actually work.\n\nNoticed by Heiko Carstens\n\nSigned-off-by: Andi Kleen \u003cak@suse.de\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "13a229abc25640813f1480c0478dfc6bdbc1c19e",
      "tree": "bdb9da6ba327bd4f6ee64aa3ca1548670be395f2",
      "parents": [
        "5342fba5412cead88b61ead07168615dbeba1ee3"
      ],
      "author": {
        "name": "Andi Kleen",
        "email": "ak@suse.de",
        "time": "Sun Feb 26 04:18:31 2006 +0100"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sun Feb 26 09:53:30 2006 -0800"
      },
      "message": "[PATCH] x86_64: Only do the clustered systems have unsynchronized TSC assumption on IBM systems\n\nBig Unisys systems have multiple clusters too, but they have an\nsynchronized TSC.\n\nI\u0027m using the SMBIOS to check for vendor \u003d\u003d IBM.\n\nCc: Chris McDermott \u003clcm@us.ibm.com\u003e\nCc: \"Protasevich, Natalie\" \u003cNatalie.Protasevich@unisys.com\u003e\n\nSigned-off-by: Andi Kleen \u003cak@suse.de\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "f83f2b5fbab4585f4de4523c7879d60e3f85a248",
      "tree": "93377911ff62ca519e918bd061c77c79cb90fbda",
      "parents": [
        "60b08c67220cf6faef7410ac6adba23a8a743bf7"
      ],
      "author": {
        "name": "Jan Beulich",
        "email": "jbeulich@novell.com",
        "time": "Sun Feb 26 04:18:25 2006 +0100"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sun Feb 26 09:53:30 2006 -0800"
      },
      "message": "[PATCH] x86_64: fix USER_PTRS_PER_PGD\n\nThe value, while currently unused in the native kernel, was off by one.\n\nSigned-Off-By: Jan Beulich \u003cjbeulich@novell.com\u003e\nSigned-off-by: Andi Kleen \u003cak@suse.de\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "60b08c67220cf6faef7410ac6adba23a8a743bf7",
      "tree": "ad3c5f6933f06ce46ff41b0fe456a10900a04567",
      "parents": [
        "04a3d311c01d3ad287750c5c8d03fa614475af91"
      ],
      "author": {
        "name": "Jon Mason",
        "email": "jdmason@us.ibm.com",
        "time": "Sun Feb 26 04:18:22 2006 +0100"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sun Feb 26 09:53:29 2006 -0800"
      },
      "message": "[PATCH] x86_64: no_iommu removal in pci-gart.c\n\nIn previous versions of pci-gart.c, no_iommu was used to determine if IOMMU was\ndisabled in the GART DMA mapping functions.  This changed in 2.6.16 and now\ngart_xxx() functions are only called if gart is enabled.  Therefore, uses of\nno_iommu in the GART code are no longer necessary and can be removed.\n\nAlso, it removes double deceleration of no_iommu and force_iommu in pci.h and\nproto.h, by removing the deceleration in pci.h.\n\nLastly, end_pfn off by one error.\n\nTested (along with patch 1/2) on dual opteron with gart enabled, iommu\u003dsoft,\nand iommu\u003doff.\n\nSigned-off-by: Jon Mason \u003cjdmason@us.ibm.com\u003e\nSigned-off-by: Andi Kleen \u003cak@suse.de\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "7fd67843b96f90f59c9a244a1bc25137978a3ff9",
      "tree": "600a7951745cc67f36075e5d60c30bd5ea842112",
      "parents": [
        "ab68805955ee3dd84a6aa76cd70e61fde996968d"
      ],
      "author": {
        "name": "Andi Kleen",
        "email": "ak@suse.de",
        "time": "Thu Feb 16 23:42:07 2006 +0100"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Fri Feb 17 08:00:40 2006 -0800"
      },
      "message": "[PATCH] x86_64: Disable tsc when apicpmtimer is active\n\nOtherwise it has no effect anyways.\n\nSigned-off-by: Andi Kleen \u003cak@suse.de\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "5f6164f3092832e0d9b12eed52e09a76bf39c64a",
      "tree": "507043c3eafa00ad7241f1102c860e486f8dc544",
      "parents": [
        "06fed33849c13af637c4d09e9ba27828fac9edd5"
      ],
      "author": {
        "name": "Michael S. Tsirkin",
        "email": "mst@mellanox.co.il",
        "time": "Wed Feb 15 15:17:39 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Wed Feb 15 15:32:22 2006 -0800"
      },
      "message": "[PATCH] add asm-generic/mman.h\n\nMake new MADV_REMOVE, MADV_DONTFORK, MADV_DOFORK consistent across all\narches.  The idea is to make it possible to use them portably even before\ndistros include them in libc headers.\n\nMove common flags to asm-generic/mman.h\n\nSigned-off-by: Michael S. Tsirkin \u003cmst@mellanox.co.il\u003e\nCc: Roland Dreier \u003crolandd@cisco.com\u003e\nCc: Badari Pulavarty \u003cpbadari@us.ibm.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "f822566165dd46ff5de9bf895cfa6c51f53bb0c4",
      "tree": "e052f406d5a14140d17f76dc8914d33bbc8e5f1d",
      "parents": [
        "8861da31e3b3e3df7b05e7b157230de3d486e53b"
      ],
      "author": {
        "name": "Michael S. Tsirkin",
        "email": "mst@mellanox.co.il",
        "time": "Tue Feb 14 13:53:08 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Feb 14 16:09:34 2006 -0800"
      },
      "message": "[PATCH] madvise MADV_DONTFORK/MADV_DOFORK\n\nCurrently, copy-on-write may change the physical address of a page even if the\nuser requested that the page is pinned in memory (either by mlock or by\nget_user_pages).  This happens if the process forks meanwhile, and the parent\nwrites to that page.  As a result, the page is orphaned: in case of\nget_user_pages, the application will never see any data hardware DMA\u0027s into\nthis page after the COW.  In case of mlock\u0027d memory, the parent is not getting\nthe realtime/security benefits of mlock.\n\nIn particular, this affects the Infiniband modules which do DMA from and into\nuser pages all the time.\n\nThis patch adds madvise options to control whether memory range is inherited\nacross fork.  Useful e.g.  for when hardware is doing DMA from/into these\npages.  Could also be useful to an application wanting to speed up its forks\nby cutting large areas out of consideration.\n\nSigned-off-by: Michael S. Tsirkin \u003cmst@mellanox.co.il\u003e\nAcked-by: Hugh Dickins \u003chugh@veritas.com\u003e\nCc: Michael Kerrisk \u003cmtk-manpages@gmx.net\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "33042a9ff4d126ba944b9dc3076665a2029e0a34",
      "tree": "d5cf22cebc02316058ad860feecef20742a4ae5e",
      "parents": [
        "e00d82d07fb112446586d225763d3572e64b7abf"
      ],
      "author": {
        "name": "Chris McDermott",
        "email": "lcm@us.ibm.com",
        "time": "Sat Feb 11 17:55:50 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sat Feb 11 21:41:11 2006 -0800"
      },
      "message": "[PATCH] x86-64: Fix HPET timer on x460\n\n[description from AK]\n\nThe IBM Summit 3 chipset doesn\u0027t implement the HPET timer replacement\noption.  Since the current Linux code relies on it use a mixed mode with\nboth PIT for the interrupt and HPET counters for the time keeping.  That\nwas already implemented, but didn\u0027t work properly because it was still\nusing the last interrupt offset in HPET.  This resulted in x460 not\nbooting.  Fix this up by using the free running HPET counter.\n\nShouldn\u0027t affect any other machine because they either use full HPET mode\nor no HPET at all.\n\nTBD needs a similar 32bit fix.\n\nSigned-off-by: Andi Kleen \u003cak@suse.de\u003e\nCc: Pallipadi, Venkatesh\" \u003cvenkatesh.pallipadi@intel.com\u003e\nCc: Bob Picco \u003cbob.picco@hp.com\u003e\nCc: Bjorn Helgaas \u003cbjorn.helgaas@hp.com\u003e\nCc: john stultz \u003cjohnstul@us.ibm.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "cff2b760096d1e6feaa31948e7af4abbefe47822",
      "tree": "9bd6d2796ffb8c6611ca06b74c6349f8f1289ce2",
      "parents": [
        "25bf368b3d98668c5d5f38e2201d8bca16e52680"
      ],
      "author": {
        "name": "Ulrich Drepper",
        "email": "drepper@redhat.com",
        "time": "Sat Feb 11 17:55:47 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sat Feb 11 21:41:10 2006 -0800"
      },
      "message": "[PATCH] fstatat64 support\n\nThe *at patches introduced fstatat and, due to inusfficient research, I\nused the newfstat functions generally as the guideline.  The result is that\non 32-bit platforms we don\u0027t have all the information needed to implement\nfstatat64.\n\nThis patch modifies the code to pass up 64-bit information if\n__ARCH_WANT_STAT64 is defined.  I renamed the syscall entry point to make\nthis clear.  Other archs will continue to use the existing code.  On x86-64\nthe compat code is implemented using a new sys32_ function.  this is what\nis done for the other stat syscalls as well.\n\nThis patch might break some other archs (those which define\n__ARCH_WANT_STAT64 and which already wired up the syscall).  Yet others\nmight need changes to accomodate the compatibility mode.  I really don\u0027t\nwant to do that work because all this stat handling is a mess (more so in\nglibc, but the kernel is also affected).  It should be done by the arch\nmaintainers.  I\u0027ll provide some stand-alone test shortly.  Those who are\neager could compile glibc and run \u0027make check\u0027 (no installation needed).\n\nThe patch below has been tested on x86 and x86-64.\n\nSigned-off-by: Ulrich Drepper \u003cdrepper@redhat.com\u003e\nCc: Christoph Hellwig \u003chch@lst.de\u003e\nCc: Andi Kleen \u003cak@muc.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "4b88f09364e94b05b66fb1441131e8460495a2f8",
      "tree": "006c9594aa26a8ee6805b337901ecf7823c17dd9",
      "parents": [
        "ca76a2f3a5202ec1618cb7e76aa8a573235e469f"
      ],
      "author": {
        "name": "Andi Kleen",
        "email": "ak@suse.de",
        "time": "Thu Feb 09 00:35:50 2006 +0100"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Wed Feb 08 15:52:15 2006 -0800"
      },
      "message": "[PATCH] x86-64: Add sys_unshare\n\nAdd unshare syscall for x86-64\n\nppoll/pselect are not ready yet, but add reservations.\n\nSigned-off-by: Andi Kleen \u003cak@suse.de\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "488fc08d914f2b07b701c9b9c811437cc1c1c518",
      "tree": "e84cdb61842a6b6f3286a83aad34f9e87857c32c",
      "parents": [
        "7714d5985bb7101a90fb427dc29dc592cf1b960e"
      ],
      "author": {
        "name": "Ravikiran G Thirumalai",
        "email": "kiran@scalex86.org",
        "time": "Tue Feb 07 12:58:23 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Feb 07 16:12:31 2006 -0800"
      },
      "message": "[PATCH] x86_64: Fix the node cpumask of a cpu going down\n\nCurrently, x86_64 and ia64 arches do not clear the corresponding bits in\nthe node\u0027s cpumask when a cpu goes down or cpu bring up is cancelled.  This\nis buggy since there are pieces of common code where the cpumask is checked\nin the cpu down code path to decide on things (like in the slab down path).\n PPC does the right thing, but x86_64 and ia64 don\u0027t (This was the reason\nSonny hit upon a slab bug during cpu offline on ppc and could not reproduce\non other arches).  This patch fixes it for x86_64.  I won\u0027t attempt ia64 as\nI cannot test it.\n\nCredit for spotting this should go to Alok.\n\n(akpm: this was applied, then reverted.  But it\u0027s OK now because we now use\nfor_each_cpu() in the right places).\n\nSigned-off-by: Alok N Kataria \u003calokk@calsoftinc.com\u003e\nSigned-off-by: Ravikiran Thirumalai \u003ckiran@scalex86.org\u003e\nSigned-off-by: Shai Fultheim \u003cshai@scalex86.org\u003e\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": "911b0ad25d167fede6aadc05065b414ec7ab5086",
      "tree": "8e85fd8a70a75aa8b2d18b89b2ebd8fc843c361c",
      "parents": [
        "b53e8f68e07fb8f3ba9ab1812c9c186c09a50c16"
      ],
      "author": {
        "name": "Takashi Iwai",
        "email": "tiwai@suse.de",
        "time": "Sat Feb 04 23:28:05 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sun Feb 05 11:06:54 2006 -0800"
      },
      "message": "[PATCH] Fix \"value computed is not used\" compile warnings with gcc-4.1\n\nFix gcc4.1 compile warnings \"value computed is not used\" with\nset_current_state() and set_task_state() on i386/SMP and x86-64.\n\nSigned-off-by: Takashi Iwai \u003ctiwai@suse.de\u003e\nCc: Nick Piggin \u003cnickpiggin@yahoo.com.au\u003e\nCc: Andi Kleen \u003cak@muc.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "cef5076987dd545ac74f4efcf1c962be8eac34b0",
      "tree": "d404e17d44665c39006d6a5f25cd6b02819a4772",
      "parents": [
        "5b7b644ca9a12396a46fad825a973fb8bed17102"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sun Feb 05 10:51:57 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sun Feb 05 10:51:57 2006 -0800"
      },
      "message": "Revert \"[PATCH] x86_64: Fix the node cpumask of a cpu going down\"\n\nThis reverts commit 10f4dc8b27ac42f930ac55adb8c521264dc997f8.\n\nQuoth Andi Kleen:\n  \"Kiran decided that it makes the problem worse than it was before.\n   Fixing it fully requires more work which is too much for 2.6.16.  So\n   please revert that commit for now.\"\n\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "3777a95903953c55f2309a89679b73c19ae5535b",
      "tree": "45a922a1ff82fc0f3d2a3865bfcb23d68c12792c",
      "parents": [
        "7f66ae48de27bc9506cff0f2991d74901a0c2f8d"
      ],
      "author": {
        "name": "Andi Kleen",
        "email": "ak@suse.de",
        "time": "Fri Feb 03 21:51:53 2006 +0100"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sat Feb 04 16:43:15 2006 -0800"
      },
      "message": "[PATCH] i386/x86-64: Don\u0027t ack the APIC for bad interrupts when the APIC is not enabled\n\nIt\u0027s bad juju to touch the APIC when it hasn\u0027t been enabled.\nI also moved ack_bad_irq for x86-64 out of line following i386.\n\nSigned-off-by: Andi Kleen \u003cak@suse.de\u003e\nAcked-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "0c3749c41f5eee0da36bbf92b2793338b4d8574f",
      "tree": "3af004c5533ab04297004f5ec40da4c6801b8fda",
      "parents": [
        "099f318b8d97490e58c595eb1b6d3415da5ccc03"
      ],
      "author": {
        "name": "Andi Kleen",
        "email": "ak@suse.de",
        "time": "Fri Feb 03 21:51:41 2006 +0100"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sat Feb 04 16:43:15 2006 -0800"
      },
      "message": "[PATCH] x86_64: Calibrate APIC timer using PM timer\n\nOn some broken motherboards (at least one NForce3 based AMD64 laptop)\nthe PIT timer runs at a incorrect frequency.  This patch adds a new\noption \"apicpmtimer\" that allows to use the APIC timer and calibrate it\nusing the PMTimer.  It requires the earlier patch that allows to run the\nmain timer from the APIC.\n\nSpecifying apicpmtimer implies apicmaintimer.\n\nThe option defaults to off for now.\n\nI tested it on a few systems and the resulting APIC timer frequencies\nwere usually a bit off, but always \u003c1%, which should be tolerable.\n\nTBD figure out heuristic to enable this automatically on the affected\nsystems TBD perhaps do it on all NForce3s or using DMI?\n\nSigned-off-by: Andi Kleen \u003cak@suse.de\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "10f4dc8b27ac42f930ac55adb8c521264dc997f8",
      "tree": "88d56b784d7ae5d84fd5e486f666b779c161d8af",
      "parents": [
        "7bcd3f34e262bbebffa954d80eab3a84f053da31"
      ],
      "author": {
        "name": "Ravikiran G Thirumalai",
        "email": "kiran@scalex86.org",
        "time": "Fri Feb 03 21:51:05 2006 +0100"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sat Feb 04 16:43:13 2006 -0800"
      },
      "message": "[PATCH] x86_64: Fix the node cpumask of a cpu going down\n\nCurrently, x86_64 and ia64 arches do not clear the corresponding bits\nin the node\u0027s cpumask when a cpu goes down or cpu bring up is cancelled.\nThis is buggy since there are pieces of common code where the cpumask is\nchecked in the cpu down code path to decide on things (like in  the slab\ndown path).  PPC does the right thing, but x86_64 and ia64 don\u0027t (This\nwas the reason Sonny hit upon a slab bug during cpu offline on ppc and\ncould not reproduce on other arches).  This patch fixes it for x86_64.\nI won\u0027t attempt ia64 as I cannot test it.\n\nCredit for spotting this should go to Alok.\n\nSigned-off-by: Alok N Kataria \u003calokk@calsoftinc.com\u003e\nSigned-off-by: Ravikiran Thirumalai \u003ckiran@scalex86.org\u003e\nSigned-off-by: Shai Fultheim \u003cshai@scalex86.org\u003e\nSigned-off-by: Andi Kleen \u003cak@suse.de\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "7bcd3f34e262bbebffa954d80eab3a84f053da31",
      "tree": "f0765da9eaa8024a2b1d67d3e43730cb32f99fa7",
      "parents": [
        "6bca52b544489b626c7d0db801df6b4aa3d5adb5"
      ],
      "author": {
        "name": "Andi Kleen",
        "email": "ak@suse.de",
        "time": "Fri Feb 03 21:51:02 2006 +0100"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sat Feb 04 16:43:13 2006 -0800"
      },
      "message": "[PATCH] x86_64: Undo the earlier changes to remove unrolled copy/memset functions\n\nThey cause quite bad performance regressions on Netburst\nThis is temporary until we can get new optimized functions\nfor these CPUs.\n\nThis undoes changes that were done in 2.6.15 and in 2.6.16-rc1,\nessentially bringing the code back to 2.6.14 level. Only change\nis I renamed the X86_FEATURE_K8_C flag to X86_FEATURE_REP_GOOD\nand fixed the check for the flag and also fixed some comments.\n\nSigned-off-by: Andi Kleen \u003cak@suse.de\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "0dd2ea9af8f0eca43cf6200baa182b3aba307049",
      "tree": "68d19724e9c50e14ea7d900493a9af37ff26c948",
      "parents": [
        "6f3814cd2fb5ea4d53a7fa5b0635d68fa4036c1b"
      ],
      "author": {
        "name": "Shaohua Li",
        "email": "shaohua.li@intel.com",
        "time": "Fri Feb 03 21:50:56 2006 +0100"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sat Feb 04 16:43:13 2006 -0800"
      },
      "message": "[PATCH] x86_64: [PATCH] timer resume\n\nAt resume time, TSC\u0027s value or something similar might be changed a lot\nagainst suspend time. This could make system gets a very big lost ticks.\nSee http://bugzilla.kernel.org/show_bug.cgi?id\u003d5825\n\nSigned-off-by: Shaohua Li\u003cshaohua.li@intel.com\u003e\nSigned-off-by: Andi Kleen \u003cak@suse.de\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "73dea47faeb96d54a984b9d7f4de564816966354",
      "tree": "6b1f090e9071e281367bc106c1b2ab05cb43e459",
      "parents": [
        "76b461c21468f41837283b7888d55f1c0671f719"
      ],
      "author": {
        "name": "Andi Kleen",
        "email": "ak@suse.de",
        "time": "Fri Feb 03 21:50:50 2006 +0100"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sat Feb 04 16:43:13 2006 -0800"
      },
      "message": "[PATCH] x86_64: Allow to run main time keeping from the local APIC interrupt\n\nAnother piece from the no-idle-tick patch.\n\nThis can be enabled with the \"apicmaintimer\" option.\n\nThis is mainly useful when the PIT/HPET interrupt is unreliable.\nNote there are some systems that are known to stop the APIC\ntimer in C3. For those it will never work, but this case\nshould be automatically detected.\n\nIt also only works with PM timer right now. When HPET is used\nthe way the main timer handler computes the delay doesn\u0027t work.\n\nIt should be a bit more efficient because there is one less\nregular interrupt to process on the boot processor.\n\nRequires earlier bugfix from Venkatesh\n\nSigned-off-by: Andi Kleen \u003cak@suse.de\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "226d780909f71bebfa4dfffa21493244aa22dfdc",
      "tree": "ae9f0ff1e2b62076585825379c3b859ad3f3a1af",
      "parents": [
        "eddb6fb9a54cdc8c7c37e056a2b4bbbc8a128a36"
      ],
      "author": {
        "name": "Andi Kleen",
        "email": "ak@suse.de",
        "time": "Fri Feb 03 21:50:44 2006 +0100"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sat Feb 04 16:43:12 2006 -0800"
      },
      "message": "[PATCH] x86_64: Define pmtmr_ioport to 0 when PM_TIMER is not available\n\nAvoids some ifdef mess later.\n\nSigned-off-by: Andi Kleen \u003cak@suse.de\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "2c5d81a58106fa333467beab5f11dafab07b3e66",
      "tree": "7fabac3f87c1c0d385569cbc127df36e5ff6a05f",
      "parents": [
        "bb3b9cf122eb097ed9fe8ae50e1b0dbba9bbe447"
      ],
      "author": {
        "name": "Fernando Luis Vazquez Cao",
        "email": "fernando@intellilink.co.jp",
        "time": "Fri Feb 03 03:04:39 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Fri Feb 03 08:32:09 2006 -0800"
      },
      "message": "[PATCH] Compilation of kexec/kdump broken\n\nThe compilation of kexec/kdump seems to be broken for x86_64.  Remove the\ndependency of kexec on CONFIG_IA32_EMULATION.\n\nSigned-off-by: Fernando Vazquez \u003cfernando@intellilink.co.jp\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "69dcc99199fe29b0a29471a3488d39d9d33b25fc",
      "tree": "4232ad9a782dee6abfe7fa20c95a49249195de8f",
      "parents": [
        "66ac5a294db70aa377c0d7bbdb0c4e3ef2349b7b"
      ],
      "author": {
        "name": "Zhang, Yanmin",
        "email": "yanmin.zhang@intel.com",
        "time": "Fri Feb 03 03:04:36 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Fri Feb 03 08:32:09 2006 -0800"
      },
      "message": "[PATCH] Export cpu topology in sysfs\n\nThe patch implements cpu topology exportation by sysfs.\n\nItems (attributes) are similar to /proc/cpuinfo.\n\n1) /sys/devices/system/cpu/cpuX/topology/physical_package_id:\n\trepresent the physical package id of  cpu X;\n2) /sys/devices/system/cpu/cpuX/topology/core_id:\n\trepresent the cpu core id to cpu X;\n3) /sys/devices/system/cpu/cpuX/topology/thread_siblings:\n\trepresent the thread siblings to cpu X in the same core;\n4) /sys/devices/system/cpu/cpuX/topology/core_siblings:\n\trepresent the thread siblings to cpu X in the same physical package;\n\nTo implement it in an architecture-neutral way, a new source file,\ndriver/base/topology.c, is to export the 5 attributes.\n\nIf one architecture wants to support this feature, it just needs to\nimplement 4 defines, typically in file include/asm-XXX/topology.h.\nThe 4 defines are:\n#define topology_physical_package_id(cpu)\n#define topology_core_id(cpu)\n#define topology_thread_siblings(cpu)\n#define topology_core_siblings(cpu)\n\nThe type of **_id is int.\nThe type of siblings is cpumask_t.\n\nTo be consistent on all architectures, the 4 attributes should have\ndeafult values if their values are unavailable. Below is the rule.\n\n1) physical_package_id: If cpu has no physical package id, -1 is the\ndefault value.\n\n2) core_id: If cpu doesn\u0027t support multi-core, its core id is 0.\n\n3) thread_siblings: Just include itself, if the cpu doesn\u0027t support\nHT/multi-thread.\n\n4) core_siblings: Just include itself, if the cpu doesn\u0027t support\nmulti-core and HT/Multi-thread.\n\nSo be careful when declaring the 4 defines in include/asm-XXX/topology.h.\n\nIf an attribute isn\u0027t defined on an architecture, it won\u0027t be exported.\n\nThank Nathan, Greg, Andi, Paul and Venki.\n\nThe patch provides defines for i386/x86_64/ia64.\n\nSigned-off-by: Zhang, Yanmin \u003cyanmin.zhang@intel.com\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: Nick Piggin \u003cnickpiggin@yahoo.com.au\u003e\nCc: Greg KH \u003cgreg@kroah.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "59ed2f59e4ea6a32f9591e378da7935f713a7000",
      "tree": "a1276a611dbb1bc44685ef8af363e99603e60047",
      "parents": [
        "9ad11ab48b1ad618bf47076e9e579f267f5306c2",
        "b8e4d89357fc434618a59c1047cac72641191805"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Wed Feb 01 22:06:15 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Wed Feb 01 22:06:15 2006 -0800"
      },
      "message": "Merge branch \u0027release\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/lenb/linux-acpi-2.6\n"
    },
    {
      "commit": "3a2ca64496cc1c9aeab1076e06d092b3ec74a43d",
      "tree": "e76fdb42c39184405bbe5c9dafdb04e9012c38c0",
      "parents": [
        "577bca9eff94193a06e426f8dbf6b3152247a209"
      ],
      "author": {
        "name": "Ulrich Drepper",
        "email": "drepper@redhat.com",
        "time": "Wed Feb 01 03:04:33 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Wed Feb 01 08:53:09 2006 -0800"
      },
      "message": "[PATCH] prototypes for *at functions \u0026 typo fix\n\nHere\u0027s the follow-up patch which introduces the prototypes for the new\nsyscalls.  There was also a typo in one of the new symbols.\n\nSigned-off-by: Ulrich Drepper \u003cdrepper@redhat.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "9fdb62af92c741addbea15545f214a6e89460865",
      "tree": "a25ec569b5b49a1b4c1d2a825f7aab2b2a5e2154",
      "parents": [
        "3ee68c4af3fd7228c1be63254b9f884614f9ebb2",
        "876c184b31dc73cc3f38c5b86dee55d091a56769",
        "729b4d4ce1982c52040bbf22d6711cdf8db07ad8",
        "cf82478840188f8c8494c1d7a668a8ae170d0e07",
        "dacd9b80355525be0e3c519687868410e304ad1c",
        "63c94b68ec30847a6e2b36651703f41066f91480",
        "35f652b5ef4ef145ac5514f6302b3f4cebfbbad4",
        "1a38416cea8ac801ae8f261074721f35317613dc",
        "4a90c7e86202f46fa9af011bdbcdf36e355d1721",
        "aea19aa0780d4b006372fedab8434226e1cc7686",
        "757b18661ea0a0d890e8ce7b1a391e5b7d417d78",
        "c4bb6f5ad968540d7f9619565bacd18d7419b85f"
      ],
      "author": {
        "name": "Len Brown",
        "email": "len.brown@intel.com",
        "time": "Tue Jan 24 17:52:48 2006 -0500"
      },
      "committer": {
        "name": "Len Brown",
        "email": "len.brown@intel.com",
        "time": "Tue Jan 24 17:52:48 2006 -0500"
      },
      "message": "[ACPI] merge 3549 4320 4485 4588 4980 5483 5651 acpica asus fops pnpacpi branches into release\n\nSigned-off-by: Len Brown \u003clen.brown@intel.com\u003e\n"
    },
    {
      "commit": "da9bb1d27b21cb24cbb6a2efb5d3c464d357a01e",
      "tree": "016b66985a651d071d3873e74b115108ddf0b3f5",
      "parents": [
        "2f768af73fea4c70f9046388a7ff648ad11f028e"
      ],
      "author": {
        "name": "Alan Cox",
        "email": "alan@lxorguk.ukuu.org.uk",
        "time": "Wed Jan 18 17:44:13 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Wed Jan 18 19:20:31 2006 -0800"
      },
      "message": "[PATCH] EDAC: core EDAC support code\n\nThis is a subset of the bluesmoke project core code, stripped of the NMI work\nwhich isn\u0027t ready to merge and some of the \"interesting\" proc functionality\nthat needs reworking or just has no place in kernel.  It requires no core\nkernel changes except the added scrub functions already posted.\n\nThe goal is to merge further functionality only after the core code is\naccepted and proven in the base kernel, and only at the point the upstream\nextras are really ready to merge.\n\nFrom: doug thompson \u003cnorsk5@xmission.com\u003e\n\n  This converts EDAC to sysfs and is the final chunk neccessary before EDAC\n  has a stable user space API and can be considered for submission into the\n  base kernel.\n\nSigned-off-by: Alan Cox \u003calan@redhat.com\u003e\nSigned-off-by: Adrian Bunk \u003cbunk@stusta.de\u003e\nSigned-off-by: Jesper Juhl \u003cjesper.juhl@gmail.com\u003e\nSigned-off-by: doug thompson \u003cnorsk5@xmission.com\u003e\nSigned-off-by: Pavel Machek \u003cpavel@suse.cz\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "715b49ef2de6fcead0776d9349071670282faf65",
      "tree": "d09b77c804aba3b191dc0ceb294387cf730ede4b",
      "parents": [
        "3213e913b0d6baeb28aa1affbdd4bfa7efedc35f"
      ],
      "author": {
        "name": "Alan Cox",
        "email": "alan@lxorguk.ukuu.org.uk",
        "time": "Wed Jan 18 17:44:07 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Wed Jan 18 19:20:30 2006 -0800"
      },
      "message": "[PATCH] EDAC: atomic scrub operations\n\nEDAC requires a way to scrub memory if an ECC error is found and the chipset\ndoes not do the work automatically.  That means rewriting memory locations\natomically with respect to all CPUs _and_ bus masters.  That means we can\u0027t\nuse atomic_add(foo, 0) as it gets optimised for non-SMP\n\nThis adds a function to include/asm-foo/atomic.h for the platforms currently\nsupported which implements a scrub of a mapped block.\n\nIt also adjusts a few other files include order where atomic.h is included\nbefore types.h as this now causes an error as atomic_scrub uses u32.\n\nSigned-off-by: Alan Cox \u003calan@redhat.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "a60fc5190a31d98508ea6a76f74217f4104e74b7",
      "tree": "1c28d9124ad642e36f027f16c7c51837dc51d549",
      "parents": [
        "4f085507231e8003c66ed12e38c73b76e938ee95"
      ],
      "author": {
        "name": "Ulrich Drepper",
        "email": "drepper@redhat.com",
        "time": "Wed Jan 18 17:43:56 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Wed Jan 18 19:20:29 2006 -0800"
      },
      "message": "[PATCH] vfs: *at functions: x86_64\n\nWire up the x86_64 syscalls.\n\nSigned-off-by: Ulrich Drepper \u003cdrepper@redhat.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "2ddb55f091a9c74a297d72b50f8310c0c8ed7d1d",
      "tree": "c2389badfdb028dc30bbd0948c16ff25e2a77c27",
      "parents": [
        "c09b42404d29c8a9266f8186632330dc8474bf2e"
      ],
      "author": {
        "name": "Ravikiran G Thirumalai",
        "email": "kiran@scalex86.org",
        "time": "Tue Jan 17 07:03:47 2006 +0100"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Mon Jan 16 23:18:35 2006 -0800"
      },
      "message": "[PATCH] x86_64: Fix VSMP build\n\nPatch fixes a build problem with CONFIG_X86_VSMP.  The vSMP bits probably\n\ngathered some fuzz on its way to mainline, and safe_halt() which was outside\nthe #endif (CONFIG_X86_VSMP) somehow got inside the !CONFIG_X86_VSMP condition,\nhence being undefined and breaking CONFIG_X86_VSMP builds.  Patch takes\nsafe_halt() and halt() macros out of the #endif\n\nSigned-off-by: Ravikiran Thirumalai \u003ckiran@scalex86.org\u003e\nSigned-off-by: Andi Kleen \u003cak@suse.de\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "8817210d4d968e58f7d93db2eecd17b20dd03d40",
      "tree": "4a4084011f348f44c388e1876e55c0d2a03f46b4",
      "parents": [
        "562795fe5770d0c7ee7fe269890e37d9fd475fdf"
      ],
      "author": {
        "name": "Andi Kleen",
        "email": "ak@suse.de",
        "time": "Tue Jan 17 07:03:38 2006 +0100"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Mon Jan 16 23:18:35 2006 -0800"
      },
      "message": "[PATCH] x86_64: Flexmap for 32bit and randomized mappings for 64bit\n\nAnother try at this.\n\nFor 32bit follow the 32bit implementation from Ingo -\nmappings are growing down from the end of stack now\nand vary randomly by 1GB.\n\nRandomized mappings for 64bit just vary the normal mmap break\nby 1TB. I didn\u0027t bother implementing full flex mmap for 64bit\nbecause it shouldn\u0027t be needed there.\n\nCc: mingo@elte.hu\n\nSigned-off-by: Andi Kleen \u003cak@suse.de\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "5580eceed2014135231acb3e6906accf97e10f3c",
      "tree": "15a74347aaf6fee711240915ebfc771f6e95596f",
      "parents": [
        "ee408c79420b6a437332d6977fe33ab72c36dc97"
      ],
      "author": {
        "name": "Andi Kleen",
        "email": "ak@suse.de",
        "time": "Mon Jan 16 01:56:54 2006 +0100"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Mon Jan 16 11:27:59 2006 -0800"
      },
      "message": "[PATCH] x86_64: Increase NR_IRQ_VECTORS to 32 * NR_CPUS\n\nThis prevents running out of GSIs on large Unisys ES7000 machines.\nFollows i386\n\nCc:  \"Protasevich, Natalie\" \u003cNatalie.Protasevich@unisys.com\u003e\n\nSigned-off-by: Andi Kleen \u003cak@suse.de\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "5f8efbb96f4b2679dcbd2c115380a47bd2089dcd",
      "tree": "09b8c0684ee8e943d6199e2e4ebc21e5ce0062c9",
      "parents": [
        "aa41eb9915de74fc6935792973bac4bd777ce218"
      ],
      "author": {
        "name": "Andi Kleen",
        "email": "ak@suse.de",
        "time": "Mon Jan 16 01:56:39 2006 +0100"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Mon Jan 16 11:27:58 2006 -0800"
      },
      "message": "[PATCH] x86_64: Allow nesting of int3 by default for kprobes\n\nThis unbreaks recursive kprobes which didn\u0027t work anymore\ndue to an earlier patch which converted the debug entry point\nto use an IST.\n\nThis also allows nesting of the debug entry point too.\n\nSigned-off-by: Andi Kleen \u003cak@suse.de\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "652050aec936fdd70ed9cbce1cd1ef30a7c9d117",
      "tree": "a2859991fd1c71d918c85c5a8b4bc63bb2c64808",
      "parents": [
        "9ab34fe76114b9538bfcaf3a9d112dee0feb5f17"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Sat Jan 14 13:21:30 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sat Jan 14 18:27:15 2006 -0800"
      },
      "message": "[PATCH] mark several functions __always_inline\n\n      Arjan van de Ven \u003carjan@infradead.org\u003e\n\nMark a number of functions as \u0027must inline\u0027.  The functions affected by this\npatch need to be inlined because they use knowledge that their arguments are\nconstant so that most of the function optimizes away.  At this point this\npatch does not change behavior, it\u0027s for documentation only (and for future\npatches in the inline series)\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Arjan van de Ven \u003carjan@infradead.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "f5a61d0c13db3522a996075bc1b1884a8af2ed37",
      "tree": "e234cb428cb501206e48b654ca6dc82cb389447e",
      "parents": [
        "75bb07e788abb060cc93b6f4dc48a70a53c1406b"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@ftp.linux.org.uk",
        "time": "Thu Jan 12 01:06:09 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Thu Jan 12 09:08:59 2006 -0800"
      },
      "message": "[PATCH] death of get_thread_info/put_thread_info\n\n{get,put}_thread_info() were introduced in 2.5.4 and never\nhad been called by anything in the tree.\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "bb049232fa8fe08c90b182f378eed5017da5235c",
      "tree": "b8a71968d4acedf35081986584c6f24c21c68b65",
      "parents": [
        "e4f17c436f8e4241995c2531372be8dd7ea6ff75"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@ftp.linux.org.uk",
        "time": "Thu Jan 12 01:05:38 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Thu Jan 12 09:08:51 2006 -0800"
      },
      "message": "[PATCH] amd64: task_pt_regs()\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "e4f17c436f8e4241995c2531372be8dd7ea6ff75",
      "tree": "ac797b8402c9a44182f16b76ffc13559d6c0edb3",
      "parents": [
        "e52f4ca2a7cfea3495cabae23d48f1538f09ccf2"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@ftp.linux.org.uk",
        "time": "Thu Jan 12 01:05:38 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Thu Jan 12 09:08:51 2006 -0800"
      },
      "message": "[PATCH] amd64: task_thread_info()\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "198e2f181163233b379dc7ce8a6d7516b84042e7",
      "tree": "cc4067ca1c81034ba8d214b7ff4c39f2f5be66ee",
      "parents": [
        "4dc7a0bbeb6882ad665e588e82fabe5bb4645f2f"
      ],
      "author": {
        "name": "akpm@osdl.org",
        "email": "akpm@osdl.org",
        "time": "Thu Jan 12 01:05:30 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Thu Jan 12 09:08:50 2006 -0800"
      },
      "message": "[PATCH] scheduler cache-hot-autodetect\n\n\r)\n\nFrom: Ingo Molnar \u003cmingo@elte.hu\u003e\n\nThis is the latest version of the scheduler cache-hot-auto-tune patch.\n\nThe first problem was that detection time scaled with O(N^2), which is\nunacceptable on larger SMP and NUMA systems. To solve this:\n\n- I\u0027ve added a \u0027domain distance\u0027 function, which is used to cache\n  measurement results. Each distance is only measured once. This means\n  that e.g. on NUMA distances of 0, 1 and 2 might be measured, on HT\n  distances 0 and 1, and on SMP distance 0 is measured. The code walks\n  the domain tree to determine the distance, so it automatically follows\n  whatever hierarchy an architecture sets up. This cuts down on the boot\n  time significantly and removes the O(N^2) limit. The only assumption\n  is that migration costs can be expressed as a function of domain\n  distance - this covers the overwhelming majority of existing systems,\n  and is a good guess even for more assymetric systems.\n\n  [ People hacking systems that have assymetries that break this\n    assumption (e.g. different CPU speeds) should experiment a bit with\n    the cpu_distance() function. Adding a -\u003emigration_distance factor to\n    the domain structure would be one possible solution - but lets first\n    see the problem systems, if they exist at all. Lets not overdesign. ]\n\nAnother problem was that only a single cache-size was used for measuring\nthe cost of migration, and most architectures didnt set that variable\nup. Furthermore, a single cache-size does not fit NUMA hierarchies with\nL3 caches and does not fit HT setups, where different CPUs will often\nhave different \u0027effective cache sizes\u0027. To solve this problem:\n\n- Instead of relying on a single cache-size provided by the platform and\n  sticking to it, the code now auto-detects the \u0027effective migration\n  cost\u0027 between two measured CPUs, via iterating through a wide range of\n  cachesizes. The code searches for the maximum migration cost, which\n  occurs when the working set of the test-workload falls just below the\n  \u0027effective cache size\u0027. I.e. real-life optimized search is done for\n  the maximum migration cost, between two real CPUs.\n\n  This, amongst other things, has the positive effect hat if e.g. two\n  CPUs share a L2/L3 cache, a different (and accurate) migration cost\n  will be found than between two CPUs on the same system that dont share\n  any caches.\n\n(The reliable measurement of migration costs is tricky - see the source\nfor details.)\n\nFurthermore i\u0027ve added various boot-time options to override/tune\nmigration behavior.\n\nFirstly, there\u0027s a blanket override for autodetection:\n\n\tmigration_cost\u003d1000,2000,3000\n\nwill override the depth 0/1/2 values with 1msec/2msec/3msec values.\n\nSecondly, there\u0027s a global factor that can be used to increase (or\ndecrease) the autodetected values:\n\n\tmigration_factor\u003d120\n\nwill increase the autodetected values by 20%. This option is useful to\ntune things in a workload-dependent way - e.g. if a workload is\ncache-insensitive then CPU utilization can be maximized by specifying\nmigration_factor\u003d0.\n\nI\u0027ve tested the autodetection code quite extensively on x86, on 3\nP3/Xeon/2MB, and the autodetected values look pretty good:\n\nDual Celeron (128K L2 cache):\n\n ---------------------\n migration cost matrix (max_cache_size: 131072, cpu: 467 MHz):\n ---------------------\n           [00]    [01]\n [00]:     -     1.7(1)\n [01]:   1.7(1)    -\n ---------------------\n cacheflush times [2]: 0.0 (0) 1.7 (1784008)\n ---------------------\n\nHere the slow memory subsystem dominates system performance, and even\nthough caches are small, the migration cost is 1.7 msecs.\n\nDual HT P4 (512K L2 cache):\n\n ---------------------\n migration cost matrix (max_cache_size: 524288, cpu: 2379 MHz):\n ---------------------\n           [00]    [01]    [02]    [03]\n [00]:     -     0.4(1)  0.0(0)  0.4(1)\n [01]:   0.4(1)    -     0.4(1)  0.0(0)\n [02]:   0.0(0)  0.4(1)    -     0.4(1)\n [03]:   0.4(1)  0.0(0)  0.4(1)    -\n ---------------------\n cacheflush times [2]: 0.0 (33900) 0.4 (448514)\n ---------------------\n\nHere it can be seen that there is no migration cost between two HT\nsiblings (CPU#0/2 and CPU#1/3 are separate physical CPUs). A fast memory\nsystem makes inter-physical-CPU migration pretty cheap: 0.4 msecs.\n\n8-way P3/Xeon [2MB L2 cache]:\n\n ---------------------\n migration cost matrix (max_cache_size: 2097152, cpu: 700 MHz):\n ---------------------\n           [00]    [01]    [02]    [03]    [04]    [05]    [06]    [07]\n [00]:     -    19.2(1) 19.2(1) 19.2(1) 19.2(1) 19.2(1) 19.2(1) 19.2(1)\n [01]:  19.2(1)    -    19.2(1) 19.2(1) 19.2(1) 19.2(1) 19.2(1) 19.2(1)\n [02]:  19.2(1) 19.2(1)    -    19.2(1) 19.2(1) 19.2(1) 19.2(1) 19.2(1)\n [03]:  19.2(1) 19.2(1) 19.2(1)    -    19.2(1) 19.2(1) 19.2(1) 19.2(1)\n [04]:  19.2(1) 19.2(1) 19.2(1) 19.2(1)    -    19.2(1) 19.2(1) 19.2(1)\n [05]:  19.2(1) 19.2(1) 19.2(1) 19.2(1) 19.2(1)    -    19.2(1) 19.2(1)\n [06]:  19.2(1) 19.2(1) 19.2(1) 19.2(1) 19.2(1) 19.2(1)    -    19.2(1)\n [07]:  19.2(1) 19.2(1) 19.2(1) 19.2(1) 19.2(1) 19.2(1) 19.2(1)    -\n ---------------------\n cacheflush times [2]: 0.0 (0) 19.2 (19281756)\n ---------------------\n\nThis one has huge caches and a relatively slow memory subsystem - so the\nmigration cost is 19 msecs.\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Ashok Raj \u003cashok.raj@intel.com\u003e\nSigned-off-by: Ken Chen \u003ckenneth.w.chen@intel.com\u003e\nCc: \u003cwilder@us.ibm.com\u003e\nSigned-off-by: John Hawkes \u003chawkes@sgi.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "4dc7a0bbeb6882ad665e588e82fabe5bb4645f2f",
      "tree": "8c034f802157d7f449e76f45086c0e13e0ea4711",
      "parents": [
        "c6b44d10f25e5a93eca5135b686a35775c63546e"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Jan 12 01:05:27 2006 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Thu Jan 12 09:08:49 2006 -0800"
      },
      "message": "[PATCH] sched: add cacheflush() asm\n\nAdd per-arch sched_cacheflush() which is a write-back cacheflush used by\nthe migration-cost calibration code at bootup time.\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: Nick Piggin \u003cnickpiggin@yahoo.com.au\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "11a8e778c46ee76fc46b0a7fa9d455b5a8e3e19f",
      "tree": "2e6d19e5fbb9d686448868bc087673e696b5b4be",
      "parents": [
        "5f1d189f8a87930d62c507800a8ac20b9a185e41"
      ],
      "author": {
        "name": "Andi Kleen",
        "email": "ak@suse.de",
        "time": "Wed Jan 11 22:46:51 2006 +0100"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Wed Jan 11 19:05:03 2006 -0800"
      },
      "message": "[PATCH] x86_64: Some housekeeping in local APIC code\n\nRemove support for obsolete hardware and cleanup.\n\n- Remove checks for non integrated APICs\n- Replace apic_write_around with apic_write.\n- Remove apic_read_around\n- Remove APIC version reads used by old workarounds\n- Remove old workaround for Simics\n- Fix indentation\n\nSigned-off-by: Andi Kleen \u003cak@suse.de\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "5f1d189f8a87930d62c507800a8ac20b9a185e41",
      "tree": "f83f756d8481dafe3b8ddba5b741ec6b5cf33e96",
      "parents": [
        "1b2f6304500930ab534a6aa3198bce0c51586206"
      ],
      "author": {
        "name": "Jan Beulich",
        "email": "jbeulich@novell.com",
        "time": "Wed Jan 11 22:46:48 2006 +0100"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Wed Jan 11 19:05:03 2006 -0800"
      },
      "message": "[PATCH] x86_64: Display meaningful part of filename during BUG()\n\nWhen building in a separate objtree, file names produced by BUG() \u0026 Co. can\nget fairly long; printing only the first 50 characters may thus result in\n(almost) no useful information. The following change makes it so that rather\nthe last 50 characters of the filename get printed.\n\nSigned-Off-By: Jan Beulich \u003cjbeulich@novell.com\u003e\n\nSigned-off-by: Andi Kleen \u003cak@suse.de\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "dd52d642db8ca05267456a07a592922e8b093e1c",
      "tree": "325cbfbe911c806a8aefb04f5b0c3a5d90d06c94",
      "parents": [
        "2e664aa2bad56b0bb52cf9cb9d14c9b575b437bb"
      ],
      "author": {
        "name": "Andi Kleen",
        "email": "ak@suse.de",
        "time": "Wed Jan 11 22:46:36 2006 +0100"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Wed Jan 11 19:05:02 2006 -0800"
      },
      "message": "[PATCH] x86_64: Remove unused AMD K8 C stepping flag\n\nX86_FEATURE_K8_C was a synthetic Linux CPUID flag that was used for some\ncode optimizations in Opteron C stepping or later. But support for pre C\nstepping optimizations has been removed, so this isn\u0027t needed anymore.\n\nSigned-off-by: Andi Kleen \u003cak@suse.de\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "77a75333a3d16b830ccf47cf51d944655b015363",
      "tree": "7c911f2763b640a14bfcefd5c3832ccdd93f69e5",
      "parents": [
        "cf0501328674849f8becf6de16620067a0c2f1b5"
      ],
      "author": {
        "name": "Stephen Hemminger",
        "email": "shemminger@osdl.org",
        "time": "Wed Jan 11 22:46:30 2006 +0100"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Wed Jan 11 19:05:02 2006 -0800"
      },
      "message": "[PATCH] x86_64: sparse warning cleanups\n\nFix some trivial sparse warnings in x86_64 code.\n\nSigned-off-by: Stephen Hemminger \u003cshemminger@osdl.org\u003e\nSigned-off-by: Andi Kleen \u003cak@suse.de\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "cf0501328674849f8becf6de16620067a0c2f1b5",
      "tree": "6f449d3b82bc178573d8a991e29c1eff8e6b94a5",
      "parents": [
        "cdc4b9c01909d606afbc1e4a4b6c21fa1687a016"
      ],
      "author": {
        "name": "Andi Kleen",
        "email": "ak@suse.de",
        "time": "Wed Jan 11 22:46:27 2006 +0100"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Wed Jan 11 19:05:01 2006 -0800"
      },
      "message": "[PATCH] x86_64: Move NUMA page_to_pfn/pfn_to_page functions out of line\n\nSaves about ~18K .text in defconfig\n\nThere would be more optimization potential, but that\u0027s for later.\n\nSuggestion originally from Bill Irwin.\nFix from Andy Whitcroft.\n\nSigned-off-by: Andi Kleen \u003cak@suse.de\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "cdc4b9c01909d606afbc1e4a4b6c21fa1687a016",
      "tree": "4c4c7191509f6527cc3813af1ee92f07bea0bbed",
      "parents": [
        "af5b98042452cc6f50de8afa9d079bda8556d74d"
      ],
      "author": {
        "name": "Andi Kleen",
        "email": "ak@suse.de",
        "time": "Wed Jan 11 22:46:24 2006 +0100"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Wed Jan 11 19:05:01 2006 -0800"
      },
      "message": "[PATCH] x86_64: Remove unused segments\n\nThey used to be used by the reboot code, but not anymore.\n\nNoticed by Jan Beulich\n\nCc: JBeulich@novell.com\n\nSigned-off-by: Andi Kleen \u003cak@suse.de\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "79f12614a6537cc3ac9ca4d1ea26f6e4f4a34aee",
      "tree": "25167c8862ad7733c7e044b0aad67e4291a0681b",
      "parents": [
        "5fd63b308569060ffa40af52ed122d9734111bff"
      ],
      "author": {
        "name": "Ravikiran G Thirumalai",
        "email": "kiran@scalex86.org",
        "time": "Wed Jan 11 22:46:18 2006 +0100"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Wed Jan 11 19:05:01 2006 -0800"
      },
      "message": "[PATCH] x86_64: Inclusion of ScaleMP vSMP architecture patches - vsmp_arch\n\nIntroduce vSMP arch to the kernel.\n\nThis patch:\n1. Adds CONFIG_X86_VSMP\n2. Adds machine specific macros for local_irq_disabled, local_irq_enabled\n   and irqs_disabled\n3. Writes to the vSMP CTL device to indicate kernel compiled with CONFIG_VSMP\n\nSigned-off-by: Ravikiran Thirumalai \u003ckiran@scalemp.com\u003e\nSigned-off-by: Shai Fultheim \u003cshai@scalemp.com\u003e\nSigned-off-by: Andi Kleen \u003cak@suse.de\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "5fd63b308569060ffa40af52ed122d9734111bff",
      "tree": "746c2701ec42374b1ec389a6af0d438c9105a9d7",
      "parents": [
        "99f7b77d3c62045bb47dfc4228a2341ba71bff1d"
      ],
      "author": {
        "name": "Ravikiran G Thirumalai",
        "email": "kiran@scalex86.org",
        "time": "Wed Jan 11 22:46:15 2006 +0100"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Wed Jan 11 19:05:01 2006 -0800"
      },
      "message": "[PATCH] x86_64: Inclusion of ScaleMP vSMP architecture patches - vsmp_align\n\nvSMP specific alignment patch to\n1. Define INTERNODE_CACHE_SHIFT for vSMP\n2. Use this for alignment of critical structures\n3. Use INTERNODE_CACHE_SHIFT for ARCH_MIN_TASKALIGN,\n   and let the slab align task_struct allocations to the internode cacheline size\n4. Introduce and use ARCH_MIN_MMSTRUCT_ALIGN for mm_struct slab allocations.\n\nSigned-off-by: Ravikiran Thirumalai \u003ckiran@scalemp.com\u003e\nSigned-off-by: Shai Fultheim \u003cshai@scalemp.com\u003e\nSigned-off-by: Andi Kleen \u003cak@suse.de\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "99f7b77d3c62045bb47dfc4228a2341ba71bff1d",
      "tree": "339585fe8b056b3b80022de6d9efe7bc8b376371",
      "parents": [
        "e4b5939a7eec7726d410517e433040db4ede5102"
      ],
      "author": {
        "name": "Andi Kleen",
        "email": "ak@suse.de",
        "time": "Wed Jan 11 22:46:12 2006 +0100"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Wed Jan 11 19:05:01 2006 -0800"
      },
      "message": "[PATCH] x86_64: Make sure BITS_PER_ATOMIC is defined in asm-generic/atomic.h\n\nFixes\n\n  CC      fs/nfsctl.o\nIn file included from include2/asm/atomic.h:427,\n                 from /home/lsrc/quilt/linux/include/linux/file.h:8,\n                 from /home/lsrc/quilt/linux/fs/nfsctl.c:8:\n/home/lsrc/quilt/linux/include/asm-generic/atomic.h:20:5: warning: \"BITS_PER_LONG\" is not defined\n\nSigned-off-by: Andi Kleen \u003cak@suse.de\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "e4b5939a7eec7726d410517e433040db4ede5102",
      "tree": "256bc1f4ccb7e42d6bd50bc482fe0499337f6eb3",
      "parents": [
        "1008fddcaed7ad3e69f72939c87b24d0d3387ca2"
      ],
      "author": {
        "name": "Brian Gerst",
        "email": "bgerst@didntduck.org",
        "time": "Wed Jan 11 22:46:09 2006 +0100"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Wed Jan 11 19:05:00 2006 -0800"
      },
      "message": "[PATCH] x86_64: cleanup enter_lazy_tlb()\n\nMove the #ifdef into the function body.\n\nSigned-off-by: Brian Gerst \u003cbgerst@didntduck.org\u003e\nSigned-off-by: Andi Kleen \u003cak@suse.de\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "915f34e20c20ee383832bce0a4bc962d0c86be8d",
      "tree": "2e1914cc129361d15e0ad8d888913a0623aef80b",
      "parents": [
        "e080e9d66fd276ed34bc2834eedc134189b87fc9"
      ],
      "author": {
        "name": "Andi Kleen",
        "email": "ak@suse.de",
        "time": "Wed Jan 11 22:45:54 2006 +0100"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Wed Jan 11 19:05:00 2006 -0800"
      },
      "message": "[PATCH] x86_64: Remove useless KDB vector\n\nIt was set as an NMI, but the NMI bit always forces an interrupt\nto end up at vector 2. So it was never used. Remove.\n\nSigned-off-by: Andi Kleen \u003cak@suse.de\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    }
  ],
  "next": "e080e9d66fd276ed34bc2834eedc134189b87fc9"
}
