)]}'
{
  "log": [
    {
      "commit": "9d6bf5aa177ee7ffdcee2a590ef8a1bf9e8ade87",
      "tree": "563a7b08688ba07ebdbdfc5e1d13ab89e2ed8062",
      "parents": [
        "0c2fd1bfb155947a821fdaeb3c46aa1cfa20ad64"
      ],
      "author": {
        "name": "Akinobu Mita",
        "email": "akinobu.mita@gmail.com",
        "time": "Mon Jul 25 17:13:38 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jul 25 20:57:17 2011 -0700"
      },
      "message": "reiserfs: use hweight_long()\n\nUse hweight_long() to count free bits in the bitmap.\n\nSigned-off-by: 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": "0c2fd1bfb155947a821fdaeb3c46aa1cfa20ad64",
      "tree": "2826372d34e387dad42dffefb96658ed2d9e28f9",
      "parents": [
        "29df8d8f8702f0f53c1375015f09f04bc8d023c1"
      ],
      "author": {
        "name": "Akinobu Mita",
        "email": "akinobu.mita@gmail.com",
        "time": "Mon Jul 25 17:13:37 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jul 25 20:57:17 2011 -0700"
      },
      "message": "reiserfs: use proper little-endian bitops\n\nUsing __test_and_{set,clear}_bit_le() with ignoring its return value can\nbe replaced with __{set,clear}_bit_le().\n\nThis introduces reiserfs_{set,clear}_le_bit for __{set,clear}_bit_le and\ndoes the above change with them.\n\nSigned-off-by: 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": "29df8d8f8702f0f53c1375015f09f04bc8d023c1",
      "tree": "32a7f6d0190bfdbe602bb969192010c91a0fbf6a",
      "parents": [
        "e57ee01750c4954fd0b5e3c6109cd4b870880eb9"
      ],
      "author": {
        "name": "Witold Szczeponik",
        "email": "Witold.Szczeponik@gmx.net",
        "time": "Mon Jul 25 17:13:36 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jul 25 20:57:17 2011 -0700"
      },
      "message": "pnpacpi: register disabled resources\n\nWhen parsing PnP ACPI resource structures, it may happen that some of\nthe resources are disabled (in which case \"the size\" of the resource\nequals zero).\n\nThe current solution is to skip these resources completely - with the\nunfortunate side effect that they are not registered despite the fact\nthat they exist, after all.  (The downside of this approach is that\nthese resources cannot be used as templates for setting the actual\ndevice\u0027s resources because they are missing from the template.) The\nkernel\u0027s APM implementation does not suffer from this problem and\nregisters all resources regardless of \"their size\".\n\nThis patch fixes a problem with (at least) the vintage IBM ThinkPad 600E\n(and most likely also with the 600, 600X, and 770X which have a very\nsimilar layout) where some of its PnP devices support options where\neither an IRQ, a DMA, or an IO port is disabled.  Without this patch,\nthe devices can not be configured using the\n\"/sys/bus/pnp/devices/*/resources\" interface.\n\nThe manipulation of these resources is important because the 600E has\nvery demanding requirements.  For instance, the number of IRQs is not\nsufficient to support all devices of the 600E.  Fortunately, some of the\ndevices, like the sound card\u0027s MPU-401 UART, can be configured to not\nuse any IRQ, hence freeing an IRQ for a device that requires one.\n(Still, the device\u0027s \"ResourceTemplate\" requires an IRQ resource\ndescriptor which cannot be created if the resource has not been\nregistered in the first place.)\n\nAs an example, the dependent sets of the 600E\u0027s CSC0103 device (the\nMPU-401 UART) are listed, with the patch applied, as:\n\n  Dependent: 00 - Priority preferred\n    port 0x300-0x330, align 0xf, size 0x4, 16-bit address decoding\n    irq \u003cnone\u003e High-Edge\n  Dependent: 01 - Priority acceptable\n    port 0x300-0x330, align 0xf, size 0x4, 16-bit address decoding\n    irq 5,7,2/9,10,11,15 High-Edge\n\n(The same result is obtained when PNPBIOS is used instead of PnP ACPI.)\nWithout the patch, the IRQ resource in the preferred option is not\nlisted at all:\n\n  Dependent: 00 - Priority preferred\n    port 0x300-0x330, align 0xf, size 0x4, 16-bit address decoding\n  Dependent: 01 - Priority acceptable\n    port 0x300-0x330, align 0xf, size 0x4, 16-bit address decoding\n    irq 5,7,2/9,10,11,15 High-Edge\n\nAnd in fact, the 600E\u0027s DSDT lists the disabled IRQ as an option, as can\nbe seen from the following excerpt from the DSDT:\n\n\tName (_PRS, ResourceTemplate ()\n\t{\n        StartDependentFn (0x00, 0x00)\n        {\n            IO (Decode16, 0x0300, 0x0330, 0x10, 0x04)\n            IRQNoFlags () {}\n        }\n        StartDependentFn (0x01, 0x00)\n        {\n            IO (Decode16, 0x0300, 0x0330, 0x10, 0x04)\n            IRQNoFlags () {5,7,9,10,11,15}\n        }\n        EndDependentFn ()\n\t})\n\nWith this patch applied, a user space program - or maybe even the kernel\n- can allocate all devices\u0027 resources optimally.  For the 600E, this\nmeans to find optimal resources for (at least) the serial port, the\nparallel port, the infrared port, the MWAVE modem, the sound card, and\nthe MPU-401 UART.\n\nThe patch applies the idea to register disabled resources to all types\nof resources, not just to IRQs, DMAs, and IO ports.  At the same time,\nit mimics the behavior of the \"pnp_assign_xxx\" functions from\n\"drivers/pnp/manager.c\" where resources with \"no size\" are considered\ndisabled.\n\nNo regressions were observed on hardware that does not require this\npatch.\n\nThe patch is applied against 2.6.39.\n\nNB: The kernel\u0027s current PnP interface does not allow for disabling individual\nresources using the \"/sys/bus/pnp/devices/$device/resources\" file.  Assuming\nthis could be done, a device could be configured to use a disabled resource\nusing a simple series of calls:\n\n  echo disable \u003e /sys/bus/pnp/devices/$device/resources\n  echo clear \u003e /sys/bus/pnp/devices/$device/resources\n  echo set irq disabled \u003e /sys/bus/pnp/devices/$device/resources\n  echo fill \u003e /sys/bus/pnp/devices/$device/resources\n  echo activate \u003e /sys/bus/pnp/devices/$device/resources\n\nThis patch addresses only the parsing of PnP ACPI devices.\n\nChangeLog (v1 -\u003e v2):\n - extend patch description\n - fix typo in patch itself\n\nSigned-off-by: Witold Szczeponik \u003cWitold.Szczeponik@gmx.net\u003e\nCc: Len Brown \u003clenb@kernel.org\u003e\nCc: Adam Belay \u003cabelay@mit.edu\u003e\nCc: Bjorn Helgaas \u003cbjorn.helgaas@hp.com\u003e\nCc: Bjorn Helgaas \u003cbhelgaas@google.com\u003e\nCc: Henrique de Moraes Holschuh \u003chmh@hmh.eng.br\u003e\nCc: Matthew Garrett \u003cmjg@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": "e57ee01750c4954fd0b5e3c6109cd4b870880eb9",
      "tree": "73356d5604cc10ca8e6e86616276da4531984004",
      "parents": [
        "8f6b0dd369868559b384a66aa17512ae5aae2d9b"
      ],
      "author": {
        "name": "Uwe Kleine-König",
        "email": "u.kleine-koenig@pengutronix.de",
        "time": "Mon Jul 25 17:13:34 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jul 25 20:57:17 2011 -0700"
      },
      "message": "drivers/rtc/rtc-tegra.c: properly initialize spinlock\n\nUsing __SPIN_LOCK_UNLOCKED for a dynamically allocated lock is wrong and\nbreaks the build with PREEMPT_RT_FULL.\n\nSigned-off-by: Uwe Kleine-König \u003cu.kleine-koenig@pengutronix.de\u003e\nCc: Andrew Chew \u003cachew@nvidia.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": "8f6b0dd369868559b384a66aa17512ae5aae2d9b",
      "tree": "b98bcc40d158d96fe30af93e5bdede28fbeac77d",
      "parents": [
        "9a9a54ad7aa2c7420c96c6fd33538f55d81775cb"
      ],
      "author": {
        "name": "Jesper Juhl",
        "email": "jj@chaosbits.net",
        "time": "Mon Jul 25 17:13:34 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jul 25 20:57:17 2011 -0700"
      },
      "message": "drivers/rtc/rtc-twl.c: check return value of twl_rtc_write_u8() in twl_rtc_set_time()\n\nWe forget to save the return value of the call to\ntwl_rtc_write_u8(save_control, REG_RTC_CTRL_REG); in \u0027ret\u0027, making the\ntest of \u0027ret \u003c 0\u0027 dead code since \u0027ret\u0027 then couldn\u0027t possibly have\nchanged since the last test just a few lines above.  It also makes us not\ndetect failures from that specific twl_rtc_write_u8() call.\n\nSigned-off-by: Jesper Juhl \u003cjj@chaosbits.net\u003e\nCc: Alessandro Zummo \u003ca.zummo@towertech.it\u003e\nCc: Alexandre Rusev \u003csource@mvista.com\u003e\nCc: \"George G. Davis\" \u003cgdavis@mvista.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "9a9a54ad7aa2c7420c96c6fd33538f55d81775cb",
      "tree": "4ffc127f3ea38c210f37d75b8eb41d82cd4398ce",
      "parents": [
        "cefe4fbbaab8e20a7581a187db82d33c1e3320c0"
      ],
      "author": {
        "name": "Anirudh Ghayal",
        "email": "aghayal@codeaurora.org",
        "time": "Mon Jul 25 17:13:33 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jul 25 20:57:17 2011 -0700"
      },
      "message": "drivers/rtc: add support for Qualcomm PMIC8xxx RTC\n\nAdd support for PMIC8xxx based RTC.  PMIC8xxx is Qualcomm\u0027s power\nmanagement IC that internally houses an RTC module.  This driver\ncommunicates with the PMIC module over SSBI bus.\n\n[akpm@linux-foundation.org: cosmetic tweaks]\nAcked-by: Wan ZongShun \u003cmcuos.com@gmail.com\u003e\nReviewed-by: Stephen Boyd \u003csboyd@codeaurora.org\u003e\nSigned-off-by: Anirudh Ghayal \u003caghayal@codeaurora.org\u003e\nSigned-off-by: Ashay Jaiswal \u003cashayj@codeaurora.org\u003e\nCc: Samuel Ortiz \u003csameo@linux.intel.com\u003e\nCc: Wan ZongShun \u003cmcuos.com@gmail.com\u003e\nCc: Alessandro Zummo \u003ca.zummo@towertech.it\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "cefe4fbbaab8e20a7581a187db82d33c1e3320c0",
      "tree": "a40203a65c87c09136a38d3927c643a119364f7f",
      "parents": [
        "955dbea3c7133d3ccfaa79c7eba1244c1de42865"
      ],
      "author": {
        "name": "Donggeun Kim",
        "email": "dg77.kim@samsung.com",
        "time": "Mon Jul 25 17:13:32 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jul 25 20:57:17 2011 -0700"
      },
      "message": "drivers/rtc/rtc-s3c.c: support clock gating\n\nAdd support for clock gating.  Power consumption can be reduced by setting\nrtc_clk disabled state except for when RTC related registers are accessed.\n\nSigned-off-by: Donggeun Kim \u003cdg77.kim@samsung.com\u003e\nSigned-off-by: MyungJoo Ham \u003cmyungjoo.ham@samsung.com\u003e\nSigned-off-by: KyungMin Park \u003ckyungmin.park@samsung.com\u003e\nCc: Alessandro Zummo \u003ca.zummo@towertech.it\u003e\nCc: Ben Dooks \u003cben@fluff.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "955dbea3c7133d3ccfaa79c7eba1244c1de42865",
      "tree": "43c62ac01d5b620553b199a6b6a1d8c125aa8975",
      "parents": [
        "7afe1845dd1e7c90828c942daed7e57ffa7c38d6"
      ],
      "author": {
        "name": "Dmitry Eremin-Solenikov",
        "email": "dbaryshkov@gmail.com",
        "time": "Mon Jul 25 17:13:30 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jul 25 20:57:17 2011 -0700"
      },
      "message": "drivers/rtc/rtc-mpc5121.c: add support for RTC on MPC5200\n\nMPC5200B contains a limited version of RTC from MPC5121.  Add support for\nthe RTC on that CPU.\n\nSigned-off-by: Dmitry Eremin-Solenikov \u003cdbaryshkov@gmail.com\u003e\nCc: Alessandro Zummo \u003ca.zummo@towertech.it\u003e\nCc: Anatolij Gustschin \u003cagust@denx.de\u003e\nCc: Grant Likely \u003cgrant.likely@secretlab.ca\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "7afe1845dd1e7c90828c942daed7e57ffa7c38d6",
      "tree": "dabdded21b9d03cf04719b684e393929378f6c8d",
      "parents": [
        "469dded1839105cfbfc265376e23e24dbc48d2a7"
      ],
      "author": {
        "name": "Sameer Nanda",
        "email": "snanda@chromium.org",
        "time": "Mon Jul 25 17:13:29 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jul 25 20:57:17 2011 -0700"
      },
      "message": "init: skip calibration delay if previously done\n\nFor each CPU, do the calibration delay only once.  For subsequent calls,\nuse the cached per-CPU value of loops_per_jiffy.\n\nThis saves about 200ms of resume time on dual core Intel Atom N5xx based\nsystems.  This helps bring down the kernel resume time on such systems\nfrom about 500ms to about 300ms.\n\n[akpm@linux-foundation.org: make cpu_loops_per_jiffy static]\n[akpm@linux-foundation.org: clean up message text]\n[akpm@linux-foundation.org: fix things up after upstream rmk changes]\nSigned-off-by: Sameer Nanda \u003csnanda@chromium.org\u003e\nCc: Phil Carmody \u003cext-phil.2.carmody@nokia.com\u003e\nCc: Andrew Worsley \u003camworsley@gmail.com\u003e\nCc: David Daney \u003cddaney@caviumnetworks.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "469dded1839105cfbfc265376e23e24dbc48d2a7",
      "tree": "c020b0896fc26b49d42a8ebe919df7546aa7fceb",
      "parents": [
        "06b4501e88ad10f02849a3f9d7408ed6ae15a53f"
      ],
      "author": {
        "name": "Anatolij Gustschin",
        "email": "agust@denx.de",
        "time": "Mon Jul 25 17:13:29 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jul 25 20:57:16 2011 -0700"
      },
      "message": "misc/eeprom: add eeprom access driver for digsy_mtc board\n\nBoth displays on digsy_mtc board obtain their configuration from microwire\nEEPROMs which are connected to the SoC over GPIO lines.  We need an easy\nway to access the EEPROMs to write the needed display configuration or to\nread out the currently programmed configuration.  The generic\neeprom_93xx46 SPI driver added by previous patch allows EEPROM access over\nsysfs.  Using the simple driver added by this patch we provide used GPIO\ninterface and access control description on the board for generic\neeprom_93xx46 driver and spi_gpio driver.\n\nSigned-off-by: Anatolij Gustschin \u003cagust@denx.de\u003e\nCc: Jonathan Cameron \u003cjic23@cam.ac.uk\u003e\nCc: Grant Likely \u003cgrant.likely@secretlab.ca\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "06b4501e88ad10f02849a3f9d7408ed6ae15a53f",
      "tree": "641a1c6044582b393ad4d877f6a9924cc495bfc0",
      "parents": [
        "6e60c02e9d9427f59842192bdb123cbeaf8bc9a0"
      ],
      "author": {
        "name": "Anatolij Gustschin",
        "email": "agust@denx.de",
        "time": "Mon Jul 25 17:13:27 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jul 25 20:57:16 2011 -0700"
      },
      "message": "misc/eeprom: add driver for microwire 93xx46 EEPROMs\n\nAdd EEPROM driver for 93xx46 chips.  It can also be used with spi_gpio\ndriver to access 93xx46 EEPROMs connected over GPIO lines.  This driver\nsupports read/write/erase access to the EEPROM chips over sysfs files.\n\n[rdunlap@xenotime.net: fix printk format]\nSigned-off-by: Anatolij Gustschin \u003cagust@denx.de\u003e\nCc: Jonathan Cameron \u003cjic23@cam.ac.uk\u003e\nCc: Grant Likely \u003cgrant.likely@secretlab.ca\u003e\nSigned-off-by: Randy Dunlap \u003crdunlap@xenotime.net\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "6e60c02e9d9427f59842192bdb123cbeaf8bc9a0",
      "tree": "6cd57dfec304a5cb049173dac6050bb0f13e6876",
      "parents": [
        "34d99219726ff4d3425b360d1e8d081627a73a00"
      ],
      "author": {
        "name": "Joe Perches",
        "email": "joe@perches.com",
        "time": "Mon Jul 25 17:13:27 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jul 25 20:57:16 2011 -0700"
      },
      "message": "checkpatch.pl: update $logFunctions\n\nPrevious behavior allowed only alphabetic prefixes like pr_info to exceed\nthe 80 column line length limit.\n\nath6kl wants to add a digit into the prefix, so allow numbers as well as\ndigits in the \u003cprefix\u003e_\u003clevel\u003e printks.\n\n\u003cprefix\u003e_\u003clevel\u003e_ratelimited and \u003cprefix\u003e_\u003clevel\u003e_once and WARN_RATELIMIT\nand WARN_ONCE may now exceed 80 cols.\n\nAdd missing \u003cprefix\u003e_printk type for completeness.\n\nSigned-off-by: Joe Perches \u003cjoe@perches.com\u003e\nCc: Andy Whitcroft \u003capw@canonical.com\u003e\nCc: Kalle Valo \u003ckvalo@qca.qualcomm.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "34d99219726ff4d3425b360d1e8d081627a73a00",
      "tree": "30d9d2c477c984d7be0aa13dc93c19189649e7f1",
      "parents": [
        "000d1cc1829f938c87402fc2fd4bb5e8daed6b52"
      ],
      "author": {
        "name": "Joe Perches",
        "email": "joe@perches.com",
        "time": "Mon Jul 25 17:13:26 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jul 25 20:57:16 2011 -0700"
      },
      "message": "checkpatch: make utf-8 test --strict\n\nSome patches are sent in using ISO-8859 or even Windows codepage 1252.\n\nMake checkpatch accept these by default and only emit the \"Invalid UTF-8\"\nmessage when using --strict.\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": "000d1cc1829f938c87402fc2fd4bb5e8daed6b52",
      "tree": "b893c94009680dc51556ba0838815b7c9f9b6236",
      "parents": [
        "39b7e2878e783af027ddd3530f7a0abec330905d"
      ],
      "author": {
        "name": "Joe Perches",
        "email": "joe@perches.com",
        "time": "Mon Jul 25 17:13:25 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jul 25 20:57:16 2011 -0700"
      },
      "message": "checkpatch.pl: add ability to ignore various messages\n\nSome users would like the ability to not emit some of the messages that\ncheckpatch produces.  This can make it easier to use checkpatch in other\nprojects and integrate into scm hook scripts.\n\nAdd command line option to \"--ignore\" various message types.  Add option\n--show-types to emit the \"type\" of each message.  Categorize all ERROR,\nWARN and CHK messages with types.\n\nAdd optional .checkpatch.conf file to store default options.\n3 paths are searched for .checkpatch.conf\n    .             customized per-tree configurations\n    $HOME         user global configuration when per-tree configs don\u0027t exist\n    ./scripts     lk defaults to override script\nThe .conf file can contain any valid command-line argument and\nthe contents are prepended to any additional command line arguments.\nMultiple lines may be used, blank lines are ignored, # is a comment.\n\nUpdate \"false positive\" output for readability.\n\nUpdate version to 0.32\n\nSigned-off-by: Joe Perches \u003cjoe@perches.com\u003e\nAcked-by: Mike Frysinger \u003cvapier@gentoo.org\u003e\nCc: Andy Whitcroft \u003capw@canonical.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "39b7e2878e783af027ddd3530f7a0abec330905d",
      "tree": "f8b5adf97fc9806310c560e12463d1cb56c20b2f",
      "parents": [
        "2011247550c1b903a9ecd68f6eb3e9e7b7b07f52"
      ],
      "author": {
        "name": "Joe Perches",
        "email": "joe@perches.com",
        "time": "Mon Jul 25 17:13:24 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jul 25 20:57:16 2011 -0700"
      },
      "message": "checkpatch: add a \"prefer __aligned\" check\n\nPrefer the use of __aligned(size) over __attribute__((__aligned___(size)))\n\nLink: http://lkml.kernel.org/r/20110609094526.1571774c.akpm@linux-foundation.org\n\nSuggested-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\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": "2011247550c1b903a9ecd68f6eb3e9e7b7b07f52",
      "tree": "afd2ca6683f7225d29df77fb4c19b81211c05a57",
      "parents": [
        "165e72a6c374ed03c57d03c88406d32745e1add2"
      ],
      "author": {
        "name": "Joe Perches",
        "email": "joe@perches.com",
        "time": "Mon Jul 25 17:13:23 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jul 25 20:57:16 2011 -0700"
      },
      "message": "checkpatch: validate signature styles and To: and Cc: lines\n\nSignatures have many forms and can sometimes cause problems if not in the\ncorrect format when using git send-email or quilt.\n\nTry to verify the signature tags and email addresses to use the generally\naccepted \"Signed-off-by: Full Name \u003cemail@domain.tld\u003e\" form.\n\nOriginal idea by Anish Kumar \u003canish198519851985@gmail.com\u003e\n\nSigned-off-by: Joe Perches \u003cjoe@perches.com\u003e\nCc: Anish Kumar \u003canish198519851985@gmail.com\u003e\nCc: Nick Bowler \u003cnbowler@elliptictech.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "165e72a6c374ed03c57d03c88406d32745e1add2",
      "tree": "6ca776305899b6187c8ecb7560e2e07a524cd163",
      "parents": [
        "7d2367af0b09f8028dc5c1b1919bb82d141c2afb"
      ],
      "author": {
        "name": "Sven Eckelmann",
        "email": "sven@narfation.org",
        "time": "Mon Jul 25 17:13:23 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jul 25 20:57:16 2011 -0700"
      },
      "message": "checkpatch: add __rcu as a sparse modifier\n\nFix \"need consistent spacing around \u0027*\u0027\" error after a __rcu sparse\nannotation which was caused by the missing __rcu entry in the\ncheckpatch.pl internal list of sparse keywords.\n\nSigned-off-by: Sven Eckelmann \u003csven@narfation.org\u003e\nCc: Andy Whitcroft \u003capw@canonical.com\u003e\nCc: 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": "7d2367af0b09f8028dc5c1b1919bb82d141c2afb",
      "tree": "e2645027cae1b716443e2659bda5364cb101d4e0",
      "parents": [
        "27c46a2546c75c6814562e85b751e3d64c188ad5"
      ],
      "author": {
        "name": "Joe Perches",
        "email": "joe@perches.com",
        "time": "Mon Jul 25 17:13:22 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jul 25 20:57:16 2011 -0700"
      },
      "message": "checkpatch: suggest using min_t or max_t\n\nA common issue with min() or max() is using a cast on one or both of the\narguments when using min_t/max_t could be better.\n\nAdd cast detection to uses of min/max and suggest an appropriate use of\nmin_t or max_t instead.\n\nCaveat:  This only works for min() or max() on a single line.\n         It does not find min() or max() split across multiple lines.\n\nThis does find:\n\tmin((u32)foo, bar);\nBut it does not find:\n\tmax((unsigned long)foo,\n\t    bar);\n\nSuggested-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\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": "27c46a2546c75c6814562e85b751e3d64c188ad5",
      "tree": "6f3b6785e8347d5b5e47675352a83aea0892d5bf",
      "parents": [
        "75fb8f269305fc066c4c6ec6e7232df0c92f434d"
      ],
      "author": {
        "name": "Randy Dunlap",
        "email": "rdunlap@xenotime.net",
        "time": "Mon Jul 25 17:13:21 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jul 25 20:57:16 2011 -0700"
      },
      "message": "drivers/firmware/sigma.c needs MODULE_LICENSE\n\nFix module tainting message:\n\n  sigma: module license \u0027unspecified\u0027 taints kernel.\n\nSigned-off-by: Randy Dunlap \u003crdunlap@xenotime.net\u003e\nAcked-by: Mike Frysinger \u003cvapier@gentoo.org\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": "75fb8f269305fc066c4c6ec6e7232df0c92f434d",
      "tree": "be2f806f817368cb52270baee3f1d77005e3ca8a",
      "parents": [
        "72d39508e43689b9346dfc956fad5e94a8911886"
      ],
      "author": {
        "name": "Andy Shevchenko",
        "email": "andriy.shevchenko@linux.intel.com",
        "time": "Mon Jul 25 17:13:20 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jul 25 20:57:16 2011 -0700"
      },
      "message": "lib: make _tolower() public\n\nThis function is required by *printf and kstrto* functions that are\nlocated in the different modules.  This patch makes _tolower() public.\nHowever, it\u0027s good idea to not use the helper outside of mentioned\nfunctions.\n\n[akpm@linux-foundation.org: coding-style fixes]\nSigned-off-by: Andy Shevchenko \u003candriy.shevchenko@linux.intel.com\u003e\nAcked-by: Alexey Dobriyan \u003cadobriyan@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": "72d39508e43689b9346dfc956fad5e94a8911886",
      "tree": "f0322bf00a37f32c8aa2c3ad47686b65742b9be4",
      "parents": [
        "b09628ef56352a77bcf38e314869a8205c21a756"
      ],
      "author": {
        "name": "H Hartley Sweeten",
        "email": "hartleys@visionengravers.com",
        "time": "Mon Jul 25 17:13:20 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jul 25 20:57:15 2011 -0700"
      },
      "message": "lib/lcm.c: quiet sparse noise\n\nThe symbol \u0027lcm\u0027 is exported to the kernel (EXPORT_SYMBOL_GPL).\nPick up it\u0027s definition in \u003clinux/lcm.h\u003e to quiet the sparse noise:\n\n  warning: symbol \u0027lcm\u0027 was not declared. Should it be static?\n\nSigned-off-by: H Hartley Sweeten \u003chsweeten@visionengravers.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "b09628ef56352a77bcf38e314869a8205c21a756",
      "tree": "e2820312f7710203236bf57901fd42110f3fa489",
      "parents": [
        "40b1445b1b6afc1ddac6ac31f4533277a0fb75dc"
      ],
      "author": {
        "name": "Linus Walleij",
        "email": "linus.walleij@stericsson.com",
        "time": "Mon Jul 25 17:13:18 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jul 25 20:57:15 2011 -0700"
      },
      "message": "mach-ux500: add lm3530 ALS platform data for U5500\n\nFrom: Shreshtha Kumar Sahu \u003cshreshthakumar.sahu@stericsson.com\u003e\n\nplatform data for simple backlight driver for LM3530\nin the u5500 platform\n\nSigned-off-by: Shreshtha Kumar Sahu \u003cshreshthakumar.sahu@stericsson.com\u003e\nSigned-off-by: Linus Walleij \u003clinus.walleij@linaro.org\u003e\nCc: Richard Purdie \u003crpurdie@rpsys.net\u003e\nCc: Lee Jones \u003clee.jones@linaro.org\u003e\nCc: Russell King \u003clinux@arm.linux.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": "40b1445b1b6afc1ddac6ac31f4533277a0fb75dc",
      "tree": "cdf04e397edef0b2913acf862a3bc3f293894e8c",
      "parents": [
        "2504f6da50f4d9656cad353798bf07657ec12eea"
      ],
      "author": {
        "name": "Shreshtha Kumar Sahu",
        "email": "shreshthakumar.sahu@stericsson.com",
        "time": "Mon Jul 25 17:13:17 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jul 25 20:57:15 2011 -0700"
      },
      "message": "arch/arm/mach-ux500/board-u5500.c: calibrate ALS input voltage\n\nProvide the support for auto calibration of ALS Zone boundaries based on\nmin/max ALS input voltage.\n\nSigned-off-by: Shreshtha Kumar Sahu \u003cshreshthakumar.sahu@stericsson.com\u003e\nSigned-off-by: Linus Walleij \u003clinus.walleij@linaro.org\u003e\nCc: Richard Purdie \u003crpurdie@rpsys.net\u003e\nCc: Lee Jones \u003clee.jones@linaro.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "2504f6da50f4d9656cad353798bf07657ec12eea",
      "tree": "4c6500820f235baa36d39c9d49004b6d9ffe88f5",
      "parents": [
        "e179840ba88c342d215631356cbfe4e62c9f175b"
      ],
      "author": {
        "name": "Axel Lin",
        "email": "axel.lin@gmail.com",
        "time": "Mon Jul 25 17:13:16 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jul 25 20:57:15 2011 -0700"
      },
      "message": "drivers/leds/leds-netxbig: make LEDS_NETXBIG depend on LEDS_CLASS\n\nWe call led_classdev_register/led_classdev_unregister in\ncreate_netxbig_led/delete_netxbig_led, thus make LEDS_NETXBIG depend on\nLEDS_CLASS.\n\nThis patch fixes below build error if LEDS_CLASS is not configured.\n\n    LD      .tmp_vmlinux1\n  drivers/built-in.o: In function `create_netxbig_led\u0027:\n  drivers/leds/leds-netxbig.c:350: undefined reference to `led_classdev_register\u0027\n  drivers/leds/leds-netxbig.c:361: undefined reference to `led_classdev_unregister\u0027\n  drivers/built-in.o: In function `delete_netxbig_led\u0027:\n  drivers/leds/leds-netxbig.c:313: undefined reference to `led_classdev_unregister\u0027\n\nSigned-off-by: Axel Lin \u003caxel.lin@gmail.com\u003e\nCc: Richard Purdie \u003crpurdie@rpsys.net\u003e\nAcked-by: Simon Guinot \u003csguinot@lacie.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "e179840ba88c342d215631356cbfe4e62c9f175b",
      "tree": "c17a1c242a4b2bcbe825d8ef48aaa131791cfe85",
      "parents": [
        "19ab5cb8fb14a44a4eb0b532ddc3658b055d84f9"
      ],
      "author": {
        "name": "Axel Lin",
        "email": "axel.lin@gmail.com",
        "time": "Mon Jul 25 17:13:16 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jul 25 20:57:15 2011 -0700"
      },
      "message": "drivers/leds/leds-sunfire.c: fix sunfire_led_generic_probe() error handling\n\n- return -ENOMEM if kzalloc fails, rather than the current -EINVAL\n\n- fix a memory leak in the case of goto out_unregister_led_cdevs\n\nSigned-off-by: Axel Lin \u003caxel.lin@gmail.com\u003e\nCc: Richard Purdie \u003crpurdie@rpsys.net\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "19ab5cb8fb14a44a4eb0b532ddc3658b055d84f9",
      "tree": "67c7cccd0ad444dccf1545c89ca2fc1bfdceca22",
      "parents": [
        "05ed8490812a2f2b93da5d8e29fd2a1a9a87deb0"
      ],
      "author": {
        "name": "Linus Walleij",
        "email": "linus.walleij@linaro.org",
        "time": "Mon Jul 25 17:13:15 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jul 25 20:57:15 2011 -0700"
      },
      "message": "drivers/leds/leds-lp5521.c: provide section tagging\n\nTag the and remove() function as __devexit respectively.\n\nSigned-off-by: Linus Walleij \u003clinus.walleij@linaro.org\u003e\nCc: Richard Purdie \u003crpurdie@rpsys.net\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "05ed8490812a2f2b93da5d8e29fd2a1a9a87deb0",
      "tree": "69ac83fa6c01db183af9d1902023478672f0c188",
      "parents": [
        "0334b3824e671c28737074ca9fb0723ef05d9b9e"
      ],
      "author": {
        "name": "Joe Perches",
        "email": "joe@perches.com",
        "time": "Mon Jul 25 17:13:14 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jul 25 20:57:15 2011 -0700"
      },
      "message": "MAINTAINERS: update HIGH RESOLUTION TIMERS patterns\n\nclockchips.h was typoed as clockevents.h\n\nSigned-off-by: Joe Perches \u003cjoe@perches.com\u003e\nCc: Thomas Gleixner \u003ctglx@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": "0334b3824e671c28737074ca9fb0723ef05d9b9e",
      "tree": "77733610795851bc0914aa634e30905dcac88cca",
      "parents": [
        "626a0312514a121a90b4478cbde111ffc6826ae2"
      ],
      "author": {
        "name": "Joe Perches",
        "email": "joe@perches.com",
        "time": "Mon Jul 25 17:13:13 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jul 25 20:57:15 2011 -0700"
      },
      "message": "get_maintainers.pl: improve .mailmap parsing\n\nEntries that used formats other than \"Proper Name \u003ccommit@email.xx\u003e\"\nwere not parsed properly.\n\nTry to improve the parsing so that the entries in the forms of:\n    Proper Name \u003cproper@email.xx\u003e \u003ccommit@email.xx\u003e\nand\n    Proper Name \u003cproper@email.xx\u003e Commit Name \u003ccommit@email.xx\u003e\nare transformed correctly.\n\nSigned-off-by: Joe Perches \u003cjoe@perches.com\u003e\nReviewed-by: Florian Mickler \u003cflorian@mickler.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "626a0312514a121a90b4478cbde111ffc6826ae2",
      "tree": "18524e3f4ea38576459da3d29323bc2268b7d282",
      "parents": [
        "a376d3d6727b2f05ef4c6670cc74afbd8110df89"
      ],
      "author": {
        "name": "Stephen Boyd",
        "email": "bebarino@gmail.com",
        "time": "Mon Jul 25 17:13:12 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jul 25 20:57:15 2011 -0700"
      },
      "message": "kernel/configs.c: include MODULE_*() when CONFIG_IKCONFIG_PROC\u003dn\n\nIf CONFIG_IKCONFIG\u003dm but CONFIG_IKCONFIG_PROC\u003dn we get a module that has\nno MODULE_LICENSE definition.  Move the MODULE_*() definitions outside the\nCONFIG_IKCONFIG_PROC #ifdef to prevent this configuration from tainting\nthe kernel.\n\nSigned-off-by: Stephen Boyd \u003cbebarino@gmail.com\u003e\nAcked-by: Randy Dunlap \u003crdunlap@xenotime.net\u003e\nAcked-by: WANG Cong \u003cxiyou.wangcong@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": "a376d3d6727b2f05ef4c6670cc74afbd8110df89",
      "tree": "7c2755460389011296da7c41830319ad8673dea4",
      "parents": [
        "35eb6db11ed9cbf9702ec90a28779a51fe4a21a9"
      ],
      "author": {
        "name": "Amerigo Wang",
        "email": "amwang@redhat.com",
        "time": "Mon Jul 25 17:13:12 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jul 25 20:57:15 2011 -0700"
      },
      "message": "notifiers: vt: move vt notifiers into vt.h\n\nIt is not necessary to share the same notifier.h.\n\nSigned-off-by: WANG Cong \u003camwang@redhat.com\u003e\nCc: David Miller \u003cdavem@davemloft.net\u003e\nCc: \"Rafael J. Wysocki\" \u003crjw@sisk.pl\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": "35eb6db11ed9cbf9702ec90a28779a51fe4a21a9",
      "tree": "4013d595b8a370ed2b722f8a260f48506aa9109b",
      "parents": [
        "c5f41752fd37979dbaec61dc59c7ece0606ddf7e"
      ],
      "author": {
        "name": "Amerigo Wang",
        "email": "amwang@redhat.com",
        "time": "Mon Jul 25 17:13:11 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jul 25 20:57:15 2011 -0700"
      },
      "message": "notifiers: pm: move pm notifiers into suspend.h\n\nIt is not necessary to share the same notifier.h.\n\nSigned-off-by: WANG Cong \u003camwang@redhat.com\u003e\nCc: David Miller \u003cdavem@davemloft.net\u003e\nAcked-by: \"Rafael J. Wysocki\" \u003crjw@sisk.pl\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": "c5f41752fd37979dbaec61dc59c7ece0606ddf7e",
      "tree": "47827a7fd86cbe4ad657d640b01e8b76535e8813",
      "parents": [
        "dcfe1421c916345b068f43749263b94270324500"
      ],
      "author": {
        "name": "Amerigo Wang",
        "email": "amwang@redhat.com",
        "time": "Mon Jul 25 17:13:10 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jul 25 20:57:14 2011 -0700"
      },
      "message": "notifiers: sys: move reboot notifiers into reboot.h\n\nIt is not necessary to share the same notifier.h.\n\nThis patch already moves register_reboot_notifier() and\nunregister_reboot_notifier() from kernel/notifier.c to kernel/sys.c.\n\n[amwang@redhat.com: make allyesconfig succeed on ppc64]\nSigned-off-by: WANG Cong \u003camwang@redhat.com\u003e\nCc: David Miller \u003cdavem@davemloft.net\u003e\nCc: \"Rafael J. Wysocki\" \u003crjw@sisk.pl\u003e\nCc: Greg KH \u003cgreg@kroah.com\u003e\nSigned-off-by: WANG Cong \u003camwang@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": "dcfe1421c916345b068f43749263b94270324500",
      "tree": "3a23960235eed24754b9775c85ff2e50ffc367bb",
      "parents": [
        "80f1ff97d0a9d92f44d2b2dd9425afa950e58f2b"
      ],
      "author": {
        "name": "Amerigo Wang",
        "email": "amwang@redhat.com",
        "time": "Mon Jul 25 17:13:09 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jul 25 20:57:14 2011 -0700"
      },
      "message": "notifiers: net: move netdevice notifiers into netdevice.h\n\nIt is not necessary to share the same notifier.h.\n\nSigned-off-by: WANG Cong \u003camwang@redhat.com\u003e\nAcked-by: David Miller \u003cdavem@davemloft.net\u003e\nCc: \"Rafael J. Wysocki\" \u003crjw@sisk.pl\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": "80f1ff97d0a9d92f44d2b2dd9425afa950e58f2b",
      "tree": "bee18bc88b112e75ca026b1a2b406f9f909e91bc",
      "parents": [
        "a1bb73d76bc814e9385390e6aa9880d884322e2e"
      ],
      "author": {
        "name": "Amerigo Wang",
        "email": "amwang@redhat.com",
        "time": "Mon Jul 25 17:13:08 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jul 25 20:57:14 2011 -0700"
      },
      "message": "notifiers: cpu: move cpu notifiers into cpu.h\n\nWe presently define all kinds of notifiers in notifier.h.  This is not\nnecessary at all, since different subsystems use different notifiers, they\nare almost non-related with each other.\n\nThis can also save much build time.  Suppose I add a new netdevice event,\nreally I don\u0027t have to recompile all the source, just network related.\nWithout this patch, all the source will be recompiled.\n\nI move the notify events near to their subsystem notifier registers, so\nthat they can be found more easily.\n\nThis patch:\n\nIt is not necessary to share the same notifier.h.\n\nSigned-off-by: WANG Cong \u003camwang@redhat.com\u003e\nCc: David Miller \u003cdavem@davemloft.net\u003e\nCc: \"Rafael J. Wysocki\" \u003crjw@sisk.pl\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": "a1bb73d76bc814e9385390e6aa9880d884322e2e",
      "tree": "bb65763729c21cd78ad8f3b208b2929803d88e1c",
      "parents": [
        "703f03c896fdbd726b809066ae279df513992f0e"
      ],
      "author": {
        "name": "Donggeun Kim",
        "email": "dg77.kim@samsung.com",
        "time": "Mon Jul 25 17:13:07 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jul 25 20:57:14 2011 -0700"
      },
      "message": "drivers/misc: add support the FSA9480 USB Switch\n\nThe FSA9480 is a USB port accessory detector and switch.  This patch adds\nsupport the FSA9480 USB Switch.\n\n[akpm@linux-foundation.org: make a couple of things static]\nSigned-off-by: Donggeun Kim \u003cdg77.kim@samsung.com\u003e\nSigned-off-by: Minkyu Kang \u003cmk7.kang@samsung.com\u003e\nSigned-off-by: Kyungmin Park \u003ckyungmin.park@samsung.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": "703f03c896fdbd726b809066ae279df513992f0e",
      "tree": "ca45fc24d831c1495b43171434f453376856bd4e",
      "parents": [
        "005bdad7b80ac017ca21d795639d4214b9844a84"
      ],
      "author": {
        "name": "Philip A. Prindeville",
        "email": "philipp@redfish-solutions.com",
        "time": "Mon Jul 25 17:13:05 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jul 25 20:57:14 2011 -0700"
      },
      "message": "geode: reflect mfgpt dependency on mfd\n\nAs stated in drivers/mfd/cs5535-mfd.c, the mfd driver exposes the BARs\nwhich then make the GPIO, MFGPT, ACPI, etc.  all visible to the system.\n\nSo the dependencies of the MFGPT stuff have changed, and most people\nexpect Kconfig to bring in the necessary dependencies.  Without them, the\nmodule fails to load and most people don\u0027t understand why because the\ndetails of the rewrite aren\u0027t captured anywhere most people who know to\nlook.\n\nThis dependency needs to be reflected in Kconfig.\n\nSigned-off-by: Philip A. Prindeville \u003cphilipp@redfish-solutions.com\u003e\nAcked-by: Alexandros C. Couloumbis \u003calex@ozo.com\u003e\nAcked-by: Andres Salomon \u003cdilinger@queued.net\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": "005bdad7b80ac017ca21d795639d4214b9844a84",
      "tree": "0a34db88bbed36794984bd2c27e4f5ea3d6400ad",
      "parents": [
        "b9d4f426689765d1e066913f6872c8d59e0f2ac9"
      ],
      "author": {
        "name": "Arnaud Lacombe",
        "email": "lacombar@gmail.com",
        "time": "Mon Jul 25 17:13:04 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jul 25 20:57:14 2011 -0700"
      },
      "message": "eisa/pci_eisa.c: fix section mismatch\n\nFixes\n\n  WARNING: vmlinux.o(.data+0x15d3ac): Section mismatch in reference from the variable pci_eisa_driver to the function .init.text:pci_eisa_init()\n  The variable pci_eisa_driver references the function __init pci_eisa_init()\n  If the reference is valid then annotate the variable with __init* or __refdata (see linux/init.h) or name the variable:\n  *_template, *_timer, *_sht, *_ops, *_probe, *_probe_one, *_console\n\nSigned-off-by: Arnaud Lacombe \u003clacombar@gmail.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": "b9d4f426689765d1e066913f6872c8d59e0f2ac9",
      "tree": "aa9f8793febf41a2f913efdb5b16048b960a155b",
      "parents": [
        "9d00f92f437f0ff682876cab9f2d94cf3b6e5d17"
      ],
      "author": {
        "name": "Arnaud Lacombe",
        "email": "lacombar@gmail.com",
        "time": "Mon Jul 25 17:13:03 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jul 25 20:57:14 2011 -0700"
      },
      "message": "include/linux/kernel.h: hide internal macros from userspace\n\nUnexpose to userland the following macros\n - __FUNCTION__\n - NUMA_BUILD\n - COMPACTION_BUILD\n - REBUILD_DUE_TO_FTRACE_MCOUNT_RECORD\n\nSigned-off-by: Arnaud Lacombe \u003clacombar@gmail.com\u003e\nCc: Rusty Russell \u003crusty@rustcorp.com.au\u003e\nCc: KOSAKI Motohiro \u003ckosaki.motohiro@jp.fujitsu.com\u003e\nCc: Christoph Lameter \u003ccl@linux.com\u003e\nCc: Mel Gorman \u003cmgorman@suse.de\u003e\nCc: Steven Rostedt \u003crostedt@goodmis.org\u003e\nAcked-by: WANG Cong \u003cxiyou.wangcong@gmail.com\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": "9d00f92f437f0ff682876cab9f2d94cf3b6e5d17",
      "tree": "c5557822a4cdd93336cfacb08e14dde163a1855a",
      "parents": [
        "a0e44d4a7a3935afe425ec8dd1a5b63895e1f9c3"
      ],
      "author": {
        "name": "WANG Cong",
        "email": "xiyou.wangcong@gmail.com",
        "time": "Mon Jul 25 17:13:02 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jul 25 20:57:14 2011 -0700"
      },
      "message": "include/linux/kernel.h: fix a headers_check warning\n\nFix the warning:\n\n  usr/include/linux/kernel.h:65: userspace cannot reference function or variable defined in the kernel\n\nAs Michal noted, BUILD_BUG_ON stuffs should be moved\nunder #ifdef __KERNEL__.\n\nSigned-off-by: WANG Cong \u003cxiyou.wangcong@gmail.com\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": "a0e44d4a7a3935afe425ec8dd1a5b63895e1f9c3",
      "tree": "ef31b7fe165d9777e93beacb191adbef280c21b6",
      "parents": [
        "ae891a1b93bf62e9aaa116a7a71312375047fc9f"
      ],
      "author": {
        "name": "Uwe Kleine-König",
        "email": "u.kleine-koenig@pengutronix.de",
        "time": "Mon Jul 25 17:13:00 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jul 25 20:57:14 2011 -0700"
      },
      "message": "include/linux/ioport.h: new helper to define common struct resource constructs\n\nResource definitions that just define start, end and flags \u003d\nIORESOURCE_MEM or IORESOURCE_IRQ (with start\u003dend) are quite common.  So\nintroduce a shortcut for them.  For completeness add macros for\nIORESOURCE_DMA and IORESOURCE_IO, too and also make available a set of\nmacros to specify named resources of all types which are less common.\n\nSigned-off-by: Uwe Kleine-König \u003cu.kleine-koenig@pengutronix.de\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": "ae891a1b93bf62e9aaa116a7a71312375047fc9f",
      "tree": "83e821e818654da3e3443ecddd757665251db6e0",
      "parents": [
        "5190f0c030f46b3169205f34f6d9ef480fa39ef2"
      ],
      "author": {
        "name": "Maxin B John",
        "email": "maxin.john@gmail.com",
        "time": "Mon Jul 25 17:12:59 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jul 25 20:57:14 2011 -0700"
      },
      "message": "devres: fix possible use after free\n\ndevres uses the pointer value as key after it\u0027s freed, which is safe but\ntriggers spurious use-after-free warnings on some static analysis tools.\nRearrange code to avoid such warnings.\n\nSigned-off-by: Maxin B. John \u003cmaxin.john@gmail.com\u003e\nReviewed-by: Rolf Eike Beer \u003ceike-kernel@sf-tec.de\u003e\nAcked-by: Tejun Heo \u003ctj@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": "5190f0c030f46b3169205f34f6d9ef480fa39ef2",
      "tree": "5ae8f4edb4fdfb84a51e41390d0b43c4e4d2c891",
      "parents": [
        "f35119d6681300ba6d76da53cb1ebc2eed62e77a"
      ],
      "author": {
        "name": "Mike Frysinger",
        "email": "vapier@gentoo.org",
        "time": "Mon Jul 25 17:12:58 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jul 25 20:57:14 2011 -0700"
      },
      "message": "asm-generic/system.h: drop useless __KERNEL__\n\nThis header isn\u0027t exported to user-space, and even if it was, the\n__KERNEL__ check covers the entire file, so we\u0027d get a useless stub in the\nfirst place.  So punt it.\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": "f35119d6681300ba6d76da53cb1ebc2eed62e77a",
      "tree": "0dfd0d1bf9acf3e48791059b50bc68fff01c4db9",
      "parents": [
        "f1c93e4946ae1cc268729451de6335a7e7d2bea9"
      ],
      "author": {
        "name": "Rakib Mullick",
        "email": "rakib.mullick@gmail.com",
        "time": "Mon Jul 25 17:12:56 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jul 25 20:57:13 2011 -0700"
      },
      "message": "drivers: use kzalloc/kcalloc instead of \u0027kmalloc+memset\u0027, where possible\n\nSigned-off-by: Rakib Mullick \u003crakib.mullick@gmail.com\u003e\nCc: Jeff Garzik \u003cjgarzik@pobox.com\u003e\nCc: David Airlie \u003cairlied@linux.ie\u003e\nCc: Tejun Heo \u003ctj@kernel.org\u003e\nCc: 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": "f1c93e4946ae1cc268729451de6335a7e7d2bea9",
      "tree": "ed1ed33faf640af3544963b0afc085ec8ed9e640",
      "parents": [
        "39073db15bf9016003e8a4e607d517f4928b713c"
      ],
      "author": {
        "name": "Richard Weinberger",
        "email": "richard@nod.at",
        "time": "Mon Jul 25 17:12:55 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jul 25 20:57:13 2011 -0700"
      },
      "message": "um: remove dead code\n\nGCC 4.6\u0027s -Wunused-but-set-variable found some dead code.\n\nSigned-off-by: Richard Weinberger \u003crichard@nod.at\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "39073db15bf9016003e8a4e607d517f4928b713c",
      "tree": "9de605555a05db5c2d2aaa3f9ff1adb2b16fd6dc",
      "parents": [
        "f1c2bb8b9964ed31de988910f8b1cfb586d30091"
      ],
      "author": {
        "name": "Richard Weinberger",
        "email": "richard@nod.at",
        "time": "Mon Jul 25 17:12:55 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jul 25 20:57:13 2011 -0700"
      },
      "message": "um: adjust size of pid_buf\n\nLinux can have pids up to 4*1024*1024.  To handle such huge numbers\npid_buf needs to be larger.\n\nReported-by: Geert Uytterhoeven \u003cgeert@linux-m68k.org\u003e\nSigned-off-by: Richard Weinberger \u003crichard@nod.at\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "f1c2bb8b9964ed31de988910f8b1cfb586d30091",
      "tree": "ccf58acd47dbf659dca3087b7ebf2704ffd14aba",
      "parents": [
        "fc9a00187ba1300a0baae8e613cc62598e1a7de7"
      ],
      "author": {
        "name": "Richard Weinberger",
        "email": "richard@nod.at",
        "time": "Mon Jul 25 17:12:54 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jul 25 20:57:13 2011 -0700"
      },
      "message": "um: implement a x86_64 vDSO\n\nUntil now UML had no x86_64 vDSO.  So glibc always used the vsyscall page\nfor gettimeday() and friends.  Calls to gettimeday() returned falsely the\nhost time and confused some programs.\n\nThis patch adds a vDSO which turns all __vdso_* calls into a system call\nso that UML can trap them.\n\nAs glibc still uses the vsyscall page for static binaries this patch\nimproves the situation only for dynamic binaries.\n\nSigned-off-by: Richard Weinberger \u003crichard@nod.at\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "fc9a00187ba1300a0baae8e613cc62598e1a7de7",
      "tree": "37d79e9c6bc6d81a6b75b58e5513e25382e66342",
      "parents": [
        "548f0a4e02f6fa33278e77a2a6477cdeb512317f"
      ],
      "author": {
        "name": "Richard Weinberger",
        "email": "richard@nod.at",
        "time": "Mon Jul 25 17:12:54 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jul 25 20:57:13 2011 -0700"
      },
      "message": "um: set __HAVE_ARCH_GATE_AREA for x86_64\n\nImplement arch_vma_name() and make get_gate_vma(), in_gate_area() and\nin_gate_area_no_mm() a nop.\n\nWe need arch_vma_name() to support vDSO.\n\nSigned-off-by: Richard Weinberger \u003crichard@nod.at\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "548f0a4e02f6fa33278e77a2a6477cdeb512317f",
      "tree": "c1e3830dd6ad0561745452134ec64fd1fa7656a2",
      "parents": [
        "b743ac54e54ca18fb7164a97cc77cf1ccee0b0f7"
      ],
      "author": {
        "name": "Richard Weinberger",
        "email": "richard@nod.at",
        "time": "Mon Jul 25 17:12:53 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jul 25 20:57:13 2011 -0700"
      },
      "message": "um: Set __HAVE_ARCH_GATE_AREA for i386\n\nWhen UML is unable to reuse the host\u0027s vDSO FIXADDR_USER_START is zero.\nTo handle this special case correclty we have to implement custom gate\narea helper methods.\n\nSigned-off-by: Richard Weinberger \u003crichard@nod.at\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "b743ac54e54ca18fb7164a97cc77cf1ccee0b0f7",
      "tree": "a9dced710d289d1594ec2a27ca2a88cef5186ac1",
      "parents": [
        "2a6d0ac182688d4d23357ece744978706c044aad"
      ],
      "author": {
        "name": "Richard Weinberger",
        "email": "richard@nod.at",
        "time": "Mon Jul 25 17:12:52 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jul 25 20:57:13 2011 -0700"
      },
      "message": "um: disable scan_elf_aux() on x86_64\n\nReusing the host\u0027s vDSO makes only sense on x86_32.\n\nSigned-off-by: Richard Weinberger \u003crichard@nod.at\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "2a6d0ac182688d4d23357ece744978706c044aad",
      "tree": "6a8daa134fe8af112b0d234b4ca417a16e59d5e5",
      "parents": [
        "9a8beb93067764344523386e0e5388d3fd78add7"
      ],
      "author": {
        "name": "Davidlohr Bueso",
        "email": "dave@gnu.org",
        "time": "Mon Jul 25 17:12:52 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jul 25 20:57:13 2011 -0700"
      },
      "message": "uml: free resources\n\nWhen creating the temp file there\u0027s a memory and file descriptor leak upon\nerror.\n\nSigned-off-by: Davidlohr Bueso \u003cdave@gnu.org\u003e\nSigned-off-by: Richard Weinberger \u003crichard@nod.at\u003e\nReviewed-by: Vitaliy Ivanov \u003cvitalivanov@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": "9a8beb93067764344523386e0e5388d3fd78add7",
      "tree": "d8458ea042a52610a3b1c0f9517f50ecd67c849a",
      "parents": [
        "2fdf2130926f07881c75e3905ece472c37d7703f"
      ],
      "author": {
        "name": "Vitaliy Ivanov",
        "email": "vitalivanov@gmail.com",
        "time": "Mon Jul 25 17:12:51 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jul 25 20:57:13 2011 -0700"
      },
      "message": "uml: drivers/slip_user.c memory leak fix\n\nDo not free memory when you failed to allocate it.\n\nSigned-off-by: Vitaliy Ivanov \u003cvitalivanov@gmail.com\u003e\nSigned-off-by: Richard Weinberger \u003crichard@nod.at\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "2fdf2130926f07881c75e3905ece472c37d7703f",
      "tree": "3e9e9c3334f7277aa116800efe6719713e23fdc5",
      "parents": [
        "7a99ae7c57d2de5cad9562bed32addf064521116"
      ],
      "author": {
        "name": "Vitaliy Ivanov",
        "email": "vitalivanov@gmail.com",
        "time": "Mon Jul 25 17:12:50 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jul 25 20:57:13 2011 -0700"
      },
      "message": "uml: helper.c warning corrections\n\nFix this warning:\n\n  arch/um/os-Linux/helper.c: In function `helper_child\u0027:\n  arch/um/os-Linux/helper.c:38:7: warning: ignoring return value of `write\u0027, declared with attribute warn_unused_result\n\n[richard@nod.at: happens only with -D_FORTIFY_SOURCE\u003d2]\nSigned-off-by: Vitaliy Ivanov \u003cvitalivanov@gmail.com\u003e\nSigned-off-by: Richard Weinberger \u003crichard@nod.at\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "7a99ae7c57d2de5cad9562bed32addf064521116",
      "tree": "48d3f4c0cd2233a58b5f75a32d38c40bf326e964",
      "parents": [
        "fbee8d933c775cdb9daac3063659cda38c1776c2"
      ],
      "author": {
        "name": "Vitaliy Ivanov",
        "email": "vitalivanov@gmail.com",
        "time": "Mon Jul 25 17:12:50 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jul 25 20:57:13 2011 -0700"
      },
      "message": "uml: cow_user.c warning corrections\n\nFix this warning:\n\n  arch/um/drivers/cow_user.c: In function `absolutize\u0027:\n  arch/um/drivers/cow_user.c:189:7: warning: ignoring return value of `chdir\u0027, declared with attribute warn_unused_result\n\n[richard@nod.at: happens only with -D_FORTIFY_SOURCE\u003d2]\nSigned-off-by: Vitaliy Ivanov \u003cvitalivanov@gmail.com\u003e\nSigned-off-by: Richard Weinberger \u003crichard@nod.at\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "fbee8d933c775cdb9daac3063659cda38c1776c2",
      "tree": "22027a33c69747445c77cc39d1445420067f16b3",
      "parents": [
        "7fa38e7e9ead2dc7a346db10dd27a40dd83b2a26"
      ],
      "author": {
        "name": "Vitaliy Ivanov",
        "email": "vitalivanov@gmail.com",
        "time": "Mon Jul 25 17:12:49 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jul 25 20:57:12 2011 -0700"
      },
      "message": "uml: drivers/net_user.c memory leak fix\n\nPerform memory cleanup on exit.  On receiving invalid \u0027pid\u0027 we still\nshould clean \u0027output\u0027 variable.\n\nSigned-off-by: Vitaliy Ivanov \u003cvitalivanov@gmail.com\u003e\nSigned-off-by: Richard Weinberger \u003crichard@nod.at\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "7fa38e7e9ead2dc7a346db10dd27a40dd83b2a26",
      "tree": "a8d336621c2069f286b6ac761355e58f38812602",
      "parents": [
        "dd71dc4c335a8957d269ce063b3e80933f3482fc"
      ],
      "author": {
        "name": "Geert Uytterhoeven",
        "email": "geert@linux-m68k.org",
        "time": "Mon Jul 25 17:12:48 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jul 25 20:57:12 2011 -0700"
      },
      "message": "um: reinstate kernel version in generated .config\n\nCommit 0954828fcbf3 (\"kconfig: replace KERNELVERSION usage by the\nmainmenu\u0027s prompt\") made the kernel version disappear from the generated\n.config file when configuring for UML.  As UML\u0027s Kconfig doesn\u0027t have a\nmainmenu, kconfig falls back to the default string \"Linux Kernel\nConfiguration\".\n\nAdd a suitable mainmenu to the main UML Kconfig file to fix this.\n\nSigned-off-by: Geert Uytterhoeven \u003cgeert@linux-m68k.org\u003e\nSigned-off-by: Richard Weinberger \u003crichard@nod.at\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "dd71dc4c335a8957d269ce063b3e80933f3482fc",
      "tree": "5656fc75eae80cff60faeb6487432d1289eafcc8",
      "parents": [
        "f956b3e40ad7b9f7c0d33b80fe78f57fedb74f49"
      ],
      "author": {
        "name": "Richard Weinberger",
        "email": "richard@nod.at",
        "time": "Mon Jul 25 17:12:48 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jul 25 20:57:12 2011 -0700"
      },
      "message": "um: add netpoll support\n\nTo make netconsole usable on UML, its ethernet driver needs netpoll\nsupport.\n\nSigned-off-by: Richard Weinberger \u003crichard@nod.at\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "f956b3e40ad7b9f7c0d33b80fe78f57fedb74f49",
      "tree": "44e5b311271d6da81df967de711a78e042d16af9",
      "parents": [
        "22e9b917ab7ccd98046ad9428fb28967f0744605"
      ],
      "author": {
        "name": "Richard Weinberger",
        "email": "richard@nod.at",
        "time": "Mon Jul 25 17:12:47 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jul 25 20:57:12 2011 -0700"
      },
      "message": "um: fix _FORTIFY_SOURCE\u003d2 support for kernel modules\n\nWhen UML is compiled with _FORTIFY_SOURCE we have to export all _chk()\nfunctions which are used in modules.  For now it\u0027s only the case for\n__sprintf_chk().\n\nTested-by: Florian Fainelli \u003cflorian@openwrt.org\u003e\nReported-by: Florian Fainelli \u003cflorian@openwrt.org\u003e\nSigned-off-by: Richard Weinberger \u003crichard@nod.at\u003e\nAcked-by: Vitaliy Ivanov \u003cvitalivanov@gmail.com\u003e\nCc: Geert Uytterhoeven \u003cgeert@linux-m68k.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "22e9b917ab7ccd98046ad9428fb28967f0744605",
      "tree": "fb21871390d662b0c9cccd05ee3180336afe8e4f",
      "parents": [
        "c0ce5b673457123406f19e616bb8cf20a0c12cb5"
      ],
      "author": {
        "name": "Richard Weinberger",
        "email": "richard@nod.at",
        "time": "Mon Jul 25 17:12:46 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jul 25 20:57:12 2011 -0700"
      },
      "message": "um: clean up delay functions\n\nBoth sys-i386 and sys-x86_64 support now ndelay().  The delay functions\nare based on arch/x86/lib/delay.c.\n\nSigned-off-by: Richard Weinberger \u003crichard@nod.at\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "c0ce5b673457123406f19e616bb8cf20a0c12cb5",
      "tree": "6030fea4f65460ccb1bcfe0752ab97cc85810081",
      "parents": [
        "7213de044e11856f5c2aee0e43eff8dc507d421c"
      ],
      "author": {
        "name": "Mathias Krause",
        "email": "minipli@googlemail.com",
        "time": "Mon Jul 25 17:12:45 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jul 25 20:57:12 2011 -0700"
      },
      "message": "um, exec: remove redundant set_fs(USER_DS)\n\nThe address limit is already set in flush_old_exec() so this\nset_fs(USER_DS) is redundant.\n\nSigned-off-by: Mathias Krause \u003cminipli@googlemail.com\u003e\nCc: Richard Weinberger \u003crichard@nod.at\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "7213de044e11856f5c2aee0e43eff8dc507d421c",
      "tree": "067513cfdc770448d9677bd69a385bb54b76ae38",
      "parents": [
        "5ec80e50e11bcc3f39e47b9dc73110dbc58e4780"
      ],
      "author": {
        "name": "Richard Weinberger",
        "email": "richard@nod.at",
        "time": "Mon Jul 25 17:12:44 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jul 25 20:57:12 2011 -0700"
      },
      "message": "um: clean up vm-flags.h\n\nThere is no need to define VM_{STACK,DATA}_DEFAULT_FLAGS as variable.\nIt\u0027s also useless to test for TIF_IA32 as 64bit UML has no IA32 emulation.\n\nSigned-off-by: Richard Weinberger \u003crichard@nod.at\u003e\nAcked-by: Randy Dunlap \u003crdunlap@xenotime.net\u003e\nCc: Michal Hocko \u003cmhocko@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": "5ec80e50e11bcc3f39e47b9dc73110dbc58e4780",
      "tree": "5a33f0d6c466c1cefbb7e22f7ad9b8fdb74e79d4",
      "parents": [
        "ce1bb7afc5648056cf66896c4aebc0062bb12f79"
      ],
      "author": {
        "name": "Mathias Krause",
        "email": "minipli@googlemail.com",
        "time": "Mon Jul 25 17:12:44 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jul 25 20:57:12 2011 -0700"
      },
      "message": "cris, exec: remove redundant set_fs(USER_DS)\n\nThe address limit is already set in flush_old_exec() so those calls to\nset_fs(USER_DS) are redundant.\n\nSigned-off-by: Mathias Krause \u003cminipli@googlemail.com\u003e\nCc: Jesper Nilsson \u003cjesper.nilsson@axis.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "ce1bb7afc5648056cf66896c4aebc0062bb12f79",
      "tree": "7bd48b2fa16db61f1228c16f2281720d1777a9c5",
      "parents": [
        "b7de110044b4e26adcb7b278d14da93133692ed7"
      ],
      "author": {
        "name": "WANG Cong",
        "email": "xiyou.wangcong@gmail.com",
        "time": "Mon Jul 25 17:12:43 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jul 25 20:57:12 2011 -0700"
      },
      "message": "cris: fix some build warnings in pinmux.c\n\nFix some harmless warnings such as\n\n  arch/cris/arch-v32/mach-a3/pinmux.c:273: warning: ISO C90 forbids mixed declarations and code:\n\nSigned-off-by: WANG Cong \u003cxiyou.wangcong@gmail.com\u003e\nCc: Mikael Starvik \u003cstarvik@axis.com\u003e\nCc: Jesper Nilsson \u003cjesper.nilsson@axis.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "b7de110044b4e26adcb7b278d14da93133692ed7",
      "tree": "33723340931b8c3e8b68808cafae2a075de3215d",
      "parents": [
        "f796062598235b9f73086d0fb779e120ae9581a0"
      ],
      "author": {
        "name": "Mathias Krause",
        "email": "minipli@googlemail.com",
        "time": "Mon Jul 25 17:12:42 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jul 25 20:57:12 2011 -0700"
      },
      "message": "m68k, exec: remove redundant set_fs(USER_DS)\n\nThe address limit is already set in flush_old_exec() so those calls to\nset_fs(USER_DS) are redundant.\n\nSigned-off-by: Mathias Krause \u003cminipli@googlemail.com\u003e\nCc: Greg Ungerer \u003cgerg@uclinux.org\u003e\nCc: Geert Uytterhoeven \u003cgeert@linux-m68k.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "f796062598235b9f73086d0fb779e120ae9581a0",
      "tree": "eda641121623c6eef7be4753f18e0160b6d90ba5",
      "parents": [
        "6fa80900db58b547fe1cfdc77c5413091cafa7bd"
      ],
      "author": {
        "name": "Mathias Krause",
        "email": "minipli@googlemail.com",
        "time": "Mon Jul 25 17:12:40 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jul 25 20:57:12 2011 -0700"
      },
      "message": "m32r, exec: remove redundant set_fs(USER_DS)\n\nThe address limit is already set in flush_old_exec() so this\nset_fs(USER_DS) is redundant.\n\nSigned-off-by: Mathias Krause \u003cminipli@googlemail.com\u003e\nCc: Hirokazu Takata \u003ctakata@linux-m32r.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "6fa80900db58b547fe1cfdc77c5413091cafa7bd",
      "tree": "5365d2626798013a61d45f24cf244aba58d16ce8",
      "parents": [
        "023f21b9ccab71ae963781044a96b922cb4437bf"
      ],
      "author": {
        "name": "Mathias Krause",
        "email": "minipli@googlemail.com",
        "time": "Mon Jul 25 17:12:39 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jul 25 20:57:12 2011 -0700"
      },
      "message": "alpha, exec: remove redundant set_fs(USER_DS)\n\nThe address limit is already set in flush_old_exec() so this\nset_fs(USER_DS) is redundant.\n\nSigned-off-by: Mathias Krause \u003cminipli@googlemail.com\u003e\nCc: Richard Henderson \u003crth@twiddle.net\u003e\nCc: Ivan Kokshaysky \u003cink@jurassic.park.msu.ru\u003e\nCc: Matt Turner \u003cmattst88@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": "023f21b9ccab71ae963781044a96b922cb4437bf",
      "tree": "237a85690a72793733570679dd8f4197f300805a",
      "parents": [
        "99b12e3d882bc7ebdfe0de381dff3b16d21c38f7"
      ],
      "author": {
        "name": "Mathias Krause",
        "email": "minipli@googlemail.com",
        "time": "Mon Jul 25 17:12:38 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jul 25 20:57:11 2011 -0700"
      },
      "message": "h8300, exec: remove redundant set_fs(USER_DS)\n\nThe address limit is already set in flush_old_exec() so those calls to\nset_fs(USER_DS) are redundant.\n\nSigned-off-by: Mathias Krause \u003cminipli@googlemail.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": "99b12e3d882bc7ebdfe0de381dff3b16d21c38f7",
      "tree": "2aa21f5b5a6e03e49cd7af4dbd1b38ec451b09d7",
      "parents": [
        "48f170fb7d7db8789ccc23e051af61f62af5f685"
      ],
      "author": {
        "name": "Wu Fengguang",
        "email": "fengguang.wu@intel.com",
        "time": "Mon Jul 25 17:12:37 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jul 25 20:57:11 2011 -0700"
      },
      "message": "writeback: account NR_WRITTEN at IO completion time\n\nNR_WRITTEN is now accounted at block IO enqueue time, which is not very\naccurate as to common understanding.  This moves NR_WRITTEN accounting to\nthe IO completion time and makes it more consistent with BDI_WRITTEN,\nwhich is used for bandwidth estimation.\n\nSigned-off-by: Wu Fengguang \u003cfengguang.wu@intel.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": "48f170fb7d7db8789ccc23e051af61f62af5f685",
      "tree": "d4dcb91583b7b831a20deed6979be713ad2892b7",
      "parents": [
        "27ab700626f048407e9466d389a43c7d3aa45967"
      ],
      "author": {
        "name": "Hugh Dickins",
        "email": "hughd@google.com",
        "time": "Mon Jul 25 17:12:37 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jul 25 20:57:11 2011 -0700"
      },
      "message": "tmpfs: simplify unuse and writepage\n\nshmem_unuse_inode() and shmem_writepage() contain a little code to cope\nwith pages inserted independently into the filecache, probably by a\nfilesystem stacked on top of tmpfs, then fed to its -\u003ereadpage() or\n-\u003ewritepage().\n\nUnionfs was indeed experimenting with working in that way three years ago,\nbut I find no current examples: nowadays the stacking filesystems use vfs\ninterfaces to the lower filesystem.\n\nIt\u0027s now illegal: remove most of that code, adding some WARN_ON_ONCEs.\n\nSigned-off-by: Hugh Dickins \u003chughd@google.com\u003e\nCc: Erez Zadok \u003cezk@fsl.cs.sunysb.edu\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "27ab700626f048407e9466d389a43c7d3aa45967",
      "tree": "a8d371d8a3727110310cba457840be0f2cfb77c6",
      "parents": [
        "e83c32e8f92724a06a22a3b42f3afc07db93e131"
      ],
      "author": {
        "name": "Hugh Dickins",
        "email": "hughd@google.com",
        "time": "Mon Jul 25 17:12:36 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jul 25 20:57:11 2011 -0700"
      },
      "message": "tmpfs: simplify filepage/swappage\n\nWe can now simplify shmem_getpage_gfp(): there is no longer a dilemma of\nfilepage passed in via shmem_readpage(), then swappage found, which must\nthen be copied over to it.\n\nAlthough at first it\u0027s tempting to replace the **pagep arg by returning\nstruct page *, that makes a mess of IS_ERR_OR_NULL(page)s in all the\ncallers, so leave as is.\n\nInsert BUG_ON(!PageUptodate) when we find and lock page: some of the\ncomplication came from uninitialized pages inserted into filecache prior\nto readpage; but now we\u0027re in control, and only release pagelock on\nfilecache once it\u0027s uptodate (if an error occurs in reading back from\nswap, the page remains in swapcache, never moved to filecache).\n\nSigned-off-by: 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": "e83c32e8f92724a06a22a3b42f3afc07db93e131",
      "tree": "eeefe97f26e7b4faf672eba777a12749bfdad024",
      "parents": [
        "9276aad6c898dbcc31d095f2934dedd5cbb2e93e"
      ],
      "author": {
        "name": "Hugh Dickins",
        "email": "hughd@google.com",
        "time": "Mon Jul 25 17:12:35 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jul 25 20:57:11 2011 -0700"
      },
      "message": "tmpfs: simplify prealloc_page\n\nThe prealloc_page handling in shmem_getpage_gfp() is unnecessarily\ncomplicated: first simplify that before going on to filepage/swappage.\n\nThat\u0027s right, don\u0027t report ENOMEM when the preallocation fails: we may or\nmay not need the page.  But simply report ENOMEM once we find we do need\nit, instead of dropping lock, repeating allocation, unwinding on failure\netc.  And leave the out label on the fast path, don\u0027t goto.\n\nFix something that looks like a bug but turns out not to be: set\nPageSwapBacked on prealloc_page before its mem_cgroup_cache_charge(), as\nthe removed case was doing.  That\u0027s important before adding to LRU\n(determines which LRU the page goes on), and does affect which path it\ntakes through memcontrol.c, but in the end MEM_CGROUP_CHANGE_TYPE_ SHMEM\nis handled no differently from CACHE.\n\nSigned-off-by: Hugh Dickins \u003chughd@google.com\u003e\nAcked-by: Shaohua Li \u003cshaohua.li@intel.com\u003e\nCc: \"Zhang, Yanmin\" \u003cyanmin.zhang@intel.com\u003e\nCc: Tim Chen \u003ctim.c.chen@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": "9276aad6c898dbcc31d095f2934dedd5cbb2e93e",
      "tree": "7ba68f82aa8b747e11d9cfb79c4fe06188b7b2c7",
      "parents": [
        "68da9f055755ee2609a1686722e6d6a7980019ee"
      ],
      "author": {
        "name": "Hugh Dickins",
        "email": "hughd@google.com",
        "time": "Mon Jul 25 17:12:34 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jul 25 20:57:11 2011 -0700"
      },
      "message": "tmpfs: remove_shmem_readpage\n\nRemove that pernicious shmem_readpage() at last: the things we needed it\nfor (splice, loop, sendfile, i915 GEM) are now fully taken care of by\nshmem_file_splice_read() and shmem_read_mapping_page_gfp().\n\nThis removal clears the way for a simpler shmem_getpage_gfp(), since page\nis never passed in; but leave most of that cleanup until after.\n\nsys_readahead() and sys_fadvise(POSIX_FADV_WILLNEED) will now EINVAL,\ninstead of unexpectedly trying to read ahead on tmpfs: if that proves to\nbe an issue for someone, then we can either arrange for them to return\nsuccess instead, or try to implement async readahead on tmpfs.\n\nSigned-off-by: 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": "68da9f055755ee2609a1686722e6d6a7980019ee",
      "tree": "9f2810f28a7852b0ed3390f7fa0d29979a2997c2",
      "parents": [
        "71f0e07a605fad1fb6b288e4dc1dd8dfa78f4872"
      ],
      "author": {
        "name": "Hugh Dickins",
        "email": "hughd@google.com",
        "time": "Mon Jul 25 17:12:34 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jul 25 20:57:11 2011 -0700"
      },
      "message": "tmpfs: pass gfp to shmem_getpage_gfp\n\nMake shmem_getpage() a wrapper, passing mapping_gfp_mask() down to\nshmem_getpage_gfp(), which in turn passes gfp down to shmem_swp_alloc().\n\nChange shmem_read_mapping_page_gfp() to use shmem_getpage_gfp() in the\nCONFIG_SHMEM case; but leave tiny !SHMEM using read_cache_page_gfp().\n\nAdd a BUG_ON() in case anyone happens to call this on a non-shmem mapping;\nthough we might later want to let that case route to read_cache_page_gfp().\n\nIt annoys me to have these two almost-redundant args, gfp and fault_type:\nI can\u0027t find a better way; but initialize fault_type only in shmem_fault().\n\nNote that before, read_cache_page_gfp() was allocating i915_gem\u0027s pages\nwith __GFP_NORETRY as intended; but the corresponding swap vector pages\ngot allocated without it, leaving a small possibility of OOM.\n\nSigned-off-by: 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": "71f0e07a605fad1fb6b288e4dc1dd8dfa78f4872",
      "tree": "1eac7c25f32ac88bba52a31179989e62773aa079",
      "parents": [
        "708e3508c2a2204cc276dcdb543009a441bfe91b"
      ],
      "author": {
        "name": "Hugh Dickins",
        "email": "hughd@google.com",
        "time": "Mon Jul 25 17:12:33 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jul 25 20:57:11 2011 -0700"
      },
      "message": "tmpfs: refine shmem_file_splice_read\n\nTidy up shmem_file_splice_read():\n\nRemove readahead: okay, we could implement shmem readahead on swap,\nbut have never done so before, swap being the slow exceptional path.\n\nUse shmem_getpage() instead of find_or_create_page() plus -\u003ereadpage().\n\nRemove several comments: sorry, I found them more distracting than\nhelpful, and this will not be the reference version of splice_read().\n\nSigned-off-by: 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": "708e3508c2a2204cc276dcdb543009a441bfe91b",
      "tree": "9e301ba4ebf3b34a00228c26977feebfba8ad9ef",
      "parents": [
        "2efaca927f5cd7ecd0f1554b8f9b6a9a2c329c03"
      ],
      "author": {
        "name": "Hugh Dickins",
        "email": "hughd@google.com",
        "time": "Mon Jul 25 17:12:32 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jul 25 20:57:11 2011 -0700"
      },
      "message": "tmpfs: clone shmem_file_splice_read()\n\nCopy __generic_file_splice_read() and generic_file_splice_read() from\nfs/splice.c to shmem_file_splice_read() in mm/shmem.c.  Make\npage_cache_pipe_buf_ops and spd_release_page() accessible to it.\n\nSigned-off-by: Hugh Dickins \u003chughd@google.com\u003e\nCc: 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": "2efaca927f5cd7ecd0f1554b8f9b6a9a2c329c03",
      "tree": "1bea042a7c712e861d7734db59b3311375c439c3",
      "parents": [
        "72c4783210f77fd743f0a316858d33f27db51e7c"
      ],
      "author": {
        "name": "Benjamin Herrenschmidt",
        "email": "benh@kernel.crashing.org",
        "time": "Mon Jul 25 17:12:32 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jul 25 20:57:11 2011 -0700"
      },
      "message": "mm/futex: fix futex writes on archs with SW tracking of dirty \u0026 young\n\nI haven\u0027t reproduced it myself but the fail scenario is that on such\nmachines (notably ARM and some embedded powerpc), if you manage to hit\nthat futex path on a writable page whose dirty bit has gone from the PTE,\nyou\u0027ll livelock inside the kernel from what I can tell.\n\nIt will go in a loop of trying the atomic access, failing, trying gup to\n\"fix it up\", getting succcess from gup, go back to the atomic access,\nfailing again because dirty wasn\u0027t fixed etc...\n\nSo I think you essentially hang in the kernel.\n\nThe scenario is probably rare\u0027ish because affected architecture are\nembedded and tend to not swap much (if at all) so we probably rarely hit\nthe case where dirty is missing or young is missing, but I think Shan has\na piece of SW that can reliably reproduce it using a shared writable\nmapping \u0026 fork or something like that.\n\nOn archs who use SW tracking of dirty \u0026 young, a page without dirty is\neffectively mapped read-only and a page without young unaccessible in the\nPTE.\n\nAdditionally, some architectures might lazily flush the TLB when relaxing\nwrite protection (by doing only a local flush), and expect a fault to\ninvalidate the stale entry if it\u0027s still present on another processor.\n\nThe futex code assumes that if the \"in_atomic()\" access -EFAULT\u0027s, it can\n\"fix it up\" by causing get_user_pages() which would then be equivalent to\ntaking the fault.\n\nHowever that isn\u0027t the case.  get_user_pages() will not call\nhandle_mm_fault() in the case where the PTE seems to have the right\npermissions, regardless of the dirty and young state.  It will eventually\nupdate those bits ...  in the struct page, but not in the PTE.\n\nAdditionally, it will not handle the lazy TLB flushing that can be\nrequired by some architectures in the fault case.\n\nBasically, gup is the wrong interface for the job.  The patch provides a\nmore appropriate one which boils down to just calling handle_mm_fault()\nsince what we are trying to do is simulate a real page fault.\n\nThe futex code currently attempts to write to user memory within a\npagefault disabled section, and if that fails, tries to fix it up using\nget_user_pages().\n\nThis doesn\u0027t work on archs where the dirty and young bits are maintained\nby software, since they will gate access permission in the TLB, and will\nnot be updated by gup().\n\nIn addition, there\u0027s an expectation on some archs that a spurious write\nfault triggers a local TLB flush, and that is missing from the picture as\nwell.\n\nI decided that adding those \"features\" to gup() would be too much for this\nalready too complex function, and instead added a new simpler\nfixup_user_fault() which is essentially a wrapper around handle_mm_fault()\nwhich the futex code can call.\n\n[akpm@linux-foundation.org: coding-style fixes]\n[akpm@linux-foundation.org: fix some nits Darren saw, fiddle comment layout]\nSigned-off-by: Benjamin Herrenschmidt \u003cbenh@kernel.crashing.org\u003e\nReported-by: Shan Hai \u003chaishan.bai@gmail.com\u003e\nTested-by: Shan Hai \u003chaishan.bai@gmail.com\u003e\nCc: David Laight \u003cDavid.Laight@ACULAB.COM\u003e\nAcked-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: Darren Hart \u003cdarren.hart@intel.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": "72c4783210f77fd743f0a316858d33f27db51e7c",
      "tree": "4efc95eb0aaade090bac42e72c5973ada6d2cdb1",
      "parents": [
        "76d3fbf8fbf6cc78ceb63549e0e0c5bc8a88f838"
      ],
      "author": {
        "name": "Konstantin Khlebnikov",
        "email": "khlebnikov@openvz.org",
        "time": "Mon Jul 25 17:12:31 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jul 25 20:57:11 2011 -0700"
      },
      "message": "mm: remove useless rcu lock-unlock from mapping_tagged()\n\nradix_tree_tagged() is lockless - it reads from a member of the raid-tree\nroot node.  It does not require any protection.\n\nSigned-off-by: Konstantin Khlebnikov \u003ckhlebnikov@openvz.org\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": "76d3fbf8fbf6cc78ceb63549e0e0c5bc8a88f838",
      "tree": "cebd9474333db6965fe6af7cc3f652d3091b658b",
      "parents": [
        "cd38b115d5ad79b0100ac6daa103c4fe2c50a913"
      ],
      "author": {
        "name": "Mel Gorman",
        "email": "mgorman@suse.de",
        "time": "Mon Jul 25 17:12:30 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jul 25 20:57:10 2011 -0700"
      },
      "message": "mm: page allocator: reconsider zones for allocation after direct reclaim\n\nWith zone_reclaim_mode enabled, it\u0027s possible for zones to be considered\nfull in the zonelist_cache so they are skipped in the future.  If the\nprocess enters direct reclaim, the ZLC may still consider zones to be full\neven after reclaiming pages.  Reconsider all zones for allocation if\ndirect reclaim returns successfully.\n\nSigned-off-by: Mel Gorman \u003cmgorman@suse.de\u003e\nCc: Minchan Kim \u003cminchan.kim@gmail.com\u003e\nCc: KOSAKI Motohiro \u003ckosaki.motohiro@jp.fujitsu.com\u003e\nCc: Christoph Lameter \u003ccl@linux.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "cd38b115d5ad79b0100ac6daa103c4fe2c50a913",
      "tree": "ffa8b05c42d0c53ffdd1dee6ce2570bba1d5db2f",
      "parents": [
        "1d65f86db14806cf7b1218c7b4ecb8b4db5af27d"
      ],
      "author": {
        "name": "Mel Gorman",
        "email": "mgorman@suse.de",
        "time": "Mon Jul 25 17:12:29 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jul 25 20:57:10 2011 -0700"
      },
      "message": "mm: page allocator: initialise ZLC for first zone eligible for zone_reclaim\n\nThere have been a small number of complaints about significant stalls\nwhile copying large amounts of data on NUMA machines reported on a\ndistribution bugzilla.  In these cases, zone_reclaim was enabled by\ndefault due to large NUMA distances.  In general, the complaints have not\nbeen about the workload itself unless it was a file server (in which case\nthe recommendation was disable zone_reclaim).\n\nThe stalls are mostly due to significant amounts of time spent scanning\nthe preferred zone for pages to free.  After a failure, it might fallback\nto another node (as zonelists are often node-ordered rather than\nzone-ordered) but stall quickly again when the next allocation attempt\noccurs.  In bad cases, each page allocated results in a full scan of the\npreferred zone.\n\nPatch 1 checks the preferred zone for recent allocation failure\n        which is particularly important if zone_reclaim has failed\n        recently.  This avoids rescanning the zone in the near future and\n        instead falling back to another node.  This may hurt node locality\n        in some cases but a failure to zone_reclaim is more expensive than\n        a remote access.\n\nPatch 2 clears the zlc information after direct reclaim.\n        Otherwise, zone_reclaim can mark zones full, direct reclaim can\n        reclaim enough pages but the zone is still not considered for\n        allocation.\n\nThis was tested on a 24-thread 2-node x86_64 machine.  The tests were\nfocused on large amounts of IO.  All tests were bound to the CPUs on\nnode-0 to avoid disturbances due to processes being scheduled on different\nnodes.  The kernels tested are\n\n3.0-rc6-vanilla\t\tVanilla 3.0-rc6\nzlcfirst\t\tPatch 1 applied\nzlcreconsider\t\tPatches 1+2 applied\n\nFS-Mark\n./fs_mark  -d  /tmp/fsmark-10813  -D  100  -N  5000  -n  208  -L  35  -t  24  -S0  -s  524288\n                fsmark-3.0-rc6       3.0-rc6       \t\t3.0-rc6\n                   vanilla\t\t\t zlcfirs \tzlcreconsider\nFiles/s  min          54.90 ( 0.00%)       49.80 (-10.24%)       49.10 (-11.81%)\nFiles/s  mean        100.11 ( 0.00%)      135.17 (25.94%)      146.93 (31.87%)\nFiles/s  stddev       57.51 ( 0.00%)      138.97 (58.62%)      158.69 (63.76%)\nFiles/s  max         361.10 ( 0.00%)      834.40 (56.72%)      802.40 (55.00%)\nOverhead min       76704.00 ( 0.00%)    76501.00 ( 0.27%)    77784.00 (-1.39%)\nOverhead mean    1485356.51 ( 0.00%)  1035797.83 (43.40%)  1594680.26 (-6.86%)\nOverhead stddev  1848122.53 ( 0.00%)   881489.88 (109.66%)  1772354.90 ( 4.27%)\nOverhead max     7989060.00 ( 0.00%)  3369118.00 (137.13%) 10135324.00 (-21.18%)\nMMTests Statistics: duration\nUser/Sys Time Running Test (seconds)        501.49    493.91    499.93\nTotal Elapsed Time (seconds)               2451.57   2257.48   2215.92\n\nMMTests Statistics: vmstat\nPage Ins                                       46268       63840       66008\nPage Outs                                   90821596    90671128    88043732\nSwap Ins                                           0           0           0\nSwap Outs                                          0           0           0\nDirect pages scanned                        13091697     8966863     8971790\nKswapd pages scanned                               0     1830011     1831116\nKswapd pages reclaimed                             0     1829068     1829930\nDirect pages reclaimed                      13037777     8956828     8648314\nKswapd efficiency                               100%         99%         99%\nKswapd velocity                                0.000     810.643     826.346\nDirect efficiency                                99%         99%         96%\nDirect velocity                             5340.128    3972.068    4048.788\nPercentage direct scans                         100%         83%         83%\nPage writes by reclaim                             0           3           0\nSlabs scanned                                 796672      720640      720256\nDirect inode steals                          7422667     7160012     7088638\nKswapd inode steals                                0     1736840     2021238\n\nTest completes far faster with a large increase in the number of files\ncreated per second.  Standard deviation is high as a small number of\niterations were much higher than the mean.  The number of pages scanned by\nzone_reclaim is reduced and kswapd is used for more work.\n\nLARGE DD\n               \t\t3.0-rc6       3.0-rc6       3.0-rc6\n                   \tvanilla     zlcfirst     zlcreconsider\ndownload tar           59 ( 0.00%)   59 ( 0.00%)   55 ( 7.27%)\ndd source files       527 ( 0.00%)  296 (78.04%)  320 (64.69%)\ndelete source          36 ( 0.00%)   19 (89.47%)   20 (80.00%)\nMMTests Statistics: duration\nUser/Sys Time Running Test (seconds)        125.03    118.98    122.01\nTotal Elapsed Time (seconds)                624.56    375.02    398.06\n\nMMTests Statistics: vmstat\nPage Ins                                     3594216      439368      407032\nPage Outs                                   23380832    23380488    23377444\nSwap Ins                                           0           0           0\nSwap Outs                                          0         436         287\nDirect pages scanned                        17482342    69315973    82864918\nKswapd pages scanned                               0      519123      575425\nKswapd pages reclaimed                             0      466501      522487\nDirect pages reclaimed                       5858054     2732949     2712547\nKswapd efficiency                               100%         89%         90%\nKswapd velocity                                0.000    1384.254    1445.574\nDirect efficiency                                33%          3%          3%\nDirect velocity                            27991.453  184832.737  208171.929\nPercentage direct scans                         100%         99%         99%\nPage writes by reclaim                             0        5082       13917\nSlabs scanned                                  17280       29952       35328\nDirect inode steals                           115257     1431122      332201\nKswapd inode steals                                0           0      979532\n\nThis test downloads a large tarfile and copies it with dd a number of\ntimes - similar to the most recent bug report I\u0027ve dealt with.  Time to\ncompletion is reduced.  The number of pages scanned directly is still\ndisturbingly high with a low efficiency but this is likely due to the\nnumber of dirty pages encountered.  The figures could probably be improved\nwith more work around how kswapd is used and how dirty pages are handled\nbut that is separate work and this result is significant on its own.\n\nStreaming Mapped Writer\nMMTests Statistics: duration\nUser/Sys Time Running Test (seconds)        124.47    111.67    112.64\nTotal Elapsed Time (seconds)               2138.14   1816.30   1867.56\n\nMMTests Statistics: vmstat\nPage Ins                                       90760       89124       89516\nPage Outs                                  121028340   120199524   120736696\nSwap Ins                                           0          86          55\nSwap Outs                                          0           0           0\nDirect pages scanned                       114989363    96461439    96330619\nKswapd pages scanned                        56430948    56965763    57075875\nKswapd pages reclaimed                      27743219    27752044    27766606\nDirect pages reclaimed                         49777       46884       36655\nKswapd efficiency                                49%         48%         48%\nKswapd velocity                            26392.541   31363.631   30561.736\nDirect efficiency                                 0%          0%          0%\nDirect velocity                            53780.091   53108.759   51581.004\nPercentage direct scans                          67%         62%         62%\nPage writes by reclaim                           385         122        1513\nSlabs scanned                                  43008       39040       42112\nDirect inode steals                                0          10           8\nKswapd inode steals                              733         534         477\n\nThis test just creates a large file mapping and writes to it linearly.\nTime to completion is again reduced.\n\nThe gains are mostly down to two things.  In many cases, there is less\nscanning as zone_reclaim simply gives up faster due to recent failures.\nThe second reason is that memory is used more efficiently.  Instead of\nscanning the preferred zone every time, the allocator falls back to\nanother zone and uses it instead improving overall memory utilisation.\n\nThis patch: initialise ZLC for first zone eligible for zone_reclaim.\n\nThe zonelist cache (ZLC) is used among other things to record if\nzone_reclaim() failed for a particular zone recently.  The intention is to\navoid a high cost scanning extremely long zonelists or scanning within the\nzone uselessly.\n\nCurrently the zonelist cache is setup only after the first zone has been\nconsidered and zone_reclaim() has been called.  The objective was to avoid\na costly setup but zone_reclaim is itself quite expensive.  If it is\nfailing regularly such as the first eligible zone having mostly mapped\npages, the cost in scanning and allocation stalls is far higher than the\nZLC initialisation step.\n\nThis patch initialises ZLC before the first eligible zone calls\nzone_reclaim().  Once initialised, it is checked whether the zone failed\nzone_reclaim recently.  If it has, the zone is skipped.  As the first zone\nis now being checked, additional care has to be taken about zones marked\nfull.  A zone can be marked \"full\" because it should not have enough\nunmapped pages for zone_reclaim but this is excessive as direct reclaim or\nkswapd may succeed where zone_reclaim fails.  Only mark zones \"full\" after\nzone_reclaim fails if it failed to reclaim enough pages after scanning.\n\nSigned-off-by: Mel Gorman \u003cmgorman@suse.de\u003e\nCc: Minchan Kim \u003cminchan.kim@gmail.com\u003e\nCc: KOSAKI Motohiro \u003ckosaki.motohiro@jp.fujitsu.com\u003e\nCc: Christoph Lameter \u003ccl@linux.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "1d65f86db14806cf7b1218c7b4ecb8b4db5af27d",
      "tree": "01a2c4e3feb48327220b1fd8d09cf805c20eee7f",
      "parents": [
        "d515afe88a32e567c550e3db914f3e378f86453a"
      ],
      "author": {
        "name": "KAMEZAWA Hiroyuki",
        "email": "kamezawa.hiroyu@jp.fujitsu.com",
        "time": "Mon Jul 25 17:12:27 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jul 25 20:57:10 2011 -0700"
      },
      "message": "mm: preallocate page before lock_page() at filemap COW\n\nCurrently we are keeping faulted page locked throughout whole __do_fault\ncall (except for page_mkwrite code path) after calling file system\u0027s fault\ncode.  If we do early COW, we allocate a new page which has to be charged\nfor a memcg (mem_cgroup_newpage_charge).\n\nThis function, however, might block for unbounded amount of time if memcg\noom killer is disabled or fork-bomb is running because the only way out of\nthe OOM situation is either an external event or OOM-situation fix.\n\nIn the end we are keeping the faulted page locked and blocking other\nprocesses from faulting it in which is not good at all because we are\nbasically punishing potentially an unrelated process for OOM condition in\na different group (I have seen stuck system because of ld-2.11.1.so being\nlocked).\n\nWe can do test easily.\n\n % cgcreate -g memory:A\n % cgset -r memory.limit_in_bytes\u003d64M A\n % cgset -r memory.memsw.limit_in_bytes\u003d64M A\n % cd kernel_dir; cgexec -g memory:A make -j\n\nThen, the whole system will live-locked until you kill \u0027make -j\u0027\nby hands (or push reboot...) This is because some important page in a\na shared library are locked.\n\nConsidering again, the new page is not necessary to be allocated\nwith lock_page() held. And usual page allocation may dive into\nlong memory reclaim loop with holding lock_page() and can cause\nvery long latency.\n\nThere are 3 ways.\n  1. do allocation/charge before lock_page()\n     Pros. - simple and can handle page allocation in the same manner.\n             This will reduce holding time of lock_page() in general.\n     Cons. - we do page allocation even if -\u003efault() returns error.\n\n  2. do charge after unlock_page(). Even if charge fails, it\u0027s just OOM.\n     Pros. - no impact to non-memcg path.\n     Cons. - implemenation requires special cares of LRU and we need to modify\n             page_add_new_anon_rmap()...\n\n  3. do unlock-\u003echarge-\u003elock again method.\n     Pros. - no impact to non-memcg path.\n     Cons. - This may kill LOCK_PAGE_RETRY optimization. We need to release\n             lock and get it again...\n\nThis patch moves \"charge\" and memory allocation for COW page\nbefore lock_page(). Then, we can avoid scanning LRU with holding\na lock on a page and latency under lock_page() will be reduced.\n\nThen, above livelock disappears.\n\n[akpm@linux-foundation.org: fix code layout]\nSigned-off-by: KAMEZAWA Hiroyuki \u003ckamezawa.hiroyu@jp.fujitsu.com\u003e\nReported-by: Lutz Vieweg \u003clvml@5t9.de\u003e\nOriginal-idea-by: Michal Hocko \u003cmhocko@suse.cz\u003e\nCc: Michal Hocko \u003cmhocko@suse.cz\u003e\nCc: Ying Han \u003cyinghan@google.com\u003e\nCc: Johannes Weiner \u003channes@cmpxchg.org\u003e\nCc: Daisuke Nishimura \u003cnishimura@mxp.nes.nec.co.jp\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "d515afe88a32e567c550e3db914f3e378f86453a",
      "tree": "0129002decdd5c1f8bcb521aacdba73e0d1699c3",
      "parents": [
        "d0823576bf4b8eafce1b56f98613465a0352a376"
      ],
      "author": {
        "name": "Hugh Dickins",
        "email": "hughd@google.com",
        "time": "Mon Jul 25 17:12:26 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jul 25 20:57:10 2011 -0700"
      },
      "message": "tmpfs: no need to use i_lock\n\n2.6.36\u0027s 7e496299d4d2 (\"tmpfs: make tmpfs scalable with percpu_counter for\nused blocks\") to make tmpfs scalable with percpu_counter used\ninode-\u003ei_lock in place of sbinfo-\u003estat_lock around i_blocks updates; but\nthat was adverse to scalability, and unnecessary, since info-\u003elock is\nalready held there in the fast paths.\n\nRemove those uses of i_lock, and add info-\u003elock in the three error paths\nwhere it\u0027s then needed across shmem_free_blocks().  It\u0027s not actually\nneeded across shmem_unacct_blocks(), but they\u0027re so often paired that it\nlooks wrong to split them apart.\n\nSigned-off-by: Hugh Dickins \u003chughd@google.com\u003e\nAcked-by: Tim Chen \u003ctim.c.chen@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": "d0823576bf4b8eafce1b56f98613465a0352a376",
      "tree": "bfc182422f665b39d7ae703a198ea7144fea122b",
      "parents": [
        "b85e0effd3dcbf9118b896232f59526ab1a39a74"
      ],
      "author": {
        "name": "Hugh Dickins",
        "email": "hughd@google.com",
        "time": "Mon Jul 25 17:12:25 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jul 25 20:57:10 2011 -0700"
      },
      "message": "mm: pincer in truncate_inode_pages_range\n\ntruncate_inode_pages_range()\u0027s final loop has a nice pincer property,\nbringing start and end together, squeezing out the last pages.  But the\nrange handling missed out on that, just sliding up the range, perhaps\nletting pages come in behind it.  Add one more test to give it the same\npincer effect.\n\nSigned-off-by: 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": "b85e0effd3dcbf9118b896232f59526ab1a39a74",
      "tree": "32200b2e4052d50d4eb1771e555eaf66d7c4cfc8",
      "parents": [
        "8a549bea51138be2126a2cc6aabe8f17ef66b79b"
      ],
      "author": {
        "name": "Hugh Dickins",
        "email": "hughd@google.com",
        "time": "Mon Jul 25 17:12:25 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jul 25 20:57:10 2011 -0700"
      },
      "message": "mm: consistent truncate and invalidate loops\n\nMake the pagevec_lookup loops in truncate_inode_pages_range(),\ninvalidate_mapping_pages() and invalidate_inode_pages2_range() more\nconsistent with each other.\n\nThey were relying upon page-\u003eindex of an unlocked page, but apologizing\nfor it: accept it, embrace it, add comments and WARN_ONs, and simplify the\nindex handling.\n\ninvalidate_inode_pages2_range() had special handling for a wrapped\npage-\u003eindex + 1 \u003d 0 case; but MAX_LFS_FILESIZE doesn\u0027t let us anywhere\nnear there, and a corrupt page-\u003eindex in the radix_tree could cause more\ntrouble than that would catch.  Remove that wrapped handling.\n\ninvalidate_inode_pages2_range() uses min() to limit the pagevec_lookup\nwhen near the end of the range: copy that into the other two, although\nit\u0027s less useful than you might think (it limits the use of the buffer,\nrather than the indices looked up).\n\nSigned-off-by: 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": "8a549bea51138be2126a2cc6aabe8f17ef66b79b",
      "tree": "dc6e0afdf59808238dd44c685d897da98852fca5",
      "parents": [
        "85821aab39b3403a8b5731812a930b78684d1642"
      ],
      "author": {
        "name": "Hugh Dickins",
        "email": "hughd@google.com",
        "time": "Mon Jul 25 17:12:24 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jul 25 20:57:10 2011 -0700"
      },
      "message": "mm: tidy vmtruncate_range and related functions\n\nUse consistent variable names in truncate_pagecache(), truncate_setsize(),\nvmtruncate() and vmtruncate_range().\n\nunmap_mapping_range() and vmtruncate_range() have mismatched interfaces:\ndon\u0027t change either, but make the vmtruncates more precise about what they\nexpect unmap_mapping_range() to do.\n\nvmtruncate_range() is currently called only with page-aligned start and\nend+1: can handle unaligned start, but unaligned end+1 would hit BUG_ON in\ntruncate_inode_pages_range() (lacks partial clearing of the end page).\n\nSigned-off-by: 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": "85821aab39b3403a8b5731812a930b78684d1642",
      "tree": "dfac06b03f57a26146df3013b8fb6eb7a85158c6",
      "parents": [
        "5e5358e7cf48aa079b8761a7d806ad536023745c"
      ],
      "author": {
        "name": "Hugh Dickins",
        "email": "hughd@google.com",
        "time": "Mon Jul 25 17:12:23 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jul 25 20:57:10 2011 -0700"
      },
      "message": "mm: truncate functions are in truncate.c\n\nCorrect comment on truncate_inode_pages*() in linux/mm.h; and remove\ndeclaration of page_unuse(), it didn\u0027t exist even in 2.2.26 or 2.4.0!\n\nSigned-off-by: 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": "5e5358e7cf48aa079b8761a7d806ad536023745c",
      "tree": "8a0668541c8b356b46c32eea7f28a2f72259eef6",
      "parents": [
        "df077ac4687500e02a273a628057ff5ab17dc19f"
      ],
      "author": {
        "name": "Hugh Dickins",
        "email": "hughd@google.com",
        "time": "Mon Jul 25 17:12:23 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jul 25 20:57:10 2011 -0700"
      },
      "message": "mm: cleanup descriptions of filler arg\n\nThe often-NULL data arg to read_cache_page() and read_mapping_page()\nfunctions is misdescribed as \"destination for read data\": no, it\u0027s the\nfirst arg to the filler function, often struct file * to -\u003ereadpage().\n\nSatisfy checkpatch.pl on those filler prototypes, and tidy up the\ndeclarations in linux/pagemap.h.\n\nSigned-off-by: 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": "df077ac4687500e02a273a628057ff5ab17dc19f",
      "tree": "3a28c3e9f2f0f529caa5da4770111dc78db071ba",
      "parents": [
        "683d2fa672da5e3b4fe96f13c43eba32b068d64b"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Jul 25 17:12:22 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jul 25 20:57:10 2011 -0700"
      },
      "message": "sparc64: implement get_user_pages_fast()\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "683d2fa672da5e3b4fe96f13c43eba32b068d64b",
      "tree": "6099a5134e6eab57e8b62fb0326ba341cafb091b",
      "parents": [
        "4a0100f7546fb642e0e04a38fa7ca198cd016b47"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Jul 25 17:12:21 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jul 25 20:57:10 2011 -0700"
      },
      "message": "sparc64: add support for _PAGE_SPECIAL\n\nLuckily there are still a few software PTE bits remaining and they even\nmatch up in both the sun4u and sun4v pte layouts.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "4a0100f7546fb642e0e04a38fa7ca198cd016b47",
      "tree": "15ed3de95abf8715a157922e6ac9c6b5fa34e200",
      "parents": [
        "4dedbf8dc1c825f2e4aa2d2624058533b5d76f85"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Jul 25 17:12:21 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jul 25 20:57:10 2011 -0700"
      },
      "message": "sparc64: use RCU page table freeing\n\nMake use of the generic RCU page table freeing on Sparc64, doing so allows\nfor race-free software page-table walkers like gup_fast().\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "4dedbf8dc1c825f2e4aa2d2624058533b5d76f85",
      "tree": "97e86bdd9ed13900aa7ef656ba23d0f3d7ec533c",
      "parents": [
        "c15bef3099c346f2124367bff46954b59e13c3ee"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Jul 25 17:12:20 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jul 25 20:57:09 2011 -0700"
      },
      "message": "sparc64: kill page table quicklists\n\nWith the recent mmu_gather changes that included generic RCU freeing of\npage-tables, it is now quite straightforward to implement gup_fast() on\nsparc64.\n\nThis patch:\n\nRemove the page table quicklists.  They are pointless and make it harder\nto use RCU page table freeing and share code with other architectures.\n\nBTW, this is the second time this has happened, see commit 3c936465249f\n(\"[SPARC64]: Kill pgtable quicklists and use SLAB.\")\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "c15bef3099c346f2124367bff46954b59e13c3ee",
      "tree": "ec09c0b25eae42d6693a08decde7aee02f296978",
      "parents": [
        "c9d8c3d0896bfa5b57531ecc41a85ffbc6d87dbe"
      ],
      "author": {
        "name": "Dmitry Fink",
        "email": "dmitry.fink@palm.com",
        "time": "Mon Jul 25 17:12:19 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jul 25 20:57:09 2011 -0700"
      },
      "message": "mmap: fix and tidy up overcommit page arithmetic\n\n- shmem pages are not immediately available, but they are not\n  potentially available either, even if we swap them out, they will just\n  relocate from memory into swap, total amount of immediate and\n  potentially available memory is not going to be affected, so we\n  shouldn\u0027t count them as potentially free in the first place.\n\n- nr_free_pages() is not an expensive operation anymore, there is no\n  need to split the decision making in two halves and repeat code.\n\nSigned-off-by: Dmitry Fink \u003cdmitry.fink@palm.com\u003e\nReviewed-by: Minchan Kim \u003cminchan.kim@gmail.com\u003e\nAcked-by: 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": "c9d8c3d0896bfa5b57531ecc41a85ffbc6d87dbe",
      "tree": "0de7519c20e066c820d37ff32be319745e7a2f8e",
      "parents": [
        "be8f684d73d8d916847e996bf69cef14352872c6"
      ],
      "author": {
        "name": "Andrew Morton",
        "email": "akpm@linux-foundation.org",
        "time": "Mon Jul 25 17:12:18 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jul 25 20:57:09 2011 -0700"
      },
      "message": "mm/memblock.c: avoid abuse of RED_INACTIVE\n\nRED_INACTIVE is a slab thing, and reusing it for memblock was\ninappropriate, because memblock is dealing with phys_addr_t\u0027s which have a\nKconfigurable sizeof().\n\nCreate a new poison type for this application.  Fixes the sparse warning\n\n    warning: cast truncates bits from constant value (9f911029d74e35b becomes 9d74e35b)\n\nReported-by: H Hartley Sweeten \u003chartleys@visionengravers.com\u003e\nTested-by: H Hartley Sweeten \u003chartleys@visionengravers.com\u003e\nAcked-by: Pekka Enberg \u003cpenberg@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": "be8f684d73d8d916847e996bf69cef14352872c6",
      "tree": "7a7be6cd2030c6cdeb57f6ed51fe04dd5a137726",
      "parents": [
        "11239836c04b50ba8453ec58ca7a7bd716ef02c1"
      ],
      "author": {
        "name": "David Rientjes",
        "email": "rientjes@google.com",
        "time": "Mon Jul 25 17:12:18 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jul 25 20:57:09 2011 -0700"
      },
      "message": "oom: make deprecated use of oom_adj more verbose\n\n/proc/pid/oom_adj is deprecated and scheduled for removal in August 2012\naccording to Documentation/feature-removal-schedule.txt.\n\nThis patch makes the warning more verbose by making it appear as a more\nserious problem (the presence of a stack trace and being multiline should\nattract more attention) so that applications still using the old interface\ncan get fixed.\n\nVery popular users of the old interface have been converted since the oom\nkiller rewrite has been introduced.  udevd switched to the\n/proc/pid/oom_score_adj interface for v162, kde switched in 4.6.1, and\nopensshd switched in 5.7p1.\n\nAt the start of 2012, this should be changed into a WARN() to emit all\nsuch incidents and then finally remove the tunable in August 2012 as\nscheduled.\n\nSigned-off-by: David Rientjes \u003crientjes@google.com\u003e\nCc: KAMEZAWA Hiroyuki \u003ckamezawa.hiroyu@jp.fujitsu.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": "11239836c04b50ba8453ec58ca7a7bd716ef02c1",
      "tree": "358705632aecb348e35f01fcc26281326d5a514a",
      "parents": [
        "6ac47520063b230641a64062b8a229201cd0a3a8"
      ],
      "author": {
        "name": "David Rientjes",
        "email": "rientjes@google.com",
        "time": "Mon Jul 25 17:12:17 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jul 25 20:57:09 2011 -0700"
      },
      "message": "oom: remove references to old badness() function\n\nThe badness() function in the oom killer was renamed to oom_badness() in\na63d83f427fb (\"oom: badness heuristic rewrite\") since it is a globally\nexported function for clarity.\n\nThe prototype for the old function still existed in linux/oom.h, so remove\nit.  There are no existing users.\n\nAlso fixes documentation and comment references to badness() and adjusts\nthem accordingly.\n\nSigned-off-by: David Rientjes \u003crientjes@google.com\u003e\nReviewed-by: 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": "6ac47520063b230641a64062b8a229201cd0a3a8",
      "tree": "e26a25226f980a50468f001bbd3243d74d0d9768",
      "parents": [
        "32f84528fbb5177275193a3311be8756f0cbd62c"
      ],
      "author": {
        "name": "Andrew Morton",
        "email": "akpm@linux-foundation.org",
        "time": "Mon Jul 25 17:12:16 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jul 25 20:57:09 2011 -0700"
      },
      "message": "mm/memory.c: remove ZAP_BLOCK_SIZE\n\nZAP_BLOCK_SIZE became unused in the preemptible-mmu_gather work (\"mm:\nRemove i_mmap_lock lockbreak\").  So zap it.\n\nCc: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "32f84528fbb5177275193a3311be8756f0cbd62c",
      "tree": "8b2bbc3e35ddc6ce17e6b7ab68b50d6bc1a565f9",
      "parents": [
        "d788e80a8c83ecdbdd55b6e985cced9cfe3a815b"
      ],
      "author": {
        "name": "Chris Forbes",
        "email": "chrisf@ijw.co.nz",
        "time": "Mon Jul 25 17:12:14 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jul 25 20:57:09 2011 -0700"
      },
      "message": "mm: hugetlb: fix coding style issues\n\nFix coding style issues flagged by checkpatch.pl\n\nSigned-off-by: Chris Forbes \u003cchrisf@ijw.co.nz\u003e\nAcked-by: Eric B Munson \u003cemunson@mgebm.net\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "d788e80a8c83ecdbdd55b6e985cced9cfe3a815b",
      "tree": "d287900bc24e17b7d65f1f57b9c59901040ea01d",
      "parents": [
        "1bb36fbd4d58ec3fab4dab5ed39a2af492c263ea"
      ],
      "author": {
        "name": "Chris Wright",
        "email": "chrisw@sous-sol.org",
        "time": "Mon Jul 25 17:12:14 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jul 25 20:57:09 2011 -0700"
      },
      "message": "mm/huge_memory.c: minor lock simplification in __khugepaged_exit\n\nThe lock is released first thing in all three branches.  Simplify this by\nunconditionally releasing lock and remove else clause which was only there\nto be sure lock was released.\n\nSigned-off-by: Chris Wright \u003cchrisw@sous-sol.org\u003e\nReviewed-by: Michal Hocko \u003cmhocko@suse.cz\u003e\nCc: Andrea Arcangeli \u003caarcange@redhat.com\u003e\nAcked-by: Johannes Weiner \u003cjweiner@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": "1bb36fbd4d58ec3fab4dab5ed39a2af492c263ea",
      "tree": "b381b2a4a0d212053516073a8bd21e7b4c59cfad",
      "parents": [
        "00a66d2974485d7d95d61d5772142b2a2231ed2a"
      ],
      "author": {
        "name": "Daniel Kiper",
        "email": "dkiper@net-space.pl",
        "time": "Mon Jul 25 17:12:13 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jul 25 20:57:09 2011 -0700"
      },
      "message": "mm/page_cgroup.c: simplify code by using SECTION_ALIGN_UP() and SECTION_ALIGN_DOWN() macros\n\nCommit a539f3533b78e3 (\"mm: add SECTION_ALIGN_UP() and\nSECTION_ALIGN_DOWN() macro\") introduced the SECTION_ALIGN_UP() and\nSECTION_ALIGN_DOWN() macros.  Use those macros to increase code\nreadability.\n\nSigned-off-by: Daniel Kiper \u003cdkiper@net-space.pl\u003e\nAcked-by: David Rientjes \u003crientjes@google.com\u003e\nAcked-by: 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": "00a66d2974485d7d95d61d5772142b2a2231ed2a",
      "tree": "14d5ca10dfc641594e7109902cdabb4a3c408d98",
      "parents": [
        "dd78553b5e7a0b34c0b60478d04ee16d8d8f4fa7"
      ],
      "author": {
        "name": "WANG Cong",
        "email": "xiyou.wangcong@gmail.com",
        "time": "Mon Jul 25 17:12:12 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jul 25 20:57:09 2011 -0700"
      },
      "message": "mm: remove the leftovers of noswapaccount\n\nIn commit a2c8990aed5ab (\"memsw: remove noswapaccount kernel parameter\"),\nMichal forgot to remove some left pieces of noswapaccount in the tree,\nthis patch removes them all.\n\nSigned-off-by: WANG Cong \u003cxiyou.wangcong@gmail.com\u003e\nAcked-by: Michal Hocko \u003cmhocko@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": "dd78553b5e7a0b34c0b60478d04ee16d8d8f4fa7",
      "tree": "18bdb94761365c248392d29004f68d9181955ead",
      "parents": [
        "c27fe4c8942d3ca715986f79cc26f44608d7d9fb"
      ],
      "author": {
        "name": "KOSAKI Motohiro",
        "email": "kosaki.motohiro@jp.fujitsu.com",
        "time": "Mon Jul 25 17:12:11 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jul 25 20:57:09 2011 -0700"
      },
      "message": "pagewalk: fix code comment for THP\n\nCommit bae9c19bf1 (\"thp: split_huge_page_mm/vma\") changed locking behavior\nof walk_page_range().  Thus this patch changes the comment too.\n\nSigned-off-by: KOSAKI Motohiro \u003ckosaki.motohiro@jp.fujitsu.com\u003e\nCc: Naoya Horiguchi \u003cn-horiguchi@ah.jp.nec.com\u003e\nCc: Hiroyuki Kamezawa \u003ckamezawa.hiroyuki@gmail.com\u003e\nCc: Andrea Arcangeli \u003caarcange@redhat.com\u003e\nCc: Matt Mackall \u003cmpm@selenic.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "c27fe4c8942d3ca715986f79cc26f44608d7d9fb",
      "tree": "d954d0417c941f5e51cf029608311ef04acd9575",
      "parents": [
        "6c6d5280431544e4036886ea74e3334a98bc5f96"
      ],
      "author": {
        "name": "KOSAKI Motohiro",
        "email": "kosaki.motohiro@jp.fujitsu.com",
        "time": "Mon Jul 25 17:12:10 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jul 25 20:57:08 2011 -0700"
      },
      "message": "pagewalk: add locking-rule comments\n\nOriginally, walk_hugetlb_range() didn\u0027t require a caller take any lock.\nBut commit d33b9f45bd (\"mm: hugetlb: fix hugepage memory leak in\nwalk_page_range\") changed its rule.  Because it added find_vma() call in\nwalk_hugetlb_range().\n\nAny locking-rule change commit should write a doc too.\n\n[akpm@linux-foundation.org: clarify comment]\nSigned-off-by: KOSAKI Motohiro \u003ckosaki.motohiro@jp.fujitsu.com\u003e\nCc: Naoya Horiguchi \u003cn-horiguchi@ah.jp.nec.com\u003e\nCc: Hiroyuki Kamezawa \u003ckamezawa.hiroyuki@gmail.com\u003e\nCc: Andrea Arcangeli \u003caarcange@redhat.com\u003e\nCc: Matt Mackall \u003cmpm@selenic.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    }
  ],
  "next": "6c6d5280431544e4036886ea74e3334a98bc5f96"
}
