)]}'
{
  "log": [
    {
      "commit": "b66c5984017533316fd1951770302649baf1aa33",
      "tree": "78d1e5fc82a057c62699734602c8e5f7ca86b7a2",
      "parents": [
        "9f9c9cbb60576a1518d0bf93fb8e499cffccf377"
      ],
      "author": {
        "name": "Kees Cook",
        "email": "keescook@chromium.org",
        "time": "Thu Dec 20 15:05:16 2012 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Dec 20 17:40:19 2012 -0800"
      },
      "message": "exec: do not leave bprm-\u003einterp on stack\n\nIf a series of scripts are executed, each triggering module loading via\nunprintable bytes in the script header, kernel stack contents can leak\ninto the command line.\n\nNormally execution of binfmt_script and binfmt_misc happens recursively.\nHowever, when modules are enabled, and unprintable bytes exist in the\nbprm-\u003ebuf, execution will restart after attempting to load matching\nbinfmt modules.  Unfortunately, the logic in binfmt_script and\nbinfmt_misc does not expect to get restarted.  They leave bprm-\u003einterp\npointing to their local stack.  This means on restart bprm-\u003einterp is\nleft pointing into unused stack memory which can then be copied into the\nuserspace argv areas.\n\nAfter additional study, it seems that both recursion and restart remains\nthe desirable way to handle exec with scripts, misc, and modules.  As\nsuch, we need to protect the changes to interp.\n\nThis changes the logic to require allocation for any changes to the\nbprm-\u003einterp.  To avoid adding a new kmalloc to every exec, the default\nvalue is left as-is.  Only when passing through binfmt_script or\nbinfmt_misc does an allocation take place.\n\nFor a proof of concept, see DoTest.sh from:\n\n   http://www.halfdog.net/Security/2012/LinuxKernelBinfmtScriptStackDataDisclosure/\n\nSigned-off-by: Kees Cook \u003ckeescook@chromium.org\u003e\nCc: halfdog \u003cme@halfdog.net\u003e\nCc: P J P \u003cppandit@redhat.com\u003e\nCc: Alexander Viro \u003cviro@zeniv.linux.org.uk\u003e\nCc: \u003cstable@vger.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": "787314c35fbb97e02823a1b8eb8cfa58f366cd49",
      "tree": "3fe5a484c1846c80361217a726997484533e8344",
      "parents": [
        "6491d4d02893d9787ba67279595990217177b351",
        "9c6ecf6a3ade2dc4b03a239af68058b22897af41"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Dec 20 10:07:25 2012 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Dec 20 10:07:25 2012 -0800"
      },
      "message": "Merge tag \u0027iommu-updates-v3.8\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/joro/iommu\n\nPull IOMMU updates from Joerg Roedel:\n \"A few new features this merge-window.  The most important one is\n  probably, that dma-debug now warns if a dma-handle is not checked with\n  dma_mapping_error by the device driver.  This requires minor changes\n  to some architectures which make use of dma-debug.  Most of these\n  changes have the respective Acks by the Arch-Maintainers.\n\n  Besides that there are updates to the AMD IOMMU driver for refactor\n  the IOMMU-Groups support and to make sure it does not trigger a\n  hardware erratum.\n\n  The OMAP changes (for which I pulled in a branch from Tony Lindgren\u0027s\n  tree) have a conflict in linux-next with the arm-soc tree.  The\n  conflict is in the file arch/arm/mach-omap2/clock44xx_data.c which is\n  deleted in the arm-soc tree.  It is safe to delete the file too so\n  solve the conflict.  Similar changes are done in the arm-soc tree in\n  the common clock framework migration.  A missing hunk from the patch\n  in the IOMMU tree will be submitted as a seperate patch when the\n  merge-window is closed.\"\n\n* tag \u0027iommu-updates-v3.8\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/joro/iommu: (29 commits)\n  ARM: dma-mapping: support debug_dma_mapping_error\n  ARM: OMAP4: hwmod data: ipu and dsp to use parent clocks instead of leaf clocks\n  iommu/omap: Adapt to runtime pm\n  iommu/omap: Migrate to hwmod framework\n  iommu/omap: Keep mmu enabled when requested\n  iommu/omap: Remove redundant clock handling on ISR\n  iommu/amd: Remove obsolete comment\n  iommu/amd: Don\u0027t use 512GB pages\n  iommu/tegra: smmu: Move bus_set_iommu after probe for multi arch\n  iommu/tegra: gart: Move bus_set_iommu after probe for multi arch\n  iommu/tegra: smmu: Remove unnecessary PTC/TLB flush all\n  tile: dma_debug: add debug_dma_mapping_error support\n  sh: dma_debug: add debug_dma_mapping_error support\n  powerpc: dma_debug: add debug_dma_mapping_error support\n  mips: dma_debug: add debug_dma_mapping_error support\n  microblaze: dma-mapping: support debug_dma_mapping_error\n  ia64: dma_debug: add debug_dma_mapping_error support\n  c6x: dma_debug: add debug_dma_mapping_error support\n  ARM64: dma_debug: add debug_dma_mapping_error support\n  intel-iommu: Prevent devices with RMRRs from being placed into SI Domain\n  ...\n"
    },
    {
      "commit": "b7dfde956daee23f4439d0c8562a5e38b43e79d9",
      "tree": "2ed71fb5c5eac6957fd1e1ad0a67be6c3282167a",
      "parents": [
        "03c850ec327c42a97e44c448b75983e12da417d9",
        "1b6370463e88b0c1c317de16d7b962acc1dab4f2"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Dec 20 08:37:04 2012 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Dec 20 08:37:05 2012 -0800"
      },
      "message": "Merge tag \u0027virtio-next-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/rusty/linux\n\nPull virtio update from Rusty Russell:\n \"Some nice cleanups, and even a patch my wife did as a \"live\" demo for\n  Latinoware 2012.\n\n  There\u0027s a slightly non-trivial merge in virtio-net, as we cleaned up\n  the virtio add_buf interface while DaveM accepted the mq virtio-net\n  patches.\"\n\n* tag \u0027virtio-next-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/rusty/linux: (27 commits)\n  virtio_console: Add support for remoteproc serial\n  virtio_console: Merge struct buffer_token into struct port_buffer\n  virtio: add drv_to_virtio to make code clearly\n  virtio: use dev_to_virtio wrapper in virtio\n  virtio-mmio: Fix irq parsing in command line parameter\n  virtio_console: Free buffers from out-queue upon close\n  virtio: Convert dev_printk(KERN_\u003cLEVEL\u003e to dev_\u003clevel\u003e(\n  virtio_console: Use kmalloc instead of kzalloc\n  virtio_console: Free buffer if splice fails\n  virtio: tools: make it clear that virtqueue_add_buf() no longer returns \u003e 0\n  virtio: scsi: make it clear that virtqueue_add_buf() no longer returns \u003e 0\n  virtio: rpmsg: make it clear that virtqueue_add_buf() no longer returns \u003e 0\n  virtio: net: make it clear that virtqueue_add_buf() no longer returns \u003e 0\n  virtio: console: make it clear that virtqueue_add_buf() no longer returns \u003e 0\n  virtio: make virtqueue_add_buf() returning 0 on success, not capacity.\n  virtio: console: don\u0027t rely on virtqueue_add_buf() returning capacity.\n  virtio_net: don\u0027t rely on virtqueue_add_buf() returning capacity.\n  virtio-net: remove unused skb_vnet_hdr-\u003enum_sg field\n  virtio-net: correct capacity math on ring full\n  virtio: move queue_index and num_free fields into core struct virtqueue.\n  ...\n"
    },
    {
      "commit": "1ffab3d4139533eff6e27b7568825307e575faa6",
      "tree": "eca25b2ef6b9b7c8168625c2a5dea6b08fd37756",
      "parents": [
        "ddedec28b1d5144bc2c765d97003997f3505fd3a",
        "4d1839138220e7e35bf9e31c854e4e0196dea7a1"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Dec 20 07:21:54 2012 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Dec 20 07:21:54 2012 -0800"
      },
      "message": "Merge tag \u0027fixes\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc\n\nPull ARM SoC fixes from Olof Johansson:\n \"This is a batch of fixes for arm-soc platforms, most of it is for OMAP\n  but there are others too (i.MX, Tegra, ep93xx).  Fixes warnings, some\n  broken platforms and drivers, etc.  A bit all over the map really.\"\n\nThere was some concern about commit 68136b10 (\"RM: sunxi: Change device\ntree naming scheme for sunxi\"), but Tony says:\n \"Looks like that\u0027s trivial to fix as needed, no need to rebuild the\n  branch to fix that AFAIK.\n\n  The fix can be done once Olof is available online again.\n\n  Linus, I suggest that you go ahead and pull this if there are no other\n  issues with this branch.\"\n\n* tag \u0027fixes\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc: (32 commits)\n  ARM: sunxi: Change device tree naming scheme for sunxi\n  ARM: ux500: fix missing include\n  ARM: u300: delete custom pin hog code\n  ARM: davinci: fix build break due to missing include\n  ARM: exynos: Fix warning due to missing \u0027inline\u0027 in stub\n  ARM: imx: Move platform-mx2-emma to arch/arm/mach-imx/devices\n  ARM i.MX51 clock: Fix regression since enabling MIPI/HSP clocks\n  ARM: dts: mx27: Fix the AIPI bus for FEC\n  ARM: OMAP2+: common: remove use of vram\n  ARM: OMAP3/4: cpuidle: fix sparse and checkpatch warnings\n  ARM: OMAP4: clock data: DPLLs are missing bypass clocks in their parent lists\n  ARM: OMAP4: clock data: div_iva_hs_clk is a power-of-two divider\n  ARM: OMAP4: Fix EMU clock domain always on\n  ARM: OMAP4460: Workaround ABE DPLL failing to turn-on\n  ARM: OMAP4: Enhance support for DPLLs with 4X multiplier\n  ARM: OMAP4: Add function table for non-M4X dplls\n  ARM: OMAP4: Update timer clock aliases\n  ARM: OMAP: Move plat/omap-serial.h to include/linux/platform_data/serial-omap.h\n  ARM: dts: Add build target for omap4-panda-a4\n  ARM: dts: OMAP2420: Correct H4 board memory size\n  ...\n"
    },
    {
      "commit": "ada65c74059f8c104f1b467c126205471634c435",
      "tree": "795e6bbf35c5a70b8778ec53bf5124ef546eefbb",
      "parents": [
        "b6fa0cd62c5b9d47f8e5d42cb2876677a5ed701e"
      ],
      "author": {
        "name": "Maarten Lankhorst",
        "email": "maarten.lankhorst@canonical.com",
        "time": "Wed Dec 12 10:23:03 2012 +0100"
      },
      "committer": {
        "name": "Sumit Semwal",
        "email": "sumit.semwal@linaro.org",
        "time": "Thu Dec 20 12:05:06 2012 +0530"
      },
      "message": "dma-buf: remove fallback for !CONFIG_DMA_SHARED_BUFFER\n\nDocumentation says that code requiring dma-buf should add it to\nselect, so inline fallbacks are not going to be used. A link error\nwill make it obvious what went wrong, instead of silently doing\nnothing at runtime.\n\nSigned-off-by: Maarten Lankhorst \u003cmaarten.lankhorst@canonical.com\u003e\nReviewed-by: Daniel Vetter \u003cdaniel.vetter@ffwll.ch\u003e\nReviewed-by: Rob Clark \u003crob.clark@linaro.org\u003e\nSigned-off-by: Sumit Semwal \u003csumit.semwal@linaro.org\u003e\n"
    },
    {
      "commit": "9eb127cc04c4005c8c0708ce92146d91da862b42",
      "tree": "bebab2c136110edf32d6cf32f898871df9fbb0e6",
      "parents": [
        "e32795503de02da4e7e74a5e039cc268f6a0ecfb",
        "152a2a8b5e1d4cbe91a7c66f1028db15164a3766"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Dec 19 20:29:15 2012 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Dec 19 20:29:15 2012 -0800"
      },
      "message": "Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net\n\nPull networking fixes from David Miller:\n\n 1) Really fix tuntap SKB use after free bug, from Eric Dumazet.\n\n 2) Adjust SKB data pointer to point past the transport header before\n    calling icmpv6_notify() so that the headers are in the state which\n    that function expects.  From Duan Jiong.\n\n 3) Fix ambiguities in the new tuntap multi-queue APIs.  From Jason\n    Wang.\n\n 4) mISDN needs to use del_timer_sync(), from Konstantin Khlebnikov.\n\n 5) Don\u0027t destroy mutex after freeing up device private in mac802154,\n    fix also from Konstantin Khlebnikov.\n\n 6) Fix INET request socket leak in TCP and DCCP, from Christoph Paasch.\n\n 7) SCTP HMAC kconfig rework, from Neil Horman.\n\n 8) Fix SCTP jprobes function signature, otherwise things explode, from\n    Daniel Borkmann.\n\n 9) Fix typo in ipv6-offload Makefile variable reference, from Simon\n    Arlott.\n\n10) Don\u0027t fail USBNET open just because remote wakeup isn\u0027t supported,\n    from Oliver Neukum.\n\n11) be2net driver bug fixes from Sathya Perla.\n\n12) SOLOS PCI ATM driver bug fixes from Nathan Williams and David\n    Woodhouse.\n\n13) Fix MTU changing regression in 8139cp driver, from John Greene.\n\n* git://git.kernel.org/pub/scm/linux/kernel/git/davem/net: (45 commits)\n  solos-pci: ensure all TX packets are aligned to 4 bytes\n  solos-pci: add firmware upgrade support for new models\n  solos-pci: remove superfluous debug output\n  solos-pci: add GPIO support for newer versions on Geos board\n  8139cp: Prevent dev_close/cp_interrupt race on MTU change\n  net: qmi_wwan: add ZTE MF880\n  drivers/net: Use of_match_ptr() macro in smsc911x.c\n  drivers/net: Use of_match_ptr() macro in smc91x.c\n  ipv6: addrconf.c: remove unnecessary \"if\"\n  bridge: Correctly encode addresses when dumping mdb entries\n  bridge: Do not unregister all PF_BRIDGE rtnl operations\n  use generic usbnet_manage_power()\n  usbnet: generic manage_power()\n  usbnet: handle PM failure gracefully\n  ksz884x: fix receive polling race condition\n  qlcnic: update driver version\n  qlcnic: fix unused variable warnings\n  net: fec: forbid FEC_PTP on SoCs that do not support\n  be2net: fix wrong frag_idx reported by RX CQ\n  be2net: fix be_close() to ensure all events are ack\u0027ed\n  ...\n"
    },
    {
      "commit": "e32795503de02da4e7e74a5e039cc268f6a0ecfb",
      "tree": "2520af6bb12359458846d73842733c7cd07416a3",
      "parents": [
        "dcd6a97d1d821335051cbf35b1e2be54955d6276",
        "ab28698d33af05abab0bcf8021eafe38f7434f24",
        "bc1008cf7d243cf6ad87b1e16d3dbbd8c8d6f35c",
        "d3601e56cf64a3f2df6f6380cccb3644274406e2"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Dec 19 20:26:16 2012 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Dec 19 20:26:16 2012 -0800"
      },
      "message": "Merge tags \u0027dt-for-linus\u0027, \u0027gpio-for-linus\u0027 and \u0027spi-for-linus\u0027 of git://git.secretlab.ca/git/linux-2.6\n\nPull devicetree, gpio and spi bugfixes from Grant Likely:\n \"Device tree v3.8 bug fix:\n   - Fixes an undefined struct device build error and a missing symbol\n     export.\n\n  GPIO device driver bug fixes:\n   - gpio/mvebu-gpio: Make mvebu-gpio depend on OF_CONFIG\n   - gpio/ich: Add missing spinlock init\n\n  SPI device driver bug fixes:\n   - Most of this is bug fixes to the core code and the sh-hspi and\n     s3c64xx device drivers.\n\n   - There is also a patch here to add DT support to the Atmel driver.\n     This one should have been in the first round, but I missed it.\n     It\u0027s a low risk change contained within a single driver and the\n     Atmel maintainer has requested it.\"\n\n* tag \u0027dt-for-linus\u0027 of git://git.secretlab.ca/git/linux-2.6:\n  of: define struct device in of_platform.h if !OF_DEVICE and !OF_ADDRESS\n  of: Fix export of of_find_matching_node_and_match()\n\n* tag \u0027gpio-for-linus\u0027 of git://git.secretlab.ca/git/linux-2.6:\n  gpio/mvebu-gpio: Make mvebu-gpio depend on OF_CONFIG\n  gpio/ich: Add missing spinlock init\n\n* tag \u0027spi-for-linus\u0027 of git://git.secretlab.ca/git/linux-2.6:\n  spi/sh-hspi: fix return value check in hspi_probe().\n  spi: fix tegra SPI binding examples\n  spi/atmel: add DT support\n  of/spi: Fix SPI module loading by using proper \"spi:\" modalias prefixes.\n  spi: Change FIFO flush operation and spi channel off\n  spi: Keep chipselect assertion during one message\n"
    },
    {
      "commit": "ca2a88f56aa385890c7fd4ce9d2722b0848ca990",
      "tree": "935fd9cec938677d6529db203f24d803ed5f0b19",
      "parents": [
        "3935e89505a1c3ab3f3b0c7ef0eae54124f48905",
        "d4d4f1bf6a343b25220fdcdf559fd593dd3e25a7"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Dec 19 12:47:41 2012 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Dec 19 12:47:41 2012 -0800"
      },
      "message": "Merge tag \u0027for-linus-20121219\u0027 of git://git.infradead.org/linux-mtd\n\nPull MTD updates from David Woodhouse:\n - Various cleanups especially in NAND tests\n - Add support for NAND flash on BCMA bus\n - DT support for sh_flctl and denali NAND drivers\n - Kill obsolete/superceded drivers (fortunet, nomadik_nand)\n - Fix JFFS2 locking bug in ENOMEM failure path\n - New SPI flash chips, as usual\n - Support writing in \u0027reliable mode\u0027 for DiskOnChip G4\n - Debugfs support in nandsim\n\n* tag \u0027for-linus-20121219\u0027 of git://git.infradead.org/linux-mtd: (96 commits)\n  mtd: nand: typo in nand_id_has_period() comments\n  mtd: nand/gpio: use io{read,write}*_rep accessors\n  mtd: block2mtd: throttle writes by calling balance_dirty_pages_ratelimited.\n  mtd: nand: gpmi: reset BCH earlier, too, to avoid NAND startup problems\n  mtd: nand/docg4: fix and improve read of factory bbt\n  mtd: nand/docg4: reserve bb marker area in ecclayout\n  mtd: nand/docg4: add support for writing in reliable mode\n  mtd: mxc_nand: reorder part_probes to let cmdline override other sources\n  mtd: mxc_nand: fix unbalanced clk_disable() in error path\n  mtd: nandsim: Introduce debugfs infrastructure\n  mtd: physmap_of: error checking to prevent a NULL pointer dereference\n  mtg: docg3: potential divide by zero in doc_write_oob()\n  mtd: bcm47xxnflash: writing support\n  mtd: tests/read: initialize buffer for whole next page\n  mtd: at91: atmel_nand: return bit flips for the PMECC read_page()\n  mtd: fix recovery after failed write-buffer operation in cfi_cmdset_0002.c\n  mtd: nand: onfi need to be probed in 8 bits mode\n  mtd: nand: add NAND_BUSWIDTH_AUTO to autodetect bus width\n  mtd: nand: print flash size during detection\n  mted: nand_wait_ready timeout fix\n  ...\n"
    },
    {
      "commit": "2dd7c8cf29769f6b66f26b501db2364640c2c9d0",
      "tree": "4b1e49cc9ff436092fbf086d6748a0cf3f3940c1",
      "parents": [
        "a1c088e01b71d90852b0df5a77cdae46bd0e0c05"
      ],
      "author": {
        "name": "Oliver Neukum",
        "email": "oliver@neukum.org",
        "time": "Tue Dec 18 04:45:52 2012 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Dec 19 12:46:40 2012 -0800"
      },
      "message": "usbnet: generic manage_power()\n\nCentralise common code for manage_power() in usbnet\nby making a generic simple implementation\n\nSigned-off-by: Oliver Neukum \u003coneukum@suse.de\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "a1c088e01b71d90852b0df5a77cdae46bd0e0c05",
      "tree": "5aa6cae3330418b279d8f77d2bb466f75eee9018",
      "parents": [
        "4945106d21926eadaaa1c5465d26d9a0d26a2420"
      ],
      "author": {
        "name": "Oliver Neukum",
        "email": "oliver@neukum.org",
        "time": "Tue Dec 18 04:45:29 2012 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Dec 19 12:46:40 2012 -0800"
      },
      "message": "usbnet: handle PM failure gracefully\n\nIf a device fails to do remote wakeup, this is no reason\nto abort an open totally. This patch just continues without\nruntime PM.\n\nSigned-off-by: Oliver Neukum \u003coneukum@suse.de\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "74779e22261172ea728b989310f6ecc991b57d62",
      "tree": "a6c71e02bf6cefc9e0d261dd1ab11f4a7433ed92",
      "parents": [
        "5031a2a7c12b837a0913c4139ebeb6bbff5e1aa5",
        "20e8ac3eea4dcfeea6ebeae57cd2c739fa48da11"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Dec 19 08:19:07 2012 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Dec 19 08:19:07 2012 -0800"
      },
      "message": "Merge tag \u0027for-3.8-rc1\u0027 of git://gitorious.org/linux-pwm/linux-pwm\n\nPull pwm changes from Thierry Reding:\n \"A new driver has been added for the SPEAr platform and the\n  TWL4030/6030 driver has been replaced by two drivers that control the\n  regular PWMs and the PWM driven LEDs provided by the chips.\n\n  The vt8500, tiecap, tiehrpwm, i.MX, LPC32xx and Samsung drivers have\n  all been improved and the device tree bindings now support the PWM\n  signal polarity.\"\n\nFix up trivial conflicts due to __devinit/exit removal.\n\n* tag \u0027for-3.8-rc1\u0027 of git://gitorious.org/linux-pwm/linux-pwm: (21 commits)\n  pwm: samsung: add missing s3c-\u003epwm_id assignment\n  pwm: lpc32xx: Set the chip base for dynamic allocation\n  pwm: lpc32xx: Properly disable the clock on device removal\n  pwm: lpc32xx: Fix the PWM polarity\n  pwm: i.MX: eliminate build warning\n  pwm: Export of_pwm_xlate_with_flags()\n  pwm: Remove pwm-twl6030 driver\n  pwm: New driver to support PWM driven LEDs on TWL4030/6030 series of PMICs\n  pwm: New driver to support PWMs on TWL4030/6030 series of PMICs\n  pwm: pwm-tiehrpwm: pinctrl support\n  pwm: tiehrpwm: Add device-tree binding\n  pwm: pwm-tiehrpwm: Adding TBCLK gating support.\n  pwm: pwm-tiecap: pinctrl support\n  pwm: tiecap: Add device-tree binding\n  pwm: Add TI PWM subsystem driver\n  pwm: Device tree support for PWM polarity\n  pwm: vt8500: Ensure PWM clock is enabled during pwm_config\n  pwm: vt8500: Fix build error\n  pwm: spear: Staticize spear_pwm_config()\n  pwm: Add SPEAr PWM chip driver support\n  ...\n"
    },
    {
      "commit": "ab28698d33af05abab0bcf8021eafe38f7434f24",
      "tree": "a8f357f0352f4dc7408bfc16d88664783d2b5f4d",
      "parents": [
        "80c2022e5645a1a789531d13010292c5c18bf1db"
      ],
      "author": {
        "name": "Jonas Gorski",
        "email": "jogo@openwrt.org",
        "time": "Wed Dec 19 09:10:09 2012 -0600"
      },
      "committer": {
        "name": "Grant Likely",
        "email": "grant.likely@secretlab.ca",
        "time": "Wed Dec 19 16:15:17 2012 +0000"
      },
      "message": "of: define struct device in of_platform.h if !OF_DEVICE and !OF_ADDRESS\n\nFixes the following warning:\n\ninclude/linux/of_platform.h:106:13: warning: \u0027struct device\u0027 declared\ninside parameter list [enabled by default]\ninclude/linux/of_platform.h:106:13: warning: its scope is only this\ndefinition or declaration, which is probably not what you want [enabled\nby default]\n\nSigned-off-by: Jonas Gorski \u003cjogo@openwrt.org\u003e\nSigned-off-by: Rob Herring \u003crobherring2@gmail.com\u003e\nSigned-off-by: Grant Likely \u003cgrant.likely@secretlab.ca\u003e\n"
    },
    {
      "commit": "7a684c452e2589f3ddd7e2d466b4f747d3715ad9",
      "tree": "fed803e7450770993575b37807ba2195eafd5b0e",
      "parents": [
        "7f2de8171ddf28fdb2ca7f9a683ee1207849f718",
        "e10e1774efbdaec54698454200619a03a01e1d64"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Dec 19 07:55:08 2012 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Dec 19 07:55:08 2012 -0800"
      },
      "message": "Merge tag \u0027modules-next-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/rusty/linux\n\nPull module update from Rusty Russell:\n \"Nothing all that exciting; a new module-from-fd syscall for those who\n  want to verify the source of the module (ChromeOS) and/or use standard\n  IMA on it or other security hooks.\"\n\n* tag \u0027modules-next-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/rusty/linux:\n  MODSIGN: Fix kbuild output when using default extra_certificates\n  MODSIGN: Avoid using .incbin in C source\n  modules: don\u0027t hand 0 to vmalloc.\n  module: Remove a extra null character at the top of module-\u003estrtab.\n  ASN.1: Use the ASN1_LONG_TAG and ASN1_INDEFINITE_LENGTH constants\n  ASN.1: Define indefinite length marker constant\n  moduleparam: use __UNIQUE_ID()\n  __UNIQUE_ID()\n  MODSIGN: Add modules_sign make target\n  powerpc: add finit_module syscall.\n  ima: support new kernel module syscall\n  add finit_module syscall to asm-generic\n  ARM: add finit_module syscall to ARM\n  security: introduce kernel_module_from_file hook\n  module: add flags arg to sys_finit_module()\n  module: add syscall to load module from fd\n"
    },
    {
      "commit": "7f2de8171ddf28fdb2ca7f9a683ee1207849f718",
      "tree": "d89da981ac762de3fd32e1c08ddc8041f3c37519",
      "parents": [
        "59771079c18c44e39106f0f30054025acafadb41",
        "cf66bb93e0f75e0a4ba1ec070692618fa028e994"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Dec 19 07:52:48 2012 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Dec 19 07:52:48 2012 -0800"
      },
      "message": "Merge tag \u0027byteswap-for-linus-20121219\u0027 of git://git.infradead.org/users/dwmw2/byteswap\n\nPull preparatory gcc intrisics bswap patch from David Woodhouse:\n \"This single patch is effectively a no-op for now.  It enables\n  architectures to opt in to using GCC\u0027s __builtin_bswapXX() intrinsics\n  for byteswapping, and if we merge this now then the architecture\n  maintainers can enable it for their arch during the next cycle without\n  dependency issues.\n\n  It\u0027s worth making it a par-arch opt-in, because although in *theory*\n  the compiler should never do worse than hand-coded assembler (and of\n  course it also ought to do a lot better on platforms like Atom and\n  PowerPC which have load-and-swap or store-and-swap instructions), that\n  isn\u0027t always the case.  See\n\n     http://gcc.gnu.org/bugzilla/show_bug.cgi?id\u003d46453\n\n  for example.\"\n\n* tag \u0027byteswap-for-linus-20121219\u0027 of git://git.infradead.org/users/dwmw2/byteswap:\n  byteorder: allow arch to opt to use GCC intrinsics for byteswapping\n"
    },
    {
      "commit": "59771079c18c44e39106f0f30054025acafadb41",
      "tree": "9463781cf1d6f3055bc87840190cc322b59daa67",
      "parents": [
        "752451f01c4567b506bf4343082682dbb8fb30dd"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Dec 19 07:18:35 2012 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Dec 19 07:18:35 2012 -0800"
      },
      "message": "blk: avoid divide-by-zero with zero discard granularity\n\nCommit 8dd2cb7e880d (\"block: discard granularity might not be power of\n2\") changed a couple of \u0027binary and\u0027 operations into modulus operations.\nWhich turned the harmless case of a zero discard_granularity into a\npossible divide-by-zero.\n\nThe code also had a much more subtle bug: it was doing the modulus of a\nvalue in bytes using \u0027sector_t\u0027.  That was always conceptually wrong,\nbut didn\u0027t actually matter back when the code assumed a power-of-two\ngranularity: we only looked at the low bits anyway.\n\nBut with potentially arbitrary sector numbers, using a \u0027sector_t\u0027 to\nexpress bytes is very very wrong: depending on configuration it limits\nthe starting offset of the device to just 32 bits, and any overflow\nwould result in a wrong value if the modulus wasn\u0027t a power-of-two.\n\nSo re-write the code to not only protect against the divide-by-zero, but\nto do the starting sector arithmetic in sectors, and using the proper\ntypes.\n\n[ For any mathematicians out there: it also looks monumentally stupid to\n  do the \u0027modulo granularity\u0027 operation *twice*, never mind having a \"+\n  granularity\" in the second modulus op.\n\n  But that\u0027s the easiest way to avoid negative values or overflow, and\n  it is how the original code was done. ]\n\nReported-by: Ingo Molnar \u003cmingo@kernel.org\u003e\nReported-by: Doug Anderson \u003cdianders@chromium.org\u003e\nCc: Neil Brown \u003cneilb@suse.de\u003e\nCc: Shaohua Li \u003cshli@fusionio.com\u003e\nAcked-by: Jens Axboe \u003caxboe@kernel.dk\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "752451f01c4567b506bf4343082682dbb8fb30dd",
      "tree": "ec2ec2989c93e567952ddc1ec879013aa2704f0a",
      "parents": [
        "673ab8783b596cda5b616b317b1a1b47480c66fd",
        "972deb4f49b5b6703d9c6117ba0aeda2180d4447"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Dec 18 16:51:10 2012 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Dec 18 16:51:10 2012 -0800"
      },
      "message": "Merge branch \u0027i2c-embedded/for-next\u0027 of git://git.pengutronix.de/git/wsa/linux\n\nPull i2c-embedded changes from Wolfram Sang:\n - CBUS driver (an I2C variant)\n - continued rework of the omap driver\n - s3c2410 gets lots of fixes and gains pinctrl support\n - at91 gains DMA support\n - the GPIO muxer gains devicetree probing\n - typical fixes and additions all over\n\n* \u0027i2c-embedded/for-next\u0027 of git://git.pengutronix.de/git/wsa/linux: (45 commits)\n  i2c: omap: Remove the OMAP_I2C_FLAG_RESET_REGS_POSTIDLE flag\n  i2c: at91: add dma support\n  i2c: at91: change struct members indentation\n  i2c: at91: fix compilation warning\n  i2c: mxs: Do not disable the I2C SMBus quick mode\n  i2c: mxs: Handle i2c DMA failure properly\n  i2c: s3c2410: Remove recently introduced performance overheads\n  i2c: ocores: Move grlib set/get functions into #ifdef CONFIG_OF block\n  i2c: s3c2410: Add fix for i2c suspend/resume\n  i2c: s3c2410: Fix code to free gpios\n  i2c: i2c-cbus-gpio: introduce driver\n  i2c: ocores: Add support for the GRLIB port of the controller and use function pointers for getreg and setreg functions\n  i2c: ocores: Add irq support for sparc\n  i2c: omap: Move the remove constraint\n  ARM: dts: cfa10049: Add the i2c muxer buses to the CFA-10049\n  i2c: s3c2410: do not special case HDMIPHY stuck bus detection\n  i2c: s3c2410: use exponential back off while polling for bus idle\n  i2c: s3c2410: do not generate STOP for QUIRK_HDMIPHY\n  i2c: s3c2410: grab adapter lock while changing i2c clock\n  i2c: s3c2410: Add support for pinctrl\n  ...\n"
    },
    {
      "commit": "673ab8783b596cda5b616b317b1a1b47480c66fd",
      "tree": "d3fc9bb4279720c53d0dc69c2a34c40635cf05f3",
      "parents": [
        "d7b96ca5d08a8f2f836feb2b3b3bd721d2837a8e",
        "3cf23841b4b76eb94d3f8d0fb3627690e4431413"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Dec 18 15:08:12 2012 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Dec 18 15:08:12 2012 -0800"
      },
      "message": "Merge branch \u0027akpm\u0027 (more patches from Andrew)\n\nMerge patches from Andrew Morton:\n \"Most of the rest of MM, plus a few dribs and drabs.\n\n  I still have quite a few irritating patches left around: ones with\n  dubious testing results, lack of review, ones which should have gone\n  via maintainer trees but the maintainers are slack, etc.\n\n  I need to be more activist in getting these things wrapped up outside\n  the merge window, but they\u0027re such a PITA.\"\n\n* emailed patches from Andrew Morton \u003cakpm@linux-foundation.org\u003e: (48 commits)\n  mm/vmscan.c: avoid possible deadlock caused by too_many_isolated()\n  vmscan: comment too_many_isolated()\n  mm/kmemleak.c: remove obsolete simple_strtoul\n  mm/memory_hotplug.c: improve comments\n  mm/hugetlb: create hugetlb cgroup file in hugetlb_init\n  mm/mprotect.c: coding-style cleanups\n  Documentation: ABI: /sys/devices/system/node/\n  slub: drop mutex before deleting sysfs entry\n  memcg: add comments clarifying aspects of cache attribute propagation\n  kmem: add slab-specific documentation about the kmem controller\n  slub: slub-specific propagation changes\n  slab: propagate tunable values\n  memcg: aggregate memcg cache values in slabinfo\n  memcg/sl[au]b: shrink dead caches\n  memcg/sl[au]b: track all the memcg children of a kmem_cache\n  memcg: destroy memcg caches\n  sl[au]b: allocate objects from memcg cache\n  sl[au]b: always get the cache from its page in kmem_cache_free()\n  memcg: skip memcg kmem allocations in specified code regions\n  memcg: infrastructure to match an allocation to the right cache\n  ...\n"
    },
    {
      "commit": "7179e7bf4592ac5a7b30257a7df6259ee81e51da",
      "tree": "a3fb75a87e1a18b153c18aa7e4530d35c768e8b6",
      "parents": [
        "7d12efaea7e74bf8f4953412514e836313fa32ec"
      ],
      "author": {
        "name": "Jianguo Wu",
        "email": "wujianguo@huawei.com",
        "time": "Tue Dec 18 14:23:19 2012 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Dec 18 15:02:15 2012 -0800"
      },
      "message": "mm/hugetlb: create hugetlb cgroup file in hugetlb_init\n\nBuild kernel with CONFIG_HUGETLBFS\u003dy,CONFIG_HUGETLB_PAGE\u003dy and\nCONFIG_CGROUP_HUGETLB\u003dy, then specify hugepagesz\u003dxx boot option, system\nwill fail to boot.\n\nThis failure is caused by following code path:\n\n  setup_hugepagesz\n    hugetlb_add_hstate\n      hugetlb_cgroup_file_init\n        cgroup_add_cftypes\n          kzalloc \u003c--slab is *not available* yet\n\nFor this path, slab is not available yet, so memory allocated will be\nfailed, and cause WARN_ON() in hugetlb_cgroup_file_init().\n\nSo I move hugetlb_cgroup_file_init() into hugetlb_init().\n\n[akpm@linux-foundation.org: tweak coding-style, remove pointless __init on inlined function]\n[akpm@linux-foundation.org: fix warning]\nSigned-off-by: Jianguo Wu \u003cwujianguo@huawei.com\u003e\nSigned-off-by: Jiang Liu \u003cjiang.liu@huawei.com\u003e\nReviewed-by: Aneesh Kumar K.V \u003caneesh.kumar@linux.vnet.ibm.com\u003e\nAcked-by: Michal Hocko \u003cmhocko@suse.cz\u003e\nCc: \u003cstable@vger.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": "ebe945c27628fca03723582eba138acc2e2f3d15",
      "tree": "5998e8dd874aedf3b8873d0ffeaf658d10505655",
      "parents": [
        "92e793495597af4135d94314113bf13eafb0e663"
      ],
      "author": {
        "name": "Glauber Costa",
        "email": "glommer@parallels.com",
        "time": "Tue Dec 18 14:23:10 2012 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Dec 18 15:02:15 2012 -0800"
      },
      "message": "memcg: add comments clarifying aspects of cache attribute propagation\n\nThis patch clarifies two aspects of cache attribute propagation.\n\nFirst, the expected context for the for_each_memcg_cache macro in\nmemcontrol.h.  The usages already in the codebase are safe.  In mm/slub.c,\nit is trivially safe because the lock is acquired right before the loop.\nIn mm/slab.c, it is less so: the lock is acquired by an outer function a\nfew steps back in the stack, so a VM_BUG_ON() is added to make sure it is\nindeed safe.\n\nA comment is also added to detail why we are returning the value of the\nparent cache and ignoring the children\u0027s when we propagate the attributes.\n\nSigned-off-by: Glauber Costa \u003cglommer@parallels.com\u003e\nCc: Michal Hocko \u003cmhocko@suse.cz\u003e\nCc: Kamezawa Hiroyuki \u003ckamezawa.hiroyu@jp.fujitsu.com\u003e\nCc: Johannes Weiner \u003channes@cmpxchg.org\u003e\nAcked-by: David Rientjes \u003crientjes@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": "107dab5c92d5f9c3afe962036e47c207363255c7",
      "tree": "17722e888fc00428ef1614a097bae82d1e9de87a",
      "parents": [
        "943a451a87d229ca564a27274b58eaeae35fde5d"
      ],
      "author": {
        "name": "Glauber Costa",
        "email": "glommer@parallels.com",
        "time": "Tue Dec 18 14:23:05 2012 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Dec 18 15:02:14 2012 -0800"
      },
      "message": "slub: slub-specific propagation changes\n\nSLUB allows us to tune a particular cache behavior with sysfs-based\ntunables.  When creating a new memcg cache copy, we\u0027d like to preserve any\ntunables the parent cache already had.\n\nThis can be done by tapping into the store attribute function provided by\nthe allocator.  We of course don\u0027t need to mess with read-only fields.\nSince the attributes can have multiple types and are stored internally by\nsysfs, the best strategy is to issue a -\u003eshow() in the root cache, and\nthen -\u003estore() in the memcg cache.\n\nThe drawback of that, is that sysfs can allocate up to a page in buffering\nfor show(), that we are likely not to need, but also can\u0027t guarantee.  To\navoid always allocating a page for that, we can update the caches at store\ntime with the maximum attribute size ever stored to the root cache.  We\nwill then get a buffer big enough to hold it.  The corolary to this, is\nthat if no stores happened, nothing will be propagated.\n\nIt can also happen that a root cache has its tunables updated during\nnormal system operation.  In this case, we will propagate the change to\nall caches that are already active.\n\n[akpm@linux-foundation.org: tweak code to avoid __maybe_unused]\nSigned-off-by: Glauber Costa \u003cglommer@parallels.com\u003e\nCc: Christoph Lameter \u003ccl@linux.com\u003e\nCc: David Rientjes \u003crientjes@google.com\u003e\nCc: Frederic Weisbecker \u003cfweisbec@redhat.com\u003e\nCc: Greg Thelen \u003cgthelen@google.com\u003e\nCc: Johannes Weiner \u003channes@cmpxchg.org\u003e\nCc: JoonSoo Kim \u003cjs1304@gmail.com\u003e\nCc: KAMEZAWA Hiroyuki \u003ckamezawa.hiroyu@jp.fujitsu.com\u003e\nCc: Mel Gorman \u003cmel@csn.ul.ie\u003e\nCc: Michal Hocko \u003cmhocko@suse.cz\u003e\nCc: Pekka Enberg \u003cpenberg@cs.helsinki.fi\u003e\nCc: Rik van Riel \u003criel@redhat.com\u003e\nCc: Suleiman Souhlal \u003csuleiman@google.com\u003e\nCc: 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": "943a451a87d229ca564a27274b58eaeae35fde5d",
      "tree": "607a0bc1aba3911602dec1448be2ace190b5c1eb",
      "parents": [
        "749c54151a6e5b229e4ae067dbc651e54b161fbc"
      ],
      "author": {
        "name": "Glauber Costa",
        "email": "glommer@parallels.com",
        "time": "Tue Dec 18 14:23:03 2012 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Dec 18 15:02:14 2012 -0800"
      },
      "message": "slab: propagate tunable values\n\nSLAB allows us to tune a particular cache behavior with tunables.  When\ncreating a new memcg cache copy, we\u0027d like to preserve any tunables the\nparent cache already had.\n\nThis could be done by an explicit call to do_tune_cpucache() after the\ncache is created.  But this is not very convenient now that the caches are\ncreated from common code, since this function is SLAB-specific.\n\nAnother method of doing that is taking advantage of the fact that\ndo_tune_cpucache() is always called from enable_cpucache(), which is\ncalled at cache initialization.  We can just preset the values, and then\nthings work as expected.\n\nIt can also happen that a root cache has its tunables updated during\nnormal system operation.  In this case, we will propagate the change to\nall caches that are already active.\n\nThis change will require us to move the assignment of root_cache in\nmemcg_params a bit earlier.  We need this to be already set - which\nmemcg_kmem_register_cache will do - when we reach __kmem_cache_create()\n\nSigned-off-by: Glauber Costa \u003cglommer@parallels.com\u003e\nCc: Christoph Lameter \u003ccl@linux.com\u003e\nCc: David Rientjes \u003crientjes@google.com\u003e\nCc: Frederic Weisbecker \u003cfweisbec@redhat.com\u003e\nCc: Greg Thelen \u003cgthelen@google.com\u003e\nCc: Johannes Weiner \u003channes@cmpxchg.org\u003e\nCc: JoonSoo Kim \u003cjs1304@gmail.com\u003e\nCc: KAMEZAWA Hiroyuki \u003ckamezawa.hiroyu@jp.fujitsu.com\u003e\nCc: Mel Gorman \u003cmel@csn.ul.ie\u003e\nCc: Michal Hocko \u003cmhocko@suse.cz\u003e\nCc: Pekka Enberg \u003cpenberg@cs.helsinki.fi\u003e\nCc: Rik van Riel \u003criel@redhat.com\u003e\nCc: Suleiman Souhlal \u003csuleiman@google.com\u003e\nCc: 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": "749c54151a6e5b229e4ae067dbc651e54b161fbc",
      "tree": "8d2d858e76e44d1bbf64439c189a57c18c8e60ae",
      "parents": [
        "22933152934f30de6f05b600c03f8a08f853a8d2"
      ],
      "author": {
        "name": "Glauber Costa",
        "email": "glommer@parallels.com",
        "time": "Tue Dec 18 14:23:01 2012 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Dec 18 15:02:14 2012 -0800"
      },
      "message": "memcg: aggregate memcg cache values in slabinfo\n\nWhen we create caches in memcgs, we need to display their usage\ninformation somewhere.  We\u0027ll adopt a scheme similar to /proc/meminfo,\nwith aggregate totals shown in the global file, and per-group information\nstored in the group itself.\n\nFor the time being, only reads are allowed in the per-group cache.\n\nSigned-off-by: Glauber Costa \u003cglommer@parallels.com\u003e\nCc: Christoph Lameter \u003ccl@linux.com\u003e\nCc: David Rientjes \u003crientjes@google.com\u003e\nCc: Frederic Weisbecker \u003cfweisbec@redhat.com\u003e\nCc: Greg Thelen \u003cgthelen@google.com\u003e\nCc: Johannes Weiner \u003channes@cmpxchg.org\u003e\nCc: JoonSoo Kim \u003cjs1304@gmail.com\u003e\nCc: KAMEZAWA Hiroyuki \u003ckamezawa.hiroyu@jp.fujitsu.com\u003e\nCc: Mel Gorman \u003cmel@csn.ul.ie\u003e\nCc: Michal Hocko \u003cmhocko@suse.cz\u003e\nCc: Pekka Enberg \u003cpenberg@cs.helsinki.fi\u003e\nCc: Rik van Riel \u003criel@redhat.com\u003e\nCc: Suleiman Souhlal \u003csuleiman@google.com\u003e\nCc: 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": "7cf2798240a2a2230cb16a391beef98d8a7ad362",
      "tree": "989f28b74d08bf91938cc5a7fe632faa32e7542f",
      "parents": [
        "1f458cbf122288b23620ee822e19bcbb76c8d6ec"
      ],
      "author": {
        "name": "Glauber Costa",
        "email": "glommer@parallels.com",
        "time": "Tue Dec 18 14:22:55 2012 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Dec 18 15:02:14 2012 -0800"
      },
      "message": "memcg/sl[au]b: track all the memcg children of a kmem_cache\n\nThis enables us to remove all the children of a kmem_cache being\ndestroyed, if for example the kernel module it\u0027s being used in gets\nunloaded.  Otherwise, the children will still point to the destroyed\nparent.\n\nSigned-off-by: Suleiman Souhlal \u003csuleiman@google.com\u003e\nSigned-off-by: Glauber Costa \u003cglommer@parallels.com\u003e\nCc: Christoph Lameter \u003ccl@linux.com\u003e\nCc: David Rientjes \u003crientjes@google.com\u003e\nCc: Frederic Weisbecker \u003cfweisbec@redhat.com\u003e\nCc: Greg Thelen \u003cgthelen@google.com\u003e\nCc: Johannes Weiner \u003channes@cmpxchg.org\u003e\nCc: JoonSoo Kim \u003cjs1304@gmail.com\u003e\nCc: KAMEZAWA Hiroyuki \u003ckamezawa.hiroyu@jp.fujitsu.com\u003e\nCc: Mel Gorman \u003cmel@csn.ul.ie\u003e\nCc: Michal Hocko \u003cmhocko@suse.cz\u003e\nCc: Pekka Enberg \u003cpenberg@cs.helsinki.fi\u003e\nCc: Rik van Riel \u003criel@redhat.com\u003e\nCc: 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": "1f458cbf122288b23620ee822e19bcbb76c8d6ec",
      "tree": "fa434b9ff6d6bdfd2daaf24fd7812cc975cba7b7",
      "parents": [
        "d79923fad95b0cdf7770e024677180c734cb7148"
      ],
      "author": {
        "name": "Glauber Costa",
        "email": "glommer@parallels.com",
        "time": "Tue Dec 18 14:22:50 2012 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Dec 18 15:02:14 2012 -0800"
      },
      "message": "memcg: destroy memcg caches\n\nImplement destruction of memcg caches.  Right now, only caches where our\nreference counter is the last remaining are deleted.  If there are any\nother reference counters around, we just leave the caches lying around\nuntil they go away.\n\nWhen that happens, a destruction function is called from the cache code.\nCaches are only destroyed in process context, so we queue them up for\nlater processing in the general case.\n\nSigned-off-by: Glauber Costa \u003cglommer@parallels.com\u003e\nCc: Christoph Lameter \u003ccl@linux.com\u003e\nCc: David Rientjes \u003crientjes@google.com\u003e\nCc: Frederic Weisbecker \u003cfweisbec@redhat.com\u003e\nCc: Greg Thelen \u003cgthelen@google.com\u003e\nCc: Johannes Weiner \u003channes@cmpxchg.org\u003e\nCc: JoonSoo Kim \u003cjs1304@gmail.com\u003e\nCc: KAMEZAWA Hiroyuki \u003ckamezawa.hiroyu@jp.fujitsu.com\u003e\nCc: Mel Gorman \u003cmel@csn.ul.ie\u003e\nCc: Michal Hocko \u003cmhocko@suse.cz\u003e\nCc: Pekka Enberg \u003cpenberg@cs.helsinki.fi\u003e\nCc: Rik van Riel \u003criel@redhat.com\u003e\nCc: Suleiman Souhlal \u003csuleiman@google.com\u003e\nCc: 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": "d79923fad95b0cdf7770e024677180c734cb7148",
      "tree": "e7cf6e9fb151d3c0d5c773fa1ba723a71b1e9329",
      "parents": [
        "b9ce5ef49f00daf2254c6953c8d31f79aabccd34"
      ],
      "author": {
        "name": "Glauber Costa",
        "email": "glommer@parallels.com",
        "time": "Tue Dec 18 14:22:48 2012 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Dec 18 15:02:14 2012 -0800"
      },
      "message": "sl[au]b: allocate objects from memcg cache\n\nWe are able to match a cache allocation to a particular memcg.  If the\ntask doesn\u0027t change groups during the allocation itself - a rare event,\nthis will give us a good picture about who is the first group to touch a\ncache page.\n\nThis patch uses the now available infrastructure by calling\nmemcg_kmem_get_cache() before all the cache allocations.\n\nSigned-off-by: Glauber Costa \u003cglommer@parallels.com\u003e\nCc: Christoph Lameter \u003ccl@linux.com\u003e\nCc: David Rientjes \u003crientjes@google.com\u003e\nCc: Frederic Weisbecker \u003cfweisbec@redhat.com\u003e\nCc: Greg Thelen \u003cgthelen@google.com\u003e\nCc: Johannes Weiner \u003channes@cmpxchg.org\u003e\nCc: JoonSoo Kim \u003cjs1304@gmail.com\u003e\nCc: KAMEZAWA Hiroyuki \u003ckamezawa.hiroyu@jp.fujitsu.com\u003e\nCc: Mel Gorman \u003cmel@csn.ul.ie\u003e\nCc: Michal Hocko \u003cmhocko@suse.cz\u003e\nCc: Pekka Enberg \u003cpenberg@cs.helsinki.fi\u003e\nCc: Rik van Riel \u003criel@redhat.com\u003e\nCc: Suleiman Souhlal \u003csuleiman@google.com\u003e\nCc: 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": "b9ce5ef49f00daf2254c6953c8d31f79aabccd34",
      "tree": "1da6afdbb3dc2e2d31f588dbfbf502e984af48a6",
      "parents": [
        "0e9d92f2d02d8c8320f0502307c688d07bdac2b3"
      ],
      "author": {
        "name": "Glauber Costa",
        "email": "glommer@parallels.com",
        "time": "Tue Dec 18 14:22:46 2012 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Dec 18 15:02:14 2012 -0800"
      },
      "message": "sl[au]b: always get the cache from its page in kmem_cache_free()\n\nstruct page already has this information.  If we start chaining caches,\nthis information will always be more trustworthy than whatever is passed\ninto the function.\n\nSigned-off-by: Glauber Costa \u003cglommer@parallels.com\u003e\nCc: Christoph Lameter \u003ccl@linux.com\u003e\nCc: David Rientjes \u003crientjes@google.com\u003e\nCc: Frederic Weisbecker \u003cfweisbec@redhat.com\u003e\nCc: Greg Thelen \u003cgthelen@google.com\u003e\nCc: Johannes Weiner \u003channes@cmpxchg.org\u003e\nCc: JoonSoo Kim \u003cjs1304@gmail.com\u003e\nCc: KAMEZAWA Hiroyuki \u003ckamezawa.hiroyu@jp.fujitsu.com\u003e\nCc: Mel Gorman \u003cmel@csn.ul.ie\u003e\nCc: Michal Hocko \u003cmhocko@suse.cz\u003e\nCc: Pekka Enberg \u003cpenberg@cs.helsinki.fi\u003e\nCc: Rik van Riel \u003criel@redhat.com\u003e\nCc: Suleiman Souhlal \u003csuleiman@google.com\u003e\nCc: 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": "0e9d92f2d02d8c8320f0502307c688d07bdac2b3",
      "tree": "bbbdb6759579766c60679963497064e0db3a6f32",
      "parents": [
        "d7f25f8a2f81252d1ac134470ba1d0a287cf8fcd"
      ],
      "author": {
        "name": "Glauber Costa",
        "email": "glommer@parallels.com",
        "time": "Tue Dec 18 14:22:42 2012 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Dec 18 15:02:14 2012 -0800"
      },
      "message": "memcg: skip memcg kmem allocations in specified code regions\n\nCreate a mechanism that skip memcg allocations during certain pieces of\nour core code.  It basically works in the same way as\npreempt_disable()/preempt_enable(): By marking a region under which all\nallocations will be accounted to the root memcg.\n\nWe need this to prevent races in early cache creation, when we\nallocate data using caches that are not necessarily created already.\n\nSigned-off-by: Glauber Costa \u003cglommer@parallels.com\u003e\nyCc: Christoph Lameter \u003ccl@linux.com\u003e\nCc: David Rientjes \u003crientjes@google.com\u003e\nCc: Frederic Weisbecker \u003cfweisbec@redhat.com\u003e\nCc: Greg Thelen \u003cgthelen@google.com\u003e\nCc: Johannes Weiner \u003channes@cmpxchg.org\u003e\nCc: JoonSoo Kim \u003cjs1304@gmail.com\u003e\nCc: KAMEZAWA Hiroyuki \u003ckamezawa.hiroyu@jp.fujitsu.com\u003e\nCc: Mel Gorman \u003cmel@csn.ul.ie\u003e\nCc: Michal Hocko \u003cmhocko@suse.cz\u003e\nCc: Pekka Enberg \u003cpenberg@cs.helsinki.fi\u003e\nCc: Rik van Riel \u003criel@redhat.com\u003e\nCc: Suleiman Souhlal \u003csuleiman@google.com\u003e\nCc: 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": "d7f25f8a2f81252d1ac134470ba1d0a287cf8fcd",
      "tree": "ecde8b5d98762e15a6fa1984d098ddf86646942b",
      "parents": [
        "55007d849759252ddd573aeb36143b947202d509"
      ],
      "author": {
        "name": "Glauber Costa",
        "email": "glommer@parallels.com",
        "time": "Tue Dec 18 14:22:40 2012 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Dec 18 15:02:14 2012 -0800"
      },
      "message": "memcg: infrastructure to match an allocation to the right cache\n\nThe page allocator is able to bind a page to a memcg when it is\nallocated.  But for the caches, we\u0027d like to have as many objects as\npossible in a page belonging to the same cache.\n\nThis is done in this patch by calling memcg_kmem_get_cache in the\nbeginning of every allocation function.  This function is patched out by\nstatic branches when kernel memory controller is not being used.\n\nIt assumes that the task allocating, which determines the memcg in the\npage allocator, belongs to the same cgroup throughout the whole process.\nMisaccounting can happen if the task calls memcg_kmem_get_cache() while\nbelonging to a cgroup, and later on changes.  This is considered\nacceptable, and should only happen upon task migration.\n\nBefore the cache is created by the memcg core, there is also a possible\nimbalance: the task belongs to a memcg, but the cache being allocated from\nis the global cache, since the child cache is not yet guaranteed to be\nready.  This case is also fine, since in this case the GFP_KMEMCG will not\nbe passed and the page allocator will not attempt any cgroup accounting.\n\nSigned-off-by: Glauber Costa \u003cglommer@parallels.com\u003e\nCc: Christoph Lameter \u003ccl@linux.com\u003e\nCc: David Rientjes \u003crientjes@google.com\u003e\nCc: Frederic Weisbecker \u003cfweisbec@redhat.com\u003e\nCc: Greg Thelen \u003cgthelen@google.com\u003e\nCc: Johannes Weiner \u003channes@cmpxchg.org\u003e\nCc: JoonSoo Kim \u003cjs1304@gmail.com\u003e\nCc: KAMEZAWA Hiroyuki \u003ckamezawa.hiroyu@jp.fujitsu.com\u003e\nCc: Mel Gorman \u003cmel@csn.ul.ie\u003e\nCc: Michal Hocko \u003cmhocko@suse.cz\u003e\nCc: Pekka Enberg \u003cpenberg@cs.helsinki.fi\u003e\nCc: Rik van Riel \u003criel@redhat.com\u003e\nCc: Suleiman Souhlal \u003csuleiman@google.com\u003e\nCc: 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": "55007d849759252ddd573aeb36143b947202d509",
      "tree": "d042bc2f717922fb73f9d526592eeb331c2f0f70",
      "parents": [
        "2633d7a028239a738b793be5ca8fa6ac312f5793"
      ],
      "author": {
        "name": "Glauber Costa",
        "email": "glommer@parallels.com",
        "time": "Tue Dec 18 14:22:38 2012 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Dec 18 15:02:13 2012 -0800"
      },
      "message": "memcg: allocate memory for memcg caches whenever a new memcg appears\n\nEvery cache that is considered a root cache (basically the \"original\"\ncaches, tied to the root memcg/no-memcg) will have an array that should be\nlarge enough to store a cache pointer per each memcg in the system.\n\nTheoreticaly, this is as high as 1 \u003c\u003c sizeof(css_id), which is currently\nin the 64k pointers range.  Most of the time, we won\u0027t be using that much.\n\nWhat goes in this patch, is a simple scheme to dynamically allocate such\nan array, in order to minimize memory usage for memcg caches.  Because we\nwould also like to avoid allocations all the time, at least for now, the\narray will only grow.  It will tend to be big enough to hold the maximum\nnumber of kmem-limited memcgs ever achieved.\n\nWe\u0027ll allocate it to be a minimum of 64 kmem-limited memcgs.  When we have\nmore than that, we\u0027ll start doubling the size of this array every time the\nlimit is reached.\n\nBecause we are only considering kmem limited memcgs, a natural point for\nthis to happen is when we write to the limit.  At that point, we already\nhave set_limit_mutex held, so that will become our natural synchronization\nmechanism.\n\nSigned-off-by: Glauber Costa \u003cglommer@parallels.com\u003e\nCc: Christoph Lameter \u003ccl@linux.com\u003e\nCc: David Rientjes \u003crientjes@google.com\u003e\nCc: Frederic Weisbecker \u003cfweisbec@redhat.com\u003e\nCc: Greg Thelen \u003cgthelen@google.com\u003e\nCc: Johannes Weiner \u003channes@cmpxchg.org\u003e\nCc: JoonSoo Kim \u003cjs1304@gmail.com\u003e\nCc: KAMEZAWA Hiroyuki \u003ckamezawa.hiroyu@jp.fujitsu.com\u003e\nCc: Mel Gorman \u003cmel@csn.ul.ie\u003e\nCc: Michal Hocko \u003cmhocko@suse.cz\u003e\nCc: Pekka Enberg \u003cpenberg@cs.helsinki.fi\u003e\nCc: Rik van Riel \u003criel@redhat.com\u003e\nCc: Suleiman Souhlal \u003csuleiman@google.com\u003e\nCc: 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": "2633d7a028239a738b793be5ca8fa6ac312f5793",
      "tree": "48a9f157b2c2a8218611aaade9667cacc2e018ec",
      "parents": [
        "6ccfb5bcf52bcf100fa085946f044fdbba015048"
      ],
      "author": {
        "name": "Glauber Costa",
        "email": "glommer@parallels.com",
        "time": "Tue Dec 18 14:22:34 2012 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Dec 18 15:02:13 2012 -0800"
      },
      "message": "slab/slub: consider a memcg parameter in kmem_create_cache\n\nAllow a memcg parameter to be passed during cache creation.  When the slub\nallocator is being used, it will only merge caches that belong to the same\nmemcg.  We\u0027ll do this by scanning the global list, and then translating\nthe cache to a memcg-specific cache\n\nDefault function is created as a wrapper, passing NULL to the memcg\nversion.  We only merge caches that belong to the same memcg.\n\nA helper is provided, memcg_css_id: because slub needs a unique cache name\nfor sysfs.  Since this is visible, but not the canonical location for slab\ndata, the cache name is not used, the css_id should suffice.\n\nSigned-off-by: Glauber Costa \u003cglommer@parallels.com\u003e\nCc: Christoph Lameter \u003ccl@linux.com\u003e\nCc: David Rientjes \u003crientjes@google.com\u003e\nCc: Frederic Weisbecker \u003cfweisbec@redhat.com\u003e\nCc: Greg Thelen \u003cgthelen@google.com\u003e\nCc: Johannes Weiner \u003channes@cmpxchg.org\u003e\nCc: JoonSoo Kim \u003cjs1304@gmail.com\u003e\nCc: KAMEZAWA Hiroyuki \u003ckamezawa.hiroyu@jp.fujitsu.com\u003e\nCc: Mel Gorman \u003cmel@csn.ul.ie\u003e\nCc: Michal Hocko \u003cmhocko@suse.cz\u003e\nCc: Pekka Enberg \u003cpenberg@cs.helsinki.fi\u003e\nCc: Rik van Riel \u003criel@redhat.com\u003e\nCc: Suleiman Souhlal \u003csuleiman@google.com\u003e\nCc: 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": "ba6c496ed834a37a26fc6fc87fc9aecb0fa0014d",
      "tree": "cd229b78ca04817354865c9fdf57b564a6bf7852",
      "parents": [
        "d5bdae7d59451b9d63303f7794ef32bb76ba6330"
      ],
      "author": {
        "name": "Glauber Costa",
        "email": "glommer@parallels.com",
        "time": "Tue Dec 18 14:22:27 2012 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Dec 18 15:02:13 2012 -0800"
      },
      "message": "slab/slub: struct memcg_params\n\nFor the kmem slab controller, we need to record some extra information in\nthe kmem_cache structure.\n\nSigned-off-by: Glauber Costa \u003cglommer@parallels.com\u003e\nSigned-off-by: Suleiman Souhlal \u003csuleiman@google.com\u003e\nCc: Christoph Lameter \u003ccl@linux.com\u003e\nCc: David Rientjes \u003crientjes@google.com\u003e\nCc: Frederic Weisbecker \u003cfweisbec@redhat.com\u003e\nCc: Greg Thelen \u003cgthelen@google.com\u003e\nCc: Johannes Weiner \u003channes@cmpxchg.org\u003e\nCc: JoonSoo Kim \u003cjs1304@gmail.com\u003e\nCc: KAMEZAWA Hiroyuki \u003ckamezawa.hiroyu@jp.fujitsu.com\u003e\nCc: Mel Gorman \u003cmel@csn.ul.ie\u003e\nCc: Michal Hocko \u003cmhocko@suse.cz\u003e\nCc: Pekka Enberg \u003cpenberg@cs.helsinki.fi\u003e\nCc: Rik van Riel \u003criel@redhat.com\u003e\nCc: 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": "2ad306b17c0ac5a1b1f250d5f772aeb87fdf1eba",
      "tree": "743e6092019959dd455091d75b3fab2aa7f0a2aa",
      "parents": [
        "c8b2a36fb1597e9390cf4c1a7f2dd394dc7d7b17"
      ],
      "author": {
        "name": "Glauber Costa",
        "email": "glommer@parallels.com",
        "time": "Tue Dec 18 14:22:18 2012 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Dec 18 15:02:13 2012 -0800"
      },
      "message": "fork: protect architectures where THREAD_SIZE \u003e\u003d PAGE_SIZE against fork bombs\n\nBecause those architectures will draw their stacks directly from the page\nallocator, rather than the slab cache, we can directly pass __GFP_KMEMCG\nflag, and issue the corresponding free_pages.\n\nThis code path is taken when the architecture doesn\u0027t define\nCONFIG_ARCH_THREAD_INFO_ALLOCATOR (only ia64 seems to), and has\nTHREAD_SIZE \u003e\u003d PAGE_SIZE.  Luckily, most - if not all - of the remaining\narchitectures fall in this category.\n\nThis will guarantee that every stack page is accounted to the memcg the\nprocess currently lives on, and will have the allocations to fail if they\ngo over limit.\n\nFor the time being, I am defining a new variant of THREADINFO_GFP, not to\nmess with the other path.  Once the slab is also tracked by memcg, we can\nget rid of that flag.\n\nTested to successfully protect against :(){ :|:\u0026 };:\n\nSigned-off-by: Glauber Costa \u003cglommer@parallels.com\u003e\nAcked-by: Frederic Weisbecker \u003cfweisbec@redhat.com\u003e\nAcked-by: Kamezawa Hiroyuki \u003ckamezawa.hiroyu@jp.fujitsu.com\u003e\nReviewed-by: Michal Hocko \u003cmhocko@suse.cz\u003e\nCc: Christoph Lameter \u003ccl@linux.com\u003e\nCc: David Rientjes \u003crientjes@google.com\u003e\nCc: Greg Thelen \u003cgthelen@google.com\u003e\nCc: Johannes Weiner \u003channes@cmpxchg.org\u003e\nCc: JoonSoo Kim \u003cjs1304@gmail.com\u003e\nCc: Mel Gorman \u003cmel@csn.ul.ie\u003e\nCc: Pekka Enberg \u003cpenberg@cs.helsinki.fi\u003e\nCc: Rik van Riel \u003criel@redhat.com\u003e\nCc: Suleiman Souhlal \u003csuleiman@google.com\u003e\nCc: 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": "a8964b9b84f99c0b1b5d7c09520f89f0700e742e",
      "tree": "468c57a6cd3bd03c91152ede7fdbcacc238341d2",
      "parents": [
        "7de37682bec35bbe0cd69b8112ef257bc5fb1c3e"
      ],
      "author": {
        "name": "Glauber Costa",
        "email": "glommer@parallels.com",
        "time": "Tue Dec 18 14:22:09 2012 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Dec 18 15:02:13 2012 -0800"
      },
      "message": "memcg: use static branches when code not in use\n\nWe can use static branches to patch the code in or out when not used.\n\nBecause the _ACTIVE bit on kmem_accounted is only set after the increment\nis done, we guarantee that the root memcg will always be selected for kmem\ncharges until all call sites are patched (see memcg_kmem_enabled).  This\nguarantees that no mischarges are applied.\n\nStatic branch decrement happens when the last reference count from the\nkmem accounting in memcg dies.  This will only happen when the charges\ndrop down to 0.\n\nWhen that happens, we need to disable the static branch only on those\nmemcgs that enabled it.  To achieve this, we would be forced to complicate\nthe code by keeping track of which memcgs were the ones that actually\nenabled limits, and which ones got it from its parents.\n\nIt is a lot simpler just to do static_key_slow_inc() on every child\nthat is accounted.\n\nSigned-off-by: Glauber Costa \u003cglommer@parallels.com\u003e\nAcked-by: Michal Hocko \u003cmhocko@suse.cz\u003e\nAcked-by: Kamezawa Hiroyuki \u003ckamezawa.hiroyu@jp.fujitsu.com\u003e\nCc: Christoph Lameter \u003ccl@linux.com\u003e\nCc: Pekka Enberg \u003cpenberg@cs.helsinki.fi\u003e\nCc: Johannes Weiner \u003channes@cmpxchg.org\u003e\nCc: Suleiman Souhlal \u003csuleiman@google.com\u003e\nCc: Tejun Heo \u003ctj@kernel.org\u003e\nCc: David Rientjes \u003crientjes@google.com\u003e\nCc: Frederic Weisbecker \u003cfweisbec@redhat.com\u003e\nCc: Greg Thelen \u003cgthelen@google.com\u003e\nCc: JoonSoo Kim \u003cjs1304@gmail.com\u003e\nCc: Mel Gorman \u003cmel@csn.ul.ie\u003e\nCc: Rik van Riel \u003criel@redhat.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "50bdd430c20566b13d8bc59946184b08f5875de6",
      "tree": "15ccc558002367c3d2c6b092ccc1d49e6d14acf1",
      "parents": [
        "6a1a0d3b625a4091e7a0eb249aefc6a644385149"
      ],
      "author": {
        "name": "Glauber Costa",
        "email": "glommer@parallels.com",
        "time": "Tue Dec 18 14:22:04 2012 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Dec 18 15:02:12 2012 -0800"
      },
      "message": "res_counter: return amount of charges after res_counter_uncharge()\n\nIt is useful to know how many charges are still left after a call to\nres_counter_uncharge.  While it is possible to issue a res_counter_read\nafter uncharge, this can be racy.\n\nIf we need, for instance, to take some action when the counters drop down\nto 0, only one of the callers should see it.  This is the same semantics\nas the atomic variables in the kernel.\n\nSince the current return value is void, we don\u0027t need to worry about\nanything breaking due to this change: nobody relied on that, and only\nusers appearing from now on will be checking this value.\n\nSigned-off-by: Glauber Costa \u003cglommer@parallels.com\u003e\nReviewed-by: Michal Hocko \u003cmhocko@suse.cz\u003e\nAcked-by: Kamezawa Hiroyuki \u003ckamezawa.hiroyu@jp.fujitsu.com\u003e\nAcked-by: David Rientjes \u003crientjes@google.com\u003e\nCc: Johannes Weiner \u003channes@cmpxchg.org\u003e\nCc: Suleiman Souhlal \u003csuleiman@google.com\u003e\nCc: Tejun Heo \u003ctj@kernel.org\u003e\nCc: Christoph Lameter \u003ccl@linux.com\u003e\nCc: Frederic Weisbecker \u003cfweisbec@redhat.com\u003e\nCc: Greg Thelen \u003cgthelen@google.com\u003e\nCc: JoonSoo Kim \u003cjs1304@gmail.com\u003e\nCc: Mel Gorman \u003cmel@csn.ul.ie\u003e\nCc: Pekka Enberg \u003cpenberg@cs.helsinki.fi\u003e\nCc: Rik van Riel \u003criel@redhat.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "6a1a0d3b625a4091e7a0eb249aefc6a644385149",
      "tree": "dcffaa5af65847680d1acdf7b4956d75a66e5885",
      "parents": [
        "7ae1e1d0f8ac2927ed7e3ca6d15e42d485903459"
      ],
      "author": {
        "name": "Glauber Costa",
        "email": "glommer@parallels.com",
        "time": "Tue Dec 18 14:22:00 2012 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Dec 18 15:02:12 2012 -0800"
      },
      "message": "mm: allocate kernel pages to the right memcg\n\nWhen a process tries to allocate a page with the __GFP_KMEMCG flag, the\npage allocator will call the corresponding memcg functions to validate\nthe allocation.  Tasks in the root memcg can always proceed.\n\nTo avoid adding markers to the page - and a kmem flag that would\nnecessarily follow, as much as doing page_cgroup lookups for no reason,\nwhoever is marking its allocations with __GFP_KMEMCG flag is responsible\nfor telling the page allocator that this is such an allocation at\nfree_pages() time.  This is done by the invocation of\n__free_accounted_pages() and free_accounted_pages().\n\nSigned-off-by: Glauber Costa \u003cglommer@parallels.com\u003e\nAcked-by: Michal Hocko \u003cmhocko@suse.cz\u003e\nAcked-by: Mel Gorman \u003cmgorman@suse.de\u003e\nAcked-by: Kamezawa Hiroyuki \u003ckamezawa.hiroyu@jp.fujitsu.com\u003e\nAcked-by: David Rientjes \u003crientjes@google.com\u003e\nCc: Christoph Lameter \u003ccl@linux.com\u003e\nCc: Pekka Enberg \u003cpenberg@cs.helsinki.fi\u003e\nCc: Johannes Weiner \u003channes@cmpxchg.org\u003e\nCc: Suleiman Souhlal \u003csuleiman@google.com\u003e\nCc: Tejun Heo \u003ctj@kernel.org\u003e\nCc: Frederic Weisbecker \u003cfweisbec@redhat.com\u003e\nCc: Greg Thelen \u003cgthelen@google.com\u003e\nCc: JoonSoo Kim \u003cjs1304@gmail.com\u003e\nCc: Rik van Riel \u003criel@redhat.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "7ae1e1d0f8ac2927ed7e3ca6d15e42d485903459",
      "tree": "6b95f008400510bee9a7742ee21bf5316a59f851",
      "parents": [
        "7a64bf05b2a6fe3703062d13d389e3eb904741c6"
      ],
      "author": {
        "name": "Glauber Costa",
        "email": "glommer@parallels.com",
        "time": "Tue Dec 18 14:21:56 2012 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Dec 18 15:02:12 2012 -0800"
      },
      "message": "memcg: kmem controller infrastructure\n\nIntroduce infrastructure for tracking kernel memory pages to a given\nmemcg.  This will happen whenever the caller includes the flag\n__GFP_KMEMCG flag, and the task belong to a memcg other than the root.\n\nIn memcontrol.h those functions are wrapped in inline acessors.  The idea\nis to later on, patch those with static branches, so we don\u0027t incur any\noverhead when no mem cgroups with limited kmem are being used.\n\nUsers of this functionality shall interact with the memcg core code\nthrough the following functions:\n\nmemcg_kmem_newpage_charge: will return true if the group can handle the\n                           allocation. At this point, struct page is not\n                           yet allocated.\n\nmemcg_kmem_commit_charge: will either revert the charge, if struct page\n                          allocation failed, or embed memcg information\n                          into page_cgroup.\n\nmemcg_kmem_uncharge_page: called at free time, will revert the charge.\n\nSigned-off-by: Glauber Costa \u003cglommer@parallels.com\u003e\nAcked-by: Michal Hocko \u003cmhocko@suse.cz\u003e\nAcked-by: Kamezawa Hiroyuki \u003ckamezawa.hiroyu@jp.fujitsu.com\u003e\nCc: Christoph Lameter \u003ccl@linux.com\u003e\nCc: Pekka Enberg \u003cpenberg@cs.helsinki.fi\u003e\nCc: Johannes Weiner \u003channes@cmpxchg.org\u003e\nCc: Tejun Heo \u003ctj@kernel.org\u003e\nCc: David Rientjes \u003crientjes@google.com\u003e\nCc: Frederic Weisbecker \u003cfweisbec@redhat.com\u003e\nCc: Greg Thelen \u003cgthelen@google.com\u003e\nCc: JoonSoo Kim \u003cjs1304@gmail.com\u003e\nCc: Mel Gorman \u003cmel@csn.ul.ie\u003e\nCc: Rik van Riel \u003criel@redhat.com\u003e\nCc: Suleiman Souhlal \u003csuleiman@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": "7a64bf05b2a6fe3703062d13d389e3eb904741c6",
      "tree": "7de58cc32cd02f11de5a1695b650946e1d48023a",
      "parents": [
        "510fc4e11b772fd60f2c545c64d4c55abd07ce36"
      ],
      "author": {
        "name": "Glauber Costa",
        "email": "glommer@parallels.com",
        "time": "Tue Dec 18 14:21:51 2012 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Dec 18 15:02:12 2012 -0800"
      },
      "message": "mm: add a __GFP_KMEMCG flag\n\nThis flag is used to indicate to the callees that this allocation is a\nkernel allocation in process context, and should be accounted to current\u0027s\nmemcg.\n\nSigned-off-by: Glauber Costa \u003cglommer@parallels.com\u003e\nAcked-by: Johannes Weiner \u003channes@cmpxchg.org\u003e\nAcked-by: Rik van Riel \u003criel@redhat.com\u003e\nAcked-by: Mel Gorman \u003cmel@csn.ul.ie\u003e\nAcked-by: Kamezawa Hiroyuki \u003ckamezawa.hiroyu@jp.fujitsu.com\u003e\nAcked-by: Michal Hocko \u003cmhocko@suse.cz\u003e\nAcked-by: Christoph Lameter \u003ccl@linux.com\u003e\nCc: Pekka Enberg \u003cpenberg@cs.helsinki.fi\u003e\nCc: Suleiman Souhlal \u003csuleiman@google.com\u003e\nCc: Tejun Heo \u003ctj@kernel.org\u003e\nCc: David Rientjes \u003crientjes@google.com\u003e\nCc: Frederic Weisbecker \u003cfweisbec@redhat.com\u003e\nCc: Greg Thelen \u003cgthelen@google.com\u003e\nCc: JoonSoo Kim \u003cjs1304@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": "31564cbd77baa88405862d4aa0d00893ab1d8cb7",
      "tree": "2eaec947ab64ccfa2d94ca29bf14feb70b8a4b61",
      "parents": [
        "6842d98de7bb726dfddc719cb9ae022b26a0f2b8",
        "022573c275500e1a50889949f679d04b5446edf6"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Dec 18 12:46:37 2012 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Dec 18 12:46:37 2012 -0800"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/dtor/input\n\nPull second round of input updates from Dmitry Torokhov:\n \"As usual, there are a couple of new drivers, input core now supports\n  managed input devices (devres), a slew of drivers now have device tree\n  support and a bunch of fixes and cleanups.\"\n\n* \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/dtor/input: (71 commits)\n  Input: walkera0701 - fix crash on startup\n  Input: matrix-keymap - provide a proper module license\n  Input: gpio_keys_polled - switch to using gpio_request_one()\n  Input: gpio_keys - switch to using gpio_request_one()\n  Input: wacom - fix touch support for Bamboo Fun CTH-461\n  Input: xpad - add a few new VID/PID combinations\n  Input: xpad - minor formatting fixes\n  Input: gpio-keys-polled - honor \u0027autorepeat\u0027 setting in platform data\n  Input: tca8418-keypad - switch to using managed resources\n  Input: tca8418_keypad - increase severity of failures in probe()\n  Input: tca8418_keypad - move device ID tables closer to where they are used\n  Input: tca8418_keypad - use dev_get_platdata() to retrieve platform data\n  Input: tca8418_keypad - use a temporary variable for parent device\n  Input: tca8418_keypad - add support for shared interrupt\n  Input: tca8418_keypad - add support for device tree bindings\n  Input: remove Compaq iPAQ H3600 (Bitsy) touchscreen driver\n  Input: bu21013_ts - add support for Device Tree booting\n  Input: bu21013_ts - move GPIO init and exit functions into the driver\n  Input: bu21013_ts - request regulator that actually exists\n  ARM: ux500: Strip out duplicate touch screen platform information\n  ...\n"
    },
    {
      "commit": "ae664dba2724e59ddd66291b895f7370e28b9a7a",
      "tree": "d6e214bdc9999bcb8b0a067053aa6934cfd9d60e",
      "parents": [
        "a2faf2fc534f57ba26bc4d613795236ed4f5fb1c",
        "08afe22c68d8c07e8e31ee6491c37f36199ba14b"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Dec 18 10:56:07 2012 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Dec 18 10:56:07 2012 -0800"
      },
      "message": "Merge branch \u0027slab/for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/penberg/linux\n\nPull SLAB changes from Pekka Enberg:\n \"This contains preparational work from Christoph Lameter and Glauber\n  Costa for SLAB memcg and cleanups and improvements from Ezequiel\n  Garcia and Joonsoo Kim.\n\n  Please note that the SLOB cleanup commit from Arnd Bergmann already\n  appears in your tree but I had also merged it myself which is why it\n  shows up in the shortlog.\"\n\n* \u0027slab/for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/penberg/linux:\n  mm/sl[aou]b: Common alignment code\n  slab: Use the new create_boot_cache function to simplify bootstrap\n  slub: Use statically allocated kmem_cache boot structure for bootstrap\n  mm, sl[au]b: create common functions for boot slab creation\n  slab: Simplify bootstrap\n  slub: Use correct cpu_slab on dead cpu\n  mm: fix slab.c kernel-doc warnings\n  mm/slob: use min_t() to compare ARCH_SLAB_MINALIGN\n  slab: Ignore internal flags in cache creation\n  mm/slob: Use free_page instead of put_page for page-size kmalloc allocations\n  mm/sl[aou]b: Move common kmem_cache_size() to slab.h\n  mm/slob: Use object_size field in kmem_cache_size()\n  mm/slob: Drop usage of page-\u003eprivate for storing page-sized allocations\n  slub: Commonize slab_cache field in struct page\n  sl[au]b: Process slabinfo_show in common code\n  mm/sl[au]b: Move print_slabinfo_header to slab_common.c\n  mm/sl[au]b: Move slabinfo processing to slab_common.c\n  slub: remove one code path and reduce lock contention in __slab_free()\n"
    },
    {
      "commit": "16e024f30ce96ef5fa651e2914e19d175a924cab",
      "tree": "d68106151a0b36e22625d7af7b23081a48c92e87",
      "parents": [
        "c36e0501ee91d7616a188efbf9714b1fce150032",
        "376bddd34433065aeb9b9a140870537feecf90ef"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Dec 18 09:58:09 2012 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Dec 18 09:58:09 2012 -0800"
      },
      "message": "Merge branch \u0027next\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/benh/powerpc\n\nPull powerpc update from Benjamin Herrenschmidt:\n \"The main highlight is probably some base POWER8 support.  There\u0027s more\n  to come such as transactional memory support but that will wait for\n  the next one.\n\n  Overall it\u0027s pretty quiet, or rather I\u0027ve been pretty poor at picking\n  things up from patchwork and reviewing them this time around and Kumar\n  no better on the FSL side it seems...\"\n\n* \u0027next\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/benh/powerpc: (73 commits)\n  powerpc+of: Rename and fix OF reconfig notifier error inject module\n  powerpc: mpc5200: Add a3m071 board support\n  powerpc/512x: don\u0027t compile any platform DIU code if the DIU is not enabled\n  powerpc/mpc52xx: use module_platform_driver macro\n  powerpc+of: Export of_reconfig_notifier_[register,unregister]\n  powerpc/dma/raidengine: add raidengine device\n  powerpc/iommu/fsl: Add PAMU bypass enable register to ccsr_guts struct\n  powerpc/mpc85xx: Change spin table to cached memory\n  powerpc/fsl-pci: Add PCI controller ATMU PM support\n  powerpc/86xx: fsl_pcibios_fixup_bus requires CONFIG_PCI\n  drivers/virt: the Freescale hypervisor driver doesn\u0027t need to check MSR[GS]\n  powerpc/85xx: p1022ds: Use NULL instead of 0 for pointers\n  powerpc: Disable relocation on exceptions when kexecing\n  powerpc: Enable relocation on during exceptions at boot\n  powerpc: Move get_longbusy_msecs into hvcall.h and remove duplicate function\n  powerpc: Add wrappers to enable/disable relocation on exceptions\n  powerpc: Add set_mode hcall\n  powerpc: Setup relocation on exceptions for bare metal systems\n  powerpc: Move initial mfspr LPCR out of __init_LPCR\n  powerpc: Add relocation on exception vector handlers\n  ...\n"
    },
    {
      "commit": "2d4dce0070448bcb5ccd04553a4be4635417f565",
      "tree": "300915d2df0b8f28072d090c21d8ac084cd5f6c0",
      "parents": [
        "ea88eeac0cb8328014b53d80ca631e8dc0dc18dc",
        "cd6c5968582a273561464fe6b1e8cc8214be02df"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Dec 18 09:36:34 2012 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Dec 18 09:36:34 2012 -0800"
      },
      "message": "Merge tag \u0027nfs-for-3.8-1\u0027 of git://git.linux-nfs.org/projects/trondmy/linux-nfs\n\nPull NFS client updates from Trond Myklebust:\n \"Features include:\n\n   - Full audit of BUG_ON asserts in the NFS, SUNRPC and lockd client\n     code.  Remove altogether where possible, and replace with\n     WARN_ON_ONCE and appropriate error returns where not.\n   - NFSv4.1 client adds session dynamic slot table management.  There\n     is matching server side code that has been submitted to Bruce for\n     consideration.\n\n     Together, this code allows the server to dynamically manage the\n     amount of memory it allocates to the duplicate request cache for\n     each client.  It will constantly resize those caches to reserve\n     more memory for clients that are hot while shrinking caches for\n     those that are quiescent.\n\n  In addition, there are assorted bugfixes for the generic NFS write\n  code, fixes to deal with the drop_nlink() warnings, and yet another\n  fix for NFSv4 getacl.\"\n\n* tag \u0027nfs-for-3.8-1\u0027 of git://git.linux-nfs.org/projects/trondmy/linux-nfs: (106 commits)\n  SUNRPC: continue run over clients list on PipeFS event instead of break\n  NFS: Don\u0027t use SetPageError in the NFS writeback code\n  SUNRPC: variable \u0027svsk\u0027 is unused in function bc_send_request\n  SUNRPC: Handle ECONNREFUSED in xs_local_setup_socket\n  NFSv4.1: Deal effectively with interrupted RPC calls.\n  NFSv4.1: Move the RPC timestamp out of the slot.\n  NFSv4.1: Try to deal with NFS4ERR_SEQ_MISORDERED.\n  NFS: nfs_lookup_revalidate should not trust an inode with i_nlink \u003d\u003d 0\n  NFS: Fix calls to drop_nlink()\n  NFS: Ensure that we always drop inodes that have been marked as stale\n  nfs: Remove unused list nfs4_clientid_list\n  nfs: Remove duplicate function declaration in internal.h\n  NFS: avoid NULL dereference in nfs_destroy_server\n  SUNRPC handle EKEYEXPIRED in call_refreshresult\n  SUNRPC set gss gc_expiry to full lifetime\n  nfs: fix page dirtying in NFS DIO read codepath\n  nfs: don\u0027t zero out the rest of the page if we hit the EOF on a DIO READ\n  NFSv4.1: Be conservative about the client highest slotid\n  NFSv4.1: Handle NFS4ERR_BADSLOT errors correctly\n  nfs: don\u0027t extend writes to cover entire page if pagecache is invalid\n  ...\n"
    },
    {
      "commit": "ea88eeac0cb8328014b53d80ca631e8dc0dc18dc",
      "tree": "de605c1d0e7ab1e342eedad47c56061b65a6b790",
      "parents": [
        "848b81415c42ff3dc9a4204749087b015c37ef66",
        "a9add5d92b64ea57fb4c3b557c3891cdeb15fa0c"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Dec 18 09:32:44 2012 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Dec 18 09:32:44 2012 -0800"
      },
      "message": "Merge tag \u0027md-3.8\u0027 of git://neil.brown.name/md\n\nPull md update from Neil Brown:\n \"Mostly just little fixes.  Probably biggest part is AVX accelerated\n  RAID6 calculations.\"\n\n* tag \u0027md-3.8\u0027 of git://neil.brown.name/md:\n  md/raid5: add blktrace calls\n  md/raid5: use async_tx_quiesce() instead of open-coding it.\n  md: Use -\u003ecurr_resync as last completed request when cleanly aborting resync.\n  lib/raid6: build proper files on corresponding arch\n  lib/raid6: Add AVX2 optimized gen_syndrome functions\n  lib/raid6: Add AVX2 optimized recovery functions\n  md: Update checkpoint of resync/recovery based on time.\n  md:Add place to update -\u003erecovery_cp.\n  md.c: re-indent various \u0027switch\u0027 statements.\n  md: close race between removing and adding a device.\n  md: removed unused variable in calc_sb_1_csm.\n"
    },
    {
      "commit": "08afe22c68d8c07e8e31ee6491c37f36199ba14b",
      "tree": "875d203149b74fddb50522fd5df3d6b154f5fe1e",
      "parents": [
        "a304f836a2e6d257c1f918b3431f97ef6b33e02e",
        "4590685546a374fb0f60682ce0e3a6fd48911d46"
      ],
      "author": {
        "name": "Pekka Enberg",
        "email": "penberg@kernel.org",
        "time": "Tue Dec 18 12:46:20 2012 +0200"
      },
      "committer": {
        "name": "Pekka Enberg",
        "email": "penberg@kernel.org",
        "time": "Tue Dec 18 12:46:20 2012 +0200"
      },
      "message": "Merge branch \u0027slab/next\u0027 into slab/for-linus\n\nFix up a trivial merge conflict with commit baaf1dd (\"mm/slob: use\nmin_t() to compare ARCH_SLAB_MINALIGN\") that did not go through the slab\ntree.\n\nConflicts:\n\tmm/slob.c\n\nSigned-off-by: Pekka Enberg \u003cpenberg@kernel.org\u003e\n"
    },
    {
      "commit": "848b81415c42ff3dc9a4204749087b015c37ef66",
      "tree": "391da3a73aea48632248220d2d6b8d45a88f7eae",
      "parents": [
        "992956189de58cae9f2be40585bc25105cd7c5ad",
        "6fd59a83b9261fa53eaf98fb5514abba504a3ea3"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Dec 17 20:58:12 2012 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Dec 17 20:58:12 2012 -0800"
      },
      "message": "Merge branch \u0027akpm\u0027 (Andrew\u0027s patch-bomb)\n\nMerge misc patches from Andrew Morton:\n \"Incoming:\n\n   - lots of misc stuff\n\n   - backlight tree updates\n\n   - lib/ updates\n\n   - Oleg\u0027s percpu-rwsem changes\n\n   - checkpatch\n\n   - rtc\n\n   - aoe\n\n   - more checkpoint/restart support\n\n  I still have a pile of MM stuff pending - Pekka should be merging\n  later today after which that is good to go.  A number of other things\n  are twiddling thumbs awaiting maintainer merges.\"\n\n* emailed patches from Andrew Morton \u003cakpm@linux-foundation.org\u003e: (180 commits)\n  scatterlist: don\u0027t BUG when we can trivially return a proper error.\n  docs: update documentation about /proc/\u003cpid\u003e/fdinfo/\u003cfd\u003e fanotify output\n  fs, fanotify: add @mflags field to fanotify output\n  docs: add documentation about /proc/\u003cpid\u003e/fdinfo/\u003cfd\u003e output\n  fs, notify: add procfs fdinfo helper\n  fs, exportfs: add exportfs_encode_inode_fh() helper\n  fs, exportfs: escape nil dereference if no s_export_op present\n  fs, epoll: add procfs fdinfo helper\n  fs, eventfd: add procfs fdinfo helper\n  procfs: add ability to plug in auxiliary fdinfo providers\n  tools/testing/selftests/kcmp/kcmp_test.c: print reason for failure in kcmp_test\n  breakpoint selftests: print failure status instead of cause make error\n  kcmp selftests: print fail status instead of cause make error\n  kcmp selftests: make run_tests fix\n  mem-hotplug selftests: print failure status instead of cause make error\n  cpu-hotplug selftests: print failure status instead of cause make error\n  mqueue selftests: print failure status instead of cause make error\n  vm selftests: print failure status instead of cause make error\n  ubifs: use prandom_bytes\n  mtd: nandsim: use prandom_bytes\n  ...\n"
    },
    {
      "commit": "9a2bdcc85d28506d4e5d4a9618fb133a3f40945d",
      "tree": "ac571e092d7542a5c5121d25b5f8f02cdfbb7a41",
      "parents": [
        "9bffdca8c64a72ac54c47a552734ab457bc720d4"
      ],
      "author": {
        "name": "Wanlong Gao",
        "email": "gaowanlong@cn.fujitsu.com",
        "time": "Mon Dec 10 16:38:33 2012 +0800"
      },
      "committer": {
        "name": "Rusty Russell",
        "email": "rusty@rustcorp.com.au",
        "time": "Tue Dec 18 15:20:43 2012 +1030"
      },
      "message": "virtio: add drv_to_virtio to make code clearly\n\nAdd drv_to_virtio wrapper to get virtio_driver from device_driver.\n\nCc: Rusty Russell \u003crusty@rustcorp.com.au\u003e\nCc: \"Michael S. Tsirkin\" \u003cmst@redhat.com\u003e\nSigned-off-by: Wanlong Gao \u003cgaowanlong@cn.fujitsu.com\u003e\nSigned-off-by: Rusty Russell \u003crusty@rustcorp.com.au\u003e\n"
    },
    {
      "commit": "9bffdca8c64a72ac54c47a552734ab457bc720d4",
      "tree": "c009f6f19b689ceac28122a2ea7109b4fccada95",
      "parents": [
        "40f9938c4c69183c5ceaca74b77aff636cc79623"
      ],
      "author": {
        "name": "Wanlong Gao",
        "email": "gaowanlong@cn.fujitsu.com",
        "time": "Tue Dec 11 11:04:50 2012 +1030"
      },
      "committer": {
        "name": "Rusty Russell",
        "email": "rusty@rustcorp.com.au",
        "time": "Tue Dec 18 15:20:42 2012 +1030"
      },
      "message": "virtio: use dev_to_virtio wrapper in virtio\n\nUse dev_to_virtio wrapper in virtio to make code clearly.\n\nCc: Rusty Russell \u003crusty@rustcorp.com.au\u003e\nCc: \"Michael S. Tsirkin\" \u003cmst@redhat.com\u003e\nSigned-off-by: Wanlong Gao \u003cgaowanlong@cn.fujitsu.com\u003e\nSigned-off-by: Rusty Russell \u003crusty@rustcorp.com.au\u003e\n"
    },
    {
      "commit": "06ca287dbac9cc19d04ac2901b8c4882c03795ff",
      "tree": "37574b40e4b18070fe92e88f722035159aa341fb",
      "parents": [
        "1ce6853aa0f8e1cc3ae811a85d50cde6ad0ef735"
      ],
      "author": {
        "name": "Rusty Russell",
        "email": "rusty@rustcorp.com.au",
        "time": "Tue Oct 16 23:56:14 2012 +1030"
      },
      "committer": {
        "name": "Rusty Russell",
        "email": "rusty@rustcorp.com.au",
        "time": "Tue Dec 18 15:20:31 2012 +1030"
      },
      "message": "virtio: move queue_index and num_free fields into core struct virtqueue.\n\nThey\u0027re generic concepts, so hoist them.  This also avoids accessor\nfunctions (though kept around for merge with DaveM\u0027s net tree).\n\nThis goes even further than Jason Wang\u0027s 17bb6d4088 patch\n(\"virtio-ring: move queue_index to vring_virtqueue\") which moved the\nqueue_index from the specific transport.\n\nAcked-by: Michael S. Tsirkin \u003cmst@redhat.com\u003e\nSigned-off-by: Rusty Russell \u003crusty@rustcorp.com.au\u003e\n"
    },
    {
      "commit": "a93178a13dbd35850ec8a86b023e1f8953e80dae",
      "tree": "b1a61e91771a788c511964afb099e4dc758fac68",
      "parents": [
        "10be289d07a5327e2e7764bb3ccbffa215075103",
        "2cb85a7bd2ca6db3ab3d632d0a1b6ca3770ddcf4"
      ],
      "author": {
        "name": "Olof Johansson",
        "email": "olof@lixom.net",
        "time": "Mon Dec 17 18:39:47 2012 -0800"
      },
      "committer": {
        "name": "Olof Johansson",
        "email": "olof@lixom.net",
        "time": "Mon Dec 17 18:39:47 2012 -0800"
      },
      "message": "Merge tag \u0027omap-for-v3.8/fixes-for-merge-window-v4-signed\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tmlind/linux-omap into fixes\n\nFrom Tony Lindgren:\n\nThese patches fixes a build error caused by a merge\nconflict with the fb code, few timer warnings, and longer\nterm regressions for tfp410 and omap h4 ethernet. Also\nincluded is a GPIO mode fix for the legacy mux code.\n\n* tag \u0027omap-for-v3.8/fixes-for-merge-window-v4-signed\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tmlind/linux-omap:\n  ARM: OMAP2+: common: remove use of vram\n  ARM: OMAP: Move plat/omap-serial.h to include/linux/platform_data/serial-omap.h\n  ARM: dts: Add build target for omap4-panda-a4\n  ARM: dts: OMAP2420: Correct H4 board memory size\n  mfd: omap-usb-host: get rid of cpu_is_omap..() macros\n  ARM: OMAP: Remove debug-devices.c\n  ARM: OMAP2420: Fix ethernet support for OMAP2420 H4\n  OMAP2+: mux: Fixed gpio mux mode analysis\n  OMAP: board-files: fix i2c_bus for tfp410\n  ARM: OMAP2+: Fix sparse warnings in timer.c\n  ARM: AM335x: Fix warning in timer.c\n  ARM: OMAP2+: Fix realtime_counter_init warning in timer.c\n"
    },
    {
      "commit": "711c7bf9914060d7aaf3c1a15f38094a5d5e748f",
      "tree": "9e77f75166d591c2a3979494253793add2df607a",
      "parents": [
        "ab49bdecc3ebb46ab661f5f05d5c5ea9606406c6"
      ],
      "author": {
        "name": "Cyrill Gorcunov",
        "email": "gorcunov@openvz.org",
        "time": "Mon Dec 17 16:05:08 2012 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Dec 17 17:15:27 2012 -0800"
      },
      "message": "fs, exportfs: add exportfs_encode_inode_fh() helper\n\nWe will need this helper in the next patch to provide a file handle for\ninotify marks in /proc/pid/fdinfo output.\n\nThe patch is rather providing the way to use inodes directly when dentry\nis not available (like in case of inotify system).\n\nSigned-off-by: Cyrill Gorcunov \u003cgorcunov@openvz.org\u003e\nAcked-by: Pavel Emelyanov \u003cxemul@parallels.com\u003e\nCc: Oleg Nesterov \u003coleg@redhat.com\u003e\nCc: Andrey Vagin \u003cavagin@openvz.org\u003e\nCc: Al Viro \u003cviro@ZenIV.linux.org.uk\u003e\nCc: Alexey Dobriyan \u003cadobriyan@gmail.com\u003e\nCc: James Bottomley \u003cjbottomley@parallels.com\u003e\nCc: \"Aneesh Kumar K.V\" \u003caneesh.kumar@linux.vnet.ibm.com\u003e\nCc: Alexey Dobriyan \u003cadobriyan@gmail.com\u003e\nCc: Matthew Helsley \u003cmatt.helsley@gmail.com\u003e\nCc: \"J. Bruce Fields\" \u003cbfields@fieldses.org\u003e\nCc: \"Aneesh Kumar K.V\" \u003caneesh.kumar@linux.vnet.ibm.com\u003e\nCc: Tvrtko Ursulin \u003ctvrtko.ursulin@onelan.co.uk\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "138d22b58696c506799f8de759804083ff9effae",
      "tree": "4c2af24ab90ececcfd30693cb6e17ab60e30bb86",
      "parents": [
        "cbac5542d48127b546a23d816380a7926eee1c25"
      ],
      "author": {
        "name": "Cyrill Gorcunov",
        "email": "gorcunov@openvz.org",
        "time": "Mon Dec 17 16:05:02 2012 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Dec 17 17:15:27 2012 -0800"
      },
      "message": "fs, epoll: add procfs fdinfo helper\n\nThis allows us to print out eventpoll target file descriptor, events and\ndata, the /proc/pid/fdinfo/fd consists of\n\n | pos:\t0\n | flags:\t02\n | tfd:        5 events:       1d data: ffffffffffffffff enabled: 1\n\n[avagin@: fix for unitialized ret variable]\n\nSigned-off-by: Cyrill Gorcunov \u003cgorcunov@openvz.org\u003e\nAcked-by: Pavel Emelyanov \u003cxemul@parallels.com\u003e\nCc: Oleg Nesterov \u003coleg@redhat.com\u003e\nCc: Andrey Vagin \u003cavagin@openvz.org\u003e\nCc: Al Viro \u003cviro@ZenIV.linux.org.uk\u003e\nCc: Alexey Dobriyan \u003cadobriyan@gmail.com\u003e\nCc: James Bottomley \u003cjbottomley@parallels.com\u003e\nCc: \"Aneesh Kumar K.V\" \u003caneesh.kumar@linux.vnet.ibm.com\u003e\nCc: Alexey Dobriyan \u003cadobriyan@gmail.com\u003e\nCc: Matthew Helsley \u003cmatt.helsley@gmail.com\u003e\nCc: \"J. Bruce Fields\" \u003cbfields@fieldses.org\u003e\nCc: \"Aneesh Kumar K.V\" \u003caneesh.kumar@linux.vnet.ibm.com\u003e\nCc: Tvrtko Ursulin \u003ctvrtko.ursulin@onelan.co.uk\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "55985dd72ab27b47530dcc8bdddd28b69f4abe8b",
      "tree": "9117b3f9bc9d46fe89ee3eccc959bab9b0e9db7b",
      "parents": [
        "2bf1cbf1c616b4dd85a3a8a715af9c5701c16a91"
      ],
      "author": {
        "name": "Cyrill Gorcunov",
        "email": "gorcunov@openvz.org",
        "time": "Mon Dec 17 16:04:55 2012 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Dec 17 17:15:27 2012 -0800"
      },
      "message": "procfs: add ability to plug in auxiliary fdinfo providers\n\nThis patch brings ability to print out auxiliary data associated with\nfile in procfs interface /proc/pid/fdinfo/fd.\n\nIn particular further patches make eventfd, evenpoll, signalfd and\nfsnotify to print additional information complete enough to restore\nthese objects after checkpoint.\n\nTo simplify the code we add show_fdinfo callback inside struct\nfile_operations (as Al and Pavel are proposing).\n\nSigned-off-by: Cyrill Gorcunov \u003cgorcunov@openvz.org\u003e\nAcked-by: Pavel Emelyanov \u003cxemul@parallels.com\u003e\nCc: Oleg Nesterov \u003coleg@redhat.com\u003e\nCc: Andrey Vagin \u003cavagin@openvz.org\u003e\nCc: Al Viro \u003cviro@ZenIV.linux.org.uk\u003e\nCc: Alexey Dobriyan \u003cadobriyan@gmail.com\u003e\nCc: James Bottomley \u003cjbottomley@parallels.com\u003e\nCc: \"Aneesh Kumar K.V\" \u003caneesh.kumar@linux.vnet.ibm.com\u003e\nCc: Alexey Dobriyan \u003cadobriyan@gmail.com\u003e\nCc: Matthew Helsley \u003cmatt.helsley@gmail.com\u003e\nCc: \"J. Bruce Fields\" \u003cbfields@fieldses.org\u003e\nCc: \"Aneesh Kumar K.V\" \u003caneesh.kumar@linux.vnet.ibm.com\u003e\nCc: Tvrtko Ursulin \u003ctvrtko.ursulin@onelan.co.uk\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "6582c665d6b882dad8329e05749fbcf119f1ab88",
      "tree": "c40cbd6ed26fb1fea9d63d9244e6ce377d8196fd",
      "parents": [
        "496f2f93b1cc286f5a4f4f9acdc1e5314978683f"
      ],
      "author": {
        "name": "Akinobu Mita",
        "email": "akinobu.mita@gmail.com",
        "time": "Mon Dec 17 16:04:25 2012 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Dec 17 17:15:26 2012 -0800"
      },
      "message": "prandom: introduce prandom_bytes() and prandom_bytes_state()\n\nAdd functions to get the requested number of pseudo-random bytes.\n\nThe difference from get_random_bytes() is that it generates pseudo-random\nnumbers by prandom_u32().  It doesn\u0027t consume the entropy pool, and the\nsequence is reproducible if the same rnd_state is used.  So it is suitable\nfor generating random bytes for testing.\n\nSigned-off-by: Akinobu Mita \u003cakinobu.mita@gmail.com\u003e\nCc: \"Theodore Ts\u0027o\" \u003ctytso@mit.edu\u003e\nCc: Artem Bityutskiy \u003cdedekind1@gmail.com\u003e\nCc: Adrian Hunter \u003cadrian.hunter@intel.com\u003e\nCc: David Woodhouse \u003cdwmw2@infradead.org\u003e\nCc: Eilon Greenstein \u003ceilong@broadcom.com\u003e\nCc: David Laight \u003cdavid.laight@aculab.com\u003e\nCc: Michel Lespinasse \u003cwalken@google.com\u003e\nCc: Robert Love \u003crobert.w.love@intel.com\u003e\nCc: Valdis Kletnieks \u003cvaldis.kletnieks@vt.edu\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "496f2f93b1cc286f5a4f4f9acdc1e5314978683f",
      "tree": "464fa6bd115ad4e3bedc02a0b0796a9f9e055ccc",
      "parents": [
        "31279b1457f992f24eee8d45ddd647f5fce42cf6"
      ],
      "author": {
        "name": "Akinobu Mita",
        "email": "akinobu.mita@gmail.com",
        "time": "Mon Dec 17 16:04:23 2012 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Dec 17 17:15:26 2012 -0800"
      },
      "message": "random32: rename random32 to prandom\n\nThis renames all random32 functions to have \u0027prandom_\u0027 prefix as follows:\n\n  void prandom_seed(u32 seed);\t/* rename from srandom32() */\n  u32 prandom_u32(void);\t\t/* rename from random32() */\n  void prandom_seed_state(struct rnd_state *state, u64 seed);\n  \t\t\t\t/* rename from prandom32_seed() */\n  u32 prandom_u32_state(struct rnd_state *state);\n  \t\t\t\t/* rename from prandom32() */\n\nThe purpose of this renaming is to prevent some kernel developers from\nassuming that prandom32() and random32() might imply that only\nprandom32() was the one using a pseudo-random number generator by\nprandom32\u0027s \"p\", and the result may be a very embarassing security\nexposure.  This concern was expressed by Theodore Ts\u0027o.\n\nAnd furthermore, I\u0027m going to introduce new functions for getting the\nrequested number of pseudo-random bytes.  If I continue to use both\nprandom32 and random32 prefixes for these functions, the confusion\nis getting worse.\n\nAs a result of this renaming, \"prandom_\" is the common prefix for\npseudo-random number library.\n\nCurrently, srandom32() and random32() are preserved because it is\ndifficult to rename too many users at once.\n\nSigned-off-by: Akinobu Mita \u003cakinobu.mita@gmail.com\u003e\nCc: \"Theodore Ts\u0027o\" \u003ctytso@mit.edu\u003e\nCc: Robert Love \u003crobert.w.love@intel.com\u003e\nCc: Michel Lespinasse \u003cwalken@google.com\u003e\nCc: Valdis Kletnieks \u003cvaldis.kletnieks@vt.edu\u003e\nCc: David Laight \u003cdavid.laight@aculab.com\u003e\nCc: Adrian Hunter \u003cadrian.hunter@intel.com\u003e\nCc: Artem Bityutskiy \u003cdedekind1@gmail.com\u003e\nCc: David Woodhouse \u003cdwmw2@infradead.org\u003e\nCc: Eilon Greenstein \u003ceilong@broadcom.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "8529091e8e2ae25e0f4003086f619765ff255e4b",
      "tree": "8e0133cdaaab2455290a558fb05ff845d1ec0ae5",
      "parents": [
        "a5ba911ec3792168530d35e16a8ec3b6fc60bcb5"
      ],
      "author": {
        "name": "Josh Triplett",
        "email": "josh@joshtriplett.org",
        "time": "Mon Dec 17 16:03:24 2012 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Dec 17 17:15:23 2012 -0800"
      },
      "message": "linux/compiler.h: add __must_hold macro for functions called with a lock held\n\nlinux/compiler.h has macros to denote functions that acquire or release\nlocks, but not to denote functions called with a lock held that return\nwith the lock still held.  Add a __must_hold macro to cover that case.\n\nSigned-off-by: Josh Triplett \u003cjosh@joshtriplett.org\u003e\nReported-by: Ed Cashin \u003cecashin@coraid.com\u003e\nTested-by: Ed Cashin \u003cecashin@coraid.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "a5ba911ec3792168530d35e16a8ec3b6fc60bcb5",
      "tree": "1dbffcb920aabeb12dc166aa11299bbddba8a245",
      "parents": [
        "d740269867021faf4ce38a449353d2b986c34a67"
      ],
      "author": {
        "name": "Gao feng",
        "email": "gaofeng@cn.fujitsu.com",
        "time": "Mon Dec 17 16:03:22 2012 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Dec 17 17:15:23 2012 -0800"
      },
      "message": "pidns: remove unused is_container_init()\n\nSince commit 1cdcbec1a337 (\"CRED: Neuter sys_capset()\")\nis_container_init() has no callers.\n\nSigned-off-by: Gao feng \u003cgaofeng@cn.fujitsu.com\u003e\nCc: David Howells \u003cdhowells@redhat.com\u003e\nAcked-by: Serge Hallyn \u003cserge.hallyn@canonical.com\u003e\nCc: James Morris \u003cjmorris@namei.org\u003e\nCc: \"Eric W. Biederman\" \u003cebiederm@xmission.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "d740269867021faf4ce38a449353d2b986c34a67",
      "tree": "e0476e1be1dfb6e852adbaa8fb72ecea87bdb088",
      "parents": [
        "8d238027b87e654be552eabdf492042a34c5c300"
      ],
      "author": {
        "name": "Kees Cook",
        "email": "keescook@chromium.org",
        "time": "Mon Dec 17 16:03:20 2012 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Dec 17 17:15:23 2012 -0800"
      },
      "message": "exec: use -ELOOP for max recursion depth\n\nTo avoid an explosion of request_module calls on a chain of abusive\nscripts, fail maximum recursion with -ELOOP instead of -ENOEXEC. As soon\nas maximum recursion depth is hit, the error will fail all the way back\nup the chain, aborting immediately.\n\nThis also has the side-effect of stopping the user\u0027s shell from attempting\nto reexecute the top-level file as a shell script. As seen in the\ndash source:\n\n        if (cmd !\u003d path_bshell \u0026\u0026 errno \u003d\u003d ENOEXEC) {\n                *argv-- \u003d cmd;\n                *argv \u003d cmd \u003d path_bshell;\n                goto repeat;\n        }\n\nThe above logic was designed for running scripts automatically that lacked\nthe \"#!\" header, not to re-try failed recursion. On a legitimate -ENOEXEC,\nthings continue to behave as the shell expects.\n\nAdditionally, when tracking recursion, the binfmt handlers should not be\ninvolved. The recursion being tracked is the depth of calls through\nsearch_binary_handler(), so that function should be exclusively responsible\nfor tracking the depth.\n\nSigned-off-by: Kees Cook \u003ckeescook@chromium.org\u003e\nCc: halfdog \u003cme@halfdog.net\u003e\nCc: P J P \u003cppandit@redhat.com\u003e\nCc: Alexander Viro \u003cviro@zeniv.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": "992fb6e170639b0849bace8e49bf31bd37c4123c",
      "tree": "29f54e489ea095aba284fd4b1feb7201347eb70c",
      "parents": [
        "462e471107624fe9bd8b6353ac13e06305c3f3fd"
      ],
      "author": {
        "name": "Oleg Nesterov",
        "email": "oleg@redhat.com",
        "time": "Mon Dec 17 16:03:07 2012 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Dec 17 17:15:22 2012 -0800"
      },
      "message": "ptrace: introduce PTRACE_O_EXITKILL\n\nPtrace jailers want to be sure that the tracee can never escape\nfrom the control. However if the tracer dies unexpectedly the\ntracee continues to run in potentially unsafe mode.\n\nAdd the new ptrace option PTRACE_O_EXITKILL. If the tracer exits\nit sends SIGKILL to every tracee which has this bit set.\n\nNote that the new option is not equal to the last-option \u003c\u003c 1.  Because\ncurrently all options have an event, and the new one starts the eventless\ngroup.  It uses the random 20 bit, so we have the room for 12 more events,\nbut we can also add the new eventless options below this one.\n\nSuggested by Amnon Shiloh.\n\nSigned-off-by: Oleg Nesterov \u003coleg@redhat.com\u003e\nTested-by: Amnon Shiloh \u003cu3557@miso.sublimeip.com\u003e\nCc: Denys Vlasenko \u003cdvlasenk@redhat.com\u003e\nCc: Michael Kerrisk \u003cmtk.manpages@gmail.com\u003e\nCc: Serge Hallyn \u003cserge.hallyn@canonical.com\u003e\nCc: Chris Evans \u003cscarybeasts@gmail.com\u003e\nCc: David Howells \u003cdhowells@redhat.com\u003e\nCc: \"Eric W. Biederman\" \u003cebiederm@xmission.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "4c925d6031f719fad6ea8b1c94a636f4c0fea39b",
      "tree": "a27265311ff47951ab00d4df3b49350c1ae898ba",
      "parents": [
        "543f56c19c3e926d33b50a6bcbc37c408631601e"
      ],
      "author": {
        "name": "Eldad Zack",
        "email": "eldad@fogrefinery.com",
        "time": "Mon Dec 17 16:03:04 2012 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Dec 17 17:15:22 2012 -0800"
      },
      "message": "kstrto*: add documentation\n\nAs Bruce Fields pointed out, kstrto* is currently lacking kerneldoc\ncomments.  This patch adds kerneldoc comments to common variants of\nkstrto*: kstrto(u)l, kstrto(u)ll and kstrto(u)int.\n\nSigned-off-by: Eldad Zack \u003celdad@fogrefinery.com\u003e\nCc: J. Bruce Fields \u003cbfields@fieldses.org\u003e\nCc: Joe Perches \u003cjoe@perches.com\u003e\nCc: Randy Dunlap \u003crdunlap@xenotime.net\u003e\nCc: Alexey Dobriyan \u003cadobriyan@gmail.com\u003e\nCc: Rob Landley \u003crob@landley.net\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "0ad50c3896afbb3c103409a18260e601b87a744c",
      "tree": "3a59c1e90b3ee62daf18bc9689cf454a31f164be",
      "parents": [
        "918854a65e856574523d94763ef2a2b48ad55a25"
      ],
      "author": {
        "name": "Catalin Marinas",
        "email": "catalin.marinas@arm.com",
        "time": "Mon Dec 17 16:01:45 2012 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Dec 17 17:15:18 2012 -0800"
      },
      "message": "compat: generic compat_sys_sched_rr_get_interval() implementation\n\nThis function is used by sparc, powerpc tile and arm64 for compat support.\n The patch adds a generic implementation with a wrapper for PowerPC to do\nthe u32-\u003eint sign extension.\n\nThe reason for a single patch covering powerpc, tile, sparc and arm64 is\nto keep it bisectable, otherwise kernel building may fail with mismatched\nfunction declarations.\n\nSigned-off-by: Catalin Marinas \u003ccatalin.marinas@arm.com\u003e\nAcked-by: Chris Metcalf \u003ccmetcalf@tilera.com\u003e  [for tile]\nAcked-by: David S. Miller \u003cdavem@davemloft.net\u003e\nAcked-by: Arnd Bergmann \u003carnd@arndb.de\u003e\nCc: Benjamin Herrenschmidt \u003cbenh@kernel.crashing.org\u003e\nCc: Paul Mackerras \u003cpaulus@samba.org\u003e\nCc: Alexander Viro \u003cviro@zeniv.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": "8ebe34731a0d1a9d89b536430afd98d0fadec99b",
      "tree": "bb378645318ce7c9b1b5a389a5e522835916cbed",
      "parents": [
        "9390ef0c85fd065f01045fef708b046c98cda04c"
      ],
      "author": {
        "name": "Oleg Nesterov",
        "email": "oleg@redhat.com",
        "time": "Mon Dec 17 16:01:38 2012 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Dec 17 17:15:18 2012 -0800"
      },
      "message": "percpu_rw_semaphore: add lockdep annotations\n\nAdd lockdep annotations.  Not only this can help to find the potential\nproblems, we do not want the false warnings if, say, the task takes two\ndifferent percpu_rw_semaphore\u0027s for reading.  IOW, at least -\u003erw_sem\nshould not use a single class.\n\nThis patch exposes this internal lock to lockdep so that it represents the\nwhole percpu_rw_semaphore.  This way we do not need to add another \"fake\"\n-\u003elockdep_map and lock_class_key.  More importantly, this also makes the\noutput from lockdep much more understandable if it finds the problem.\n\nIn short, with this patch from lockdep pov percpu_down_read() and\npercpu_up_read() acquire/release -\u003erw_sem for reading, this matches the\nactual semantics.  This abuses __up_read() but I hope this is fine and in\nfact I\u0027d like to have down_read_no_lockdep() as well,\npercpu_down_read_recursive_readers() will need it.\n\nSigned-off-by: Oleg Nesterov \u003coleg@redhat.com\u003e\nCc: Anton Arapov \u003canton@redhat.com\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\nCc: Michal Marek \u003cmmarek@suse.cz\u003e\nCc: Mikulas Patocka \u003cmpatocka@redhat.com\u003e\nCc: \"Paul E. McKenney\" \u003cpaulmck@linux.vnet.ibm.com\u003e\nCc: Peter Zijlstra \u003cpeterz@infradead.org\u003e\nCc: Srikar Dronamraju \u003csrikar@linux.vnet.ibm.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "9390ef0c85fd065f01045fef708b046c98cda04c",
      "tree": "22ae17e0d07a9386cd494a869f60df757cfc56d7",
      "parents": [
        "a1fd3e24d8a484b3265a6d485202afe093c058f3"
      ],
      "author": {
        "name": "Oleg Nesterov",
        "email": "oleg@redhat.com",
        "time": "Mon Dec 17 16:01:36 2012 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Dec 17 17:15:18 2012 -0800"
      },
      "message": "percpu_rw_semaphore: kill -\u003ewriter_mutex, add -\u003ewrite_ctr\n\npercpu_rw_semaphore-\u003ewriter_mutex was only added to simplify the initial\nrewrite, the only thing it protects is clear_fast_ctr() which otherwise\ncould be called by multiple writers.  -\u003erw_sem is enough to serialize the\nwriters.\n\nKill this mutex and add \"atomic_t write_ctr\" instead.  The writers\nincrement/decrement this counter, the readers check it is zero instead of\nmutex_is_locked().\n\nMove atomic_add(clear_fast_ctr(), slow_read_ctr) under down_write() to\navoid the race with other writers.  This is a bit sub-optimal, only the\nfirst writer needs this and we do not need to exclude the readers at this\nstage.  But this is simple, we do not want another internal lock until we\nadd more features.\n\nAnd this speeds up the write-contended case.  Before this patch the racing\nwriters sleep in synchronize_sched_expedited() sequentially, with this\npatch multiple synchronize_sched_expedited\u0027s can \"overlap\" with each\nother.  Note: we can do more optimizations, this is only the first step.\n\nSigned-off-by: Oleg Nesterov \u003coleg@redhat.com\u003e\nCc: Anton Arapov \u003canton@redhat.com\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\nCc: Michal Marek \u003cmmarek@suse.cz\u003e\nCc: Mikulas Patocka \u003cmpatocka@redhat.com\u003e\nCc: \"Paul E. McKenney\" \u003cpaulmck@linux.vnet.ibm.com\u003e\nCc: Peter Zijlstra \u003cpeterz@infradead.org\u003e\nCc: Srikar Dronamraju \u003csrikar@linux.vnet.ibm.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "a1fd3e24d8a484b3265a6d485202afe093c058f3",
      "tree": "472f6480a81abbc04b27eccdb798d80b1685bee0",
      "parents": [
        "53809751ac230a3611b5cdd375f3389f3207d471"
      ],
      "author": {
        "name": "Oleg Nesterov",
        "email": "oleg@redhat.com",
        "time": "Mon Dec 17 16:01:32 2012 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Dec 17 17:15:18 2012 -0800"
      },
      "message": "percpu_rw_semaphore: reimplement to not block the readers unnecessarily\n\nCurrently the writer does msleep() plus synchronize_sched() 3 times to\nacquire/release the semaphore, and during this time the readers are\nblocked completely.  Even if the \"write\" section was not actually started\nor if it was already finished.\n\nWith this patch down_write/up_write does synchronize_sched() twice and\ndown_read/up_read are still possible during this time, just they use the\nslow path.\n\npercpu_down_write() first forces the readers to use rw_semaphore and\nincrement the \"slow\" counter to take the lock for reading, then it\ntakes that rw_semaphore for writing and blocks the readers.\n\nAlso.  With this patch the code relies on the documented behaviour of\nsynchronize_sched(), it doesn\u0027t try to pair synchronize_sched() with\nbarrier.\n\nSigned-off-by: Oleg Nesterov \u003coleg@redhat.com\u003e\nReviewed-by: Paul E. McKenney \u003cpaulmck@linux.vnet.ibm.com\u003e\nCc: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\nCc: Mikulas Patocka \u003cmpatocka@redhat.com\u003e\nCc: Peter Zijlstra \u003cpeterz@infradead.org\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: Srikar Dronamraju \u003csrikar@linux.vnet.ibm.com\u003e\nCc: Ananth N Mavinakayanahalli \u003cananth@in.ibm.com\u003e\nCc: Anton Arapov \u003canton@redhat.com\u003e\nCc: Jens Axboe \u003caxboe@kernel.dk\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "b18888ab256f05626193be955a7a03f01d676f8c",
      "tree": "50e0839fc250c1766138b47f9d8750124ed938aa",
      "parents": [
        "0edd807dc96522d9a8e8b5298552cd8adf810cc5"
      ],
      "author": {
        "name": "Andy Shevchenko",
        "email": "andriy.shevchenko@linux.intel.com",
        "time": "Mon Dec 17 16:01:18 2012 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Dec 17 17:15:17 2012 -0800"
      },
      "message": "string: introduce helper to get base file name from given path\n\nThere are several places in the kernel that use functionality like\nbasename(3) with the exception: in case of \u0027/foo/bar/\u0027 we expect to get an\nempty string.  Let\u0027s do it common helper for them.\n\nSigned-off-by: Andy Shevchenko \u003candriy.shevchenko@linux.intel.com\u003e\nCc: Jason Baron \u003cjbaron@redhat.com\u003e\nCc: YAMANE Toshiaki \u003cyamanetoshi@gmail.com\u003e\nCc: Greg Kroah-Hartman \u003cgregkh@linuxfoundation.org\u003e\nCc: Steven Rostedt \u003crostedt@goodmis.org\u003e\nCc: Frederic Weisbecker \u003cfweisbec@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": "762a936fba7bd9225ca9a96e4860f6969b6b5670",
      "tree": "afb3f60c95eb8d21573e80683c61bb43ebb58ffe",
      "parents": [
        "fb08cd9b111c6a922f468ef5e33acc67eb91d40b"
      ],
      "author": {
        "name": "Thierry Reding",
        "email": "thierry.reding@avionic-design.de",
        "time": "Mon Dec 17 16:01:06 2012 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Dec 17 17:15:16 2012 -0800"
      },
      "message": "backlight: add of_find_backlight_by_node()\n\nThis function finds the struct backlight_device for a given device tree\nnode.  A dummy function is provided so that it safely compiles out if OF\nsupport is disabled.\n\n[akpm@linux-foundation.org: Don\u0027t use IS_ENABLED(CONFIG_OF)]\nSigned-off-by: Thierry Reding \u003cthierry.reding@avionic-design.de\u003e\nAcked-by: Jingoo Han \u003cjg1.han@samsung.com\u003e\nReviewed-by: Grant Likely \u003cgrant.likely@secretlab.ca\u003e\nCc: Thierry Reding \u003cthierry.reding@avionic-design.de\u003e\nReviewed-by: Grant Likely \u003cgrant.likely@secretlab.ca\u003e\nAcked-by: Jingoo Han \u003cjg1.han@samsung.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "8cc9764c9c7d01a6e2c3ddac8f0ac7716be01868",
      "tree": "29a1e895f720dcd8ee969df19ba089401e870f8b",
      "parents": [
        "05a5d4d2640dfe934ec78ba577dd21baccb11aa6"
      ],
      "author": {
        "name": "Kim, Milo",
        "email": "Milo.Kim@ti.com",
        "time": "Mon Dec 17 16:00:43 2012 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Dec 17 17:15:16 2012 -0800"
      },
      "message": "drivers/video/backlight/lp855x_bl.c: use generic PWM functions\n\nThe LP855x family devices support the PWM input for the backlight control.\n Period of the PWM is configurable in the platform side.  Platform\nspecific functions are unnecessary anymore because generic PWM functions\nare used inside the driver.\n\n(PWM input mode)\nTo set the brightness, new lp855x_pwm_ctrl() is used.\nIf a PWM device is not allocated, devm_pwm_get() is called.\nThe PWM consumer name is from the chip name such as \u0027lp8550\u0027 and \u0027lp8556\u0027.\nTo get the brightness value, no additional handling is required.\nJust the value of \u0027props.brightness\u0027 is returned.\n\nIf the PWM driver is not ready while initializing the LP855x driver, it\u0027s\nOK.  The PWM device can be retrieved later, when the brightness value is\nchanged.\n\nDocumentation is updated with an example.\n\n[akpm@linux-foundation.org: coding-style simplification, per Thierry]\nSigned-off-by: Milo(Woogyom) Kim \u003cmilo.kim@ti.com\u003e\nCc: Thierry Reding \u003cthierry.reding@avionic-design.de\u003e\nCc: Richard Purdie \u003crpurdie@rpsys.net\u003e\nCc: Bryan Wu \u003cbryan.wu@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": "965c8e59cfcf845ecde2265a1d1bfee5f011d302",
      "tree": "22758a99b4ecb475750966d5202200dc0e89876c",
      "parents": [
        "c0f041602c33bae10b8e321c49024490d03ced3d"
      ],
      "author": {
        "name": "Andrew Morton",
        "email": "akpm@linux-foundation.org",
        "time": "Mon Dec 17 15:59:39 2012 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Dec 17 17:15:12 2012 -0800"
      },
      "message": "lseek: the \"whence\" argument is called \"whence\"\n\nBut the kernel decided to call it \"origin\" instead.  Fix most of the\nsites.\n\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": "7929d407e47fbf843fe1337fd95ed57785ae5e9d",
      "tree": "5c94b07b1d60cbf2499ec59f89c61a2113ea753f",
      "parents": [
        "fbb97d87802247a7bb32a207a8275372e79e6b88"
      ],
      "author": {
        "name": "Matthew Leach",
        "email": "matthew@mattleach.net",
        "time": "Mon Dec 17 15:59:32 2012 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Dec 17 17:15:12 2012 -0800"
      },
      "message": "include/linux/init.h: use the stringify operator for the __define_initcall macro\n\nCurrently the __define_initcall() macro takes three arguments, fn, id and\nlevel.  The level argument is exactly the same as the id argument but\nwrapped in quotes.  To overcome this need to specify three arguments to\nthe __define_initcall macro, where one argument is the stringification of\nanother, we can just use the stringification macro instead.\n\nSigned-off-by: Matthew Leach \u003cmatthew@mattleach.net\u003e\nCc: Benjamin Herrenschmidt \u003cbenh@kernel.crashing.org\u003e\nCc: Rusty Russell \u003crusty@rustcorp.com.au\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "6a2b60b17b3e48a418695a94bd2420f6ab32e519",
      "tree": "54b7792fa68b8890f710fa6398b6ba8626a039a8",
      "parents": [
        "9228ff90387e276ad67b10c0eb525c9d6a57d5e9",
        "98f842e675f96ffac96e6c50315790912b2812be"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Dec 17 15:44:47 2012 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Dec 17 15:44:47 2012 -0800"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/ebiederm/user-namespace\n\nPull user namespace changes from Eric Biederman:\n \"While small this set of changes is very significant with respect to\n  containers in general and user namespaces in particular.  The user\n  space interface is now complete.\n\n  This set of changes adds support for unprivileged users to create user\n  namespaces and as a user namespace root to create other namespaces.\n  The tyranny of supporting suid root preventing unprivileged users from\n  using cool new kernel features is broken.\n\n  This set of changes completes the work on setns, adding support for\n  the pid, user, mount namespaces.\n\n  This set of changes includes a bunch of basic pid namespace\n  cleanups/simplifications.  Of particular significance is the rework of\n  the pid namespace cleanup so it no longer requires sending out\n  tendrils into all kinds of unexpected cleanup paths for operation.  At\n  least one case of broken error handling is fixed by this cleanup.\n\n  The files under /proc/\u003cpid\u003e/ns/ have been converted from regular files\n  to magic symlinks which prevents incorrect caching by the VFS,\n  ensuring the files always refer to the namespace the process is\n  currently using and ensuring that the ptrace_mayaccess permission\n  checks are always applied.\n\n  The files under /proc/\u003cpid\u003e/ns/ have been given stable inode numbers\n  so it is now possible to see if different processes share the same\n  namespaces.\n\n  Through the David Miller\u0027s net tree are changes to relax many of the\n  permission checks in the networking stack to allowing the user\n  namespace root to usefully use the networking stack.  Similar changes\n  for the mount namespace and the pid namespace are coming through my\n  tree.\n\n  Two small changes to add user namespace support were commited here adn\n  in David Miller\u0027s -net tree so that I could complete the work on the\n  /proc/\u003cpid\u003e/ns/ files in this tree.\n\n  Work remains to make it safe to build user namespaces and 9p, afs,\n  ceph, cifs, coda, gfs2, ncpfs, nfs, nfsd, ocfs2, and xfs so the\n  Kconfig guard remains in place preventing that user namespaces from\n  being built when any of those filesystems are enabled.\n\n  Future design work remains to allow root users outside of the initial\n  user namespace to mount more than just /proc and /sys.\"\n\n* \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/ebiederm/user-namespace: (38 commits)\n  proc: Usable inode numbers for the namespace file descriptors.\n  proc: Fix the namespace inode permission checks.\n  proc: Generalize proc inode allocation\n  userns: Allow unprivilged mounts of proc and sysfs\n  userns: For /proc/self/{uid,gid}_map derive the lower userns from the struct file\n  procfs: Print task uids and gids in the userns that opened the proc file\n  userns: Implement unshare of the user namespace\n  userns: Implent proc namespace operations\n  userns: Kill task_user_ns\n  userns: Make create_new_namespaces take a user_ns parameter\n  userns: Allow unprivileged use of setns.\n  userns: Allow unprivileged users to create new namespaces\n  userns: Allow setting a userns mapping to your current uid.\n  userns: Allow chown and setgid preservation\n  userns: Allow unprivileged users to create user namespaces.\n  userns: Ignore suid and sgid on binaries if the uid or gid can not be mapped\n  userns: fix return value on mntns_install() failure\n  vfs: Allow unprivileged manipulation of the mount namespace.\n  vfs: Only support slave subtrees across different user namespaces\n  vfs: Add a user namespace reference from struct mnt_namespace\n  ...\n"
    },
    {
      "commit": "376bddd34433065aeb9b9a140870537feecf90ef",
      "tree": "a40e2b84ad89f4b3ba968de65a4bf7ff6ccae835",
      "parents": [
        "d526e85f60fce9aa2a1432cbd06e3cf20c1644c8",
        "667b504a2c411e4d5915a6e2260a3857ba9f797a"
      ],
      "author": {
        "name": "Benjamin Herrenschmidt",
        "email": "benh@kernel.crashing.org",
        "time": "Tue Dec 18 10:22:27 2012 +1100"
      },
      "committer": {
        "name": "Benjamin Herrenschmidt",
        "email": "benh@kernel.crashing.org",
        "time": "Tue Dec 18 10:22:27 2012 +1100"
      },
      "message": "Merge remote-tracking branch \u0027agust/next\u0027 into next\n\nBrings some 52xx updates. Also manually merged tools/perf/perf.h.\n\nSigned-off-by: Benjamin Herrenschmidt \u003cbenh@kernel.crashing.org\u003e\n"
    },
    {
      "commit": "9228ff90387e276ad67b10c0eb525c9d6a57d5e9",
      "tree": "e7c87b68daba7cf7ca4c342c6b52165bd78fbe16",
      "parents": [
        "9360b53661a2c7754517b2925580055bacc8ec38",
        "d2ec180c23a5a1bfe34d8638b0342a47c00cf70f"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Dec 17 13:39:11 2012 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Dec 17 13:39:11 2012 -0800"
      },
      "message": "Merge branch \u0027for-3.8/drivers\u0027 of git://git.kernel.dk/linux-block\n\nPull block driver update from Jens Axboe:\n \"Now that the core bits are in, here are the driver bits for 3.8.  The\n  branch contains:\n\n   - A huge pile of drbd bits that were dumped from the 3.7 merge\n     window.  Following that, it was both made perfectly clear that\n     there is going to be no more over-the-wall pulls and how the\n     situation on individual pulls can be improved.\n\n   - A few cleanups from Akinobu Mita for drbd and cciss.\n\n   - Queue improvement for loop from Lukas.  This grew into adding a\n     generic interface for waiting/checking an even with a specific\n     lock, allowing this to be pulled out of md and now loop and drbd is\n     also using it.\n\n   - A few fixes for xen back/front block driver from Roger Pau Monne.\n\n   - Partition improvements from Stephen Warren, allowing partiion UUID\n     to be used as an identifier.\"\n\n* \u0027for-3.8/drivers\u0027 of git://git.kernel.dk/linux-block: (609 commits)\n  drbd: update Kconfig to match current dependencies\n  drbd: Fix drbdsetup wait-connect, wait-sync etc... commands\n  drbd: close race between drbd_set_role and drbd_connect\n  drbd: respect no-md-barriers setting also when changed online via disk-options\n  drbd: Remove obsolete check\n  drbd: fixup after wait_even_lock_irq() addition to generic code\n  loop: Limit the number of requests in the bio list\n  wait: add wait_event_lock_irq() interface\n  xen-blkfront: free allocated page\n  xen-blkback: move free persistent grants code\n  block: partition: msdos: provide UUIDs for partitions\n  init: reduce PARTUUID min length to 1 from 36\n  block: store partition_meta_info.uuid as a string\n  cciss: use check_signature()\n  cciss: cleanup bitops usage\n  drbd: use copy_highpage\n  drbd: if the replication link breaks during handshake, keep retrying\n  drbd: check return of kmalloc in receive_uuids\n  drbd: Broadcast sync progress no more often than once per second\n  drbd: don\u0027t try to clear bits once the disk has failed\n  ...\n"
    },
    {
      "commit": "9360b53661a2c7754517b2925580055bacc8ec38",
      "tree": "58a0c6f266524247baf87d21bf41ac3bc395cf8a",
      "parents": [
        "fa4c95bfdb85d568ae327d57aa33a4f55bab79c4"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Dec 17 11:29:09 2012 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Dec 17 11:29:09 2012 -0800"
      },
      "message": "Revert \"bdi: add a user-tunable cpu_list for the bdi flusher threads\"\n\nThis reverts commit 8fa72d234da9b6b473bbb1f74d533663e4996e6b.\n\nPeople disagree about how this should be done, so let\u0027s revert this for\nnow so that nobody starts using the new tuning interface.  Tejun is\nthinking about a more generic interface for thread pool affinity.\n\nRequested-by: Tejun Heo \u003ctj@kernel.org\u003e\nAcked-by: Jeff Moyer \u003cjmoyer@redhat.com\u003e\nAcked-by: Jens Axboe \u003caxboe@kernel.dk\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "60da5bf47dd3d301a1d3bd4f0a4b9e29a184515c",
      "tree": "30de83370440aae5350d9ab3fbe6583abd439ee8",
      "parents": [
        "3c2e81ef344a90bb0a39d84af6878b4aeff568a2",
        "cbae8d45d61f3a8c155caf267d01e5e0f0b2f4b7"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Dec 17 08:27:23 2012 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Dec 17 08:27:23 2012 -0800"
      },
      "message": "Merge branch \u0027for-3.8/core\u0027 of git://git.kernel.dk/linux-block\n\nPull block layer core updates from Jens Axboe:\n \"Here are the core block IO bits for 3.8.  The branch contains:\n\n   - The final version of the surprise device removal fixups from Bart.\n\n   - Don\u0027t hide EFI partitions under advanced partition types.  It\u0027s\n     fairly wide spread these days.  This is especially dangerous for\n     systems that have both msdos and efi partition tables, where you\n     want to keep them in sync.\n\n   - Cleanup of using -1 instead of the proper NUMA_NO_NODE\n\n   - Export control of bdi flusher thread CPU mask and default to using\n     the home node (if known) from Jeff.\n\n   - Export unplug tracepoint for MD.\n\n   - Core improvements from Shaohua.  Reinstate the recursive merge, as\n     the original bug has been fixed.  Add plugging for discard and also\n     fix a problem handling non pow-of-2 discard limits.\n\n  There\u0027s a trivial merge in block/blk-exec.c due to a fix that went\n  into 3.7-rc at a later point than -rc4 where this is based.\"\n\n* \u0027for-3.8/core\u0027 of git://git.kernel.dk/linux-block:\n  block: export block_unplug tracepoint\n  block: add plug for blkdev_issue_discard\n  block: discard granularity might not be power of 2\n  deadline: Allow 0ms deadline latency, increase the read speed\n  partitions: enable EFI/GPT support by default\n  bsg: Remove unused function bsg_goose_queue()\n  block: Make blk_cleanup_queue() wait until request_fn finished\n  block: Avoid scheduling delayed work on a dead queue\n  block: Avoid that request_fn is invoked on a dead queue\n  block: Let blk_drain_queue() caller obtain the queue lock\n  block: Rename queue dead flag\n  bdi: add a user-tunable cpu_list for the bdi flusher threads\n  block: use NUMA_NO_NODE instead of -1\n  block: recursive merge requests\n  block CFQ: avoid moving request to different queue\n"
    },
    {
      "commit": "3c2e81ef344a90bb0a39d84af6878b4aeff568a2",
      "tree": "bd8c8b23466174899d2fe4d35af6e1e838edb068",
      "parents": [
        "221392c3ad0432e39fd74a349364f66cb0ed78f6",
        "55bde6b1442fed8af67b92d21acce67db454c9f9"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Dec 17 08:26:17 2012 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Dec 17 08:26:17 2012 -0800"
      },
      "message": "Merge branch \u0027drm-next\u0027 of git://people.freedesktop.org/~airlied/linux\n\nPull DRM updates from Dave Airlie:\n \"This is the one and only next pull for 3.8, we had a regression we\n  found last week, so I was waiting for that to resolve itself, and I\n  ended up with some Intel fixes on top as well.\n\n  Highlights:\n   - new driver: nvidia tegra 20/30/hdmi support\n   - radeon: add support for previously unused DMA engines, more HDMI\n     regs, eviction speeds ups and fixes\n   - i915: HSW support enable, agp removal on GEN6, seqno wrapping\n   - exynos: IPP subsystem support (image post proc), HDMI\n   - nouveau: display class reworking, nv20-\u003e40 z compression\n   - ttm: start of locking fixes, rcu usage for lookups,\n   - core: documentation updates, docbook integration, monotonic clock\n     usage, move from connector to object properties\"\n\n* \u0027drm-next\u0027 of git://people.freedesktop.org/~airlied/linux: (590 commits)\n  drm/exynos: add gsc ipp driver\n  drm/exynos: add rotator ipp driver\n  drm/exynos: add fimc ipp driver\n  drm/exynos: add iommu support for ipp\n  drm/exynos: add ipp subsystem\n  drm/exynos: support device tree for fimd\n  radeon: fix regression with eviction since evict caching changes\n  drm/radeon: add more pedantic checks in the CP DMA checker\n  drm/radeon: bump version for CS ioctl support for async DMA\n  drm/radeon: enable the async DMA rings in the CS ioctl\n  drm/radeon: add VM CS parser support for async DMA on cayman/TN/SI\n  drm/radeon/kms: add evergreen/cayman CS parser for async DMA (v2)\n  drm/radeon/kms: add 6xx/7xx CS parser for async DMA (v2)\n  drm/radeon: fix htile buffer size computation for command stream checker\n  drm/radeon: fix fence locking in the pageflip callback\n  drm/radeon: make indirect register access concurrency-safe\n  drm/radeon: add W|RREG32_IDX for MM_INDEX|DATA based mmio accesss\n  drm/exynos: support extended screen coordinate of fimd\n  drm/exynos: fix x, y coordinates for right bottom pixel\n  drm/exynos: fix fb offset calculation for plane\n  ...\n"
    },
    {
      "commit": "2dfea3803dcf70983d14ce1dcbb3e97a7459a28b",
      "tree": "59bffc7389ff554585f79d7cc06021790dc2b317",
      "parents": [
        "aed606e3bc1f10753254db308d3fd8c053c41328",
        "1881b68b8961a86d40c3c5c205e533515a2dc9c6"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun Dec 16 18:55:20 2012 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun Dec 16 18:55:20 2012 -0800"
      },
      "message": "Merge tag \u0027mfd-3.8-1\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/sameo/mfd-2.6\n\nPull MFS update from Samuel Ortiz:\n \"This is the MFD patch set for the 3.8 merge window.\n\n  We have several new drivers, most of the time coming with their sub\n  devices drivers:\n\n   - Austria Microsystem\u0027s AS3711\n   - Nano River\u0027s viperboard\n   - TI\u0027s TPS80031, AM335x TS/ADC,\n   - Realtek\u0027s MMC/memstick card reader\n   - Nokia\u0027s retu\n\n  We also got some notable cleanups and improvements:\n\n   - tps6586x got converted to IRQ domains.\n   - tps65910 and tps65090 moved to the regmap IRQ API.\n   - STMPE is now Device Tree aware.\n   - A general twl6040 and twl-core cleanup, with moves to the regmap\n     I/O and IRQ APIs and a conversion to the recently added PWM\n     framework.\n   - sta2x11 gained regmap support.\n\n  Then the rest is mostly tiny cleanups and fixes, among which we have\n  Mark\u0027s wm5xxx and wm8xxx patchset.\"\n\nFar amount of annoying but largely trivial conflicts.  Many due to\n__devinit/exit removal, others due to one or two of the new drivers also\nhaving come in through another tree.\n\n* tag \u0027mfd-3.8-1\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/sameo/mfd-2.6: (119 commits)\n  mfd: tps6507x: Convert to devm_kzalloc\n  mfd: stmpe: Update DT support for stmpe driver\n  mfd: wm5102: Add readback of DSP status 3 register\n  mfd: arizona: Log if we fail to create the primary IRQ domain\n  mfd: tps80031: MFD_TPS80031 needs to select REGMAP_IRQ\n  mfd: tps80031: Add terminating entry for tps80031_id_table\n  mfd: sta2x11: Fix potential NULL pointer dereference in __sta2x11_mfd_mask()\n  mfd: wm5102: Add tuning for revision B\n  mfd: arizona: Defer patch initialistation until after first device boot\n  mfd: tps65910: Fix wrong ack_base register\n  mfd: tps65910: Remove unused data\n  mfd: stmpe: Get rid of irq_invert_polarity\n  mfd: ab8500-core: Fix invalid free of devm_ allocated data\n  mfd: wm5102: Mark DSP memory regions as volatile\n  mfd: wm5102: Correct default for LDO1_CONTROL_2\n  mfd: arizona: Register haptics devices\n  mfd: wm8994: Make current device behaviour the default\n  mfd: tps65090: MFD_TPS65090 needs to select REGMAP_IRQ\n  mfd: Fix stmpe.c build when OF is not enabled\n  mfd: jz4740-adc: Use devm_kzalloc\n  ...\n"
    },
    {
      "commit": "9b690c3d56ce15dd265b6398f9d8d58c29c17032",
      "tree": "56477d1f4e596011f17d1c64e8597613330e5439",
      "parents": [
        "36cd5c19c3fe8291fac45a262c44c00bd14b531a",
        "af51a9f1848ff50079a10def56a2c064f326af22"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun Dec 16 17:39:14 2012 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun Dec 16 17:39:14 2012 -0800"
      },
      "message": "Merge tag \u0027stable/for-linus-3.8-rc0-tag\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/konrad/swiotlb\n\nPull swiotlb update from Konrad Rzeszutek Wilk:\n \"Feature:\n   - Use dma addresses instead of the virt_to_phys and vice versa\n     functions.\n\n  Remove the multitude of phys_to_virt/virt_to_phys calls and instead\n  operate on the physical addresses instead of virtual in many of the\n  internal functions.  This does provide a speed up in interrupt\n  handlers that do DMA operations and use SWIOTLB.\"\n\n* tag \u0027stable/for-linus-3.8-rc0-tag\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/konrad/swiotlb:\n  swiotlb: Do not export swiotlb_bounce since there are no external consumers\n  swiotlb: Use physical addresses instead of virtual in swiotlb_tbl_sync_single\n  swiotlb: Use physical addresses for swiotlb_tbl_unmap_single\n  swiotlb: Return physical addresses when calling swiotlb_tbl_map_single\n  swiotlb: Make io_tlb_overflow_buffer a physical address\n  swiotlb: Make io_tlb_start a physical address instead of a virtual one\n  swiotlb: Make io_tlb_end a physical address instead of a virtual one\n"
    },
    {
      "commit": "36cd5c19c3fe8291fac45a262c44c00bd14b531a",
      "tree": "77813e551c82546c9f6cddc8a3216ba5d02807ed",
      "parents": [
        "2a74dbb9a86e8102dcd07d284135b4530a84826e",
        "bd9926e80330d43f15b710c2935fa41b792d56fd"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun Dec 16 17:33:01 2012 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun Dec 16 17:33:01 2012 -0800"
      },
      "message": "Merge tag \u0027ext4_for_linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tytso/ext4\n\nPull ext4 update from Ted Ts\u0027o:\n \"There are two major features for this merge window.  The first is\n  inline data, which allows small files or directories to be stored in\n  the in-inode extended attribute area.  (This requires that the file\n  system use inodes which are at least 256 bytes or larger; 128 byte\n  inodes do not have any room for in-inode xattrs.)\n\n  The second new feature is SEEK_HOLE/SEEK_DATA support.  This is\n  enabled by the extent status tree patches, and this infrastructure\n  will be used to further optimize ext4 in the future.\n\n  Beyond that, we have the usual collection of code cleanups and bug\n  fixes.\"\n\n* tag \u0027ext4_for_linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tytso/ext4: (63 commits)\n  ext4: zero out inline data using memset() instead of empty_zero_page\n  ext4: ensure Inode flags consistency are checked at build time\n  ext4: Remove CONFIG_EXT4_FS_XATTR\n  ext4: remove unused variable from ext4_ext_in_cache()\n  ext4: remove redundant initialization in ext4_fill_super()\n  ext4: remove redundant code in ext4_alloc_inode()\n  ext4: use sync_inode_metadata() when syncing inode metadata\n  ext4: enable ext4 inline support\n  ext4: let fallocate handle inline data correctly\n  ext4: let ext4_truncate handle inline data correctly\n  ext4: evict inline data out if we need to strore xattr in inode\n  ext4: let fiemap work with inline data\n  ext4: let ext4_rename handle inline dir\n  ext4: let empty_dir handle inline dir\n  ext4: let ext4_delete_entry() handle inline data\n  ext4: make ext4_delete_entry generic\n  ext4: let ext4_find_entry handle inline data\n  ext4: create a new function search_dir\n  ext4: let ext4_readdir handle inline data\n  ext4: let add_dir_entry handle inline data properly\n  ...\n"
    },
    {
      "commit": "2a74dbb9a86e8102dcd07d284135b4530a84826e",
      "tree": "a54403e312b6062dfb57bd904ba8b8ce3b11e720",
      "parents": [
        "770b6cb4d21fb3e3df2a7a51e186a3c14db1ec30",
        "e93072374112db9dc86635934ee761249be28370"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun Dec 16 15:40:50 2012 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun Dec 16 15:40:50 2012 -0800"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/jmorris/linux-security\n\nPull security subsystem updates from James Morris:\n \"A quiet cycle for the security subsystem with just a few maintenance\n  updates.\"\n\n* \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/jmorris/linux-security:\n  Smack: create a sysfs mount point for smackfs\n  Smack: use select not depends in Kconfig\n  Yama: remove locking from delete path\n  Yama: add RCU to drop read locking\n  drivers/char/tpm: remove tasklet and cleanup\n  KEYS: Use keyring_alloc() to create special keyrings\n  KEYS: Reduce initial permissions on keys\n  KEYS: Make the session and process keyrings per-thread\n  seccomp: Make syscall skipping and nr changes more consistent\n  key: Fix resource leak\n  keys: Fix unreachable code\n  KEYS: Add payload preparsing opportunity prior to key instantiate or update\n"
    },
    {
      "commit": "3d59eebc5e137bd89c6351e4c70e90ba1d0dc234",
      "tree": "b4ddfd0b057454a7437a3b4e3074a3b8b4b03817",
      "parents": [
        "11520e5e7c1855fc3bf202bb3be35a39d9efa034",
        "4fc3f1d66b1ef0d7b8dc11f4ff1cc510f78b37d6"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun Dec 16 14:33:25 2012 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun Dec 16 15:18:08 2012 -0800"
      },
      "message": "Merge tag \u0027balancenuma-v11\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/mel/linux-balancenuma\n\nPull Automatic NUMA Balancing bare-bones from Mel Gorman:\n \"There are three implementations for NUMA balancing, this tree\n  (balancenuma), numacore which has been developed in tip/master and\n  autonuma which is in aa.git.\n\n  In almost all respects balancenuma is the dumbest of the three because\n  its main impact is on the VM side with no attempt to be smart about\n  scheduling.  In the interest of getting the ball rolling, it would be\n  desirable to see this much merged for 3.8 with the view to building\n  scheduler smarts on top and adapting the VM where required for 3.9.\n\n  The most recent set of comparisons available from different people are\n\n    mel:    https://lkml.org/lkml/2012/12/9/108\n    mingo:  https://lkml.org/lkml/2012/12/7/331\n    tglx:   https://lkml.org/lkml/2012/12/10/437\n    srikar: https://lkml.org/lkml/2012/12/10/397\n\n  The results are a mixed bag.  In my own tests, balancenuma does\n  reasonably well.  It\u0027s dumb as rocks and does not regress against\n  mainline.  On the other hand, Ingo\u0027s tests shows that balancenuma is\n  incapable of converging for this workloads driven by perf which is bad\n  but is potentially explained by the lack of scheduler smarts.  Thomas\u0027\n  results show balancenuma improves on mainline but falls far short of\n  numacore or autonuma.  Srikar\u0027s results indicate we all suffer on a\n  large machine with imbalanced node sizes.\n\n  My own testing showed that recent numacore results have improved\n  dramatically, particularly in the last week but not universally.\n  We\u0027ve butted heads heavily on system CPU usage and high levels of\n  migration even when it shows that overall performance is better.\n  There are also cases where it regresses.  Of interest is that for\n  specjbb in some configurations it will regress for lower numbers of\n  warehouses and show gains for higher numbers which is not reported by\n  the tool by default and sometimes missed in treports.  Recently I\n  reported for numacore that the JVM was crashing with\n  NullPointerExceptions but currently it\u0027s unclear what the source of\n  this problem is.  Initially I thought it was in how numacore batch\n  handles PTEs but I\u0027m no longer think this is the case.  It\u0027s possible\n  numacore is just able to trigger it due to higher rates of migration.\n\n  These reports were quite late in the cycle so I/we would like to start\n  with this tree as it contains much of the code we can agree on and has\n  not changed significantly over the last 2-3 weeks.\"\n\n* tag \u0027balancenuma-v11\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/mel/linux-balancenuma: (50 commits)\n  mm/rmap, migration: Make rmap_walk_anon() and try_to_unmap_anon() more scalable\n  mm/rmap: Convert the struct anon_vma::mutex to an rwsem\n  mm: migrate: Account a transhuge page properly when rate limiting\n  mm: numa: Account for failed allocations and isolations as migration failures\n  mm: numa: Add THP migration for the NUMA working set scanning fault case build fix\n  mm: numa: Add THP migration for the NUMA working set scanning fault case.\n  mm: sched: numa: Delay PTE scanning until a task is scheduled on a new node\n  mm: sched: numa: Control enabling and disabling of NUMA balancing if !SCHED_DEBUG\n  mm: sched: numa: Control enabling and disabling of NUMA balancing\n  mm: sched: Adapt the scanning rate if a NUMA hinting fault does not migrate\n  mm: numa: Use a two-stage filter to restrict pages being migrated for unlikely task\u003c-\u003enode relationships\n  mm: numa: migrate: Set last_nid on newly allocated page\n  mm: numa: split_huge_page: Transfer last_nid on tail page\n  mm: numa: Introduce last_nid to the page frame\n  sched: numa: Slowly increase the scanning period as NUMA faults are handled\n  mm: numa: Rate limit setting of pte_numa if node is saturated\n  mm: numa: Rate limit the amount of memory that is migrated between nodes\n  mm: numa: Structures for Migrate On Fault per NUMA migration rate limiting\n  mm: numa: Migrate pages handled during a pmd_numa hinting fault\n  mm: numa: Migrate on reference policy\n  ...\n"
    },
    {
      "commit": "2cb85a7bd2ca6db3ab3d632d0a1b6ca3770ddcf4",
      "tree": "04857b183cef8996c7380ebc8a83b5110c71e15d",
      "parents": [
        "d7dde8c191d136415819e4456e21f2b0cc00c326",
        "d9ba573718666df2e7e30d671f81bba39d07f91c"
      ],
      "author": {
        "name": "Tony Lindgren",
        "email": "tony@atomide.com",
        "time": "Sun Dec 16 11:28:10 2012 -0800"
      },
      "committer": {
        "name": "Tony Lindgren",
        "email": "tony@atomide.com",
        "time": "Sun Dec 16 11:28:10 2012 -0800"
      },
      "message": "Merge branch \u0027omap-for-v3.8/fixes-for-merge-window\u0027 into omap-for-v3.8/fixes-for-merge-window-v2\n"
    },
    {
      "commit": "9c6ecf6a3ade2dc4b03a239af68058b22897af41",
      "tree": "fe8345ddac388c832f6438e7a074c3c0d1837d6f",
      "parents": [
        "29594404d7fe73cd80eaa4ee8c43dcc53970c60e",
        "a0157573041403e7507a6f3f32279fc14ff5c02e",
        "310aa95078443c7b7b56c60dbc55b7a11b946edb",
        "ea2447f700cab264019b52e2b417d689e052dcfd",
        "f1bda29c2bfa84c2c022e1f443528e21607bf360",
        "298ea44f211de93ce1b30dc4e2bd2d3b23e41556"
      ],
      "author": {
        "name": "Joerg Roedel",
        "email": "joro@8bytes.org",
        "time": "Sun Dec 16 12:24:09 2012 +0100"
      },
      "committer": {
        "name": "Joerg Roedel",
        "email": "joro@8bytes.org",
        "time": "Sun Dec 16 12:24:09 2012 +0100"
      },
      "message": "Merge branches \u0027iommu/fixes\u0027, \u0027dma-debug\u0027, \u0027x86/amd\u0027, \u0027x86/vt-d\u0027, \u0027arm/tegra\u0027 and \u0027arm/omap\u0027 into next\n"
    },
    {
      "commit": "11520e5e7c1855fc3bf202bb3be35a39d9efa034",
      "tree": "734ea170f825000dceef3f724dff474b46fce11d",
      "parents": [
        "5bd665f28db2b04a8d6fe277342479906fc60b62"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Dec 15 15:15:24 2012 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Dec 15 15:20:41 2012 -0800"
      },
      "message": "Revert \"x86-64/efi: Use EFI to deal with platform wall clock (again)\"\n\nThis reverts commit bd52276fa1d4 (\"x86-64/efi: Use EFI to deal with\nplatform wall clock (again)\"), and the two supporting commits:\n\n  da5a108d05b4: \"x86/kernel: remove tboot 1:1 page table creation code\"\n\n  185034e72d59: \"x86, efi: 1:1 pagetable mapping for virtual EFI calls\")\n\nas they all depend semantically on commit 53b87cf088e2 (\"x86, mm:\nInclude the entire kernel memory map in trampoline_pgd\") that got\nreverted earlier due to the problems it caused.\n\nThis was pointed out by Yinghai Lu, and verified by me on my Macbook Air\nthat uses EFI.\n\nPointed-out-by: Yinghai Lu \u003cyinghai@kernel.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "115b1cc2ef0f43ecb42bdbf55f06e9d2231d5a7e",
      "tree": "776fe64cb84da07ad52b1cad4052fc715433fe29",
      "parents": [
        "2b8318881ddbcb67c5e8d2178b42284749442222",
        "962b686c450493adb8596e813bdfd0e1613482e6"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Dec 15 14:04:50 2012 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Dec 15 14:04:50 2012 -0800"
      },
      "message": "Merge tag \u0027char-misc-3.8-rc1\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/char-misc\n\nPull EXTCON patches from Greg Kroah-Hartman:\n \"Here are some drivers/extcon/ patches that I forgot to have you pull\n  in the larger char/misc patchset from yesterday, for the 3.8-rc1\n  kernel.\n\n  Nothing major here, just some driver updates, and cleanups, all of\n  which have been in linux-next for a while now.\n\n  Signed-off-by: Greg Kroah-Hartman \u003cgregkh@linuxfoundation.org\u003e\"\n\n* tag \u0027char-misc-3.8-rc1\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/char-misc:\n  extcon: kernel_doc style fix\n  extcon: max77693: Fix uninitialised variable warning\n  extcon: max77693: Use devm_kzalloc\n  extcon: max8997: Use devm_kzalloc\n  extcon: max8997: Fix a typo\n  extcon: max8997: Fix checkpatch error\n  extcon: max77693: Fix coding style\n  extcon: max77693: Fix incorrect error check and return value\n  extcon: max8997: Fix incorrect error check and return value\n  extcon: Fix return value in extcon-class.c\n  extcon: Add missing header file to extcon.h\n  extcon: arizona: unlock mutex on error path in arizona_micdet()\n"
    },
    {
      "commit": "2b8318881ddbcb67c5e8d2178b42284749442222",
      "tree": "b43ded0118bb7a6d9f89f6875c18d7ef447ba3be",
      "parents": [
        "e81d372ff9f694e13fa46e8b5aaed505c7fd2a1f",
        "e7f5c9a16ea2648a3e85af8e34191026bf3dcb62"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Dec 15 13:03:48 2012 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Dec 15 13:03:48 2012 -0800"
      },
      "message": "Merge tag \u0027fbdev-for-3.8\u0027 of git://gitorious.org/linux-omap-dss2/linux\n\nPull fbdev changes from Tomi Valkeinen:\n \"OMAPDSS changes, including:\n   - use dynanic debug prints\n   - OMAP platform dependency removals\n   - Creation of compat-layer, helping us to improve omapdrm\n   - Misc cleanups, aiming to make omadss more in line with the upcoming\n     common display framework\n\n  Exynos DP changes for the 3.8 merge window:\n   - Device Tree support for Samsung Exynos DP\n   - SW Link training is cleaned up.\n   - HPD interrupt is supported.\n\n  Samsung Framebuffer changes for the 3.8 merge window:\n   - The bit definitions of header file are updated.\n   - Some minor typos are fixed.\n   - Some minor bugs of s3c_fb_check_var() are fixed.\n\n  FB related changes for SH Mobile, Freescale DIU\n\n  Add support for the Solomon SSD1307 OLED Controller\"\n\n* tag \u0027fbdev-for-3.8\u0027 of git://gitorious.org/linux-omap-dss2/linux: (191 commits)\n  OMAPDSS: fix TV-out issue with DSI PLL\n  Revert \"OMAPFB: simplify locking\"\n  OMAPFB: remove silly loop in fb2display()\n  OMAPFB: fix error handling in omapfb_find_best_mode()\n  OMAPFB: use devm_kzalloc to allocate omapfb2_device\n  OMAPDSS: DISPC: remove dispc fck uses\n  OMAPDSS: DISPC: get dss clock rate from dss driver\n  drivers/video/console/softcursor.c: remove redundant NULL check before kfree()\n  drivers/video: add support for the Solomon SSD1307 OLED Controller\n  OMAPDSS: use omapdss_compat_init() in other drivers\n  OMAPDSS: export dispc functions\n  OMAPDSS: export dss_feat functions\n  OMAPDSS: export dss_mgr_ops functions\n  OMAPDSS: separate compat files in the Makefile\n  OMAPDSS: move display sysfs init to compat layer\n  OMAPDSS: DPI: use dispc\u0027s check_timings\n  OMAPDSS: DISPC: add dispc_ovl_check()\n  OMAPDSS: move irq handling to dispc-compat\n  OMAPDSS: move omap_dispc_wait_for_irq_interruptible_timeout to dispc-compat.c\n  OMAPDSS: move blocking mgr enable/disable to compat layer\n  ...\n\nConflicts:\n\tarch/arm/mach-davinci/devices-da8xx.c\n\tarch/arm/plat-omap/common.c\n\tdrivers/media/platform/omap/omap_vout.c\n"
    },
    {
      "commit": "e81d372ff9f694e13fa46e8b5aaed505c7fd2a1f",
      "tree": "058d5004b6ca7602aaec6ef2d992be9c71a8e81c",
      "parents": [
        "75e300c8ba5864367634d946c729d8fd05c1cbc2",
        "2f05e1d4458f9cb68d4d36fb47e6830fec03c80e"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Dec 15 12:52:42 2012 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Dec 15 12:52:42 2012 -0800"
      },
      "message": "Merge branch \u0027for-next\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/cooloney/linux-leds\n\nPull LED subsystem update from Bryan Wu.\n\n* \u0027for-next\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/cooloney/linux-leds: (47 commits)\n  leds: leds-lp5521: return an error code on error in probe()\n  leds: leds-clevo-mail: Use pr_* instead of printks\n  leds: leds-rb532: Fix checkpatch errors\n  leds: led-triggers: Fix checkpatch warnings\n  leds: ledtrig-backlight: Fix checkpatch error\n  leds: leds-wrap: Use \u003clinux/io.h\u003e instead of \u003casm/io.h\u003e\n  leds: leds-wm8350: Use dev_err instead of printk\n  leds: leds-pwm: Fix checkpatch warning\n  leds: leds-pca955x: Use dev_info instead of printk\n  leds: leds-net48xx: Use linux/io.h instead of asm/io.h\n  leds: leds-lt3593: Fix checkpatch warnings\n  leds: leds-gpio: Use dev_info instead of printk\n  leds: leds-da903x: Fix checkpatch error and warnings\n  leds: leds-bd2802: Fix checkpatch warnings\n  leds: leds-adp5520: Fix checkpatch warnings\n  leds: led-class: Fix checkpatch warning\n  leds: leds-ns2: use devm_gpio_request_one\n  leds: leds-lt3593: use devm_gpio_request_one\n  leds: leds-gpio: use devm_gpio_request_one\n  leds: lp3944: Fix return value\n  ...\n"
    },
    {
      "commit": "c13e69b2f0e1e2da41a175c7e9215659842cbef9",
      "tree": "e422a97edf4169ced53cab98d700225ae1766759",
      "parents": [
        "c5258190c2ae664cdf367417a2a25e5fa4104322",
        "72d5f2da2c3717f1be484d97e35d67dde0efb4c0"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Dec 15 12:37:18 2012 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Dec 15 12:37:18 2012 -0800"
      },
      "message": "Merge tag \u0027upstream-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/jgarzik/libata-dev\n\nPull libata updates from Jeff Garzik:\n\n - More ACPI fixes\n\n - ata_piix: cosmetic code movement, re-enable MS Virtual PC support\n\n - generic platform driver improvements; use common code\n\n - pata_cs5536: add quirk for broken udma\n\n - printk prettiness (dev_printk becomes dev_info, etc.)\n\n - sata_promise: fix hardreset lockdep error\n\n - minor cleanups from Sergei Shtylyov\n\n - minor, automated cleanups from Wei Yongjun\n\n - fix null ptr deref bug, in sysfs API\n\n* tag \u0027upstream-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/jgarzik/libata-dev: (37 commits)\n  sata_dwc_460ex: remove file exec bit (chmod 0755 -\u003e 0644)\n  [libata] fix Null pointer dereference on disk error\n  ahci: convert ata_link_printk() to ata_link_warn()\n  pata_imx: convert ata_dev_printk() to ata_dev_info()\n  ARM: ep93xx: convert ata_\u003cfoo\u003e_printk() to ata_\u003cfoo\u003e_\u003clevel\u003e()\n  ahci_platform: make structs static\n  Revert \"pata_octeon_cf: perform host detach, removal on exit\"\n  Revert \"libata: check SATA_SETTINGS log with HW Feature Ctrl\"\n  pata_of_platform: fix compile error\n  libata: use pci_get_drvdata() helper\n  pata_octeon_cf: perform host detach, removal on exit\n  sata_highbank: utilize common ata_platform_remove_one()\n  pata_palmld: utilize common ata_platform_remove_one()\n  pata_platform: remove unused remove function\n  pata_platform: utilize common ata_platform_remove_one()\n  pata_of_platform: utilize common ata_platform_remove_one()\n  pata_mpc52xx: utilize common ata_platform_remove_one()\n  pata_ixp4xx_cf: utilize common ata_platform_remove_one()\n  ahci_platform: utilize common ata_platform_remove_one()\n  libata: implement ata_platform_remove_one()\n  ...\n"
    },
    {
      "commit": "8e63b6a8adabb0551124c3b78f7f5f36912c3728",
      "tree": "47043a752823e4aba91f906f95d3c5006f759202",
      "parents": [
        "e8794440849d1d15fa11251ef1622e6160614874"
      ],
      "author": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Sat Dec 15 15:21:52 2012 -0500"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Sat Dec 15 15:21:52 2012 -0500"
      },
      "message": "NFSv4.1: Move the RPC timestamp out of the slot.\n\nShave a few bytes off the slot table size by moving the RPC timestamp\ninto the sequence results.\n\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "4939e27d46fee2609f2112f85f7f7cbd952075dc",
      "tree": "0f83542cb7e51d167000ce91f493bd8fdc30bdfa",
      "parents": [
        "c2714334b944abbeaaadda8cddde619eff0292a1",
        "93c667ca2598bd84f1bd3f2fa176af69707699fe"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Dec 14 15:37:46 2012 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Dec 14 15:37:46 2012 -0800"
      },
      "message": "Merge tag \u0027devicetree-for-linus\u0027 of git://git.secretlab.ca/git/linux-2.6\n\nPull another devicetree update from Grant Likely:\n \"Here\u0027s a couple more devicetree changes that I missed in the first\n  pull by putting the tag in the wrong place.\n\n  Two minor devicetree fixups for v3.8.  Addition of dummy inlines and\n  constification of node argument to of_parse_phandle_with_args().\"\n\n* tag \u0027devicetree-for-linus\u0027 of git://git.secretlab.ca/git/linux-2.6:\n  of: *node argument to of_parse_phandle_with_args should be const\n  of/i2c: add dummy inline functions for when CONFIG_OF_I2C(_MODULE) isn\u0027t defined\n"
    },
    {
      "commit": "c2714334b944abbeaaadda8cddde619eff0292a1",
      "tree": "b45be97a313f58aa62933040230d51aa3a8592b4",
      "parents": [
        "0beb58783f2168354e2b5297af45fc7db70adf12",
        "5e5d8999a316d596f2012fe1cf4c59e0de693dab"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Dec 14 14:54:26 2012 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Dec 14 14:54:26 2012 -0800"
      },
      "message": "Merge tag \u0027mvebu\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc\n\nPull ARM SoC updates for Marvell mvebu/kirkwood from Olof Johansson:\n \"This is a branch with updates for Marvell\u0027s mvebu/kirkwood platforms.\n  They came in late-ish, and were heavily interdependent such that it\n  didn\u0027t make sense to split them up across the cross-platform topic\n  branches.  So here they are (for the second release in a row) in a\n  branch on their own.\"\n\n* tag \u0027mvebu\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc: (88 commits)\n  arm: l2x0: add aurora related properties to OF binding\n  arm: mvebu: add Aurora L2 Cache Controller to the DT\n  arm: mvebu: add L2 cache support\n  dma: mv_xor: fix error handling path\n  dma: mv_xor: fix error checking of irq_of_parse_and_map()\n  dma: mv_xor: use request_irq() instead of devm_request_irq()\n  dma: mv_xor: clear the window override control registers\n  arm: mvebu: fix address decoding armada_cfg_base() function\n  ARM: mvebu: update defconfig with I2C and RTC support\n  ARM: mvebu: Add SATA support for OpenBlocks AX3-4\n  ARM: mvebu: Add support for the RTC in OpenBlocks AX3-4\n  ARM: mvebu: Add support for I2C on OpenBlocks AX3-4\n  ARM: mvebu: Add support for I2C controllers in Armada 370/XP\n  arm: mvebu: Add hardware I/O Coherency support\n  arm: plat-orion: Add coherency attribute when setup mbus target\n  arm: dma mapping: Export a dma ops function arm_dma_set_mask\n  arm: mvebu: Add SMP support for Armada XP\n  arm: mm: Add support for PJ4B cpu and init routines\n  arm: mvebu: Add IPI support via doorbells\n  arm: mvebu: Add initial support for power managmement service unit\n  ...\n"
    },
    {
      "commit": "d9ba573718666df2e7e30d671f81bba39d07f91c",
      "tree": "1991e4d9af59b6c96f9ec94f6747982ed12a6626",
      "parents": [
        "30a6998ef4474b18d81d8c459f2cbd9e49ff0736"
      ],
      "author": {
        "name": "Tony Lindgren",
        "email": "tony@atomide.com",
        "time": "Fri Dec 14 09:09:11 2012 -0800"
      },
      "committer": {
        "name": "Tony Lindgren",
        "email": "tony@atomide.com",
        "time": "Fri Dec 14 14:50:09 2012 -0800"
      },
      "message": "ARM: OMAP: Move plat/omap-serial.h to include/linux/platform_data/serial-omap.h\n\nWe need to move this file to allow ARM multiplatform configurations\nto build for omap2+. This can now be done as this file now only\ncontains platform_data.\n\ncc: Russell King \u003clinux@arm.linux.org.uk\u003e\ncc: Alan Cox \u003calan@linux.intel.com\u003e\ncc: Greg Kroah-Hartman \u003cgregkh@linuxfoundation.org\u003e\ncc: Govindraj.R \u003cgovindraj.raja@ti.com\u003e\ncc: Kevin Hilman \u003ckhilman@ti.com\u003e\ncc: linux-serial@vger.kernel.org\nReviewed-by: Felipe Balbi \u003cbalbi@ti.com\u003e\nSigned-off-by: Tony Lindgren \u003ctony@atomide.com\u003e\n"
    },
    {
      "commit": "0beb58783f2168354e2b5297af45fc7db70adf12",
      "tree": "4debaf4f276990adf1892b7efe57edd344367464",
      "parents": [
        "6a57d104c8cb5b6adad6784b4ce6e2f7f9961a3a",
        "eabc5fa51c1fae4b66cf883e3a3c2b3ca794494c"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Dec 14 14:42:53 2012 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Dec 14 14:42:53 2012 -0800"
      },
      "message": "Merge tag \u0027dt2\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc\n\nPull ARM SoC device-tree updates, take 2, from Olof Johansson:\n \"This branch contains device-tree updates for the SPEAr platform.  They\n  had dependencies on earlier branches from this merge window, which is\n  why they were broken out in a separate branch.\"\n\n* tag \u0027dt2\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc:\n  ARM: SPEAr3xx: Shirq: Move shirq controller out of plat/\n  ARM: SPEAr320: DT: Add SPEAr 320 HMI board support\n  ARM: SPEAr3xx: DT: add shirq node for interrupt multiplexor\n  ARM: SPEAr3xx: shirq: simplify and move the shared irq multiplexor to DT\n  ARM: SPEAr1310: Fix AUXDATA for compact flash controller\n  ARM: SPEAr13xx: Remove fields not required for ssp controller\n  ARM: SPEAr1310: Move 1310 specific misc register into machine specific files\n  ARM: SPEAr: DT: Update device nodes\n  ARM: SPEAr: DT: add uart state to fix warning\n  ARM: SPEAr: DT: Modify DT bindings for STMMAC\n  ARM: SPEAr: DT: Fix existing DT support\n  ARM: SPEAr: DT: Update partition info for MTD devices\n  ARM: SPEAr: DT: Update pinctrl list\n  ARM: SPEAr13xx: DT: Add spics gpio controller nodes\n"
    },
    {
      "commit": "cebfa85eb86d92bf85d3b041c6b044184517a988",
      "tree": "be0a374556fe335ce96dfdb296c89537750d5868",
      "parents": [
        "d42b3a2906a10b732ea7d7f849d49be79d242ef0",
        "241738bd51cb0efe58e6c570223153e970afe3ae"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Dec 14 14:27:45 2012 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Dec 14 14:27:45 2012 -0800"
      },
      "message": "Merge branch \u0027upstream\u0027 of git://git.linux-mips.org/pub/scm/ralf/upstream-linus\n\nPull MIPS updates from Ralf Baechle:\n \"The MIPS bits for 3.8.  This also includes a bunch fixes that were\n  sitting in the linux-mips.org git tree for a long time.  This pull\n  request contains updates to several OCTEON drivers and the board\n  support code for BCM47XX, BCM63XX, XLP, XLR, XLS, lantiq, Loongson1B,\n  updates to the SSB bus support, MIPS kexec code and adds support for\n  kdump.\n\n  When pulling this, there are two expected merge conflicts in\n  include/linux/bcma/bcma_driver_chipcommon.h which are trivial to\n  resolve, just remove the conflict markers and keep both alternatives.\"\n\n* \u0027upstream\u0027 of git://git.linux-mips.org/pub/scm/ralf/upstream-linus: (90 commits)\n  MIPS: PMC-Sierra Yosemite: Remove support.\n  VIDEO: Newport Fix console crashes\n  MIPS: wrppmc: Fix build of PCI code.\n  MIPS: IP22/IP28: Fix build of EISA code.\n  MIPS: RB532: Fix build of prom code.\n  MIPS: PowerTV: Fix build.\n  MIPS: IP27: Correct fucked grammar in ops-bridge.c\n  MIPS: Highmem: Fix build error if CONFIG_DEBUG_HIGHMEM is disabled\n  MIPS: Fix potencial corruption\n  MIPS: Fix for warning from FPU emulation code\n  MIPS: Handle COP3 Unusable exception as COP1X for FP emulation\n  MIPS: Fix poweroff failure when HOTPLUG_CPU configured.\n  MIPS: MT: Fix build with CONFIG_UIDGID_STRICT_TYPE_CHECKS\u003dy\n  MIPS: Remove unused smvp.h\n  MIPS/EDAC: Improve OCTEON EDAC support.\n  MIPS: OCTEON: Add definitions for OCTEON memory contoller registers.\n  MIPS: OCTEON: Add OCTEON family definitions to octeon-model.h\n  ata: pata_octeon_cf: Use correct byte order for DMA in when built little-endian.\n  MIPS/OCTEON/ata: Convert pata_octeon_cf.c to use device tree.\n  MIPS: Remove usage of CEVT_R4K_LIB config option.\n  ...\n"
    },
    {
      "commit": "63b68901dfd590cc13d4fe5c08dec2ca75b3c4aa",
      "tree": "4c8ffc54ed21762cf0fee494918107a12fb2516f",
      "parents": [
        "657b9deeed33cfb6f7171361accc6982727d2e0b"
      ],
      "author": {
        "name": "Roger Quadros",
        "email": "rogerq@ti.com",
        "time": "Fri Dec 14 09:09:11 2012 -0800"
      },
      "committer": {
        "name": "Tony Lindgren",
        "email": "tony@atomide.com",
        "time": "Fri Dec 14 11:48:06 2012 -0800"
      },
      "message": "mfd: omap-usb-host: get rid of cpu_is_omap..() macros\n\nInstead of using cpu_is_omap..() macros in the device driver we\nrely on information provided in the platform data.\n\nThe only information we need is whether the USB Host module has\na single ULPI bypass control bit for all ports or individual bypass\ncontrol bits for each port. OMAP3 REV2.1 and earlier have the former.\n\nSigned-off-by: Roger Quadros \u003crogerq@ti.com\u003e\nAcked-by: Samuel Ortiz \u003csameo@linux.intel.com\u003e\n[tony@atomide.com: updated to remove plat/cpu.h]\nSigned-off-by: Tony Lindgren \u003ctony@atomide.com\u003e\n"
    },
    {
      "commit": "8dd2cb7e880d2f77fba53b523c99133ad5054cfd",
      "tree": "ea51e89f8c8bf9ca8e888d68ecf6732a52e8e99d",
      "parents": [
        "75274551c81796b636c5acb0c2597dec7ec2e6c4"
      ],
      "author": {
        "name": "Shaohua Li",
        "email": "shli@kernel.org",
        "time": "Fri Dec 14 11:15:36 2012 +0800"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "axboe@kernel.dk",
        "time": "Fri Dec 14 20:46:04 2012 +0100"
      },
      "message": "block: discard granularity might not be power of 2\n\nIn MD raid case, discard granularity might not be power of 2, for example, a\n4-disk raid5 has 3*chunk_size discard granularity. Correct the calculation for\nsuch cases.\n\nReported-by: Neil Brown \u003cneilb@suse.de\u003e\nSigned-off-by: Shaohua Li \u003cshli@fusionio.com\u003e\nSigned-off-by: Jens Axboe \u003caxboe@kernel.dk\u003e\n"
    },
    {
      "commit": "d42b3a2906a10b732ea7d7f849d49be79d242ef0",
      "tree": "1f4f2387bf53f8015aa87eb9c05ba8316cb5ed50",
      "parents": [
        "18dd0bf22b6f0c1bd5e4e813a42245ed86ec57b6",
        "e83af1f18c78c7b6aa720beecc927ecc8afd3647"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Dec 14 10:08:40 2012 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Dec 14 10:08:40 2012 -0800"
      },
      "message": "Merge branch \u0027core-efi-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip\n\nPull x86 EFI update from Peter Anvin:\n \"EFI tree, from Matt Fleming.  Most of the patches are the new efivarfs\n  filesystem by Matt Garrett \u0026 co.  The balance are support for EFI\n  wallclock in the absence of a hardware-specific driver, and various\n  fixes and cleanups.\"\n\n* \u0027core-efi-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip: (24 commits)\n  efivarfs: Make efivarfs_fill_super() static\n  x86, efi: Check table header length in efi_bgrt_init()\n  efivarfs: Use query_variable_info() to limit kmalloc()\n  efivarfs: Fix return value of efivarfs_file_write()\n  efivarfs: Return a consistent error when efivarfs_get_inode() fails\n  efivarfs: Make \u0027datasize\u0027 unsigned long\n  efivarfs: Add unique magic number\n  efivarfs: Replace magic number with sizeof(attributes)\n  efivarfs: Return an error if we fail to read a variable\n  efi: Clarify GUID length calculations\n  efivarfs: Implement exclusive access for {get,set}_variable\n  efivarfs: efivarfs_fill_super() ensure we clean up correctly on error\n  efivarfs: efivarfs_fill_super() ensure we free our temporary name\n  efivarfs: efivarfs_fill_super() fix inode reference counts\n  efivarfs: efivarfs_create() ensure we drop our reference on inode on error\n  efivarfs: efivarfs_file_read ensure we free data in error paths\n  x86-64/efi: Use EFI to deal with platform wall clock (again)\n  x86/kernel: remove tboot 1:1 page table creation code\n  x86, efi: 1:1 pagetable mapping for virtual EFI calls\n  x86, mm: Include the entire kernel memory map in trampoline_pgd\n  ...\n"
    },
    {
      "commit": "18dd0bf22b6f0c1bd5e4e813a42245ed86ec57b6",
      "tree": "a4794b6041b44fa94f5d9438cdb5bbfc58b35f05",
      "parents": [
        "2d9c8b5d6a5f5f7a6111cc68a050b5b44729376b",
        "385ddeac7ed99cf7dc62d76274d55fbd7cae1b5a"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Dec 14 10:03:23 2012 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Dec 14 10:03:23 2012 -0800"
      },
      "message": "Merge branch \u0027x86-acpi-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip\n\nPull x86 ACPI update from Peter Anvin:\n \"This is a patchset which didn\u0027t make the last merge window.  It adds a\n  debugging capability to feed ACPI tables via the initramfs.\n\n  On a grander scope, it formalizes using the initramfs protocol for\n  feeding arbitrary blobs which need to be accessed early to the kernel:\n  they are fed first in the initramfs blob (lots of bootloaders can\n  concatenate this at boot time, others can use a single file) in an\n  uncompressed cpio archive using filenames starting with \"kernel/\".\n\n  The ACPI maintainers requested that this patchset be fed via the x86\n  tree rather than the ACPI tree as the footprint in the general x86\n  code is much bigger than in the ACPI code proper.\"\n\n* \u0027x86-acpi-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:\n  X86 ACPI: Use #ifdef not #if for CONFIG_X86 check\n  ACPI: Fix build when disabled\n  ACPI: Document ACPI table overriding via initrd\n  ACPI: Create acpi_table_taint() function to avoid code duplication\n  ACPI: Implement physical address table override\n  ACPI: Store valid ACPI tables passed via early initrd in reserved memblock areas\n  x86, acpi: Introduce x86 arch specific arch_reserve_mem_area() for e820 handling\n  lib: Add early cpio decoder\n"
    },
    {
      "commit": "2d9c8b5d6a5f5f7a6111cc68a050b5b44729376b",
      "tree": "9382e643df9d4115637ca320822702bb06130c1f",
      "parents": [
        "17bc14b767cf0692420c43dbe5310ae98a5a7836",
        "003db633d6f2d3649ea18652a3c55ad17d4f0e47"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Dec 14 09:59:59 2012 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Dec 14 09:59:59 2012 -0800"
      },
      "message": "Merge branch \u0027x86-ras-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip\n\nPull x86 RAS update from Ingo Molnar:\n \"Rework all config variables used throughout the MCA code and collect\n  them together into a mca_config struct.  This keeps them tightly and\n  neatly packed together instead of spilled all over the place.\n\n  Then, convert those which are used as booleans into real booleans and\n  save some space.  These bits are exposed via\n     /sys/devices/system/machinecheck/machinecheck*/\"\n\n* \u0027x86-ras-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:\n  x86, MCA: Finish mca_config conversion\n  x86, MCA: Convert the next three variables batch\n  x86, MCA: Convert rip_msr, mce_bootlog, monarch_timeout\n  x86, MCA: Convert dont_log_ce, banks and tolerant\n  drivers/base: Add a DEVICE_BOOL_ATTR macro\n"
    },
    {
      "commit": "8349e5aeaadd160b7cce554a62a05be4b2d894aa",
      "tree": "63025f59280dcf5276e9b551391025481f59ac84",
      "parents": [
        "84043ac26ed120826db8e6198531da888c6e57b0"
      ],
      "author": {
        "name": "Jeff Garzik",
        "email": "jeff@garzik.org",
        "time": "Fri Dec 14 09:34:01 2012 -0500"
      },
      "committer": {
        "name": "Jeff Garzik",
        "email": "jgarzik@redhat.com",
        "time": "Fri Dec 14 09:34:01 2012 -0500"
      },
      "message": "Revert \"libata: check SATA_SETTINGS log with HW Feature Ctrl\"\n\nThis reverts commit de90cd71f68e947d3bd6c3f2ef5731ead010a768.\n\nShane Huang writes:\n\n  Please suspend this patch because I just received two new\n  DevSlp drives but found word 78 bit 5 is _not_ set.\n\n  I\u0027m checking with the drive vendor whether he gave me\n  the wrong information. If bit 5 is not the necessary and\n  sufficient condition, I will implement another patch to\n  replace ata_device-\u003esata_settings into -\u003edevslp_timing.\n\nSigned-off-by: Jeff Garzik \u003cjgarzik@redhat.com\u003e\n"
    },
    {
      "commit": "7313264b899bbf3988841296265a6e0e8a7b6521",
      "tree": "59b5069980434945394152e94eeaef2b32cf4e72",
      "parents": [
        "d8c532c40721f7507896d202b8cae3b3642d2b0d",
        "76d8a23b127020472207b281427d3e9f4f1227e4"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Dec 13 19:26:04 2012 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Dec 13 19:26:04 2012 -0800"
      },
      "message": "Merge tag \u0027for-v3.8-merged\u0027 of git://git.infradead.org/battery-2.6\n\nPull battery subsystem updates from Anton Vorontsov:\n \"Highlights:\n\n   - Two new drivers from Pali Rohár and N900 hackers: rx51_battery and\n     bq2415x_charger.  The drivers are a part of a solution to replace\n     the proprietary Nokia BME stack\n\n   - Power supply core now registers devices with a thermal cooling\n     subsystem, so we can now automatically throttle charging.  Thanks\n     to Ramakrishna Pallala!\n\n   - Device tree support for ab8500 and max8925_power drivers\n\n   - Random fixups and enhancements for a bunch of drivers.\"\n\n* tag \u0027for-v3.8-merged\u0027 of git://git.infradead.org/battery-2.6: (22 commits)\n  max8925_power: Add support for device-tree initialization\n  ab8500: Add devicetree support for chargalg\n  ab8500: Add devicetree support for charger\n  ab8500: Add devicetree support for btemp\n  ab8500: Add devicetree support for fuelgauge\n  twl4030_charger: Change TWL4030_MODULE_* ids to TWL_MODULE_*\n  jz4740-battery: Use devm_request_and_ioremap\n  jz4740-battery: Use devm_kzalloc\n  bq27x00_battery: Fixup nominal available capacity reporting\n  bq2415x_charger: Fix style issues\n  bq2415x_charger: Add Kconfig/Makefile entries\n  power_supply: Add bq2415x charger driver\n  power_supply: Add new Nokia RX-51 (N900) power supply battery driver\n  max17042_battery: Fix missing verify_model_lock() return value check\n  ds2782_battery: Fix signedness bug in ds278x_read_reg16()\n  lp8788-charger: Fix ADC channel names\n  lp8788-charger: Fix wrong ADC conversion\n  lp8788-charger: Use consumer device name on setting IIO channels\n  power_supply: Register power supply for thermal cooling device\n  power_supply: Add support for CHARGE_CONTROL_* attributes\n  ...\n"
    },
    {
      "commit": "d8c532c40721f7507896d202b8cae3b3642d2b0d",
      "tree": "42b1ce76671eb85324281ed93491432f4523f983",
      "parents": [
        "e777d192ffb9f2929d547a2f8a5f65b7db7a9552",
        "77c53d0b56264a8fc5844e087ad15fffe20c299d"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Dec 13 19:22:22 2012 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Dec 13 19:22:22 2012 -0800"
      },
      "message": "Merge branch \u0027v4l_for_linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/mchehab/linux-media\n\nPull media updates from Mauro Carvalho Chehab:\n\n - Missing MAINTAINERS entries were added for several drivers\n\n - Adds V4L2 support for DMABUF handling, allowing zero-copy buffer\n   sharing between V4L2 devices and GPU\n\n - Got rid of all warnings when compiling with W\u003d1 on x86\n\n - Add a new driver for Exynos hardware (s3c-camif)\n\n - Several bug fixes, cleanups and driver improvements\n\n* \u0027v4l_for_linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/mchehab/linux-media: (243 commits)\n  [media] omap3isp: Replace cpu_is_omap3630() with ISP revision check\n  [media] omap3isp: Prepare/unprepare clocks before/after enable/disable\n  [media] omap3isp: preview: Add support for 8-bit formats at the sink pad\n  [media] omap3isp: Replace printk with dev_*\n  [media] omap3isp: Find source pad from external entity\n  [media] omap3isp: Configure CSI-2 phy based on platform data\n  [media] omap3isp: Add PHY routing configuration\n  [media] omap3isp: Add CSI configuration registers from control block to ISP resources\n  [media] omap3isp: Remove unneeded module memory address definitions\n  [media] omap3isp: Use monotonic timestamps for statistics buffers\n  [media] uvcvideo: Fix control value clamping for unsigned integer controls\n  [media] uvcvideo: Mark first output terminal as default video node\n  [media] uvcvideo: Add VIDIOC_[GS]_PRIORITY support\n  [media] uvcvideo: Return -ENOTTY for unsupported ioctls\n  [media] uvcvideo: Set device_caps in VIDIOC_QUERYCAP\n  [media] uvcvideo: Don\u0027t fail when an unsupported format is requested\n  [media] uvcvideo: Return -EACCES when trying to access a read/write-only control\n  [media] uvcvideo: Set error_idx properly for extended controls API failures\n  [media] rtl28xxu: add NOXON DAB/DAB+ USB dongle rev 2\n  [media] fc2580: write some registers conditionally\n  ...\n"
    },
    {
      "commit": "e777d192ffb9f2929d547a2f8a5f65b7db7a9552",
      "tree": "c9a82698ae66c0465aeb07908c9063d8c098da27",
      "parents": [
        "f132c54e3ab25b305a1e368ad413a417052c966e",
        "f92363d12359498f9a9960511de1a550f0ec41c2"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Dec 13 19:20:31 2012 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Dec 13 19:20:31 2012 -0800"
      },
      "message": "Merge tag \u0027scsi-misc\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/jejb/scsi\n\nPull first round of SCSI updates from James Bottomley:\n \"This patch set includes two large new drivers: mpt3sas (for the next\n  gen fusion SAS hardware) and csiostor a FCoE offload driver for the\n  Chelsio converged network cards (this includes some net changes which\n  I\u0027ve OK\u0027d with DaveM).\n\n  The rest of the patch is driver updates (qla2xxx, lpfc, hptiop,\n  be2iscsi) plus a few assorted updates and bug fixes.\n\n  We also have a Power Management rework in the Upper Layer Drivers\n  preparatory to doing ACPI zero power optical devices, but the actual\n  enabler is still being worked on.\n\n  Signed-off-by: James Bottomley \u003cJBottomley@Parallels.com\u003e\"\n\n* tag \u0027scsi-misc\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/jejb/scsi: (72 commits)\n  [SCSI] mpt3sas: add new driver supporting 12GB SAS\n  [SCSI] scsi_transport_sas: add 12GB definitions for mpt3sas\n  [SCSI] miscdevice: Adding support for MPT3SAS_MINOR(222)\n  [SCSI] csiostor: remove unneeded memset()\n  [SCSI] csiostor: Fix sparse warnings.\n  [SCSI] qla2xxx: Display that driver is operating in legacy interrupt mode.\n  [SCSI] qla2xxx: Dont clear drv active on iospace config failure.\n  [SCSI] qla2xxx: Fix typo in qla2xxx driver.\n  [SCSI] qla2xxx: Update ql2xextended_error_logging parameter description with new option.\n  [SCSI] qla2xxx: Parameterize the link speed of hba rather than fcport.\n  [SCSI] qla2xxx: Add 16Gb/s case to get port speed capability.\n  [SCSI] qla2xxx: Move marking fcport online ahead of setting iiDMA speed.\n  [SCSI] qla2xxx: Add acquiring of risc semaphore before doing ISP reset.\n  [SCSI] qla2xxx: Ignore driver ack bit if corresponding presence bit is not set.\n  [SCSI] qla2xxx: Fix typo in qla83xx_fw_dump function.\n  [SCSI] qla2xxx: Add Gen3 PCIe speed 8GT/s to the log message.\n  [SCSI] qla2xxx: Use correct Request-Q-Out register during bidirectional request processing\n  [SCSI] qla2xxx: Move noisy Start scsi failed messages to verbose logging level.\n  [SCSI] qla2xxx: Fix coccinelle warnings in qla2x00_relogin.\n  [SCSI] qla2xxx: No fcport FC-4 type assignment in GA_NXT response.\n  ...\n"
    }
  ],
  "next": "f132c54e3ab25b305a1e368ad413a417052c966e"
}
