)]}'
{
  "log": [
    {
      "commit": "559b140a36613bb5b63f258b2ad833dad8cd11d9",
      "tree": "5059f8a551b1cfb11f3a72f00b5f3ee584dd0a61",
      "parents": [
        "e3f76e3386ee38e3654e81c2f3933ccca1f2d639"
      ],
      "author": {
        "name": "Michal Nazarewicz",
        "email": "mina86@mina86.com",
        "time": "Mon Aug 09 17:20:54 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Aug 09 20:45:09 2010 -0700"
      },
      "message": "lib: vsprintf: useless strlen() removed\n\nThe strict_strtoul() and strict_strtoull() functions used strlen() to\ncheck argument\u0027s length in a situation where it wasn\u0027t strictly necessary\n\nSigned-off-by: Michal Nazarewicz \u003cmina86@mina86.com\u003e\nCc: \"Yi Yang\" \u003cyi.y.yang@intel.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "e3f76e3386ee38e3654e81c2f3933ccca1f2d639",
      "tree": "180f192f01aca166b30a1f1a119e9d0e9fb3714b",
      "parents": [
        "55817d3d5c480f96589359c10ad93fa2e707a029"
      ],
      "author": {
        "name": "Baruch Siach",
        "email": "baruch@tkos.co.il",
        "time": "Mon Aug 09 17:20:53 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Aug 09 20:45:08 2010 -0700"
      },
      "message": "list debugging: warn when deleting a deleted entry\n\nUse the magic LIST_POISON* values to detect an incorrect use of list_del\non a deleted entry.  This DEBUG_LIST specific warning is easier to\nunderstand than the generic Oops message caused by LIST_POISON\ndereference.\n\nSigned-off-by: Baruch Siach \u003cbaruch@tkos.co.il\u003e\nCc: Dave Jones \u003cdavej@codemonkey.org.uk\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "55817d3d5c480f96589359c10ad93fa2e707a029",
      "tree": "c9d8eef5b186879effd52c60c2ccd6d940cccea8",
      "parents": [
        "c53ac0716c66181d1bf42204ad418fbbf08ca957"
      ],
      "author": {
        "name": "Joe Perches",
        "email": "joe@perches.com",
        "time": "Mon Aug 09 17:20:52 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Aug 09 20:45:08 2010 -0700"
      },
      "message": "MAINTAINERS: orphan BEFS\n\nThis old address bounces and Sergey doesn\u0027t answer at another email\naddress.\n\nSigned-off-by: Joe Perches \u003cjoe@perches.com\u003e\nCc: Sergey Kostyliov \u003crathamahata@gmail.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "c53ac0716c66181d1bf42204ad418fbbf08ca957",
      "tree": "f7c4e283917fcdc6439caee5e070abdbec49f896",
      "parents": [
        "a5fe24756fceb4f5832ae8604b7f41a00909a7a1"
      ],
      "author": {
        "name": "Joe Perches",
        "email": "joe@perches.com",
        "time": "Mon Aug 09 17:20:51 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Aug 09 20:45:08 2010 -0700"
      },
      "message": "MAINTAINERS: update Laurent Pinchart email\n\nLaurent is sending auto-replies with a new email address, so might as well\nupdate MAINTAINERS.\n\nSigned-off-by: Joe Perches \u003cjoe@perches.com\u003e\nAcked-by: Laurent Pinchart \u003claurent.pinchart@ideasonboard.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "a5fe24756fceb4f5832ae8604b7f41a00909a7a1",
      "tree": "8f7bbd142355bdc1420a9869bb6e38808fde9cdd",
      "parents": [
        "315987dcbf6fce3c0c729463a60a2ac5d8ff8a57"
      ],
      "author": {
        "name": "Subrata Modak",
        "email": "subrata@linux.vnet.ibm.com",
        "time": "Mon Aug 09 17:20:50 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Aug 09 20:45:08 2010 -0700"
      },
      "message": "MAINTAINERS: update information about Linux Test Project maintainence\n\nSigned-off-by: Subrata Modak \u003csubrata@linux.vnet.ibm.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "315987dcbf6fce3c0c729463a60a2ac5d8ff8a57",
      "tree": "187f2a3e9db1fb1eeaa9f6456bad3ca26cabefa6",
      "parents": [
        "8a3977cb93aeb0c0d41591e051dda01d9c155800"
      ],
      "author": {
        "name": "Joe Perches",
        "email": "joe@perches.com",
        "time": "Mon Aug 09 17:20:50 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Aug 09 20:45:08 2010 -0700"
      },
      "message": "MAINTAINERS: add patterns to WIMAX STACK\n\nSigned-off-by: Joe Perches \u003cjoe@perches.com\u003e\nAcked-by: Inaky Perez-Gonzalez \u003cinaky.perez-gonzalez@intel.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "8a3977cb93aeb0c0d41591e051dda01d9c155800",
      "tree": "a4729c5ca92e307435957885366f90b8faad71e2",
      "parents": [
        "ce308e268cb2d6eb1343c2a242084f31f330e4fa"
      ],
      "author": {
        "name": "Joe Perches",
        "email": "joe@perches.com",
        "time": "Mon Aug 09 17:20:49 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Aug 09 20:45:08 2010 -0700"
      },
      "message": "MAINTAINERS: add patterns to PS3VRAM DRIVER\n\nSigned-off-by: Joe Perches \u003cjoe@perches.com\u003e\nCc: Jim Paris \u003cjim@jtan.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "ce308e268cb2d6eb1343c2a242084f31f330e4fa",
      "tree": "638a31f16f4b5ad0bd4f4813b1f5c3354605eae3",
      "parents": [
        "a16fbd65246ae13a5f6b280937c5c0cd16757141"
      ],
      "author": {
        "name": "Joe Perches",
        "email": "joe@perches.com",
        "time": "Mon Aug 09 17:20:49 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Aug 09 20:45:08 2010 -0700"
      },
      "message": "MAINTAINERS: remove section PROMISE DC4030\n\nSigned-off-by: Joe Perches \u003cjoe@perches.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "a16fbd65246ae13a5f6b280937c5c0cd16757141",
      "tree": "930167ee408697d6ca2c3b64c5ce882d52ef3764",
      "parents": [
        "a2b1f7c8f413d52ca5d18130e6089f93d66e983a"
      ],
      "author": {
        "name": "Joe Perches",
        "email": "joe@perches.com",
        "time": "Mon Aug 09 17:20:48 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Aug 09 20:45:08 2010 -0700"
      },
      "message": "MAINTAINERS: add patterns to OMAP USB\n\nSigned-off-by: Joe Perches \u003cjoe@perches.com\u003e\nCc: Felipe Balbi \u003cfelipe.balbi@nokia.com\u003e\nCc: David Brownell \u003cdbrownell@users.sourceforge.net\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "a2b1f7c8f413d52ca5d18130e6089f93d66e983a",
      "tree": "41edd1548ce56d8ea1924aa0be00b6d02bbc64b3",
      "parents": [
        "36b3a96f052e6799c09560f97a9b14f1c1db6e60"
      ],
      "author": {
        "name": "Joe Perches",
        "email": "joe@perches.com",
        "time": "Mon Aug 09 17:20:47 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Aug 09 20:45:08 2010 -0700"
      },
      "message": "MAINTAINERS: add patterns to POWERPC EMBEDDED PPC8XX\n\nSigned-off-by: Joe Perches \u003cjoe@perches.com\u003e\nCc: Vitaly Bordug \u003cvitb@kernel.crashing.org\u003e\nCc: Marcelo Tosatti \u003cmarcelo@kvack.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "36b3a96f052e6799c09560f97a9b14f1c1db6e60",
      "tree": "d2dd9b003be29d904ccdf7abdb82c439108514de",
      "parents": [
        "51a2228a8a58c22523e21e7ab96a8a9b99ee43f0"
      ],
      "author": {
        "name": "Joe Perches",
        "email": "joe@perches.com",
        "time": "Mon Aug 09 17:20:46 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Aug 09 20:45:08 2010 -0700"
      },
      "message": "MAINTAINERS: add patterns to DELL WMI EXTRAS\n\nSigned-off-by: Joe Perches \u003cjoe@perches.com\u003e\nCc: Matthew Garrett \u003cmjg59@srcf.ucam.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "51a2228a8a58c22523e21e7ab96a8a9b99ee43f0",
      "tree": "82e857131bf2601b9b7b566a7efe6eb9470e40f5",
      "parents": [
        "850e94115c5db51353d449d95be4254164d9c5fd"
      ],
      "author": {
        "name": "Joe Perches",
        "email": "joe@perches.com",
        "time": "Mon Aug 09 17:20:45 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Aug 09 20:45:08 2010 -0700"
      },
      "message": "MAINTAINERS: add patterns to CRYPTOGRAPHIC RANDOM NUMBER GENERATOR\n\nSigned-off-by: Joe Perches \u003cjoe@perches.com\u003e\nCc: Neil Horman \u003cnhorman@tuxdriver.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "850e94115c5db51353d449d95be4254164d9c5fd",
      "tree": "e4f5c7b40c8677b690f17401061ee18e160314bd",
      "parents": [
        "a7e4fd93099022fa2166bd50ba5eed27aba32c08"
      ],
      "author": {
        "name": "Joe Perches",
        "email": "joe@perches.com",
        "time": "Mon Aug 09 17:20:45 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Aug 09 20:45:07 2010 -0700"
      },
      "message": "MAINTAINERS: update DRM DRIVERS patterns\n\nSigned-off-by: Joe Perches \u003cjoe@perches.com\u003e\nCc: David Airlie \u003cairlied@linux.ie\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "a7e4fd93099022fa2166bd50ba5eed27aba32c08",
      "tree": "3c028ea94dc12c5a90ebf06db05cca5d2f692aea",
      "parents": [
        "67752dd5d7113fdb8572981c64c700f260faa29b"
      ],
      "author": {
        "name": "Joe Perches",
        "email": "joe@perches.com",
        "time": "Mon Aug 09 17:20:44 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Aug 09 20:45:07 2010 -0700"
      },
      "message": "MAINTAINERS: add file patterns to UCLINUX FOR RENESAS H8/300\n\nSigned-off-by: Joe Perches \u003cjoe@perches.com\u003e\nCc: Yoshinori Sato \u003cysato@users.sourceforge.jp\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "67752dd5d7113fdb8572981c64c700f260faa29b",
      "tree": "be53fb7503c5430e4136fac8f3f51a0b8a956dc6",
      "parents": [
        "83823b721cd9abcab11e814d4f60456902a2dc66"
      ],
      "author": {
        "name": "Joe Perches",
        "email": "joe@perches.com",
        "time": "Mon Aug 09 17:20:44 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Aug 09 20:45:07 2010 -0700"
      },
      "message": "MAINTAINERS: remove section STRIP\n\nCommit f80a3f62383bf673c310926d55142d51f118926d (\"Staging: strip: delete\nthe driver\") removed it.\n\nSigned-off-by: Joe Perches \u003cjoe@perches.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "83823b721cd9abcab11e814d4f60456902a2dc66",
      "tree": "16532813a8c934062dd6e60c7e860c7fecf4149f",
      "parents": [
        "43b0f91d42a4dd602a72aa7a6508f484773f0922"
      ],
      "author": {
        "name": "Joe Perches",
        "email": "joe@perches.com",
        "time": "Mon Aug 09 17:20:42 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Aug 09 20:45:07 2010 -0700"
      },
      "message": "MAINTAINERS: update SPEAR CLOCK FRAMEWORK SUPPORT file patterns\n\nSigned-off-by: Joe Perches \u003cjoe@perches.com\u003e\nCc: Viresh Kumar \u003cviresh.kumar@st.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "43b0f91d42a4dd602a72aa7a6508f484773f0922",
      "tree": "19746497259361cb37890c51422cf5a6b48b5784",
      "parents": [
        "21c26f50f508dd020f551a9b162f8b6030e9200a"
      ],
      "author": {
        "name": "Joe Perches",
        "email": "joe@perches.com",
        "time": "Mon Aug 09 17:20:41 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Aug 09 20:45:07 2010 -0700"
      },
      "message": "MAINTAINERS: remove section SMX UIO Interface\n\nCommit d6e976c0d258c9547a308bd8a9a82ec93e2bc6e2 (\"UIO: Remove SMX\nCryptengine driver\") removed the file.\n\nSigned-off-by: Joe Perches \u003cjoe@perches.com\u003e\nAcked-by: Ben Nizette \u003cbn@niasdigital.com\u003e\nAcked-by: Hans J. Koch \u003chjk@linutronix.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "21c26f50f508dd020f551a9b162f8b6030e9200a",
      "tree": "f7216e4a09f798e70f7013ba854b46ad1f431dd1",
      "parents": [
        "90ca28d1eaff14c8de8665cf31db4fcca602075c"
      ],
      "author": {
        "name": "Joe Perches",
        "email": "joe@perches.com",
        "time": "Mon Aug 09 17:20:40 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Aug 09 20:45:07 2010 -0700"
      },
      "message": "MAINTAINERS: update RICOH SMARTMEDIA/XD DRIVER file patterns\n\nEntered as 822 (10 key typo?).\n\nSigned-off-by: Joe Perches \u003cjoe@perches.com\u003e\nAcked-by: Maxim Levitsky \u003cmaximlevitsky@gmail.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "90ca28d1eaff14c8de8665cf31db4fcca602075c",
      "tree": "dd8d2bfcbced81b1747622af514af5f31bb01088",
      "parents": [
        "c984e24d47f824df352234ead831fb3c8f18eca8"
      ],
      "author": {
        "name": "Joe Perches",
        "email": "joe@perches.com",
        "time": "Mon Aug 09 17:20:40 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Aug 09 20:45:07 2010 -0700"
      },
      "message": "MAINTAINERS: update PPP OVER L2TP file patterns\n\nCommit 21b4aaa14329db793832e865f15000c5c0192ac3 (\"l2tp: Relocate pppol2tp\ndriver to new net/l2tp directory\") moved the file.\n\nSigned-off-by: Joe Perches \u003cjoe@perches.com\u003e\nCc: James Chapman \u003cjchapman@katalix.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "c984e24d47f824df352234ead831fb3c8f18eca8",
      "tree": "939aeb999cd5563ce03232f422878bbcd482e3f4",
      "parents": [
        "6ab2a85545c696c552cce4fe6c8cbfee287c63ba"
      ],
      "author": {
        "name": "Joe Perches",
        "email": "joe@perches.com",
        "time": "Mon Aug 09 17:20:39 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Aug 09 20:45:07 2010 -0700"
      },
      "message": "MAINTAINERS: update NETWORKING [WIRELESS] file patterns\n\nSigned-off-by: Joe Perches \u003cjoe@perches.com\u003e\nCc: \"John W. Linville\" \u003clinville@tuxdriver.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "6ab2a85545c696c552cce4fe6c8cbfee287c63ba",
      "tree": "84268296b8644877f765c036eb2d469256407cb6",
      "parents": [
        "e0cca11ba60fc03475a357f3b213db95c47881b5"
      ],
      "author": {
        "name": "Joe Perches",
        "email": "joe@perches.com",
        "time": "Mon Aug 09 17:20:38 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Aug 09 20:45:07 2010 -0700"
      },
      "message": "MAINTAINERS: update ARM/ZIPIT Z2 SUPPORT file patterns\n\nUse correct file location.\n\nSigned-off-by: Joe Perches \u003cjoe@perches.com\u003e\nAcked-by: Marek Vasut \u003cmarek.vasut@gmail.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "e0cca11ba60fc03475a357f3b213db95c47881b5",
      "tree": "17991c10a2f0cf5ccc557e79e4e0e3d20aa99c69",
      "parents": [
        "5351684f435427a68e1e02e9b592559997cd3620"
      ],
      "author": {
        "name": "Joe Perches",
        "email": "joe@perches.com",
        "time": "Mon Aug 09 17:20:38 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Aug 09 20:45:07 2010 -0700"
      },
      "message": "MAINTAINERS: update ARM/VOIPAC PXA270 file patterns\n\nSigned-off-by: Joe Perches \u003cjoe@perches.com\u003e\nAcked-by: Marek Vasut \u003cmarek.vasut@gmail.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "5351684f435427a68e1e02e9b592559997cd3620",
      "tree": "93d52db8ee7c786e62011f06b2455e69f4f0e0a5",
      "parents": [
        "fac7de14f8b9919c8f9ec16cc0607b798182d19d"
      ],
      "author": {
        "name": "Joe Perches",
        "email": "joe@perches.com",
        "time": "Mon Aug 09 17:20:37 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Aug 09 20:45:07 2010 -0700"
      },
      "message": "MAINTAINERS: update ARM/NUVOTON W90X900 ARM ARCHITECTURE file patterns\n\nSigned-off-by: Joe Perches \u003cjoe@perches.com\u003e\nAcked-by: Wan ZongShun \u003cmcuos.com@gmail.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "fac7de14f8b9919c8f9ec16cc0607b798182d19d",
      "tree": "37e4e26ecd36219f3090742da88fca7e1ddf08fb",
      "parents": [
        "8c4af38e9b2c2a78369c4e2e5706fe539ac64eb2"
      ],
      "author": {
        "name": "Joe Perches",
        "email": "joe@perches.com",
        "time": "Mon Aug 09 17:20:37 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Aug 09 20:45:06 2010 -0700"
      },
      "message": "MAINTAINERS: update ARM/BCMRING MTD NAND DRIVER file patterns\n\nSigned-off-by: Joe Perches \u003cjoe@perches.com\u003e\nCc: Leo Chen \u003cleochen@broadcom.com\u003e\nCc: Scott Branden \u003csbranden@broadcom.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "8c4af38e9b2c2a78369c4e2e5706fe539ac64eb2",
      "tree": "17671814cc7afb4e5eaafad32f0ed0c428764515",
      "parents": [
        "547415d5edf8660aee040dc81d8c71b081a59bda"
      ],
      "author": {
        "name": "Andi Kleen",
        "email": "andi@firstfloor.org",
        "time": "Mon Aug 09 17:20:36 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Aug 09 20:45:06 2010 -0700"
      },
      "message": "gcc-4.6: printk: use stable variable to dump kmsg buffer\n\nkmsg_dump takes care to sample the global variables\ninside a spinlock, but then goes on to use the same\nvariables outside the spinlock region too.\n\nUse the correct variable. This will make the race\nwindow smaller.\n\nFound by gcc 4.6\u0027s new warnings.\n\nSigned-off-by: Andi Kleen \u003cak@linux.intel.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "547415d5edf8660aee040dc81d8c71b081a59bda",
      "tree": "21221c9702e65a71354ce5c672a085d00ff9b5a6",
      "parents": [
        "b329becfc78b180d5c422c9cb24a6ab378603305"
      ],
      "author": {
        "name": "Akinobu Mita",
        "email": "akinobu.mita@gmail.com",
        "time": "Mon Aug 09 17:20:35 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Aug 09 20:45:06 2010 -0700"
      },
      "message": "s390: remove WARN_ON for misc_deregister() failures\n\nThe previous change added WARN_ON() in misc_deregister().  So it is not\nnecessary to WARN_ON() misc_deregister() failure by callers.\n\nSigned-off-by: Akinobu Mita \u003cakinobu.mita@gmail.com\u003e\nCc: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\nCc: Heiko Carstens \u003cheiko.carstens@de.ibm.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "b329becfc78b180d5c422c9cb24a6ab378603305",
      "tree": "e0a977fef2f05b0863c99738eb170ba852c97e1f",
      "parents": [
        "878ae1274944908e1863b06b03a2c94907afaa20"
      ],
      "author": {
        "name": "Akinobu Mita",
        "email": "akinobu.mita@gmail.com",
        "time": "Mon Aug 09 17:20:35 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Aug 09 20:45:06 2010 -0700"
      },
      "message": "char: add WARN_ON() in misc_deregister()\n\nmisc_deregister() returns an error only when it attempts to unregister\nthe device that is not registered. This is the driver\u0027s bug.\n\nMost of the drivers don\u0027t check the return value of misc_deregister().\n(It is not bad thing because most of kernel *_unregister() API always\nsucceed and do not return value)\n\nSo it is better to indicate the error by WARN_ON() in misc_deregister().\n\nSigned-off-by: Akinobu Mita \u003cakinobu.mita@gmail.com\u003e\nCc: Heiko Carstens \u003cheiko.carstens@de.ibm.com\u003e\nCc: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "878ae1274944908e1863b06b03a2c94907afaa20",
      "tree": "35030101311d4c3e092e59da5ef0210229a81a00",
      "parents": [
        "d7a7c573936a86474c4a5090a45a4bc6e680c117"
      ],
      "author": {
        "name": "Richard Kennedy",
        "email": "richard@rsk.demon.co.uk",
        "time": "Mon Aug 09 17:20:34 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Aug 09 20:45:06 2010 -0700"
      },
      "message": "stop_machine: struct cpu_stopper, remove alignment padding on 64 bits\n\nReorder elements in structure cpu_stopper to remove alignment padding on\n64 bit builds, this shrinks its size from 40 to 32 bytes saving 8 bytes\nper cpu.\n\nSigned-off-by: Richard Kennedy \u003crichard@rsk.demon.co.uk\u003e\nAcked-by: Tejun Heo \u003ctj@kernel.org\u003e\nCc: Peter Zijlstra \u003cpeterz@infradead.org\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: Rusty Russell \u003crusty@rustcorp.com.au\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "d7a7c573936a86474c4a5090a45a4bc6e680c117",
      "tree": "1dfe757dca1ce4302e84c5ed0fa39c63007a9c52",
      "parents": [
        "e446127134de06c4aceaa511f411d06eac91634b"
      ],
      "author": {
        "name": "Suresh Siddha",
        "email": "suresh.b.siddha@intel.com",
        "time": "Mon Aug 09 17:20:33 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Aug 09 20:45:06 2010 -0700"
      },
      "message": "x86, ia64, smp: use workqueues unconditionally during do_boot_cpu()\n\nWorkqueues are now initialized as part of the early_initcall().  So they\nare available for use during cold boot process aswell.\n\nSigned-off-by: Suresh Siddha \u003csuresh.b.siddha@intel.com\u003e\nCc: \"H. Peter Anvin\" \u003chpa@zytor.com\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nCc: Tejun Heo \u003ctj@kernel.org\u003e\nCc: Oleg Nesterov \u003coleg@redhat.com\u003e\nCc: Tony Luck \u003ctony.luck@intel.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "e446127134de06c4aceaa511f411d06eac91634b",
      "tree": "7e685b71d8ed98cf712e1a88111c4613bc6f1847",
      "parents": [
        "22c5c03b42c082ab57b5d24824769ada0d90f8dc"
      ],
      "author": {
        "name": "Kevin Winchester",
        "email": "kjwinchester@gmail.com",
        "time": "Mon Aug 09 17:20:32 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Aug 09 20:45:06 2010 -0700"
      },
      "message": "init/main.c: mark do_one_initcall* as __init_or_module\n\nAndrew Morton suggested that the do_one_initcall and do_one_initcall_debug\nfunctions can be marked __init_or_module such that they can be discarded\nfor the CONFIG_MODULES\u003dN case.\n\nSigned-off-by: Kevin Winchester \u003ckjwinchester@gmail.com\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: Rusty Russell \u003crusty@rustcorp.com.au\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "22c5c03b42c082ab57b5d24824769ada0d90f8dc",
      "tree": "f3bb670ed467b05cba425e21625213de00dd9f0d",
      "parents": [
        "459b37d423104f00e87d1934821bc8739979d0e4"
      ],
      "author": {
        "name": "Kevin Winchester",
        "email": "kjwinchester@gmail.com",
        "time": "Mon Aug 09 17:20:32 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Aug 09 20:45:06 2010 -0700"
      },
      "message": "init/main.c: fix warning: \u0027calltime.tv64\u0027 may be used uninitialized\n\nUsing:\n\n\tgcc (GCC) 4.5.0 20100610 (prerelease)\n\nThe following warning appears:\n\n\tinit/main.c: In function `do_one_initcall\u0027:\n\tinit/main.c:730:10: warning: `calltime.tv64\u0027 may be used uninitialized in this function\n\nThis warning is actually correct, as the global initcall_debug could\narguably be changed by the initcall.\n\nCorrect this warning by extracting a new function, do_one_initcall_debug,\nthat performs the initcall for the debug case.\n\nSigned-off-by: Kevin Winchester \u003ckjwinchester@gmail.com\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: Rusty Russell \u003crusty@rustcorp.com.au\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "459b37d423104f00e87d1934821bc8739979d0e4",
      "tree": "22433f169c493acb46c6c46ba26c0e1bc6cb24a9",
      "parents": [
        "2ee7c922f20c96dba56fd378a466790d87f42e84"
      ],
      "author": {
        "name": "Geert Uytterhoeven",
        "email": "geert@linux-m68k.org",
        "time": "Mon Aug 09 17:20:31 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Aug 09 20:45:06 2010 -0700"
      },
      "message": "kernel/range: remove unused definition of ARRAY_SIZE()\n\nRemove duplicate definition of ARRAY_SIZE(), which was never used anyway.\n\nSigned-off-by: Geert Uytterhoeven \u003cgeert@linux-m68k.org\u003e\nCc: Yinghai Lu \u003cyinghai@kernel.org\u003e\nCc: \"H. Peter Anvin\" \u003chpa@zytor.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "2ee7c922f20c96dba56fd378a466790d87f42e84",
      "tree": "9eda39ff1867c4695c1e7349045ccc23176b623b",
      "parents": [
        "5bf1d290b57e392eaf4bfb15c67f315fce4140be"
      ],
      "author": {
        "name": "Oleg Nesterov",
        "email": "oleg@redhat.com",
        "time": "Mon Aug 09 17:20:30 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Aug 09 20:45:05 2010 -0700"
      },
      "message": "sys_personality: remove the bogus checks in sys_personality()-\u003e__set_personality() path\n\nCleanup, no functional changes.\n\n- __set_personality() always changes -\u003eexec_domain/personality, the\n  special case when -\u003eexec_domain remains the same buys nothing but\n  complicates the code. Unify both cases to simplify the code.\n\n- The -EINVAL check in sys_personality() was never right. If we assume\n  that set_personality() can fail we should check the value it returns\n  instead of verifying that task-\u003epersonality was actually changed.\n\n  Remove it. Before the previous patch it was possible to hit this case\n  due to overflow problems, but this -EINVAL just indicated the kernel\n  bug.\n\nOTOH, probably it makes sense to change lookup_exec_domain() to return\nERR_PTR() instead of default_exec_domain if the search in exec_domains\nlist fails, and report this error to the user-space.  But this means\nanother user-space change, and we have in-kernel users which need fixes.\nFor example, PER_OSF4 falls into PER_MASK for unkown reason and nobody\ncares to register this domain.\n\nSigned-off-by: Oleg Nesterov \u003coleg@redhat.com\u003e\nCc: Wenming Zhang \u003cwezhang@redhat.com\u003e\nCc: \"H. Peter Anvin\" \u003chpa@zytor.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "5bf1d290b57e392eaf4bfb15c67f315fce4140be",
      "tree": "568a01e0b11b3f58f935396f8793615be5b243e7",
      "parents": [
        "cdf8afca2417c5ae2a940a2ff2d36af986a3cf1d"
      ],
      "author": {
        "name": "Christoph Mair",
        "email": "christoph.mair@gmail.com",
        "time": "Mon Aug 09 17:20:28 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Aug 09 20:45:05 2010 -0700"
      },
      "message": "drivers/misc: support for the pressure sensor BMP085 from Bosch Sensortec\n\nThis driver adds support for the BMP085 digital pressure sensor from Bosch\nSensortec.  It exposes a sysfs api to userspace where pressure and\ntemperature measurement results can be read from the pressure0_input and\ntemp0_input file.  The chip is able to calculate the average of up to\neight samples to increase the accuracy.  This feature can be controlled by\nwriting to the oversampling file.\n\nThe BMP085 digital pressure sensor can measure ambient air pressure and\ntemperature.  Both values can be obtained from sysfs files.  The pressure\nis measured by reading from pressure0_input.  Valid values range from\n30000 to 110000 pascal with a resolution of 1 pascal (\u003d0.01 millibar).\n\ntemp0_input holds the current temperature in degree celsius, multiplied by\n10.  This results in a resolution of a tenth degree celsius.  Values range\nfrom -400 to 850.\n\nTo increase the accuracy, this chip can calculate the average of 1, 2, 4\nor 8 samples.  This behavior is controlled through the oversampling sysfs\nfile.  Two to the power of the value written to that file specifies how\nmany samples will be used.  Valid values: 0..3.\n\n[akpm@linux-foundation.org: fix typo]\n[shubhrajyoti@ti.com: optimize the wait time for the pressure sensor, definition of long is arch dependent so make it u32]\n[akpm@linux-foundation.org: coding-style fixes]\nSigned-off-by: Christoph Mair \u003cchristoph.mair@gmail.com\u003e\nSigned-off-by: Shubhrajyoti D \u003cshubhrajyoti@ti.com\u003e\nAcked-by: Jonathan Cameron \u003cjic23@cam.ac.uk\u003e\nCc: Stefan Schmidt \u003cstefan@datenfreihafen.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "cdf8afca2417c5ae2a940a2ff2d36af986a3cf1d",
      "tree": "872d838052885087b633b2e40778c6a26606332b",
      "parents": [
        "7efe15f2a4cd9d40826d31d7d5ef56094f8b65f5"
      ],
      "author": {
        "name": "Prarit Bhargava",
        "email": "prarit@redhat.com",
        "time": "Mon Aug 09 17:20:27 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Aug 09 20:45:05 2010 -0700"
      },
      "message": "hpilo: fix pointer warning in ilo_ccb_setup\n\nFix i386 PAE compile warning:\n\ndrivers/misc/hpilo.c: In function `ilo_ccb_setup\u0027:\ndrivers/misc/hpilo.c:274: warning: cast to pointer from integer of different size\n\ndma_addr_t is 64 on i386 PAE which causes a size mismatch.\n\nSigned-off-by: Prarit Bhargava \u003cprarit@redhat.com\u003e\nAcked-by: David Altobelli \u003cdavid.altobelli@hp.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "7efe15f2a4cd9d40826d31d7d5ef56094f8b65f5",
      "tree": "45af1fbfad02c2db98ebca52888b5bfcec65a5e5",
      "parents": [
        "37ed19d5cce35a40d3913cf9aa208ce9f60db3d7"
      ],
      "author": {
        "name": "Hemanth V",
        "email": "hemanthv@ti.com",
        "time": "Mon Aug 09 17:20:25 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Aug 09 20:45:05 2010 -0700"
      },
      "message": "drivers/misc: ROHM BH1780GLI ambient light sensor driver\n\nAdd support for ROHM BH1780GLI Ambient light sensor.\n\nBH1780 supports I2C interface.  Driver supports read/update of power state\nand read of lux value (through SYSFS).  Writing value 3 to power_state\nenables the sensor and current lux value could be read.\n\nCurrently this driver follows the same sysfs convention as supported by\ndrivers/misc/isl29003.c.\n\nSigned-off-by: Hemanth V \u003chemanthv@ti.com\u003e\nReviewed-by: Daniel Mack \u003cdaniel@caiaq.de\u003e\nAcked-by: Jonathan Cameron \u003cjic23@cam.ac.uk\u003e\nCc: Jean Delvare \u003ckhali@linux-fr.org\u003e\nCc: Wolfram Sang \u003cw.sang@pengutronix.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "37ed19d5cce35a40d3913cf9aa208ce9f60db3d7",
      "tree": "a4e3363f5a4c059330372b2f686112bfee6364b2",
      "parents": [
        "e269b085175acf03fc687a7416b9fd84aa9c6c23"
      ],
      "author": {
        "name": "Alexey Fomenko",
        "email": "ext-alexey.fomenko@nokia.com",
        "time": "Mon Aug 09 17:20:24 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Aug 09 20:45:05 2010 -0700"
      },
      "message": "scripts/mod/modpost.c: fix memory leak\n\nsec2annotation returns malloc\u0027ed buffer directly to printf as an argument.\n Free this buffer after printing.\n\nSigned-off-by: Alexey Fomenko \u003cext-alexey.fomenko@nokia.com\u003e\nCc: Trevor Keith \u003ctsrk@tsrk.net\u003e\nCc: Rusty Russell \u003crusty@rustcorp.com.au\u003e\nCc: Michal Marek \u003cmmarek@suse.cz\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "e269b085175acf03fc687a7416b9fd84aa9c6c23",
      "tree": "4f07bf03153450695a1e34073413879173cdb2b4",
      "parents": [
        "85c9fe8fcaf630225b26047b3a7cc5167739eced"
      ],
      "author": {
        "name": "Anton Blanchard",
        "email": "anton@samba.org",
        "time": "Mon Aug 09 17:20:23 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Aug 09 20:45:05 2010 -0700"
      },
      "message": "iommu: inline iommu_num_pages\n\nA profile of a network benchmark showed iommu_num_pages rather high up:\n\n     0.52%  iommu_num_pages\n\nLooking at the profile, an integer divide is taking almost all of the time:\n\n      %\n         :      c000000000376ea4 \u003c.iommu_num_pages\u003e:\n    1.93 :      c000000000376ea4:       fb e1 ff f8     std     r31,-8(r1)\n    0.00 :      c000000000376ea8:       f8 21 ff c1     stdu    r1,-64(r1)\n    0.00 :      c000000000376eac:       7c 3f 0b 78     mr      r31,r1\n    3.86 :      c000000000376eb0:       38 84 ff ff     addi    r4,r4,-1\n    0.00 :      c000000000376eb4:       38 05 ff ff     addi    r0,r5,-1\n    0.00 :      c000000000376eb8:       7c 84 2a 14     add     r4,r4,r5\n   46.95 :      c000000000376ebc:       7c 00 18 38     and     r0,r0,r3\n   45.66 :      c000000000376ec0:       7c 84 02 14     add     r4,r4,r0\n    0.00 :      c000000000376ec4:       7c 64 2b 92     divdu   r3,r4,r5\n    0.00 :      c000000000376ec8:       38 3f 00 40     addi    r1,r31,64\n    0.00 :      c000000000376ecc:       eb e1 ff f8     ld      r31,-8(r1)\n    1.61 :      c000000000376ed0:       4e 80 00 20     blr\n\nSince every caller of iommu_num_pages passes in a constant power of two\nwe can inline this such that the divide is replaced by a shift. The\nentire function is only a few instructions once optimised, so it is\na good candidate for inlining overall.\n\nSigned-off-by: Anton Blanchard \u003canton@samba.org\u003e\nCc: Akinobu Mita \u003cakinobu.mita@gmail.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "85c9fe8fcaf630225b26047b3a7cc5167739eced",
      "tree": "7af001a80ea43c22411f80cd35bd4aceae60e6aa",
      "parents": [
        "d89b1945b760a6e0e887da004d68432c0bff899a"
      ],
      "author": {
        "name": "Kevin Winchester",
        "email": "kjwinchester@gmail.com",
        "time": "Mon Aug 09 17:20:22 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Aug 09 20:45:05 2010 -0700"
      },
      "message": "vfs: fix warning: \u0027dirent\u0027 is used uninitialized in this function\n\nUsing:\n\n\tgcc (GCC) 4.5.0 20100610 (prerelease)\n\nThe following warnings appear:\n\n\tfs/readdir.c: In function `filldir64\u0027:\n\tfs/readdir.c:240:15: warning: `dirent\u0027 is used uninitialized in this function\n\tfs/readdir.c: In function `filldir\u0027:\n\tfs/readdir.c:155:15: warning: `dirent\u0027 is used uninitialized in this function\n\tfs/compat.c: In function `compat_filldir64\u0027:\n\tfs/compat.c:1071:11: warning: `dirent\u0027 is used uninitialized in this function\n\tfs/compat.c: In function `compat_filldir\u0027:\n\tfs/compat.c:984:15: warning: `dirent\u0027 is used uninitialized in this function\n\nThe warnings are related to the use of the NAME_OFFSET() macro.  Luckily,\nit appears as though the standard offsetof() macro is what is being\nimplemented by NAME_OFFSET(), thus we can fix the warning and use a more\nstandard code construct at the same time.\n\nSigned-off-by: Kevin Winchester \u003ckjwinchester@gmail.com\u003e\nCc: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\nCc: Christoph Hellwig \u003chch@lst.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "d89b1945b760a6e0e887da004d68432c0bff899a",
      "tree": "fa6aa7b8305fbb833a1cf5ddd094baef339c1d78",
      "parents": [
        "cf4ca4874fc45166198424384275f443a672d0b7"
      ],
      "author": {
        "name": "Randy Dunlap",
        "email": "randy.dunlap@oracle.com",
        "time": "Mon Aug 09 17:20:21 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Aug 09 20:45:05 2010 -0700"
      },
      "message": "SubmittingPatches: add more about patch descriptions\n\nAdd more information about patch descriptions.\n\nSigned-off-by: Randy Dunlap \u003crandy.dunlap@oracle.com\u003e\nReviewed-by: Christoph Lameter \u003ccl@linux-foundation.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "cf4ca4874fc45166198424384275f443a672d0b7",
      "tree": "2192ff3880b11c8f4ad495a22a11c2af09f41989",
      "parents": [
        "cb8a88b24bd7e3e7cf65e425f8f12d6a12371738"
      ],
      "author": {
        "name": "Joe Perches",
        "email": "joe@perches.com",
        "time": "Mon Aug 09 17:20:20 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Aug 09 20:45:05 2010 -0700"
      },
      "message": "kernel.h: remove unused NIPQUAD and NIPQUAD_FMT\n\nThere are no more uses of NIPQUAD or NIPQUAD_FMT.  Remove the definitions.\n\nSigned-off-by: Joe Perches \u003cjoe@perches.com\u003e\nCc: \"David S. Miller\" \u003cdavem@davemloft.net\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "cb8a88b24bd7e3e7cf65e425f8f12d6a12371738",
      "tree": "9b72665800c816e5907a95dc2f92cb3d6fc2745c",
      "parents": [
        "ea6b101d8a3ea4e1dec29df31188c2f9852296fe"
      ],
      "author": {
        "name": "Geert Uytterhoeven",
        "email": "geert@linux-m68k.org",
        "time": "Mon Aug 09 17:20:19 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Aug 09 20:45:05 2010 -0700"
      },
      "message": "alpha/h8300/m68k: remove obsolete \u003casm/md.h\u003e files\n\nRemoval of these started in 2.3.43pre3, ca. 10 years ago.\n\nReported-by: Arnd Bergmann \u003carnd@arndb.de\u003e\nSigned-off-by: Geert Uytterhoeven \u003cgeert@linux-m68k.org\u003e\nCc: Richard Henderson \u003crth@twiddle.net\u003e\nCc: Ivan Kokshaysky \u003cink@jurassic.park.msu.ru\u003e\nCc: Yoshinori Sato \u003cysato@users.sourceforge.jp\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "ea6b101d8a3ea4e1dec29df31188c2f9852296fe",
      "tree": "d4ec831d266914d72dbe028388260b8f7dfca6da",
      "parents": [
        "7387be3373277005c171b9f1509e91fae2e430f3"
      ],
      "author": {
        "name": "Rusty Russell",
        "email": "rusty@rustcorp.com.au",
        "time": "Mon Aug 09 17:20:18 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Aug 09 20:45:04 2010 -0700"
      },
      "message": "include/linux/compiler-gcc.h: use __same_type() in __must_be_array()\n\nWe should use the __same_type() helper in __must_be_array().\n\nSigned-off-by: Rusty Russell \u003crusty@rustcorp.com.au\u003e\nReported-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "7387be3373277005c171b9f1509e91fae2e430f3",
      "tree": "d16be00c6ed669456a3048f43c5d8d66d11d520a",
      "parents": [
        "7833e7c961612d3031c231596f8d71d0a9b45687"
      ],
      "author": {
        "name": "Mike Frysinger",
        "email": "vapier@gentoo.org",
        "time": "Mon Aug 09 17:20:17 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Aug 09 20:45:04 2010 -0700"
      },
      "message": "asm-generic/io.h: add big endian versions of io{read,write}{16,32}\n\nThe asm-generic/iomap.h provides these functions already, but the\nnon-generic fallback defines do not.\n\nSigned-off-by: Mike Frysinger \u003cvapier@gentoo.org\u003e\nCc: Arnd Bergmann \u003carnd@arndb.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "7833e7c961612d3031c231596f8d71d0a9b45687",
      "tree": "f3a06ed380f5508989e4bc3beb394aa4e13afd5b",
      "parents": [
        "47562277348da533f120acf2b0d4ff82a9444a1f"
      ],
      "author": {
        "name": "Christoph Egger",
        "email": "siccegge@cs.fau.de",
        "time": "Mon Aug 09 17:20:16 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Aug 09 20:45:04 2010 -0700"
      },
      "message": "arch/um/kernel/ptrace.c: remove dead PROC_MM\n\nPROC_MM doesn\u0027t exist in Kconfig.  Looking around it looks like a\nleft-over from 2.6.0 or even 2.4 times, last mentioned in a fedora patch\nfor 2.6.10.  I believe it\u0027s time to get rid of that last tiny parts here\nthat are still around.\n\nSigned-off-by: Christoph Egger \u003csiccegge@cs.fau.de\u003e\nCc: Jeff Dike \u003cjdike@addtoit.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "47562277348da533f120acf2b0d4ff82a9444a1f",
      "tree": "46bdc3951e9072a4dd18392c4816423b6097f08a",
      "parents": [
        "71abbbf856a0e70ca478782505c800891260ba84"
      ],
      "author": {
        "name": "Richard Weinberger",
        "email": "richard@nod.at",
        "time": "Mon Aug 09 17:20:14 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Aug 09 20:45:04 2010 -0700"
      },
      "message": "um: call free_irq() only on enabled channels\n\nWhen I use OpenSUSE-11.2 on UML (\u003e 2.6.25)\nI get lots of such errors:\n\nRegistering fd 1 twice\nIrqs : 3, 3\nIds : 0x09cb41a0, 0x09cb4120\n------------[ cut here ]------------\nWARNING: at kernel/irq/manage.c:896 __free_irq+0x79/0x11a()\nTrying to free already-free IRQ 3\nModules linked in:\n09dadc6c:  [\u003c081b2edb\u003e] dump_stack+0x1c/0x20\n09dadc84:  [\u003c080716da\u003e] warn_slowpath_common+0x49/0x77\n09dadc9c:  [\u003c08071772\u003e] warn_slowpath_fmt+0x26/0x2a\n09dadcb4:  [\u003c08094e08\u003e] __free_irq+0x79/0x11a\n09dadce4:  [\u003c08094ed6\u003e] free_irq+0x2d/0x49\n09dadcf4:  [\u003c0805b4bc\u003e] close_one_chan+0x70/0x9c\n09dadd0c:  [\u003c0805b833\u003e] close_chan+0x17/0x22\n09dadd1c:  [\u003c0805bdda\u003e] enable_chan+0x70/0x7c\n09dadd3c:  [\u003c0805cbb7\u003e] line_open+0x34/0x9f\n09dadd54:  [\u003c0805b21e\u003e] con_open+0x13/0x35\n09dadd6c:  [\u003c0814dc89\u003e] tty_open+0x285/0x384\n09dadda0:  [\u003c080b754e\u003e] chrdev_open+0xe0/0xf9\n09daddc0:  [\u003c080b3fb2\u003e] __dentry_open+0xf3/0x1e2\n09dadde4:  [\u003c080b4142\u003e] nameidata_to_filp+0x35/0x49\n09daddfc:  [\u003c080bd270\u003e] do_last+0x409/0x50e\n09dade28:  [\u003c080bea04\u003e] do_filp_open+0x175/0x446\n09dadecc:  [\u003c080b3d89\u003e] do_sys_open+0x4a/0x128\n09dadf04:  [\u003c080b3ea2\u003e] sys_open+0x19/0x21\n09dadf28:  [\u003c0805ab5a\u003e] handle_syscall+0x7a/0x98\n09dadf78:  [\u003c08068441\u003e] userspace+0x2c9/0x370\n09dadfe0:  [\u003c08058bb3\u003e] fork_handler+0x53/0x5b\n09dadffc:  [\u003c00766564\u003e] 0x766564\n\n---[ end trace 9ebc1094aaf4bded ]---\n\nThis patch fixes the issue.\n\nSigned-off-by: Richard Weinberger \u003crichard@nod.at\u003e\nCc: Jeff Dike \u003cjdike@addtoit.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "71abbbf856a0e70ca478782505c800891260ba84",
      "tree": "00ae494afd2868056753984035e1bfc0c2040257",
      "parents": [
        "d2997b1042ec150616c1963b5e5e919ffd0b0ebf"
      ],
      "author": {
        "name": "Ai Li",
        "email": "aili@codeaurora.org",
        "time": "Mon Aug 09 17:20:13 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Aug 09 20:45:04 2010 -0700"
      },
      "message": "cpuidle: extend cpuidle and menu governor to handle dynamic states\n\nOn some SoC chips, HW resources may be in use during any particular idle\nperiod.  As a consequence, the cpuidle states that the SoC is safe to\nenter can change from idle period to idle period.  In addition, the\nlatency and threshold of each cpuidle state can vary, depending on the\noperating condition when the CPU becomes idle, e.g.  the current cpu\nfrequency, the current state of the HW blocks, etc.\n\ncpuidle core and the menu governor, in the current form, are geared\ntowards cpuidle states that are static, i.e.  the availabiltiy of the\nstates, their latencies, their thresholds are non-changing during run\ntime.  cpuidle does not provide any hook that cpuidle drivers can use to\nadjust those values on the fly for the current idle period before the menu\ngovernor selects the target cpuidle state.\n\nThis patch extends cpuidle core and the menu governor to handle states\nthat are dynamic.  There are three additions in the patch and the patch\nmaintains backwards-compatibility with existing cpuidle drivers.\n\n1) add prepare() to struct cpuidle_device.  A cpuidle driver can hook\n   into the callback and cpuidle will call prepare() before calling the\n   governor\u0027s select function.  The callback gives the cpuidle driver a\n   chance to update the dynamic information of the cpuidle states for the\n   current idle period, e.g.  state availability, latencies, thresholds,\n   power values, etc.\n\n2) add CPUIDLE_FLAG_IGNORE as one of the state flags.  In the prepare()\n   function, a cpuidle driver can set/clear the flag to indicate to the\n   menu governor whether a cpuidle state should be ignored, i.e.  not\n   available, during the current idle period.\n\n3) add power_specified bit to struct cpuidle_device.  The menu governor\n   currently assumes that the cpuidle states are arranged in the order of\n   increasing latency, threshold, and power savings.  This is true or can\n   be made true for static states.  Once the state parameters are dynamic,\n   the latencies, thresholds, and power savings for the cpuidle states can\n   increase or decrease by different amounts from idle period to idle\n   period.  So the assumption of increasing latency, threshold, and power\n   savings from Cn to C(n+1) can no longer be guaranteed.\n\nIt can be straightforward to calculate the power consumption of each\navailable state and to specify it in power_usage for the idle period.\nUsing the power_usage fields, the menu governor then selects the state\nthat has the lowest power consumption and that still satisfies all other\ncritieria.  The power_specified bit defaults to 0.  For existing cpuidle\ndrivers, cpuidle detects that power_specified is 0 and fills in a dummy\nset of power_usage values.\n\nSigned-off-by: Ai Li \u003caili@codeaurora.org\u003e\nCc: Len Brown \u003clen.brown@intel.com\u003e\nAcked-by: Arjan van de Ven \u003carjan@linux.intel.com\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: Venkatesh Pallipadi \u003cvenki@google.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "d2997b1042ec150616c1963b5e5e919ffd0b0ebf",
      "tree": "c970746ad3d5c3e0ccbd1695d07144dbe4534ec4",
      "parents": [
        "966cca029f739716fbcc8068b8c6dfe381f86fc3"
      ],
      "author": {
        "name": "KAMEZAWA Hiroyuki",
        "email": "kamezawa.hiroyu@jp.fujitsu.com",
        "time": "Mon Aug 09 17:20:11 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Aug 09 20:45:04 2010 -0700"
      },
      "message": "hibernation: freeze swap at hibernation\n\nWhen taking a memory snapshot in hibernate_snapshot(), all (directly\ncalled) memory allocations use GFP_ATOMIC.  Hence swap misusage during\nhibernation never occurs.\n\nBut from a pessimistic point of view, there is no guarantee that no page\nallcation has __GFP_WAIT.  It is better to have a global indication \"we\nenter hibernation, don\u0027t use swap!\".\n\nThis patch tries to freeze new-swap-allocation during hibernation.  (All\nuser processes are frozenm so swapin is not a concern).\n\nThis way, no updates will happen to swap_map[] between\nhibernate_snapshot() and save_image().  Swap is thawed when swsusp_free()\nis called.  We can be assured that swap corruption will not occur.\n\nSigned-off-by: KAMEZAWA Hiroyuki \u003ckamezawa.hiroyu@jp.fujitsu.com\u003e\nCc: \"Rafael J. Wysocki\" \u003crjw@sisk.pl\u003e\nCc: Hugh Dickins \u003chughd@google.com\u003e\nCc: KOSAKI Motohiro \u003ckosaki.motohiro@jp.fujitsu.com\u003e\nCc: Ondrej Zary \u003clinux@rainbow-software.org\u003e\nCc: Balbir Singh \u003cbalbir@in.ibm.com\u003e\nCc: Andrea Arcangeli \u003caarcange@redhat.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "966cca029f739716fbcc8068b8c6dfe381f86fc3",
      "tree": "838686762076c262c425e3dc09d0cda4e9e5e83d",
      "parents": [
        "979f867191f80e74713394cf8c0a3c1b3662b648"
      ],
      "author": {
        "name": "KAMEZAWA Hiroyuki",
        "email": "kamezawa.hiroyu@jp.fujitsu.com",
        "time": "Mon Aug 09 17:20:09 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Aug 09 20:45:04 2010 -0700"
      },
      "message": "mm: fix corruption of hibernation caused by reusing swap during image saving\n\nSince 2.6.31, swap_map[]\u0027s refcounting was changed to show that a used\nswap entry is just for swap-cache, can be reused.  Then, while scanning\nfree entry in swap_map[], a swap entry may be able to be reclaimed and\nreused.  It was caused by commit c9e444103b5e7a5 (\"mm: reuse unused swap\nentry if necessary\").\n\nBut this caused deta corruption at resume. The scenario is\n\n- Assume a clean-swap cache, but mapped.\n\n- at hibernation_snapshot[], clean-swap-cache is saved as\n  clean-swap-cache and swap_map[] is marked as SWAP_HAS_CACHE.\n\n- then, save_image() is called.  And reuse SWAP_HAS_CACHE entry to save\n  image, and break the contents.\n\nAfter resume:\n\n- the memory reclaim runs and finds clean-not-referenced-swap-cache and\n  discards it because it\u0027s marked as clean.  But here, the contents on\n  disk and swap-cache is inconsistent.\n\nHance memory is corrupted.\n\nThis patch avoids the bug by not reclaiming swap-entry during hibernation.\nThis is a quick fix for backporting.\n\nSigned-off-by: KAMEZAWA Hiroyuki \u003ckamezawa.hiroyu@jp.fujitsu.com\u003e\nCc: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\nReported-by: Ondreg Zary \u003clinux@rainbow-software.org\u003e\nTested-by: Ondreg Zary \u003clinux@rainbow-software.org\u003e\nTested-by: Andrea Gelmini \u003candrea.gelmini@gmail.com\u003e\nAcked-by: Hugh Dickins \u003chughd@google.com\u003e\nCc: \u003cstable@kernel.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "979f867191f80e74713394cf8c0a3c1b3662b648",
      "tree": "e2483309110e2e285330e7fd2e5f50eb25dced25",
      "parents": [
        "92484f10ca8f7d36f0bfad92b66a20aa03120cc0"
      ],
      "author": {
        "name": "Michael Cree",
        "email": "mcree@orcon.net.nz",
        "time": "Mon Aug 09 17:20:08 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Aug 09 20:45:04 2010 -0700"
      },
      "message": "alpha: implement HW performance events on the EV67 and later CPUs\n\nThis implements hardware performance events for the EV67 and later CPUs\nwithin the Linux performance events subsystem.  Only using the performance\nmonitoring unit in HP/Compaq\u0027s so called \"Aggregrate mode\" is supported.\n\nThe code has been implemented in a manner that makes extension to other\nolder Alpha CPUs relatively straightforward should some mug wish to\nindulge themselves.\n\nSigned-off-by: Michael Cree \u003cmcree@orcon.net.nz\u003e\nCc: Richard Henderson \u003crth@twiddle.net\u003e\nCc: Ivan Kokshaysky \u003cink@jurassic.park.msu.ru\u003e\nCc: Matt Turner \u003cmattst88@gmail.com\u003e\nCc: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nCc: Peter Zijlstra \u003cpeterz@infradead.org\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: Jay Estabrook \u003cjay.estabrook@hp.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "92484f10ca8f7d36f0bfad92b66a20aa03120cc0",
      "tree": "d323dd83db710a4512ca0bf40608fb18d66d096f",
      "parents": [
        "65d920646a1c720c5ba95b7643ab1b46167d9e6a"
      ],
      "author": {
        "name": "Michael Cree",
        "email": "mcree@orcon.net.nz",
        "time": "Mon Aug 09 17:20:07 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Aug 09 20:45:04 2010 -0700"
      },
      "message": "alpha: add wrperfmon.h header file to aid use of wrperfmon PALcall\n\nSigned-off-by: Michael Cree \u003cmcree@orcon.net.nz\u003e\nCc: Richard Henderson \u003crth@twiddle.net\u003e\nCc: Ivan Kokshaysky \u003cink@jurassic.park.msu.ru\u003e\nCc: Matt Turner \u003cmattst88@gmail.com\u003e\nCc: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nCc: Peter Zijlstra \u003cpeterz@infradead.org\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: Jay Estabrook \u003cjay.estabrook@hp.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "65d920646a1c720c5ba95b7643ab1b46167d9e6a",
      "tree": "262f77223f5368bdfdb461e658d8ddd6750f651f",
      "parents": [
        "7624ee72aa09334af072853457a5d46d9901c3f8"
      ],
      "author": {
        "name": "Michael Cree",
        "email": "mcree@orcon.net.nz",
        "time": "Mon Aug 09 17:20:05 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Aug 09 20:45:03 2010 -0700"
      },
      "message": "alpha: add performance monitor interrupt counter\n\nThe following patches implement hardware performance events for the Alpha\nEV67 and later CPUs.  I have had this running on a Compaq XP1000 (EV67,\nsingle CPU) for a few days now.  Pretty cool -- discovered that the glibc\nexp2() library routine uses on average 985 cycles to execute 777 CPU\ninstructions whereas Compaq\u0027s CPML library version of exp2() uses on\naverage 32 cycles to execute 47 CPU instructions to achieve the same\nthing!\n\nThis patch:\n\nAdd performance monitor interrupt counternd and export the count to user\nspace via /proc/interrupts.\n\nSigned-off-by: Michael Cree \u003cmcree@orcon.net.nz\u003e\nCc: Richard Henderson \u003crth@twiddle.net\u003e\nCc: Ivan Kokshaysky \u003cink@jurassic.park.msu.ru\u003e\nCc: Matt Turner \u003cmattst88@gmail.com\u003e\nCc: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nCc: Peter Zijlstra \u003cpeterz@infradead.org\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: Jay Estabrook \u003cjay.estabrook@hp.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "7624ee72aa09334af072853457a5d46d9901c3f8",
      "tree": "046321fdf7f46c38a6e6d686c1cd962e70149c94",
      "parents": [
        "d9f8984c2c23b91e202a764fe4b15041a29a201a"
      ],
      "author": {
        "name": "Jan Kara",
        "email": "jack@suse.cz",
        "time": "Mon Aug 09 17:20:03 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Aug 09 20:45:03 2010 -0700"
      },
      "message": "mm: avoid resetting wb_start after each writeback round\n\nWB_SYNC_NONE writeback is done in rounds of 1024 pages so that we don\u0027t\nwrite out some huge inode for too long while starving writeout of other\ninodes.  To avoid livelocks, we record time we started writeback in\nwbc-\u003ewb_start and do not write out inodes which were dirtied after this\ntime.  But currently, writeback_inodes_wb() resets wb_start each time it\nis called thus effectively invalidating this logic and making any\nWB_SYNC_NONE writeback prone to livelocks.\n\nThis patch makes sure wb_start is set only once when we start writeback.\n\nSigned-off-by: Jan Kara \u003cjack@suse.cz\u003e\nReviewed-by: Wu Fengguang \u003cfengguang.wu@intel.com\u003e\nCc: Christoph Hellwig \u003chch@lst.de\u003e\nAcked-by: Jens Axboe \u003cjaxboe@fusionio.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "d9f8984c2c23b91e202a764fe4b15041a29a201a",
      "tree": "d211f4ee42c5c0859f30d26296d053aac8df3657",
      "parents": [
        "e31f3698cd3499e676f6b0ea12e3528f569c4fa3"
      ],
      "author": {
        "name": "Lai Jiangshan",
        "email": "laijs@cn.fujitsu.com",
        "time": "Mon Aug 09 17:20:02 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Aug 09 20:45:03 2010 -0700"
      },
      "message": "ksm: cleanup for mm_slots_hash\n\nUse compile-allocated memory instead of dynamic allocated memory for\nmm_slots_hash.\n\nUse hash_ptr() instead divisions for bucket calculation.\n\nSigned-off-by: Lai Jiangshan \u003claijs@cn.fujitsu.com\u003e\nSigned-off-by: Izik Eidus \u003cieidus@redhat.com\u003e\nCc: Avi Kivity \u003cavi@redhat.com\u003e\nCc: Andrea Arcangeli \u003caarcange@redhat.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "e31f3698cd3499e676f6b0ea12e3528f569c4fa3",
      "tree": "0133cc0e11384c7293bdf0812ee04996a02c8826",
      "parents": [
        "51980ac9e72fb5f22c81b7798d65b691125d70ee"
      ],
      "author": {
        "name": "Wu Fengguang",
        "email": "fengguang.wu@intel.com",
        "time": "Mon Aug 09 17:20:01 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Aug 09 20:45:03 2010 -0700"
      },
      "message": "vmscan: raise the bar to PAGEOUT_IO_SYNC stalls\n\nFix \"system goes unresponsive under memory pressure and lots of\ndirty/writeback pages\" bug.\n\n\thttp://lkml.org/lkml/2010/4/4/86\n\nIn the above thread, Andreas Mohr described that\n\n\tInvoking any command locked up for minutes (note that I\u0027m\n\ttalking about attempted additional I/O to the _other_,\n\t_unaffected_ main system HDD - such as loading some shell\n\tbinaries -, NOT the external SSD18M!!).\n\nThis happens when the two conditions are both meet:\n- under memory pressure\n- writing heavily to a slow device\n\nOOM also happens in Andreas\u0027 system.  The OOM trace shows that 3 processes\nare stuck in wait_on_page_writeback() in the direct reclaim path.  One in\ndo_fork() and the other two in unix_stream_sendmsg().  They are blocked on\nthis condition:\n\n\t(sc-\u003eorder \u0026\u0026 priority \u003c DEF_PRIORITY - 2)\n\nwhich was introduced in commit 78dc583d (vmscan: low order lumpy reclaim\nalso should use PAGEOUT_IO_SYNC) one year ago.  That condition may be too\npermissive.  In Andreas\u0027 case, 512MB/1024 \u003d 512KB.  If the direct reclaim\nfor the order-1 fork() allocation runs into a range of 512KB\nhard-to-reclaim LRU pages, it will be stalled.\n\nIt\u0027s a severe problem in three ways.\n\nFirstly, it can easily happen in daily desktop usage.  vmscan priority can\neasily go below (DEF_PRIORITY - 2) on _local_ memory pressure.  Even if\nthe system has 50% globally reclaimable pages, it still has good\nopportunity to have 0.1% sized hard-to-reclaim ranges.  For example, a\nsimple dd can easily create a big range (up to 20%) of dirty pages in the\nLRU lists.  And order-1 to order-3 allocations are more than common with\nSLUB.  Try \"grep -v \u00271 :\u0027 /proc/slabinfo\" to get the list of high order\nslab caches.  For example, the order-1 radix_tree_node slab cache may\nstall applications at swap-in time; the order-3 inode cache on most\nfilesystems may stall applications when trying to read some file; the\norder-2 proc_inode_cache may stall applications when trying to open a\n/proc file.\n\nSecondly, once triggered, it will stall unrelated processes (not doing IO\nat all) in the system.  This \"one slow USB device stalls the whole system\"\navalanching effect is very bad.\n\nThirdly, once stalled, the stall time could be intolerable long for the\nusers.  When there are 20MB queued writeback pages and USB 1.1 is writing\nthem in 1MB/s, wait_on_page_writeback() will stuck for up to 20 seconds.\nNot to mention it may be called multiple times.\n\nSo raise the bar to only enable PAGEOUT_IO_SYNC when priority goes below\nDEF_PRIORITY/3, or 6.25% LRU size.  As the default dirty throttle ratio is\n20%, it will hardly be triggered by pure dirty pages.  We\u0027d better treat\nPAGEOUT_IO_SYNC as some last resort workaround -- its stall time is so\nuncomfortably long (easily goes beyond 1s).\n\nThe bar is only raised for (order \u003c PAGE_ALLOC_COSTLY_ORDER) allocations,\nwhich are easy to satisfy in 1TB memory boxes.  So, although 6.25% of\nmemory could be an awful lot of pages to scan on a system with 1TB of\nmemory, it won\u0027t really have to busy scan that much.\n\nAndreas tested an older version of this patch and reported that it mostly\nfixed his problem.  Mel Gorman helped improve it and KOSAKI Motohiro will\nfix it further in the next patch.\n\nReported-by: Andreas Mohr \u003candi@lisas.de\u003e\nReviewed-by: Minchan Kim \u003cminchan.kim@gmail.com\u003e\nReviewed-by: KOSAKI Motohiro \u003ckosaki.motohiro@jp.fujitsu.com\u003e\nSigned-off-by: Mel Gorman \u003cmel@csn.ul.ie\u003e\nSigned-off-by: Wu Fengguang \u003cfengguang.wu@intel.com\u003e\nCc: Rik van Riel \u003criel@redhat.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "51980ac9e72fb5f22c81b7798d65b691125d70ee",
      "tree": "fc12938848882bd76f7420f28d723056d9e5518e",
      "parents": [
        "cc8e970c3ce4d98afa8eb02dbd2526ce57f7611a"
      ],
      "author": {
        "name": "Kulikov Vasiliy",
        "email": "segooon@gmail.com",
        "time": "Mon Aug 09 17:19:58 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Aug 09 20:45:03 2010 -0700"
      },
      "message": "mm/vmalloc.c: check kmalloc() return value\n\nkmalloc() may fail, if so return -ENOMEM.\n\nSigned-off-by: Kulikov Vasiliy \u003csegooon@gmail.com\u003e\nAcked-by: Pekka Enberg \u003cpenberg@cs.helsinki.fi\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "cc8e970c3ce4d98afa8eb02dbd2526ce57f7611a",
      "tree": "621ce988444b6df6eb67058b05ca5ddef23f6103",
      "parents": [
        "e17613c39b8894c164df782d0508c27ca559c24b"
      ],
      "author": {
        "name": "KOSAKI Motohiro",
        "email": "kosaki.motohiro@jp.fujitsu.com",
        "time": "Mon Aug 09 17:19:57 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Aug 09 20:45:03 2010 -0700"
      },
      "message": "memcg: add mm_vmscan_memcg_isolate tracepoint\n\nMemcg also need to trace page isolation information as global reclaim.\nThis patch does it.\n\nSigned-off-by: KOSAKI Motohiro \u003ckosaki.motohiro@jp.fujitsu.com\u003e\nReviewed-by: KAMEZAWA Hiroyuki \u003ckamezawa.hiroyu@jp.fujitsu.com\u003e\nAcked-by: Mel Gorman \u003cmel@csn.ul.ie\u003e\nAcked-by: Balbir Singh \u003cbalbir@linux.vnet.ibm.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "e17613c39b8894c164df782d0508c27ca559c24b",
      "tree": "9d256ead495ad9ad1568fdb7763460865a24c7b6",
      "parents": [
        "bdce6d9ebf52c1f6c23163d1a33320ce7c007f73"
      ],
      "author": {
        "name": "KOSAKI Motohiro",
        "email": "kosaki.motohiro@jp.fujitsu.com",
        "time": "Mon Aug 09 17:19:57 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Aug 09 20:45:03 2010 -0700"
      },
      "message": "vmscan: convert mm_vmscan_lru_isolate to DEFINE_EVENT\n\nMel Gorman recently added some vmscan tracepoints.  Unfortunately they are\ncovered only global reclaim.  But we want to trace memcg reclaim too.\n\nThus, this patch convert them to DEFINE_TRACE macro.  it help to reuse\ntracepoint definition for other similar usage (i.e.  memcg).  This patch\nhave no functionally change.\n\nSigned-off-by: KOSAKI Motohiro \u003ckosaki.motohiro@jp.fujitsu.com\u003e\nReviewed-by: KAMEZAWA Hiroyuki \u003ckamezawa.hiroyu@jp.fujitsu.com\u003e\nAcked-by: Balbir Singh \u003cbalbir@linux.vnet.ibm.com\u003e\nAcked-by: Mel Gorman \u003cmel@csn.ul.ie\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "bdce6d9ebf52c1f6c23163d1a33320ce7c007f73",
      "tree": "6070de94cdece474e277d8878721421671e212eb",
      "parents": [
        "cf4dcc3e9b374e1b61a7c22faf868707ce78d6a9"
      ],
      "author": {
        "name": "KOSAKI Motohiro",
        "email": "kosaki.motohiro@jp.fujitsu.com",
        "time": "Mon Aug 09 17:19:56 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Aug 09 20:45:03 2010 -0700"
      },
      "message": "memcg, vmscan: add memcg reclaim tracepoint\n\nMemcg also need to trace reclaim progress as direct reclaim.  This patch\nadd it.\n\nSigned-off-by: KOSAKI Motohiro \u003ckosaki.motohiro@jp.fujitsu.com\u003e\nReviewed-by: KAMEZAWA Hiroyuki \u003ckamezawa.hiroyu@jp.fujitsu.com\u003e\nAcked-by: Mel Gorman \u003cmel@csn.ul.ie\u003e\nAcked-by: Balbir Singh \u003cbalbir@linux.vnet.ibm.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "cf4dcc3e9b374e1b61a7c22faf868707ce78d6a9",
      "tree": "eb46339e98467b74a089d596b63d79441408caec",
      "parents": [
        "4dc4b3d971b23e12d483ba9f3b93b648c54b298a"
      ],
      "author": {
        "name": "KOSAKI Motohiro",
        "email": "kosaki.motohiro@jp.fujitsu.com",
        "time": "Mon Aug 09 17:19:55 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Aug 09 20:45:03 2010 -0700"
      },
      "message": "vmscan: convert direct reclaim tracepoint to DEFINE_TRACE\n\nMel Gorman recently added some vmscan tracepoints.  Unfortunately they are\ncovered only global reclaim.  But we want to trace memcg reclaim too.\n\nThus, this patch convert them to DEFINE_TRACE macro.  it help to reuse\ntracepoint definition for other similar usage (i.e.  memcg).  This patch\nhave no functionally change.\n\nSigned-off-by: KOSAKI Motohiro \u003ckosaki.motohiro@jp.fujitsu.com\u003e\nReviewed-by: KAMEZAWA Hiroyuki \u003ckamezawa.hiroyu@jp.fujitsu.com\u003e\nAcked-by: Mel Gorman \u003cmel@csn.ul.ie\u003e\nAcked-by: Balbir Singh \u003cbalbir@linux.vnet.ibm.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "4dc4b3d971b23e12d483ba9f3b93b648c54b298a",
      "tree": "845cc8debe146f683510841982323c338eb10000",
      "parents": [
        "57250a5bf0f6ff68dc339572adbd881a11f366fa"
      ],
      "author": {
        "name": "KOSAKI Motohiro",
        "email": "kosaki.motohiro@jp.fujitsu.com",
        "time": "Mon Aug 09 17:19:54 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Aug 09 20:45:03 2010 -0700"
      },
      "message": "vmscan: shrink_slab() requires the number of lru_pages, not the page order\n\nPresently shrink_slab() has the following scanning equation.\n\n                            lru_scanned        max_pass\n  basic_scan_objects \u003d 4 x -------------  x -----------------------------\n                            lru_pages        shrinker-\u003eseeks (default:2)\n\n  scan_objects \u003d min(basic_scan_objects, max_pass * 2)\n\nIf we pass very small value as lru_pages instead real number of lru pages,\nshrink_slab() drop much objects rather than necessary.  And now,\n__zone_reclaim() pass \u0027order\u0027 as lru_pages by mistake.  That produces a\nbad result.\n\nFor example, if we receive very low memory pressure (scan \u003d 32, order \u003d\n0), shrink_slab() via zone_reclaim() always drop _all_ icache/dcache\nobjects.  (see above equation, very small lru_pages make very big\nscan_objects result).\n\nThis patch fixes it.\n\n[akpm@linux-foundation.org: fix layout, typos]\nSigned-off-by: KOSAKI Motohiro \u003ckosaki.motohiro@jp.fujitsu.com\u003e\nReviewed-by: Minchan Kim \u003cminchan.kim@gmail.com\u003e\nAcked-by: Christoph Lameter \u003ccl@linux-foundation.org\u003e\nAcked-by: Rik van Riel \u003criel@redhat.com\u003e\nCc: Johannes Weiner \u003channes@cmpxchg.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "57250a5bf0f6ff68dc339572adbd881a11f366fa",
      "tree": "ef11c141a9f89403bcd4b1fc705d672c0ff41818",
      "parents": [
        "58c37f6e0dfaaab85a3c11fcbf24451dfe70c721"
      ],
      "author": {
        "name": "Jeremy Fitzhardinge",
        "email": "jeremy@goop.org",
        "time": "Mon Aug 09 17:19:52 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Aug 09 20:45:03 2010 -0700"
      },
      "message": "mmu-notifiers: remove mmu notifier calls in apply_to_page_range()\n\nIt is not appropriate for apply_to_page_range() to directly call any mmu\nnotifiers, because it is a general purpose function whose effect depends\non what context it is called in and what the callback function does.\n\nIn particular, if it is being used as part of an mmu notifier\nimplementation, the recursive calls can be particularly problematic.\n\nIt is up to apply_to_page_range\u0027s caller to do any notifier calls if\nnecessary.  It does not affect any in-tree users because they all operate\non init_mm, and mmu notifiers only pertain to usermode mappings.\n\n[stefano.stabellini@eu.citrix.com: remove unused local `start\u0027]\nSigned-off-by: Jeremy Fitzhardinge \u003cjeremy.fitzhardinge@citrix.com\u003e\nSigned-off-by: Stefano Stabellini \u003cstefano.stabellini@eu.citrix.com\u003e\nCc: Andrea Arcangeli \u003caarcange@redhat.com\u003e\nCc: Stefano Stabellini \u003cstefano.stabellini@eu.citrix.com\u003e\nCc: Avi Kivity \u003cavi@qumranet.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "58c37f6e0dfaaab85a3c11fcbf24451dfe70c721",
      "tree": "f1d6f6299059e5aa5fc3668ef9f561605491deb3",
      "parents": [
        "15748048991e801a2d18ce5da4e0d528852bc106"
      ],
      "author": {
        "name": "KOSAKI Motohiro",
        "email": "kosaki.motohiro@jp.fujitsu.com",
        "time": "Mon Aug 09 17:19:51 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Aug 09 20:45:02 2010 -0700"
      },
      "message": "vmscan: protect reading of reclaim_stat with lru_lock\n\nRik van Riel pointed out reading reclaim_stat should be protected\nlru_lock, otherwise vmscan might sweep 2x much pages.\n\nThis fault was introduced by\n\n  commit 4f98a2fee8acdb4ac84545df98cccecfd130f8db\n  Author: Rik van Riel \u003criel@redhat.com\u003e\n  Date:   Sat Oct 18 20:26:32 2008 -0700\n\n    vmscan: split LRU lists into anon \u0026 file sets\n\nSigned-off-by: KOSAKI Motohiro \u003ckosaki.motohiro@jp.fujitsu.com\u003e\nCc: Rik van Riel \u003criel@redhat.com\u003e\nReviewed-by: Minchan Kim \u003cminchan.kim@gmail.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "15748048991e801a2d18ce5da4e0d528852bc106",
      "tree": "e31dcdf36bbcfdd1c78546637d59faa963597bac",
      "parents": [
        "7ee92255470daa0edb93866aec6e27534cd9a177"
      ],
      "author": {
        "name": "KOSAKI Motohiro",
        "email": "kosaki.motohiro@jp.fujitsu.com",
        "time": "Mon Aug 09 17:19:50 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Aug 09 20:45:02 2010 -0700"
      },
      "message": "vmscan: avoid subtraction of unsigned types\n\n\u0027slab_reclaimable\u0027 and \u0027nr_pages\u0027 are unsigned.  Subtraction is unsafe\nbecause negative results would be misinterpreted.\n\nSigned-off-by: KOSAKI Motohiro \u003ckosaki.motohiro@jp.fujitsu.com\u003e\nReviewed-by: Minchan Kim \u003cminchan.kim@gmail.com\u003e\nCc: Mel Gorman \u003cmel@csn.ul.ie\u003e\nCc: Rik van Riel \u003criel@redhat.com\u003e\nCc: Johannes Weiner \u003channes@cmpxchg.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "7ee92255470daa0edb93866aec6e27534cd9a177",
      "tree": "07dd62d172fc6c174ae5bbe697851a36b2a1e43d",
      "parents": [
        "9a5b489b870def9a93f5e89dac03ebe136f901db"
      ],
      "author": {
        "name": "KOSAKI Motohiro",
        "email": "kosaki.motohiro@jp.fujitsu.com",
        "time": "Mon Aug 09 17:19:50 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Aug 09 20:45:02 2010 -0700"
      },
      "message": "drivers/base/node.c: reduce stack usage of node_read_meminfo()\n\n\tdrivers/base/node.c: In function \u0027node_read_meminfo\u0027:\n\tdrivers/base/node.c:139: warning: the frame size of 848 bytes is\n\tlarger than 512 bytes\n\nFix it by splitting the sprintf() into three parts.  It has no functional\nchange.\n\nSigned-off-by: KOSAKI Motohiro \u003ckosaki.motohiro@jp.fujitsu.com\u003e\nCc: Greg KH \u003cgreg@kroah.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "9a5b489b870def9a93f5e89dac03ebe136f901db",
      "tree": "df7f0acfdb81ce0d77b78ff4d131c40472731994",
      "parents": [
        "ad8c2ee801ad7a52d919b478d9b2c7b39a72d295"
      ],
      "author": {
        "name": "Andrea Arcangeli",
        "email": "aarcange@redhat.com",
        "time": "Mon Aug 09 17:19:49 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Aug 09 20:45:02 2010 -0700"
      },
      "message": "mm: set VM_FAULT_WRITE in do_swap_page()\n\nSet the flag if do_swap_page is decowing the page the same way do_wp_page\nwould too.\n\nSigned-off-by: Andrea Arcangeli \u003caarcange@redhat.com\u003e\nCc: KOSAKI Motohiro \u003ckosaki.motohiro@jp.fujitsu.com\u003e\nCc: Rik van Riel \u003criel@redhat.com\u003e\nCc: Nick Piggin \u003cnickpiggin@yahoo.com.au\u003e\nCc: Hugh Dickins \u003chughd@google.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "ad8c2ee801ad7a52d919b478d9b2c7b39a72d295",
      "tree": "bc56cc023da3467447b0aecd30c0516881d53992",
      "parents": [
        "51b1bd2ace1595b72956224deda349efa880b693"
      ],
      "author": {
        "name": "Rik van Riel",
        "email": "riel@redhat.com",
        "time": "Mon Aug 09 17:19:48 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Aug 09 20:45:02 2010 -0700"
      },
      "message": "rmap: add exclusive page to private anon_vma on swapin\n\nOn swapin it is fairly common for a page to be owned exclusively by one\nprocess.  In that case we want to add the page to the anon_vma of that\nprocess\u0027s VMA, instead of to the root anon_vma.\n\nThis will reduce the amount of rmap searching that the swapout code needs\nto do.\n\nSigned-off-by: Rik van Riel \u003criel@redhat.com\u003e\nCc: Andrea Arcangeli \u003caarcange@redhat.com\u003e\nCc: KOSAKI Motohiro \u003ckosaki.motohiro@jp.fujitsu.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "51b1bd2ace1595b72956224deda349efa880b693",
      "tree": "82732bb33d26379c05494dcdba8ea390ae0621db",
      "parents": [
        "a63d83f427fbce97a6cea0db2e64b0eb8435cd10"
      ],
      "author": {
        "name": "David Rientjes",
        "email": "rientjes@google.com",
        "time": "Mon Aug 09 17:19:47 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Aug 09 20:45:02 2010 -0700"
      },
      "message": "oom: deprecate oom_adj tunable\n\n/proc/pid/oom_adj is now deprecated so that that it may eventually be\nremoved.  The target date for removal is August 2012.\n\nA warning will be printed to the kernel log if a task attempts to use this\ninterface.  Future warning will be suppressed until the kernel is rebooted\nto prevent spamming the kernel log.\n\nSigned-off-by: David Rientjes \u003crientjes@google.com\u003e\nCc: Nick Piggin \u003cnpiggin@suse.de\u003e\nCc: KAMEZAWA Hiroyuki \u003ckamezawa.hiroyu@jp.fujitsu.com\u003e\nCc: KOSAKI Motohiro \u003ckosaki.motohiro@jp.fujitsu.com\u003e\nCc: Oleg Nesterov \u003coleg@redhat.com\u003e\nCc: Balbir Singh \u003cbalbir@in.ibm.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "a63d83f427fbce97a6cea0db2e64b0eb8435cd10",
      "tree": "8ac229cdf6e2289d97e82e35774057106fe7f4a2",
      "parents": [
        "74bcbf40546bb7500f2a7ba4ff3cc056a6bd004a"
      ],
      "author": {
        "name": "David Rientjes",
        "email": "rientjes@google.com",
        "time": "Mon Aug 09 17:19:46 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Aug 09 20:45:02 2010 -0700"
      },
      "message": "oom: badness heuristic rewrite\n\nThis a complete rewrite of the oom killer\u0027s badness() heuristic which is\nused to determine which task to kill in oom conditions.  The goal is to\nmake it as simple and predictable as possible so the results are better\nunderstood and we end up killing the task which will lead to the most\nmemory freeing while still respecting the fine-tuning from userspace.\n\nInstead of basing the heuristic on mm-\u003etotal_vm for each task, the task\u0027s\nrss and swap space is used instead.  This is a better indication of the\namount of memory that will be freeable if the oom killed task is chosen\nand subsequently exits.  This helps specifically in cases where KDE or\nGNOME is chosen for oom kill on desktop systems instead of a memory\nhogging task.\n\nThe baseline for the heuristic is a proportion of memory that each task is\ncurrently using in memory plus swap compared to the amount of \"allowable\"\nmemory.  \"Allowable,\" in this sense, means the system-wide resources for\nunconstrained oom conditions, the set of mempolicy nodes, the mems\nattached to current\u0027s cpuset, or a memory controller\u0027s limit.  The\nproportion is given on a scale of 0 (never kill) to 1000 (always kill),\nroughly meaning that if a task has a badness() score of 500 that the task\nconsumes approximately 50% of allowable memory resident in RAM or in swap\nspace.\n\nThe proportion is always relative to the amount of \"allowable\" memory and\nnot the total amount of RAM systemwide so that mempolicies and cpusets may\noperate in isolation; they shall not need to know the true size of the\nmachine on which they are running if they are bound to a specific set of\nnodes or mems, respectively.\n\nRoot tasks are given 3% extra memory just like __vm_enough_memory()\nprovides in LSMs.  In the event of two tasks consuming similar amounts of\nmemory, it is generally better to save root\u0027s task.\n\nBecause of the change in the badness() heuristic\u0027s baseline, it is also\nnecessary to introduce a new user interface to tune it.  It\u0027s not possible\nto redefine the meaning of /proc/pid/oom_adj with a new scale since the\nABI cannot be changed for backward compatability.  Instead, a new tunable,\n/proc/pid/oom_score_adj, is added that ranges from -1000 to +1000.  It may\nbe used to polarize the heuristic such that certain tasks are never\nconsidered for oom kill while others may always be considered.  The value\nis added directly into the badness() score so a value of -500, for\nexample, means to discount 50% of its memory consumption in comparison to\nother tasks either on the system, bound to the mempolicy, in the cpuset,\nor sharing the same memory controller.\n\n/proc/pid/oom_adj is changed so that its meaning is rescaled into the\nunits used by /proc/pid/oom_score_adj, and vice versa.  Changing one of\nthese per-task tunables will rescale the value of the other to an\nequivalent meaning.  Although /proc/pid/oom_adj was originally defined as\na bitshift on the badness score, it now shares the same linear growth as\n/proc/pid/oom_score_adj but with different granularity.  This is required\nso the ABI is not broken with userspace applications and allows oom_adj to\nbe deprecated for future removal.\n\nSigned-off-by: David Rientjes \u003crientjes@google.com\u003e\nCc: Nick Piggin \u003cnpiggin@suse.de\u003e\nCc: KAMEZAWA Hiroyuki \u003ckamezawa.hiroyu@jp.fujitsu.com\u003e\nCc: KOSAKI Motohiro \u003ckosaki.motohiro@jp.fujitsu.com\u003e\nCc: Oleg Nesterov \u003coleg@redhat.com\u003e\nCc: Balbir Singh \u003cbalbir@in.ibm.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "74bcbf40546bb7500f2a7ba4ff3cc056a6bd004a",
      "tree": "39411d83f448da818368043af9b52e9b405a2002",
      "parents": [
        "cef1d3523d33ebc35fc29e454b1f4bab953fabbf"
      ],
      "author": {
        "name": "Andrew Morton",
        "email": "akpm@linux-foundation.org",
        "time": "Mon Aug 09 17:19:43 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Aug 09 20:45:02 2010 -0700"
      },
      "message": "oom: move badness() declaration into oom.h\n\nCc: Minchan Kim \u003cminchan.kim@gmail.com\u003e\nCc: David Rientjes \u003crientjes@google.com\u003e\nCc: KAMEZAWA Hiroyuki \u003ckamezawa.hiroyu@jp.fujitsu.com\u003e\nCc: Oleg Nesterov \u003coleg@redhat.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "cef1d3523d33ebc35fc29e454b1f4bab953fabbf",
      "tree": "3688cf9e7c3b1bd4e1d473d79fd1a959bd4306fb",
      "parents": [
        "93b43fa55088fe977503a156d1097cc2055449a2"
      ],
      "author": {
        "name": "KOSAKI Motohiro",
        "email": "kosaki.motohiro@jp.fujitsu.com",
        "time": "Mon Aug 09 17:19:42 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Aug 09 20:45:02 2010 -0700"
      },
      "message": "oom: multi threaded process coredump don\u0027t make deadlock\n\nOleg pointed out current PF_EXITING check is wrong. Because PF_EXITING\nis per-thread flag, not per-process flag. He said,\n\n   Two threads, group-leader L and its sub-thread T. T dumps the code.\n   In this case both threads have -\u003emm !\u003d NULL, L has PF_EXITING.\n\n   The first problem is, select_bad_process() always return -1 in this\n   case (even if the caller is T, this doesn\u0027t matter).\n\n   The second problem is that we should add TIF_MEMDIE to T, not L.\n\nI think we can remove this dubious PF_EXITING check. but as first step,\nThis patch add the protection of multi threaded issue.\n\nSigned-off-by: KOSAKI Motohiro \u003ckosaki.motohiro@jp.fujitsu.com\u003e\nCc: Oleg Nesterov \u003coleg@redhat.com\u003e\nCc: Minchan Kim \u003cminchan.kim@gmail.com\u003e\nCc: David Rientjes \u003crientjes@google.com\u003e\nCc: KAMEZAWA Hiroyuki \u003ckamezawa.hiroyu@jp.fujitsu.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "93b43fa55088fe977503a156d1097cc2055449a2",
      "tree": "32c688e20c3ac9b30edd9c240c98f2f779b20e67",
      "parents": [
        "19b4586cd9c8ed642798902e55c6f61ed576ad93"
      ],
      "author": {
        "name": "Luis Claudio R. Goncalves",
        "email": "lclaudio@uudg.org",
        "time": "Mon Aug 09 17:19:41 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Aug 09 20:45:02 2010 -0700"
      },
      "message": "oom: give the dying task a higher priority\n\nIn a system under heavy load it was observed that even after the\noom-killer selects a task to die, the task may take a long time to die.\n\nRight after sending a SIGKILL to the task selected by the oom-killer this\ntask has its priority increased so that it can exit() soon, freeing\nmemory.  That is accomplished by:\n\n        /*\n         * We give our sacrificial lamb high priority and access to\n         * all the memory it needs. That way it should be able to\n         * exit() and clear out its resources quickly...\n         */\n \tp-\u003ert.time_slice \u003d HZ;\n \tset_tsk_thread_flag(p, TIF_MEMDIE);\n\nIt sounds plausible giving the dying task an even higher priority to be\nsure it will be scheduled sooner and free the desired memory.  It was\nsuggested on LKML using SCHED_FIFO:1, the lowest RT priority so that this\ntask won\u0027t interfere with any running RT task.\n\nIf the dying task is already an RT task, leave it untouched.  Another good\nsuggestion, implemented here, was to avoid boosting the dying task\npriority in case of mem_cgroup OOM.\n\nSigned-off-by: Luis Claudio R. Goncalves \u003clclaudio@uudg.org\u003e\nSigned-off-by: KOSAKI Motohiro \u003ckosaki.motohiro@jp.fujitsu.com\u003e\nReviewed-by: Minchan Kim \u003cminchan.kim@gmail.com\u003e\nCc: David Rientjes \u003crientjes@google.com\u003e\nCc: KAMEZAWA Hiroyuki \u003ckamezawa.hiroyu@jp.fujitsu.com\u003e\nCc: Oleg Nesterov \u003coleg@redhat.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "19b4586cd9c8ed642798902e55c6f61ed576ad93",
      "tree": "9db6c100cbb1337b584e0b7011ee1c736a210cd0",
      "parents": [
        "df1090a8dda40b6e11d8cd09e8fc900cfe913b38"
      ],
      "author": {
        "name": "KOSAKI Motohiro",
        "email": "kosaki.motohiro@jp.fujitsu.com",
        "time": "Mon Aug 09 17:19:39 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Aug 09 20:45:02 2010 -0700"
      },
      "message": "oom: remove child-\u003emm check from oom_kill_process()\n\nThe current \"child-\u003emm \u003d\u003d p-\u003emm\" check prevents selection of vfork()ed\ntask.  But we don\u0027t have any reason to don\u0027t consider vfork().\n\nRemoved.\n\nSigned-off-by: KOSAKI Motohiro \u003ckosaki.motohiro@jp.fujitsu.com\u003e\nCc: Minchan Kim \u003cminchan.kim@gmail.com\u003e\nCc: David Rientjes \u003crientjes@google.com\u003e\nCc: KAMEZAWA Hiroyuki \u003ckamezawa.hiroyu@jp.fujitsu.com\u003e\nCc: Oleg Nesterov \u003coleg@redhat.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "df1090a8dda40b6e11d8cd09e8fc900cfe913b38",
      "tree": "9bc8a81f66a0a3a8c29685fba7389378fe9f768c",
      "parents": [
        "a96cfd6e9176ad442233001b7d15e9ed42234320"
      ],
      "author": {
        "name": "KOSAKI Motohiro",
        "email": "kosaki.motohiro@jp.fujitsu.com",
        "time": "Mon Aug 09 17:19:39 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Aug 09 20:45:01 2010 -0700"
      },
      "message": "oom: cleanup has_intersects_mems_allowed()\n\npresently has_intersects_mems_allowed() has own thread iterate logic, but\nit should use while_each_thread().\n\nIt slightly improve the code readability.\n\nSigned-off-by: KOSAKI Motohiro \u003ckosaki.motohiro@jp.fujitsu.com\u003e\nReviewed-by: Minchan Kim \u003cminchan.kim@gmail.com\u003e\nCc: David Rientjes \u003crientjes@google.com\u003e\nCc: KAMEZAWA Hiroyuki \u003ckamezawa.hiroyu@jp.fujitsu.com\u003e\nCc: Oleg Nesterov \u003coleg@redhat.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "a96cfd6e9176ad442233001b7d15e9ed42234320",
      "tree": "6aa70841f3f2c3ff39a75d0014b9a235810ccd08",
      "parents": [
        "113e27f36dff9895049df324f292474854750d21"
      ],
      "author": {
        "name": "KOSAKI Motohiro",
        "email": "kosaki.motohiro@jp.fujitsu.com",
        "time": "Mon Aug 09 17:19:38 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Aug 09 20:45:01 2010 -0700"
      },
      "message": "oom: move OOM_DISABLE check from oom_kill_task to out_of_memory()\n\nPresently if oom_kill_allocating_task is enabled and current have\nOOM_DISABLED, following printk in oom_kill_process is called twice.\n\n    pr_err(\"%s: Kill process %d (%s) score %lu or sacrifice child\\n\",\n            message, task_pid_nr(p), p-\u003ecomm, points);\n\nSo, OOM_DISABLE check should be more early.\n\nSigned-off-by: KOSAKI Motohiro \u003ckosaki.motohiro@jp.fujitsu.com\u003e\nCc: Minchan Kim \u003cminchan.kim@gmail.com\u003e\nCc: David Rientjes \u003crientjes@google.com\u003e\nCc: KAMEZAWA Hiroyuki \u003ckamezawa.hiroyu@jp.fujitsu.com\u003e\nCc: Oleg Nesterov \u003coleg@redhat.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "113e27f36dff9895049df324f292474854750d21",
      "tree": "5e4e0bcee4d26ff15123d10d7d86db1eb1c382c8",
      "parents": [
        "26ebc984913b6a8d86d724b3a79d2ed4ed574612"
      ],
      "author": {
        "name": "KOSAKI Motohiro",
        "email": "kosaki.motohiro@jp.fujitsu.com",
        "time": "Mon Aug 09 17:19:37 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Aug 09 20:45:01 2010 -0700"
      },
      "message": "oom: kill duplicate OOM_DISABLE check\n\nselect_bad_process() and badness() have the same OOM_DISABLE check.  This\npatch kills one.\n\nSigned-off-by: KOSAKI Motohiro \u003ckosaki.motohiro@jp.fujitsu.com\u003e\nReviewed-by: Minchan Kim \u003cminchan.kim@gmail.com\u003e\nCc: David Rientjes \u003crientjes@google.com\u003e\nCc: KAMEZAWA Hiroyuki \u003ckamezawa.hiroyu@jp.fujitsu.com\u003e\nCc: Oleg Nesterov \u003coleg@redhat.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "26ebc984913b6a8d86d724b3a79d2ed4ed574612",
      "tree": "9d293c6f8b1bc5120beaa173590dcd83cd0e2eb0",
      "parents": [
        "f88ccad5886d5a864b8b0d48c666ee9998dec53f"
      ],
      "author": {
        "name": "KOSAKI Motohiro",
        "email": "kosaki.motohiro@jp.fujitsu.com",
        "time": "Mon Aug 09 17:19:37 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Aug 09 20:45:01 2010 -0700"
      },
      "message": "oom: /proc/\u003cpid\u003e/oom_score treat kernel thread honestly\n\nIf a kernel thread is using use_mm(), badness() returns a positive value.\nThis is not a big issue because caller take care of it correctly.  But\nthere is one exception, /proc/\u003cpid\u003e/oom_score calls badness() directly and\ndoesn\u0027t care that the task is a regular process.\n\nAnother example, /proc/1/oom_score return !0 value.  But it\u0027s unkillable.\nThis incorrectness makes administration a little confusing.\n\nThis patch fixes it.\n\nSigned-off-by: KOSAKI Motohiro \u003ckosaki.motohiro@jp.fujitsu.com\u003e\nCc: Minchan Kim \u003cminchan.kim@gmail.com\u003e\nCc: David Rientjes \u003crientjes@google.com\u003e\nCc: KAMEZAWA Hiroyuki \u003ckamezawa.hiroyu@jp.fujitsu.com\u003e\nCc: Oleg Nesterov \u003coleg@redhat.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "f88ccad5886d5a864b8b0d48c666ee9998dec53f",
      "tree": "fc6da2064c660a270cff82bb2f97f21ce537a369",
      "parents": [
        "ab290adbaf8f46770f014ea87968de5baca29c30"
      ],
      "author": {
        "name": "KOSAKI Motohiro",
        "email": "kosaki.motohiro@jp.fujitsu.com",
        "time": "Mon Aug 09 17:19:36 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Aug 09 20:45:01 2010 -0700"
      },
      "message": "oom: oom_kill_process() needs to check that p is unkillable\n\nWhen oom_kill_allocating_task is enabled, an argument task of\noom_kill_process is not selected by select_bad_process(), It\u0027s just\nout_of_memory() caller task.  It mean the task can be unkillable.  check\nit first.\n\nSigned-off-by: KOSAKI Motohiro \u003ckosaki.motohiro@jp.fujitsu.com\u003e\nReviewed-by: Minchan Kim \u003cminchan.kim@gmail.com\u003e\nCc: David Rientjes \u003crientjes@google.com\u003e\nCc: KAMEZAWA Hiroyuki \u003ckamezawa.hiroyu@jp.fujitsu.com\u003e\nCc: Oleg Nesterov \u003coleg@redhat.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "ab290adbaf8f46770f014ea87968de5baca29c30",
      "tree": "e6d9673a76ed7804d0b3ff858c2ac401971c1560",
      "parents": [
        "2c5ea53ce46ebb232e0d9a475fdd2b166d2a516b"
      ],
      "author": {
        "name": "KOSAKI Motohiro",
        "email": "kosaki.motohiro@jp.fujitsu.com",
        "time": "Mon Aug 09 17:19:35 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Aug 09 20:45:01 2010 -0700"
      },
      "message": "oom: make oom_unkillable_task() helper function\n\nPresently we have the same task check in two places. Unify it.\n\nSigned-off-by: KOSAKI Motohiro \u003ckosaki.motohiro@jp.fujitsu.com\u003e\nReviewed-by: Minchan Kim \u003cminchan.kim@gmail.com\u003e\nCc: David Rientjes \u003crientjes@google.com\u003e\nCc: KAMEZAWA Hiroyuki \u003ckamezawa.hiroyu@jp.fujitsu.com\u003e\nCc: Oleg Nesterov \u003coleg@redhat.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "2c5ea53ce46ebb232e0d9a475fdd2b166d2a516b",
      "tree": "0dc0883ee29201600ec3950142d69f9860af2527",
      "parents": [
        "7c59aec830c7ed6c745bd513982cee3563ed20c1"
      ],
      "author": {
        "name": "KOSAKI Motohiro",
        "email": "kosaki.motohiro@jp.fujitsu.com",
        "time": "Mon Aug 09 17:19:34 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Aug 09 20:45:01 2010 -0700"
      },
      "message": "oom: oom_kill_process() doesn\u0027t select kthread child\n\nPresently select_bad_process() has a PF_KTHREAD check, but\noom_kill_process doesn\u0027t.  It mean oom_kill_process() may choose wrong\ntask, especially, when the child are using use_mm().\n\nSigned-off-by: KOSAKI Motohiro \u003ckosaki.motohiro@jp.fujitsu.com\u003e\nReviewed-by: Minchan Kim \u003cminchan.kim@gmail.com\u003e\nCc: David Rientjes \u003crientjes@google.com\u003e\nCc: KAMEZAWA Hiroyuki \u003ckamezawa.hiroyu@jp.fujitsu.com\u003e\nCc: Oleg Nesterov \u003coleg@redhat.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "7c59aec830c7ed6c745bd513982cee3563ed20c1",
      "tree": "f06d2c626d0ab0ff2f9880d98a50e60be4af7816",
      "parents": [
        "1489fa14cb757b496c8fa2b63097dbcee6690695"
      ],
      "author": {
        "name": "KOSAKI Motohiro",
        "email": "kosaki.motohiro@jp.fujitsu.com",
        "time": "Mon Aug 09 17:19:33 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Aug 09 20:45:00 2010 -0700"
      },
      "message": "oom: don\u0027t try to kill oom_unkillable child\n\nPresently, badness() doesn\u0027t care about either CPUSET nor mempolicy.  Then\nif the victim child process have disjoint nodemask, OOM Killer might kill\ninnocent process.\n\nThis patch fixes it.\n\n[akpm@linux-foundation.org: coding-style fixes]\nSigned-off-by: KOSAKI Motohiro \u003ckosaki.motohiro@jp.fujitsu.com\u003e\nReviewed-by: Minchan Kim \u003cminchan.kim@gmail.com\u003e\nCc: Minchan Kim \u003cminchan.kim@gmail.com\u003e\nCc: David Rientjes \u003crientjes@google.com\u003e\nCc: KAMEZAWA Hiroyuki \u003ckamezawa.hiroyu@jp.fujitsu.com\u003e\nCc: Oleg Nesterov \u003coleg@redhat.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "1489fa14cb757b496c8fa2b63097dbcee6690695",
      "tree": "288905eab717db3cf1f6b7419e1989e89411ce04",
      "parents": [
        "abe4c3b50c3f25cb1baf56036024860f12f96015"
      ],
      "author": {
        "name": "Mel Gorman",
        "email": "mel@csn.ul.ie",
        "time": "Mon Aug 09 17:19:33 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Aug 09 20:45:00 2010 -0700"
      },
      "message": "vmscan: update isolated page counters outside of main path in shrink_inactive_list()\n\nWhen shrink_inactive_list() isolates pages, it updates a number of\ncounters using temporary variables to gather them.  These consume stack\nand it\u0027s in the main path that calls -\u003ewritepage().  This patch moves the\naccounting updates outside of the main path to reduce stack usage.\n\nSigned-off-by: Mel Gorman \u003cmel@csn.ul.ie\u003e\nReviewed-by: Johannes Weiner \u003channes@cmpxchg.org\u003e\nAcked-by: Rik van Riel \u003criel@redhat.com\u003e\nCc: Dave Chinner \u003cdavid@fromorbit.com\u003e\nCc: Chris Mason \u003cchris.mason@oracle.com\u003e\nCc: Nick Piggin \u003cnpiggin@suse.de\u003e\nCc: Rik van Riel \u003criel@redhat.com\u003e\nCc: Johannes Weiner \u003channes@cmpxchg.org\u003e\nCc: Christoph Hellwig \u003chch@infradead.org\u003e\nCc: KAMEZAWA Hiroyuki \u003ckamezawa.hiroyu@jp.fujitsu.com\u003e\nCc: KOSAKI Motohiro \u003ckosaki.motohiro@jp.fujitsu.com\u003e\nCc: Andrea Arcangeli \u003caarcange@redhat.com\u003e\nCc: Michael Rubin \u003cmrubin@google.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "abe4c3b50c3f25cb1baf56036024860f12f96015",
      "tree": "20ac47ac168b30f1dde6773d103ed13432802049",
      "parents": [
        "666356297ec4e9e6594c6008803f2b1403ff7950"
      ],
      "author": {
        "name": "Mel Gorman",
        "email": "mel@csn.ul.ie",
        "time": "Mon Aug 09 17:19:31 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Aug 09 20:45:00 2010 -0700"
      },
      "message": "vmscan: set up pagevec as late as possible in shrink_page_list()\n\nshrink_page_list() sets up a pagevec to release pages as according as they\nare free.  It uses significant amounts of stack on the pagevec.  This\npatch adds pages to be freed via pagevec to a linked list which is then\nfreed en-masse at the end.  This avoids using stack in the main path that\npotentially calls writepage().\n\nSigned-off-by: Mel Gorman \u003cmel@csn.ul.ie\u003e\nReviewed-by: Rik van Riel \u003criel@redhat.com\u003e\nCc: Dave Chinner \u003cdavid@fromorbit.com\u003e\nCc: Chris Mason \u003cchris.mason@oracle.com\u003e\nCc: Nick Piggin \u003cnpiggin@suse.de\u003e\nCc: Rik van Riel \u003criel@redhat.com\u003e\nCc: Johannes Weiner \u003channes@cmpxchg.org\u003e\nCc: Christoph Hellwig \u003chch@infradead.org\u003e\nCc: KAMEZAWA Hiroyuki \u003ckamezawa.hiroyu@jp.fujitsu.com\u003e\nCc: KOSAKI Motohiro \u003ckosaki.motohiro@jp.fujitsu.com\u003e\nCc: Andrea Arcangeli \u003caarcange@redhat.com\u003e\nCc: Michael Rubin \u003cmrubin@google.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "666356297ec4e9e6594c6008803f2b1403ff7950",
      "tree": "aaa1e60f81588d0d90c2279c9812a32e5a085a27",
      "parents": [
        "d4debc66d1fc1b98a68081c4c8156f171841dca8"
      ],
      "author": {
        "name": "Mel Gorman",
        "email": "mel@csn.ul.ie",
        "time": "Mon Aug 09 17:19:30 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Aug 09 20:45:00 2010 -0700"
      },
      "message": "vmscan: set up pagevec as late as possible in shrink_inactive_list()\n\nshrink_inactive_list() sets up a pagevec to release unfreeable pages.  It\nuses significant amounts of stack doing this.  This patch splits\nshrink_inactive_list() to take the stack usage out of the main path so\nthat callers to writepage() do not contain an unused pagevec on the stack.\n\nSigned-off-by: Mel Gorman \u003cmel@csn.ul.ie\u003e\nReviewed-by: Johannes Weiner \u003channes@cmpxchg.org\u003e\nAcked-by: Rik van Riel \u003criel@redhat.com\u003e\nCc: Dave Chinner \u003cdavid@fromorbit.com\u003e\nCc: Chris Mason \u003cchris.mason@oracle.com\u003e\nCc: Nick Piggin \u003cnpiggin@suse.de\u003e\nCc: Rik van Riel \u003criel@redhat.com\u003e\nCc: Johannes Weiner \u003channes@cmpxchg.org\u003e\nCc: Christoph Hellwig \u003chch@infradead.org\u003e\nCc: KAMEZAWA Hiroyuki \u003ckamezawa.hiroyu@jp.fujitsu.com\u003e\nCc: KOSAKI Motohiro \u003ckosaki.motohiro@jp.fujitsu.com\u003e\nCc: Andrea Arcangeli \u003caarcange@redhat.com\u003e\nCc: Michael Rubin \u003cmrubin@google.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "d4debc66d1fc1b98a68081c4c8156f171841dca8",
      "tree": "35bc1d2212e3c70ded11d31d28698fee0beeb3b2",
      "parents": [
        "e247dbce5cc747a714e8dcbd6b3f442cc2a284cf"
      ],
      "author": {
        "name": "Mel Gorman",
        "email": "mel@csn.ul.ie",
        "time": "Mon Aug 09 17:19:29 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Aug 09 20:45:00 2010 -0700"
      },
      "message": "vmscan: remove unnecessary temporary vars in do_try_to_free_pages\n\nRemove temporary variable that is only used once and does not help clarify\ncode.\n\n[akpm@linux-foundation.org: coding-style fixes]\nSigned-off-by: Mel Gorman \u003cmel@csn.ul.ie\u003e\nReviewed-by: Rik van Riel \u003criel@redhat.com\u003e\nCc: Dave Chinner \u003cdavid@fromorbit.com\u003e\nCc: Chris Mason \u003cchris.mason@oracle.com\u003e\nCc: Nick Piggin \u003cnpiggin@suse.de\u003e\nCc: Rik van Riel \u003criel@redhat.com\u003e\nCc: Johannes Weiner \u003channes@cmpxchg.org\u003e\nCc: Christoph Hellwig \u003chch@infradead.org\u003e\nCc: KAMEZAWA Hiroyuki \u003ckamezawa.hiroyu@jp.fujitsu.com\u003e\nCc: KOSAKI Motohiro \u003ckosaki.motohiro@jp.fujitsu.com\u003e\nCc: Andrea Arcangeli \u003caarcange@redhat.com\u003e\nCc: Michael Rubin \u003cmrubin@google.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "e247dbce5cc747a714e8dcbd6b3f442cc2a284cf",
      "tree": "9ade331a0be10aab1a67160b6feebc2ef06d5878",
      "parents": [
        "25edde0332916ae706ccf83de688be57bcc844b7"
      ],
      "author": {
        "name": "KOSAKI Motohiro",
        "email": "kosaki.motohiro@jp.fujitsu.com",
        "time": "Mon Aug 09 17:19:28 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Aug 09 20:45:00 2010 -0700"
      },
      "message": "vmscan: simplify shrink_inactive_list()\n\nNow, max_scan of shrink_inactive_list() is always passed less than\nSWAP_CLUSTER_MAX.  then, we can remove scanning pages loop in it.  This\npatch also help stack diet.\n\ndetail\n - remove \"while (nr_scanned \u003c max_scan)\" loop\n - remove nr_freed (now, we use nr_reclaimed directly)\n - remove nr_scan (now, we use nr_scanned directly)\n - rename max_scan to nr_to_scan\n - pass nr_to_scan into isolate_pages() directly instead\n   using SWAP_CLUSTER_MAX\n\n[akpm@linux-foundation.org: coding-style fixes]\nSigned-off-by: KOSAKI Motohiro \u003ckosaki.motohiro@jp.fujitsu.com\u003e\nSigned-off-by: Mel Gorman \u003cmel@csn.ul.ie\u003e\nReviewed-by: Johannes Weiner \u003channes@cmpxchg.org\u003e\nReviewed-by: Rik van Riel \u003criel@redhat.com\u003e\nCc: Dave Chinner \u003cdavid@fromorbit.com\u003e\nCc: Chris Mason \u003cchris.mason@oracle.com\u003e\nCc: Nick Piggin \u003cnpiggin@suse.de\u003e\nCc: Rik van Riel \u003criel@redhat.com\u003e\nCc: Johannes Weiner \u003channes@cmpxchg.org\u003e\nCc: Christoph Hellwig \u003chch@infradead.org\u003e\nCc: KAMEZAWA Hiroyuki \u003ckamezawa.hiroyu@jp.fujitsu.com\u003e\nCc: KOSAKI Motohiro \u003ckosaki.motohiro@jp.fujitsu.com\u003e\nCc: Andrea Arcangeli \u003caarcange@redhat.com\u003e\nCc: Michael Rubin \u003cmrubin@google.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "25edde0332916ae706ccf83de688be57bcc844b7",
      "tree": "35a5b0e651f9cdb48d9a55a748970339c4f681bc",
      "parents": [
        "b898cc70019ce1835bbf6c47bdf978adc36faa42"
      ],
      "author": {
        "name": "KOSAKI Motohiro",
        "email": "kosaki.motohiro@jp.fujitsu.com",
        "time": "Mon Aug 09 17:19:27 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Aug 09 20:45:00 2010 -0700"
      },
      "message": "vmscan: kill prev_priority completely\n\nSince 2.6.28 zone-\u003eprev_priority is unused. Then it can be removed\nsafely. It reduce stack usage slightly.\n\nNow I have to say that I\u0027m sorry. 2 years ago, I thought prev_priority\ncan be integrate again, it\u0027s useful. but four (or more) times trying\nhaven\u0027t got good performance number. Thus I give up such approach.\n\nThe rest of this changelog is notes on prev_priority and why it existed in\nthe first place and why it might be not necessary any more. This information\nis based heavily on discussions between Andrew Morton, Rik van Riel and\nKosaki Motohiro who is heavily quotes from.\n\nHistorically prev_priority was important because it determined when the VM\nwould start unmapping PTE pages. i.e. there are no balances of note within\nthe VM, Anon vs File and Mapped vs Unmapped. Without prev_priority, there\nis a potential risk of unnecessarily increasing minor faults as a large\namount of read activity of use-once pages could push mapped pages to the\nend of the LRU and get unmapped.\n\nThere is no proof this is still a problem but currently it is not considered\nto be. Active files are not deactivated if the active file list is smaller\nthan the inactive list reducing the liklihood that file-mapped pages are\nbeing pushed off the LRU and referenced executable pages are kept on the\nactive list to avoid them getting pushed out by read activity.\n\nEven if it is a problem, prev_priority prev_priority wouldn\u0027t works\nnowadays. First of all, current vmscan still a lot of UP centric code. it\nexpose some weakness on some dozens CPUs machine. I think we need more and\nmore improvement.\n\nThe problem is, current vmscan mix up per-system-pressure, per-zone-pressure\nand per-task-pressure a bit. example, prev_priority try to boost priority to\nother concurrent priority. but if the another task have mempolicy restriction,\nit is unnecessary, but also makes wrong big latency and exceeding reclaim.\nper-task based priority + prev_priority adjustment make the emulation of\nper-system pressure. but it have two issue 1) too rough and brutal emulation\n2) we need per-zone pressure, not per-system.\n\nAnother example, currently DEF_PRIORITY is 12. it mean the lru rotate about\n2 cycle (1/4096 + 1/2048 + 1/1024 + .. + 1) before invoking OOM-Killer.\nbut if 10,0000 thrreads enter DEF_PRIORITY reclaim at the same time, the\nsystem have higher memory pressure than priority\u003d\u003d0 (1/4096*10,000 \u003e 2).\nprev_priority can\u0027t solve such multithreads workload issue. In other word,\nprev_priority concept assume the sysmtem don\u0027t have lots threads.\"\n\nSigned-off-by: KOSAKI Motohiro \u003ckosaki.motohiro@jp.fujitsu.com\u003e\nSigned-off-by: Mel Gorman \u003cmel@csn.ul.ie\u003e\nReviewed-by: Johannes Weiner \u003channes@cmpxchg.org\u003e\nReviewed-by: Rik van Riel \u003criel@redhat.com\u003e\nCc: Dave Chinner \u003cdavid@fromorbit.com\u003e\nCc: Chris Mason \u003cchris.mason@oracle.com\u003e\nCc: Nick Piggin \u003cnpiggin@suse.de\u003e\nCc: Rik van Riel \u003criel@redhat.com\u003e\nCc: Johannes Weiner \u003channes@cmpxchg.org\u003e\nCc: Christoph Hellwig \u003chch@infradead.org\u003e\nCc: KAMEZAWA Hiroyuki \u003ckamezawa.hiroyu@jp.fujitsu.com\u003e\nCc: KOSAKI Motohiro \u003ckosaki.motohiro@jp.fujitsu.com\u003e\nCc: Andrea Arcangeli \u003caarcange@redhat.com\u003e\nCc: Michael Rubin \u003cmrubin@google.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "b898cc70019ce1835bbf6c47bdf978adc36faa42",
      "tree": "9837f7a8677873eb44e25b841d4262cd474ee9f1",
      "parents": [
        "755f0225e8347b23a33ee6e3fb14a35310f95766"
      ],
      "author": {
        "name": "Mel Gorman",
        "email": "mel@csn.ul.ie",
        "time": "Mon Aug 09 17:19:24 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Aug 09 20:45:00 2010 -0700"
      },
      "message": "vmscan: tracing: add a postprocessing script for reclaim-related ftrace events\n\nAdd a simple post-processing script for the reclaim-related trace events.\nIt can be used to give an indication of how much traffic there is on the\nLRU lists and how severe latencies due to reclaim are.  Example output\nlooks like the following\n\nReclaim latencies expressed as order-latency_in_ms\nuname-3942             9-200.179000000004 9-98.7900000000373 9-99.8330000001006\nkswapd0-311            0-662.097999999998 0-2.79700000002049 \\\n\t0-149.100000000035 0-3295.73600000003 0-9806.31799999997 0-35528.833 \\\n\t0-10043.197 0-129740.979 0-3.50500000000466 0-3.54899999999907 \\\n\t0-9297.78999999992 0-3.48499999998603 0-3596.97999999998 0-3.92799999995623 \\\n\t0-3.35000000009313 0-16729.017 0-3.57799999997951 0-47435.0630000001 \\\n\t0-3.7819999998901 0-5864.06999999995 0-18635.334 0-10541.289 9-186011.565 \\\n\t9-3680.86300000001 9-1379.06499999994 9-958571.115 9-66215.474 \\\n\t9-6721.14699999988 9-1962.15299999993 9-1094806.125 9-2267.83199999994 \\\n\t9-47120.9029999999 9-427653.886 9-2.6359999999404 9-632.148999999976 \\\n\t9-476.753000000026 9-495.577000000048 9-8.45900000003166 9-6.6820000000298 \\\n\t9-1.30500000016764 9-251.746000000043 9-383.905000000028 9-80.1419999999925 \\\n\t9-281.160000000149 9-14.8780000000261 9-381.45299999998 9-512.07799999998 \\\n\t9-49.5519999999087 9-167.439000000013 9-183.820999999996 9-239.527999999933 \\\n\t9-19.9479999998584 9-148.747999999905 9-164.583000000101 9-16.9480000000913 \\\n\t9-192.376000000164 9-64.1010000000242 9-1.40800000005402 9-3.60800000000745 \\\n\t9-17.1359999999404 9-4.69500000006519 9-2.06400000001304 9-1582488.554 \\\n\t9-6244.19499999983 9-348153.812 9-2.0999999998603 9-0.987999999895692 \\\n\t0-32218.473 0-1.6140000000596 0-1.28100000019185 0-1.41300000017509 \\\n\t0-1.32299999985844 0-602.584000000032 0-1.34400000004098 0-1.6929999999702 \\\n\t1-22101.8190000001 9-174876.724 9-16.2420000000857 9-175.165999999736 \\\n\t9-15.8589999997057 9-0.604999999981374 9-3061.09000000032 9-479.277000000235 \\\n\t9-1.54499999992549 9-771.985000000335 9-4.88700000010431 9-15.0649999999441 \\\n\t9-0.879999999888241 9-252.01500000013 9-1381.03600000031 9-545.689999999944 \\\n\t9-3438.0129999998 9-3343.70099999988\nbench-stresshig-3942   9-7063.33900000004 9-129960.482 9-2062.27500000002 \\\n\t9-3845.59399999992 9-171.82799999998 9-16493.821 9-7615.23900000006 \\\n\t9-10217.848 9-983.138000000035 9-2698.39999999991 9-4016.1540000001 \\\n\t9-5522.37700000009 9-21630.429 \\\n\t9-15061.048 9-10327.953 9-542.69700000016 9-317.652000000002 \\\n\t9-8554.71699999995 9-1786.61599999992 9-1899.31499999994 9-2093.41899999999 \\\n\t9-4992.62400000007 9-942.648999999976 9-1923.98300000001 9-3.7980000001844 \\\n\t9-5.99899999983609 9-0.912000000011176 9-1603.67700000014 9-1.98300000000745 \\\n\t9-3.96500000008382 9-0.902999999932945 9-2802.72199999983 9-1078.24799999991 \\\n\t9-2155.82900000014 9-10.058999999892 9-1984.723 9-1687.97999999998 \\\n\t9-1136.05300000007 9-3183.61699999985 9-458.731000000145 9-6.48600000003353 \\\n\t9-1013.25200000009 9-8415.22799999989 9-10065.584 9-2076.79600000009 \\\n\t9-3792.65699999989 9-71.2010000001173 9-2560.96999999997 9-2260.68400000012 \\\n\t9-2862.65799999982 9-1255.81500000018 9-15.7440000001807 9-4.33499999996275 \\\n\t9-1446.63800000004 9-238.635000000009 9-60.1790000000037 9-4.38800000003539 \\\n\t9-639.567000000039 9-306.698000000091 9-31.4070000001229 9-74.997999999905 \\\n\t9-632.725999999791 9-1625.93200000003 9-931.266000000061 9-98.7749999999069 \\\n\t9-984.606999999844 9-225.638999999966 9-421.316000000108 9-653.744999999879 \\\n\t9-572.804000000004 9-769.158999999985 9-603.918000000063 9-4.28499999991618 \\\n\t9-626.21399999992 9-1721.25 9-0.854999999981374 9-572.39599999995 \\\n\t9-681.881999999983 9-1345.12599999993 9-363.666999999899 9-3823.31099999999 \\\n\t9-2991.28200000012 9-4.27099999994971 9-309.76500000013 9-3068.35700000008 \\\n\t9-788.25 9-3515.73999999999 9-2065.96100000013 9-286.719999999972 \\\n\t9-316.076000000117 9-344.151000000071 9-2.51000000000931 9-306.688000000082 \\\n\t9-1515.00099999993 9-336.528999999864 9-793.491999999853 9-457.348999999929 \\\n\t9-13620.155 9-119.933999999892 9-35.0670000000391 9-918.266999999993 \\\n\t9-828.569000000134 9-4863.81099999999 9-105.222000000067 9-894.23900000006 \\\n\t9-110.964999999851 9-0.662999999942258 9-12753.3150000002 9-12.6129999998957 \\\n\t9-13368.0899999999 9-12.4199999999255 9-1.00300000002608 9-1.41100000008009 \\\n\t9-10300.5290000001 9-16.502000000095 9-30.7949999999255 9-6283.0140000002 \\\n\t9-4320.53799999994 9-6826.27300000004 9-3.07299999985844 9-1497.26799999992 \\\n\t9-13.4040000000969 9-3.12999999988824 9-3.86100000003353 9-11.3539999998175 \\\n\t9-0.10799999977462 9-21.780999999959 9-209.695999999996 9-299.647000000114 \\\n\t9-6.01699999999255 9-20.8349999999627 9-22.5470000000205 9-5470.16800000006 \\\n\t9-7.60499999998137 9-0.821000000229105 9-1.56600000010803 9-14.1669999998994 \\\n\t9-0.209000000031665 9-1.82300000009127 9-1.70000000018626 9-19.9429999999702 \\\n\t9-124.266999999993 9-0.0389999998733401 9-6.71400000015274 9-16.7710000001825 \\\n\t9-31.0409999999683 9-0.516999999992549 9-115.888000000035 9-5.19900000002235 \\\n\t9-222.389999999898 9-11.2739999999758 9-80.9050000000279 9-8.14500000001863 \\\n\t9-4.44599999999627 9-0.218999999808148 9-0.715000000083819 9-0.233000000007451\n\\\n\t9-48.2630000000354 9-248.560999999987 9-374.96800000011 9-644.179000000004 \\\n\t9-0.835999999893829 9-79.0060000000522 9-128.447999999858 9-0.692000000039116 \\\n\t9-5.26500000013039 9-128.449000000022 9-2.04799999995157 9-12.0990000001621 \\\n\t9-8.39899999997579 9-10.3860000001732 9-11.9310000000987 9-53.4450000000652 \\\n\t9-0.46999999997206 9-2.96299999998882 9-17.9699999999721 9-0.776000000070781 \\\n\t9-25.2919999998994 9-33.1110000000335 9-0.434000000124797 9-0.641000000061467 \\\n\t9-0.505000000121072 9-1.12800000002608 9-149.222000000067 9-1.17599999997765 \\\n\t9-3247.33100000001 9-10.7439999999478 9-153.523000000045 9-1.38300000014715 \\\n\t9-794.762000000104 9-3.36199999996461 9-128.765999999829 9-181.543999999994 \\\n\t9-78149.8229999999 9-176.496999999974 9-89.9940000001807 9-9.12700000009499 \\\n\t9-250.827000000048 9-0.224999999860302 9-0.388999999966472 9-1.16700000036508 \\\n\t9-32.1740000001155 9-12.6800000001676 9-0.0720000001601875 9-0.274999999906868\n\\\n\t9-0.724000000394881 9-266.866000000387 9-45.5709999999963 9-4.54399999976158 \\\n\t9-8.27199999988079 9-4.38099999958649 9-0.512000000104308 9-0.0640000002458692\n\\\n\t9-5.20000000018626 9-0.0839999997988343 9-12.816000000108 9-0.503000000026077 \\\n\t9-0.507999999914318 9-6.23999999975786 9-3.35100000025705 9-18.8530000001192 \\\n\t9-25.2220000000671 9-68.2309999996796 9-98.9939999999478 9-0.441000000108033 \\\n\t9-4.24599999981001 9-261.702000000048 9-3.01599999982864 9-0.0749999997206032 \\\n\t9-0.0370000000111759 9-4.375 9-3.21800000034273 9-11.3960000001825 \\\n\t9-0.0540000000037253 9-0.286000000312924 9-0.865999999921769 \\\n\t9-0.294999999925494 9-6.45999999996275 9-4.31099999975413 9-128.248999999836 \\\n\t9-0.282999999821186 9-102.155000000261 9-0.0860000001266599 \\\n\t9-0.0540000000037253 9-0.935000000055879 9-0.0670000002719462 \\\n\t9-5.8640000000596 9-19.9860000000335 9-4.18699999991804 9-0.566000000108033 \\\n\t9-2.55099999997765 9-0.702000000048429 9-131.653999999631 9-0.638999999966472 \\\n\t9-14.3229999998584 9-183.398000000045 9-178.095999999903 9-3.22899999981746 \\\n\t9-7.31399999978021 9-22.2400000002235 9-11.7979999999516 9-108.10599999968 \\\n\t9-99.0159999998286 9-102.640999999829 9-38.414000000339\nProcess                  Direct     Wokeup      Pages      Pages    Pages\ndetails                   Rclms     Kswapd    Scanned    Sync-IO ASync-IO\ncc1-30800                     0          1          0          0        0      wakeup-0\u003d1\ncc1-24260                     0          1          0          0        0      wakeup-0\u003d1\ncc1-24152                     0         12          0          0        0      wakeup-0\u003d12\ncc1-8139                      0          1          0          0        0      wakeup-0\u003d1\ncc1-4390                      0          1          0          0        0      wakeup-0\u003d1\ncc1-4648                      0          7          0          0        0      wakeup-0\u003d7\ncc1-4552                      0          3          0          0        0      wakeup-0\u003d3\ndd-4550                       0         31          0          0        0      wakeup-0\u003d31\ndate-4898                     0          1          0          0        0      wakeup-0\u003d1\ncc1-6549                      0          7          0          0        0      wakeup-0\u003d7\nas-22202                      0         17          0          0        0      wakeup-0\u003d17\ncc1-6495                      0          9          0          0        0      wakeup-0\u003d9\ncc1-8299                      0          1          0          0        0      wakeup-0\u003d1\ncc1-6009                      0          1          0          0        0      wakeup-0\u003d1\ncc1-2574                      0          2          0          0        0      wakeup-0\u003d2\ncc1-30568                     0          1          0          0        0      wakeup-0\u003d1\ncc1-2679                      0          6          0          0        0      wakeup-0\u003d6\nsh-13747                      0         12          0          0        0      wakeup-0\u003d12\ncc1-22193                     0         18          0          0        0      wakeup-0\u003d18\ncc1-30725                     0          2          0          0        0      wakeup-0\u003d2\nas-4392                       0          2          0          0        0      wakeup-0\u003d2\ncc1-28180                     0         14          0          0        0      wakeup-0\u003d14\ncc1-13697                     0          2          0          0        0      wakeup-0\u003d2\ncc1-22207                     0          8          0          0        0      wakeup-0\u003d8\ncc1-15270                     0        179          0          0        0      wakeup-0\u003d179\ncc1-22011                     0         82          0          0        0      wakeup-0\u003d82\ncp-14682                      0          1          0          0        0      wakeup-0\u003d1\nas-11926                      0          2          0          0        0      wakeup-0\u003d2\ncc1-6016                      0          5          0          0        0      wakeup-0\u003d5\nmake-18554                    0         13          0          0        0      wakeup-0\u003d13\ncc1-8292                      0         12          0          0        0      wakeup-0\u003d12\nmake-24381                    0          1          0          0        0      wakeup-1\u003d1\ndate-18681                    0         33          0          0        0      wakeup-0\u003d33\ncc1-32276                     0          1          0          0        0      wakeup-0\u003d1\ntimestamp-outpu-2809          0        253          0          0        0      wakeup-0\u003d240 wakeup-1\u003d13\ndate-18624                    0          7          0          0        0      wakeup-0\u003d7\ncc1-30960                     0          9          0          0        0      wakeup-0\u003d9\ncc1-4014                      0          1          0          0        0      wakeup-0\u003d1\ncc1-30706                     0         22          0          0        0      wakeup-0\u003d22\nuname-3942                    4          1        306          0       17      direct-9\u003d4       wakeup-9\u003d1\ncc1-28207                     0          1          0          0        0      wakeup-0\u003d1\ncc1-30563                     0          9          0          0        0      wakeup-0\u003d9\ncc1-22214                     0         10          0          0        0      wakeup-0\u003d10\ncc1-28221                     0         11          0          0        0      wakeup-0\u003d11\ncc1-28123                     0          6          0          0        0      wakeup-0\u003d6\nkswapd0-311                   0          7     357302          0    34233      wakeup-0\u003d7\ncc1-5988                      0          7          0          0        0      wakeup-0\u003d7\nas-30734                      0        161          0          0        0      wakeup-0\u003d161\ncc1-22004                     0         45          0          0        0      wakeup-0\u003d45\ndate-4590                     0          4          0          0        0      wakeup-0\u003d4\ncc1-15279                     0        213          0          0        0      wakeup-0\u003d213\ndate-30735                    0          1          0          0        0      wakeup-0\u003d1\ncc1-30583                     0          4          0          0        0      wakeup-0\u003d4\ncc1-32324                     0          2          0          0        0      wakeup-0\u003d2\ncc1-23933                     0          3          0          0        0      wakeup-0\u003d3\ncc1-22001                     0         36          0          0        0      wakeup-0\u003d36\nbench-stresshig-3942        287        287      80186       6295    12196      direct-9\u003d287       wakeup-9\u003d287\ncc1-28170                     0          7          0          0        0      wakeup-0\u003d7\ndate-7932                     0         92          0          0        0      wakeup-0\u003d92\ncc1-22222                     0          6          0          0        0      wakeup-0\u003d6\ncc1-32334                     0         16          0          0        0      wakeup-0\u003d16\ncc1-2690                      0          6          0          0        0      wakeup-0\u003d6\ncc1-30733                     0          9          0          0        0      wakeup-0\u003d9\ncc1-32298                     0          2          0          0        0      wakeup-0\u003d2\ncc1-13743                     0         18          0          0        0      wakeup-0\u003d18\ncc1-22186                     0          4          0          0        0      wakeup-0\u003d4\ncc1-28214                     0         11          0          0        0      wakeup-0\u003d11\ncc1-13735                     0          1          0          0        0      wakeup-0\u003d1\nupdatedb-8173                 0         18          0          0        0      wakeup-0\u003d18\ncc1-13750                     0          3          0          0        0      wakeup-0\u003d3\ncat-2808                      0          2          0          0        0      wakeup-0\u003d2\ncc1-15277                     0        169          0          0        0      wakeup-0\u003d169\ndate-18317                    0          1          0          0        0      wakeup-0\u003d1\ncc1-15274                     0        197          0          0        0      wakeup-0\u003d197\ncc1-30732                     0          1          0          0        0      wakeup-0\u003d1\n\nKswapd                   Kswapd      Order      Pages      Pages    Pages\nInstance                Wakeups  Re-wakeup    Scanned    Sync-IO ASync-IO\nkswapd0-311                  91         24     357302          0    34233      wake-0\u003d31 wake-1\u003d1 wake-9\u003d59       rewake-0\u003d10 rewake-1\u003d1 rewake-9\u003d13\n\nSummary\nDirect reclaims:     \t\t291\nDirect reclaim pages scanned:\t437794\nDirect reclaim write sync I/O:\t6295\nDirect reclaim write async I/O:\t46446\nWake kswapd requests:\t\t2152\nTime stalled direct reclaim: \t519.163009000002 ms\n\nKswapd wakeups:\t\t\t91\nKswapd pages scanned:\t\t357302\nKswapd reclaim write sync I/O:\t0\nKswapd reclaim write async I/O:\t34233\nTime kswapd awake:\t\t5282.749757 ms\n\nSigned-off-by: Mel Gorman \u003cmel@csn.ul.ie\u003e\nAcked-by: Rik van Riel \u003criel@redhat.com\u003e\nAcked-by: Larry Woodman \u003clwoodman@redhat.com\u003e\nCc: Dave Chinner \u003cdavid@fromorbit.com\u003e\nCc: Chris Mason \u003cchris.mason@oracle.com\u003e\nCc: Nick Piggin \u003cnpiggin@suse.de\u003e\nCc: Rik van Riel \u003criel@redhat.com\u003e\nCc: Johannes Weiner \u003channes@cmpxchg.org\u003e\nCc: Christoph Hellwig \u003chch@infradead.org\u003e\nCc: KAMEZAWA Hiroyuki \u003ckamezawa.hiroyu@jp.fujitsu.com\u003e\nCc: KOSAKI Motohiro \u003ckosaki.motohiro@jp.fujitsu.com\u003e\nCc: Andrea Arcangeli \u003caarcange@redhat.com\u003e\nCc: Michael Rubin \u003cmrubin@google.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "755f0225e8347b23a33ee6e3fb14a35310f95766",
      "tree": "23489e9f52f1435c7b8bc4da8e98d607460e4e23",
      "parents": [
        "a8a94d151521b248727c1f88756174e15260815a"
      ],
      "author": {
        "name": "Mel Gorman",
        "email": "mel@csn.ul.ie",
        "time": "Mon Aug 09 17:19:18 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Aug 09 20:45:00 2010 -0700"
      },
      "message": "vmscan: tracing: add trace event when a page is written\n\nAdd a trace event for when page reclaim queues a page for IO and records\nwhether it is synchronous or asynchronous.  Excessive synchronous IO for a\nprocess can result in noticeable stalls during direct reclaim.  Excessive\nIO from page reclaim may indicate that the system is seriously under\nprovisioned for the amount of dirty pages that exist.\n\nSigned-off-by: Mel Gorman \u003cmel@csn.ul.ie\u003e\nAcked-by: Rik van Riel \u003criel@redhat.com\u003e\nAcked-by: Larry Woodman \u003clwoodman@redhat.com\u003e\nCc: Dave Chinner \u003cdavid@fromorbit.com\u003e\nCc: Chris Mason \u003cchris.mason@oracle.com\u003e\nCc: Nick Piggin \u003cnpiggin@suse.de\u003e\nCc: Rik van Riel \u003criel@redhat.com\u003e\nCc: Johannes Weiner \u003channes@cmpxchg.org\u003e\nCc: Christoph Hellwig \u003chch@infradead.org\u003e\nCc: KAMEZAWA Hiroyuki \u003ckamezawa.hiroyu@jp.fujitsu.com\u003e\nCc: KOSAKI Motohiro \u003ckosaki.motohiro@jp.fujitsu.com\u003e\nCc: Andrea Arcangeli \u003caarcange@redhat.com\u003e\nCc: Michael Rubin \u003cmrubin@google.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "a8a94d151521b248727c1f88756174e15260815a",
      "tree": "81ea18e9c52f6260f9b52b16e592cc89bfd9d260",
      "parents": [
        "33906bc5c87b50028364405ec425de9638afc719"
      ],
      "author": {
        "name": "Mel Gorman",
        "email": "mel@csn.ul.ie",
        "time": "Mon Aug 09 17:19:17 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Aug 09 20:44:59 2010 -0700"
      },
      "message": "vmscan: tracing: add trace events for LRU page isolation\n\nAdd an event for when pages are isolated en-masse from the LRU lists.\nThis event augments the information available on LRU traffic and can be\nused to evaluate lumpy reclaim.\n\n[akpm@linux-foundation.org: coding-style fixes]\nSigned-off-by: Mel Gorman \u003cmel@csn.ul.ie\u003e\nAcked-by: Rik van Riel \u003criel@redhat.com\u003e\nAcked-by: Larry Woodman \u003clwoodman@redhat.com\u003e\nCc: Dave Chinner \u003cdavid@fromorbit.com\u003e\nCc: Chris Mason \u003cchris.mason@oracle.com\u003e\nCc: Nick Piggin \u003cnpiggin@suse.de\u003e\nCc: Rik van Riel \u003criel@redhat.com\u003e\nCc: Johannes Weiner \u003channes@cmpxchg.org\u003e\nCc: Christoph Hellwig \u003chch@infradead.org\u003e\nCc: KAMEZAWA Hiroyuki \u003ckamezawa.hiroyu@jp.fujitsu.com\u003e\nCc: KOSAKI Motohiro \u003ckosaki.motohiro@jp.fujitsu.com\u003e\nCc: Andrea Arcangeli \u003caarcange@redhat.com\u003e\nCc: Michael Rubin \u003cmrubin@google.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "33906bc5c87b50028364405ec425de9638afc719",
      "tree": "d5d6f431bd517a4a914972f3ce968dc99de73694",
      "parents": [
        "c6a8a8c589b53f90854a07db3b5806ce111e826b"
      ],
      "author": {
        "name": "Mel Gorman",
        "email": "mel@csn.ul.ie",
        "time": "Mon Aug 09 17:19:16 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Aug 09 20:44:59 2010 -0700"
      },
      "message": "vmscan: tracing: add trace events for kswapd wakeup, sleeping and direct reclaim\n\nAdd two trace events for kswapd waking up and going asleep for the\npurposes of tracking kswapd activity and two trace events for direct\nreclaim beginning and ending.  The information can be used to work out how\nmuch time a process or the system is spending on the reclamation of pages\nand in the case of direct reclaim, how many pages were reclaimed for that\nprocess.  High frequency triggering of these events could point to memory\npressure problems.\n\nSigned-off-by: Mel Gorman \u003cmel@csn.ul.ie\u003e\nAcked-by: Rik van Riel \u003criel@redhat.com\u003e\nAcked-by: Larry Woodman \u003clwoodman@redhat.com\u003e\nCc: Dave Chinner \u003cdavid@fromorbit.com\u003e\nCc: Chris Mason \u003cchris.mason@oracle.com\u003e\nCc: Nick Piggin \u003cnpiggin@suse.de\u003e\nCc: Rik van Riel \u003criel@redhat.com\u003e\nCc: Johannes Weiner \u003channes@cmpxchg.org\u003e\nCc: Christoph Hellwig \u003chch@infradead.org\u003e\nCc: KAMEZAWA Hiroyuki \u003ckamezawa.hiroyu@jp.fujitsu.com\u003e\nCc: KOSAKI Motohiro \u003ckosaki.motohiro@jp.fujitsu.com\u003e\nCc: Andrea Arcangeli \u003caarcange@redhat.com\u003e\nCc: Michael Rubin \u003cmrubin@google.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "c6a8a8c589b53f90854a07db3b5806ce111e826b",
      "tree": "c806b2f0d8f6f5b315f94daf864999b273d9530f",
      "parents": [
        "b00d3ea7cfe44e177ad5cd8141209d46478a7a51"
      ],
      "author": {
        "name": "KOSAKI Motohiro",
        "email": "kosaki.motohiro@jp.fujitsu.com",
        "time": "Mon Aug 09 17:19:14 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Aug 09 20:44:59 2010 -0700"
      },
      "message": "vmscan: recalculate lru_pages on each priority\n\nshrink_zones() need relatively long time and lru_pages can change\ndramatically during shrink_zones().  So lru_pages should be recalculated\nfor each priority.\n\nSigned-off-by: KOSAKI Motohiro \u003ckosaki.motohiro@jp.fujitsu.com\u003e\nAcked-by: Rik van Riel \u003criel@redhat.com\u003e\nReviewed-by: Minchan Kim \u003cminchan.kim@gmail.com\u003e\nAcked-by: Johannes Weiner \u003channes@cmpxchg.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "b00d3ea7cfe44e177ad5cd8141209d46478a7a51",
      "tree": "3508bd3106e6a83decd6e0db7521180e11d4754e",
      "parents": [
        "f446daaea9d4a420d16c606f755f3689dcb2d0ce"
      ],
      "author": {
        "name": "KOSAKI Motohiro",
        "email": "kosaki.motohiro@jp.fujitsu.com",
        "time": "Mon Aug 09 17:19:13 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Aug 09 20:44:59 2010 -0700"
      },
      "message": "vmscan: zone_reclaim don\u0027t call disable_swap_token()\n\nSwap token don\u0027t works when zone reclaim is enabled since it was born.\nBecause __zone_reclaim() always call disable_swap_token() unconditionally.\n\nThis kill swap token feature completely.  As far as I know, nobody want to\nthat.  Remove it.\n\nSigned-off-by: KOSAKI Motohiro \u003ckosaki.motohiro@jp.fujitsu.com\u003e\nAcked-by: Rik van Riel \u003criel@redhat.com\u003e\nReviewed-by: Minchan Kim \u003cminchan.kim@gmail.com\u003e\nCc: Christoph Lameter \u003ccl@linux-foundation.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "f446daaea9d4a420d16c606f755f3689dcb2d0ce",
      "tree": "be2afc18f79aa4ff9be245b0a036aa06185b5dc4",
      "parents": [
        "ebf8aa44beed48cd17893a83d92a4403e5f9d9e2"
      ],
      "author": {
        "name": "Jan Kara",
        "email": "jack@suse.cz",
        "time": "Mon Aug 09 17:19:12 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Aug 09 20:44:59 2010 -0700"
      },
      "message": "mm: implement writeback livelock avoidance using page tagging\n\nWe try to avoid livelocks of writeback when some steadily creates dirty\npages in a mapping we are writing out.  For memory-cleaning writeback,\nusing nr_to_write works reasonably well but we cannot really use it for\ndata integrity writeback.  This patch tries to solve the problem.\n\nThe idea is simple: Tag all pages that should be written back with a\nspecial tag (TOWRITE) in the radix tree.  This can be done rather quickly\nand thus livelocks should not happen in practice.  Then we start doing the\nhard work of locking pages and sending them to disk only for those pages\nthat have TOWRITE tag set.\n\nNote: Adding new radix tree tag grows radix tree node from 288 to 296\nbytes for 32-bit archs and from 552 to 560 bytes for 64-bit archs.\nHowever, the number of slab/slub items per page remains the same (13 and 7\nrespectively).\n\nSigned-off-by: Jan Kara \u003cjack@suse.cz\u003e\nCc: Dave Chinner \u003cdavid@fromorbit.com\u003e\nCc: Nick Piggin \u003cnickpiggin@yahoo.com.au\u003e\nCc: Chris Mason \u003cchris.mason@oracle.com\u003e\nCc: Theodore Ts\u0027o \u003ctytso@mit.edu\u003e\nCc: Jens Axboe \u003caxboe@kernel.dk\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "ebf8aa44beed48cd17893a83d92a4403e5f9d9e2",
      "tree": "03607aa1cdbbb7fda935edb28bb3ad06423852ac",
      "parents": [
        "44ab57a06ded284db6ccdefc6b76eddb1c34d7ed"
      ],
      "author": {
        "name": "Jan Kara",
        "email": "jack@suse.cz",
        "time": "Mon Aug 09 17:19:11 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Aug 09 20:44:59 2010 -0700"
      },
      "message": "radix-tree: omplement function radix_tree_range_tag_if_tagged\n\nImplement function for setting one tag if another tag is set for each item\nin given range.\n\nSigned-off-by: Jan Kara \u003cjack@suse.cz\u003e\nCc: Dave Chinner \u003cdavid@fromorbit.com\u003e\nCc: Nick Piggin \u003cnickpiggin@yahoo.com.au\u003e\nCc: Chris Mason \u003cchris.mason@oracle.com\u003e\nCc: Theodore Ts\u0027o \u003ctytso@mit.edu\u003e\nCc: Jens Axboe \u003caxboe@kernel.dk\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "44ab57a06ded284db6ccdefc6b76eddb1c34d7ed",
      "tree": "e757c1af6be102b90d8a989d6fcfacad93ff6b69",
      "parents": [
        "21d0d443cdc1658a8c1484fdcece4803f0f96d0e"
      ],
      "author": {
        "name": "Andrea Arcangeli",
        "email": "aarcange@redhat.com",
        "time": "Mon Aug 09 17:19:10 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Aug 09 20:44:59 2010 -0700"
      },
      "message": "rmap: add anon_vma bug checks\n\nVerify the refcounting doesn\u0027t go wrong, and resurrect the check in\n__page_check_anon_rmap as in old anon-vma code.\n\nSigned-off-by: Andrea Arcangeli \u003caarcange@redhat.com\u003e\nSigned-off-by: Rik van Riel \u003criel@redhat.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "21d0d443cdc1658a8c1484fdcece4803f0f96d0e",
      "tree": "1ee41c66f24972ed427ce43780cb53efca82dcaf",
      "parents": [
        "288468c334e98aacbb7e2fb8bde6bc1adcd55e05"
      ],
      "author": {
        "name": "Andrea Arcangeli",
        "email": "aarcange@redhat.com",
        "time": "Mon Aug 09 17:19:10 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Aug 09 20:44:59 2010 -0700"
      },
      "message": "rmap: resurrect page_address_in_vma anon_vma check\n\nWith root anon-vma it\u0027s trivial to keep doing the usual check as in\nold-anon-vma code.\n\nSigned-off-by: Andrea Arcangeli \u003caarcange@redhat.com\u003e\nSigned-off-by: Rik van Riel \u003criel@redhat.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "288468c334e98aacbb7e2fb8bde6bc1adcd55e05",
      "tree": "f64cfebd7fedfd4e53fd5d4474048d5475a339b9",
      "parents": [
        "ba6f0ff3981e6263ab81ac512f04cca55b85ec81"
      ],
      "author": {
        "name": "Andrea Arcangeli",
        "email": "aarcange@redhat.com",
        "time": "Mon Aug 09 17:19:09 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Aug 09 20:44:58 2010 -0700"
      },
      "message": "rmap: always use anon_vma root pointer\n\nAlways use anon_vma-\u003eroot pointer instead of anon_vma_chain.prev.\n\nAlso optimize the map-paths, if a mapping is already established no need\nto overwrite it with root anon-vma list, we can keep the more finegrined\nanon-vma and skip the overwrite: see the PageAnon check in !exclusive\ncase.  This is also the optimization that hidden the ksm bug as this tends\nto make ksm_might_need_to_copy skip the copy, but only the proper fix to\nksm_might_need_to_copy guarantees not triggering the ksm bug unless ksm is\nin use.  this is an optimization only...\n\n[akpm@linux-foundation.org: coding-style fixes]\nSigned-off-by: Andrea Arcangeli \u003caarcange@redhat.com\u003e\nSigned-off-by: Rik van Riel \u003criel@redhat.com\u003e\n[kamezawa.hiroyu@jp.fujitsu.com: fix false positive BUG_ON in __page_set_anon_rmap]\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "ba6f0ff3981e6263ab81ac512f04cca55b85ec81",
      "tree": "0052d4551de72731be503c8d78949a330ba865ed",
      "parents": [
        "26ba0cb63cb8df4e45394227f33c938920b11b88"
      ],
      "author": {
        "name": "Andrea Arcangeli",
        "email": "aarcange@redhat.com",
        "time": "Mon Aug 09 17:19:08 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Aug 09 20:44:58 2010 -0700"
      },
      "message": "ksm: fix ksm swapin time optimization\n\nThe new anon-vma code, was suboptimal and it lead to erratic invocation of\nksm_does_need_to_copy.  That leads to host hangs or guest vnc lockup, or\nweird behavior.  It\u0027s unclear why ksm_does_need_to_copy is unstable but\nthe point is that when KSM is not in use, ksm_does_need_to_copy must never\nrun or we bounce pages for no good reason.  I suspect the same hangs will\nhappen with KVM swaps.  But this at least fixes the regression in the\nnew-anon-vma code and it only let KSM bugs triggers when KSM is in use.\n\nThe code in do_swap_page likely doesn\u0027t cope well with a not-swapcache,\nespecially the memcg code.\n\nSigned-off-by: Andrea Arcangeli \u003caarcange@redhat.com\u003e\nSigned-off-by: Rik van Riel \u003criel@redhat.com\u003e\nCc: Izik Eidus \u003cieidus@yahoo.com\u003e\nCc: Avi Kivity \u003cavi@redhat.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "26ba0cb63cb8df4e45394227f33c938920b11b88",
      "tree": "131b785dc7fb0102ee4fc4f56a1ae948b9861501",
      "parents": [
        "5e549e989f94de0596b8149a90e0088e7d4d7c97"
      ],
      "author": {
        "name": "Andrea Arcangeli",
        "email": "aarcange@redhat.com",
        "time": "Mon Aug 09 17:19:08 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Aug 09 20:44:58 2010 -0700"
      },
      "message": "rmap: always add new vmas at the end\n\nMake sure to always add new VMAs at the end of the list.  This is\nimportant so rmap_walk does not miss a VMA that was created during the\nrmap_walk.\n\nThe old code got this right most of the time due to luck, but was buggy\nwhen anon_vma_prepare reused a mergeable anon_vma.\n\nSigned-off-by: Andrea Arcangeli \u003caarcange@redhat.com\u003e\nSigned-off-by: Rik van Riel \u003criel@redhat.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    }
  ],
  "next": "5e549e989f94de0596b8149a90e0088e7d4d7c97"
}
