)]}'
{
  "log": [
    {
      "commit": "238ccbb050a243e935bb3fc679c2e4bbff7004aa",
      "tree": "3381b895861f625b1524acfd32d4a90eb79108bd",
      "parents": [
        "c5113e3d66d7c7140fe854c7638a27eb3a23fd7d",
        "1d9f26262aef6d63ff65eba0fd5f1583f342b69b"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Dec 16 10:31:44 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Dec 16 10:31:44 2009 -0800"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/dtor/input\n\n* \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/dtor/input: (22 commits)\n  Input: ALPS - add interleaved protocol support (Dell E6x00 series)\n  Input: keyboard - don\u0027t override beep with a bell\n  Input: altera_ps2 - fix test of unsigned in altera_ps2_probe()\n  Input: add mc13783 touchscreen driver\n  Input: ep93xx_keypad - update driver to new core support\n  Input: wacom - separate pen from express keys on Graphire\n  Input: wacom - add defines for data packet report IDs\n  Input: wacom - add support for new LCD tablets\n  Input: wacom - add defines for packet lengths of various devices\n  Input: wacom - ensure the device is initialized properly upon resume\n  Input: at32psif - do not sleep in atomic context\n  Input: i8042 - add Gigabyte M1022M to the noloop list\n  Input: i8042 - allow installing platform filters for incoming data\n  Input: i8042 - fix locking in interrupt routine\n  Input: ALPS - do not set REL_X/REL_Y capabilities on the touchpad\n  Input: document use of input_event() function\n  Input: sa1111ps2 - annotate probe() and remove() methods\n  Input: ambakmi - annotate probe() and remove() methods\n  Input: gscps2 - fix probe() and remove() annotations\n  Input: altera_ps2 - add annotations to probe and remove methods\n  ...\n"
    },
    {
      "commit": "c5113e3d66d7c7140fe854c7638a27eb3a23fd7d",
      "tree": "9247edfcfa87132e15a277d6f2359b303c24da29",
      "parents": [
        "9b2831704e9250269032e3b8c2ffdfca09fd2851",
        "d785d78bbdb53580b12c40e820af5a3281ce2fc8"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Dec 16 10:30:17 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Dec 16 10:30:17 2009 -0800"
      },
      "message": "Merge branch \u0027drm-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/airlied/drm-2.6\n\n* \u0027drm-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/airlied/drm-2.6:\n  drm/radeon/kms: fix r100-\u003er500 CS checker for compressed textures. (v2)\n  drm/radeon/kms: allow for texture tiling\n  drm/radeon/kms: init pm on all chipsets\n  drm/radeon/kms: HDMI support for R600 KMS\n  drm/radeon/kms: make sure mc is initialized before mapping blit bo\n  drm/radeon/kms: Return to userspace on ERESTARTSYS\n  drm/radeon/gem: don\u0027t leak a gem object if reserve fails on get tiling (v2)\n  drm/radeon/kms: don\u0027t report allocate failure on ERESTARTSYS\n  drm/radeon/kms: Check if bo we got from ttm are radeon object or not\n  drm/radeon/kms: If no placement is supplied fallback to system\n  drm/ttm: Fix memory type manager debug information printing\n  drm/ttm: Fix printk format \u0026 compute bo-\u003emem.size at bo initialization\n  drm/ttm: Fix potential ttm_mem_evict_first races.\n  drm/ttm: Delayed delete fixes.\n  drm/ttm: fix two bugs in new placement routines.\n  drm/ttm: fix incorrect logic in ttm_bo_io path\n  drm/nouveau: remove use of -ERESTART\n  nouveau: Fix endianness with new context program loader\n  drm/nouveau: fix build with CONFIG_AGP\u003dn\n  drm/nouveau: fix ch7006 build\n"
    },
    {
      "commit": "9b2831704e9250269032e3b8c2ffdfca09fd2851",
      "tree": "f0707f9cb808371e185f18268a14213a2e4fc392",
      "parents": [
        "337e4a1ab4d736b8c39a4c3a233ac21f1a6c036f",
        "204fc390d86f7087201ec4a146bc07483186c35b"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Dec 16 10:29:52 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Dec 16 10:29:52 2009 -0800"
      },
      "message": "Merge git://git.kernel.org/pub/scm/linux/kernel/git/lethal/sh-2.6\n\n* git://git.kernel.org/pub/scm/linux/kernel/git/lethal/sh-2.6: (33 commits)\n  sh: Fix test of unsigned in se7722_irq_demux()\n  sh: mach-ecovec24: Add FSI sound support\n  sh: mach-ecovec24: Add mt9t112 camera support\n  sh: mach-ecovec24: Add tw9910 support\n  sh: MSIOF/mmc_spi platform data for the Ecovec24 board\n  sh: ms7724se: Add ak4642 support\n  sh: Fix up FPU build for SH5\n  sh: Remove old early serial console code V2\n  sh: sh5 scif pdata (sh5-101/sh5-103)\n  sh: sh4a scif pdata (sh7757/sh7763/sh7770/sh7780/sh7785/sh7786/x3)\n  sh: sh4a scif pdata (sh7343/sh7366/sh7722/sh7723/sh7724)\n  sh: sh4 scif pdata (sh7750/sh7760/sh4-202)\n  sh: sh3 scif pdata (sh7705/sh770x/sh7710/sh7720)\n  sh: sh2a scif pdata (sh7201/sh7203/sh7206/mxg)\n  sh: sh2 scif pdata (sh7616)\n  sh-sci: Extend sh-sci driver with early console V2\n  sh: Stub in P3 ioremap support for nommu parts.\n  sh: wire up vmallocinfo support in ioremap() implementations.\n  sh: Make the unaligned trap handler always obey notification levels.\n  sh: Couple kernel and user write page perm bits for CONFIG_X2TLB\n  ...\n"
    },
    {
      "commit": "337e4a1ab4d736b8c39a4c3a233ac21f1a6c036f",
      "tree": "20c58600b42600b8f62f3cfb63fc62b1a7fbc78c",
      "parents": [
        "7949456b1b96924c2d9ae5aea5fa7d4c81c946ed",
        "681142f9211b23e6aa2984259d38b76d7bdc05a8"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Dec 16 10:29:26 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Dec 16 10:29:26 2009 -0800"
      },
      "message": "Merge git://git.kernel.org/pub/scm/linux/kernel/git/hirofumi/fatfs-2.6\n\n* git://git.kernel.org/pub/scm/linux/kernel/git/hirofumi/fatfs-2.6:\n  fat: make discard a mount option\n"
    },
    {
      "commit": "7949456b1b96924c2d9ae5aea5fa7d4c81c946ed",
      "tree": "819e64dcd686c8b53c698c164aea96a002e8b5f8",
      "parents": [
        "60d9aa758c00f20ade0cb1951f6a934f628dd2d7",
        "12458ea06efd7b44281e68fe59c950ec7d59c649"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Dec 16 10:28:56 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Dec 16 10:28:56 2009 -0800"
      },
      "message": "Merge branch \u0027next\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/djbw/async_tx\n\n* \u0027next\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/djbw/async_tx:\n  ppc440spe-adma: adds updated ppc440spe adma driver\n  iop-adma.c: use resource_size()\n  dmaengine: clarify the meaning of the DMA_CTRL_ACK flag\n  sh: stylistic improvements for the DMA driver\n  dmaengine: fix dmatest to verify minimum transfer length and test buffer size\n  sh: DMA driver has to specify its alignment requirements\n  Add COH 901 318 DMA block driver v5\n"
    },
    {
      "commit": "60d9aa758c00f20ade0cb1951f6a934f628dd2d7",
      "tree": "e3bdfa4ec0d3f9a29a822810b8b9188c7d613cbd",
      "parents": [
        "b2adf0cbec4cf0934c63f48f893e0cebde380d0c",
        "2e16cfca6e17ae37ae21feca080a6f2eca9087dc"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Dec 16 10:23:43 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Dec 16 10:23:43 2009 -0800"
      },
      "message": "Merge git://git.infradead.org/mtd-2.6\n\n* git://git.infradead.org/mtd-2.6: (90 commits)\n  jffs2: Fix long-standing bug with symlink garbage collection.\n  mtd: OneNAND: Fix test of unsigned in onenand_otp_walk()\n  mtd: cfi_cmdset_0002, fix lock imbalance\n  Revert \"mtd: move mxcnd_remove to .exit.text\"\n  mtd: m25p80: add support for Macronix MX25L4005A\n  kmsg_dump: fix build for CONFIG_PRINTK\u003dn\n  mtd: nandsim: add support for 4KiB pages\n  mtd: mtdoops: refactor as a kmsg_dumper\n  mtd: mtdoops: make record size configurable\n  mtd: mtdoops: limit the maximum mtd partition size\n  mtd: mtdoops: keep track of used/unused pages in an array\n  mtd: mtdoops: several minor cleanups\n  core: Add kernel message dumper to call on oopses and panics\n  mtd: add ARM pismo support\n  mtd: pxa3xx_nand: Fix PIO data transfer\n  mtd: nand: fix multi-chip suspend problem\n  mtd: add support for switching old SST chips into QRY mode\n  mtd: fix M29W800D dev_id and uaddr\n  mtd: don\u0027t use PF_MEMALLOC\n  mtd: Add bad block table overrides to Davinci NAND driver\n  ...\n\nFixed up conflicts (mostly trivial) in\n\tdrivers/mtd/devices/m25p80.c\n\tdrivers/mtd/maps/pcmciamtd.c\n\tdrivers/mtd/nand/pxa3xx_nand.c\n\tkernel/printk.c\n"
    },
    {
      "commit": "b2adf0cbec4cf0934c63f48f893e0cebde380d0c",
      "tree": "f4073c90ec71ebb37a0934dc14b52959ad58bfaa",
      "parents": [
        "a79960e576ebca9dbf24489b562689f2be7e9ff0",
        "d0608b54740c82b08056b7611e38a3fd73be3564"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Dec 16 10:12:07 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Dec 16 10:12:07 2009 -0800"
      },
      "message": "Merge branch \u0027next\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/kyle/parisc-2.6\n\n* \u0027next\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/kyle/parisc-2.6:\n  parisc: Fixup last users of irq_chip-\u003etypename\n  parisc: convert /proc/pdc/{lcd,led} to seq_file\n  parisc: Convert BUG() to use unreachable()\n  parisc: Replace old style lock init in smp.c\n  parisc: use sort() instead of home-made implementation (v2)\n  parisc: add CALLER_ADDR{0-6} macros\n  parisc: remove unused IRQSTAT_SIRQ_PEND and IRQSTAT_SZ defines\n  parisc: remove duplicated #include\n"
    },
    {
      "commit": "a79960e576ebca9dbf24489b562689f2be7e9ff0",
      "tree": "b0748839230c2bba1d49ccdd732608d7d1f334cb",
      "parents": [
        "661e338f728d101b4839b6b157d44cfcb80e3c5e",
        "cd7bcf32d42b15891620b3f1387a00178b54291a"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Dec 16 10:11:38 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Dec 16 10:11:38 2009 -0800"
      },
      "message": "Merge git://git.infradead.org/iommu-2.6\n\n* git://git.infradead.org/iommu-2.6:\n  implement early_io{re,un}map for ia64\n  Revert \"Intel IOMMU: Avoid memory allocation failures in dma map api calls\"\n  intel-iommu: ignore page table validation in pass through mode\n  intel-iommu: Fix oops with intel_iommu\u003digfx_off\n  intel-iommu: Check for an RMRR which ends before it starts.\n  intel-iommu: Apply BIOS sanity checks for interrupt remapping too.\n  intel-iommu: Detect DMAR in hyperspace at probe time.\n  dmar: Fix build failure without NUMA, warn on bogus RHSA tables and don\u0027t abort\n  iommu: Allocate dma-remapping structures using numa locality info\n  intr_remap: Allocate intr-remapping table using numa locality info\n  dmar: Allocate queued invalidation structure using numa locality info\n  dmar: support for parsing Remapping Hardware Static Affinity structure\n"
    },
    {
      "commit": "661e338f728d101b4839b6b157d44cfcb80e3c5e",
      "tree": "5d40053d81777116b7617712b64860eac5642b0e",
      "parents": [
        "6a5df38f5f07981dda5457ec6c05efe1c4200d84",
        "256f7276af20c88b492353710d5d6640b09c3d63"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Dec 16 10:09:43 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Dec 16 10:09:43 2009 -0800"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/bp/bp\n\n* \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/bp/bp:\n  edac, mce, amd: silence GART TLB errors\n  edac, mce: correct corenum reporting\n"
    },
    {
      "commit": "6a5df38f5f07981dda5457ec6c05efe1c4200d84",
      "tree": "d82c3862f7ba719d7723111140a0c89e6387cb19",
      "parents": [
        "9cfc86249f32d984339c6d1f8a1fd1326989b3b8",
        "262ab9ac0daadebcece8e3cbf3ae66ee8774cfd7"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Dec 16 10:09:16 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Dec 16 10:09:16 2009 -0800"
      },
      "message": "Merge branch \u0027for_linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/mchehab/linux-2.6\n\n* \u0027for_linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/mchehab/linux-2.6: (116 commits)\n  V4L/DVB (13698): pms: replace asm/uaccess.h to linux/uaccess.h\n  V4L/DVB (13690): radio/si470x: #include \u003csched.h\u003e\n  V4L/DVB (13688): au8522: modify the attributes of local filter coefficients\n  V4L/DVB (13687): cx231xx: use NULL when pointer is needed\n  V4L/DVB: Davinci VPFE Capture: remove unused #include \u003clinux/version.h\u003e\n  V4L/DVB (13685): Correct code taking the size of a pointer\n  V4L/DVB (13684): Fix some cut-and-paste noise in dib0090.h\n  V4L/DVB (13683): sanio-ms: clean up init, exit and id_table\n  V4L/DVB (13682): dib8000: make some constant static\n  V4L/DVB: lgs8gxx: Use shifts rather than multiply/divide when possible\n  V4L/DVB (13680b): DocBook/media: create links for included sources\n  V4L/DVB (13680a): DocBook/media: copy images after building HTML\n  V4L/DVB (13678): Add support for yet another DvbWorld, TeVii and Prof USB devices\n  V4L/DVB (13676): configurable IRQ mode on NetUP Dual DVB-S2 CI; IRQ from CAM processing (CI interface works faster)\n  V4L/DVB (13674): stv090x: Add DiSEqC envelope mode\n  V4L/DVB (13673): lnbp21: Implement 22 kHz tone control\n  V4L/DVB (13671): sh_mobile_ceu_camera: Remove frame size page alignment\n  V4L/DVB (13670): soc-camera: Add mt9t112 camera driver\n  V4L/DVB (13669): tw9910: Add sync polarity support\n  V4L/DVB (13668): tw9910: remove cropping\n  ...\n"
    },
    {
      "commit": "9cfc86249f32d984339c6d1f8a1fd1326989b3b8",
      "tree": "56428d319483f54949de8d9d0a5b3f715287ed91",
      "parents": [
        "f42647acc4eab1befa9e290691ed7a40f9a7d3cc",
        "243797f59b748f679ab88d456fcc4f92236d724b"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Dec 16 10:06:39 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Dec 16 10:06:39 2009 -0800"
      },
      "message": "Merge branch \u0027akpm\u0027\n\n* akpm: (173 commits)\n  genalloc: use bitmap_find_next_zero_area\n  ia64: use bitmap_find_next_zero_area\n  sparc: use bitmap_find_next_zero_area\n  mlx4: use bitmap_find_next_zero_area\n  isp1362-hcd: use bitmap_find_next_zero_area\n  iommu-helper: use bitmap library\n  bitmap: introduce bitmap_set, bitmap_clear, bitmap_find_next_zero_area\n  qnx4: use hweight8\n  qnx4fs: remove remains of the (defunct) write support\n  resource: constify arg to resource_size() and resource_type()\n  gru: send cross partition interrupts using the gru\n  gru: function to generate chipset IPI values\n  gru: update driver version number\n  gru: improve GRU TLB dropin statistics\n  gru: fix GRU interrupt race at deallocate\n  gru: add hugepage support\n  gru: fix bug in allocation of kernel contexts\n  gru: update GRU structures to match latest hardware spec\n  gru: check for correct GRU chiplet assignment\n  gru: remove stray local_irq_enable\n  ...\n"
    },
    {
      "commit": "256f7276af20c88b492353710d5d6640b09c3d63",
      "tree": "9d2a4a26da9d79b3d19dafa9cf44149a1cee7a28",
      "parents": [
        "35d8069234bacfab608d2d7571c2cb71a23c3fae"
      ],
      "author": {
        "name": "Borislav Petkov",
        "email": "borislav.petkov@amd.com",
        "time": "Tue Dec 15 16:03:53 2009 +0100"
      },
      "committer": {
        "name": "Borislav Petkov",
        "email": "borislav.petkov@amd.com",
        "time": "Wed Dec 16 17:48:39 2009 +0100"
      },
      "message": "edac, mce, amd: silence GART TLB errors\n\nAlthough reporting of benign GART TLB errors is disabled in\n__mcheck_cpu_apply_quirks, those are still being logged, and, as a\nresult, trip up amd64_edac. Pull up reporting check so that machines\nwith loaded edac module bail out early and don\u0027t spit fragments into\ndmesg.\n\nSigned-off-by: Borislav Petkov \u003cborislav.petkov@amd.com\u003e\n"
    },
    {
      "commit": "243797f59b748f679ab88d456fcc4f92236d724b",
      "tree": "d21ffa61ee1a34cf512133fe05940bfbd0e0c163",
      "parents": [
        "81f6527bd322ef1f3a58c2c438b9ded3bd8f606a"
      ],
      "author": {
        "name": "Akinobu Mita",
        "email": "akinobu.mita@gmail.com",
        "time": "Tue Dec 15 16:48:31 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Dec 16 07:20:21 2009 -0800"
      },
      "message": "genalloc: use bitmap_find_next_zero_area\n\nSigned-off-by: Akinobu Mita \u003cakinobu.mita@gmail.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "81f6527bd322ef1f3a58c2c438b9ded3bd8f606a",
      "tree": "0318a64f7545e4f995cbe67b263adf7f4d7bab44",
      "parents": [
        "e756fd8080622998007b592bd33f86cecf56587a"
      ],
      "author": {
        "name": "Akinobu Mita",
        "email": "akinobu.mita@gmail.com",
        "time": "Tue Dec 15 16:48:30 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Dec 16 07:20:21 2009 -0800"
      },
      "message": "ia64: use bitmap_find_next_zero_area\n\nSigned-off-by: Akinobu Mita \u003cakinobu.mita@gmail.com\u003e\nCc: Tony Luck \u003ctony.luck@intel.com\u003e\nCc: Fenghua Yu \u003cfenghua.yu@intel.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "e756fd8080622998007b592bd33f86cecf56587a",
      "tree": "a39e0bea4984e28fedefb196ebaf1a95e89778fc",
      "parents": [
        "43ff8b60853793fb0155b3e465739d2170c3aa2f"
      ],
      "author": {
        "name": "Akinobu Mita",
        "email": "akinobu.mita@gmail.com",
        "time": "Tue Dec 15 16:48:30 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Dec 16 07:20:19 2009 -0800"
      },
      "message": "sparc: use bitmap_find_next_zero_area\n\nSigned-off-by: Akinobu Mita \u003cakinobu.mita@gmail.com\u003e\nAcked-by: \"David S. Miller\" \u003cdavem@davemloft.net\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "43ff8b60853793fb0155b3e465739d2170c3aa2f",
      "tree": "7909da1c5399897c3642e59439e076d8911dddad",
      "parents": [
        "735e1b9aded4934da2c743560acd771ca38e04e6"
      ],
      "author": {
        "name": "Akinobu Mita",
        "email": "akinobu.mita@gmail.com",
        "time": "Tue Dec 15 16:48:29 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Dec 16 07:20:19 2009 -0800"
      },
      "message": "mlx4: use bitmap_find_next_zero_area\n\nSigned-off-by: Akinobu Mita \u003cakinobu.mita@gmail.com\u003e\nReviewed-by: Roland Dreier \u003crolandd@cisco.com\u003e\nCc: Yevgeny Petrilin \u003cyevgenyp@mellanox.co.il\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "735e1b9aded4934da2c743560acd771ca38e04e6",
      "tree": "78f26caaafbf64750e5bedea7acd29c8235088f2",
      "parents": [
        "a66022c457755b5eef61e30866114679c95e1f54"
      ],
      "author": {
        "name": "Akinobu Mita",
        "email": "akinobu.mita@gmail.com",
        "time": "Tue Dec 15 16:48:28 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Dec 16 07:20:18 2009 -0800"
      },
      "message": "isp1362-hcd: use bitmap_find_next_zero_area\n\nSigned-off-by: Akinobu Mita \u003cakinobu.mita@gmail.com\u003e\nCc: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\nCc: Lothar Wassmann \u003cLW@KARO-electronics.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "a66022c457755b5eef61e30866114679c95e1f54",
      "tree": "acf5cbe134398b9541dfa0db267205e6c579cb6b",
      "parents": [
        "c1a2a962a2ad103846e7950b4591471fabecece7"
      ],
      "author": {
        "name": "Akinobu Mita",
        "email": "akinobu.mita@gmail.com",
        "time": "Tue Dec 15 16:48:28 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Dec 16 07:20:18 2009 -0800"
      },
      "message": "iommu-helper: use bitmap library\n\nUse bitmap library and kill some unused iommu helper functions.\n\n1. s/iommu_area_free/bitmap_clear/\n\n2. s/iommu_area_reserve/bitmap_set/\n\n3. Use bitmap_find_next_zero_area instead of find_next_zero_area\n\n  This cannot be simple substitution because find_next_zero_area\n  doesn\u0027t check the last bit of the limit in bitmap\n\n4. Remove iommu_area_free, iommu_area_reserve, and find_next_zero_area\n\nSigned-off-by: Akinobu Mita \u003cakinobu.mita@gmail.com\u003e\nCc: \"David S. Miller\" \u003cdavem@davemloft.net\u003e\nCc: Benjamin Herrenschmidt \u003cbenh@kernel.crashing.org\u003e\nCc: Paul Mackerras \u003cpaulus@samba.org\u003e\nCc: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nCc: Ingo Molnar \u003cmingo@redhat.com\u003e\nCc: \"H. Peter Anvin\" \u003chpa@zytor.com\u003e\nCc: FUJITA Tomonori \u003cfujita.tomonori@lab.ntt.co.jp\u003e\nCc: Joerg Roedel \u003cjoerg.roedel@amd.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "c1a2a962a2ad103846e7950b4591471fabecece7",
      "tree": "9a06ab8d1c65037456bad02c821033197f67f03f",
      "parents": [
        "868d64812ae84e8f094e0bcf95157c7d79d625ec"
      ],
      "author": {
        "name": "Akinobu Mita",
        "email": "akinobu.mita@gmail.com",
        "time": "Tue Dec 15 16:48:25 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Dec 16 07:20:18 2009 -0800"
      },
      "message": "bitmap: introduce bitmap_set, bitmap_clear, bitmap_find_next_zero_area\n\nThis introduces new bitmap functions:\n\nbitmap_set: Set specified bit area\nbitmap_clear: Clear specified bit area\nbitmap_find_next_zero_area: Find free bit area\n\nThese are mostly stolen from iommu helper. The differences are:\n\n- Use find_next_bit instead of doing test_bit for each bit\n\n- Rewrite bitmap_set and bitmap_clear\n\n  Instead of setting or clearing for each bit.\n\n- Check the last bit of the limit\n\n  iommu-helper doesn\u0027t want to find such area\n\n- The return value if there is no zero area\n\n  find_next_zero_area in iommu helper: returns -1\n  bitmap_find_next_zero_area: return \u003e\u003d bitmap size\n\nSigned-off-by: Akinobu Mita \u003cakinobu.mita@gmail.com\u003e\nCc: FUJITA Tomonori \u003cfujita.tomonori@lab.ntt.co.jp\u003e\nCc: \"David S. Miller\" \u003cdavem@davemloft.net\u003e\nCc: Benjamin Herrenschmidt \u003cbenh@kernel.crashing.org\u003e\nCc: Paul Mackerras \u003cpaulus@samba.org\u003e\nCc: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nCc: Ingo Molnar \u003cmingo@redhat.com\u003e\nCc: \"H. Peter Anvin\" \u003chpa@zytor.com\u003e\nCc: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\nCc: Lothar Wassmann \u003cLW@KARO-electronics.de\u003e\nCc: Roland Dreier \u003crolandd@cisco.com\u003e\nCc: Yevgeny Petrilin \u003cyevgenyp@mellanox.co.il\u003e\nCc: Tony Luck \u003ctony.luck@intel.com\u003e\nCc: Fenghua Yu \u003cfenghua.yu@intel.com\u003e\nCc: Joerg Roedel \u003cjoerg.roedel@amd.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "868d64812ae84e8f094e0bcf95157c7d79d625ec",
      "tree": "d4788544d0ea0143022150eb765f52cb2801073d",
      "parents": [
        "ca120b20c32ffabf0e1d4319f65360e920fb4fe2"
      ],
      "author": {
        "name": "Akinobu Mita",
        "email": "akinobu.mita@gmail.com",
        "time": "Tue Dec 15 16:48:24 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Dec 16 07:20:18 2009 -0800"
      },
      "message": "qnx4: use hweight8\n\nUse hweight8 instead of counting for each bit\n\nSigned-off-by: Akinobu Mita \u003cakinobu.mita@gmail.com\u003e\nAcked-by: Anders Larsen \u003cal@alarsen.net\u003e\nCc: Al 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": "ca120b20c32ffabf0e1d4319f65360e920fb4fe2",
      "tree": "914b684ebca4ebce29624c905ab84a307346818a",
      "parents": [
        "f65380c07b64b0e45ad5c7d70ca54a9cde1c00db"
      ],
      "author": {
        "name": "Anders Larsen",
        "email": "al@alarsen.net",
        "time": "Tue Dec 15 16:48:23 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Dec 16 07:20:17 2009 -0800"
      },
      "message": "qnx4fs: remove remains of the (defunct) write support\n\ncommit 945ffe54bbd56ceed62de3b908800fd7c6ffb284 (\"qnx4: remove write support\") removed the (defunct)\nwrite support but missed a chunk of related, dead code.\n\nSigned-off-by: Anders Larsen \u003cal@alarsen.net\u003e\nCc: Jiri Kosina \u003cjkosina@suse.cz\u003e\nAcked-by: Christoph Hellwig \u003chch@lst.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "f65380c07b64b0e45ad5c7d70ca54a9cde1c00db",
      "tree": "f0ea736f2c3b21af00dbc085ea53d47847f9632f",
      "parents": [
        "76148df19cbd5437dc5358408a58c7cc6366ecf4"
      ],
      "author": {
        "name": "Jean Delvare",
        "email": "khali@linux-fr.org",
        "time": "Tue Dec 15 16:48:21 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Dec 16 07:20:17 2009 -0800"
      },
      "message": "resource: constify arg to resource_size() and resource_type()\n\nresource_size() doesn\u0027t change the resource it operates on, so the res\nparameter can be marked const.  Same for resource_type().\n\nSigned-off-by: Jean Delvare \u003ckhali@linux-fr.org\u003e\nReviewed-by: WANG Cong \u003cxiyou.wangcong@gmail.com\u003e\nCc: Greg KH \u003cgreg@kroah.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "76148df19cbd5437dc5358408a58c7cc6366ecf4",
      "tree": "d592f1c21d072d9cefbf18f27081dca05ea655db",
      "parents": [
        "56abcf24ff993291b20efd6e3402cd3d12f5cee2"
      ],
      "author": {
        "name": "Jack Steiner",
        "email": "steiner@sgi.com",
        "time": "Tue Dec 15 16:48:21 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Dec 16 07:20:17 2009 -0800"
      },
      "message": "gru: send cross partition interrupts using the gru\n\nGRU Message queue instructions are used to deliver messages to other SSIs\nwithin the numalink domain.  In most cases, a single GRU mesq instruction\nwill deliver both the message AND an interrupt to notify the other SSI\nthat a messsage is present.  In some cases, however, the interrupt must be\nsent explicitly.\n\nTo improve resilency, the GRU driver should send these explicit interrupts\nusing the GRU to write the remote chipset register.  Current code sends\nthe interrupt using a cpu instruction to write the chipset register.\n\nSigned-off-by: Jack Steiner \u003csteiner@sgi.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "56abcf24ff993291b20efd6e3402cd3d12f5cee2",
      "tree": "14dab85ca1cc5fd1262821893d9bdc3b0812e714",
      "parents": [
        "e5ae6e82bf08bea2a1ae0fcc0d6e1656264c2d23"
      ],
      "author": {
        "name": "Jack Steiner",
        "email": "steiner@sgi.com",
        "time": "Tue Dec 15 16:48:20 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Dec 16 07:20:17 2009 -0800"
      },
      "message": "gru: function to generate chipset IPI values\n\nCreate a function to generate the value that is written to the UV hub MMR\nto cause an IPI interrupt to be sent.  The function will be used in the\nGRU message queue error recovery code that sends IPIs to nodes in remote\npartitions.\n\nSigned-off-by: Jack Steiner \u003csteiner@sgi.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "e5ae6e82bf08bea2a1ae0fcc0d6e1656264c2d23",
      "tree": "671c72dad6b23be4bed4a35779d3d99f08d8a90e",
      "parents": [
        "5958ab88f721d312b531d17705fc3ed54102fa05"
      ],
      "author": {
        "name": "Jack Steiner",
        "email": "steiner@sgi.com",
        "time": "Tue Dec 15 16:48:19 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Dec 16 07:20:17 2009 -0800"
      },
      "message": "gru: update driver version number\n\nUpdate the version number of the GRU driver.\n\nSigned-off-by: Jack Steiner \u003csteiner@sgi.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "5958ab88f721d312b531d17705fc3ed54102fa05",
      "tree": "0fdd2a982c1fa0370d496a25f7b3ef70ccb96bde",
      "parents": [
        "2ce4d4c937ce4c14704f02ae60e2e07e3906c68a"
      ],
      "author": {
        "name": "Jack Steiner",
        "email": "steiner@sgi.com",
        "time": "Tue Dec 15 16:48:18 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Dec 16 07:20:17 2009 -0800"
      },
      "message": "gru: improve GRU TLB dropin statistics\n\nUpdate the TLB dropin statistics kept for each GRU context.  Count TLB\ndropins separate from the misses - some misses do not result in a TLB\ndropin.  Some of the diagnostics need both counts.\n\nSigned-off-by: Jack Steiner \u003csteiner@sgi.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "2ce4d4c937ce4c14704f02ae60e2e07e3906c68a",
      "tree": "bf6b6f32910e8550bd30dd338172a46e35d6d81e",
      "parents": [
        "74ccd09526a0254c362adcc6c862354d724aa803"
      ],
      "author": {
        "name": "Jack Steiner",
        "email": "steiner@sgi.com",
        "time": "Tue Dec 15 16:48:18 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Dec 16 07:20:17 2009 -0800"
      },
      "message": "gru: fix GRU interrupt race at deallocate\n\nFix a race where an interrupt could be received for a GRU context that has\nbeen deallocated.\n\nSigned-off-by: Jack Steiner \u003csteiner@sgi.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "74ccd09526a0254c362adcc6c862354d724aa803",
      "tree": "a68e4a3be9d83eb7e6bb47eba131e73bd06684d8",
      "parents": [
        "0cd2b0813aac660f5f7a6574083157a70c152dd5"
      ],
      "author": {
        "name": "Jack Steiner",
        "email": "steiner@sgi.com",
        "time": "Tue Dec 15 16:48:17 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Dec 16 07:20:17 2009 -0800"
      },
      "message": "gru: add hugepage support\n\nAdd support for hugepages. Easier than I originally thought.\n\nSigned-off-by: Jack Steiner \u003csteiner@sgi.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "0cd2b0813aac660f5f7a6574083157a70c152dd5",
      "tree": "906bf285391bf3d9ad72f9c94838fbb067453ec4",
      "parents": [
        "5658366ab55cccab24b4799b3ff8e94bdc1cc529"
      ],
      "author": {
        "name": "Jack Steiner",
        "email": "steiner@sgi.com",
        "time": "Tue Dec 15 16:48:17 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Dec 16 07:20:16 2009 -0800"
      },
      "message": "gru: fix bug in allocation of kernel contexts\n\nFix a bug in the assignment of GRU contexts used for kernel functions.  If\na sleep occurs on the wait for a semaphore, the thread could switch cpus\nand allocate resources on the wrong blade.\n\nSigned-off-by: Jack Steiner \u003csteiner@sgi.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "5658366ab55cccab24b4799b3ff8e94bdc1cc529",
      "tree": "3b0b6b413983f17debaa71a56eb587b1a1a399e6",
      "parents": [
        "41314790883c8ad2dfb2cb295eb8177069627044"
      ],
      "author": {
        "name": "Jack Steiner",
        "email": "steiner@sgi.com",
        "time": "Tue Dec 15 16:48:16 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Dec 16 07:20:16 2009 -0800"
      },
      "message": "gru: update GRU structures to match latest hardware spec\n\nAdd a few new definitions for chipset MMR field names.  This matches rev\n0.7 of the hardware spec.\n\nSigned-off-by: Jack Steiner \u003csteiner@sgi.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "41314790883c8ad2dfb2cb295eb8177069627044",
      "tree": "170f974239c37cbb63db50bb8079a808f970c3f8",
      "parents": [
        "54465dcc035b2b55aa4d8130fa6d9410437f7d8d"
      ],
      "author": {
        "name": "Jack Steiner",
        "email": "steiner@sgi.com",
        "time": "Tue Dec 15 16:48:15 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Dec 16 07:20:16 2009 -0800"
      },
      "message": "gru: check for correct GRU chiplet assignment\n\nSimplify the code that checks for correct assignment of GRU contexts to\nusers.\n\nSigned-off-by: Jack Steiner \u003csteiner@sgi.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "54465dcc035b2b55aa4d8130fa6d9410437f7d8d",
      "tree": "464578780c31e2a7256c1bcd2a99776e7b2d0069",
      "parents": [
        "9c13cb331f7054d537d4caa094d3ebbba544833a"
      ],
      "author": {
        "name": "Jack Steiner",
        "email": "steiner@sgi.com",
        "time": "Tue Dec 15 16:48:15 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Dec 16 07:20:16 2009 -0800"
      },
      "message": "gru: remove stray local_irq_enable\n\nRemove a stray local_irq_enable() in the GRU TLB dropin code.\n\nSigned-off-by: Jack Steiner \u003csteiner@sgi.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "9c13cb331f7054d537d4caa094d3ebbba544833a",
      "tree": "7703c6eaa59065656eb7bede772b0dfd84cebd0d",
      "parents": [
        "1848a710287b33a92c3c5b2f4c3ae201a879eb7e"
      ],
      "author": {
        "name": "Jack Steiner",
        "email": "steiner@sgi.com",
        "time": "Tue Dec 15 16:48:14 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Dec 16 07:20:16 2009 -0800"
      },
      "message": "gru: add symbolic names for GRU error code\n\nUse symbol names instead of numbers for error return values for the vtop\nfunctions.\n\nSigned-off-by: Jack Steiner \u003csteiner@sgi.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "1848a710287b33a92c3c5b2f4c3ae201a879eb7e",
      "tree": "dec401fd0857ee69b34d88cb19ac1f9a0307c1ea",
      "parents": [
        "c550222f64265c9384c45d7f691445386025a82b"
      ],
      "author": {
        "name": "Jack Steiner",
        "email": "steiner@sgi.com",
        "time": "Tue Dec 15 16:48:14 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Dec 16 07:20:16 2009 -0800"
      },
      "message": "gru: fix bug in exception handling\n\nFix a GRU driver bug converting a CBR address to the context that contains\nthe CBR.  The conversion is rarely done so performance does not matter.\n\nSigned-off-by: Jack Steiner \u003csteiner@sgi.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "c550222f64265c9384c45d7f691445386025a82b",
      "tree": "562d45bf656c8bafc9c0dd5b3897dba5da6ae9a3",
      "parents": [
        "57ebb0342c12f00e7a6d15ba59bb6c3ee501c3af"
      ],
      "author": {
        "name": "Jack Steiner",
        "email": "steiner@sgi.com",
        "time": "Tue Dec 15 16:48:13 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Dec 16 07:20:16 2009 -0800"
      },
      "message": "gru: preload tlb for bcopy instructions\n\nAdd anticipatory TLB dropins for GRU TLB misses that occur on BCOPY\ninstructions that copy large amounts of data.\n\nSigned-off-by: Jack Steiner \u003csteiner@sgi.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "57ebb0342c12f00e7a6d15ba59bb6c3ee501c3af",
      "tree": "a81dd6557fea6e79d6ff277b0477126817a05dcd",
      "parents": [
        "563447d7eb04c9b382f90a132be126a21a635647"
      ],
      "author": {
        "name": "Jack Steiner",
        "email": "steiner@sgi.com",
        "time": "Tue Dec 15 16:48:12 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Dec 16 07:20:16 2009 -0800"
      },
      "message": "gru: expicitly set instruction status to active\n\nExplicitly set GRU instructions to \"ACTIVE\".  This eliminates the need for\nbarriers that would have been necessary to prevent reading the instruction\n\"status\" field before the GRU had actually started the instruction.\n\nSigned-off-by: Jack Steiner \u003csteiner@sgi.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "563447d7eb04c9b382f90a132be126a21a635647",
      "tree": "66db9c281ed1b64fcdceab1beb34350339bf306c",
      "parents": [
        "4107e1d38a23028c2a3bc23dd948265dbe6becba"
      ],
      "author": {
        "name": "Jack Steiner",
        "email": "steiner@sgi.com",
        "time": "Tue Dec 15 16:48:12 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Dec 16 07:20:16 2009 -0800"
      },
      "message": "gru: add additional GRU statistics\n\nAdd additional GRU statistics \u0026 debug messages.\n\nSigned-off-by: Jack Steiner \u003csteiner@sgi.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "4107e1d38a23028c2a3bc23dd948265dbe6becba",
      "tree": "3c64087639dc327e42447f015f3c4b01c4a1de39",
      "parents": [
        "67bf04a5c2574e9495f660f418f6df776821d578"
      ],
      "author": {
        "name": "Jack Steiner",
        "email": "steiner@sgi.com",
        "time": "Tue Dec 15 16:48:11 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Dec 16 07:20:16 2009 -0800"
      },
      "message": "gru: update irq infrastructure\n\nUpdate the GRU irq allocate/free functions to use the latest upstream\ninfrastructure.\n\nSigned-off-by: Jack Steiner \u003csteiner@sgi.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "67bf04a5c2574e9495f660f418f6df776821d578",
      "tree": "ff28ab4983b007136da88786c8966ea1598841a0",
      "parents": [
        "e006043a4d2da52bba9fd9cb7e5a22e2951ff69b"
      ],
      "author": {
        "name": "Jack Steiner",
        "email": "steiner@sgi.com",
        "time": "Tue Dec 15 16:48:11 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Dec 16 07:20:15 2009 -0800"
      },
      "message": "gru: fix prefetch and speculation bugs\n\nFix several bugs related to prefetch, ordering \u0026 speculation:\n\n\t- GRU cch_allocate() instruction causes cacheable memory\n\t  to be created. Add a barriers to prevent speculation\n\t  from prefetching data before it exists.\n\t- Add memory barriers before cache-flush instructions to ensure\n\t  that previously stored data is included in the line flushed to memory.\n\nSigned-off-by: Jack Steiner \u003csteiner@sgi.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "e006043a4d2da52bba9fd9cb7e5a22e2951ff69b",
      "tree": "21fcb2c1997b3070b54df12ec4102d2489deeecd",
      "parents": [
        "33f3648342dc40f8bd6383a5a1a91c22e06f6b77"
      ],
      "author": {
        "name": "Jack Steiner",
        "email": "steiner@sgi.com",
        "time": "Tue Dec 15 16:48:10 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Dec 16 07:20:15 2009 -0800"
      },
      "message": "gru: check for valid vma\n\nFix bug caused by failure to allocate a GRU gts structure.  The old code\nfailed to handle the case where the vma was invalid.\n\nSigned-off-by: Jack Steiner \u003csteiner@sgi.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "33f3648342dc40f8bd6383a5a1a91c22e06f6b77",
      "tree": "27efd17d8ef0fcc0d5c42a8cc4b0d87accae8266",
      "parents": [
        "b8229bedd1f39799dc83d5c0dad0bd9cd3e5f44c"
      ],
      "author": {
        "name": "Jack Steiner",
        "email": "steiner@sgi.com",
        "time": "Tue Dec 15 16:48:09 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Dec 16 07:20:15 2009 -0800"
      },
      "message": "gru: add test for gru_copy_gpa\n\nImprove existing driver self-tests.  Add a new debugging test to the SGI\nGRU driver for verifying the global GRU copy function.\n\nSigned-off-by: Jack Steiner \u003csteiner@sgi.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "b8229bedd1f39799dc83d5c0dad0bd9cd3e5f44c",
      "tree": "2e504f7392de859c9df4598e544853e8d7bc81e9",
      "parents": [
        "7f2251b1bcdd3d2971b2fde3008b270ea11b8780"
      ],
      "author": {
        "name": "Jack Steiner",
        "email": "steiner@sgi.com",
        "time": "Tue Dec 15 16:48:09 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Dec 16 07:20:15 2009 -0800"
      },
      "message": "gru: add debug option for cache flushing\n\nAdd a debug option to the SGI GRU driver for flushing GRU cache lines from\nmemory.  In theory this is not needed but it is useful for debugging.\nThis has no use by end users.\n\nSigned-off-by: Jack Steiner \u003csteiner@sgi.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "7f2251b1bcdd3d2971b2fde3008b270ea11b8780",
      "tree": "5fc3a2fc089188a6a61e16374a5b715db280aca7",
      "parents": [
        "6c9620c64be3920487c0533e0ab6724dad565d59"
      ],
      "author": {
        "name": "Jack Steiner",
        "email": "steiner@sgi.com",
        "time": "Tue Dec 15 16:48:08 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Dec 16 07:20:15 2009 -0800"
      },
      "message": "gru: handle failures to mmu_notifier_register\n\nUnder some conditions, mmu_notifier_register() will fail to register a\nmmu_notifier.  Fix the GRU driver to correctly handle these failures.\n\nSigned-off-by: Jack Steiner \u003csteiner@sgi.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "6c9620c64be3920487c0533e0ab6724dad565d59",
      "tree": "2e554d06b85b60dbc2e0386dd1114ed118d6d354",
      "parents": [
        "648eb8e50200a09db2488623958d9cbd4b8aaf55"
      ],
      "author": {
        "name": "Jack Steiner",
        "email": "steiner@sgi.com",
        "time": "Tue Dec 15 16:48:07 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Dec 16 07:20:15 2009 -0800"
      },
      "message": "gru: support 64-bit GRU addresses\n\nIncrease the maximum address supported by the SGI GRU driver to a full 64\nbits.  Note that GRU addresses are not always the same as socket virtual\naddresses.  Sockets may not necessarily support the full 64 bits.\n\nSigned-off-by: Jack Steiner \u003csteiner@sgi.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "648eb8e50200a09db2488623958d9cbd4b8aaf55",
      "tree": "b8f2dc6444eccbd7a34cdea784528a46eeebb84b",
      "parents": [
        "f2965d68b6775290218ff2a040e64c8b40556280"
      ],
      "author": {
        "name": "Jack Steiner",
        "email": "steiner@sgi.com",
        "time": "Tue Dec 15 16:48:07 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Dec 16 07:20:15 2009 -0800"
      },
      "message": "gru: improve messages for malfunctioning GRUs\n\nImprove error messages for malfunctioning GRUs.  Identify the type of\ninstruction that is failing.\n\nSigned-off-by: Jack Steiner \u003csteiner@sgi.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "f2965d68b6775290218ff2a040e64c8b40556280",
      "tree": "69f058811c32d0aa69ffd2814dd45c6f2886201b",
      "parents": [
        "99f7c229b32bdf7424fbeb1d0d1b3883e14e97d0"
      ],
      "author": {
        "name": "Jack Steiner",
        "email": "steiner@sgi.com",
        "time": "Tue Dec 15 16:48:06 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Dec 16 07:20:15 2009 -0800"
      },
      "message": "gru: fix bug in module unload\n\nFix bug in module unload.  Previous code was not correctly deleting the\nfiles in /proc.\n\nSigned-off-by: Jack Steiner \u003csteiner@sgi.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "99f7c229b32bdf7424fbeb1d0d1b3883e14e97d0",
      "tree": "bc5cbd2cd6c8452faacfb2e27dc1fe9dc3e1000a",
      "parents": [
        "55484c45dbeca2eec7642932ec3f60f8a2d4bdbf"
      ],
      "author": {
        "name": "Jack Steiner",
        "email": "steiner@sgi.com",
        "time": "Tue Dec 15 16:48:06 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Dec 16 07:20:15 2009 -0800"
      },
      "message": "gru: allow users to specify gru chiplet 3\n\nThis patch builds on the infrastructure introduced in the patches that\nallow user specification of GRU blades \u0026 chiplets for context allocation.\n\nThis patch simplifies the algorithms for migrating GRU contexts between\nblades.\n\nNo new functionality is introduced.\n\nSigned-off-by: Jack Steiner \u003csteiner@sgi.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "55484c45dbeca2eec7642932ec3f60f8a2d4bdbf",
      "tree": "4927e959a656def901bb105605df4ab6977ab2d1",
      "parents": [
        "518e5cd4aae476042bdee511e0e00c8670c0df42"
      ],
      "author": {
        "name": "Jack Steiner",
        "email": "steiner@sgi.com",
        "time": "Tue Dec 15 16:48:05 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Dec 16 07:20:15 2009 -0800"
      },
      "message": "gru: allow users to specify gru chiplet 2\n\nAdd support to the GRU driver to allow users to specify the blade \u0026\nchiplet for allocation of GRU contexts.  Add new statistics for context\nloading/unloading/retargeting.  Also deleted a few GRU stats that were no\nlonger being unused.\n\nSigned-off-by: Jack Steiner \u003csteiner@sgi.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "518e5cd4aae476042bdee511e0e00c8670c0df42",
      "tree": "ca65637bbc1c1e75b08bcb9082d62e28040b54bd",
      "parents": [
        "9178052fda2f934535f0b9940b987c3ac4c51bd7"
      ],
      "author": {
        "name": "Jack Steiner",
        "email": "steiner@sgi.com",
        "time": "Tue Dec 15 16:48:04 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Dec 16 07:20:14 2009 -0800"
      },
      "message": "gru: allow users to specify gru chiplet 1\n\nAdd table \u0026 user request infrastructure that is needed to allow users to\nspecify the blade and chiplet for allocation of GRU contexts.  Use of this\ninformation is in a subsequent patch.\n\nSigned-off-by: Jack Steiner \u003csteiner@sgi.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "9178052fda2f934535f0b9940b987c3ac4c51bd7",
      "tree": "2260823536e4199b9e4d2acb0b4c455877f4f391",
      "parents": [
        "b61fc69bb61838e99b368d208e6e2ee363eba2a1"
      ],
      "author": {
        "name": "Jack Steiner",
        "email": "steiner@sgi.com",
        "time": "Tue Dec 15 16:48:03 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Dec 16 07:20:14 2009 -0800"
      },
      "message": "gru: handle blades without memory\n\nDo not use alloc_pages_exact_node() to allocate GRU tables.  If a blade\nhas no local memory, nid will be -1.  Use alloc_pages_node() instead.\n\nSigned-off-by: Jack Steiner \u003csteiner@sgi.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "b61fc69bb61838e99b368d208e6e2ee363eba2a1",
      "tree": "e499fe1d706cab16561551b3ff49f9f5450659b1",
      "parents": [
        "091f1a10614db89a108cda980425799730d73d8a"
      ],
      "author": {
        "name": "Jack Steiner",
        "email": "steiner@sgi.com",
        "time": "Tue Dec 15 16:48:03 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Dec 16 07:20:14 2009 -0800"
      },
      "message": "gru: fix istatus race in GRU tlb dropin\n\nTLB dropins require updates to the CBR instruction istatus field.  This is\nneeded to resolve race conditions in the chip.\n\nThe code currently uses the user address of the CBR.  This works but opens\nup additional endcases related to stealing of contexts and accessing the\nCBR from tasks that do not have access to the user address space.  (Some\nof this non-user task access is debug code that is not currently being\npushed to the community).\n\nUser CBRs are also directly accessible using the kernel mapping of the\nCBR.  Change the TLB dropin code to use the the kernel mapping of the CBR.\n\nSigned-off-by: Jack Steiner \u003csteiner@sgi.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "091f1a10614db89a108cda980425799730d73d8a",
      "tree": "1564f5eec330225cc652c9c89209d84898a7c653",
      "parents": [
        "827f02febfcdfb03bc056bf479a13b5bcb35dfd7"
      ],
      "author": {
        "name": "Jack Steiner",
        "email": "steiner@sgi.com",
        "time": "Tue Dec 15 16:48:02 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Dec 16 07:20:14 2009 -0800"
      },
      "message": "gru: add comments raised in previous code reviews\n\nAdd comments from previous code reviews.  The comments help explain some\nof the more esoteric aspects of the driver.\n\nMove a free() to the other side of an unlock.\n\nSigned-off-by: Jack Steiner \u003csteiner@sgi.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "827f02febfcdfb03bc056bf479a13b5bcb35dfd7",
      "tree": "770bab4d08009d7a1ab8b1dd8906d01af7414bf8",
      "parents": [
        "57e6d258b1e41cd7ceb26fa43ce116939d8440b1"
      ],
      "author": {
        "name": "Jack Steiner",
        "email": "steiner@sgi.com",
        "time": "Tue Dec 15 16:48:01 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Dec 16 07:20:14 2009 -0800"
      },
      "message": "gru: initial GRU based on blade topology\n\nChange the GRU initialization code to initialize based on blade topology\ninstead of node topology.  The result is the same but blade-based\ninitialization is cleaner.\n\nSigned-off-by: Jack Steiner \u003csteiner@sgi.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "57e6d258b1e41cd7ceb26fa43ce116939d8440b1",
      "tree": "2e2bdba3cb899dc0239259bb05bb09ebbf3a9739",
      "parents": [
        "046d6c563b1c6226bbf0f84e5b2413ad8ab921a1"
      ],
      "author": {
        "name": "Robin Holt",
        "email": "holt@sgi.com",
        "time": "Tue Dec 15 16:48:00 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Dec 16 07:20:14 2009 -0800"
      },
      "message": "UV - XPC: pass nasid instead of nid to gru_create_message_queue\n\nCurrently, the UV xpc code is passing nid to the gru_create_message_queue\ninstead of nasid as it expects.\n\nSigned-off-by: Robin Holt \u003cholt@sgi.com\u003e\nSigned-off-by: Jack Steiner \u003csteiner@sgi.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "046d6c563b1c6226bbf0f84e5b2413ad8ab921a1",
      "tree": "ba88e7f89618421bd320f5f55d06b4ad7839938e",
      "parents": [
        "dbd2918ec65c35f36bb102c88eafe87be0552f6f"
      ],
      "author": {
        "name": "Robin Holt",
        "email": "holt@sgi.com",
        "time": "Tue Dec 15 16:47:59 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Dec 16 07:20:14 2009 -0800"
      },
      "message": "x86: uv: XPC receive message reuse triggers invalid BUG_ON()\n\nThis was a difficult bug to trip.  XPC was in the middle of sending an\nacknowledgement for a received message.\n\nIn xpc_received_payload_uv():\n.\n        ret \u003d xpc_send_gru_msg(ch-\u003esn.uv.cached_notify_gru_mq_desc, msg,\n                               sizeof(struct xpc_notify_mq_msghdr_uv));\n        if (ret !\u003d xpSuccess)\n                XPC_DEACTIVATE_PARTITION(\u0026xpc_partitions[ch-\u003epartid], ret);\n\n        msg-\u003ehdr.msg_slot_number +\u003d ch-\u003eremote_nentries;\n\nat the point in xpc_send_gru_msg() where the hardware has dispatched the\nacknowledgement, the remote side is able to reuse the message structure\nand send a message with a different slot number.  This problem is made\nworse by interrupts.\n\nThe adjustment of msg_slot_number and the BUG_ON in\nxpc_handle_notify_mq_msg_uv() which verifies the msg_slot_number is\nconsistent are only used for debug purposes.  Since a fix for this that\npreserves the debug functionality would either have to infringe upon the\npayload or allocate another structure just for debug, I decided to remove\nit entirely.\n\nSigned-off-by: Robin Holt \u003cholt@sgi.com\u003e\nCc: Jack Steiner \u003csteiner@sgi.com\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "dbd2918ec65c35f36bb102c88eafe87be0552f6f",
      "tree": "97763c2f9c6b2938e209911a89690794c290f22b",
      "parents": [
        "15b87d67ff3dc042bee42f991858d6b121b3b3ca"
      ],
      "author": {
        "name": "Robin Holt",
        "email": "holt@sgi.com",
        "time": "Tue Dec 15 16:47:58 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Dec 16 07:20:14 2009 -0800"
      },
      "message": "X86: uv: xpc_make_first_contact hang due to not accepting ACTIVE state\n\nMany times while the initial connection is being made, the contacted\npartition will send back both the ACTIVATING and the ACTIVE\nremote_act_state changes in very close succescion.  The 1/4 second delay\nin the make first contact loop is large enough to nearly always miss the\nACTIVATING state change.\n\nSince either state indicates the remote partition has acknowledged our\nstate change, accept either.\n\nSigned-off-by: Robin Holt \u003cholt@sgi.com\u003e\nCc: Jack Steiner \u003csteiner@sgi.com\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "15b87d67ff3dc042bee42f991858d6b121b3b3ca",
      "tree": "48e72a7ce8b4113b3dfcdcd31ca9bdce38ee3cd9",
      "parents": [
        "c2c9f115741453715d6b4da1cd2de65af8c7ad86"
      ],
      "author": {
        "name": "Robin Holt",
        "email": "holt@sgi.com",
        "time": "Tue Dec 15 16:47:57 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Dec 16 07:20:14 2009 -0800"
      },
      "message": "x86: uv: xpc NULL deref when mesq becomes empty\n\nUnder heavy load conditions, our set of xpc messages may become exhausted.\n The code handles this correctly with the exception of the management code\nwhich hits a NULL pointer dereference.\n\nSigned-off-by: Robin Holt \u003cholt@sgi.com\u003e\nCc: Jack Steiner \u003csteiner@sgi.com\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "c2c9f115741453715d6b4da1cd2de65af8c7ad86",
      "tree": "8e20a0641c622b07b3c7380f81a5552e20e1c8d1",
      "parents": [
        "289750d1f1fd4a715baa2a2c6dd0cec2b8317fd7"
      ],
      "author": {
        "name": "Robin Holt",
        "email": "holt@sgi.com",
        "time": "Tue Dec 15 16:47:56 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Dec 16 07:20:14 2009 -0800"
      },
      "message": "x86: uv: update XPC to handle updated BIOS interface\n\nThe UV BIOS has moved the location of some of their pointers to the\n\"partition reserved page\" from memory into a uv hub MMR.  The GRU does not\nsupport bcopy operations from MMR space so we need to special case the MMR\naddresses using VLOAD operations.\n\nAdditionally, the BIOS call for registering a message queue watchlist has\nremoved the \u0027blade\u0027 value and eliminated the structure that was being\npassed in.  This is also reflected in this patch.\n\nSigned-off-by: Robin Holt \u003cholt@sgi.com\u003e\nCc: Jack Steiner \u003csteiner@sgi.com\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "289750d1f1fd4a715baa2a2c6dd0cec2b8317fd7",
      "tree": "2c525297c460a9ab98b9649eb3021e534a8e77fd",
      "parents": [
        "fae419f2abd15ab7d1cd1413e6683a276a4e14e2"
      ],
      "author": {
        "name": "Robin Holt",
        "email": "holt@sgi.com",
        "time": "Tue Dec 15 16:47:55 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Dec 16 07:20:13 2009 -0800"
      },
      "message": "X86: uv: implement a gru_read_gpa kernel function\n\nThe BIOS has decided to store a pointer to the partition reserved page in\na scratch MMR.  The GRU is only able to read an MMR using a vload\ninstruction.  The gru_read_gpa() function will implemented.\n\nSigned-off-by: Robin Holt \u003cholt@sgi.com\u003e\nSigned-off-by: Jack Steiner \u003csteiner@sgi.com\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "fae419f2abd15ab7d1cd1413e6683a276a4e14e2",
      "tree": "9e560c4eebfd5d41cf3ab5903d234fac798dc236",
      "parents": [
        "682128939f546e3a9cdd9fef392b932dd9c41a65"
      ],
      "author": {
        "name": "Robin Holt",
        "email": "holt@sgi.com",
        "time": "Tue Dec 15 16:47:54 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Dec 16 07:20:13 2009 -0800"
      },
      "message": "x86: uv: introduce uv_gpa_is_mmr\n\nProvide a mechanism for determining if a global physical address is\npointing to a UV hub MMR.\n\nSigned-off-by: Robin Holt \u003cholt@sgi.com\u003e\nCc: Jack Steiner \u003csteiner@sgi.com\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "682128939f546e3a9cdd9fef392b932dd9c41a65",
      "tree": "ec641fbca980cbba69b655f7575523a8cdc93b30",
      "parents": [
        "729d69e6995fc4dea8ff70df256a7d4034a3d21d"
      ],
      "author": {
        "name": "Robin Holt",
        "email": "holt@sgi.com",
        "time": "Tue Dec 15 16:47:53 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Dec 16 07:20:13 2009 -0800"
      },
      "message": "x86: uv: xpc needs to provide an abstraction for uv_gpa\n\nProvide an SGI SN2/UV agnositic method for converting a global physical\naddress into a socket physical address.\n\nSigned-off-by: Robin Holt \u003cholt@sgi.com\u003e\nCc: Jack Steiner \u003csteiner@sgi.com\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "729d69e6995fc4dea8ff70df256a7d4034a3d21d",
      "tree": "6b8ccb8d00248458bb27417606fb9e402daaeb77",
      "parents": [
        "5fe878ae7f82fbf0830dbfaee4c5ca18f3aee442"
      ],
      "author": {
        "name": "Robin Holt",
        "email": "holt@sgi.com",
        "time": "Tue Dec 15 16:47:52 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Dec 16 07:20:13 2009 -0800"
      },
      "message": "x86: uv: introduce a means to translate from gpa -\u003e socket_paddr\n\nThe UV BIOS has been updated to implement some of our interface\nfunctionality differently than originally expected.  These patches update\nthe kernel to the bios implementation and include a few minor bug fixes\nwhich prevent us from doing significant testing on real hardware.\n\nThis patch:\n\nFor SGI UV systems, translate from a global physical address back to a\nsocket physical address.  This does nothing to ensure the socket physical\naddress is actually addressable by the kernel.  That is the responsibility\nof the user of the function.\n\nSigned-off-by: Robin Holt \u003cholt@sgi.com\u003e\nCc: Jack Steiner \u003csteiner@sgi.com\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "5fe878ae7f82fbf0830dbfaee4c5ca18f3aee442",
      "tree": "7e7ad290cfb30705948d8ebeb46b013afa913f42",
      "parents": [
        "23aee091d804efa8cc732a31c1ae5d625e1ec886"
      ],
      "author": {
        "name": "Christoph Hellwig",
        "email": "hch@lst.de",
        "time": "Tue Dec 15 16:47:50 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Dec 16 07:20:13 2009 -0800"
      },
      "message": "direct-io: cleanup blockdev_direct_IO locking\n\nCurrently the locking in blockdev_direct_IO is a mess, we have three\ndifferent locking types and very confusing checks for some of them.  The\nmost complicated one is DIO_OWN_LOCKING for reads, which happens to not\nactually be used.\n\nThis patch gets rid of the DIO_OWN_LOCKING - as mentioned above the read\ncase is unused anyway, and the write side is almost identical to\nDIO_NO_LOCKING.  The difference is that DIO_NO_LOCKING always sets the\ncreate argument for the get_blocks callback to zero, but we can easily\nmove that to the actual get_blocks callbacks.  There are four users of the\nDIO_NO_LOCKING mode: gfs already ignores the create argument and thus is\nfine with the new version, ocfs2 only errors out if create were ever set,\nand we can remove this dead code now, the block device code only ever uses\ncreate for an error message if we are fully beyond the device which can\nnever happen, and last but not least XFS will need the new behavour for\nwrites.\n\nNow we can replace the lock_type variable with a flags one, where no flag\nmeans the DIO_NO_LOCKING behaviour and DIO_LOCKING is kept as the first\nflag.  Separate out the check for not allowing to fill holes into a\nseparate flag, although for now both flags always get set at the same\ntime.\n\nAlso revamp the documentation of the locking scheme to actually make\nsense.\n\n[akpm@linux-foundation.org: coding-style fixes]\nSigned-off-by: Christoph Hellwig \u003chch@lst.de\u003e\nCc: Dave Chinner \u003cdavid@fromorbit.com\u003e\nCc: Badari Pulavarty \u003cpbadari@us.ibm.com\u003e\nCc: Jeff Moyer \u003cjmoyer@redhat.com\u003e\nCc: Jens Axboe \u003cjens.axboe@oracle.com\u003e\nCc: Zach Brown \u003czach.brown@oracle.com\u003e\nCc: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\nCc: Alex Elder \u003caelder@sgi.com\u003e\nCc: Mark Fasheh \u003cmfasheh@suse.com\u003e\nCc: Joel Becker \u003cjoel.becker@oracle.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "23aee091d804efa8cc732a31c1ae5d625e1ec886",
      "tree": "2ca3456dba4771600ba62822c81f85b61074088a",
      "parents": [
        "fac046ad0b1ee2c4244ebf43a26433ef0ea29ae4"
      ],
      "author": {
        "name": "Jeff Moyer",
        "email": "jmoyer@redhat.com",
        "time": "Tue Dec 15 16:47:49 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Dec 16 07:20:13 2009 -0800"
      },
      "message": "dio: don\u0027t zero out the pages array inside struct dio\n\nIntel reported a performance regression caused by the following commit:\n\ncommit 848c4dd5153c7a0de55470ce99a8e13a63b4703f\nAuthor: Zach Brown \u003czach.brown@oracle.com\u003e\nDate:   Mon Aug 20 17:12:01 2007 -0700\n\n    dio: zero struct dio with kzalloc instead of manually\n\n    This patch uses kzalloc to zero all of struct dio rather than\n    manually trying to track which fields we rely on being zero.  It\n    passed aio+dio stress testing and some bug regression testing on\n    ext3.\n\n    This patch was introduced by Linus in the conversation that lead up\n    to Badari\u0027s minimal fix to manually zero .map_bh.b_state in commit:\n\n      6a648fa72161d1f6468dabd96c5d3c0db04f598a\n\n    It makes the code a bit smaller.  Maybe a couple fewer cachelines to\n    load, if we\u0027re lucky:\n\n       text    data     bss     dec     hex filename\n    3285925  568506 1304616 5159047  4eb887 vmlinux\n    3285797  568506 1304616 5158919  4eb807 vmlinux.patched\n\n    I was unable to measure a stable difference in the number of cpu\n    cycles spent in blockdev_direct_IO() when pushing aio+dio 256K reads\n    at ~340MB/s.\n\n    So the resulting intent of the patch isn\u0027t a performance gain but to\n    avoid exposing ourselves to the risk of finding another field like\n    .map_bh.b_state where we rely on zeroing but don\u0027t enforce it in the\n    code.\n\nZach surmised that zeroing out the page array was what caused most of\nthe problem, and suggested the approach taken in the attached patch for\nresolving the issue.  Intel re-tested with this patch and saw a 0.6%\nperformance gain (the original regression was 0.5%).\n\n[akpm@linux-foundation.org: add comment]\nSigned-off-by: Jeff Moyer \u003cjmoyer@redhat.com\u003e\nAcked-by: Zach Brown \u003czach.brown@oracle.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "fac046ad0b1ee2c4244ebf43a26433ef0ea29ae4",
      "tree": "a2354b6b80efebbbd0d0f24a325a722ad06b5a54",
      "parents": [
        "ea58ceb543b45d45b257a86eaf9d60c94e8adcf2"
      ],
      "author": {
        "name": "Shaohua Li",
        "email": "shaohua.li@intel.com",
        "time": "Tue Dec 15 16:47:47 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Dec 16 07:20:13 2009 -0800"
      },
      "message": "aio: remove unused field\n\nDon\u0027t know the reason, but it appears ki_wait field of iocb never gets used.\n\nSigned-off-by: Shaohua Li \u003cshaohua.li@intel.com\u003e\nCc: Jeff Moyer \u003cjmoyer@redhat.com\u003e\nCc: Benjamin LaHaise \u003cbcrl@kvack.org\u003e\nCc: Zach Brown \u003czach.brown@oracle.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "ea58ceb543b45d45b257a86eaf9d60c94e8adcf2",
      "tree": "d2c44790f9a79e4d1eab26ff02b6880ab7966120",
      "parents": [
        "06a7f711246b081afc21fff859f1003f1f2a0fbc"
      ],
      "author": {
        "name": "David Howells",
        "email": "dhowells@redhat.com",
        "time": "Tue Dec 15 16:47:46 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Dec 16 07:20:13 2009 -0800"
      },
      "message": "FS-Cache: Avoid maybe-used-uninitialised warning on variable\n\nAndrew Morton\u0027s compiler sees the following warning in FS-Cache:\n\nfs/fscache/object-list.c: In function \u0027fscache_objlist_lookup\u0027:\nfs/fscache/object-list.c:94: warning: \u0027obj\u0027 may be used uninitialized in this function\n\nwhich my compiler doesn\u0027t.  This is a false positive as obj can only be\nused in the comparison against minobj if minobj has been set to something\nother than NULL, but for that to happen, obj has to be first set to\nsomething.\n\nDeal with this by preclearing obj too.\n\nReported-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: David Howells \u003cdhowells@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": "06a7f711246b081afc21fff859f1003f1f2a0fbc",
      "tree": "aece49693ad751923ce71387201d3c3e6214e335",
      "parents": [
        "1f2c19f8c959c1d0ccd3e33b1f480593b66d95dd"
      ],
      "author": {
        "name": "Amerigo Wang",
        "email": "amwang@redhat.com",
        "time": "Tue Dec 15 16:47:46 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Dec 16 07:20:13 2009 -0800"
      },
      "message": "kexec: premit reduction of the reserved memory size\n\nImplement shrinking the reserved memory for crash kernel, if it is more\nthan enough.\n\nFor example, if you have already reserved 128M, now you just want 100M,\nyou can do:\n\n# echo $((100*1024*1024)) \u003e /sys/kernel/kexec_crash_size\n\nNote, you can only do this before loading the crash kernel.\n\nSigned-off-by: WANG Cong \u003camwang@redhat.com\u003e\nCc: Neil Horman \u003cnhorman@redhat.com\u003e\nAcked-by: Eric W. Biederman \u003cebiederm@xmission.com\u003e\nCc: Andi Kleen \u003candi@firstfloor.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "1f2c19f8c959c1d0ccd3e33b1f480593b66d95dd",
      "tree": "8ab3a0058d9bfefcefbcd47eb1286559220e25b0",
      "parents": [
        "ac2b3e67dd59b8c6ef8c199641444c6ea03535a6"
      ],
      "author": {
        "name": "Joe Perches",
        "email": "joe@perches.com",
        "time": "Tue Dec 15 16:47:45 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Dec 16 07:20:12 2009 -0800"
      },
      "message": "parport_pc.c: use correct length in strncmp\n\nSigned-off-by: Joe Perches \u003cjoe@perches.com\u003e\nAcked-by: Alan Cox \u003calan@linux.intel.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "ac2b3e67dd59b8c6ef8c199641444c6ea03535a6",
      "tree": "ce7ac263fc47517ed42a15670a5359094b2a1f05",
      "parents": [
        "bbead2104e912571c3afb2aafe5ece1b446b56d9"
      ],
      "author": {
        "name": "Jan Beulich",
        "email": "JBeulich@novell.com",
        "time": "Tue Dec 15 16:47:43 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Dec 16 07:20:12 2009 -0800"
      },
      "message": "dma-mapping: fix off-by-one error in dma_capable()\n\ndma_mask is, when interpreted as address, the last valid byte, and hence\ncomparison msut also be done using the last valid of the buffer in\nquestion.\n\nAlso fix the open-coded instances in lib/swiotlb.c.\n\nSigned-off-by: Jan Beulich \u003cjbeulich@novell.com\u003e\nCc: FUJITA Tomonori \u003cfujita.tomonori@lab.ntt.co.jp\u003e\nCc: Becky Bruce \u003cbeckyb@kernel.crashing.org\u003e\nCc: \"Luck, Tony\" \u003ctony.luck@intel.com\u003e\nCc: Benjamin Herrenschmidt \u003cbenh@kernel.crashing.org\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nCc: \"H. Peter Anvin\" \u003chpa@zytor.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "bbead2104e912571c3afb2aafe5ece1b446b56d9",
      "tree": "089512d5bb9738dce074d51dfc260fad7d51a37e",
      "parents": [
        "295439f2a341f2742fa11d143eda0940c5d4acfa"
      ],
      "author": {
        "name": "Nils Carlson",
        "email": "nils.carlson@ludd.ltu.se",
        "time": "Tue Dec 15 16:47:42 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Dec 16 07:20:12 2009 -0800"
      },
      "message": "edac: i5100 add 6 ranks per channel\n\nAdd support for 6 ranks per channel to the i5100 chipset.  I have tested\nthe patch as far as possible with correctible errors and things appear\ngood.  The DIMM mapping is correct for our board, but boards may differ.\n\nSigned-off-by: Nils Carlson \u003cnils.carlson@ludd.ltu.se\u003e\nAcked-by: Arthur Jones \u003cajones@riverbed.com\u003e\nSigned-off-by: Doug Thompson \u003cdougthompson@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": "295439f2a341f2742fa11d143eda0940c5d4acfa",
      "tree": "136f8172bfa173c42f372b4d1abb611182ecaad2",
      "parents": [
        "b18dfd05f98de9fae5258299bcc2bfcf394650c4"
      ],
      "author": {
        "name": "Nils Carlson",
        "email": "nils.carlson@ludd.ltu.se",
        "time": "Tue Dec 15 16:47:42 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Dec 16 07:20:12 2009 -0800"
      },
      "message": "edac: i5100 add scrubbing\n\nAddscrubbing to the i5100 chipset.  The i5100 chipset only supports one\nscrubbing rate, which is not constant but dependent on memory load.  The\nrate returned by this driver is an estimate based on some experimentation,\nbut is substantially closer to the truth than the speed supplied in the\ndocumentation.\n\nAlso, scrubbing is done once, and then a done-bit is set.  This means that\nto accomplish continuous scrubbing a re-enabling mechanism must be used.\nI have created the simplest possible such mechanism in the form of a\nwork-queue which will check every five minutes.  This interval is quite\narbitrary but should be sufficient for all sizes of system memory.\n\nSigned-off-by: Nils Carlson \u003cnils.carlson@ludd.ltu.se\u003e\nSigned-off-by: Doug Thompson \u003cdougthompson@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": "b18dfd05f98de9fae5258299bcc2bfcf394650c4",
      "tree": "750ac8a52e06d639aae3ccaa724f7688ecbf4578",
      "parents": [
        "417e315247ebc199d357855bb08d2a5264400565"
      ],
      "author": {
        "name": "Nils Carlson",
        "email": "nils.carlson@ludd.ltu.se",
        "time": "Tue Dec 15 16:47:40 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Dec 16 07:20:12 2009 -0800"
      },
      "message": "edac: i5100 clean controller to channel terms\n\nThe i5100 driver uses the word controller instead of channel in a lot of\nplaces, this is simply a cleanup of the patch.\n\nSigned-off-by: Nils Carlson \u003cnils.carlson@ludd.ltu.se\u003e\nSigned-off-by: Doug Thompson \u003cdougthompson@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": "417e315247ebc199d357855bb08d2a5264400565",
      "tree": "84383762d1abaebaa00928bbfc23851742d9cf9b",
      "parents": [
        "7be6d991bca63bbcdc5bc3b09789f367a3486537"
      ],
      "author": {
        "name": "André Goddard Rosa",
        "email": "andre.goddard@gmail.com",
        "time": "Tue Dec 15 16:47:40 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Dec 16 07:20:12 2009 -0800"
      },
      "message": "pid: reduce code size by using a pointer to iterate over array\n\nIt decreases code size by 16 bytes on my gcc 4.4.1 on Core 2:\n  text    data     bss     dec     hex filename\n  4314    2216       8    6538    198a kernel/pid.o-BEFORE\n  4298    2216       8    6522    197a kernel/pid.o-AFTER\n\nSigned-off-by: André Goddard Rosa \u003candre.goddard@gmail.com\u003e\nCc: Pekka Enberg \u003cpenberg@cs.helsinki.fi\u003e\nCc: Oleg Nesterov \u003coleg@redhat.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "7be6d991bca63bbcdc5bc3b09789f367a3486537",
      "tree": "79168c345c424ce7b80bfba382c9dc469bdcc70a",
      "parents": [
        "698ba7b5a3a7be772922340fade365c675b8243f"
      ],
      "author": {
        "name": "André Goddard Rosa",
        "email": "andre.goddard@gmail.com",
        "time": "Tue Dec 15 16:47:39 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Dec 16 07:20:12 2009 -0800"
      },
      "message": "pid: tighten pidmap spinlock critical section by removing kfree()\n\nAvoid calling kfree() under pidmap spinlock, calling it afterwards.\n\nNormally kfree() is fast, but sometimes it can be slow, so avoid\ncalling it under the spinlock if we can do it.\n\nSigned-off-by: André Goddard Rosa \u003candre.goddard@gmail.com\u003e\nCc: Pekka Enberg \u003cpenberg@cs.helsinki.fi\u003e\nCc: Oleg Nesterov \u003coleg@redhat.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "698ba7b5a3a7be772922340fade365c675b8243f",
      "tree": "3e251d4ee8cbd8489d75e7570b2d821395021d59",
      "parents": [
        "d1da96aada79fd1d29ae4e3157120d1ce1e77594"
      ],
      "author": {
        "name": "Christoph Hellwig",
        "email": "hch@lst.de",
        "time": "Tue Dec 15 16:47:37 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Dec 16 07:20:12 2009 -0800"
      },
      "message": "elf: kill USE_ELF_CORE_DUMP\n\nCurrently all architectures but microblaze unconditionally define\nUSE_ELF_CORE_DUMP.  The microblaze omission seems like an error to me, so\nlet\u0027s kill this ifdef and make sure we are the same everywhere.\n\nSigned-off-by: Christoph Hellwig \u003chch@lst.de\u003e\nAcked-by: Hugh Dickins \u003chugh.dickins@tiscali.co.uk\u003e\nCc: \u003clinux-arch@vger.kernel.org\u003e\nCc: Michal Simek \u003cmichal.simek@petalogix.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "d1da96aada79fd1d29ae4e3157120d1ce1e77594",
      "tree": "ddc875b94e5ac5c1b3a1f006f914cd721d420a8b",
      "parents": [
        "9cf18e1dd74cd0061d58ac55029784ca3dd88f6a"
      ],
      "author": {
        "name": "Julia Lawall",
        "email": "julia@diku.dk",
        "time": "Tue Dec 15 16:47:37 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Dec 16 07:20:10 2009 -0800"
      },
      "message": "drivers/char/ipmi: Use KCS_IDLE_STATE\n\nKCS_IDLE and KCS_IDLE state have the same value, but in this function the\nconstants ending in _STATE are compared to the state variable.\n\nSigned-off-by: Julia Lawall \u003cjulia@diku.dk\u003e\nAcked-by: Core Minyard \u003ccminyard@mvista.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "9cf18e1dd74cd0061d58ac55029784ca3dd88f6a",
      "tree": "cec024557847462d5c6d3b9b52f4d59c08dc40c7",
      "parents": [
        "e5cc9c7b1a3e7ae4d700d9fce168fb597bcfe9b6"
      ],
      "author": {
        "name": "Amerigo Wang",
        "email": "amwang@redhat.com",
        "time": "Tue Dec 15 16:47:36 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Dec 16 07:20:10 2009 -0800"
      },
      "message": "ipc: HARD_MSGMAX should be higher not lower on 64bit\n\nWe have HARD_MSGMAX lower on 64bit than on 32bit, since usually 64bit\nmachines have more memory than 32bit machines.\n\nMaking it higher on 64bit seems reasonable, and keep the original number\non 32bit.\n\nAcked-by: Serge E. Hallyn \u003cserue@us.ibm.com\u003e\nCc: Cedric Le Goater \u003cclg@fr.ibm.com\u003e\nSigned-off-by: WANG Cong \u003camwang@redhat.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "e5cc9c7b1a3e7ae4d700d9fce168fb597bcfe9b6",
      "tree": "567e8b359132aa0a542c2d940274727003c0c9f1",
      "parents": [
        "d987f8b213f2cdcc52b2ca9ee67161516e4d256a"
      ],
      "author": {
        "name": "Amerigo Wang",
        "email": "amwang@redhat.com",
        "time": "Tue Dec 15 16:47:35 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Dec 16 07:20:10 2009 -0800"
      },
      "message": "ipc: remove unreachable code in sem.c\n\nThis line is unreachable, remove it.\n\n[akpm@linux-foundation.org: remove unneeded initialisation of `err\u0027]\nSigned-off-by: WANG Cong \u003camwang@redhat.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "d987f8b213f2cdcc52b2ca9ee67161516e4d256a",
      "tree": "12ed1a267c8fd3ea0343d6a77f1c332b775d4dfe",
      "parents": [
        "636c6be823870d829b37fc96655bb8820a6a9be9"
      ],
      "author": {
        "name": "Manfred Spraul",
        "email": "manfred@colorfullife.com",
        "time": "Tue Dec 15 16:47:34 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Dec 16 07:20:10 2009 -0800"
      },
      "message": "ipc/sem.c: optimize single sops when semval is zero\n\nIf multiple simple decrements on the same semaphore are pending, then the\ncurrent code scans all decrement operations, even if the semaphore value\nis already 0.\n\nThe patch optimizes that: if the semaphore value is 0, then there is no\nneed to scan the q-\u003ealter entries.\n\nNote that this is a common case: It happens if 100 decrements by one are\npending and now an increment by one increases the semaphore value from 0\nto 1.  Without this patch, all 100 entries are scanned.  With the patch,\nonly one entry is scanned, then woken up.  Then the new rule triggers and\nthe scanning is aborted, without looking at the remaining 99 tasks.\n\nWith this patch, single sop increment/decrement by 1 are now O(1).\n(same as with Nick\u0027s patch)\n\nSigned-off-by: Manfred Spraul \u003cmanfred@colorfullife.com\u003e\nCc: Nick Piggin \u003cnpiggin@suse.de\u003e\nCc: Pierre Peiffer \u003cpeifferp@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": "636c6be823870d829b37fc96655bb8820a6a9be9",
      "tree": "dc17d73ae77e6921ca7c88e6b019fe3d72bb9790",
      "parents": [
        "b97e820ffffbf49e94ed60c9c26f1a54bccae924"
      ],
      "author": {
        "name": "Manfred Spraul",
        "email": "manfred@colorfullife.com",
        "time": "Tue Dec 15 16:47:33 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Dec 16 07:20:10 2009 -0800"
      },
      "message": "ipc/sem.c: optimize single semop operations\n\nsysv sem has the concept of semaphore arrays that consist out of multiple\nsemaphores.  Atomic operations that affect multiple semaphores are\nsupported.\n\nThe patch optimizes single semaphore operation calls that affect only one\nsemaphore: It\u0027s not necessary to scan all pending operations, it is\nsufficient to scan the per-semaphore list.\n\nThe idea is from Nick Piggin version of an ipc sem improvement, the\nimplementation is different: The code tries to keep as much common code as\npossible.\n\nAs the result, the patch is simpler, but optimizes fewer cases.\n\nSigned-off-by: Manfred Spraul \u003cmanfred@colorfullife.com\u003e\nCc: Nick Piggin \u003cnpiggin@suse.de\u003e\nCc: Pierre Peiffer \u003cpeifferp@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": "b97e820ffffbf49e94ed60c9c26f1a54bccae924",
      "tree": "195146c43d24051aada20a211f2bb146bfebe9d2",
      "parents": [
        "b6e90822e77cd476c18410f7003197d466e36ac6"
      ],
      "author": {
        "name": "Manfred Spraul",
        "email": "manfred@colorfullife.com",
        "time": "Tue Dec 15 16:47:32 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Dec 16 07:20:10 2009 -0800"
      },
      "message": "ipc/sem.c: add a per-semaphore pending list\n\nBased on Nick\u0027s findings:\n\nsysv sem has the concept of semaphore arrays that consist out of multiple\nsemaphores.  Atomic operations that affect multiple semaphores are\nsupported.\n\nThe patch is the first step for optimizing simple, single semaphore\noperations: In addition to the global list of all pending operations, a\n2nd, per-semaphore list with the simple operations is added.\n\nNote: this patch does not make sense by itself, the new list is used\nnowhere.\n\nSigned-off-by: Manfred Spraul \u003cmanfred@colorfullife.com\u003e\nCc: Nick Piggin \u003cnpiggin@suse.de\u003e\nCc: Pierre Peiffer \u003cpeifferp@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": "b6e90822e77cd476c18410f7003197d466e36ac6",
      "tree": "2ff18df8c024ae92e7e8912186c34b10b4b6f4bd",
      "parents": [
        "d4212093dca95c1f52197017d969cc66d5d962aa"
      ],
      "author": {
        "name": "Manfred Spraul",
        "email": "manfred@colorfullife.com",
        "time": "Tue Dec 15 16:47:31 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Dec 16 07:20:09 2009 -0800"
      },
      "message": "ipc/sem.c: optimize if semops fail\n\nReduce the amount of scanning of the list of pending semaphore operations:\nIf try_atomic_semop failed, then no changes were applied.  Thus no need to\nrestart.\n\nAdditionally, this patch correct an incorrect comment: It\u0027s possible to\nwait for arbitrary semaphore values (do a dec by \u003cx\u003e, wait-for-zero, inc\nby \u003cx\u003e in one atomic operation)\n\nBoth changes are from Nick Piggin, the patch is the result of a different\nsplit of the individual changes.\n\nSigned-off-by: Manfred Spraul \u003cmanfred@colorfullife.com\u003e\nCc: Nick Piggin \u003cnpiggin@suse.de\u003e\nCc: Pierre Peiffer \u003cpeifferp@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": "d4212093dca95c1f52197017d969cc66d5d962aa",
      "tree": "f52484ae3c7b3034715b5745ae2b7db3906ab022",
      "parents": [
        "9cad200c7686708b326520a45dd680a4147568a6"
      ],
      "author": {
        "name": "Nick Piggin",
        "email": "npiggin@suse.de",
        "time": "Tue Dec 15 16:47:30 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Dec 16 07:20:09 2009 -0800"
      },
      "message": "ipc/sem.c: sem preempt improve\n\nThe strange sysv semaphore wakeup scheme has a kind of busy-wait lock\ninvolved, which could deadlock if preemption is enabled during the \"lock\".\n\nIt is an implementation detail (due to a spinlock being held) that this is\nactually the case.  However if \"spinlocks\" are made preemptible, or if the\nsem lock is changed to a sleeping lock for example, then the wakeup would\nbecome buggy.  So this might be a bugfix for -rt kernels.\n\nImagine waker being preempted by wakee and never clearing IN_WAKEUP -- if\nwakee has higher RT priority then there is a priority inversion deadlock.\nEven if there is not a priority inversion to cause a deadlock, then there\nis still time wasted spinning.\n\nSigned-off-by: Nick Piggin \u003cnpiggin@suse.de\u003e\nSigned-off-by: Manfred Spraul \u003cmanfred@colorfullife.com\u003e\nCc: Pierre Peiffer \u003cpeifferp@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": "9cad200c7686708b326520a45dd680a4147568a6",
      "tree": "76a3299679ef23c945e9371f330559d6bc3d0a43",
      "parents": [
        "bf17bb717759d50a2733a7a8157a7c4a25d93abc"
      ],
      "author": {
        "name": "Nick Piggin",
        "email": "npiggin@suse.de",
        "time": "Tue Dec 15 16:47:29 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Dec 16 07:20:09 2009 -0800"
      },
      "message": "ipc/sem.c: sem use list operations\n\nReplace the handcoded list operations in update_queue() with the standard\nlist_for_each_entry macros.\n\nlist_for_each_entry_safe() must be used, because list entries can\ndisappear immediately uppon the wakeup event.\n\nSigned-off-by: Nick Piggin \u003cnpiggin@suse.de\u003e\nSigned-off-by: Manfred Spraul \u003cmanfred@colorfullife.com\u003e\nCc: Pierre Peiffer \u003cpeifferp@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": "bf17bb717759d50a2733a7a8157a7c4a25d93abc",
      "tree": "22468665036b37922664529df976c890c5bed2d0",
      "parents": [
        "7d6feeb287c61aafa88f06345387b1188edf4b86"
      ],
      "author": {
        "name": "Nick Piggin",
        "email": "npiggin@suse.de",
        "time": "Tue Dec 15 16:47:28 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Dec 16 07:20:09 2009 -0800"
      },
      "message": "ipc/sem.c: sem optimise undo list search\n\nAround a month ago, there was some discussion about an improvement of the\nsysv sem algorithm: Most (at least: some important) users only use simple\nsemaphore operations, therefore it\u0027s worthwile to optimize this use case.\n\nThis patch:\n\nMove last looked up sem_undo struct to the head of the task\u0027s undo list.\nAttempt to move common entries to the front of the list so search time is\nreduced.  This reduces lookup_undo on oprofile of problematic SAP workload\nby 30% (see patch 4 for a description of SAP workload).\n\nSigned-off-by: Nick Piggin \u003cnpiggin@suse.de\u003e\nSigned-off-by: Manfred Spraul \u003cmanfred@colorfullife.com\u003e\nCc: Pierre Peiffer \u003cpeifferp@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": "7d6feeb287c61aafa88f06345387b1188edf4b86",
      "tree": "b07d1033d8980256d596686d75c2207b1f2cce0a",
      "parents": [
        "1be53963b0519bd3681749a9bed8b83aeb005cca"
      ],
      "author": {
        "name": "Serge E. Hallyn",
        "email": "serue@us.ibm.com",
        "time": "Tue Dec 15 16:47:27 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Dec 16 07:20:09 2009 -0800"
      },
      "message": "ipc ns: fix memory leak (idr)\n\nWe have apparently had a memory leak since\n7ca7e564e049d8b350ec9d958ff25eaa24226352 \"ipc: store ipcs into IDRs\" in\n2007.  The idr of which 3 exist for each ipc namespace is never freed.\n\nThis patch simply frees them when the ipcns is freed.  I don\u0027t believe any\nidr_remove() are done from rcu (and could therefore be delayed until after\nthis idr_destroy()), so the patch should be safe.  Some quick testing\nshowed no harm, and the memory leak fixed.\n\nCaught by kmemleak.\n\nSigned-off-by: Serge E. Hallyn \u003cserue@us.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": "1be53963b0519bd3681749a9bed8b83aeb005cca",
      "tree": "0bc6497a8039021f781f1c902f59e6f71f772793",
      "parents": [
        "ad09750b51150ca87531b8790a379214a974c167"
      ],
      "author": {
        "name": "Oleg Nesterov",
        "email": "oleg@redhat.com",
        "time": "Tue Dec 15 16:47:26 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Dec 16 07:20:09 2009 -0800"
      },
      "message": "signals: check -\u003egroup_stop_count after tracehook_get_signal()\n\nMove the call to do_signal_stop() down, after tracehook call.  This makes\n-\u003egroup_stop_count condition visible to tracers before do_signal_stop()\nwill participate in this group-stop.\n\nCurrently the patch has no effect, tracehook_get_signal() always returns 0.\n\nSigned-off-by: Oleg Nesterov \u003coleg@redhat.com\u003e\nAcked-by: Roland McGrath \u003croland@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": "ad09750b51150ca87531b8790a379214a974c167",
      "tree": "785520da252e18a058642c7bc95dda35100e4565",
      "parents": [
        "7486e5d9fc773cb67c29381567bed5236fc9573c"
      ],
      "author": {
        "name": "Oleg Nesterov",
        "email": "oleg@redhat.com",
        "time": "Tue Dec 15 16:47:25 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Dec 16 07:20:09 2009 -0800"
      },
      "message": "signals: kill force_sig_specific()\n\nKill force_sig_specific(), this trivial wrapper has no callers.\n\nSigned-off-by: Oleg Nesterov \u003coleg@redhat.com\u003e\nCc: Roland McGrath \u003croland@redhat.com\u003e\nCc: Sukadev Bhattiprolu \u003csukadev@us.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": "7486e5d9fc773cb67c29381567bed5236fc9573c",
      "tree": "848f10295391c27ca16c8c58812f5e7a81856280",
      "parents": [
        "dd34200adc01c5217ef09b55905b5c2312d65535"
      ],
      "author": {
        "name": "Oleg Nesterov",
        "email": "oleg@redhat.com",
        "time": "Tue Dec 15 16:47:24 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Dec 16 07:20:09 2009 -0800"
      },
      "message": "signals: cosmetic, collect_signal: use SI_USER\n\nTrivial, s/0/SI_USER/ in collect_signal() for grep.\n\nThis is a bit confusing, we don\u0027t know the source of this signal.\nBut we don\u0027t care, and \"info-\u003esi_code \u003d 0\" is imho worse.\n\nSigned-off-by: Oleg Nesterov \u003coleg@redhat.com\u003e\nCc: Roland McGrath \u003croland@redhat.com\u003e\nCc: Sukadev Bhattiprolu \u003csukadev@us.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": "dd34200adc01c5217ef09b55905b5c2312d65535",
      "tree": "7173ed6b5531086923a9221ef502f1dd2793c8a4",
      "parents": [
        "614c517d7c00af1b26ded20646b329397d6f51a1"
      ],
      "author": {
        "name": "Oleg Nesterov",
        "email": "oleg@redhat.com",
        "time": "Tue Dec 15 16:47:24 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Dec 16 07:20:09 2009 -0800"
      },
      "message": "signals: send_signal: use si_fromuser() to detect from_ancestor_ns\n\nChange send_signal() to use si_fromuser().  From now SEND_SIG_NOINFO\ntriggers the \"from_ancestor_ns\" check.\n\nThis fixes reparent_thread()-\u003egroup_send_sig_info(pdeath_signal)\nbehaviour, before this patch send_signal() does not detect the\ncross-namespace case when the child of the dying parent belongs to the\nsub-namespace.\n\nThis patch can affect the behaviour of send_sig(), kill_pgrp() and\nkill_pid() when the caller sends the signal to the sub-namespace with\n\"priv \u003d\u003d 0\" but surprisingly all callers seem to use them correctly,\nincluding disassociate_ctty(on_exit).\n\nExcept: drivers/staging/comedi/drivers/addi-data/*.c incorrectly use\nsend_sig(priv \u003d\u003e 0).  But his is minor and should be fixed anyway.\n\nReported-by: Daniel Lezcano \u003cdlezcano@fr.ibm.com\u003e\nSigned-off-by: Oleg Nesterov \u003coleg@redhat.com\u003e\nCc: Roland McGrath \u003croland@redhat.com\u003e\nReviewed-by: Sukadev Bhattiprolu \u003csukadev@us.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": "614c517d7c00af1b26ded20646b329397d6f51a1",
      "tree": "ddd7a82b3479c9fabe141b4c82a1794650a82b4f",
      "parents": [
        "d51965037325e51f6cd68583413243c3573e47b0"
      ],
      "author": {
        "name": "Oleg Nesterov",
        "email": "oleg@redhat.com",
        "time": "Tue Dec 15 16:47:22 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Dec 16 07:20:08 2009 -0800"
      },
      "message": "signals: SEND_SIG_NOINFO should be considered as SI_FROMUSER()\n\nNo changes in compiled code. The patch adds the new helper, si_fromuser()\nand changes check_kill_permission() to use this helper.\n\nThe real effect of this patch is that from now we \"officially\" consider\nSEND_SIG_NOINFO signal as \"from user-space\" signals. This is already true\nif we look at the code which uses SEND_SIG_NOINFO, except __send_signal()\nhas another opinion - see the next patch.\n\nThe naming of these special SEND_SIG_XXX siginfo\u0027s is really bad\nimho.  From __send_signal()\u0027s pov they mean\n\n\tSEND_SIG_NOINFO\t\tfrom user\n\tSEND_SIG_PRIV\t\tfrom kernel\n\tSEND_SIG_FORCED\t\tno info\n\nSigned-off-by: Oleg Nesterov \u003coleg@redhat.com\u003e\nCc: Roland McGrath \u003croland@redhat.com\u003e\nReviewed-by: Sukadev Bhattiprolu \u003csukadev@us.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": "d51965037325e51f6cd68583413243c3573e47b0",
      "tree": "b12a96e5adc82f3b72a22f054c9a51dc05d4a302",
      "parents": [
        "7f38551fc3ff0e17a38d6f3f0f8831380a88f3cc"
      ],
      "author": {
        "name": "Oleg Nesterov",
        "email": "oleg@redhat.com",
        "time": "Tue Dec 15 16:47:21 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Dec 16 07:20:08 2009 -0800"
      },
      "message": "ptrace: x86: change syscall_trace_leave() to rely on tracehook when stepping\n\nSuggested by Roland.\n\nUnlike powepc, x86 always calls tracehook_report_syscall_exit(step) with\nstep \u003d 0, and sends the trap by hand.\n\nThis results in unnecessary SIGTRAP when PTRACE_SINGLESTEP follows the\nsyscall-exit stop.\n\nChange syscall_trace_leave() to pass the correct \"step\" argument to\ntracehook and remove the send_sigtrap() logic.\n\nSigned-off-by: Oleg Nesterov \u003coleg@redhat.com\u003e\nAcked-by: Roland McGrath \u003croland@redhat.com\u003e\nCc: \u003clinux-arch@vger.kernel.org\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nCc: \"H. Peter Anvin\" \u003chpa@zytor.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "7f38551fc3ff0e17a38d6f3f0f8831380a88f3cc",
      "tree": "80a2618da48e46c3918a15cbd72bf2149fe2bd75",
      "parents": [
        "2f0edac5555983dc28033acce8a355f588fd01b2"
      ],
      "author": {
        "name": "Oleg Nesterov",
        "email": "oleg@redhat.com",
        "time": "Tue Dec 15 16:47:20 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Dec 16 07:20:08 2009 -0800"
      },
      "message": "ptrace: x86: implement user_single_step_siginfo()\n\nSuggested by Roland.\n\nImplement user_single_step_siginfo() for x86.  Extract this code from\nsend_sigtrap().\n\nSince x86 calls tracehook_report_syscall_exit(step \u003d\u003e 0) the new helper is\nnot used yet.\n\nSigned-off-by: Oleg Nesterov \u003coleg@redhat.com\u003e\nAcked-by: Roland McGrath \u003croland@redhat.com\u003e\nCc: \u003clinux-arch@vger.kernel.org\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nCc: \"H. Peter Anvin\" \u003chpa@zytor.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "2f0edac5555983dc28033acce8a355f588fd01b2",
      "tree": "a17d83571df83ca0a09bd048f01e8d9d2e9bbff7",
      "parents": [
        "25baa35befeebe6a4a8d8d12a4fc5b95918bda54"
      ],
      "author": {
        "name": "Oleg Nesterov",
        "email": "oleg@redhat.com",
        "time": "Tue Dec 15 16:47:19 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Dec 16 07:20:08 2009 -0800"
      },
      "message": "ptrace: change tracehook_report_syscall_exit() to handle stepping\n\nSuggested by Roland.\n\nChange tracehook_report_syscall_exit() to look at step flag and send the\ntrap signal if needed.\n\nThis change affects ia64, microblaze, parisc, powerpc, sh.  They pass\nnonzero \"step\" argument to tracehook but since it was ignored the tracee\nreports via ptrace_notify(), this is not right and not consistent.\n\n\t- PTRACE_SETSIGINFO doesn\u0027t work\n\n\t- if the tracer resumes the tracee with signr !\u003d 0 the new signal\n\t  is generated rather than delivering it\n\n\t- If PT_TRACESYSGOOD is set the tracee reports the wrong exit_code\n\nI don\u0027t have a powerpc machine, but I think this test-case should see the\ndifference:\n\n\t#include \u003cunistd.h\u003e\n\t#include \u003csys/ptrace.h\u003e\n\t#include \u003csys/wait.h\u003e\n\t#include \u003cassert.h\u003e\n\t#include \u003cstdio.h\u003e\n\n\tint main(void)\n\t{\n\t\tint pid, status;\n\n\t\tif (!(pid \u003d fork())) {\n\t\t\tassert(ptrace(PTRACE_TRACEME) \u003d\u003d 0);\n\t\t\tkill(getpid(), SIGSTOP);\n\n\t\t\tgetppid();\n\n\t\t\treturn 0;\n\t\t}\n\n\t\tassert(pid \u003d\u003d wait(\u0026status));\n\t\tassert(ptrace(PTRACE_SETOPTIONS, pid, 0, PTRACE_O_TRACESYSGOOD) \u003d\u003d 0);\n\n\t\tassert(ptrace(PTRACE_SYSCALL, pid, 0,0) \u003d\u003d 0);\n\t\tassert(pid \u003d\u003d wait(\u0026status));\n\n\t\tassert(ptrace(PTRACE_SINGLESTEP, pid, 0,0) \u003d\u003d 0);\n\t\tassert(pid \u003d\u003d wait(\u0026status));\n\n\t\tif (status \u003d\u003d 0x57F)\n\t\t\treturn 0;\n\n\t\tprintf(\"kernel bug: status\u003d%X shouldn\u0027t have 0x80\\n\", status);\n\t\treturn 1;\n\t}\n\nSigned-off-by: Oleg Nesterov \u003coleg@redhat.com\u003e\nAcked-by: Roland McGrath \u003croland@redhat.com\u003e\nCc: \u003clinux-arch@vger.kernel.org\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nCc: \"H. Peter Anvin\" \u003chpa@zytor.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "25baa35befeebe6a4a8d8d12a4fc5b95918bda54",
      "tree": "5634f996ac4e2067d2e1cc21b955eafbf9adb581",
      "parents": [
        "85ec7fd9f8e528c4f61d595cfe4df7681a19f252"
      ],
      "author": {
        "name": "Oleg Nesterov",
        "email": "oleg@redhat.com",
        "time": "Tue Dec 15 16:47:18 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Dec 16 07:20:08 2009 -0800"
      },
      "message": "ptrace: powerpc: implement user_single_step_siginfo()\n\nSuggested by Roland.\n\nImplement user_single_step_siginfo() for powerpc.\n\nSigned-off-by: Oleg Nesterov \u003coleg@redhat.com\u003e\nAcked-by: Roland McGrath \u003croland@redhat.com\u003e\nCc: \u003clinux-arch@vger.kernel.org\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nCc: \"H. Peter Anvin\" \u003chpa@zytor.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "85ec7fd9f8e528c4f61d595cfe4df7681a19f252",
      "tree": "67c81a68f3302f02b6f769b9acede7efeb5edc8e",
      "parents": [
        "6580807da14c423f0d0a708108e6df6ebc8bc83d"
      ],
      "author": {
        "name": "Oleg Nesterov",
        "email": "oleg@redhat.com",
        "time": "Tue Dec 15 16:47:17 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Dec 16 07:20:08 2009 -0800"
      },
      "message": "ptrace: introduce user_single_step_siginfo() helper\n\nSuggested by Roland.\n\nCurrently there is no way to synthesize a single-stepping trap in the\narch-independent manner.  This patch adds the default helper which fills\nsiginfo_t, arch/ can can override it.\n\nArchitetures which implement user_enable_single_step() should add\nuser_single_step_siginfo() also.\n\nSigned-off-by: Oleg Nesterov \u003coleg@redhat.com\u003e\nAcked-by: Roland McGrath \u003croland@redhat.com\u003e\nCc: \u003clinux-arch@vger.kernel.org\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nCc: \"H. Peter Anvin\" \u003chpa@zytor.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "6580807da14c423f0d0a708108e6df6ebc8bc83d",
      "tree": "553e2de8f2174f9bbb6ab9a2454b1306bb5eb4fa",
      "parents": [
        "c6a47cc2ccf9649ee09eeddd70a6d061bde69568"
      ],
      "author": {
        "name": "Oleg Nesterov",
        "email": "oleg@redhat.com",
        "time": "Tue Dec 15 16:47:16 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Dec 16 07:20:08 2009 -0800"
      },
      "message": "ptrace: copy_process() should disable stepping\n\nIf the tracee calls fork() after PTRACE_SINGLESTEP, the forked child\nstarts with TIF_SINGLESTEP/X86_EFLAGS_TF bits copied from ptraced parent.\nThis is not right, especially when the new child is not auto-attaced: in\nthis case it is killed by SIGTRAP.\n\nChange copy_process() to call user_disable_single_step(). Tested on x86.\n\nTest-case:\n\n\t#include \u003cstdio.h\u003e\n\t#include \u003cunistd.h\u003e\n\t#include \u003csignal.h\u003e\n\t#include \u003csys/ptrace.h\u003e\n\t#include \u003csys/wait.h\u003e\n\t#include \u003cassert.h\u003e\n\n\tint main(void)\n\t{\n\t\tint pid, status;\n\n\t\tif (!(pid \u003d fork())) {\n\t\t\tassert(ptrace(PTRACE_TRACEME) \u003d\u003d 0);\n\t\t\tkill(getpid(), SIGSTOP);\n\n\t\t\tif (!fork()) {\n\t\t\t\t/* kernel bug: this child will be killed by SIGTRAP */\n\t\t\t\tprintf(\"Hello world\\n\");\n\t\t\t\treturn 43;\n\t\t\t}\n\n\t\t\twait(\u0026status);\n\t\t\treturn WEXITSTATUS(status);\n\t\t}\n\n\t\tfor (;;) {\n\t\t\tassert(pid \u003d\u003d wait(\u0026status));\n\t\t\tif (WIFEXITED(status))\n\t\t\t\tbreak;\n\t\t\tassert(ptrace(PTRACE_SINGLESTEP, pid, 0,0) \u003d\u003d 0);\n\t\t}\n\n\t\tassert(WEXITSTATUS(status) \u003d\u003d 43);\n\t\treturn 0;\n\t}\n\nSigned-off-by: Oleg Nesterov \u003coleg@redhat.com\u003e\nAcked-by: Roland McGrath \u003croland@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": "c6a47cc2ccf9649ee09eeddd70a6d061bde69568",
      "tree": "b5ff696302607cd8f325199f84f88448e6475b84",
      "parents": [
        "aa20d489ceb024f91aae084ee00c47fc6a12255c"
      ],
      "author": {
        "name": "Oleg Nesterov",
        "email": "oleg@redhat.com",
        "time": "Tue Dec 15 16:47:15 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Dec 16 07:20:08 2009 -0800"
      },
      "message": "ptrace: cleanup ptrace_init_task()-\u003eptrace_link() path\n\nNo functional changes.\n\nptrace_init_task() looks confusing, as if we always auto-attach when \"bool\nptrace\" argument is true, while in fact we attach only if current is\ntraced.\n\nMake the code more explicit and kill now unused ptrace_link().\n\nSigned-off-by: Oleg Nesterov \u003coleg@redhat.com\u003e\nAcked-by: Roland McGrath \u003croland@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": "aa20d489ceb024f91aae084ee00c47fc6a12255c",
      "tree": "1fc8e826114b1020d0e938d3b915e8a2016ded57",
      "parents": [
        "9ab322caa347c4b580bcaf08f2253ea4cbd9e9ad"
      ],
      "author": {
        "name": "Bob Liu",
        "email": "lliubbo@gmail.com",
        "time": "Tue Dec 15 16:47:14 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Dec 16 07:20:08 2009 -0800"
      },
      "message": "memcg: code clean, remove unused variable in mem_cgroup_resize_limit()\n\nVariable `progress\u0027 isn\u0027t used in mem_cgroup_resize_limit() any more.\nRemove it.\n\n[akpm@linux-foundation.org: cleanup]\nSigned-off-by: Bob Liu \u003clliubbo@gmail.com\u003e\nCc: Daisuke Nishimura \u003cnishimura@mxp.nes.nec.co.jp\u003e\nReviewed-by: Balbir Singh \u003cbalbir@linux.vnet.ibm.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "9ab322caa347c4b580bcaf08f2253ea4cbd9e9ad",
      "tree": "3d3344e4ab05fc1047465b439b5cc7f000c44ca2",
      "parents": [
        "d31f56dbf8bafaacb0c617f9a6f137498d5c7aed"
      ],
      "author": {
        "name": "Daisuke Nishimura",
        "email": "nishimura@mxp.nes.nec.co.jp",
        "time": "Tue Dec 15 16:47:13 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Dec 16 07:20:07 2009 -0800"
      },
      "message": "memcg: remove memcg_tasklist\n\nmemcg_tasklist was introduced at commit 7f4d454d(memcg: avoid deadlock\ncaused by race between oom and cpuset_attach) instead of cgroup_mutex to\nfix a deadlock problem.  The cgroup_mutex, which was removed by the\ncommit, in mem_cgroup_out_of_memory() was originally introduced at commit\nc7ba5c9e (Memory controller: OOM handling).\n\nIIUC, the intention of this cgroup_mutex was to prevent task move during\nselect_bad_process() so that situations like below can be avoided.\n\n  Assume cgroup \"foo\" has exceeded its limit and is about to trigger oom.\n  1. Process A, which has been in cgroup \"baa\" and uses large memory, is just\n     moved to cgroup \"foo\". Process A can be the candidates for being killed.\n  2. Process B, which has been in cgroup \"foo\" and uses large memory, is just\n     moved from cgroup \"foo\". Process B can be excluded from the candidates for\n     being killed.\n\nBut these race window exists anyway even if we hold a lock, because\n__mem_cgroup_try_charge() decides wether it should trigger oom or not\noutside of the lock.  So the original cgroup_mutex in\nmem_cgroup_out_of_memory and thus current memcg_tasklist has no use.  And\nIMHO, those races are not so critical for users.\n\nThis patch removes it and make codes simpler.\n\nSigned-off-by: Daisuke Nishimura \u003cnishimura@mxp.nes.nec.co.jp\u003e\nCc: Balbir Singh \u003cbalbir@linux.vnet.ibm.com\u003e\nAcked-by: KAMEZAWA Hiroyuki \u003ckamezawa.hiroyu@jp.fujitsu.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    }
  ],
  "next": "d31f56dbf8bafaacb0c617f9a6f137498d5c7aed"
}
