)]}'
{
  "log": [
    {
      "commit": "c43a55ff4e55d1bcfdf0cadfe2f00281e156c436",
      "tree": "b6ca4cd30ab00fa3bb2a6de16b6c76066b0d6ddd",
      "parents": [
        "59ce20bb341282d5ecf17fd8b0ac093dd6350e5e"
      ],
      "author": {
        "name": "Kelly Daly",
        "email": "kelly@au.ibm.com",
        "time": "Wed Nov 02 15:02:47 2005 +1100"
      },
      "committer": {
        "name": "Kelly Daly",
        "email": "kelly@au.ibm.com",
        "time": "Wed Nov 02 15:02:47 2005 +1100"
      },
      "message": "merge filename and modify references to iseries/lpar_map.h\n\nSigned-off-by: Kelly Daly \u003ckelly@au.ibm.com\u003e\n"
    },
    {
      "commit": "59ce20bb341282d5ecf17fd8b0ac093dd6350e5e",
      "tree": "fbd1db5c36167e4fbadca92ec6a143f80ef9d936",
      "parents": [
        "8875ccfb7a6bd69d95a4e889ab36adda06c30d9e"
      ],
      "author": {
        "name": "Kelly Daly",
        "email": "kelly@au.ibm.com",
        "time": "Wed Nov 02 14:49:47 2005 +1100"
      },
      "committer": {
        "name": "Kelly Daly",
        "email": "kelly@au.ibm.com",
        "time": "Wed Nov 02 14:49:47 2005 +1100"
      },
      "message": "merge filename and modify references to iseries/it_lp_reg_save.h\n\nSigned-off-by: Kelly Daly \u003ckelly@au.ibm.com\u003e\n"
    },
    {
      "commit": "8875ccfb7a6bd69d95a4e889ab36adda06c30d9e",
      "tree": "cba3c9d519dc06c986b3b94217a35252dd687703",
      "parents": [
        "f218aab5cf74672a368933965f5bb612dac3c349"
      ],
      "author": {
        "name": "Kelly Daly",
        "email": "kelly@au.ibm.com",
        "time": "Wed Nov 02 14:13:34 2005 +1100"
      },
      "committer": {
        "name": "Kelly Daly",
        "email": "kelly@au.ibm.com",
        "time": "Wed Nov 02 14:13:34 2005 +1100"
      },
      "message": "merge filename and modify references to iseries/it_lp_queue.h\n\nSigned-off-by: Kelly Daly \u003ckelly@au.ibm.com\u003e\n"
    },
    {
      "commit": "f218aab5cf74672a368933965f5bb612dac3c349",
      "tree": "e112cca36395c7dbe137fb321f7c3175174e7ca1",
      "parents": [
        "7b487bb801b4bd790aa4bf7c157889f9d05e239c"
      ],
      "author": {
        "name": "Kelly Daly",
        "email": "kelly@au.ibm.com",
        "time": "Wed Nov 02 13:51:41 2005 +1100"
      },
      "committer": {
        "name": "Kelly Daly",
        "email": "kelly@au.ibm.com",
        "time": "Wed Nov 02 13:51:41 2005 +1100"
      },
      "message": "merge filename and modify references to iseries/it_lp_naca.h\n\nSigned-off-by: Kelly Daly \u003ckelly@au.ibm.com\u003e\n"
    },
    {
      "commit": "7b487bb801b4bd790aa4bf7c157889f9d05e239c",
      "tree": "0ebea34878e1af7b0d465e43d1d3ea48e69b6c3a",
      "parents": [
        "1ec65d76f3e5d4863b4bf93dfd2bff37f8bf4374"
      ],
      "author": {
        "name": "Kelly Daly",
        "email": "kelly@au.ibm.com",
        "time": "Wed Nov 02 13:48:25 2005 +1100"
      },
      "committer": {
        "name": "Kelly Daly",
        "email": "kelly@au.ibm.com",
        "time": "Wed Nov 02 13:48:25 2005 +1100"
      },
      "message": "merge filename and modify references to iseries/it_exp_vpd_panel.h\n\nSigned-off-by: Kelly Daly \u003ckelly@au.ibm.com\u003e\n"
    },
    {
      "commit": "1ec65d76f3e5d4863b4bf93dfd2bff37f8bf4374",
      "tree": "c3c31614e923a95413f6a89a1a451c3a1db5cf13",
      "parents": [
        "e45423eac2e191a6cfdacdf61cb931976d73cc0b"
      ],
      "author": {
        "name": "Kelly Daly",
        "email": "kelly@au.ibm.com",
        "time": "Wed Nov 02 13:46:07 2005 +1100"
      },
      "committer": {
        "name": "Kelly Daly",
        "email": "kelly@au.ibm.com",
        "time": "Wed Nov 02 13:46:07 2005 +1100"
      },
      "message": "merge filename and modify references to iseries/hv_types.h\n\nSigned-off-by: Kelly Daly \u003ckelly@au.ibm.com\u003e\n"
    },
    {
      "commit": "e45423eac2e191a6cfdacdf61cb931976d73cc0b",
      "tree": "63f750d5be8ee2252c83edb109bd7bdbaaa867ba",
      "parents": [
        "15b17189489f6d759fa2d61e7b6c87c55eeffb2c"
      ],
      "author": {
        "name": "Kelly Daly",
        "email": "kelly@au.ibm.com",
        "time": "Wed Nov 02 12:08:31 2005 +1100"
      },
      "committer": {
        "name": "Kelly Daly",
        "email": "kelly@au.ibm.com",
        "time": "Wed Nov 02 12:08:31 2005 +1100"
      },
      "message": "merge filename and modify references to iseries/hv_lp_event.h\n\nSigned-off-by: Kelly Daly \u003ckelly@au.ibm.com\u003e\n"
    },
    {
      "commit": "15b17189489f6d759fa2d61e7b6c87c55eeffb2c",
      "tree": "9e91b666f440103ee3849c1a4527567c0672e54e",
      "parents": [
        "8021b8a77690d13ffb93eeadb6728e924d700bd5"
      ],
      "author": {
        "name": "Kelly Daly",
        "email": "kelly@au.ibm.com",
        "time": "Wed Nov 02 11:55:28 2005 +1100"
      },
      "committer": {
        "name": "Kelly Daly",
        "email": "kelly@au.ibm.com",
        "time": "Wed Nov 02 11:55:28 2005 +1100"
      },
      "message": "merge filename and modify reference to iseries/hv_lp_config.h\n\nSigned-off-by: Kelly Daly \u003ckelly@au.ibm.com\u003e\n"
    },
    {
      "commit": "8021b8a77690d13ffb93eeadb6728e924d700bd5",
      "tree": "63934777a2b2e6090c23c8359f69ecba0f6d0752",
      "parents": [
        "50592f5d2ae7b95b239ea41d76ad81fee046be86"
      ],
      "author": {
        "name": "Kelly Daly",
        "email": "kelly@au.ibm.com",
        "time": "Wed Nov 02 11:41:12 2005 +1100"
      },
      "committer": {
        "name": "Kelly Daly",
        "email": "kelly@au.ibm.com",
        "time": "Wed Nov 02 11:41:12 2005 +1100"
      },
      "message": "merge filename and modify references to iseries/hv_call_xm.h\n\nSigned-off-by: Kelly Daly \u003ckelly@au.ibm.com\u003e\n"
    },
    {
      "commit": "50592f5d2ae7b95b239ea41d76ad81fee046be86",
      "tree": "be90ec454e8e95ebc3541751c1dee389bd5ca739",
      "parents": [
        "c0a8d05c8a5db835b20a3465b1be1cfe4752a13c"
      ],
      "author": {
        "name": "Kelly Daly",
        "email": "kelly@au.ibm.com",
        "time": "Wed Nov 02 11:37:22 2005 +1100"
      },
      "committer": {
        "name": "Kelly Daly",
        "email": "kelly@au.ibm.com",
        "time": "Wed Nov 02 11:37:22 2005 +1100"
      },
      "message": "merge filename and modify references to iseries/hv_call_sc.h\n\nSigned-off-by: Kelly Daly \u003ckelly@au.ibm.com\u003e\n"
    },
    {
      "commit": "c0a8d05c8a5db835b20a3465b1be1cfe4752a13c",
      "tree": "41a302bb71d162df6dfdd50b1535bbe1677a6244",
      "parents": [
        "1da44037883c0405154d53fe76da27e078456664"
      ],
      "author": {
        "name": "Kelly Daly",
        "email": "kelly@au.ibm.com",
        "time": "Wed Nov 02 11:11:11 2005 +1100"
      },
      "committer": {
        "name": "Kelly Daly",
        "email": "kelly@au.ibm.com",
        "time": "Wed Nov 02 11:11:11 2005 +1100"
      },
      "message": "merge filename and modify references to iseries/hv_call_event.h\n\nSigned-off-by: Kelly Daly \u003ckelly@au.ibm.com\u003e\n"
    },
    {
      "commit": "1da44037883c0405154d53fe76da27e078456664",
      "tree": "db6f579831b89c55e0e0c095345b4d1e5bdd0500",
      "parents": [
        "e2f2e58e7968f8446b1078a20a18bf8ea12b4fbc"
      ],
      "author": {
        "name": "Kelly Daly",
        "email": "kelly@au.ibm.com",
        "time": "Tue Nov 01 16:59:20 2005 +1100"
      },
      "committer": {
        "name": "Kelly Daly",
        "email": "kelly@au.ibm.com",
        "time": "Tue Nov 01 16:59:20 2005 +1100"
      },
      "message": "merge filename and modify references to iseries/hv_call.h\n\nSigned-off-by: Kelly Daly \u003ckelly@au.ibm.com\u003e\n"
    },
    {
      "commit": "23fd07750a789a66fe88cf173d52a18f1a387da4",
      "tree": "06fdd6df35fdb835abdaa9b754d62f6b84b97250",
      "parents": [
        "bd787d438a59266af3c9f6351644c85ef1dd21fe",
        "ed28f96ac1960f30f818374d65be71d2fdf811b0"
      ],
      "author": {
        "name": "Paul Mackerras",
        "email": "paulus@samba.org",
        "time": "Mon Oct 31 13:37:12 2005 +1100"
      },
      "committer": {
        "name": "Paul Mackerras",
        "email": "paulus@samba.org",
        "time": "Mon Oct 31 13:37:12 2005 +1100"
      },
      "message": "Merge ../linux-2.6 by hand\n"
    },
    {
      "commit": "cf00a8d18b9a1c2d55b2728e89125c234e821db5",
      "tree": "99425b8acd08aae1e07a7ae31ff47fa18e4e8c91",
      "parents": [
        "5f6b5b973a125de0dbe236ce659a495787c81ff0"
      ],
      "author": {
        "name": "Paul Mackerras",
        "email": "paulus@samba.org",
        "time": "Mon Oct 31 13:07:02 2005 +1100"
      },
      "committer": {
        "name": "Paul Mackerras",
        "email": "paulus@samba.org",
        "time": "Mon Oct 31 13:07:02 2005 +1100"
      },
      "message": "powerpc: Fix bug arising from having multiple memory_limit variables\n\nWe had a static memory_limit in prom.c, and then another one defined\nin setup_64.c and used in numa.c, which resulted in the kernel crashing\nwhen mem\u003dxxx was given on the command line.  This puts the declaration\nin system.h and the definition in mem.c.  This also moves the\ndefinition of tce_alloc_start/end out of setup_64.c.\n\nSigned-off-by: Paul Mackerras \u003cpaulus@samba.org\u003e\n"
    },
    {
      "commit": "1480d0a31db62b9803f829cc0e5cc71935ffe3cc",
      "tree": "c7c18939b5a0d51f23f7ca8606ecf00fa69741aa",
      "parents": [
        "fc8e3d177fa8073895d37b50282489dbeec89eb1",
        "46595ffbfc8ba79f27cdf8a029ee068b3b34c69f"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sun Oct 30 17:48:00 2005 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sun Oct 30 17:48:00 2005 -0800"
      },
      "message": "Merge master.kernel.org:/home/rmk/linux-2.6-arm\n"
    },
    {
      "commit": "451cbaa1c328082832a8fbcc427cd4416c602c5a",
      "tree": "139c3d33d0cf3f9eba214c504e4173f54c6cf66d",
      "parents": [
        "4e57b6817880946a3a78d5d8cad1ace363f7e449"
      ],
      "author": {
        "name": "OGAWA Hirofumi",
        "email": "hirofumi@mail.parknet.co.jp",
        "time": "Sun Oct 30 15:03:49 2005 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sun Oct 30 17:37:32 2005 -0800"
      },
      "message": "[PATCH] fat: cleanup and optimization of checksum\n\nSigned-off-by: OGAWA Hirofumi \u003chirofumi@mail.parknet.co.jp\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "4e57b6817880946a3a78d5d8cad1ace363f7e449",
      "tree": "b6b5f3f9e8e52cc55d98239a4992e72e983c8fa4",
      "parents": [
        "b0423a0d9cc836b2c3d796623cd19236bfedfe63"
      ],
      "author": {
        "name": "Tim Schmielau",
        "email": "tim@physik3.uni-rostock.de",
        "time": "Sun Oct 30 15:03:48 2005 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sun Oct 30 17:37:32 2005 -0800"
      },
      "message": "[PATCH] fix missing includes\n\nI recently picked up my older work to remove unnecessary #includes of\nsched.h, starting from a patch by Dave Jones to not include sched.h\nfrom module.h. This reduces the number of indirect includes of sched.h\nby ~300. Another ~400 pointless direct includes can be removed after\nthis disentangling (patch to follow later).\nHowever, quite a few indirect includes need to be fixed up for this.\n\nIn order to feed the patches through -mm with as little disturbance as\npossible, I\u0027ve split out the fixes I accumulated up to now (complete for\ni386 and x86_64, more archs to follow later) and post them before the real\npatch.  This way this large part of the patch is kept simple with only\nadding #includes, and all hunks are independent of each other.  So if any\nhunk rejects or gets in the way of other patches, just drop it.  My scripts\nwill pick it up again in the next round.\n\nSigned-off-by: Tim Schmielau \u003ctim@physik3.uni-rostock.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "621d31219d9a788bda924a0613048053f3f5f211",
      "tree": "9fb9846fdd999ba04c436aa84c7da0d8233ac545",
      "parents": [
        "b67a1b9e4bf878aa5d4b6b44cb5a251a2f425f0d"
      ],
      "author": {
        "name": "Oleg Nesterov",
        "email": "oleg@tv-sign.ru",
        "time": "Sun Oct 30 15:03:45 2005 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sun Oct 30 17:37:31 2005 -0800"
      },
      "message": "[PATCH] cleanup the usage of SEND_SIG_xxx constants\n\nThis patch simplifies some checks for magic siginfo values.  It should not\nchange the behaviour in any way.\n\nSigned-off-by: Oleg Nesterov \u003coleg@tv-sign.ru\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "4098f9918e068e51fed1727f6ba80efcec372378",
      "tree": "0495f14e29ad93c165988be49c70ec658fffd086",
      "parents": [
        "70a6a0cb92f24fd6bbe2e75299168909f735676a"
      ],
      "author": {
        "name": "Paul Jackson",
        "email": "pj@sgi.com",
        "time": "Sun Oct 30 15:03:21 2005 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sun Oct 30 17:37:28 2005 -0800"
      },
      "message": "[PATCH] sched: hardcode non-smp set_cpus_allowed\n\nSimplify the UP (1 CPU) implementatin of set_cpus_allowed.\n\nThe one CPU is hardcoded to be cpu 0 - so just test for that bit, and avoid\nhaving to pick up the cpu_online_map.\n\nAlso, unexport cpu_online_map: it was only needed for set_cpus_allowed().\n\nSigned-off-by: Paul Jackson \u003cpj@sgi.com\u003e\nAcked-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "727a53bd535fe3bde644ac346db27456ad964083",
      "tree": "5dddcea38f3dd417311b1bcbf5692ad2aebe8c7e",
      "parents": [
        "d269cdd0e22ef22f7f597ea917b1e8bdc6999fcb"
      ],
      "author": {
        "name": "Arthur Othieno",
        "email": "a.othieno@bluewin.ch",
        "time": "Sun Oct 30 15:03:14 2005 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sun Oct 30 17:37:27 2005 -0800"
      },
      "message": "[PATCH] semaphore: Remove __MUTEX_INITIALIZER()\n\n__MUTEX_INITIALIZER() has no users, and equates to the more commonly used\nDECLARE_MUTEX(), thus making it pretty much redundant.  Remove it for good.\n\nSigned-off-by: Arthur Othieno \u003ca.othieno@bluewin.ch\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "a241ec65aeac3d69a08a7b153cccbdb7ea35063f",
      "tree": "e96585e8b1e699f31bad1fa61f34d2ec7c3a187c",
      "parents": [
        "b3099b48da23686d8378133b0264ee00385ee5fa"
      ],
      "author": {
        "name": "Paul E. McKenney",
        "email": "paulmck@us.ibm.com",
        "time": "Sun Oct 30 15:03:12 2005 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sun Oct 30 17:37:27 2005 -0800"
      },
      "message": "[PATCH] RCU torture-testing kernel module\n\nThis patch is a rewrite of the one submitted on October 1st, using modules\n(http://marc.theaimsgroup.com/?l\u003dlinux-kernel\u0026m\u003d112819093522998\u0026w\u003d2).\n\nThis rewrite adds a tristate CONFIG_RCU_TORTURE_TEST, which enables an\nintense torture test of the RCU infratructure.  This is needed due to the\ncontinued changes to the RCU infrastructure to accommodate dynamic ticks,\nCPU hotplug, realtime, and so on.  Most of the code is in a separate file\nthat is compiled only if the CONFIG variable is set.  Documentation on how\nto run the test and interpret the output is also included.\n\nThis code has been tested on i386 and ppc64, and an earlier version of the\ncode has received extensive testing on a number of architectures as part of\nthe PREEMPT_RT patchset.\n\nSigned-off-by: \"Paul E. McKenney\" \u003cpaulmck@us.ibm.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "c0398ee6c2fe3c1743ecc74a6378b67ba0880a4f",
      "tree": "7cf685c6bf404b7c1a063ecf47af1273f60d72c7",
      "parents": [
        "ed8b39d0aaea90df528ebe3756cbef8f735a93e6"
      ],
      "author": {
        "name": "Nikita Danilov",
        "email": "nikita@clusterfs.com",
        "time": "Sun Oct 30 15:03:10 2005 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sun Oct 30 17:37:26 2005 -0800"
      },
      "message": "[PATCH] include/linux/kernel.h:BUILD_BUG_ON(): fix a comment\n\nFix comment describing BUILD_BUG_ON: BUG_ON is not an assertion\n(unfortunately).\n\nSigned-off-by: Nikita Danilov \u003cnikita@clusterfs.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "52303e8b5f8aa234865d40d76ea16b0ff4b27022",
      "tree": "f109cfbc5cad79c691eca76ebcb8e4d078381368",
      "parents": [
        "c4dd0e4c6336bd17fea38bcad636eafa2941cf9f"
      ],
      "author": {
        "name": "Pavel Roskin",
        "email": "proski@gnu.org",
        "time": "Sun Oct 30 15:03:03 2005 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sun Oct 30 17:37:26 2005 -0800"
      },
      "message": "[PATCH] modules: fix sparse warning for every MODULE_PARM\n\nsparse complains about every MODULE_PARM used in a module: warning: symbol\n\u0027__parm_foo\u0027 was not declared.  Should it be static?\n\nThe fix is to split declaration and initialization.  While MODULE_PARM is\nobsolete, it\u0027s not something sparse should report.\n\nSigned-off-by: Pavel Roskin \u003cproski@gnu.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "6ea05db06f32adac65b4c4e95ef998839149de12",
      "tree": "61ed5416cdf3802dbd7ce3391f0345db75c7c301",
      "parents": [
        "1779381dea3bada407396742c56bee31ffa8544e"
      ],
      "author": {
        "name": "Miklos Szeredi",
        "email": "miklos@szeredi.hu",
        "time": "Sun Oct 30 15:02:52 2005 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sun Oct 30 17:37:24 2005 -0800"
      },
      "message": "[PATCH] fuse: remove unused define\n\nSetting ctime is implicit in all setattr cases, so the FATTR_CTIME\ndefinition is unnecessary.\n\nIt is used by neither the kernel nor by userspace.\n\nSigned-off-by: Miklos Szeredi \u003cmiklos@szeredi.hu\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "29db9190634067c5a328ee5fcc2890251b836b4b",
      "tree": "07ec242789230824f1fa8bcbbe681fd5bf166fa8",
      "parents": [
        "2aa349f6e37ce030060c994d3aebbff4ab703565"
      ],
      "author": {
        "name": "David Howells",
        "email": "dhowells@redhat.com",
        "time": "Sun Oct 30 15:02:44 2005 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sun Oct 30 17:37:23 2005 -0800"
      },
      "message": "[PATCH] Keys: Add LSM hooks for key management [try #3]\n\nThe attached patch adds LSM hooks for key management facilities. The notable\nchanges are:\n\n (1) The key struct now supports a security pointer for the use of security\n     modules. This will permit key labelling and restrictions on which\n     programs may access a key.\n\n (2) Security modules get a chance to note (or abort) the allocation of a key.\n\n (3) The key permission checking can now be enhanced by the security modules;\n     the permissions check consults LSM if all other checks bear out.\n\n (4) The key permissions checking functions now return an error code rather\n     than a boolean value.\n\n (5) An extra permission has been added to govern the modification of\n     attributes (UID, GID, permissions).\n\nNote that there isn\u0027t an LSM hook specifically for each keyctl() operation,\nbut rather the permissions hook allows control of individual operations based\non the permission request bits.\n\nKey management access control through LSM is enabled by automatically if both\nCONFIG_KEYS and CONFIG_SECURITY are enabled.\n\nThis should be applied on top of the patch ensubjected:\n\n\t[PATCH] Keys: Possessor permissions should be additive\n\nSigned-Off-By: David Howells \u003cdhowells@redhat.com\u003e\nSigned-off-by: Chris Wright \u003cchrisw@osdl.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "2aa349f6e37ce030060c994d3aebbff4ab703565",
      "tree": "7a0937469f0376931b82d9c3392727dba13c9d45",
      "parents": [
        "1426d7a81dea8e9d85f9d69de85ab04ba37018ab"
      ],
      "author": {
        "name": "David Howells",
        "email": "dhowells@redhat.com",
        "time": "Sun Oct 30 15:02:42 2005 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sun Oct 30 17:37:22 2005 -0800"
      },
      "message": "[PATCH] Keys: Export user-defined keyring operations\n\nExport user-defined key operations so that those who wish to define their\nown key type based on the user-defined key operations may do so (as has\nbeen requested).\n\nThe header file created has been placed into include/keys/user-type.h, thus\ncreating a directory where other key types may also be placed.  Any\nobjections to doing this?\n\nSigned-Off-By: David Howells \u003cdhowells@redhat.com\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": "1426d7a81dea8e9d85f9d69de85ab04ba37018ab",
      "tree": "f2a7bbe0e60437cf73199b6003da677ee8ff0424",
      "parents": [
        "c7e9dd4dd0b8dd75c410011b3c8f9980112fd0f8"
      ],
      "author": {
        "name": "Tejun Heo",
        "email": "htejun@gmail.com",
        "time": "Sun Oct 30 15:02:42 2005 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sun Oct 30 17:37:22 2005 -0800"
      },
      "message": "[PATCH] vm: remove unused/broken page_pte[_prot] macros\n\nThis patch removes page_pte_prot and page_pte macros from all\narchitectures.  Some architectures define both, some only page_pte (broken)\nand others none.  These macros are not used anywhere.\n\npage_pte_prot(page, prot) is identical to mk_pte(page, prot) and\npage_pte(page) is identical to page_pte_prot(page, __pgprot(0)).\n\n* The following architectures define both page_pte_prot and page_pte\n\n  arm, arm26, ia64, sh64, sparc, sparc64\n\n* The following architectures define only page_pte (broken)\n\n  frv, i386, m32r, mips, sh, x86-64\n\n* All other architectures define neither\n\nSigned-off-by: Tejun Heo \u003chtejun@gmail.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "68860ec10bcc07ab4f89f9d940e3b77ae5ca13b3",
      "tree": "a411f9623a113d72f23da38cf2de51f66c177873",
      "parents": [
        "fb5eeeee44edb248b4837416966f19731f497f79"
      ],
      "author": {
        "name": "Paul Jackson",
        "email": "pj@sgi.com",
        "time": "Sun Oct 30 15:02:36 2005 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sun Oct 30 17:37:22 2005 -0800"
      },
      "message": "[PATCH] cpusets: automatic numa mempolicy rebinding\n\nThis patch automatically updates a tasks NUMA mempolicy when its cpuset\nmemory placement changes.  It does so within the context of the task,\nwithout any need to support low level external mempolicy manipulation.\n\nIf a system is not using cpusets, or if running on a system with just the\nroot (all-encompassing) cpuset, then this remap is a no-op.  Only when a\ntask is moved between cpusets, or a cpusets memory placement is changed\ndoes the following apply.  Otherwise, the main routine below,\nrebind_policy() is not even called.\n\nWhen mixing cpusets, scheduler affinity, and NUMA mempolicies, the\nessential role of cpusets is to place jobs (several related tasks) on a set\nof CPUs and Memory Nodes, the essential role of sched_setaffinity is to\nmanage a jobs processor placement within its allowed cpuset, and the\nessential role of NUMA mempolicy (mbind, set_mempolicy) is to manage a jobs\nmemory placement within its allowed cpuset.\n\nHowever, CPU affinity and NUMA memory placement are managed within the\nkernel using absolute system wide numbering, not cpuset relative numbering.\n\nThis is ok until a job is migrated to a different cpuset, or what\u0027s the\nsame, a jobs cpuset is moved to different CPUs and Memory Nodes.\n\nThen the CPU affinity and NUMA memory placement of the tasks in the job\nneed to be updated, to preserve their cpuset-relative position.  This can\nbe done for CPU affinity using sched_setaffinity() from user code, as one\ntask can modify anothers CPU affinity.  This cannot be done from an\nexternal task for NUMA memory placement, as that can only be modified in\nthe context of the task using it.\n\nHowever, it easy enough to remap a tasks NUMA mempolicy automatically when\na task is migrated, using the existing cpuset mechanism to trigger a\nrefresh of a tasks memory placement after its cpuset has changed.  All that\nis needed is the old and new nodemask, and notice to the task that it needs\nto rebind its mempolicy.  The tasks mems_allowed has the old mask, the\ntasks cpuset has the new mask, and the existing\ncpuset_update_current_mems_allowed() mechanism provides the notice.  The\nbitmap/cpumask/nodemask remap operators provide the cpuset relative\ncalculations.\n\nThis patch leaves open a couple of issues:\n\n 1) Updating vma and shmfs/tmpfs/hugetlbfs memory policies:\n\n    These mempolicies may reference nodes outside of those allowed to\n    the current task by its cpuset.  Tasks are migrated as part of jobs,\n    which reside on what might be several cpusets in a subtree.  When such\n    a job is migrated, all NUMA memory policy references to nodes within\n    that cpuset subtree should be translated, and references to any nodes\n    outside that subtree should be left untouched.  A future patch will\n    provide the cpuset mechanism needed to mark such subtrees.  With that\n    patch, we will be able to correctly migrate these other memory policies\n    across a job migration.\n\n 2) Updating cpuset, affinity and memory policies in user space:\n\n    This is harder.  Any placement state stored in user space using\n    system-wide numbering will be invalidated across a migration.  More\n    work will be required to provide user code with a migration-safe means\n    to manage its cpuset relative placement, while preserving the current\n    API\u0027s that pass system wide numbers, not cpuset relative numbers across\n    the kernel-user boundary.\n\nSigned-off-by: Paul Jackson \u003cpj@sgi.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "fb5eeeee44edb248b4837416966f19731f497f79",
      "tree": "f947a4dcf103f55d526bb5c71f69b657d8f22e61",
      "parents": [
        "28a42b9ea7e42e1efb02cc2dcacba0b6af234e1b"
      ],
      "author": {
        "name": "Paul Jackson",
        "email": "pj@sgi.com",
        "time": "Sun Oct 30 15:02:33 2005 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sun Oct 30 17:37:21 2005 -0800"
      },
      "message": "[PATCH] cpusets: bitmap and mask remap operators\n\nIn the forthcoming task migration support, a key calculation will be\nmapping cpu and node numbers from the old set to the new set while\npreserving cpuset-relative offset.\n\nFor example, if a task and its pages on nodes 8-11 are being migrated to\nnodes 24-27, then pages on node 9 (the 2nd node in the old set) should be\nmoved to node 25 (the 2nd node in the new set.)\n\nAs with other bitmap operations, the proper way to code this is to provide\nthe underlying calculation in lib/bitmap.c, and then to provide the usual\ncpumask and nodemask wrappers.\n\nThis patch provides that.  These operations are termed \u0027remap\u0027 operations.\nBoth remapping a single bit and a set of bits is supported.\n\nSigned-off-by: Paul Jackson \u003cpj@sgi.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "053199edf54f685e7dea765b60d4d5e9070dadec",
      "tree": "a2d12a8b7f07b59048da992e7ae9405bc4ee292b",
      "parents": [
        "5aa15b5f27fc2c404530c6c8eabdb8437deb3163"
      ],
      "author": {
        "name": "Paul Jackson",
        "email": "pj@sgi.com",
        "time": "Sun Oct 30 15:02:30 2005 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sun Oct 30 17:37:21 2005 -0800"
      },
      "message": "[PATCH] cpusets: dual semaphore locking overhaul\n\nOverhaul cpuset locking.  Replace single semaphore with two semaphores.\n\nThe suggestion to use two locks was made by Roman Zippel.\n\nBoth locks are global.  Code that wants to modify cpusets must first\nacquire the exclusive manage_sem, which allows them read-only access to\ncpusets, and holds off other would-be modifiers.  Before making actual\nchanges, the second semaphore, callback_sem must be acquired as well.  Code\nthat needs only to query cpusets must acquire callback_sem, which is also a\nglobal exclusive lock.\n\nThe earlier problems with double tripping are avoided, because it is\nallowed for holders of manage_sem to nest the second callback_sem lock, and\nonly callback_sem is needed by code called from within __alloc_pages(),\nwhere the double tripping had been possible.\n\nThis is not quite the same as a normal read/write semaphore, because\nobtaining read-only access with intent to change must hold off other such\nattempts, while allowing read-only access w/o such intention.  Changing\ncpusets involves several related checks and changes, which must be done\nwhile allowing read-only queries (to avoid the double trip), but while\nensuring nothing changes (holding off other would be modifiers.)\n\nThis overhaul of cpuset locking also makes careful use of task_lock() to\nguard access to the task-\u003ecpuset pointer, closing a couple of race\nconditions noticed while reading this code (thanks, Roman).  I\u0027ve never\nseen these races fail in any use or test.\n\nSee further the comments in the code.\n\nSigned-off-by: Paul Jackson \u003cpj@sgi.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "15d2bace5ec907530a3d0e0cf4bb1bd29f3ad7b7",
      "tree": "52434f3ad069dadb6e70461888c2a068c44a9738",
      "parents": [
        "2ca7d93bb27876e5fd4ebfcb3b00627107bdad4d"
      ],
      "author": {
        "name": "Andrew Morton",
        "email": "akpm@osdl.org",
        "time": "Sun Oct 30 15:02:24 2005 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sun Oct 30 17:37:21 2005 -0800"
      },
      "message": "[PATCH] add_timer() of a pending timer is illegal\n\nIn the recent timer rework we lost the check for an add_timer() of an\nalready-pending timer.  That check was useful for networking, so put it back.\n\nCc: \"David S. Miller\" \u003cdavem@davemloft.net\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "dfb7dac3af623a68262536437af008ed6aba4d88",
      "tree": "fdc8a61c73257dcf8866cf7b9213ce78d2422e7f",
      "parents": [
        "7024a9b884ed7657fb873e655cd124d85ae792a4"
      ],
      "author": {
        "name": "Christoph Hellwig",
        "email": "hch@lst.de",
        "time": "Sun Oct 30 15:02:22 2005 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sun Oct 30 17:37:20 2005 -0800"
      },
      "message": "[PATCH] unify sys_ptrace prototype\n\nMake sure we always return, as all syscalls should.  Also move the common\nprototype to \u003clinux/syscalls.h\u003e\n\nSigned-off-by: Christoph Hellwig \u003chch@lst.de\u003e\nSigned-off-by: Miklos Szeredi \u003cmiklos@szeredi.hu\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "7024a9b884ed7657fb873e655cd124d85ae792a4",
      "tree": "fc5875027e18de4217019caf3fc112d5e38b72c5",
      "parents": [
        "4eb9af2a8a431a832830f986fead7332dab27229"
      ],
      "author": {
        "name": "Christoph Hellwig",
        "email": "hch@lst.de",
        "time": "Sun Oct 30 15:02:21 2005 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sun Oct 30 17:37:20 2005 -0800"
      },
      "message": "[PATCH] adjust parisc sys_ptrace prototype\n\nMake the pid argument a long as on every other arcihtecture.  Despite pid_t\nbeeing a 32bit type even on 64bit parisc this is not an ABI change due to\nthe parisc calling conventions.  And even if it did it wouldn\u0027t matter too\nmuch because 64bit userspace on parisc is in an embrionic stage.\n\nAcked-by: Matthew Wilcox \u003cmatthew@wil.cx\u003e\nSigned-off-by: Christoph Hellwig \u003chch@lst.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "19a4fcb531659f2f7d18b5d04cee039176e9540d",
      "tree": "30e0636d6163a5c0c3a4ad41c2d5f49cd858b457",
      "parents": [
        "932aeafbe8521a9a9d790152d66020e0fef2029b"
      ],
      "author": {
        "name": "Oleg Nesterov",
        "email": "oleg@tv-sign.ru",
        "time": "Sun Oct 30 15:02:17 2005 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sun Oct 30 17:37:19 2005 -0800"
      },
      "message": "[PATCH] kill sigqueue-\u003elock\n\nThis lock is used in sigqueue_free(), but it is always equal to\ncurrent-\u003esighand-\u003esiglock, so we don\u0027t need to keep it in the struct\nsigqueue.\n\nSigned-off-by: Oleg Nesterov \u003coleg@tv-sign.ru\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "2f51201662b28dbf8c15fb7eb972bc51c6cc3fa5",
      "tree": "96826df796058560bc5dd1f7d8d476c5a741d7bc",
      "parents": [
        "503af334ecf23b9d65d2ff0cc759f3a0bf338290"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "dada1@cosmosbay.com",
        "time": "Sun Oct 30 15:02:16 2005 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sun Oct 30 17:37:19 2005 -0800"
      },
      "message": "[PATCH] reduce sizeof(struct file)\n\nNow that RCU applied on \u0027struct file\u0027 seems stable, we can place f_rcuhead\nin a memory location that is not anymore used at call_rcu(\u0026f-\u003ef_rcuhead,\nfile_free_rcu) time, to reduce the size of this critical kernel object.\n\nThe trick I used is to move f_rcuhead and f_list in an union called f_u\n\nThe callers are changed so that f_rcuhead becomes f_u.fu_rcuhead and f_list\nbecomes f_u.f_list\n\nSigned-off-by: 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": "dfc4f94d2ff95fc92127d3e512c1df7cab274fb8",
      "tree": "c9ed4d74147a3674816f59cf9fbeb69e2cb6afe4",
      "parents": [
        "89ada67917f516212452443a56b9fd3b65b74dc7"
      ],
      "author": {
        "name": "Andrew Morton",
        "email": "akpm@osdl.org",
        "time": "Sun Oct 30 15:02:03 2005 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sun Oct 30 17:37:18 2005 -0800"
      },
      "message": "[PATCH] remove timer debug field\n\nRemove timer_list.magic and associated debugging code.\n\nI originally added this when a spinlock was added to timer_list - this meant\nthat an all-zeroes timer became illegal and init_timer() was required.\n\nThat spinlock isn\u0027t even there any more, although timer.base must now be\ninitialised.\n\nI\u0027ll keep this debugging code in -mm.\n\nSigned-off-by: Alexey Dobriyan \u003cadobriyan@gmail.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "d61780c0d384939ef31c46b47442854d5def4623",
      "tree": "e655b4ea947c8d86cabbc3f58f406c18ae136b5f",
      "parents": [
        "34ad92c2388710cf24d27c896b8e6605c19a795c"
      ],
      "author": {
        "name": "Jeff Garzik",
        "email": "jgarzik@pobox.com",
        "time": "Sun Oct 30 15:01:51 2005 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sun Oct 30 17:37:18 2005 -0800"
      },
      "message": "[PATCH] remove some more check_region stuff\n\nRemoved some more references to check_region().\n\nI checked these changes into the \u0027checkreg\u0027 branch of\nrsync://rsync.kernel.org/pub/scm/linux/kernel/git/jgarzik/misc-2.6.git\n\nThe only valid references remaining are in:\ndrivers/scsi/advansys.c\ndrivers/scsi/BusLogic.c\ndrivers/cdrom/sbpcd.c\nsound/oss/pss.c\n\n  Remove last vestiges of ide_check_region()\n  drivers/char/specialix: trim trailing whitespace\n  drivers/char/specialix: eliminate use of check_region()\n  Remove outdated and unused references to check_region()\n  [sound oss] remove check_region() usage from cs4232, wavfront\n  [netdrvr eepro] trim trailing whitespace\n  [netdrvr eepro] remove check_region() usage\n\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "1bb34a412750291e4e5e9f1d0fe7ae1b7e976098",
      "tree": "00d481a2ff4302f444fbf7c31e5e661f79dc85a9",
      "parents": [
        "9c0cbd54ce0397017a823484f9a8054ab369b8a2"
      ],
      "author": {
        "name": "john stultz",
        "email": "johnstul@us.ibm.com",
        "time": "Sun Oct 30 15:01:42 2005 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sun Oct 30 17:37:18 2005 -0800"
      },
      "message": "[PATCH] NTP shift_right cleanup\n\nCreate a macro shift_right() that avoids the numerous ugly conditionals in the\nNTP code that look like:\n\n        if(a \u003c 0)\n                b \u003d -(-a \u003e\u003e shift);\n        else\n                b \u003d a \u003e\u003e shift;\n\nReplacing it with:\n\n        b \u003d shift_right(a, shift);\n\nThis should have zero effect on the logic, however it should probably have\na bit of testing just to be sure.\n\nAlso replace open-coded min/max with the macros.\n\nSigned-off-by : John Stultz \u003cjohnstul@us.ibm.com\u003e\n\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "61e1a9ea4b425eb8c3b4965c35fe953bd881728f",
      "tree": "2dcf017eedd4a72698593c878aff3ae31e3a6b09",
      "parents": [
        "83521d3eb8dd2dfb04dd78b4733e9766f61bb47e"
      ],
      "author": {
        "name": "Alan Stern",
        "email": "stern@rowland.harvard.edu",
        "time": "Sun Oct 30 15:01:40 2005 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sun Oct 30 17:37:17 2005 -0800"
      },
      "message": "[PATCH] Add kthread_stop_sem()\n\nEnhance the kthread API by adding kthread_stop_sem, for use in stopping\nthreads that spend their idle time waiting on a semaphore.\n\nSigned-off-by: Alan Stern \u003cstern@rowland.harvard.edu\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "a8db2db1e6a8d323d87a67c5391d48fe2b97faf5",
      "tree": "0aa5fb9f80e4a476e097337104a3e1f94f39a96e",
      "parents": [
        "9e4e23bccb127fac109e765dfb7f9372661cb415"
      ],
      "author": {
        "name": "Oleg Nesterov",
        "email": "oleg@tv-sign.ru",
        "time": "Sun Oct 30 15:01:38 2005 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sun Oct 30 17:37:17 2005 -0800"
      },
      "message": "[PATCH] introduce setup_timer() helper\n\nEvery user of init_timer() also needs to initialize -\u003efunction and -\u003edata\nfields.  This patch adds a simple setup_timer() helper for that.\n\nThe schedule_timeout() is patched as an example of usage.\n\nSigned-off-by: Oleg Nesterov \u003coleg@tv-sign.ru\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "aaa4059bc2dca7fa816624a28db1958c3a22df9b",
      "tree": "8ae1d5458e2f68f96b033f10dae216847c32d4d2",
      "parents": [
        "e812cb5226af32aec91bcbaa8365bd7f921b6ebb"
      ],
      "author": {
        "name": "Jan Kara",
        "email": "jack@suse.cz",
        "time": "Sun Oct 30 15:00:16 2005 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sun Oct 30 17:37:17 2005 -0800"
      },
      "message": "[PATCH] ext3: Fix unmapped buffers in transaction\u0027s lists\n\nFix the problem (BUG 4964) with unmapped buffers in transaction\u0027s\nt_sync_data list.  The problem is we need to call filesystem\u0027s own\ninvalidatepage() from block_write_full_page().\n\nblock_write_full_page() must call filesystem\u0027s invalidatepage().  Otherwise\nfollowing nasty race can happen:\n\n   proc 1                                        proc 2\n   ------                                        ------\n- write some new data to \u0027offset\u0027\n  \u003d\u003e bh gets to the transactions data list\n                                              - starts truncate\n                                                \u003d\u003e i_size set to new size\n- mpage_writepages()\n  - ext3_ordered_writepage() to \u0027offset\u0027\n    - block_write_full_page()\n      - page-\u003eindex \u003e end_index+1\n        - block_invalidatepage()\n          - discard_buffer()\n            - clear_buffer_mapped()\n\n- commit triggers and finds unmapped buffer - BOOM!\n\nSigned-off-by: Jan Kara \u003cjack@suse.cz\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "1e8e338325fa0f2bd5c1c800086e900cf188d2cd",
      "tree": "fd1e051c0883725d3b24ec9acb428aeddaccf07b",
      "parents": [
        "ed3cb6f039bb296457bfd2877cba6ad0287d8d54"
      ],
      "author": {
        "name": "Heiko Carstens",
        "email": "heiko.carstens@de.ibm.com",
        "time": "Sun Oct 30 15:00:11 2005 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sun Oct 30 17:37:16 2005 -0800"
      },
      "message": "[PATCH] s390: export ipl device parameters\n\nSysfs interface to export ipl device parameters.  Dependent on the ipl type\nthe interface will look like this:\n\n- ccw ipl:\n\n/sys/firmware/ipl/device\n\t\t /ipl_type\n\n- fcp ipl:\n\n/sys/firmware/ipl/binary_parameter\n\t\t /bootprog\n\t\t /br_lba\n\t\t /device\n\t\t /ipl_type\n\t\t /lun\n\t\t /scp_data\n\t\t /wwpn\n\n- otherwise (unknown that is):\n\n/sys/firmware/ipl/ipl_type\n\nAcked-by: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\nSigned-off-by: Heiko Carstens \u003cheiko.carstens@de.ibm.com\u003e\nCc: Greg KH \u003cgreg@kroah.com\u003e\nSigned-off-by: Heiko Carstens \u003cheiko.carstens@de.ibm.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "6a351cfeadd4b56a2a0031020c0cfb07cc0337fb",
      "tree": "88b96f069f035a73cc6089a141a0167e4cb6afe8",
      "parents": [
        "b365157be3250a6b5948422ba65e05e5f964e150"
      ],
      "author": {
        "name": "Paolo \u0027Blaisorblade\u0027 Giarrusso",
        "email": "blaisorblade@yahoo.it",
        "time": "Sun Oct 30 15:00:08 2005 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sun Oct 30 17:37:16 2005 -0800"
      },
      "message": "[PATCH] uml: remove old UM_FASTCALL, and make the thing work again\n\nThis was used in the old dark age of 2.4, ARCH_CFLAGS doesn\u0027t work any more\nsince some time, and UM_FASTCALL was never used in 2.6.\n\nInstead, reintroduce the thing more properly now, directly in\ninclude/asm-um/linkage.h.\n\nSigned-off-by: Paolo \u0027Blaisorblade\u0027 Giarrusso \u003cblaisorblade@yahoo.it\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "96d55b882b85b26711a06d8fb2c901df9d52a48b",
      "tree": "309b8993ad321c050411a8dd74729180488a5dcc",
      "parents": [
        "f3ac9fbf7a0b9493377ee88d9b5b2933ff3f7ade"
      ],
      "author": {
        "name": "Paolo \u0027Blaisorblade\u0027 Giarrusso",
        "email": "blaisorblade@yahoo.it",
        "time": "Sun Oct 30 15:00:07 2005 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sun Oct 30 17:37:16 2005 -0800"
      },
      "message": "[PATCH] uml: reuse i386 cpu-specific tuning\n\nMake UML share the underlying cpu-specific tuning done on i386.\n\nActually, for now many config options aren\u0027t used a lot - but that can be done\nlater.  Also, UML relies on GCC optimization for things like memcpy and such\nmore than i386, so specifying the correct -march and -mtune should be enough.\nLater, we may want to correct some other stuff.\n\nFor instance, since FPU context switching, for us, is done (at least\npartially, i.e.  between our kernelspace and userspace) by the host, we may\nallow usage of FPU operations by GCC.  This doesn\u0027t hold for kernelspace vs.\nkernelspace, but we don\u0027t support preemption.\n\nSigned-off-by: Paolo \u0027Blaisorblade\u0027 Giarrusso \u003cblaisorblade@yahoo.it\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "c978b0179b31600394d5ebdb0940b492ec05500f",
      "tree": "5126e984a9eacbcb25a02a9ef711abda33ceed88",
      "parents": [
        "baa0b84f104c8e78ddaa8816eb9deac0098429e6"
      ],
      "author": {
        "name": "Hirokazu Takata",
        "email": "takata@linux-m32r.org",
        "time": "Sun Oct 30 15:00:04 2005 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sun Oct 30 17:37:15 2005 -0800"
      },
      "message": "[PATCH] m32r: fix #if warnings\n\nFix warnings for #if directives.\n\nSigned-off-by: Hirokazu Takata \u003ctakata@linux-m32r.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "eb9289eb20df6b54214c45ac7c6bf5179a149026",
      "tree": "dac51cecdd94e0c7273c990259ddd800057311b9",
      "parents": [
        "0245b3e787dc3267a915e1f56419e7e9c197e148"
      ],
      "author": {
        "name": "Shaohua Li",
        "email": "shaohua.li@intel.com",
        "time": "Sun Oct 30 15:00:01 2005 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sun Oct 30 17:37:15 2005 -0800"
      },
      "message": "[PATCH] introduce .valid callback for pm_ops\n\nAdd pm_ops.valid callback, so only the available pm states show in\n/sys/power/state.  And this also makes an earlier states error report at\nenter_state before we do actual suspend/resume.\n\nSigned-off-by: Shaohua Li\u003cshaohua.li@intel.com\u003e\nAcked-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": "2c1b4a5ca48831595979a850f40ced8e7da026f8",
      "tree": "06fe8a400df8c5166c7f47ca2c30a584473f1170",
      "parents": [
        "a0f496517f3e28d651d0cbbcf2d4fb701ed6957e"
      ],
      "author": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Sun Oct 30 14:59:58 2005 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sun Oct 30 17:37:14 2005 -0800"
      },
      "message": "[PATCH] swsusp: rework memory freeing on resume\n\nThe following patch makes swsusp use the PG_nosave and PG_nosave_free flags to\nmark pages that should be freed in case of an error during resume.\n\nThis allows us to simplify the code and to use swsusp_free() in all of the\nswsusp\u0027s resume error paths, which makes them actually work.\n\nSigned-off-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "25761b6eb7b33823bcfff6bfe2a015badcd76fb8",
      "tree": "a25841a3f4c4cf087ce75c0907c00966f19d339a",
      "parents": [
        "351619baf9878731b4272fa10dda0f84f5582241"
      ],
      "author": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Sun Oct 30 14:59:56 2005 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sun Oct 30 17:37:14 2005 -0800"
      },
      "message": "[PATCH] swsusp: move snapshot functionality to separate file\n\nThe following patch moves the functionality of swsusp related to creating and\nhandling the snapshot of memory to a separate file, snapshot.c\n\nThis should enable us to untangle the code in the future and eventually to\nimplement some parts of swsusp.c in the user space.\n\nThe patch does not change the code.\n\nSigned-off-by: Rafael J. Wysocki \u003crjw@sisk.pl\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": "ad74557a49d1dea428fb0ad60e75a5aa37610e1d",
      "tree": "4240115b224d3b3a323da8aa9325fc3bf4b73b50",
      "parents": [
        "5d35704028d09a183448daceab5dcb94f21a3645"
      ],
      "author": {
        "name": "Ashok Raj",
        "email": "ashok.raj@intel.com",
        "time": "Sun Oct 30 14:59:49 2005 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sun Oct 30 17:37:14 2005 -0800"
      },
      "message": "[PATCH] introduce get_cpu_sysdev() to retrieve a sysfs entry for a cpu.\n\nSome modules creating sysfs entries under /sys/devices/system/cpu/cpuX/\nneed to know the parent sysfs entry to make devices under them.  This will\njust return the sysfs entry for a given cpu.\n\nsysfs entries showing under each cpu sysfs can be easily created if such\nentries can be created by registering a sysfs driver for cpuclass.  The\nissue is when the entry is created the CPU may not be online, hence we\nwould need to defer the creation until the online notification comes.\n\nCurrent users: cache entries for Intel CPU\u0027s and cpufreq subsystem.\n\nSigned-off-by: Ashok Raj \u003cashok.raj@intel.com\u003e\nSigned-off-by: Venkatesh Pallipadi \u003cvenkatesh.pallipadi@intel.com\u003e\nCc: Dave Jones \u003cdavej@codemonkey.org.uk\u003e\nCc: Zwane Mwaikambo \u003czwane@holomorphy.com\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": "bda98685b855f71f7e2fc5378aa3cdfb24a9db65",
      "tree": "c1660300d19e1fba7bda619bfe2d3802c1aee12f",
      "parents": [
        "c53117815771e1e84e6ba80a42fa1f8e330adb4d"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Sun Oct 30 14:59:44 2005 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sun Oct 30 17:37:13 2005 -0800"
      },
      "message": "[PATCH] x86: inline spin_unlock if !CONFIG_DEBUG_SPINLOCK and !CONFIG_PREEMPT\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Miklos Szeredi \u003cmiklos@szeredi.hu\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "c53117815771e1e84e6ba80a42fa1f8e330adb4d",
      "tree": "e9227965e332a19575c066096c532cd2cba4c856",
      "parents": [
        "daedb82d6b54e58a66ad1dce3509e699a5bd1b18"
      ],
      "author": {
        "name": "Brian Gerst",
        "email": "bgerst@didntduck.org",
        "time": "Sun Oct 30 14:59:44 2005 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sun Oct 30 17:37:13 2005 -0800"
      },
      "message": "[PATCH] Clean up mtrr compat ioctl code\n\nHandle 32-bit mtrr ioctls in the mtrr driver instead of the ia32\ncompatability layer.\n\nSigned-off-by: Brian Gerst \u003cbgerst@didntduck.org\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": "f2b36db692b7ff6972320ad9839ae656a3b0ee3e",
      "tree": "110387d2557a156d6b9453ea0c45d392b47796c2",
      "parents": [
        "29b70081f7cb094513d5189e82d3478b50777a28"
      ],
      "author": {
        "name": "Eric W. Biederman",
        "email": "ebiederm@xmission.com",
        "time": "Sun Oct 30 14:59:41 2005 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sun Oct 30 17:37:13 2005 -0800"
      },
      "message": "[PATCH] i386: move apic init in init_IRQs\n\nAll kinds of ugliness exists because we don\u0027t initialize\nthe apics during init_IRQs.\n- We calibrate jiffies in non apic mode even when we are using apics.\n- We have to have special code to initialize the apics when non-smp.\n- The legacy i8259 must exist and be setup correctly, even\n  when we won\u0027t use it past initialization.\n- The kexec on panic code must restore the state of the io_apics.\n- init/main.c needs a special case for !smp smp_init on x86\n\nIn addition to pure code movement I needed a couple\nof non-obvious changes:\n- Move setup_boot_APIC_clock into APIC_late_time_init for\n  simplicity.\n- Use cpu_khz to generate a better approximation of loops_per_jiffies\n  so I can verify the timer interrupt is working.\n- Call setup_apic_nmi_watchdog again after cpu_khz is initialized on\n  the boot cpu.\n\nSigned-off-by: Eric W. Biederman \u003cebiederm@xmission.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "9338316c9323682d32270d83b106472a50ab6da4",
      "tree": "372f32101f2ed04ca03335638998905930d23e55",
      "parents": [
        "30037f66ce63b6b7ca1fbfb06605b831f4a60df6"
      ],
      "author": {
        "name": "Natalie.Protasevich@unisys.com",
        "email": "Natalie.Protasevich@unisys.com",
        "time": "Sun Oct 30 14:59:38 2005 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sun Oct 30 17:37:12 2005 -0800"
      },
      "message": "[PATCH] ES7000 platform update\n\nThis is platform code update for ES7000: disables IRQ overrides for the\nrecent ES7000 (Rascal/Zorro), cleans up the compile warning.  The patch\nonly affects the ES7000 subarch.\n\nSigned-off-by: \u003cNatalie.Protasevich@unisys.com\u003e\nAcked-by: Zwane Mwaikambo \u003czwane@arm.linux.org.uk\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "251e6912df43df54570ed68aade703b329c6cd5b",
      "tree": "28695a0c9a468281613a6b8ef8c79596e2764001",
      "parents": [
        "72e12b76fe48d99d1deb417f177b10a9d99b2e74"
      ],
      "author": {
        "name": "Zachary Amsden",
        "email": "zach@vmware.com",
        "time": "Sun Oct 30 14:59:34 2005 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sun Oct 30 17:37:12 2005 -0800"
      },
      "message": "[PATCH] x86: add an accessor function for getting the per-CPU gdt\n\nAdd an accessor function for getting the per-CPU gdt.  Callee must already\nhave the CPU.\n\nSigned-off-by: Zachary Amsden \u003czach@vmware.com\u003e\nAcked-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "ca140fdadbe4c031a20a970f46163908d09a116b",
      "tree": "5dff340fd0bb88751604d7d7ffdcb0fe55144005",
      "parents": [
        "d16aafff2570abb557a5cb18c98027aabd602e22"
      ],
      "author": {
        "name": "Paolo \u0027Blaisorblade\u0027 Giarrusso",
        "email": "blaisorblade@yahoo.it",
        "time": "Sun Oct 30 14:59:31 2005 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sun Oct 30 17:37:12 2005 -0800"
      },
      "message": "[PATCH] i386: little pgtable.h consolidation vs 2/3level\n\nJoin together some common functions (pmd_page{,_kernel}) over 2level and\n3level pages.\n\nSigned-off-by: Paolo \u0027Blaisorblade\u0027 Giarrusso \u003cblaisorblade@yahoo.it\u003e\nAcked-by: Hugh Dickins \u003chugh@veritas.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "8896fab35e62aa748a5ce62ac773508e51f10be1",
      "tree": "bb8f2dce7b5d0aa6ffe68aa6b97920d2ce32e164",
      "parents": [
        "dacb16b1a034fa7a0b868ee30758119fbfd90bc1"
      ],
      "author": {
        "name": "Jan Beulich",
        "email": "JBeulich@novell.com",
        "time": "Sun Oct 30 14:59:27 2005 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sun Oct 30 17:37:11 2005 -0800"
      },
      "message": "[PATCH] x86: cmpxchg improvements\n\nThis adjusts i386\u0027s cmpxchg patterns so that\n\n- for word and long cmpxchg-es the compiler can utilize all possible\n  registers\n\n- cmpxchg8b gets disabled when the minimum specified hardware architectur\n  doesn\u0027t support it (like was already happening for the byte, word, and\n  long ones).\n\nSigned-off-by: Jan Beulich \u003cjbeulich@novell.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "d381d8a9a08cac9824096213069159be17fd2e2f",
      "tree": "0c19722b8f67c29b7c08c6ab8776a9c146395d03",
      "parents": [
        "89d155ef62e5e0c10e4b37aaa5056f0beafe10e6"
      ],
      "author": {
        "name": "James Morris",
        "email": "jmorris@namei.org",
        "time": "Sun Oct 30 14:59:22 2005 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sun Oct 30 17:37:11 2005 -0800"
      },
      "message": "[PATCH] SELinux: canonicalize getxattr()\n\nThis patch allows SELinux to canonicalize the value returned from\ngetxattr() via the security_inode_getsecurity() hook, which is called after\nthe fs level getxattr() function.\n\nThe purpose of this is to allow the in-core security context for an inode\nto override the on-disk value.  This could happen in cases such as\nupgrading a system to a different labeling form (e.g.  standard SELinux to\nMLS) without needing to do a full relabel of the filesystem.\n\nIn such cases, we want getxattr() to return the canonical security context\nthat the kernel is using rather than what is stored on disk.\n\nThe implementation hooks into the inode_getsecurity(), adding another\nparameter to indicate the result of the preceding fs-level getxattr() call,\nso that SELinux knows whether to compare a value obtained from disk with\nthe kernel value.\n\nWe also now allow getxattr() to work for mountpoint labeled filesystems\n(i.e.  mount with option context\u003dfoo_t), as we are able to return the\nkernel value to the user.\n\nSigned-off-by: James Morris \u003cjmorris@namei.org\u003e\nSigned-off-by: Stephen Smalley \u003csds@tycho.nsa.gov\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "0d078f6f96809c95c69b99d6605a502b0ac63d3d",
      "tree": "1b4691abab5f96f2aa8a5217a2701f181b41940d",
      "parents": [
        "4276d32260662d5401a15a0a46e506fb5c8ab563"
      ],
      "author": {
        "name": "Brian Gerst",
        "email": "bgerst@didntduck.org",
        "time": "Sun Oct 30 14:59:20 2005 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sun Oct 30 17:37:10 2005 -0800"
      },
      "message": "[PATCH] CONFIG_IA32\n\nAdd CONFIG_X86_32 for i386.  This allows selecting options that only apply\nto 32-bit systems.\n\n(X86 \u0026\u0026 !X86_64) becomes X86_32\n(X86 ||  X86_64) becomes X86\n\nSigned-off-by: Brian Gerst \u003cbgerst@didntduck.org\u003e\nCc: Sam Ravnborg \u003csam@ravnborg.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "46595ffbfc8ba79f27cdf8a029ee068b3b34c69f",
      "tree": "274d110768eb1a8f899c3271df0d41bb852ddd0a",
      "parents": [
        "77bb86a1b9f8b872d8efc33c4f4359f809220252"
      ],
      "author": {
        "name": "John Bowler",
        "email": "jbowler@acm.org",
        "time": "Sun Oct 30 23:40:26 2005 +0000"
      },
      "committer": {
        "name": "Russell King",
        "email": "rmk+kernel@arm.linux.org.uk",
        "time": "Sun Oct 30 23:40:26 2005 +0000"
      },
      "message": "[ARM] arch-ixp4xx/io.h: make const args const to remove compiler warning\n\nCompiler warning fix; the inline callers of these APIs were changed\nto have const vaddr parameters.\n\nSigned-off-by: John Bowler \u003cjbowler@acm.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Russell King \u003crmk+kernel@arm.linux.org.uk\u003e\n"
    },
    {
      "commit": "7012f9084e3ef27028b4f2ab37428662766a743a",
      "tree": "7d708d13e8133a776e300791f79b47e938431683",
      "parents": [
        "f741a1aab5fd7892927208ca37eb86b9ea85784a"
      ],
      "author": {
        "name": "Deepak Saxena",
        "email": "dsaxena@plexity.net",
        "time": "Sun Oct 30 23:35:58 2005 +0000"
      },
      "committer": {
        "name": "Russell King",
        "email": "rmk+kernel@arm.linux.org.uk",
        "time": "Sun Oct 30 23:35:58 2005 +0000"
      },
      "message": "[ARM] fix bogus cast in IXP2000 I/O macro\n\nPhysical addresses are not valid pointers of any sort and should\nnot be cast to such.\n\nSigned-off-by: Deepak Saxena \u003cdsaxena@plexity.net\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Russell King \u003crmk+kernel@arm.linux.org.uk\u003e\n"
    },
    {
      "commit": "a7dac447bb9cef27d4d29cdf63e2d7809c50b1f4",
      "tree": "a8935490cdd374aba3a804ba9f79d1aed67db36d",
      "parents": [
        "81cfb8864c73230eb1c37753aba517db15cf4d8f"
      ],
      "author": {
        "name": "Jeff Garzik",
        "email": "jgarzik@pobox.com",
        "time": "Sun Oct 30 04:44:42 2005 -0500"
      },
      "committer": {
        "name": "Jeff Garzik",
        "email": "jgarzik@pobox.com",
        "time": "Sun Oct 30 04:44:42 2005 -0500"
      },
      "message": "[libata] change ata_qc_complete() to take error mask as second arg\n\nThe second argument to ata_qc_complete() was being used for two\npurposes: communicate the ATA Status register to the completion\nfunction, and indicate an error.  On legacy PCI IDE hardware, the latter\nis often implicit in the former.  On more modern hardware, the driver\noften completely emulated a Status register value, passing ATA_ERR as an\nindication that something went wrong.\n\nNow that previous code changes have eliminated the need to use drv_stat\narg to communicate the ATA Status register value, we can convert it to a\nmask of possible error classes.\n\nThis will lead to more flexible error handling in the future.\n"
    },
    {
      "commit": "81cfb8864c73230eb1c37753aba517db15cf4d8f",
      "tree": "649ff25543834cf9983ea41b93126bea97d75475",
      "parents": [
        "0169e284f6b6b263cc7c2ed25986b96cd6fda610",
        "9f75e1eff3edb2bb07349b94c28f4f2a6c66ca43"
      ],
      "author": {
        "name": "Jeff Garzik",
        "email": "jgarzik@pobox.com",
        "time": "Sun Oct 30 01:56:31 2005 -0500"
      },
      "committer": {
        "name": "Jeff Garzik",
        "email": "jgarzik@pobox.com",
        "time": "Sun Oct 30 01:56:31 2005 -0500"
      },
      "message": "Merge branch \u0027master\u0027\n"
    },
    {
      "commit": "9f75e1eff3edb2bb07349b94c28f4f2a6c66ca43",
      "tree": "27a73405d3652dc6771fab28721b70e6d44ff47a",
      "parents": [
        "b1459461f1e0abd5c28317d6bff6f2ca612a719d",
        "1b40efd772f4419fbc1a8940506424246985c333"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sat Oct 29 21:48:06 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sat Oct 29 21:48:06 2005 -0700"
      },
      "message": "Merge master.kernel.org:/pub/scm/linux/kernel/git/herbert/crypto-2.6\n"
    },
    {
      "commit": "3947be1969a9ce455ec30f60ef51efb10e4323d1",
      "tree": "0b4b3b4c268beb7aa88cb685cce48b6bb5053c47",
      "parents": [
        "bdc8cb984576ab5b550c8b24c6fa111a873503e3"
      ],
      "author": {
        "name": "Dave Hansen",
        "email": "haveblue@us.ibm.com",
        "time": "Sat Oct 29 18:16:54 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sat Oct 29 21:40:44 2005 -0700"
      },
      "message": "[PATCH] memory hotplug: sysfs and add/remove functions\n\nThis adds generic memory add/remove and supporting functions for memory\nhotplug into a new file as well as a memory hotplug kernel config option.\n\nIndividual architecture patches will follow.\n\nFor now, disable memory hotplug when swsusp is enabled.  There\u0027s a lot of\nchurn there right now.  We\u0027ll fix it up properly once it calms down.\n\nSigned-off-by: Matt Tolentino \u003cmatthew.e.tolentino@intel.com\u003e\nSigned-off-by: Dave Hansen \u003chaveblue@us.ibm.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "bdc8cb984576ab5b550c8b24c6fa111a873503e3",
      "tree": "f94548988874caa10d770e6e65bc50c925abf825",
      "parents": [
        "208d54e5513c0c02d85af0990901354c74364d5c"
      ],
      "author": {
        "name": "Dave Hansen",
        "email": "haveblue@us.ibm.com",
        "time": "Sat Oct 29 18:16:53 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sat Oct 29 21:40:44 2005 -0700"
      },
      "message": "[PATCH] memory hotplug locking: zone span seqlock\n\nSee the \"fixup bad_range()\" patch for more information, but this actually\ncreates a the lock to protect things making assumptions about a zone\u0027s size\nstaying constant at runtime.\n\nSigned-off-by: Dave Hansen \u003chaveblue@us.ibm.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "208d54e5513c0c02d85af0990901354c74364d5c",
      "tree": "83922f1d4a83f19bffcbff299044f421bd7e9c73",
      "parents": [
        "c6a57e19e464db118dc4ab9cfe9e9748c6d630a0"
      ],
      "author": {
        "name": "Dave Hansen",
        "email": "haveblue@us.ibm.com",
        "time": "Sat Oct 29 18:16:52 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sat Oct 29 21:40:44 2005 -0700"
      },
      "message": "[PATCH] memory hotplug locking: node_size_lock\n\npgdat-\u003enode_size_lock is basically only neeeded in one place in the normal\ncode: show_mem(), which is the arch-specific sysrq-m printing function.\n\nStrictly speaking, the architectures not doing memory hotplug do no need this\nlocking in show_mem().  However, they are all included for completeness.  This\nshould also make any future consolidation of all of the implementations a\nlittle more straightforward.\n\nThis lock is also held in the sparsemem code during a memory removal, as\nsections are invalidated.  This is the place there pfn_valid() is made false\nfor a memory area that\u0027s being removed.  The lock is only required when doing\npfn_valid() operations on memory which the user does not already have a\nreference on the page, such as in show_mem().\n\nSigned-off-by: Dave Hansen \u003chaveblue@us.ibm.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "4ca644d970bf2542623228a4624af356d20ca267",
      "tree": "1040782e8799d5531a5ee1d5f1143e26e8781e9d",
      "parents": [
        "ed8ece2ec8d3c2031b1a1a0737568bb0d49454e0"
      ],
      "author": {
        "name": "Dave Hansen",
        "email": "haveblue@us.ibm.com",
        "time": "Sat Oct 29 18:16:51 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sat Oct 29 21:40:44 2005 -0700"
      },
      "message": "[PATCH] memory hotplug prep: __section_nr helper\n\nA little helper that we use in the hotplug code.\n\nSigned-off-by: Dave Hansen \u003chaveblue@us.ibm.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "2774812f417db562f0d659d2c1b5755ba35d2770",
      "tree": "b277d15f7165753539fe141df44c7805e1227d4d",
      "parents": [
        "1a44e149084d772a1bcf4cdbdde8a013a8a1cfde"
      ],
      "author": {
        "name": "Dave Hansen",
        "email": "haveblue@us.ibm.com",
        "time": "Sat Oct 29 18:16:49 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sat Oct 29 21:40:44 2005 -0700"
      },
      "message": "[PATCH] memory hotplug prep: kill local_mapnr\n\nThe following series implements memory hot-add for ppc64 and i386.  There are\nx86_64 and ia64 implementations that will be submitted shortly as well,\nthrough the normal maintainers.\n\nThis patch:\n\nlocal_mapnr is unused, except for in an alpha header.  Keep the alpha one,\nkill the rest.\n\nSigned-off-by: Dave Hansen \u003chaveblue@us.ibm.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "b8072f099b7829a6ff3eba618e1d079a81f753f8",
      "tree": "80bf801b68ecf5f29a61f0f4fd5976b4daa91c6a",
      "parents": [
        "f412ac08c9861b4791af0145934c22f1458686da"
      ],
      "author": {
        "name": "Hugh Dickins",
        "email": "hugh@veritas.com",
        "time": "Sat Oct 29 18:16:41 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sat Oct 29 21:40:42 2005 -0700"
      },
      "message": "[PATCH] mm: update comments to pte lock\n\nUpdated several references to page_table_lock in common code comments.\n\nSigned-off-by: Hugh Dickins \u003chugh@veritas.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "f412ac08c9861b4791af0145934c22f1458686da",
      "tree": "5e515efa116f3968c2caa75bc691a197199313a8",
      "parents": [
        "4c21e2f2441dc5fbb957b030333f5a3f2d02dea7"
      ],
      "author": {
        "name": "Hugh Dickins",
        "email": "hugh@veritas.com",
        "time": "Sat Oct 29 18:16:41 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sat Oct 29 21:40:42 2005 -0700"
      },
      "message": "[PATCH] mm: fix rss and mmlist locking\n\nA couple of oddities were guarded by page_table_lock, no longer properly\nguarded when that is split.\n\nThe mm_counters of file_rss and anon_rss: make those an atomic_t, or an\natomic64_t if the architecture supports it, in such a case.  Definitions by\ncourtesy of Christoph Lameter: who spent considerable effort on more scalable\nways of counting, but found insufficient benefit in practice.\n\nAnd adding an mm with swap to the mmlist for swapoff: the list is well-\nguarded by its own lock, but the list_empty check now has to be repeated\ninside it.\n\nSigned-off-by: Hugh Dickins \u003chugh@veritas.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "4c21e2f2441dc5fbb957b030333f5a3f2d02dea7",
      "tree": "1f76d33bb1d76221c6424bc5fed080a4f91349a6",
      "parents": [
        "b38c6845b695141259019e2b7c0fe6c32a6e720d"
      ],
      "author": {
        "name": "Hugh Dickins",
        "email": "hugh@veritas.com",
        "time": "Sat Oct 29 18:16:40 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sat Oct 29 21:40:42 2005 -0700"
      },
      "message": "[PATCH] mm: split page table lock\n\nChristoph Lameter demonstrated very poor scalability on the SGI 512-way, with\na many-threaded application which concurrently initializes different parts of\na large anonymous area.\n\nThis patch corrects that, by using a separate spinlock per page table page, to\nguard the page table entries in that page, instead of using the mm\u0027s single\npage_table_lock.  (But even then, page_table_lock is still used to guard page\ntable allocation, and anon_vma allocation.)\n\nIn this implementation, the spinlock is tucked inside the struct page of the\npage table page: with a BUILD_BUG_ON in case it overflows - which it would in\nthe case of 32-bit PA-RISC with spinlock debugging enabled.\n\nSplitting the lock is not quite for free: another cacheline access.  Ideally,\nI suppose we would use split ptlock only for multi-threaded processes on\nmulti-cpu machines; but deciding that dynamically would have its own costs.\nSo for now enable it by config, at some number of cpus - since the Kconfig\nlanguage doesn\u0027t support inequalities, let preprocessor compare that with\nNR_CPUS.  But I don\u0027t think it\u0027s worth being user-configurable: for good\ntesting of both split and unsplit configs, split now at 4 cpus, and perhaps\nchange that to 8 later.\n\nThere is a benefit even for singly threaded processes: kswapd can be attacking\none part of the mm while another part is busy faulting.\n\nSigned-off-by: Hugh Dickins \u003chugh@veritas.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "92dc6fcc845d99e87d8168e0786796525832d130",
      "tree": "ac36da7e3dc3e0ba62d4139443beb7eb7c25288d",
      "parents": [
        "69b0475456ff7ef520e16f69d7a15c0d68b74e64"
      ],
      "author": {
        "name": "Hugh Dickins",
        "email": "hugh@veritas.com",
        "time": "Sat Oct 29 18:16:36 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sat Oct 29 21:40:42 2005 -0700"
      },
      "message": "[PATCH] mm: parisc pte atomicity\n\nThere\u0027s a worrying function translation_exists in parisc cacheflush.h,\nunaffected by split ptlock since flush_dcache_page is using it on some other\nmm, without any relevant lock.  Oh well, make it a slightly more robust by\nfactoring the pfn check within it.  And it looked liable to confuse a\ncamouflaged swap or file entry with a good pte: fix that too.\n\nSigned-off-by: Hugh Dickins \u003chugh@veritas.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "deceb6cd17e6dfafe4c4f81b1b4153bc41b2cb70",
      "tree": "2a722f50e8edef8609a49f65bfcb222e499c44cc",
      "parents": [
        "c34d1b4d165c67b966bca4aba026443d7ff161eb"
      ],
      "author": {
        "name": "Hugh Dickins",
        "email": "hugh@veritas.com",
        "time": "Sat Oct 29 18:16:33 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sat Oct 29 21:40:41 2005 -0700"
      },
      "message": "[PATCH] mm: follow_page with inner ptlock\n\nFinal step in pushing down common core\u0027s page_table_lock.  follow_page no\nlonger wants caller to hold page_table_lock, uses pte_offset_map_lock itself;\nand so no page_table_lock is taken in get_user_pages itself.\n\nBut get_user_pages (and get_futex_key) do then need follow_page to pin the\npage for them: take Daniel\u0027s suggestion of bitflags to follow_page.\n\nNeed one for WRITE, another for TOUCH (it was the accessed flag before:\nvanished along with check_user_page_readable, but surely get_numa_maps is\nwrong to mark every page it finds as accessed), another for GET.\n\nAnd another, ANON to dispose of untouched_anonymous_page: it seems silly for\nthat to descend a second time, let follow_page observe if there was no page\ntable and return ZERO_PAGE if so.  Fix minor bug in that: check VM_LOCKED -\nmake_pages_present ought to make readonly anonymous present.\n\nGive get_numa_maps a cond_resched while we\u0027re there.\n\nSigned-off-by: Hugh Dickins \u003chugh@veritas.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "c34d1b4d165c67b966bca4aba026443d7ff161eb",
      "tree": "27ffca9daba2a6b16d29bd508faf3e68bda2aad1",
      "parents": [
        "c0718806cf955d5eb51ea77bffb5b21d9bba4972"
      ],
      "author": {
        "name": "Hugh Dickins",
        "email": "hugh@veritas.com",
        "time": "Sat Oct 29 18:16:32 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sat Oct 29 21:40:41 2005 -0700"
      },
      "message": "[PATCH] mm: kill check_user_page_readable\n\ncheck_user_page_readable is a problematic variant of follow_page.  It\u0027s used\nonly by oprofile\u0027s i386 and arm backtrace code, at interrupt time, to\nestablish whether a userspace stackframe is currently readable.\n\nThis is problematic, because we want to push the page_table_lock down inside\nfollow_page, and later split it; whereas oprofile is doing a spin_trylock on\nit (in the i386 case, forgotten in the arm case), and needs that to pin\nperhaps two pages spanned by the stackframe (which might be covered by\ndifferent locks when we split).\n\nI think oprofile is going about this in the wrong way: it doesn\u0027t need to know\nthe area is readable (neither i386 nor arm uses read protection of user\npages), it doesn\u0027t need to pin the memory, it should simply\n__copy_from_user_inatomic, and see if that succeeds or not.  Sorry, but I\u0027ve\nnot got around to devising the sparse __user annotations for this.\n\nThen we can eliminate check_user_page_readable, and return to a single\nfollow_page without the __follow_page variants.\n\nSigned-off-by: Hugh Dickins \u003chugh@veritas.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "c0718806cf955d5eb51ea77bffb5b21d9bba4972",
      "tree": "bd29659bbff68604127439ec8144230a40772621",
      "parents": [
        "67b02f119df50ffad5a4e9e53ea4c896535862cd"
      ],
      "author": {
        "name": "Hugh Dickins",
        "email": "hugh@veritas.com",
        "time": "Sat Oct 29 18:16:31 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sat Oct 29 21:40:41 2005 -0700"
      },
      "message": "[PATCH] mm: rmap with inner ptlock\n\nrmap\u0027s page_check_address descend without page_table_lock.  First just\npte_offset_map in case there\u0027s no pte present worth locking for, then take\npage_table_lock for the full check, and pass ptl back to caller in the same\nstyle as pte_offset_map_lock.  __xip_unmap, page_referenced_one and\ntry_to_unmap_one use pte_unmap_unlock.  try_to_unmap_cluster also.\n\npage_check_address reformatted to avoid progressive indentation.  No use is\nmade of its one error code, return NULL when it fails.\n\nSigned-off-by: Hugh Dickins \u003chugh@veritas.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "508034a32b819a2d40aa7ac0dbc8cd2e044c2de6",
      "tree": "906a8f0095af24f403b30d649d3ec1ffb4ff2f50",
      "parents": [
        "8f4f8c164cb4af1432cc25eda82928ea4519ba72"
      ],
      "author": {
        "name": "Hugh Dickins",
        "email": "hugh@veritas.com",
        "time": "Sat Oct 29 18:16:30 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sat Oct 29 21:40:41 2005 -0700"
      },
      "message": "[PATCH] mm: unmap_vmas with inner ptlock\n\nRemove the page_table_lock from around the calls to unmap_vmas, and replace\nthe pte_offset_map in zap_pte_range by pte_offset_map_lock: all callers are\nnow safe to descend without page_table_lock.\n\nDon\u0027t attempt fancy locking for hugepages, just take page_table_lock in\nunmap_hugepage_range.  Which makes zap_hugepage_range, and the hugetlb test in\nzap_page_range, redundant: unmap_vmas calls unmap_hugepage_range anyway.  Nor\ndoes unmap_vmas have much use for its mm arg now.\n\nThe tlb_start_vma and tlb_end_vma in unmap_page_range are now called without\npage_table_lock: if they\u0027re implemented at all, they typically come down to\nflush_cache_range (usually done outside page_table_lock) and flush_tlb_range\n(which we already audited for the mprotect case).\n\nSigned-off-by: Hugh Dickins \u003chugh@veritas.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "663b97f7efd001b0c56bd5fce059c5272725b86f",
      "tree": "c80088db3514bf7f1749243e81fc3abaf7252ebd",
      "parents": [
        "705e87c0c3c38424f7f30556c85bc20e808d2f59"
      ],
      "author": {
        "name": "Hugh Dickins",
        "email": "hugh@veritas.com",
        "time": "Sat Oct 29 18:16:28 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sat Oct 29 21:40:40 2005 -0700"
      },
      "message": "[PATCH] mm: flush_tlb_range outside ptlock\n\nThere was one small but very significant change in the previous patch:\nmprotect\u0027s flush_tlb_range fell outside the page_table_lock: as it is in 2.4,\nbut that doesn\u0027t prove it safe in 2.6.\n\nOn some architectures flush_tlb_range comes to the same as flush_tlb_mm, which\nhas always been called from outside page_table_lock in dup_mmap, and is so\nproved safe.  Others required a deeper audit: I could find no reliance on\npage_table_lock in any; but in ia64 and parisc found some code which looks a\nbit as if it might want preemption disabled.  That won\u0027t do any actual harm,\nso pending a decision from the maintainers, disable preemption there.\n\nRemove comments on page_table_lock from flush_tlb_mm, flush_tlb_range and\nflush_tlb_page entries in cachetlb.txt: they were rather misleading (what\ngeneric code does is different from what usually happens), the rules are now\nchanging, and it\u0027s not yet clear where we\u0027ll end up (will the generic\ntlb_flush_mmu happen always under lock?  never under lock?  or sometimes under\nand sometimes not?).\n\nSigned-off-by: Hugh Dickins \u003chugh@veritas.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "705e87c0c3c38424f7f30556c85bc20e808d2f59",
      "tree": "7a237e6266f4801385e1226cc497b47e3a2458bd",
      "parents": [
        "8f4e2101fd7df9031a754eedb82e2060b51f8c45"
      ],
      "author": {
        "name": "Hugh Dickins",
        "email": "hugh@veritas.com",
        "time": "Sat Oct 29 18:16:27 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sat Oct 29 21:40:40 2005 -0700"
      },
      "message": "[PATCH] mm: pte_offset_map_lock loops\n\nConvert those common loops using page_table_lock on the outside and\npte_offset_map within to use just pte_offset_map_lock within instead.\n\nThese all hold mmap_sem (some exclusively, some not), so at no level can a\npage table be whipped away from beneath them.  But whereas pte_alloc loops\ntested with the \"atomic\" pmd_present, these loops are testing with pmd_none,\nwhich on i386 PAE tests both lower and upper halves.\n\nThat\u0027s now unsafe, so add a cast into pmd_none to test only the vital lower\nhalf: we lose a little sensitivity to a corrupt middle directory, but not\nenough to worry about.  It appears that i386 and UML were the only\narchitectures vulnerable in this way, and pgd and pud no problem.\n\nSigned-off-by: Hugh Dickins \u003chugh@veritas.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "c74df32c724a1652ad8399b4891bb02c9d43743a",
      "tree": "5a79d56fdcf7dc2053a277dbf6db7c3b339e9659",
      "parents": [
        "1bb3630e89cb8a7b3d3807629c20c5bad88290ff"
      ],
      "author": {
        "name": "Hugh Dickins",
        "email": "hugh@veritas.com",
        "time": "Sat Oct 29 18:16:23 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sat Oct 29 21:40:40 2005 -0700"
      },
      "message": "[PATCH] mm: ptd_alloc take ptlock\n\nSecond step in pushing down the page_table_lock.  Remove the temporary\nbridging hack from __pud_alloc, __pmd_alloc, __pte_alloc: expect callers not\nto hold page_table_lock, whether it\u0027s on init_mm or a user mm; take\npage_table_lock internally to check if a racing task already allocated.\n\nConvert their callers from common code.  But avoid coming back to change them\nagain later: instead of moving the spin_lock(\u0026mm-\u003epage_table_lock) down,\nswitch over to new macros pte_alloc_map_lock and pte_unmap_unlock, which\nencapsulate the mapping+locking and unlocking+unmapping together, and in the\nend may use alternatives to the mm page_table_lock itself.\n\nThese callers all hold mmap_sem (some exclusively, some not), so at no level\ncan a page table be whipped away from beneath them; and pte_alloc uses the\n\"atomic\" pmd_present to test whether it needs to allocate.  It appears that on\nall arches we can safely descend without page_table_lock.\n\nSigned-off-by: Hugh Dickins \u003chugh@veritas.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "1bb3630e89cb8a7b3d3807629c20c5bad88290ff",
      "tree": "3d1fd73487ca66f227701b9530f2c76fcc6f9da4",
      "parents": [
        "872fec16d9a0ed3b75b8893aa217e49cca575ee5"
      ],
      "author": {
        "name": "Hugh Dickins",
        "email": "hugh@veritas.com",
        "time": "Sat Oct 29 18:16:22 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sat Oct 29 21:40:40 2005 -0700"
      },
      "message": "[PATCH] mm: ptd_alloc inline and out\n\nIt seems odd to me that, whereas pud_alloc and pmd_alloc test inline, only\ncalling out-of-line __pud_alloc __pmd_alloc if allocation needed,\npte_alloc_map and pte_alloc_kernel are entirely out-of-line.  Though it does\nadd a little to kernel size, change them to macros testing inline, calling\n__pte_alloc or __pte_alloc_kernel to allocate out-of-line.  Mark none of them\nas fastcalls, leave that to CONFIG_REGPARM or not.\n\nIt also seems more natural for the out-of-line functions to leave the offset\ncalculation and map to the inline, which has to do it anyway for the common\ncase.  At least mremap move wants __pte_alloc without _map.\n\nMacros rather than inline functions, certainly to avoid the header file issues\nwhich arise from CONFIG_HIGHPTE needing kmap_types.h, but also in case any\narchitectures I haven\u0027t built would have other such problems.\n\nSigned-off-by: Hugh Dickins \u003chugh@veritas.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "872fec16d9a0ed3b75b8893aa217e49cca575ee5",
      "tree": "1dfc8b9f2754bdfff645188e497865c00201d535",
      "parents": [
        "46dea3d092d23a58b42499cc8a21de0fad079f4a"
      ],
      "author": {
        "name": "Hugh Dickins",
        "email": "hugh@veritas.com",
        "time": "Sat Oct 29 18:16:21 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sat Oct 29 21:40:40 2005 -0700"
      },
      "message": "[PATCH] mm: init_mm without ptlock\n\nFirst step in pushing down the page_table_lock.  init_mm.page_table_lock has\nbeen used throughout the architectures (usually for ioremap): not to serialize\nkernel address space allocation (that\u0027s usually vmlist_lock), but because\npud_alloc,pmd_alloc,pte_alloc_kernel expect caller holds it.\n\nReverse that: don\u0027t lock or unlock init_mm.page_table_lock in any of the\narchitectures; instead rely on pud_alloc,pmd_alloc,pte_alloc_kernel to take\nand drop it when allocating a new one, to check lest a racing task already\ndid.  Similarly no page_table_lock in vmalloc\u0027s map_vm_area.\n\nSome temporary ugliness in __pud_alloc and __pmd_alloc: since they also handle\nuser mms, which are converted only by a later patch, for now they have to lock\ndifferently according to whether or not it\u0027s init_mm.\n\nIf sources get muddled, there\u0027s a danger that an arch source taking\ninit_mm.page_table_lock will be mixed with common source also taking it (or\nneither take it).  So break the rules and make another change, which should\nbreak the build for such a mismatch: remove the redundant mm arg from\npte_alloc_kernel (ppc64 scrapped its distinct ioremap_mm in 2.6.13).\n\nExceptions: arm26 used pte_alloc_kernel on user mm, now pte_alloc_map; ia64\nused pte_alloc_map on init_mm, now pte_alloc_kernel; parisc had bad args to\npmd_alloc and pte_alloc_kernel in unused USE_HPPA_IOREMAP code; ppc64\nmap_io_page forgot to unlock on failure; ppc mmu_mapin_ram and ppc64 im_free\ntook page_table_lock for no good reason.\n\nSigned-off-by: Hugh Dickins \u003chugh@veritas.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "46dea3d092d23a58b42499cc8a21de0fad079f4a",
      "tree": "6ca46fb09d18e8ea51a354a1494cc742fcf2f2e7",
      "parents": [
        "f449952bc8bde7fbc73c6d20dff92b627a21f8b9"
      ],
      "author": {
        "name": "Hugh Dickins",
        "email": "hugh@veritas.com",
        "time": "Sat Oct 29 18:16:20 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sat Oct 29 21:40:39 2005 -0700"
      },
      "message": "[PATCH] mm: ia64 use expand_upwards\n\nia64 has expand_backing_store function for growing its Register Backing Store\nvma upwards.  But more complete code for this purpose is found in the\nCONFIG_STACK_GROWSUP part of mm/mmap.c.  Uglify its #ifdefs further to provide\nexpand_upwards for ia64 as well as expand_stack for parisc.\n\nThe Register Backing Store vma should be marked VM_ACCOUNT.  Implement the\nintention of growing it only a page at a time, instead of passing an address\noutside of the vma to handle_mm_fault, with unknown consequences.\n\nSigned-off-by: Hugh Dickins \u003chugh@veritas.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "f449952bc8bde7fbc73c6d20dff92b627a21f8b9",
      "tree": "2d7dc4b7381274b1111c76e436b4a81d119f656a",
      "parents": [
        "365e9c87a982c03d0af3886e29d877f581b59611"
      ],
      "author": {
        "name": "Hugh Dickins",
        "email": "hugh@veritas.com",
        "time": "Sat Oct 29 18:16:19 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sat Oct 29 21:40:39 2005 -0700"
      },
      "message": "[PATCH] mm: mm_struct hiwaters moved\n\nSlight and timid rearrangement of mm_struct: hiwater_rss and hiwater_vm were\ntacked on the end, but it seems better to keep them near _file_rss, _anon_rss\nand total_vm, in the same cacheline on those arches verified.\n\nThere are likely to be more profitable rearrangements, but less obvious (is it\ngood or bad that saved_auxv[AT_VECTOR_SIZE] isolates cpu_vm_mask and context\nfrom many others?), needing serious instrumentation.\n\nSigned-off-by: Hugh Dickins \u003chugh@veritas.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "365e9c87a982c03d0af3886e29d877f581b59611",
      "tree": "d06c1918ca9fe6677d7e4e869555e095004274f7",
      "parents": [
        "861f2fb8e796022b4928cab9c74fca6681a1c557"
      ],
      "author": {
        "name": "Hugh Dickins",
        "email": "hugh@veritas.com",
        "time": "Sat Oct 29 18:16:18 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sat Oct 29 21:40:39 2005 -0700"
      },
      "message": "[PATCH] mm: update_hiwaters just in time\n\nupdate_mem_hiwater has attracted various criticisms, in particular from those\nconcerned with mm scalability.  Originally it was called whenever rss or\ntotal_vm got raised.  Then many of those callsites were replaced by a timer\ntick call from account_system_time.  Now Frank van Maarseveen reports that to\nbe found inadequate.  How about this?  Works for Frank.\n\nReplace update_mem_hiwater, a poor combination of two unrelated ops, by macros\nupdate_hiwater_rss and update_hiwater_vm.  Don\u0027t attempt to keep\nmm-\u003ehiwater_rss up to date at timer tick, nor every time we raise rss (usually\nby 1): those are hot paths.  Do the opposite, update only when about to lower\nrss (usually by many), or just before final accounting in do_exit.  Handle\nmm-\u003ehiwater_vm in the same way, though it\u0027s much less of an issue.  Demand\nthat whoever collects these hiwater statistics do the work of taking the\nmaximum with rss or total_vm.\n\nAnd there has been no collector of these hiwater statistics in the tree.  The\nnew convention needs an example, so match Frank\u0027s usage by adding a VmPeak\nline above VmSize to /proc/\u003cpid\u003e/status, and also a VmHWM line above VmRSS\n(High-Water-Mark or High-Water-Memory).\n\nThere was a particular anomaly during mremap move, that hiwater_vm might be\ncaptured too high.  A fleeting such anomaly remains, but it\u0027s quickly\ncorrected now, whereas before it would stick.\n\nWhat locking?  None: if the app is racy then these statistics will be racy,\nit\u0027s not worth any overhead to make them exact.  But whenever it suits,\nhiwater_vm is updated under exclusive mmap_sem, and hiwater_rss under\npage_table_lock (for now) or with preemption disabled (later on): without\ngoing to any trouble, minimize the time between reading current values and\nupdating, to minimize those occasions when a racing thread bumps a count up\nand back down in between.\n\nSigned-off-by: Hugh Dickins \u003chugh@veritas.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "b5810039a54e5babf428e9a1e89fc1940fabff11",
      "tree": "835836cb527ec9bd525f93eb7e016f3dfb8c8ae2",
      "parents": [
        "f9c98d0287de42221c624482fd4f8d485c98ab22"
      ],
      "author": {
        "name": "Nick Piggin",
        "email": "nickpiggin@yahoo.com.au",
        "time": "Sat Oct 29 18:16:12 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sat Oct 29 21:40:39 2005 -0700"
      },
      "message": "[PATCH] core remove PageReserved\n\nRemove PageReserved() calls from core code by tightening VM_RESERVED\nhandling in mm/ to cover PageReserved functionality.\n\nPageReserved special casing is removed from get_page and put_page.\n\nAll setting and clearing of PageReserved is retained, and it is now flagged\nin the page_alloc checks to help ensure we don\u0027t introduce any refcount\nbased freeing of Reserved pages.\n\nMAP_PRIVATE, PROT_WRITE of VM_RESERVED regions is tentatively being\ndeprecated.  We never completely handled it correctly anyway, and is be\nreintroduced in future if required (Hugh has a proof of concept).\n\nOnce PageReserved() calls are removed from kernel/power/swsusp.c, and all\narch/ and driver code, the Set and Clear calls, and the PG_reserved bit can\nbe trivially removed.\n\nLast real user of PageReserved is swsusp, which uses PageReserved to\ndetermine whether a struct page points to valid memory or not.  This still\nneeds to be addressed (a generic page_is_ram() should work).\n\nA last caveat: the ZERO_PAGE is now refcounted and managed with rmap (and\nthus mapcounted and count towards shared rss).  These writes to the struct\npage could cause excessive cacheline bouncing on big systems.  There are a\nnumber of ways this could be addressed if it is an issue.\n\nSigned-off-by: Nick Piggin \u003cnpiggin@suse.de\u003e\n\nRefcount bug fix for filemap_xip.c\n\nSigned-off-by: Carsten Otte \u003ccotte@de.ibm.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "4294621f41a85497019fae64341aa5351a1921b7",
      "tree": "fdeb7eb44384a99d0679ffa6de5019bab0ea2166",
      "parents": [
        "404351e67a9facb475abf1492245374a28d13e90"
      ],
      "author": {
        "name": "Hugh Dickins",
        "email": "hugh@veritas.com",
        "time": "Sat Oct 29 18:16:05 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sat Oct 29 21:40:38 2005 -0700"
      },
      "message": "[PATCH] mm: rss \u003d file_rss + anon_rss\n\nI was lazy when we added anon_rss, and chose to change as few places as\npossible.  So currently each anonymous page has to be counted twice, in rss\nand in anon_rss.  Which won\u0027t be so good if those are atomic counts in some\nconfigurations.\n\nChange that around: keep file_rss and anon_rss separately, and add them\ntogether (with get_mm_rss macro) when the total is needed - reading two\natomics is much cheaper than updating two atomics.  And update anon_rss\nupfront, typically in memory.c, not tucked away in page_add_anon_rmap.\n\nSigned-off-by: Hugh Dickins \u003chugh@veritas.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "fc2acab31be8e869b2d5f6de12f557f6f054f19c",
      "tree": "60cf419f5e88c3c46d39675a14649ea1e5849f03",
      "parents": [
        "4d6ddfa9242bc3d27fb0f7248f6fdee0299c731f"
      ],
      "author": {
        "name": "Hugh Dickins",
        "email": "hugh@veritas.com",
        "time": "Sat Oct 29 18:16:03 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sat Oct 29 21:40:37 2005 -0700"
      },
      "message": "[PATCH] mm: tlb_finish_mmu forget rss\n\nzap_pte_range has been counting the pages it frees in tlb-\u003efreed, then\ntlb_finish_mmu has used that to update the mm\u0027s rss.  That got stranger when I\nadded anon_rss, yet updated it by a different route; and stranger when rss and\nanon_rss became mm_counters with special access macros.  And it would no\nlonger be viable if we\u0027re relying on page_table_lock to stabilize the\nmm_counter, but calling tlb_finish_mmu outside that lock.\n\nRemove the mmu_gather\u0027s freed field, let tlb_finish_mmu stick to its own\nbusiness, just decrement the rss mm_counter in zap_pte_range (yes, there was\nsome point to batching the update, and a subsequent patch restores that).  And\nforget the anal paranoia of first reading the counter to avoid going negative\n- if rss does go negative, just fix that bug.\n\nRemove the mmu_gather\u0027s flushes and avoided_flushes from arm and arm26: no use\nwas being made of them.  But arm26 alone was actually using the freed, in the\nway some others use need_flush: give it a need_flush.  arm26 seems to prefer\nspaces to tabs here: respect that.\n\nSigned-off-by: Hugh Dickins \u003chugh@veritas.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "4d6ddfa9242bc3d27fb0f7248f6fdee0299c731f",
      "tree": "da5b753df64e7163a35487005e50a3b90b0b0b9b",
      "parents": [
        "15a23ffa2fc91cebdac44d4aee994f59d5c28dc0"
      ],
      "author": {
        "name": "Hugh Dickins",
        "email": "hugh@veritas.com",
        "time": "Sat Oct 29 18:16:02 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sat Oct 29 21:40:37 2005 -0700"
      },
      "message": "[PATCH] mm: tlb_is_full_mm was obscure\n\ntlb_is_full_mm?  What does that mean?  The TLB is full?  No, it means that the\nmm\u0027s last user has gone and the whole mm is being torn down.  And it\u0027s an\ninline function because sparc64 uses a different (slightly better)\n\"tlb_frozen\" name for the flag others call \"fullmm\".\n\nAnd now the ptep_get_and_clear_full macro used in zap_pte_range refers\ndirectly to tlb-\u003efullmm, which would be wrong for sparc64.  Rather than\ncorrect that, I\u0027d prefer to scrap tlb_is_full_mm altogether, and change\nsparc64 to just use the same poor name as everyone else - is that okay?\n\nSigned-off-by: Hugh Dickins \u003chugh@veritas.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "15a23ffa2fc91cebdac44d4aee994f59d5c28dc0",
      "tree": "5006935b29246c1ae07a7abc6a384f6b547293ce",
      "parents": [
        "7be7a546994f1222b2312fd348da14e16b6b7b42"
      ],
      "author": {
        "name": "Hugh Dickins",
        "email": "hugh@veritas.com",
        "time": "Sat Oct 29 18:16:01 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sat Oct 29 21:40:37 2005 -0700"
      },
      "message": "[PATCH] mm: tlb_gather_mmu get_cpu_var\n\ntlb_gather_mmu dates from before kernel preemption was allowed, and uses\nsmp_processor_id or __get_cpu_var to find its per-cpu mmu_gather.  That works\nbecause it\u0027s currently only called after getting page_table_lock, which is not\ndropped until after the matching tlb_finish_mmu.  But don\u0027t rely on that, it\nwill soon change: now disable preemption internally by proper get_cpu_var in\ntlb_gather_mmu, put_cpu_var in tlb_finish_mmu.\n\nSigned-off-by: Hugh Dickins \u003chugh@veritas.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "65500d234e74fc4e8f18e1a429bc24e51e75de4a",
      "tree": "2bae8c3622b6537dbd142ba2744c7cc9430d3b69",
      "parents": [
        "7c1fd6b964860cdcf44b6b98d7dcd8cc16a0a26d"
      ],
      "author": {
        "name": "Hugh Dickins",
        "email": "hugh@veritas.com",
        "time": "Sat Oct 29 18:15:59 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sat Oct 29 21:40:37 2005 -0700"
      },
      "message": "[PATCH] mm: page fault handlers tidyup\n\nImpose a little more consistency on the page fault handlers do_wp_page,\ndo_swap_page, do_anonymous_page, do_no_page, do_file_page: why not pass their\narguments in the same order, called the same names?\n\nbreak_cow is all very well, but what it did was inlined elsewhere: easier to\ncompare if it\u0027s brought back into do_wp_page.\n\ndo_file_page\u0027s fallback to do_no_page dates from a time when we were testing\npte_file by using it wherever possible: currently it\u0027s peculiar to nonlinear\nvmas, so just check that.  BUG_ON if not?  Better not, it\u0027s probably page\ntable corruption, so just show the pte: hmm, there\u0027s a pte_ERROR macro, let\u0027s\nuse that for do_wp_page\u0027s invalid pfn too.\n\nHah!  Someone in the ppc64 world noticed pte_ERROR was unused so removed it:\nrestored (and say \"pud\" not \"pmd\" in its pud_ERROR).\n\nSigned-off-by: Hugh Dickins \u003chugh@veritas.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "a8fb5618dab7e45c8990f3155628d772a9ed45f9",
      "tree": "77977b8fb2f57c855da9e3168977521e8393776a",
      "parents": [
        "2c0b381467bc2997be9d741a152f3fc75785eedc"
      ],
      "author": {
        "name": "Hugh Dickins",
        "email": "hugh@veritas.com",
        "time": "Sat Oct 29 18:15:57 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sat Oct 29 21:40:37 2005 -0700"
      },
      "message": "[PATCH] mm: unlink_file_vma, remove_vma\n\nDivide remove_vm_struct into two parts: first anon_vma_unlink plus\nunlink_file_vma, to unlink the vma from the list and tree by which rmap or\nvmtruncate might find it; then remove_vma to close, fput and free.\n\nThe intention here is to do the anon_vma_unlink and unlink_file_vma earlier,\nin free_pgtables before freeing any page tables: so we can be sure that any\npage tables traversed by rmap and vmtruncate are stable (and other, ordinary\ncases are stabilized by holding mmap_sem).\n\nThis will be crucial to traversing pgd,pud,pmd without page_table_lock.  But\ntesting the split-out patch showed that lifting the page_table_lock is\nsymbiotically necessary to make this change - the lock ordering is wrong to\nmove those unlinks into free_pgtables while it\u0027s under ptlock.\n\nSigned-off-by: Hugh Dickins \u003chugh@veritas.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "ab50b8ed818016cfecd747d6d4bb9139986bc029",
      "tree": "33c666578c14dccce05b3f7a5538405098eebcc4",
      "parents": [
        "72866f6f277ec0ddd6df7a3b6ecdcf59a28de115"
      ],
      "author": {
        "name": "Hugh Dickins",
        "email": "hugh@veritas.com",
        "time": "Sat Oct 29 18:15:56 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sat Oct 29 21:40:37 2005 -0700"
      },
      "message": "[PATCH] mm: vm_stat_account unshackled\n\nThe original vm_stat_account has fallen into disuse, with only one user, and\nonly one user of vm_stat_unaccount.  It\u0027s easier to keep track if we convert\nthem all to __vm_stat_account, then free it from its __shackles.\n\nSigned-off-by: Hugh Dickins \u003chugh@veritas.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "dfcd3c0dc426bb75770c34b40e14f2da8845ea62",
      "tree": "bd7e9f8463a18025c4775c6cdf22abbbd4236b64",
      "parents": [
        "e46a5e28c201f703c18b47b108bfddec44f897c4"
      ],
      "author": {
        "name": "Andi Kleen",
        "email": "ak@suse.de",
        "time": "Sat Oct 29 18:15:48 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sat Oct 29 21:40:35 2005 -0700"
      },
      "message": "[PATCH] Convert mempolicies to nodemask_t\n\nThe NUMA policy code predated nodemask_t so it used open coded bitmaps.\nConvert everything to nodemask_t.  Big patch, but shouldn\u0027t have any actual\nbehaviour changes (except I removed one unnecessary check against\nnode_online_map and one unnecessary BUG_ON)\n\nSigned-off-by: \"Andi Kleen\" \u003cak@suse.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "eb92f4ef320b738e41ad43476a5d05c8a20d5cc7",
      "tree": "f9a6bb78a0561587f142b2b1208819f6cffe9835",
      "parents": [
        "63f324cf0792ed69089b79d6921ba3aaea97af50"
      ],
      "author": {
        "name": "Rik Van Riel",
        "email": "riel@redhat.com",
        "time": "Sat Oct 29 18:15:44 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sat Oct 29 21:40:35 2005 -0700"
      },
      "message": "[PATCH] add sem_is_read/write_locked()\n\nAdd sem_is_read/write_locked functions to the read/write semaphores, along the\nsame lines of the *_is_locked spinlock functions.  The swap token tuning patch\nuses sem_is_read_locked; sem_is_write_locked is added for completeness.\n\nSigned-off-by: Rik van Riel \u003criel@redhat.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "63f324cf0792ed69089b79d6921ba3aaea97af50",
      "tree": "007ec8ea5c2344ced61de396c2484a5a49cc9aac",
      "parents": [
        "4b8f573b5db02a3017afbba49026a6aef480174f"
      ],
      "author": {
        "name": "Ivan Kokshaysky",
        "email": "ink@jurassic.park.msu.ru",
        "time": "Sat Oct 29 18:15:43 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sat Oct 29 21:40:35 2005 -0700"
      },
      "message": "[PATCH] fix alpha breakage\n\nbarrier.h uses barrier() in non-SMP case.  And doesn\u0027t include compiler.h.\n\nCc: Al Viro \u003cviro@ftp.linux.org.uk\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "930fc45a49ddebe7555cc5c837d82b9c27e65ff4",
      "tree": "f0e4b32bd4e2f951c4eb1bc1fcdeefdcbb8e6195",
      "parents": [
        "be15cd72d256e5eb3261a781b8507fac83ab33f6"
      ],
      "author": {
        "name": "Christoph Lameter",
        "email": "clameter@engr.sgi.com",
        "time": "Sat Oct 29 18:15:41 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sat Oct 29 21:40:35 2005 -0700"
      },
      "message": "[PATCH] vmalloc_node\n\nThis patch adds\n\nvmalloc_node(size, node)\t-\u003e Allocate necessary memory on the specified node\n\nand\n\nget_vm_area_node(size, flags, node)\n\nand the other functions that it depends on.\n\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "0169e284f6b6b263cc7c2ed25986b96cd6fda610",
      "tree": "266623b0131e310de6e77a2c87c42b4092902fa4",
      "parents": [
        "be15cd72d256e5eb3261a781b8507fac83ab33f6"
      ],
      "author": {
        "name": "Jeff Garzik",
        "email": "jgarzik@pobox.com",
        "time": "Sat Oct 29 21:25:10 2005 -0400"
      },
      "committer": {
        "name": "Jeff Garzik",
        "email": "jgarzik@pobox.com",
        "time": "Sat Oct 29 21:25:10 2005 -0400"
      },
      "message": "[libata] remove ata_chk_err(), -\u003echeck_err() hook.\n\nWe now depend on -\u003etf_read() to provide us with the contents\nof the Error shadow register.\n"
    },
    {
      "commit": "d32311fed70d12f14e585feb4653571b1e2b0e6d",
      "tree": "e1bea01c55c1632ed6291ca96f18518ad2abe39b",
      "parents": [
        "be15cd72d256e5eb3261a781b8507fac83ab33f6"
      ],
      "author": {
        "name": "Herbert Xu",
        "email": "herbert@gondor.apana.org.au",
        "time": "Sat Sep 17 14:41:40 2005 +1000"
      },
      "committer": {
        "name": "Herbert Xu",
        "email": "herbert@gondor.apana.org.au",
        "time": "Sun Oct 30 11:14:39 2005 +1100"
      },
      "message": "[PATCH] Introduce sg_set_buf\n\nsg_init_one is a nice tool for the block layer.  However, users\nof struct scatterlist in other subsystems don\u0027t usually need the\nDMA attributes.  For them it\u0027s a waste of time and space to\ninitialise the whole struct scatterlist structure.\n\nTherefore this patch adds a new function sg_set_buf to initialise\na scatterlist without zeroing the DMA attributes.\n\nSigned-off-by: Herbert Xu \u003cherbert@gondor.apana.org.au\u003e\n"
    },
    {
      "commit": "be15cd72d256e5eb3261a781b8507fac83ab33f6",
      "tree": "1a8f95a9960e03149d27d935da25b768878feb3e",
      "parents": [
        "e9d52234e35b27ea4ea5f2ab64ca47b1a0c740ab",
        "37d07b72ef58f2d5ec7701ab75084fbeee0e503e"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sat Oct 29 14:02:16 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Sat Oct 29 14:02:16 2005 -0700"
      },
      "message": "Merge master.kernel.org:/home/rmk/linux-2.6-arm\n"
    },
    {
      "commit": "37d07b72ef58f2d5ec7701ab75084fbeee0e503e",
      "tree": "da42fbad5b8ac6c79a258a46aff5f5d338ac138f",
      "parents": [
        "f09b99799991c7c3ba441162406247f5df077322"
      ],
      "author": {
        "name": "Nicolas Pitre",
        "email": "nico@cam.org",
        "time": "Sat Oct 29 21:44:56 2005 +0100"
      },
      "committer": {
        "name": "Russell King",
        "email": "rmk+kernel@arm.linux.org.uk",
        "time": "Sat Oct 29 21:44:56 2005 +0100"
      },
      "message": "[ARM] 3061/1: cleanup the XIP link address mess\n\nPatch from Nicolas Pitre\n\nSince vmlinux.lds.S is preprocessed, we can use the defines already\npresent in asm/memory.h (allowed by patch #3060) for the XIP kernel link\naddress instead of relying on a duplicated Makefile hardcoded value, and\nalso get rid of its dependency on awk to handle it at the same time.\n\nWhile at it let\u0027s clean XIP stuff even further and make things clearer\nin head.S with a nice code reduction.\n\nSigned-off-by: Nicolas Pitre \u003cnico@cam.org\u003e\nSigned-off-by: Russell King \u003crmk+kernel@arm.linux.org.uk\u003e\n"
    }
  ],
  "next": "f09b99799991c7c3ba441162406247f5df077322"
}
