)]}'
{
  "log": [
    {
      "commit": "0b0c9d3a5872e8a02a071c6f0775ee6bf00a1206",
      "tree": "12f6cc1eedffd62e4dfa3b0d41b2c643462426db",
      "parents": [
        "fc2bb8d1cde1296d210a0f1ff9ee979a447d0a34",
        "7de473066f1512e52ea806e3c9698e5ea325b26c"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Mar 23 14:15:07 2012 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Mar 23 14:15:07 2012 -0700"
      },
      "message": "Merge tag \u0027iommu-updates-v3.4\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/joro/iommu\n\nPull IOMMU updates from Joerg Roedel:\n \"The IOMMU updates for this round are not very large patch-wise.  But\n  they contain two new IOMMU drivers for the ARM Tegra 2 and 3\n  platforms.  Besides that there are also a few patches for the AMD\n  IOMMU which prepare the driver for adding intr-remapping support and a\n  couple of fixes.\"\n\n* tag \u0027iommu-updates-v3.4\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/joro/iommu:\n  iommu/amd: Fix section mismatch\n  iommu/amd: Move interrupt setup code into seperate function\n  iommu/amd: Make sure IOMMU interrupts are re-enabled on resume\n  iommu/amd: Fix section warning for prealloc_protection_domains\n  iommu/amd: Don\u0027t initialize IOMMUv2 resources when not required\n  iommu/amd: Update git-tree in MAINTAINERS\n  iommu/tegra-gart: fix spin_unlock in map failure path\n  iommu/amd: Fix double free of mem-region in error-path\n  iommu/amd: Split amd_iommu_init function\n  ARM: IOMMU: Tegra30: Add iommu_ops for SMMU driver\n  ARM: IOMMU: Tegra20: Add iommu_ops for GART driver\n"
    },
    {
      "commit": "fc2bb8d1cde1296d210a0f1ff9ee979a447d0a34",
      "tree": "725696adebdc70e1b4e0ce8537da25eb5f2bf564",
      "parents": [
        "475c77edf826333aa61625f49d6a2bec26ecb5a6",
        "bbceeee82ef55c11db0161f4078edd79290e3bcf"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Mar 23 14:12:04 2012 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Mar 23 14:12:04 2012 -0700"
      },
      "message": "Merge branch \u0027i2c-embedded/for-3.4\u0027 of git://git.pengutronix.de/git/wsa/linux\n\nPull i2c embedded updates from Wolfram Sang:\n \"Nothing special from i2c-embedded for this merge window.  Two new\n  drivers, minor feature additions, bugfixes, cleanups.\n\n  All patches have been in linux-next for some time, too.\"\n\n* \u0027i2c-embedded/for-3.4\u0027 of git://git.pengutronix.de/git/wsa/linux:\n  i2c-eg20t: Remove write-only variables\n  i2c-eg20t: Rework pch_i2c_wait_for_bus_idle to reduce wait time\n  i2c-s3c2410: Add stub runtime power management\n  i2c-s3c2410: Convert to devm_kzalloc()\n  i2c: add CSR SiRFprimaII on-chip I2C controllers driver\n  i2c: tegra: Remove unnecessary write to INT_STATUS\n  i2c: imx: fix imx driver to work though signal is pending\n  i2c: designware: dw_i2c_init_driver as subsys initcall\n  misc: at24: describe platform_data with kernel_doc\n  i2c: Move I2C_EG20T option to the right place.\n  i2c: Support for Netlogic XLR/XLS I2C controller.\n  i2c: mpc: Add support for SMBUS_READ_BLOCK_DATA\n  i2c: versatile: Add Device Tree support\n"
    },
    {
      "commit": "475c77edf826333aa61625f49d6a2bec26ecb5a6",
      "tree": "8e1c6c319e347cd3c649fdb0b3ab45971c6b19e7",
      "parents": [
        "934e18b5cb4531cc6e81865bf54115cfd21d1ac6",
        "1488d5158dcd612fcdaf6b642451b026ee8bbcbb"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Mar 23 14:02:12 2012 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Mar 23 14:02:12 2012 -0700"
      },
      "message": "Merge branch \u0027linux-next\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/jbarnes/pci\n\nPull PCI changes (including maintainer change) from Jesse Barnes:\n \"This pull has some good cleanups from Bjorn and Yinghai, as well as\n  some more code from Yinghai to better handle resource re-allocation\n  when enabled.\n\n  There\u0027s also a new initcall_debug feature from Arjan which will print\n  out quirk timing information to help identify slow quirks for fixing\n  or refinement (Yinghai sent in a few patches to do just that once the\n  new debug code landed).\n\n  Beyond that, I\u0027m handing off PCI maintainership to Bjorn Helgaas.\n  He\u0027s been a core PCI and Linux contributor for some time now, and has\n  kindly volunteered to take over.  I just don\u0027t feel I have the time\n  for PCI review and work that it deserves lately (I\u0027ve taken on some\n  other projects), and haven\u0027t been as responsive lately as I\u0027d like, so\n  I approached Bjorn asking if he\u0027d like to manage things.  He\u0027s going\n  to give it a try, and I\u0027m confident he\u0027ll do at least as well as I\n  have in keeping the tree managed, patches flowing, and keeping things\n  stable.\"\n\nFix up some fairly trivial conflicts due to other cleanups (mips device\nresource fixup cleanups clashing with list handling cleanup, ppc iseries\nremoval clashing with pci_probe_only cleanup etc)\n\n* \u0027linux-next\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/jbarnes/pci: (112 commits)\n  PCI: Bjorn gets PCI hotplug too\n  PCI: hand PCI maintenance over to Bjorn Helgaas\n  unicore32/PCI: move \u003casm-generic/pci-bridge.h\u003e include to asm/pci.h\n  sparc/PCI: convert devtree and arch-probed bus addresses to resource\n  powerpc/PCI: allow reallocation on PA Semi\n  powerpc/PCI: convert devtree bus addresses to resource\n  powerpc/PCI: compute I/O space bus-to-resource offset consistently\n  arm/PCI: don\u0027t export pci_flags\n  PCI: fix bridge I/O window bus-to-resource conversion\n  x86/PCI: add spinlock held check to \u0027pcibios_fwaddrmap_lookup()\u0027\n  PCI / PCIe: Introduce command line option to disable ARI\n  PCI: make acpihp use __pci_remove_bus_device instead\n  PCI: export __pci_remove_bus_device\n  PCI: Rename pci_remove_behind_bridge to pci_stop_and_remove_behind_bridge\n  PCI: Rename pci_remove_bus_device to pci_stop_and_remove_bus_device\n  PCI: print out PCI device info along with duration\n  PCI: Move \"pci reassigndev resource alignment\" out of quirks.c\n  PCI: Use class for quirk for usb host controller fixup\n  PCI: Use class for quirk for ti816x class fixup\n  PCI: Use class for quirk for intel e100 interrupt fixup\n  ...\n"
    },
    {
      "commit": "934e18b5cb4531cc6e81865bf54115cfd21d1ac6",
      "tree": "c9e9398648f8be6948f41bf879e8962812418088",
      "parents": [
        "a20ae85abaefb02cc0edf19c34f78d19437c1cf1",
        "8a78335442cea429afb2b964318b6e257448ea00"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Mar 23 10:07:16 2012 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Mar 23 10:07:16 2012 -0700"
      },
      "message": "Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net\n\nPull networking fixes from David Miller:\n\n 1) L2TP doesn\u0027t get autoloaded when you try to open an L2TP socket due\n    to a missing module alias, fix from Benjamin LaHaise.\n\n 2) Netlabel and RDS should propagate gfp flags given to them by\n    callers, fixes from Dan Carpeneter.\n\n 3) Recursive locking fix in usbnet wasn\u0027t bulletproof and can result in\n    objects going away mid-flight due to races, fix from Ming Lei.\n\n 4) Fix up some confusion about a bool module parameter in netfilter\u0027s\n    iptable_filter and ip6table_filter, from Rusty Russell.\n\n 5) If SKB recycling is used via napi_reuse_skb() we end up with\n    different amounts of headroom reserved than we had at the original\n    SKB allocation.  Fix from Eric Dumazet.\n\n 6) Fix races in TG3 driver ring refilling, from Michael Chan.\n\n 7) We have callbacks for IPSEC replay notifiers, but some call sites\n    were not using the ops method and instead were calling one of the\n    implementations directly.  Oops.  Fix from Steffen Klassert.\n\n 8) Fix IP address validation properly in the bonding driver, the\n    previous fix only works with netlink where the subnet mask and IP\n    address are changed in one atomic operation.  When \u0027ifconfig\u0027 ioctls\n    are used the IP address and the subnet mask are changed in two\n    distinct operations.  Fix from Andy Gospodarek.\n\n 9) Provide a sky2 module operation to work around power management\n    issues with some BIOSes.  From Stephen Hemminger.\n\n* git://git.kernel.org/pub/scm/linux/kernel/git/davem/net:\n  usbnet: consider device busy at each recieved packet\n  bonding: remove entries for master_ip and vlan_ip and query devices instead\n  netfilter: remove forward module param confusion.\n  usbnet: don\u0027t clear urb-\u003edev in tx_complete\n  usbnet: increase URB reference count before usb_unlink_urb\n  xfrm: Access the replay notify functions via the registered callbacks\n  xfrm: Remove unused xfrm_state from xfrm_state_check_space\n  RDS: use gfp flags from caller in conn_alloc()\n  netlabel: use GFP flags from caller instead of GFP_ATOMIC\n  l2tp: enable automatic module loading for l2tp_ppp\n  cnic: Fix parity error code conflict\n  tg3: Fix RSS ring refill race condition\n  sky2: override for PCI legacy power management\n  net: fix napi_reuse_skb() skb reserve\n"
    },
    {
      "commit": "a20ae85abaefb02cc0edf19c34f78d19437c1cf1",
      "tree": "13174b718a7f7b955b7d79f5427506ad62a3054e",
      "parents": [
        "f0a5ec0e8da4521036799ced340172b2732845a8",
        "1ba0c1720eb0de2d0f3abf84c0b128d10af520d1"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Mar 23 09:29:44 2012 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Mar 23 09:29:44 2012 -0700"
      },
      "message": "Merge tag \u0027for_linus-3.4-rc1\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/jwessel/kgdb\n\nPull KGDB/KDB updates from Jason Wessel:\n \"Fixes:\n   - Fix KDB keyboard repeat scan codes and leaked keyboard events\n   - Fix kernel crash with kdb_printf() for users who compile new\n     kdb_printf()\u0027s in early code\n   - Return all segment registers to gdb on x86_64\n\n  Features:\n   - KDB/KGDB hook the reboot notifier and end user can control if it\n     stops, detaches or does nothing (updated docs as well)\n   - Notify users who use CONFIG_DEBUG_RODATA to use hw breakpoints\"\n\n* tag \u0027for_linus-3.4-rc1\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/jwessel/kgdb:\n  kdb: Add message about CONFIG_DEBUG_RODATA on failure to install breakpoint\n  kdb: Avoid using dbg_io_ops until it is initialized\n  kgdb,debug_core: add the ability to control the reboot notifier\n  KDB: Fix usability issues relating to the \u0027enter\u0027 key.\n  kgdb,debug-core,gdbstub: Hook the reboot notifier for debugger detach\n  kgdb: Respect that flush op is optional\n  kgdb: x86: Return all segment registers also in 64-bit mode\n"
    },
    {
      "commit": "f0a5ec0e8da4521036799ced340172b2732845a8",
      "tree": "8adf82bc86a5259f3bc70916c4ccb12e2e66b102",
      "parents": [
        "e57f146b2837d6a2d04a8ca86cb703f509b00e98",
        "648a182c615272f01b5cda01dc87a16de9f695bb"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Mar 23 09:28:45 2012 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Mar 23 09:28:45 2012 -0700"
      },
      "message": "Merge tag \u0027ktest-v3.4\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/rostedt/linux-ktest\n\nPull ktest changes from Steven Rostedt.\n\n* tag \u0027ktest-v3.4\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/rostedt/linux-ktest:\n  ktest: Allow a test to override REBOOT_ON_SUCCESS\n  ktest: Fix SWITCH_TO_GOOD to also reboot the machine\n  ktest: Add SCP_TO_TARGET_INSTALL option\n  ktest: Add warning when bugs are ignored\n  ktest: Add INSTALL_MOD_STRIP\u003d1 when installing modules\n"
    },
    {
      "commit": "e57f146b2837d6a2d04a8ca86cb703f509b00e98",
      "tree": "0ebde713fc9bae7a0bcf626a5a66219899acd0b3",
      "parents": [
        "7e61b3ff50f59f134054aaf43096c761fafecf0c",
        "5a1f36c90c9b21a7aa31c29a1926b376dd6a11cf"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Mar 23 09:27:40 2012 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Mar 23 09:27:40 2012 -0700"
      },
      "message": "Merge tag \u0027upstream-3.4-rc1\u0027 of git://git.infradead.org/linux-ubifs\n\nPull UBIFS changes from Artem Bityutskiy:\n - Improve error messages\n - Clean-up i_nlink management\n - Minor clean-ups\n\n* tag \u0027upstream-3.4-rc1\u0027 of git://git.infradead.org/linux-ubifs:\n  UBIFS: improve error messages\n  UBIFS: kill CUR_MAX_KEY_LEN macro\n  UBIFS: do not use inc_link when i_nlink is zero\n  UBIFS: make the dbg_lock spinlock static\n  UBIFS: increase dumps loglevel\n  UBIFS: amend recovery debugging message\n"
    },
    {
      "commit": "7e61b3ff50f59f134054aaf43096c761fafecf0c",
      "tree": "f592c876b8c8c3e8b9ba69dd2bd49f57412f6a6e",
      "parents": [
        "6e55f8ed814940b0b7420ed633c08e61702bb8d4",
        "cc831464f839dc2559f896b96d13eaa0366282b0"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Mar 23 09:25:31 2012 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Mar 23 09:25:31 2012 -0700"
      },
      "message": "Merge tag \u0027upstream-3.4-rc1\u0027 of git://git.infradead.org/linux-ubi\n\nPull UBI changes from Artem Bityutskiy:\n - Reduce memory consumption\n - Fix picking unknown blocks\n - Fix error-path in \u0027ubi_scan()\u0027\n - Minor clean-ups\n\n* tag \u0027upstream-3.4-rc1\u0027 of git://git.infradead.org/linux-ubi:\n  UBI: rename MOVE_CANCEL_BITFLIPS to MOVE_TARGET_BITFLIPS\n  UBI: rename peb_buf1 to peb_buf\n  UBI: reduce memory consumption\n  UBI: fix eraseblock picking criteria\n  UBI: fix documentation and improve readability\n  UBI: fix error handling in ubi_scan()\n"
    },
    {
      "commit": "6e55f8ed814940b0b7420ed633c08e61702bb8d4",
      "tree": "6e2afd164e3079c2102770053e7cda217778f8ec",
      "parents": [
        "49d99a2f9c4d033cc3965958a1397b1fad573dd3",
        "381b872cf7942ab8c95de156ce403bd906f3915d"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Mar 23 09:24:07 2012 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Mar 23 09:24:07 2012 -0700"
      },
      "message": "Merge tag \u0027pstore-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/aegl/linux\n\nPull one pstore patch from Tony Luck\n\n* tag \u0027pstore-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/aegl/linux:\n  pstore: Introduce get_reason_str() to pstore\n"
    },
    {
      "commit": "49d99a2f9c4d033cc3965958a1397b1fad573dd3",
      "tree": "cda1849d49d40d2f25773e86605c55bc6745cf1f",
      "parents": [
        "1c3ddfe5ab886c4dc0443535e95ad8e41c41d0e5",
        "f074211f6041305b645669464343d504f4e6a290"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Mar 23 09:19:22 2012 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Mar 23 09:19:22 2012 -0700"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://oss.sgi.com/xfs/xfs\n\nPull XFS updates from Ben Myers:\n \"Scalability improvements for dquots, log grant code cleanups, plus\n  bugfixes and cleanups large and small\"\n\nFix up various trivial conflicts that were due to some of the earlier\npatches already having been integrated into v3.3 as bugfixes, and then\nthere were development patches on top of those.  Easily merged by just\ntaking the newer version from the pulled branch.\n\n* \u0027for-linus\u0027 of git://oss.sgi.com/xfs/xfs: (45 commits)\n  xfs: fallback to vmalloc for large buffers in xfs_getbmap\n  xfs: fallback to vmalloc for large buffers in xfs_attrmulti_attr_get\n  xfs: remove remaining scraps of struct xfs_iomap\n  xfs: fix inode lookup race\n  xfs: clean up minor sparse warnings\n  xfs: remove the global xfs_Gqm structure\n  xfs: remove the per-filesystem list of dquots\n  xfs: use per-filesystem radix trees for dquot lookup\n  xfs: per-filesystem dquot LRU lists\n  xfs: use common code for quota statistics\n  xfs: reimplement fdatasync support\n  xfs: split in-core and on-disk inode log item fields\n  xfs: make xfs_inode_item_size idempotent\n  xfs: log timestamp updates\n  xfs: log file size updates at I/O completion time\n  xfs: log file size updates as part of unwritten extent conversion\n  xfs: do not require an ioend for new EOF calculation\n  xfs: use per-filesystem I/O completion workqueues\n  quota: make Q_XQUOTASYNC a noop\n  xfs: include reservations in quota reporting\n  ...\n"
    },
    {
      "commit": "1c3ddfe5ab886c4dc0443535e95ad8e41c41d0e5",
      "tree": "c6684be0e98deb7220153c410be7c1fb7cb0dbbf",
      "parents": [
        "f63d395d47f37a4fe771e6d4b1db9d2cdae5ffc5",
        "3dd933061d3a4f33fb6ba1616e88fa55a8b8cb9c"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Mar 23 09:07:15 2012 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Mar 23 09:07:15 2012 -0700"
      },
      "message": "Merge git://git.samba.org/sfrench/cifs-2.6\n\nPull CIFS fixes from Steve French\n\n* git://git.samba.org/sfrench/cifs-2.6:\n  cifs: clean up ordering in exit_cifs\n  cifs: clean up call to cifs_dfs_release_automount_timer()\n  CIFS: Delete echo_retries module parm\n  CIFS: Prepare credits code for a slot reservation\n  CIFS: Make wait_for_free_request killable\n  CIFS: Introduce credit-based flow control\n  CIFS: Simplify inFlight logic\n  cifs: fix issue mounting of DFS ROOT when redirecting from one domain controller to the next\n  CIFS: Respect negotiated MaxMpxCount\n  CIFS: Fix a spurious error in cifs_push_posix_locks\n"
    },
    {
      "commit": "f63d395d47f37a4fe771e6d4b1db9d2cdae5ffc5",
      "tree": "3448a14ae965802adb963762cadeb9989ce4caa2",
      "parents": [
        "643ac9fc5429e85b8b7f534544b80bcc4f34c367",
        "5a7c9eec9fde1da0e3adf0a4ddb64ff2a324a492"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Mar 23 08:53:47 2012 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Mar 23 08:53:47 2012 -0700"
      },
      "message": "Merge tag \u0027nfs-for-3.4-1\u0027 of git://git.linux-nfs.org/projects/trondmy/linux-nfs\n\nPull NFS client updates for Linux 3.4 from Trond Myklebust:\n \"New features include:\n   - Add NFS client support for containers.\n\n     This should enable most of the necessary functionality, including\n     lockd support, and support for rpc.statd, NFSv4 idmapper and\n     RPCSEC_GSS upcalls into the correct network namespace from which\n     the mount system call was issued.\n\n   - NFSv4 idmapper scalability improvements\n\n     Base the idmapper cache on the keyring interface to allow\n     concurrent access to idmapper entries.  Start the process of\n     migrating users from the single-threaded daemon-based approach to\n     the multi-threaded request-key based approach.\n\n   - NFSv4.1 implementation id.\n\n     Allows the NFSv4.1 client and server to mutually identify each\n     other for logging and debugging purposes.\n\n   - Support the \u0027vers\u003d4.1\u0027 mount option for mounting NFSv4.1 instead of\n     having to use the more counterintuitive \u0027vers\u003d4,minorversion\u003d1\u0027.\n\n   - SUNRPC tracepoints.\n\n     Start the process of adding tracepoints in order to improve\n     debugging of the RPC layer.\n\n   - pNFS object layout support for autologin.\n\n  Important bugfixes include:\n\n   - Fix a bug in rpc_wake_up/rpc_wake_up_status that caused them to\n     fail to wake up all tasks when applied to priority waitqueues.\n\n   - Ensure that we handle read delegations correctly, when we try to\n     truncate a file.\n\n   - A number of fixes for NFSv4 state manager loops (mostly to do with\n     delegation recovery).\"\n\n* tag \u0027nfs-for-3.4-1\u0027 of git://git.linux-nfs.org/projects/trondmy/linux-nfs: (224 commits)\n  NFS: fix sb-\u003es_id in nfs debug prints\n  xprtrdma: Remove assumption that each segment is \u003c\u003d PAGE_SIZE\n  xprtrdma: The transport should not bug-check when a dup reply is received\n  pnfs-obj: autologin: Add support for protocol autologin\n  NFS: Remove nfs4_setup_sequence from generic rename code\n  NFS: Remove nfs4_setup_sequence from generic unlink code\n  NFS: Remove nfs4_setup_sequence from generic read code\n  NFS: Remove nfs4_setup_sequence from generic write code\n  NFS: Fix more NFS debug related build warnings\n  SUNRPC/LOCKD: Fix build warnings when CONFIG_SUNRPC_DEBUG is undefined\n  nfs: non void functions must return a value\n  SUNRPC: Kill compiler warning when RPC_DEBUG is unset\n  SUNRPC/NFS: Add Kbuild dependencies for NFS_DEBUG/RPC_DEBUG\n  NFS: Use cond_resched_lock() to reduce latencies in the commit scans\n  NFSv4: It is not safe to dereference lsp-\u003els_state in release_lockowner\n  NFS: ncommit count is being double decremented\n  SUNRPC: We must not use list_for_each_entry_safe() in rpc_wake_up()\n  Try using machine credentials for RENEW calls\n  NFSv4.1: Fix a few issues in filelayout_commit_pagelist\n  NFSv4.1: Clean ups and bugfixes for the pNFS read/writeback/commit code\n  ...\n"
    },
    {
      "commit": "643ac9fc5429e85b8b7f534544b80bcc4f34c367",
      "tree": "f6db7d7e8a08761119d478ef7adf5bef4402f786",
      "parents": [
        "437538267b672f9320833907f1b5acbb2605f4be"
      ],
      "author": {
        "name": "Hugh Dickins",
        "email": "hughd@google.com",
        "time": "Fri Mar 23 02:57:31 2012 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Mar 23 08:34:40 2012 -0700"
      },
      "message": "mm: fix testorder interaction between two kswapd patches\n\nAdjusting cc715d99e529 \"mm: vmscan: forcibly scan highmem if there are\ntoo many buffer_heads pinning highmem\" for -stable reveals that it was\nslightly wrong once on top of fe2c2a106663 \"vmscan: reclaim at order 0\nwhen compaction is enabled\", which specifically adds testorder for the\nzone_watermark_ok_safe() test.\n\nSigned-off-by: Hugh Dickins \u003chughd@google.com\u003e\nAcked-by: Mel Gorman \u003cmel@csn.ul.ie\u003e\nAcked-by: Rik van Riel \u003criel@redhat.com\u003e\nCc: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "437538267b672f9320833907f1b5acbb2605f4be",
      "tree": "d10173b35a5b86bc037bb2ece1b406d5575a2094",
      "parents": [
        "9586c959bfc917695893bef0102433a7d0675691",
        "6bff98b455cf3e666fd0e3d0d908eba874de0eee"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Mar 22 20:43:40 2012 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Mar 22 20:43:40 2012 -0700"
      },
      "message": "Merge tag \u0027fbdev-updates-for-3.4\u0027 of git://github.com/schandinat/linux-2.6\n\nPull fbdev updates for 3.4 from Florian Tobias Schandinat:\n - drivers for Samsung Exynos MIPI DSI and display port\n - i740fb to support those old Intel chips\n - large updates to OMAP, viafb and sh_mobile_lcdcfb\n - some updates to s3c-fb and udlfb, few patches to others\n\nFix up conflicts in drivers/video/udlfb.c due to Key Sievers\u0027 fix making\nit in twice.\n\n* tag \u0027fbdev-updates-for-3.4\u0027 of git://github.com/schandinat/linux-2.6: (156 commits)\n  Revert \"video:uvesafb: Fix oops that uvesafb try to execute NX-protected page\"\n  OMAPDSS: register dss drivers in module init\n  video: pxafb: add clk_prepare/clk_unprepare calls\n  fbdev: bfin_adv7393fb: Drop needless include\n  fbdev: sh_mipi_dsi: add extra phyctrl for sh_mipi_dsi_info\n  fbdev: remove dependency of FB_SH_MOBILE_MERAM from FB_SH_MOBILE_LCDC\n  Revert \"MAINTAINERS: add entry for exynos mipi display drivers\"\n  fbdev: da8xx: add support for SP10Q010 display\n  fbdev: da8xx:: fix reporting of the display timing info\n  drivers/video/pvr2fb.c: ensure arguments to request_irq and free_irq are compatible\n  OMAPDSS: APPLY: fix clearing shadow dirty flag with manual update\n  fbdev: sh_mobile_meram: Implement system suspend/resume\n  fbdev: sh_mobile_meram: Remove unneeded sanity checks\n  fbdev: sh_mobile_meram: Don\u0027t perform update in register operation\n  arm: mach-shmobile: Constify sh_mobile_meram_cfg structures\n  fbdev: sh_mobile_lcdc: Don\u0027t store copy of platform data\n  fbdev: sh_mobile_meram: Remove unused sh_mobile_meram_icb_cfg fields\n  arm: mach-shmobile: Don\u0027t set MERAM ICB numbers in platform data\n  fbdev: sh_mobile_meram: Allocate ICBs automatically\n  fbdev: sh_mobile_meram: Use genalloc to manage MERAM allocation\n  ...\n"
    },
    {
      "commit": "9586c959bfc917695893bef0102433a7d0675691",
      "tree": "c8b89e40b7a04c3150e50785e7c48b67df360c83",
      "parents": [
        "34699403e9916060af8ae23f5e4705a6c078e79d",
        "addfd8a09e1f434a73b3d87d36ef050c73511d2b"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Mar 22 20:33:14 2012 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Mar 22 20:33:14 2012 -0700"
      },
      "message": "Merge tag \u0027regmap-3.4\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/broonie/regmap\n\nPull regmap updates from Mark Brown:\n \"Things are really quieting down with the regmap API, while we\u0027re still\n  seeing a trickle of new features coming in they\u0027re getting much\n  smaller than they were.  It\u0027s also nice to have some features which\n  support other subsystems building infrastructure on top of regmap.\n  Highlights include:\n\n  - Support for padding between the register and the value when\n    interacting with the device, sometimes needed for fast interfaces.\n  - Support for applying register updates to the device when restoring\n    the register state.  This is intended to be used to apply updates\n    supplied by manufacturers for tuning the performance of the device\n    (many of which are to undocumented registers which aren\u0027t otherwise\n    covered).\n  - Support for multi-register operations on cached registers.\n  - Support for syncing only part of the register cache.\n  - Stubs and parameter query functions intended to make it easier for\n    other subsystems to build infrastructure on top of the regmap API.\n\n  plus a few driver updates making use of the new features which it was\n  easier to merge via this tree.\"\n\n* tag \u0027regmap-3.4\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/broonie/regmap: (41 commits)\n  regmap: Fix future missing prototype of devres_alloc() and friends\n  regmap: Rejig struct declarations for stubbed API\n  regmap: Fix rbtree block base in sync\n  regcache: Make sure we sync register 0 in an rbtree cache\n  regmap: delete unused module.h from drivers/base/regmap files\n  regmap: Add stub for regcache_sync_region()\n  mfd: Improve performance of later WM1811 revisions\n  regmap: Fix x86_64 breakage\n  regmap: Allow drivers to sync only part of the register cache\n  regmap: Supply ranges to the sync operations\n  regmap: Add tracepoints for cache only and cache bypass\n  regmap: Mark the cache as clean after a successful sync\n  regmap: Remove default cache sync implementation\n  regmap: Skip hardware defaults for LZO caches\n  regmap: Expose the driver name in debugfs\n  mfd: wm8400: Convert to devm_regmap_init_i2c()\n  mfd: wm831x: Convert to devm_regmap_init()\n  mfd: wm8994: Convert to devm_regmap_init()\n  mfd/ASoC: Convert WM8994 driver to use regmap patches\n  mfd: Add __devinit and __devexit annotations in wm8994\n  ...\n"
    },
    {
      "commit": "34699403e9916060af8ae23f5e4705a6c078e79d",
      "tree": "e149ca6354171caf61132d80508ad878b00878c9",
      "parents": [
        "7fc86a7908a4e9eb2da4b6498f86193d113842d3",
        "d1bbd20972936b9b178fda3eb1ec417cb27fdc01"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Mar 22 20:31:15 2012 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Mar 22 20:31:15 2012 -0700"
      },
      "message": "Merge tag \u0027firewire-updates\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/ieee1394/linux1394\n\nPull IEEE 1394 (FireWire) subsystem updates post v3.3 from Stefan Richter:\n\n - Some SBP-2 initiator fixes, side product from ongoing work on a target.\n\n - Reintroduction of an isochronous I/O feature of the older ieee1394 driver\n   stack (flush buffer completions); it was evidently rarely used but not\n   actually unused.  Matching libraw1394 code is already available.\n\n - Be sure to prefix all kernel log messages with device name or card name,\n   and other logging related cleanups.\n\n - Misc other small cleanups, among them a small API change that affects\n   sound/firewire/ too. Clemens Ladisch is aware of it.\n\n* tag \u0027firewire-updates\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/ieee1394/linux1394: (26 commits)\n  firewire: allow explicit flushing of iso packet completions\n  firewire: prevent dropping of completed iso packet header data\n  firewire: ohci: factor out iso completion flushing code\n  firewire: ohci: simplify iso header pointer arithmetic\n  firewire: ohci: optimize control bit checks\n  firewire: ohci: remove unused excess_bytes field\n  firewire: ohci: copy_iso_headers(): make comment match the code\n  firewire: cdev: fix IR multichannel event documentation\n  firewire: ohci: fix too-early completion of IR multichannel buffers\n  firewire: ohci: move runtime debug facility out of #ifdef\n  firewire: tone down some diagnostic log messages\n  firewire: sbp2: replace a GFP_ATOMIC allocation\n  firewire: sbp2: Fix SCSI sense data mangling\n  firewire: sbp2: Ignore SBP-2 targets on the local node\n  firewire: sbp2: Take into account Unit_Unique_ID\n  firewire: nosy: Use the macro DMA_BIT_MASK().\n  firewire: core: convert AR-req handler lock from _irqsave to _bh\n  firewire: core: fix race at address_handler unregistration\n  firewire: core: remove obsolete comment\n  firewire: core: prefix log messages with card name\n  ...\n"
    },
    {
      "commit": "7fc86a7908a4e9eb2da4b6498f86193d113842d3",
      "tree": "c1b2faab48d2a6003c8e8efae5f356a4e792ce0a",
      "parents": [
        "90597b6cfc1fc9926a4d54f09bbf5b3254b1b028",
        "51dddfe839a0ebcb5ff61a779e3f2768714f9957"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Mar 22 20:25:50 2012 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Mar 22 20:25:50 2012 -0700"
      },
      "message": "Merge tag \u0027pinctrl-for-3.4\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/linusw/linux-pinctrl\n\nPull pinctrl updates for v3.4 from Linus Walleij (*):\n - Switches the PXA 168, 910 and MMP over to use pinctrl\n - Locking revamped\n - Massive refactorings...\n - Reform the driver API to use multiple states\n - Support pin config in the mapping tables\n - Pinctrl drivers for the nVidia Tegra series\n - Generic pin config support lib for simple pin controllers\n - Implement pin config for the U300\n\n* tag \u0027pinctrl-for-3.4\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/linusw/linux-pinctrl: (48 commits)\n  ARM: u300: configure some pins as an example\n  pinctrl: support pinconfig on the U300\n  pinctrl/coh901: use generic pinconf enums and parameters\n  pinctrl: introduce generic pin config\n  pinctrl: fix error path in pinconf_map_to_setting()\n  pinctrl: allow concurrent gpio and mux function ownership of pins\n  pinctrl: forward-declare struct device\n  pinctrl: split pincontrol states into its own header\n  pinctrl: include machine header to core.h\n  ARM: tegra: Select PINCTRL Kconfig variables\n  pinctrl: add a driver for NVIDIA Tegra\n  pinctrl: Show selected function and group in pinmux-pins debugfs\n  pinctrl: enhance mapping table to support pin config operations\n  pinctrl: API changes to support multiple states per device\n  pinctrl: add usecount to pins for muxing\n  pinctrl: refactor struct pinctrl handling in core.c vs pinmux.c\n  pinctrl: fix and simplify locking\n  pinctrl: fix the pin descriptor kerneldoc\n  pinctrl: assume map table entries can\u0027t have a NULL name field\n  pinctrl: introduce PINCTRL_STATE_DEFAULT, define hogs as that state\n  ...\n\n(*) What is it with all these Linuses these days? There\u0027s a Linus at\n    google too.  Some day I will get myself my own broadsword, and run\n    around screaming \"There can be only one\".\n\n    I used to be _special_ dammit. Snif.\n"
    },
    {
      "commit": "90597b6cfc1fc9926a4d54f09bbf5b3254b1b028",
      "tree": "36e4f213e15dcc85620c7e0ccca42883d412fb8e",
      "parents": [
        "7bfe0e66d5da32961f0060fc5d96b739b1ed64b9",
        "b8cec3c253a2a001e463c43260fb75fb3223a04d"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Mar 22 20:22:30 2012 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Mar 22 20:22:30 2012 -0700"
      },
      "message": "Merge tag \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/jgarzik/libata-dev\n\nPull libata updates from Jeff Garzik:\n\n 1) AHCI regression fix.  A recent \"make driver conform to spec\" change\n    broke on deployed hardware.  Make new behavior optional, rather than\n    default, turning it on only for specific embedded platforms that\n    need this.\n\n    Everybody else runs in the famous \"non conformant but working\" mode.\n\n 2) pata_cmd64x, pata_legacy cleanups\n\n 3) new Intel SATA PCI IDs\n\n 4) misc minor vendor feature additions\n\n* tag \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/jgarzik/libata-dev:\n  pata_cmd64x: implement sff_irq_check() method\n  pata_cmd64x: implement sff_irq_clear() method\n  pata_cmd64x: use interrupt status from MRDMODE register\n  pata_cmd64x: turn string of *if* statements into *switch*\n  drivers/ata/pata_mpc52xx.c: clean up error handling code\n  ahci_platform: add STRICT_AHCI platform type\n  ahci: move AHCI_HFLAGS() macro to ahci.h\n  ahci: add AHCI_HFLAG_DELAY_ENGINE host flag\n  sata_fsl: add support for interrupt coalsecing feature\n  ata/pata_arasan_cf: Add Hibernation support\n  pata_legacy: correctly mask recovery field for HT6560B\n  ata_piix: IDE-mode SATA patch for Intel Lynx Point DeviceIDs\n  ahci: AHCI-mode SATA patch for Intel Lynx Point DeviceIDs\n"
    },
    {
      "commit": "7bfe0e66d5da32961f0060fc5d96b739b1ed64b9",
      "tree": "6d5dcf77248b574bb0c50930bbf9030aafb99fce",
      "parents": [
        "6a76a6992341faab0ef31e7d97000e0cf336d0ba",
        "10ce3cc919f50c2043b41ca968b43c26a3672600"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Mar 22 20:20:18 2012 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Mar 22 20:20:18 2012 -0700"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/dtor/input\n\nPull input subsystem updates from Dmitry Torokhov:\n \"- we finally merged driver for USB version of Synaptics touchpads\n    (I guess most commonly found in IBM/Lenovo keyboard/touchpad combo);\n\n   - a bunch of new drivers for embedded platforms (Cypress\n     touchscreens, DA9052 OnKey, MAX8997-haptic, Ilitek ILI210x\n     touchscreens, TI touchscreen);\n\n   - input core allows clients to specify desired clock source for\n     timestamps on input events (EVIOCSCLOCKID ioctl);\n\n   - input core allows querying state of all MT slots for given event\n     code via EVIOCGMTSLOTS ioctl;\n\n   - various driver fixes and improvements.\"\n\n* \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/dtor/input: (45 commits)\n  Input: ili210x - add support for Ilitek ILI210x based touchscreens\n  Input: altera_ps2 - use of_match_ptr()\n  Input: synaptics_usb - switch to module_usb_driver()\n  Input: convert I2C drivers to use module_i2c_driver()\n  Input: convert SPI drivers to use module_spi_driver()\n  Input: omap4-keypad - move platform_data to \u003clinux/platform_data\u003e\n  Input: kxtj9 - who_am_i check value and initial data rate fixes\n  Input: add driver support for MAX8997-haptic\n  Input: tegra-kbc - revise device tree support\n  Input: of_keymap - add device tree bindings for simple key matrices\n  Input: wacom - fix physical size calculation for 3rd-gen Bamboo\n  Input: twl4030-vibra - really switch from #if to #ifdef\n  Input: hp680_ts_input - ensure arguments to request_irq and free_irq are compatible\n  Input: max8925_onkey - avoid accessing input device too early\n  Input: max8925_onkey - allow to be used as a wakeup source\n  Input: atmel-wm97xx - convert to dev_pm_ops\n  Input: atmel-wm97xx - set driver owner\n  Input: add cyttsp touchscreen maintainer entry\n  Input: cyttsp - remove useless checks in cyttsp_probe()\n  Input: usbtouchscreen - add support for Data Modul EasyTouch TP 72037\n  ...\n"
    },
    {
      "commit": "6a76a6992341faab0ef31e7d97000e0cf336d0ba",
      "tree": "a585bf55b557ad746ff951119feb0a8bd014de08",
      "parents": [
        "d4c6fa73fe984e504d52f3d6bba291fd76fe49f7",
        "ff0a70fe053614e763eb3ac88bfea9c5615fce3b"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Mar 22 20:19:30 2012 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Mar 22 20:19:30 2012 -0700"
      },
      "message": "Merge git://git.kernel.org/pub/scm/linux/kernel/git/herbert/crypto-2.6\n\nPull crypto fixes from Herbert Xu:\n \"This fixes a build problem where two crypto modules both try to export\n  the same symbols (which shouldn\u0027t have been exported in the first\n  place).\"\n\n* git://git.kernel.org/pub/scm/linux/kernel/git/herbert/crypto-2.6:\n  crypto: twofish-x86_64-3way - module init/exit functions should be static\n  crypto: camellia-x86_64 - module init/exit functions should be static\n"
    },
    {
      "commit": "d4c6fa73fe984e504d52f3d6bba291fd76fe49f7",
      "tree": "47842ddebb2a48cc1513b36fba18835678e2b94e",
      "parents": [
        "aab008db8063364dc3c8ccf4981c21124866b395",
        "4bc25af79ec54b79266148f8c1b84bb1e7ff2621"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Mar 22 19:59:19 2012 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Mar 22 20:16:14 2012 -0700"
      },
      "message": "Merge tag \u0027stable/for-linus-3.4-tag\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/konrad/xen\n\nPull xen updates from Konrad Rzeszutek Wilk:\n \"which has three neat features:\n\n   - PV multiconsole support, so that there can be hvc1, hvc2, etc; This\n     can be used in HVM and in PV mode.\n\n   - P-state and C-state power management driver that uploads said power\n     management data to the hypervisor.  It also inhibits cpufreq\n     scaling drivers to load so that only the hypervisor can make power\n     management decisions - fixing a weird perf bug.\n\n     There is one thing in the Kconfig that you won\u0027t like: \"default y\n     if (X86_ACPI_CPUFREQ \u003d y || X86_POWERNOW_K8 \u003d y)\" (note, that it\n     all depends on CONFIG_XEN which depends on CONFIG_PARAVIRT which by\n     default is off).  I\u0027ve a fix to convert that boolean expression\n     into \"default m\" which I am going to post after the cpufreq git\n     pull - as the two patches to make this work depend on a fix in Dave\n     Jones\u0027s tree.\n\n   - Function Level Reset (FLR) support in the Xen PCI backend.\n\n  Fixes:\n\n   - Kconfig dependencies for Xen PV keyboard and video\n   - Compile warnings and constify fixes\n   - Change over to use percpu_xxx instead of this_cpu_xxx\"\n\nFix up trivial conflicts in drivers/tty/hvc/hvc_xen.c due to changes to\na removed commit.\n\n* tag \u0027stable/for-linus-3.4-tag\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/konrad/xen:\n  xen kconfig: relax INPUT_XEN_KBDDEV_FRONTEND deps\n  xen/acpi-processor: C and P-state driver that uploads said data to hypervisor.\n  xen: constify all instances of \"struct attribute_group\"\n  xen/xenbus: ignore console/0\n  hvc_xen: introduce HVC_XEN_FRONTEND\n  hvc_xen: implement multiconsole support\n  hvc_xen: support PV on HVM consoles\n  xenbus: don\u0027t free other end details too early\n  xen/enlighten: Expose MWAIT and MWAIT_LEAF if hypervisor OKs it.\n  xen/setup/pm/acpi: Remove the call to boot_option_idle_override.\n  xenbus: address compiler warnings\n  xen: use this_cpu_xxx replace percpu_xxx funcs\n  xen/pciback: Support pci_reset_function, aka FLR or D3 support.\n  pci: Introduce __pci_reset_function_locked to be used when holding device_lock.\n  xen: Utilize the restore_msi_irqs hook.\n"
    },
    {
      "commit": "8a78335442cea429afb2b964318b6e257448ea00",
      "tree": "45010fe7e377a19373532e7b1ae8615e282f36ed",
      "parents": [
        "eaddcd76903c28e84bb452a35835babb0800a2c4"
      ],
      "author": {
        "name": "Oliver Neukum",
        "email": "oliver@neukum.org",
        "time": "Sat Mar 03 18:45:07 2012 +0100"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Mar 22 23:04:27 2012 -0400"
      },
      "message": "usbnet: consider device busy at each recieved packet\n\nusbnet should centrally handle busy reporting in the rx path\nso subdrivers need not worry. This hurts use cases which do\nrx only or predominantly.\n\nSigned-off-by: Oliver Neukum \u003coneukum@suse.de\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "aab008db8063364dc3c8ccf4981c21124866b395",
      "tree": "72914203f4decb023efdaabd0301a62d742dfa8c",
      "parents": [
        "4f5b1affdda3e0c48cac674182f52004137b0ffc",
        "16c0cfa425b8e1488f7a1873bd112a7a099325f0"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Mar 22 19:52:47 2012 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Mar 22 19:52:47 2012 -0700"
      },
      "message": "Merge tag \u0027stable/for-linus-3.4\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/konrad/mm\n\nPull cleancache changes from Konrad Rzeszutek Wilk:\n \"This has some patches for the cleancache API that should have been\n  submitted a _long_ time ago.  They are basically cleanups:\n\n   - rename of flush to invalidate\n\n   - moving reporting of statistics into debugfs\n\n   - use __read_mostly as necessary.\n\n  Oh, and also the MAINTAINERS file change.  The files (except the\n  MAINTAINERS file) have been in #linux-next for months now.  The late\n  addition of MAINTAINERS file is a brain-fart on my side - didn\u0027t\n  realize I needed that just until I was typing this up - and I based\n  that patch on v3.3 - so the tree is on top of v3.3.\"\n\n* tag \u0027stable/for-linus-3.4\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/konrad/mm:\n  MAINTAINERS: Adding cleancache API to the list.\n  mm: cleancache: Use __read_mostly as appropiate.\n  mm: cleancache: report statistics via debugfs instead of sysfs.\n  mm: zcache/tmem/cleancache: s/flush/invalidate/\n  mm: cleancache: s/flush/invalidate/\n"
    },
    {
      "commit": "eaddcd76903c28e84bb452a35835babb0800a2c4",
      "tree": "97e512e21955da69d434a34b4e073ba880ec7d3d",
      "parents": [
        "523f610e1be2a4afca605962e137064378883c5f"
      ],
      "author": {
        "name": "Andy Gospodarek",
        "email": "andy@greyhouse.net",
        "time": "Thu Mar 22 16:14:29 2012 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Mar 22 22:36:17 2012 -0400"
      },
      "message": "bonding: remove entries for master_ip and vlan_ip and query devices instead\n\nThe following patch aimed to resolve an issue where secondary, tertiary,\netc. addresses added to bond interfaces could overwrite the\nbond-\u003emaster_ip and vlan_ip values.\n\n        commit 917fbdb32f37e9a93b00bb12ee83532982982df3\n        Author: Henrik Saavedra Persson \u003chenrik.e.persson@ericsson.com\u003e\n        Date:   Wed Nov 23 23:37:15 2011 +0000\n\n            bonding: only use primary address for ARP\n\nThat patch was good because it prevented bonds using ARP monitoring from\nsending frames with an invalid source IP address.  Unfortunately, it\ndidn\u0027t always work as expected.\n\nWhen using an ioctl (like ifconfig does) to set the IP address and\nnetmask, 2 separate ioctls are actually called to set the IP and netmask\nif the mask chosen doesn\u0027t match the standard mask for that class of\naddress.  The first ioctl did not have a mask that matched the one in\nthe primary address and would still cause the device address to be\noverwritten.  The second ioctl that was called to set the mask would\nthen detect as secondary and ignored, but the damage was already done.\n\nThis was not an issue when using an application that used netlink\nsockets as the setting of IP and netmask came down at once.  The\ninconsistent behavior between those two interfaces was something that\nneeded to be resolved.\n\nWhile I was thinking about how I wanted to resolve this, Ralf Zeidler\ncame with a patch that resolved this on a RHEL kernel by keeping a full\nshadow of the entries in dev-\u003eifa_list for the bonding device and vlan\ndevices in the bonding driver.  I didn\u0027t like the duplication of the\nlist as I want to see the \u0027bonding\u0027 struct and code shrink rather than\ngrow, but liked the general idea.\n\nAs the Subject indicates this patch drops the master_ip and vlan_ip\nelements from the \u0027bonding\u0027 and \u0027vlan_entry\u0027 structs, respectively.\nThis can be done because a device\u0027s address-list is now traversed to\ndetermine the optimal source IP address for ARP requests and for checks\nto see if the bonding device has a particular IP address.  This code\ncould have all be contained inside the bonding driver, but it made more\nsense to me to EXPORT and call inet_confirm_addr since it did exactly\nwhat was needed.\n\nI tested this and a backported patch and everything works as expected.\nRalf also helped with verification of the backported patch.\n\nThanks to Ralf for all his help on this.\n\nv2: Whitespace and organizational changes based on suggestions from Jay\nVosburgh and Dave Miller.\n\nv3: Fixup incorrect usage of rcu_read_unlock based on Dave Miller\u0027s\nsuggestion.\n\nSigned-off-by: Andy Gospodarek \u003candy@greyhouse.net\u003e\nCC: Ralf Zeidler \u003cralf.zeidler@nsn.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "523f610e1be2a4afca605962e137064378883c5f",
      "tree": "82923297355fccb70a03c5d2108bc5a6030212a2",
      "parents": [
        "5d5440a835710d09f0ef18da5000541ec98b537a"
      ],
      "author": {
        "name": "Rusty Russell",
        "email": "rusty@rustcorp.com.au",
        "time": "Thu Mar 22 12:27:06 2012 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Mar 22 22:36:17 2012 -0400"
      },
      "message": "netfilter: remove forward module param confusion.\n\nIt used to be an int, and it got changed to a bool parameter at least\n7 years ago.  It happens that NF_ACCEPT and NF_DROP are 0 and 1, so\nthis works, but it\u0027s unclear, and the check that it\u0027s in range is not\nrequired.\n\nReported-by: Dan Carpenter \u003cdan.carpenter@oracle.com\u003e\nSigned-off-by: Rusty Russell \u003crusty@rustcorp.com.au\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "4f5b1affdda3e0c48cac674182f52004137b0ffc",
      "tree": "463b738156ee9ddfe7792324e501e523499d1661",
      "parents": [
        "db1417967959569599da2a4bd0ffb93b17ad795f",
        "1762275e7a08e808387999f582430172a02758a5"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Mar 22 18:20:02 2012 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Mar 22 18:20:02 2012 -0700"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/lliubbo/blackfin\n\nPull blackfin updates from Bob Liu\n\n* \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/lliubbo/blackfin: (24 commits)\n  blackfin: clean up string bfin_dma_5xx after rename.\n  blackfin:dma: rename bfin_dma_5xx.c to bfin_dma.c\n  bf548: ssm2602: Add ssm2602 platform data into bf548 ezkit board file.\n  Blackfin: s/#if CONFIG/#ifdef CONFIG/\n  Blackfin: pnav: delete duplicate linux/export.h include\n  bf561: add ppi DLEN macro for 10bits to 16bits\n  arch: blackfin: udpate defconfig\n  Disintegrate asm/system.h for Blackfin [ver #2]\n  arch/blackfin: don\u0027t generate random mac in bfin_get_ether_addr()\n  Blackfin: wire up new process_vm syscalls\n  blackfin: cleanup anomaly workarounds\n  blackfin: update default defconfig\n  blackfin: thread_info: add suspend flag\n  bfin: add bfin_ad73311_machine platform device\n  blackfin: bf537: stamp: update board file for 193x\n  blackfin: kgdb: skip hardware watchpoint test\n  bf548: add ppi interrupt mask and blanking clocks\n  blackfin: bf561: forgot CSYNC in get_core_lock_noflush\n  spi/bfin_spi: drop bits_per_word from client data\n  blackfin: cplb-mpu: fix page mask table overflow\n  ...\n"
    },
    {
      "commit": "db1417967959569599da2a4bd0ffb93b17ad795f",
      "tree": "08751414d5f4a9e264af924154ed3543a8e573a9",
      "parents": [
        "48aab2f79dfc1357c48ce22ff5c989b52a590069",
        "c6da39f26cfe475704ec521723192e520e8f51b8"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Mar 22 18:15:32 2012 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Mar 22 18:15:32 2012 -0700"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/s390/linux\n\nPull s390 patches from Martin Schwidefsky:\n \"The biggest patch is the rework of the smp code, something I wanted to\n  do for some time.  There are some patches for our various dump methods\n  and one new thing: z/VM LGR detection.  LGR stands for linux-guest-\n  relocation and is the guest migration feature of z/VM.  For debugging\n  purposes we keep a log of the systems where a specific guest has lived.\"\n\nFix up trivial conflict in arch/s390/kernel/smp.c due to the scheduler\ncleanup having removed some code next to removed s390 code.\n\n* \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/s390/linux:\n  [S390] kernel: Pass correct stack for smp_call_ipl_cpu()\n  [S390] Ensure that vmcore_info pointer is never accessed directly\n  [S390] dasd: prevent validate server for offline devices\n  [S390] Remove monolithic build option for zcrypt driver.\n  [S390] stack dump: fix indentation in output\n  [S390] kernel: Add OS info memory interface\n  [S390] Use block_sigmask()\n  [S390] kernel: Add z/VM LGR detection\n  [S390] irq: external interrupt code passing\n  [S390] irq: set __ARCH_IRQ_EXIT_IRQS_DISABLED\n  [S390] zfcpdump: Implement async sdias event processing\n  [S390] Use copy_to_absolute_zero() instead of \"stura/sturg\"\n  [S390] rework idle code\n  [S390] rework smp code\n  [S390] rename lowcore field\n  [S390] Fix gcc 4.6.0 compile warning\n"
    },
    {
      "commit": "48aab2f79dfc1357c48ce22ff5c989b52a590069",
      "tree": "7f690fe147bccc24b7a017845dbe9a99d7978b5f",
      "parents": [
        "f7493e5d9cc10ac97cf1f1579fdc14117460b40b"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Mar 22 17:01:41 2012 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Mar 22 17:01:41 2012 -0700"
      },
      "message": "security: optimize avc_audit() common path\n\navc_audit() did a lot of jumping around and had a big stack frame, all\nfor the uncommon case.\n\nSplit up the uncommon case (which we really can\u0027t make go fast anyway)\ninto its own slow function, and mark the conditional branches\nappropriately for the common likely case.\n\nThis causes avc_audit() to no longer show up as one of the hottest\nfunctions on the branch profiles (the new \"perf -b\" thing), and makes\nthe cycle profiles look really nice and dense too.\n\nThe whole audit path is still annoyingly very much one of the biggest\ncosts of name lookup, so these things are worth optimizing for.  I wish\nwe could just tell people to turn it off, but realistically we do need\nit: we just need to make sure that the overhead of the necessary evil is\nas low as possible.\n\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "5d5440a835710d09f0ef18da5000541ec98b537a",
      "tree": "3e6e9ed88b266beadbf9698c15852865acb2605a",
      "parents": [
        "0956a8c20b23d429e79ff86d4325583fc06f9eb4"
      ],
      "author": {
        "name": "tom.leiming@gmail.com",
        "email": "tom.leiming@gmail.com",
        "time": "Thu Mar 22 03:22:38 2012 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Mar 22 19:32:34 2012 -0400"
      },
      "message": "usbnet: don\u0027t clear urb-\u003edev in tx_complete\n\nURB unlinking is always racing with its completion and tx_complete\nmay be called before or during running usb_unlink_urb, so tx_complete\nmust not clear urb-\u003edev since it will be used in unlink path,\notherwise invalid memory accesses or usb device leak may be caused\ninside usb_unlink_urb.\n\nCc: stable@kernel.org\nCc: Alan Stern \u003cstern@rowland.harvard.edu\u003e\nCc: Oliver Neukum \u003coliver@neukum.org\u003e\nSigned-off-by: Ming Lei \u003ctom.leiming@gmail.com\u003e\nAcked-by: Greg Kroah-Hartman \u003cgregkh@linuxfoundation.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "0956a8c20b23d429e79ff86d4325583fc06f9eb4",
      "tree": "65adc5a7fc8b19ca046ba661692a75a65fd04e88",
      "parents": [
        "1265fd616782ef03b98fd19f65c2b47fcd4ea11f"
      ],
      "author": {
        "name": "tom.leiming@gmail.com",
        "email": "tom.leiming@gmail.com",
        "time": "Thu Mar 22 03:22:18 2012 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Mar 22 19:32:34 2012 -0400"
      },
      "message": "usbnet: increase URB reference count before usb_unlink_urb\n\nCommit 4231d47e6fe69f061f96c98c30eaf9fb4c14b96d(net/usbnet: avoid\nrecursive locking in usbnet_stop()) fixes the recursive locking\nproblem by releasing the skb queue lock, but it makes usb_unlink_urb\nracing with defer_bh, and the URB to being unlinked may be freed before\nor during calling usb_unlink_urb, so use-after-free problem may be\ntriggerd inside usb_unlink_urb.\n\nThe patch fixes the use-after-free problem by increasing URB\nreference count with skb queue lock held before calling\nusb_unlink_urb, so the URB won\u0027t be freed until return from\nusb_unlink_urb.\n\nCc: stable@kernel.org\nCc: Sebastian Andrzej Siewior \u003cbigeasy@linutronix.de\u003e\nCc: Alan Stern \u003cstern@rowland.harvard.edu\u003e\nCc: Oliver Neukum \u003coliver@neukum.org\u003e\nReported-by: Dave Jones \u003cdavej@redhat.com\u003e\nSigned-off-by: Ming Lei \u003ctom.leiming@gmail.com\u003e\nAcked-by: Greg Kroah-Hartman \u003cgregkh@linuxfoundation.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "1265fd616782ef03b98fd19f65c2b47fcd4ea11f",
      "tree": "ca6b946227f4d0f1b8419a335de1657f3e3a6aea",
      "parents": [
        "26b2072e7536e57995b2867d057fbb32ecfe498d"
      ],
      "author": {
        "name": "Steffen Klassert",
        "email": "steffen.klassert@secunet.com",
        "time": "Wed Mar 21 23:36:13 2012 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Mar 22 19:29:58 2012 -0400"
      },
      "message": "xfrm: Access the replay notify functions via the registered callbacks\n\nWe call the wrong replay notify function when we use ESN replay\nhandling. This leads to the fact that we don\u0027t send notifications\nif we use ESN. Fix this by calling the registered callbacks instead\nof xfrm_replay_notify().\n\nSigned-off-by: Steffen Klassert \u003csteffen.klassert@secunet.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "26b2072e7536e57995b2867d057fbb32ecfe498d",
      "tree": "edc4ae4dd3a01a1b2059a723b699f4b8c266db2e",
      "parents": [
        "f0229eaaf3f82522e2b16b41b0f45bb84a88d1b0"
      ],
      "author": {
        "name": "Steffen Klassert",
        "email": "steffen.klassert@secunet.com",
        "time": "Wed Mar 21 23:32:39 2012 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Mar 22 19:29:58 2012 -0400"
      },
      "message": "xfrm: Remove unused xfrm_state from xfrm_state_check_space\n\nThe xfrm_state argument is unused in this function, so remove it.\nAlso the name xfrm_state_check_space does not really match what this\nfunction does. It actually checks if we have enough head and tailroom\non the skb. So we rename the function to xfrm_skb_check_space.\n\nSigned-off-by: Steffen Klassert \u003csteffen.klassert@secunet.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "f0229eaaf3f82522e2b16b41b0f45bb84a88d1b0",
      "tree": "dfe2f90e6aeb6d4a4406300f48c24e11b2ee8995",
      "parents": [
        "64b5fad526f63e9b56752a7e8e153b99ec0ddecd"
      ],
      "author": {
        "name": "Dan Carpenter",
        "email": "dan.carpenter@oracle.com",
        "time": "Wed Mar 21 20:44:09 2012 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Mar 22 19:29:58 2012 -0400"
      },
      "message": "RDS: use gfp flags from caller in conn_alloc()\n\nWe should be using the gfp flags the caller specified here, instead of\nGFP_KERNEL.  I think this might be a bugfix, depending on the value of\n\"sock-\u003esk-\u003esk_allocation\" when we call rds_conn_create_outgoing() in\nrds_sendmsg().  Otherwise, it\u0027s just a cleanup.\n\nSigned-off-by: Dan Carpenter \u003cdan.carpenter@oracle.com\u003e\nAcked-by: Venkat Venkatsubra \u003cvenkat.x.venkatsubra@oracle.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "64b5fad526f63e9b56752a7e8e153b99ec0ddecd",
      "tree": "4c9b7796fc958bd760e64b0726da01c62a6db9ec",
      "parents": [
        "9395a09d05a23bb313cd20c99fb234f308d948b3"
      ],
      "author": {
        "name": "Dan Carpenter",
        "email": "dan.carpenter@oracle.com",
        "time": "Wed Mar 21 20:41:01 2012 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Mar 22 19:29:57 2012 -0400"
      },
      "message": "netlabel: use GFP flags from caller instead of GFP_ATOMIC\n\nThis function takes a GFP flags as a parameter, but they are never used.\nWe don\u0027t take a lock in this function so there is no reason to prefer\nGFP_ATOMIC over the caller\u0027s GFP flags.\n\nThere is only one caller, cipso_v4_map_cat_rng_ntoh(), and it passes\nGFP_ATOMIC as the GFP flags so this doesn\u0027t change how the code works.\nIt\u0027s just a cleanup.\n\nSigned-off-by: Dan Carpenter \u003cdan.carpenter@oracle.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "f7493e5d9cc10ac97cf1f1579fdc14117460b40b",
      "tree": "5c73bd9418b24398b33c5eb2c2fb3ea749d8c631",
      "parents": [
        "989412bbd2835f1475d1528846693eddbac744c8"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Mar 22 16:10:40 2012 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Mar 22 16:10:40 2012 -0700"
      },
      "message": "vfs: tidy up sparse warnings in fs/namei.c\n\nWhile doing the fs/namei.c cleanups, I ran sparse on it, and it pointed\nout other large integers and a couple of cases of us using \u00270\u0027 instead\nof the proper \u0027NULL\u0027.\n\nSparse still doesn\u0027t understand some of the conditional locking going\non, but that\u0027s no excuse for not fixing up the trivial stuff.\n\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "989412bbd2835f1475d1528846693eddbac744c8",
      "tree": "192a4fdeeca43951cc69d30fad6b91c6196f9e8c",
      "parents": [
        "1f1e6e523e43e312c0e0d38c09828d53e9f709fc"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Mar 22 15:58:27 2012 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Mar 22 15:58:27 2012 -0700"
      },
      "message": "vfs: tidy up fs/namei.c byte-repeat word constants\n\nIn commit commit 1de5b41cd3b2 (\"fs/namei.c: fix warnings on 32-bit\")\nAndrew said that there must be a tidier way of doing this.\n\nThis is that tidier way.\n\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "1f1e6e523e43e312c0e0d38c09828d53e9f709fc",
      "tree": "8bf08328cb84dff0bc7a120a1606547e1938cbbd",
      "parents": [
        "f132c5be05e407a99cf582347a2ae0120acd3ad7"
      ],
      "author": {
        "name": "Randy Dunlap",
        "email": "rdunlap@xenotime.net",
        "time": "Sun Mar 18 21:23:05 2012 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Mar 22 15:49:18 2012 -0700"
      },
      "message": "fs: fix kernel-doc warnings in dcache.c\n\nFix kernel-doc warnings in fs/dcache.c:\n\n  Warning(fs/dcache.c:1743): No description found for parameter \u0027seqp\u0027\n  Warning(fs/dcache.c:1743): Excess function parameter \u0027seq\u0027 description in \u0027__d_lookup_rcu\u0027\n\nSigned-off-by: Randy Dunlap \u003crdunlap@xenotime.net\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "f132c5be05e407a99cf582347a2ae0120acd3ad7",
      "tree": "f089bbd244aad5d5686360080f93ee9e8592a39d",
      "parents": [
        "ba331d5decbfe1cc8b1bf10fb7005f4b972c4f0e"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@ZenIV.linux.org.uk",
        "time": "Thu Mar 22 21:59:52 2012 +0000"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Mar 22 15:10:43 2012 -0700"
      },
      "message": "Fix full_name_hash() behaviour when length is a multiple of 8\n\nWe want it to match what hash_name() is doing, which means extra\nmultiply by 9 in this case...\n\nReported-and-Tested-by: Konrad Rzeszutek Wilk \u003ckonrad.wilk@oracle.com\u003e\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "ba331d5decbfe1cc8b1bf10fb7005f4b972c4f0e",
      "tree": "af12491d851d3d953f6b482df450045e83368ed9",
      "parents": [
        "09fa30226130652af75152d9010c603c66d46f6e",
        "1898f4426b3863216a9041389b34a3b995883027"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Mar 22 13:27:02 2012 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Mar 22 13:27:02 2012 -0700"
      },
      "message": "Merge branch \u0027drm-nouveau-destage\u0027 of git://people.freedesktop.org/~airlied/linux\n\nPull nouveau destaging + Kelper modesetting support from Dave Airlie:\n \"This pull request is unexpected and not something I had mentioned\n  previously.\n\n  So NVIDIA announced new Kepler GPUs this morning, and Ben has killed\n  himself getting modesetting support for them together to have on\n  launch day.  Most of the code to support the new chips has already\n  gone in, however this pull contains a few more pieces along with the\n  final enables so the driver binds to the new Kepler cards.  Its quite\n  amazing that nouveau can support a GPU on its launch day even if its\n  just unaccelerated modesetting, and I\u0027d like to have support in the\n  next kernel.\n\n  In order to sweeten the deal, Ben has also requested nouveau destage\n  and become ABI stable, the only change is the version number bump\n  which he prepared userspace for quite a long time ago.  The driver\n  hasn\u0027t broken ABI since that one big break that caused a lot of fuss.\n\n  It\u0027s also quite a small set of code, and not likely to break anything.\"\n\n* \u0027drm-nouveau-destage\u0027 of git://people.freedesktop.org/~airlied/linux:\n  drm/nouveau/dp: support version 4.0 of DP table\n  drm/nve0/disp: nvidia randomly decided to move the dithering method\n  drm/nve0: initial modesetting support for kepler chipsets\n  drm/nouveau: add bios connector type for dms59\n  drm/nouveau: move out of staging drivers\n  drm/nouveau: bump version to 1.0.0\n  drm/nvd0/disp: ignore clock set if no pclk\n  drm/nouveau: oops, increase channel dispc_vma to 4\n  drm/nouveau: inform userspace of new kernel subchannel requirements\n  drm/nouveau: remove m2mf creation on userspace channels\n  drm/nvc0-/disp: reimplement flip completion method as fifo method\n  drm/nouveau: move fence sequence check to start of loop\n  drm/nouveau: remove subchannel names from places where it doesn\u0027t matter\n  drm/nouveau/ttm: always do buffer moves on kernel channel\n"
    },
    {
      "commit": "09fa30226130652af75152d9010c603c66d46f6e",
      "tree": "26dc4ba7fc66dc0c10e442d81595dd319eef4c75",
      "parents": [
        "be53bfdb8088e9d1924199cc1a96e113756b1075",
        "1b2681ba271c9f5bb66cb0d8ceeaa215fcd218d8"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Mar 22 13:23:46 2012 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Mar 22 13:23:46 2012 -0700"
      },
      "message": "Merge branch \u0027drm-radeon-sitn-support\u0027 of git://people.freedesktop.org/~airlied/linux\n\nPull radeon southern islands / trinity support from Dave Airlie:\n \"This is support from AMD for their newest GPU and APUs.  The products\n  called RadeonHD 7xxx, and the Trinity APU series.\n\n  This did come in a bit late, due to some over-complicated AMD internal\n  review process, which from the outside seems unnecessary once the\n  company has decided it wants to support open source.  However as I\n  said previously I\u0027d rather not put the people who\u0027ve got this hw for 3\n  months now being forced to use fglrx on it if there is open code.\n\n  Its pretty well self contained and just plugs into the driver in\n  various places.\"\n\n* \u0027drm-radeon-sitn-support\u0027 of git://people.freedesktop.org/~airlied/linux: (48 commits)\n  drm/radeon/kms: update duallink checks for DCE6\n  drm/radeon/kms: add trinity pci ids\n  drm/radeon/kms: add radeon_asic struct for trinity\n  drm/radeon/kms: add support for ucode loading on trinity (v2)\n  drm/radeon/kms/vm: set vram base offset properly for TN\n  drm/radeon/kms: Update evergreen functions for trinity\n  drm/radeon/kms: cayman gpu init updates for trinity\n  drm/radeon/kms: Add checks for TN in the DP bridge code\n  drm/radeon/kms/DCE6.1: ss is not supported on the internal pplls\n  drm/radeon/kms: disable PPLL0 on DCE6.1 when not in use\n  drm/radeon/kms: Adjust pll picker for DCE6.1\n  drm/radeon/kms: DCE6.1 disp eng pll updates\n  drm/radeon/kms: DCE6.1 watermark updates for TN\n  drm/radeon/kms: no support for internal thermal sensor on TN yet\n  drm/radeon/kms: add trinity (TN) chip family\n  drm/radeon/kms: Add SI pci ids\n  drm/radeon: Update radeon_info_ioctl for SI. (v2)\n  drm/radeon/kms: add radeon_asic struct for SI\n  drm/radeon/kms: add support for compute rings in CS ioctl on SI\n  drm/radeon/kms: fill in startup/shutdown callbacks for SI\n  ...\n"
    },
    {
      "commit": "be53bfdb8088e9d1924199cc1a96e113756b1075",
      "tree": "8c65eb9d82ca4c0f11c17cfdc44d5263820b415b",
      "parents": [
        "b2094ef840697bc8ca5d17a83b7e30fad5f1e9fa",
        "5466c7b1683a23dbbcfb7ee4a71c4f23886001c7"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Mar 22 13:08:22 2012 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Mar 22 13:08:22 2012 -0700"
      },
      "message": "Merge branch \u0027drm-next\u0027 of git://people.freedesktop.org/~airlied/linux\n\nPull drm main changes from Dave Airlie:\n \"This is the main drm pull request, I\u0027m probably going to send two more\n  smaller ones, will explain below.\n\n  This contains a patch that is also in the fbdev tree, but it should be\n  the same patch, it added an API for hot unplugging framebuffer\n  devices, and I need that API for a new driver.\n\n  It also contains some changes to the i2c tree which Jean has acked,\n  and one change to moorestown platform stuff in x86.\n\n  Highlights:\n   - new drivers: UDL driver for USB displaylink devices, kms only,\n     should support correct hotplug operations.\n   - core: i2c speedups + better hotplug support, EDID overriding via\n     firmware interface - allows user to load a firmware for a broken\n     monitor/kvm from userspace, it even has documentation for it.\n   - exynos: new HDMI audio + hdmi 1.4 + virtual output driver\n   - gma500: code cleanup\n   - radeon: cleanups, CS optimisations, streamout support and pageflip\n     fix\n   - nouveau: NVD9 displayport support + more reclocking work\n   - i915: re-enabling GMBUS, finish gpu patch (might help hibernation\n     who knows), missed irq fixes, stencil tiling fixes, interlaced\n     support, aliasesd PPGTT support for SNB/IVB, swizzling for SNB/IVB,\n     semaphore fixes\n\n  As well as the usual bunch of cleanups and fixes all over the place.\n\n  I\u0027ve got two things I\u0027d like to merge a bit later:\n\n   a) AMD support for all their new radeonhd 7000 series GPU and APUs.\n      AMD dropped this a bit late due to insane internal review\n      processes, (please AMD just follow Intel and let open source guys\n      ship stuff early) however I don\u0027t want to penalise people who own\n      this hardware (since its been on sale for 3-4 months and GPU hw\n      doesn\u0027t exactly have a lifetime in years) and consign them to\n      using closed drivers for longer than necessary.  The changes are\n      well contained and just plug into the driver new gpu functionality\n      so they should be fairly regression proof.  I just want to give\n      them a bit of a run on the hw AMD kindly sent me.\n\n   b) drm prime/dma-buf interface code.  This is just infrastructure\n      code to expose the dma-buf stuff to drm drivers and to userspace.\n      I\u0027m not planning on pushing any driver support in this cycle\n      (except maybe exynos), but I\u0027d like to get the infrastructure code\n      in so for the next cycle I can start getting the driver support\n      into the individual drivers.  We have started driver support for\n      i915, nouveau and udl along with I think exynos and omap in\n      staging.  However this code relies on the dma-buf tree being\n      pulled into your tree first since it needs the latest interfaces\n      from that tree.  I\u0027ll push to get that tree sent asap.\n\n  (oh and any warnings you see in i915 are gcc\u0027s fault from what anyone\n  can see).\"\n\nFix up trivial conflicts in arch/x86/platform/mrst/mrst.c due to the new\nmsic_thermal_platform_data() thermal function being added next to the\ntc35876x_platform_data() i2c device function..\n\n* \u0027drm-next\u0027 of git://people.freedesktop.org/~airlied/linux: (326 commits)\n  drm/i915: use DDC_ADDR instead of hard-coding it\n  drm/radeon: use DDC_ADDR instead of hard-coding it\n  drm: remove unneeded redefinition of DDC_ADDR\n  drm/exynos: added virtual display driver.\n  drm: allow loading an EDID as firmware to override broken monitor\n  drm/exynos: enable hdmi audio feature\n  drm/exynos: add default pixel format for plane\n  drm/exynos: cleanup exynos_hdmi.h\n  drm/exynos: add is_local member in exynos_drm_subdrv struct\n  drm/exynos: add subdrv open/close functions\n  drm/exynos: remove module of exynos drm subdrv\n  drm/exynos: release pending pageflip events when closed\n  drm/exynos: added new funtion to get/put dma address.\n  drm/exynos: update gem and buffer framework.\n  drm/exynos: added mode_fixup feature and code clean.\n  drm/exynos: add HDMI version 1.4 support\n  drm/exynos: remove exynos_mixer.h\n  gma500: Fix mmap frambuffer\n  drm/radeon: Drop radeon_gem_object_(un)pin.\n  drm/radeon: Restrict offset for legacy display engine.\n  ...\n"
    },
    {
      "commit": "1ba0c1720eb0de2d0f3abf84c0b128d10af520d1",
      "tree": "47515d331a39e868510266d72f29267b30b00399",
      "parents": [
        "b8adde8ddec9ff62a21564fa8020b5463e70d4de"
      ],
      "author": {
        "name": "Jason Wessel",
        "email": "jason.wessel@windriver.com",
        "time": "Wed Sep 21 13:07:47 2011 -0700"
      },
      "committer": {
        "name": "Jason Wessel",
        "email": "jason.wessel@windriver.com",
        "time": "Thu Mar 22 15:07:16 2012 -0500"
      },
      "message": "kdb: Add message about CONFIG_DEBUG_RODATA on failure to install breakpoint\n\nOn x86, if CONFIG_DEBUG_RODATA is set, one cannot set breakpoints\nvia KDB.  Apparently this is a well-known problem, as at least one distribution\nnow ships with both KDB enabled and CONFIG_DEBUG_RODATA\u003dy for security reasons.\n\nThis patch adds an printk message to the breakpoint failure case,\nin order to provide suggestions about how to use the debugger.\n\nReported-by: Tim Bird \u003ctim.bird@am.sony.com\u003e\nSigned-off-by: Jason Wessel \u003cjason.wessel@windriver.com\u003e\nAcked-by: Tim Bird \u003ctim.bird@am.sony.com\u003e\n"
    },
    {
      "commit": "b8adde8ddec9ff62a21564fa8020b5463e70d4de",
      "tree": "750515b98a74e80569148371754869956cea039d",
      "parents": [
        "bec4d62ead8096e433d624d9339893f50badd992"
      ],
      "author": {
        "name": "Tim Bird",
        "email": "tim.bird@am.sony.com",
        "time": "Wed Sep 21 13:19:12 2011 -0700"
      },
      "committer": {
        "name": "Jason Wessel",
        "email": "jason.wessel@windriver.com",
        "time": "Thu Mar 22 15:07:16 2012 -0500"
      },
      "message": "kdb: Avoid using dbg_io_ops until it is initialized\n\nThis fixes a bug with setting a breakpoint during kdb initialization\n(from kdb_cmds).  Any call to kdb_printf() before the initialization\nof the kgdboc serial console driver (which happens much later during\nbootup than kdb_init), results in kernel panic due to the use of\ndbg_io_ops before it is initialized.\n\nSigned-off-by: Tim Bird \u003ctim.bird@am.sony.com\u003e\nSigned-off-by: Jason Wessel \u003cjason.wessel@windriver.com\u003e\n"
    },
    {
      "commit": "bec4d62ead8096e433d624d9339893f50badd992",
      "tree": "fd48a6b49acaec668f8b9dfa18c9dedc56d8a0b7",
      "parents": [
        "8f30d411767351656ea62c9e7612120f9b870b59"
      ],
      "author": {
        "name": "Jason Wessel",
        "email": "jason.wessel@windriver.com",
        "time": "Mon Mar 19 19:35:55 2012 -0500"
      },
      "committer": {
        "name": "Jason Wessel",
        "email": "jason.wessel@windriver.com",
        "time": "Thu Mar 22 15:07:16 2012 -0500"
      },
      "message": "kgdb,debug_core: add the ability to control the reboot notifier\n\nSometimes it is desirable to stop the kernel debugger before allowing\na system to reboot either with kdb or kgdb.  This patch adds the\nability to turn the reboot notifier on and off or enter the debugger\nand stop kernel execution before rebooting.\n\nIt is possible to change the setting after booting the kernel with the\nfollowing:\n\necho 1 \u003e /sys/module/debug_core/parameters/kgdbreboot\n\nIt is also possible to change this setting using kdb / kgdb to\nmanipulate the variable directly.\n\nUsing KDB:\n   mm kgdbreboot 1\n\nUsing gdb:\n   set kgdbreboot\u003d1\n\nReported-by: Jan Kiszka \u003cjan.kiszka@siemens.com\u003e\nSigned-off-by: Jason Wessel \u003cjason.wessel@windriver.com\u003e\n"
    },
    {
      "commit": "8f30d411767351656ea62c9e7612120f9b870b59",
      "tree": "0f685c15620422b008e31d73f81e2c335622b2cb",
      "parents": [
        "2366e047840e33928803c0442176fb3991423da8"
      ],
      "author": {
        "name": "Andrei Warkentin",
        "email": "andrey.warkentin@gmail.com",
        "time": "Tue Feb 28 06:55:05 2012 -0600"
      },
      "committer": {
        "name": "Jason Wessel",
        "email": "jason.wessel@windriver.com",
        "time": "Thu Mar 22 15:07:15 2012 -0500"
      },
      "message": "KDB: Fix usability issues relating to the \u0027enter\u0027 key.\n\nThis fixes the following problems:\n1) Typematic-repeat of \u0027enter\u0027 gives warning message\n   and leaks make/break if KDB exits. Repeats\n   look something like 0x1c 0x1c .... 0x9c\n2) Use of \u0027keypad enter\u0027 gives warning message and\n   leaks the ENTER break/make code out if KDB exits.\n   KP ENTER repeats look someting like 0xe0 0x1c\n   0xe0 0x1c ... 0xe0 0x9c.\n3) Lag on the order of seconds between \"break\" and \"make\" when\n   expecting the enter \"break\" code. Seen under virtualized\n   environments such as VMware ESX.\n\nThe existing special enter handler tries to glob the enter break code,\nbut this fails if the other (KP) enter was used, or if there was a key\nrepeat. It also fails if you mashed some keys along with enter, and\nyou ended up with a non-enter make or non-enter break code coming\nafter the enter make code. So first, we modify the handler to handle\nthese cases. But performing these actions on every enter is annoying\nsince now you can\u0027t hold ENTER down to scroll \u003cmore\u003ed messages in\nKDB. Since this special behaviour is only necessary to handle the\nexiting KDB (\u0027g\u0027 + ENTER) without leaking scancodes to the OS.  This\ncleanup needs to get executed anytime the kdb_main loop exits.\n\nTested on QEMU. Set a bp on atkbd.c to verify no scan code was leaked.\n\nCc: Andrei Warkentin \u003candreiw@vmware.com\u003e\n[jason.wessel@windriver.com: move cleanup calls to kdb_main.c]\nSigned-off-by: Andrei Warkentin \u003candrey.warkentin@gmail.com\u003e\nSigned-off-by: Jason Wessel \u003cjason.wessel@windriver.com\u003e\n"
    },
    {
      "commit": "2366e047840e33928803c0442176fb3991423da8",
      "tree": "6c1488ee97a24c85dd4f2ddb1a06a5694de6e2f2",
      "parents": [
        "9fbe465efc76044dd87afe764db5464ae61aeabc"
      ],
      "author": {
        "name": "Jason Wessel",
        "email": "jason.wessel@windriver.com",
        "time": "Fri Mar 16 14:20:41 2012 -0500"
      },
      "committer": {
        "name": "Jason Wessel",
        "email": "jason.wessel@windriver.com",
        "time": "Thu Mar 22 15:07:15 2012 -0500"
      },
      "message": "kgdb,debug-core,gdbstub: Hook the reboot notifier for debugger detach\n\nThe gdbstub and kdb should get detached if the system is rebooting.\nCalling gdbstub_exit() will set the proper debug core state and send a\nmessage to any debugger that is connected to correctly detach.\n\nAn attached debugger will receive the exit code from\ninclude/linux/reboot.h based on SYS_HALT, SYS_REBOOT, etc...\n\nReported-by: Jan Kiszka \u003cjan.kiszka@siemens.com\u003e\nSigned-off-by: Jason Wessel \u003cjason.wessel@windriver.com\u003e\n"
    },
    {
      "commit": "9fbe465efc76044dd87afe764db5464ae61aeabc",
      "tree": "b01f5206d050f29875438cc1d2e51a7190fc1c0c",
      "parents": [
        "639077fb69aec8112e5427210a83d0fb192969f0"
      ],
      "author": {
        "name": "Jan Kiszka",
        "email": "jan.kiszka@siemens.com",
        "time": "Fri Mar 16 13:17:13 2012 +0100"
      },
      "committer": {
        "name": "Jason Wessel",
        "email": "jason.wessel@windriver.com",
        "time": "Thu Mar 22 15:07:15 2012 -0500"
      },
      "message": "kgdb: Respect that flush op is optional\n\nNot all kgdb I/O drivers implement a flush operation. Adjust\ngdbstub_exit accordingly.\n\nSigned-off-by: Jan Kiszka \u003cjan.kiszka@siemens.com\u003e\nSigned-off-by: Jason Wessel \u003cjason.wessel@windriver.com\u003e\n"
    },
    {
      "commit": "639077fb69aec8112e5427210a83d0fb192969f0",
      "tree": "31513fea8a3a7eaa4d2db10194c0435cf2395d20",
      "parents": [
        "c16fa4f2ad19908a47c63d8fa436a1178438c7e7"
      ],
      "author": {
        "name": "Jan Kiszka",
        "email": "jan.kiszka@siemens.com",
        "time": "Mon Mar 19 15:16:48 2012 -0500"
      },
      "committer": {
        "name": "Jason Wessel",
        "email": "jason.wessel@windriver.com",
        "time": "Thu Mar 22 15:07:15 2012 -0500"
      },
      "message": "kgdb: x86: Return all segment registers also in 64-bit mode\n\nEven if the content is always 0, gdb expects us to return also ds,\nes, fs, and gs while in x86-64 mode. Do this to avoid ugly errors on\n\"info registers\".\n\n[jason.wessel@windriver.com: adjust NUMREGBYTES for two new regs]\nSigned-off-by: Jan Kiszka \u003cjan.kiszka@siemens.com\u003e\nSigned-off-by: Jason Wessel \u003cjason.wessel@windriver.com\u003e\n"
    },
    {
      "commit": "b2094ef840697bc8ca5d17a83b7e30fad5f1e9fa",
      "tree": "64e5f7253b6a85b6d5d36f95c0d3c67c1798918d",
      "parents": [
        "424a6f6ef990b7e9f56f6627bfc6c46b493faeb4",
        "6681bc0deba495fad0d6fb349e40524abd1b1732"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Mar 22 13:00:13 2012 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Mar 22 13:00:13 2012 -0700"
      },
      "message": "Merge tag \u0027sound-3.4\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound\n\nPull updates of sound stuff from Takashi Iwai:\n \"Here is the first big update chunk of sound stuff for 3.4-rc1.\n\n  In the common sound infrastructure, there are a few changes for\n  dynamic PCM support (used in ASoC) and a few clean-ups.  Majority of\n  changes are found, as usual, in HD-audio and ASoC.\n\n  Some highlights of HD-audio changes:\n\n   - All the long-standing static quirk codes for Realtek codec were\n     finally removed by fixing and extending the Realtek auto-parser.\n\n   - The mute-LED control is standardized over all HD-audio codec\n     drivers using the extended vmaster hook.\n\n   - The vmaster slave mixer elements are initialized to 0dB as default\n     so that the user won\u0027t be annoyed by the silent output after\n     updates, e.g.  due to the additions of new elements.\n\n   - Other many fix-ups for the misc HD-audio devices.\n\n  In the ASoC side, this is a very active release, including a quite a\n  few framework enhancements.  Some highlights:\n\n   - Support for widgets not associated with a CODEC, an important part\n     of the dynamic PCM framework.\n\n   - A library factoring out the common code shared by dmaengine based\n     DMA drivers contributed by Lars-Peter Clausen.  This will save a\n     lot of code and make it much easier to deploy enhancements to\n     dmaengine.\n\n   - Support for binary controls, used for providing runtime\n     configuration of algorithm coefficients.\n\n   - A new DAPM widget type for regulator supplies allowing drivers for\n     devices that can power down unused supplies while active to do\n     without any per-driver code.\n\n   - DAPM widgets for DAIs, initially giving a speed boost for playback\n     startup and shutdown and also the basis for CODEC\u003c-\u003eCODEC DAI link\n     support.\n\n   - Support for specifying the number of significant bits on audio\n     interfaces, useful for allowing applications to know how much\n     effort to put into generating data for a larger sample format.\n\n   - Conversion of the FSI driver used on some SH processors to\n     DMAEngine.\n\n   - Conversion of EP93xx drivers to DMAEngine.\n\n   - New CODEC drivers for Maxim MAX9768 and Wolfson Microelectronics\n     WM2200.\n\n   - Move audmux driver from arc/arm to sound/soc\n\n   - McBSP move from arch/ to sound/ and updates\n\n  Also, a few small updates and fixes for other drivers like au88x0,\n  ymfpci, USB 6fire, USB usx2yaudio are included.\"\n\n* tag \u0027sound-3.4\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound: (446 commits)\n  ASoC: wm8994: Provide VMID mode control and fix default sequence\n  ASoC: wm8994: Add missing break in resume\n  ASoC: wm_hubs: Don\u0027t actively manage LINEOUT_VMID_BUF\n  ASoC: pxa-ssp: atomically set stream active masks\n  ASoC: fsl: p1022ds: tell the WM8776 codec driver that it\u0027s the master\n  ASoC: Samsung: Added to support mono recording\n  ALSA: hda - Fix build with CONFIG_PM\u003dn\n  ALSA: au88x0 - Avoid possible Oops at unbinding\n  ALSA: usb-audio - Fix build error by consitification of rate list\n  ASoC: core: Fix obscure leak of runtime array\n  ALSA: pcm - Avoid GFP_ATOMIC in snd_pcm_link()\n  ALSA: pcm: Constify the list in snd_pcm_hw_constraint_list\n  ASoC: wm8996: Add 44.1kHz support\n  ALSA: hda - Fix build of patch_sigmatel.c without CONFIG_SND_HDA_POWER_SAVE\n  ASoC: mx27vis-aic32x4: Convert it to platform driver\n  ALSA: hda - fix printing of high HDMI sample rates\n  ALSA: ymfpci - Fix legacy registers on S3/S4 resume\n  ALSA: control - Fixe a trailing white space error\n  ALSA: hda - Add expose_enum_ctl flag to snd_hda_add_vmaster_hook()\n  ALSA: hda - Add \"Mute-LED Mode\" enum control\n  ...\n"
    },
    {
      "commit": "424a6f6ef990b7e9f56f6627bfc6c46b493faeb4",
      "tree": "0028356ed8003495fbbe1f716f359e3c8ebc35b6",
      "parents": [
        "1ab142d499294b844ecc81e8004db4ce029b0b61",
        "cd8df932d894f3128c884e3ae1b2b484540513db"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Mar 22 12:55:29 2012 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Mar 22 12:55:29 2012 -0700"
      },
      "message": "Merge tag \u0027scsi-misc\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/jejb/scsi-misc-2.6\n\nSCSI updates from James Bottomley:\n \"The update includes the usual assortment of driver updates (lpfc,\n  qla2xxx, qla4xxx, bfa, bnx2fc, bnx2i, isci, fcoe, hpsa) plus a huge\n  amount of infrastructure work in the SAS library and transport class\n  as well as an iSCSI update.  There\u0027s also a new SCSI based virtio\n  driver.\"\n\n* tag \u0027scsi-misc\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/jejb/scsi-misc-2.6: (177 commits)\n  [SCSI] qla4xxx: Update driver version to 5.02.00-k15\n  [SCSI] qla4xxx: trivial cleanup\n  [SCSI] qla4xxx: Fix sparse warning\n  [SCSI] qla4xxx: Add support for multiple session per host.\n  [SCSI] qla4xxx: Export CHAP index as sysfs attribute\n  [SCSI] scsi_transport: Export CHAP index as sysfs attribute\n  [SCSI] qla4xxx: Add support to display CHAP list and delete CHAP entry\n  [SCSI] iscsi_transport: Add support to display CHAP list and delete CHAP entry\n  [SCSI] pm8001: fix endian issue with code optimization.\n  [SCSI] pm8001: Fix possible racing condition.\n  [SCSI] pm8001: Fix bogus interrupt state flag issue.\n  [SCSI] ipr: update PCI ID definitions for new adapters\n  [SCSI] qla2xxx: handle default case in qla2x00_request_firmware()\n  [SCSI] isci: improvements in driver unloading routine\n  [SCSI] isci: improve phy event warnings\n  [SCSI] isci: debug, provide state-enum-to-string conversions\n  [SCSI] scsi_transport_sas: \u0027enable\u0027 phys on reset\n  [SCSI] libsas: don\u0027t recover end devices attached to disabled phys\n  [SCSI] libsas: fixup target_port_protocols for expanders that don\u0027t report sata\n  [SCSI] libsas: set attached device type and target protocols for local phys\n  ...\n"
    },
    {
      "commit": "1ab142d499294b844ecc81e8004db4ce029b0b61",
      "tree": "9db85a456d0cba3de8b9bd6671b1b52fa939770c",
      "parents": [
        "267d7b23dd62f6ec55e0fba777e456495c308fc7",
        "187e70a554e0f0717a65998bc9199945cbbd4692"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Mar 22 12:38:04 2012 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Mar 22 12:38:04 2012 -0700"
      },
      "message": "Merge branch \u0027for-next\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/nab/target-pending\n\nPull SCSI target updates from Nicholas Bellinger:\n \"This contains the usual set of updates and bugfixes to target-core +\n  existing fabric module code, along with a handful of the patches\n  destined for v3.3 stable.\n\n  It also contains the necessary target-core infrastructure pieces\n  required to run using tcm_qla2xxx.ko WWPNs with the new Qlogic Fibre\n  Channel fabric module currently queued in target-pending/for-next-merge,\n  and coming for round 2.\n\n  The highlights for this series include:\n\n   - Add target_submit_tmr() helper function for fabric task management\n     (andy)\n   - Convert tcm_fc to use target_submit_tmr() (andy)\n   - Replace target core various cmd flags with a transport state (hch)\n   - Convert loopback to use workqueue submission (hch)\n   - Convert target core to use array_zalloc for tpg_lun_list (joern)\n   - Convert target core to use array_zalloc for device_list (joern)\n   - Add target core support for TMR_ABORT_TASK (nab)\n   - Add target core se_sess-\u003esess_kref + get/put helpers (nab)\n   - Add target core se_node_acl-\u003eacl_kref for -\u003eacl_free_comp usage\n     (nab)\n   - Convert iscsi-target to use target_put_session + sess_kref (nab)\n   - Fix tcm_fc fc_exch memory leak in ft_send_resp_status (nab)\n   - Fix ib_srpt srpt_handle_cmd send_ioctx-\u003eioctx_kref leak on\n     exception (nab)\n   - Fix target core up handling of short INQUIRY buffers (roland)\n   - Untangle target-core front-end and back-end meanings of max_sectors\n     attribute (roland)\n   - Set loopback residual field for SCSI commands (roland)\n   - Fix target-core 16-bit target ports for SET TARGET PORT GROUPS\n     emulation (roland)\n\n  Thanks again to Andy, Christoph, Joern, Roland, and everyone who has\n  contributed this round!\"\n\n* \u0027for-next\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/nab/target-pending: (64 commits)\n  ib_srpt: Fix srpt_handle_cmd send_ioctx-\u003eioctx_kref leak on exception\n  loopback: Fix transport_generic_allocate_tasks error handling\n  iscsi-target: remove improper externs\n  iscsi-target: Remove unused variables in iscsi_target_parameters.c\n  target: remove obvious warnings\n  target: Use array_zalloc for device_list\n  target: Use array_zalloc for tpg_lun_list\n  target: Fix sense code for unsupported SERVICE ACTION IN\n  target: Remove hack to make READ CAPACITY(10) lie if thin provisioning is enabled\n  target: Bump core version to v4.1.0-rc2-ml + fabric versions\n  tcm_fc: Fix fc_exch memory leak in ft_send_resp_status\n  target: Drop unused legacy target_core_fabric_ops API callers\n  iscsi-target: Convert to use target_put_session + sess_kref\n  target: Convert se_node_acl-\u003eacl_group removal to use -\u003eacl_kref\n  target: Add se_node_acl-\u003eacl_kref for -\u003eacl_free_comp usage\n  target: Add se_node_acl-\u003eacl_free_comp for NodeACL release path\n  target: Add se_sess-\u003esess_kref + get/put helpers\n  target: Convert session_lock to irqsave\n  target: Fix typo in drivers/target\n  iscsi-target: Fix dynamic -\u003e explict NodeACL pointer reference\n  ...\n"
    },
    {
      "commit": "267d7b23dd62f6ec55e0fba777e456495c308fc7",
      "tree": "5c9fe0f07d5b87029b9c07eb003596c05d161a8f",
      "parents": [
        "28f23d1f3b6a6078312b6e9585e583cc7326fe22",
        "ecb178bb2b154a40cfae9fa4c42e62ccfa81ac6b"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Mar 22 12:29:50 2012 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Mar 22 12:29:50 2012 -0700"
      },
      "message": "Merge tag \u0027md-3.4\u0027 of git://neil.brown.name/md\n\nPull md updates for 3.4 from Neil Brown:\n \"Mostly tidying up code in preparation for some bigger changes next\n  time.\n\n  A few bug fixes tagged for -stable.\n\n  Main functionality change is that some RAID10 arrays can now grow to\n  use extra space that may have been made available on the individual\n  devices.\"\n\nFixed up trivial conflicts with the k[un]map_atomic() cleanups in\ndrivers/md/bitmap.c.\n\n* tag \u0027md-3.4\u0027 of git://neil.brown.name/md: (22 commits)\n  md: Add judgement bb-\u003eunacked_exist in function md_ack_all_badblocks().\n  md: fix clearing of the \u0027changed\u0027 flags for the bad blocks list.\n  md/bitmap: discard CHUNK_BLOCK_SHIFT macro\n  md/bitmap: remove unnecessary indirection when allocating.\n  md/bitmap: remove some pointless locking.\n  md/bitmap: change a \u0027goto\u0027 to a normal \u0027if\u0027 construct.\n  md/bitmap: move printing of bitmap status to bitmap.c\n  md/bitmap: remove some unused noise from bitmap.h\n  md/raid10 - support resizing some RAID10 arrays.\n  md/raid1: handle merge_bvec_fn in member devices.\n  md/raid10: handle merge_bvec_fn in member devices.\n  md: add proper merge_bvec handling to RAID0 and Linear.\n  md: tidy up rdev_for_each usage.\n  md/raid1,raid10: avoid deadlock during resync/recovery.\n  md/bitmap: ensure to load bitmap when creating via sysfs.\n  md: don\u0027t set md arrays to readonly on shutdown.\n  md: allow re-add to failed arrays.\n  md/raid5: use atomic_dec_return() instead of atomic_dec() and atomic_read().\n  md: Use existed macros instead of numbers\n  md/raid5: removed unused \u0027added_devices\u0027 variable.\n  ...\n"
    },
    {
      "commit": "7de473066f1512e52ea806e3c9698e5ea325b26c",
      "tree": "b5a52e0846c2f3851349dfc4e6c8ed88e64f3db8",
      "parents": [
        "c16fa4f2ad19908a47c63d8fa436a1178438c7e7",
        "09c32533c064782a7989b6fecce776833bca0e12",
        "ae295142d2d3989e49c6425c90d2593732a068a1"
      ],
      "author": {
        "name": "Joerg Roedel",
        "email": "joro@8bytes.org",
        "time": "Thu Mar 22 19:28:39 2012 +0100"
      },
      "committer": {
        "name": "Joerg Roedel",
        "email": "joro@8bytes.org",
        "time": "Thu Mar 22 19:28:39 2012 +0100"
      },
      "message": "Merge branches \u0027iommu/fixes\u0027, \u0027arm/tegra\u0027 and \u0027x86/amd\u0027 into next\n"
    },
    {
      "commit": "ae295142d2d3989e49c6425c90d2593732a068a1",
      "tree": "55062211fd06e8c6124eeaa6b05b3b3b88523ab9",
      "parents": [
        "3d9761e7a55b429ccee305a53669577b9cc20dac"
      ],
      "author": {
        "name": "Gerard Snitselaar",
        "email": "dev@snitselaar.org",
        "time": "Fri Mar 16 11:38:22 2012 -0700"
      },
      "committer": {
        "name": "Joerg Roedel",
        "email": "joro@8bytes.org",
        "time": "Thu Mar 22 19:28:14 2012 +0100"
      },
      "message": "iommu/amd: Fix section mismatch\n\namd_iommu_enable_interrupts() called in amd_iommu_resume().\n\nSigned-off-by: Gerard Snitselaar \u003cdev@snitselaar.org\u003e\nSigned-off-by: Joerg Roedel \u003cjoro@8bytes.org\u003e\n"
    },
    {
      "commit": "28f23d1f3b6a6078312b6e9585e583cc7326fe22",
      "tree": "db366c75c2e2d12a2a2c3b7299c35ef7c72928a4",
      "parents": [
        "23904815461ba223a8baf7490051597fa054299b",
        "c7b738351ba92f48b943ac59aff6b5b0f17f37c9"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Mar 22 09:44:50 2012 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Mar 22 09:44:50 2012 -0700"
      },
      "message": "Merge branch \u0027x86-urgent-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip\n\nPull x86 \"urgent\" leftovers from Ingo Molnar:\n \"Pending x86/urgent bits that were not high prio enough to warrant\n  -rc-less v3.3-final inclusion.\"\n\n* \u0027x86-urgent-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:\n  x86, efi: Fix pointer math issue in handle_ramdisks()\n  x86/ioapic: Add register level checks to detect bogus io-apic entries\n  x86, mce: Fix rcu splat in drain_mce_log_buffer()\n  x86, memblock: Move mem_hole_size() to .init\n"
    },
    {
      "commit": "23904815461ba223a8baf7490051597fa054299b",
      "tree": "2d52ce8ff18c4f731183d0b10048eb74489a3391",
      "parents": [
        "754b9800779402924fffe456b49d557e15260cbf",
        "fa63030e9c79e37b4d4e63b39ffb09cfb7aa0fe4"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Mar 22 09:42:36 2012 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Mar 22 09:43:22 2012 -0700"
      },
      "message": "Merge branch \u0027x86-platform-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip\n\nPull x86 platform changes from Ingo Molnar.\n\nRemoves the Moorestown platform that nobody ever used.\n\n* \u0027x86-platform-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:\n  x86/platform: Move APIC ID validity check into platform APIC code\n  x86/olpc/xo15/sci: Enable lid close wakeup control\n  x86/geode/net5501: Add platform driver for Soekris Engineering net5501\n  x86/geode/alix2: Supplement driver to include GPIO button support\n  x86/mid/powerbtn: Use MSIC read/write instead of ipc_scu\n  x86/mid/thermal: Turn off thermistor\n  x86/mid/thermal: Add msic_thermal alias\n  x86/mid/thermal: Convert to use Intel MSIC API\n  x86/mid/scu_ipc: Remove Moorestown support\n  x86/mid: Kill off Moorestown\n  x86/mrst: Add msic_thermal platform support\n  x86/config: Select MSIC MFD driver on Intel Medfield platform\n  x86/mid: Remove Intel Moorestown\n  x86/mrst: Set ISA bus type for fake MP IRQs\n  x86/ioapic: Use legacy_pic to set correct gsi-irq mapping\n"
    },
    {
      "commit": "754b9800779402924fffe456b49d557e15260cbf",
      "tree": "0e0441eca766616fccd8fc37a3885397efc6063a",
      "parents": [
        "35cb8d9e18c0bb33b90d7e574abadbe23b65427d",
        "ea281a9ebaba3287130dbe15bb0aad6f798bb06b"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Mar 22 09:42:04 2012 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Mar 22 09:42:04 2012 -0700"
      },
      "message": "Merge branch \u0027x86-mce-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip\n\nPull MCE changes from Ingo Molnar.\n\n* \u0027x86-mce-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:\n  x86/mce: Fix return value of mce_chrdev_read() when erst is disabled\n  x86/mce: Convert static array of pointers to per-cpu variables\n  x86/mce: Replace hard coded hex constants with symbolic defines\n  x86/mce: Recognise machine check bank signature for data path error\n  x86/mce: Handle \"action required\" errors\n  x86/mce: Add mechanism to safely save information in MCE handler\n  x86/mce: Create helper function to save addr/misc when needed\n  HWPOISON: Add code to handle \"action required\" errors.\n  HWPOISON: Clean up memory_failure() vs. __memory_failure()\n"
    },
    {
      "commit": "35cb8d9e18c0bb33b90d7e574abadbe23b65427d",
      "tree": "7bf2ce00ce1203a54ad5ace4f707a10f4fe0b14b",
      "parents": [
        "02c502566ef505d0469fa27567f48766c1f5f7af",
        "1361b83a13d4d92e53fbb6c877528713e118b821"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Mar 22 09:41:22 2012 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Mar 22 09:41:22 2012 -0700"
      },
      "message": "Merge branch \u0027x86-fpu-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip\n\nPull x86/fpu changes from Ingo Molnar.\n\n* \u0027x86-fpu-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:\n  i387: Split up \u003casm/i387.h\u003e into exported and internal interfaces\n  i387: Uninline the generic FP helpers that we expose to kernel modules\n"
    },
    {
      "commit": "02c502566ef505d0469fa27567f48766c1f5f7af",
      "tree": "dd29678eb5f15ddfe537418eb83ad2c54074c37b",
      "parents": [
        "f06fc0c0de0b4f01dbad8ec5552e78192c7abbb8",
        "a51f4047758d2bcd099ea113b833ed380f4024ba"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Mar 22 09:40:53 2012 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Mar 22 09:40:53 2012 -0700"
      },
      "message": "Merge branch \u0027x86-build-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip\n\nPull x86/build changes from Ingo Molnar.\n\n* \u0027x86-build-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:\n  x86, build: Fix portability issues when cross-building\n  x86, tools: Remove unneeded header files from tools/build.c\n  USB: ffs-test: Don\u0027t duplicate {get,put}_unaligned*() functions\n  x86, efi: Fix endian issues and unaligned accesses\n  x86, boot: Restrict CFLAGS for hostprogs\n  x86, mkpiggy: Don\u0027t open code put_unaligned_le32()\n  x86, relocs: Don\u0027t open code put_unaligned_le32()\n  tools/include: Add byteshift headers for endian access\n"
    },
    {
      "commit": "f06fc0c0de0b4f01dbad8ec5552e78192c7abbb8",
      "tree": "d31b0639244cbcaca2957b1c0c6c05686d4aeffa",
      "parents": [
        "4c64616bb51b399886ded8f4f69bad4da2da1817",
        "1adbfa3511ee1c1118e16a9a0246870f12fef4e6"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Mar 22 09:31:31 2012 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Mar 22 09:31:31 2012 -0700"
      },
      "message": "Merge branch \u0027x86-eficross-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip\n\nPull x86/eficross (booting 32/64-bit kernel from 64/32-bit EFI) from Ingo Molnar\n\n* \u0027x86-eficross-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:\n  x86, efi: Allow basic init with mixed 32/64-bit efi/kernel\n  x86, efi: Add basic error handling\n  x86, efi: Cleanup config table walking\n  x86, efi: Convert printk to pr_*()\n  x86, efi: Refactor efi_init() a bit\n"
    },
    {
      "commit": "4c64616bb51b399886ded8f4f69bad4da2da1817",
      "tree": "341991585a9998e8c9bf20600f0d5cbf5a1746d2",
      "parents": [
        "c5c7fb8fbd7cd228132b6e2a17a10f246ffc06ee",
        "943bc7e110f269f88dc92bbf249adbd384d35f1c"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Mar 22 09:30:39 2012 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Mar 22 09:30:39 2012 -0700"
      },
      "message": "Merge branch \u0027x86-debug-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip\n\nPull x86/debug changes from Ingo Molnar.\n\n* \u0027x86-debug-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:\n  x86: Fix section warnings\n  x86-64: Fix CFI data for common_interrupt()\n  x86: Properly _init-annotate NMI selftest code\n  x86/debug: Fix/improve the show_msr\u003d\u003ccpus\u003e debug print out\n"
    },
    {
      "commit": "c5c7fb8fbd7cd228132b6e2a17a10f246ffc06ee",
      "tree": "3cd15a14d78b399c5dbeaf8beba7599615bc40bd",
      "parents": [
        "1b674bf106f59e04e24b3825c2f08dcd9a5b7264",
        "140f190bc3a3b6f200548d204befd998eadd63fd",
        "35f1790e6c6a7e4cae57b616cf36444d27fa6b28",
        "513c4ec6e4759aa33c90af0658b82eb4d2027871",
        "42dfc43ee5999ac64284476ea0ac6c937587cf2b",
        "b0deca2e0270135f797e81bdb0743e50fd1dc58d"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Mar 22 09:28:15 2012 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Mar 22 09:28:15 2012 -0700"
      },
      "message": "Merge branches \u0027x86-cpu-for-linus\u0027, \u0027x86-boot-for-linus\u0027, \u0027x86-cpufeature-for-linus\u0027, \u0027x86-process-for-linus\u0027 and \u0027x86-uv-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip\n\nPull trivial x86 branches from Ingo Molnar: small one-liners to fix up\ndetails.\n\n* \u0027x86-cpu-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:\n  x86: Remove some noise from boot log when starting cpus\n\n* \u0027x86-boot-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:\n  x86, boot: Fix port argument to inl() function\n\n* \u0027x86-cpufeature-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:\n  x86, cpufeature: Add CPU features from Intel document 319433-012A\n\n* \u0027x86-process-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:\n  x86_64: Record stack pointer before task execution begins\n\n* \u0027x86-uv-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:\n  x86/UV: Lower UV rtc clocksource rating\n"
    },
    {
      "commit": "1b674bf106f59e04e24b3825c2f08dcd9a5b7264",
      "tree": "b90b52b692111f0be66eaf7efb040e35a6e763e3",
      "parents": [
        "e17fdf5c6778ff77d93dd769910992e4073b9348",
        "cb8095bba6d24118135a5683a956f4f4fb5f17bb"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Mar 22 09:23:57 2012 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Mar 22 09:23:57 2012 -0700"
      },
      "message": "Merge branch \u0027x86-atomic-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip\n\nPull x86/atomic changes from Ingo Molnar.\n\n* \u0027x86-atomic-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:\n  x86: atomic64 assembly improvements\n  x86: Adjust asm constraints in atomic64 wrappers\n"
    },
    {
      "commit": "e17fdf5c6778ff77d93dd769910992e4073b9348",
      "tree": "d1a7ca2b1faf4301b39300fbd82f9b91e605a77e",
      "parents": [
        "95211279c5ad00a317c98221d7e4365e02f20836",
        "a240ada241dafe290e7532d1ddeb98fdf1419068"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Mar 22 09:13:24 2012 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Mar 22 09:13:24 2012 -0700"
      },
      "message": "Merge branch \u0027x86-asm-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip\n\nPull x86/asm changes from Ingo Molnar\n\n* \u0027x86-asm-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:\n  x86: Include probe_roms.h in probe_roms.c\n  x86/32: Print control and debug registers for kerenel context\n  x86: Tighten dependencies of CPU_SUP_*_32\n  x86/numa: Improve internode cache alignment\n  x86: Fix the NMI nesting comments\n  x86-64: Improve insn scheduling in SAVE_ARGS_IRQ\n  x86-64: Fix CFI annotations for NMI nesting code\n  bitops: Add missing parentheses to new get_order macro\n  bitops: Optimise get_order()\n  bitops: Adjust the comment on get_order() to describe the size\u003d\u003d0 case\n  x86/spinlocks: Eliminate TICKET_MASK\n  x86-64: Handle byte-wise tail copying in memcpy() without a loop\n  x86-64: Fix memcpy() to support sizes of 4Gb and above\n  x86-64: Fix memset() to support sizes of 4Gb and above\n  x86-64: Slightly shorten copy_page()\n"
    },
    {
      "commit": "95211279c5ad00a317c98221d7e4365e02f20836",
      "tree": "2ddc8625378d2915b8c96392f3cf6663b705ed55",
      "parents": [
        "5375871d432ae9fc581014ac117b96aaee3cd0c7",
        "12724850e8064f64b6223d26d78c0597c742c65a"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Mar 22 09:04:48 2012 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Mar 22 09:04:48 2012 -0700"
      },
      "message": "Merge branch \u0027akpm\u0027 (Andrew\u0027s patch-bomb)\n\nMerge first batch of patches from Andrew Morton:\n \"A few misc things and all the MM queue\"\n\n* emailed from Andrew Morton \u003cakpm@linux-foundation.org\u003e: (92 commits)\n  memcg: avoid THP split in task migration\n  thp: add HPAGE_PMD_* definitions for !CONFIG_TRANSPARENT_HUGEPAGE\n  memcg: clean up existing move charge code\n  mm/memcontrol.c: remove unnecessary \u0027break\u0027 in mem_cgroup_read()\n  mm/memcontrol.c: remove redundant BUG_ON() in mem_cgroup_usage_unregister_event()\n  mm/memcontrol.c: s/stealed/stolen/\n  memcg: fix performance of mem_cgroup_begin_update_page_stat()\n  memcg: remove PCG_FILE_MAPPED\n  memcg: use new logic for page stat accounting\n  memcg: remove PCG_MOVE_LOCK flag from page_cgroup\n  memcg: simplify move_account() check\n  memcg: remove EXPORT_SYMBOL(mem_cgroup_update_page_stat)\n  memcg: kill dead prev_priority stubs\n  memcg: remove PCG_CACHE page_cgroup flag\n  memcg: let css_get_next() rely upon rcu_read_lock()\n  cgroup: revert ss_id_lock to spinlock\n  idr: make idr_get_next() good for rcu_read_lock()\n  memcg: remove unnecessary thp check in page stat accounting\n  memcg: remove redundant returns\n  memcg: enum lru_list lru\n  ...\n"
    },
    {
      "commit": "1898f4426b3863216a9041389b34a3b995883027",
      "tree": "1f1fa81d13ab229c3efea589e79135912b5260e6",
      "parents": [
        "5466c7b1683a23dbbcfb7ee4a71c4f23886001c7",
        "6544599249086ce50f216a6cedbea56514ffefc6"
      ],
      "author": {
        "name": "Dave Airlie",
        "email": "airlied@redhat.com",
        "time": "Thu Mar 22 14:44:06 2012 +0000"
      },
      "committer": {
        "name": "Dave Airlie",
        "email": "airlied@redhat.com",
        "time": "Thu Mar 22 14:44:06 2012 +0000"
      },
      "message": "Merge branch \u0027drm-nouveau-next\u0027 of git://git.freedesktop.org/git/nouveau/linux-2.6 into drm-next\n\n* \u0027drm-nouveau-next\u0027 of git://git.freedesktop.org/git/nouveau/linux-2.6:\n  drm/nouveau/dp: support version 4.0 of DP table\n  drm/nve0/disp: nvidia randomly decided to move the dithering method\n  drm/nve0: initial modesetting support for kepler chipsets\n  drm/nouveau: add bios connector type for dms59\n  drm/nouveau: move out of staging drivers\n  drm/nouveau: bump version to 1.0.0\n  drm/nvd0/disp: ignore clock set if no pclk\n  drm/nouveau: oops, increase channel dispc_vma to 4\n  drm/nouveau: inform userspace of new kernel subchannel requirements\n  drm/nouveau: remove m2mf creation on userspace channels\n  drm/nvc0-/disp: reimplement flip completion method as fifo method\n  drm/nouveau: move fence sequence check to start of loop\n  drm/nouveau: remove subchannel names from places where it doesn\u0027t matter\n  drm/nouveau/ttm: always do buffer moves on kernel channel\n"
    },
    {
      "commit": "6544599249086ce50f216a6cedbea56514ffefc6",
      "tree": "7b4fb0b9ada08c8a9b6530f08eeee93459f3fbf8",
      "parents": [
        "e592c73b91e9dfc7403fe41f649dd18593805ccd"
      ],
      "author": {
        "name": "Ben Skeggs",
        "email": "bskeggs@redhat.com",
        "time": "Sun Mar 11 16:08:05 2012 +1000"
      },
      "committer": {
        "name": "Ben Skeggs",
        "email": "bskeggs@redhat.com",
        "time": "Fri Mar 23 00:21:18 2012 +1000"
      },
      "message": "drm/nouveau/dp: support version 4.0 of DP table\n\nSigned-off-by: Ben Skeggs \u003cbskeggs@redhat.com\u003e\n"
    },
    {
      "commit": "e592c73b91e9dfc7403fe41f649dd18593805ccd",
      "tree": "7d9db6cd6b8264f7daf5b0fce941003ef53660e8",
      "parents": [
        "68455a43debe26dd1d2a42c0b67dd5697c201420"
      ],
      "author": {
        "name": "Ben Skeggs",
        "email": "bskeggs@redhat.com",
        "time": "Mon Mar 05 10:05:45 2012 +1000"
      },
      "committer": {
        "name": "Ben Skeggs",
        "email": "bskeggs@redhat.com",
        "time": "Fri Mar 23 00:21:14 2012 +1000"
      },
      "message": "drm/nve0/disp: nvidia randomly decided to move the dithering method\n\nSigned-off-by: Ben Skeggs \u003cbskeggs@redhat.com\u003e\n"
    },
    {
      "commit": "68455a43debe26dd1d2a42c0b67dd5697c201420",
      "tree": "692eeca94a4fee9a64dfed910b4a3b1dbd5c1c99",
      "parents": [
        "fa2c113ac1da39f922ab287b75c8d3f21a4b16dd"
      ],
      "author": {
        "name": "Ben Skeggs",
        "email": "bskeggs@redhat.com",
        "time": "Sun Mar 04 14:47:55 2012 +1000"
      },
      "committer": {
        "name": "Ben Skeggs",
        "email": "bskeggs@redhat.com",
        "time": "Fri Mar 23 00:21:12 2012 +1000"
      },
      "message": "drm/nve0: initial modesetting support for kepler chipsets\n\nSigned-off-by: Ben Skeggs \u003cbskeggs@redhat.com\u003e\n"
    },
    {
      "commit": "fa2c113ac1da39f922ab287b75c8d3f21a4b16dd",
      "tree": "9d1097d6061b68fc137401d5b439b648686bce27",
      "parents": [
        "f3c93cbde7eab38671ae085cb1027b08f5f36757"
      ],
      "author": {
        "name": "Ben Skeggs",
        "email": "bskeggs@redhat.com",
        "time": "Thu Mar 22 11:27:15 2012 +1000"
      },
      "committer": {
        "name": "Ben Skeggs",
        "email": "bskeggs@redhat.com",
        "time": "Thu Mar 22 17:18:16 2012 +1000"
      },
      "message": "drm/nouveau: add bios connector type for dms59\n\nSigned-off-by: Ben Skeggs \u003cbskeggs@redhat.com\u003e\n"
    },
    {
      "commit": "f3c93cbde7eab38671ae085cb1027b08f5f36757",
      "tree": "e08adf2d7d8c7f82257b9f15dd80c6da542169b9",
      "parents": [
        "f887c425f9eeed8ffbca64c8be45da62b07096c0"
      ],
      "author": {
        "name": "Ben Skeggs",
        "email": "bskeggs@redhat.com",
        "time": "Fri Mar 16 18:19:14 2012 +1000"
      },
      "committer": {
        "name": "Ben Skeggs",
        "email": "bskeggs@redhat.com",
        "time": "Thu Mar 22 17:18:12 2012 +1000"
      },
      "message": "drm/nouveau: move out of staging drivers\n\nThere\u0027s really no good reason for us to be in here anymore, we have to\nmaintain this ABI anyway to avoid angering people.\n\nSigned-off-by: Ben Skeggs \u003cbskeggs@redhat.com\u003e\n"
    },
    {
      "commit": "f887c425f9eeed8ffbca64c8be45da62b07096c0",
      "tree": "37947b9c6ccfbbae8dc4943ff41187c2982f4af7",
      "parents": [
        "dd62608bcc8a629c4c583fb50b90003fd5213516"
      ],
      "author": {
        "name": "Ben Skeggs",
        "email": "bskeggs@redhat.com",
        "time": "Fri Mar 16 12:44:34 2012 +1000"
      },
      "committer": {
        "name": "Ben Skeggs",
        "email": "bskeggs@redhat.com",
        "time": "Thu Mar 22 17:18:06 2012 +1000"
      },
      "message": "drm/nouveau: bump version to 1.0.0\n\nThe time has come to get a proper version number that we can change to\nindicate new features etc, rather than the lock-step 0.0.XX that we\npreviously had.\n\nlibdrm has recognised this version as compatible with 0.0.16 since 2.4.22,\nso hopefully any breakage people see should be very minimal.\n\nSigned-off-by: Ben Skeggs \u003cbskeggs@redhat.com\u003e\n"
    },
    {
      "commit": "dd62608bcc8a629c4c583fb50b90003fd5213516",
      "tree": "81a52947d3f7a0522353828340eb6e8d4fa04eed",
      "parents": [
        "27100ac95a8eee0b083e46bfa67b229ac641d28c"
      ],
      "author": {
        "name": "Ben Skeggs",
        "email": "bskeggs@redhat.com",
        "time": "Fri Mar 16 15:32:16 2012 +1000"
      },
      "committer": {
        "name": "Ben Skeggs",
        "email": "bskeggs@redhat.com",
        "time": "Thu Mar 22 17:18:00 2012 +1000"
      },
      "message": "drm/nvd0/disp: ignore clock set if no pclk\n\nThis happens somehow during init on a machine I have, and leads to a\ndivide-by-zero.\n\nLets avoid that...\n\nSigned-off-by: Ben Skeggs \u003cbskeggs@redhat.com\u003e\n"
    },
    {
      "commit": "27100ac95a8eee0b083e46bfa67b229ac641d28c",
      "tree": "06c8fb050c4e65fbe08821d1cf6f7693dc7276f4",
      "parents": [
        "664695ae6f8b2b72aa5820aa20f4d65016cb3fd0"
      ],
      "author": {
        "name": "Ben Skeggs",
        "email": "bskeggs@redhat.com",
        "time": "Fri Mar 16 13:45:09 2012 +1000"
      },
      "committer": {
        "name": "Ben Skeggs",
        "email": "bskeggs@redhat.com",
        "time": "Thu Mar 22 17:17:56 2012 +1000"
      },
      "message": "drm/nouveau: oops, increase channel dispc_vma to 4\n\nSigned-off-by: Ben Skeggs \u003cbskeggs@redhat.com\u003e\n"
    },
    {
      "commit": "664695ae6f8b2b72aa5820aa20f4d65016cb3fd0",
      "tree": "38d731bc4028424e65844160ff87571776208d5e",
      "parents": [
        "48aca13f0167ae78c28c6b48d82a157a6692eecb"
      ],
      "author": {
        "name": "Ben Skeggs",
        "email": "bskeggs@redhat.com",
        "time": "Wed Mar 21 13:57:40 2012 +1000"
      },
      "committer": {
        "name": "Ben Skeggs",
        "email": "bskeggs@redhat.com",
        "time": "Thu Mar 22 17:17:50 2012 +1000"
      },
      "message": "drm/nouveau: inform userspace of new kernel subchannel requirements\n\nAll available subchannels are now available for userspace to do with as it\npleases on NVC0+.\n\nOn all earlier chipsets, the kernel still uses a software object on subc 0\nto implement the page flip completion method.  I hope to find some decent\nway of addressing this too, but it\u0027s a tad tricker prior to fermi.\n\nSigned-off-by: Ben Skeggs \u003cbskeggs@redhat.com\u003e\n"
    },
    {
      "commit": "48aca13f0167ae78c28c6b48d82a157a6692eecb",
      "tree": "54937c4fc0e8f19fcf2d8abfb35a82798f85ce96",
      "parents": [
        "d5316e251230c4e54a157349a362229c3d4daa32"
      ],
      "author": {
        "name": "Ben Skeggs",
        "email": "bskeggs@redhat.com",
        "time": "Sun Mar 18 00:40:41 2012 +1000"
      },
      "committer": {
        "name": "Ben Skeggs",
        "email": "bskeggs@redhat.com",
        "time": "Thu Mar 22 17:17:46 2012 +1000"
      },
      "message": "drm/nouveau: remove m2mf creation on userspace channels\n\nSigned-off-by: Ben Skeggs \u003cbskeggs@redhat.com\u003e\n"
    },
    {
      "commit": "d5316e251230c4e54a157349a362229c3d4daa32",
      "tree": "a5371432d01ac0ef54c4c402c901a0fc1f2d2323",
      "parents": [
        "b08abd4e9a11d637d3c2ff52b2ebbc1b3f686d06"
      ],
      "author": {
        "name": "Ben Skeggs",
        "email": "bskeggs@redhat.com",
        "time": "Wed Mar 21 13:53:49 2012 +1000"
      },
      "committer": {
        "name": "Ben Skeggs",
        "email": "bskeggs@redhat.com",
        "time": "Thu Mar 22 17:17:40 2012 +1000"
      },
      "message": "drm/nvc0-/disp: reimplement flip completion method as fifo method\n\nRemoves need for M2MF subchannel usage on NVC0+.\n\nSigned-off-by: Ben Skeggs \u003cbskeggs@redhat.com\u003e\n"
    },
    {
      "commit": "b08abd4e9a11d637d3c2ff52b2ebbc1b3f686d06",
      "tree": "b965122d55743e4094cccdb1c3884299693ee7b7",
      "parents": [
        "b5b2e5988bd18a2f6e3f192adf7439599de00d3f"
      ],
      "author": {
        "name": "Ben Skeggs",
        "email": "bskeggs@redhat.com",
        "time": "Wed Mar 21 13:51:03 2012 +1000"
      },
      "committer": {
        "name": "Ben Skeggs",
        "email": "bskeggs@redhat.com",
        "time": "Thu Mar 22 17:17:36 2012 +1000"
      },
      "message": "drm/nouveau: move fence sequence check to start of loop\n\nI want to be able to use REF_CNT from other places in the kernel without\npushing a fence object onto the list of emitted fences.\n\nThe current code makes an assumption that every time the acked sequence is\nbumped that there\u0027s at least one fence on the list that\u0027ll be signalled.\n\nThis will no longer be true in the near future.\n\nSigned-off-by: Ben Skeggs \u003cbskeggs@redhat.com\u003e\n"
    },
    {
      "commit": "b5b2e5988bd18a2f6e3f192adf7439599de00d3f",
      "tree": "802c2ff81977b982c1ec0ca0f5dc8ae67b98a469",
      "parents": [
        "accf94969f226ddfe7dd3a6a76ce093ace839b26"
      ],
      "author": {
        "name": "Ben Skeggs",
        "email": "bskeggs@redhat.com",
        "time": "Fri Mar 16 00:09:54 2012 +1000"
      },
      "committer": {
        "name": "Ben Skeggs",
        "email": "bskeggs@redhat.com",
        "time": "Thu Mar 22 17:17:30 2012 +1000"
      },
      "message": "drm/nouveau: remove subchannel names from places where it doesn\u0027t matter\n\nThese are FIFO methods, it doesn\u0027t matter what subchannel is being used.\n\nSigned-off-by: Ben Skeggs \u003cbskeggs@redhat.com\u003e\n"
    },
    {
      "commit": "accf94969f226ddfe7dd3a6a76ce093ace839b26",
      "tree": "d376e4f4240ed414388d19aaa1fd1df3d1a2e54e",
      "parents": [
        "2f5394c3ed573de2ab18cdac503b8045cd16ac5e"
      ],
      "author": {
        "name": "Ben Skeggs",
        "email": "bskeggs@redhat.com",
        "time": "Fri Mar 16 12:40:17 2012 +1000"
      },
      "committer": {
        "name": "Ben Skeggs",
        "email": "bskeggs@redhat.com",
        "time": "Thu Mar 22 17:17:26 2012 +1000"
      },
      "message": "drm/nouveau/ttm: always do buffer moves on kernel channel\n\nThere was once good reasons for wanting the drm to be able to use M2MF etc\non user channels, but they\u0027re not relevant anymore.  For the general\nbuffer move case, we\u0027ve already lost by transferring between vram/sysmem\nalready so the context switching overhead is minimal in comparison.\n\nSigned-off-by: Ben Skeggs \u003cbskeggs@redhat.com\u003e\n"
    },
    {
      "commit": "9395a09d05a23bb313cd20c99fb234f308d948b3",
      "tree": "c0850e712e9b93eef264712a9868b150d15e70ce",
      "parents": [
        "8ec3e70207486bbd3e2d3c0d6b809116ccd4f219"
      ],
      "author": {
        "name": "Benjamin LaHaise",
        "email": "bcrl@kvack.org",
        "time": "Tue Mar 20 14:01:21 2012 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Mar 21 22:14:56 2012 -0400"
      },
      "message": "l2tp: enable automatic module loading for l2tp_ppp\n\nWhen L2TP is configured as a module, requests for L2TP sockets do not result\nin the l2tp_ppp module being loaded.  Fix this by adding the appropriate\nMODULE_ALIAS to be recognized by pppox\u0027s request_module() call.\n\nSigned-off-by: Benjamin LaHaise \u003cbcrl@kvack.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "8ec3e70207486bbd3e2d3c0d6b809116ccd4f219",
      "tree": "bda290a8c461fe639fe99a7210e75615c1bef03d",
      "parents": [
        "7ae5289017e5ed5514b2603d157fb54c058a3c82"
      ],
      "author": {
        "name": "Michael Chan",
        "email": "mchan@broadcom.com",
        "time": "Wed Mar 21 15:38:34 2012 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Mar 21 21:57:36 2012 -0400"
      },
      "message": "cnic: Fix parity error code conflict\n\nThe recently added parity error handling used an error code that was\nalready defined for a different error.  This could lead to bnx2x\nfirmware assert.  We need to fix this with new error codes that are\ndefined for parity error only.\n\nSigned-off-by: Michael Chan \u003cmchan@broadcom.com\u003e\nReviewed-by: Eddie Wai \u003ceddie.wai@broadcom.com\u003e\nReviewed-by: Bhanu Prakash Gollapudi \u003cbprakash@broadcom.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "7ae5289017e5ed5514b2603d157fb54c058a3c82",
      "tree": "3ab4c34f95aced979df8ad5e7be721996f5911b1",
      "parents": [
        "5676cc7bfe1e388e87843f71daa229610385b41e"
      ],
      "author": {
        "name": "Michael Chan",
        "email": "mchan@broadcom.com",
        "time": "Wed Mar 21 15:38:33 2012 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Mar 21 21:57:36 2012 -0400"
      },
      "message": "tg3: Fix RSS ring refill race condition\n\nThe RSS feature in tg3 hardware has only one rx producer ring for all\nRSS rings.  NAPI vector 1 is special and handles the refilling of the\nrx producer ring on behalf of all RSS rings.  There is a race condition\nbetween these RSS NAPIs and the NAPI[1].  If NAPI[1] finishes checking\nfor refill and then another RSS ring empties the rx producer ring\nbefore NAPI[1] exits NAPI, the chip will be completely out of SKBs in\nthe rx producer ring.\n\nWe fix this by adding a flag tp-\u003erx_refill and rely on napi_schedule()/\nnapi_complete() to help synchronize it to close the race condition.\n\nUpdate driver version to 3.123.\n\nSigned-off-by: Michael Chan \u003cmchan@broadcom.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "5375871d432ae9fc581014ac117b96aaee3cd0c7",
      "tree": "be98e8255b0f927fb920fb532a598b93fa140dbe",
      "parents": [
        "b57cb7231b2ce52d3dda14a7b417ae125fb2eb97",
        "dfbc2d75c1bd47c3186fa91f1655ea2f3825b0ec"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Mar 21 18:55:10 2012 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Mar 21 18:55:10 2012 -0700"
      },
      "message": "Merge branch \u0027next\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/benh/powerpc\n\nPull powerpc merge from Benjamin Herrenschmidt:\n \"Here\u0027s the powerpc batch for this merge window.  It is going to be a\n  bit more nasty than usual as in touching things outside of\n  arch/powerpc mostly due to the big iSeriesectomy :-) We finally got\n  rid of the bugger (legacy iSeries support) which was a PITA to\n  maintain and that nobody really used anymore.\n\n  Here are some of the highlights:\n\n   - Legacy iSeries is gone.  Thanks Stephen ! There\u0027s still some bits\n     and pieces remaining if you do a grep -ir series arch/powerpc but\n     they are harmless and will be removed in the next few weeks\n     hopefully.\n\n   - The \u0027fadump\u0027 functionality (Firmware Assisted Dump) replaces the\n     previous (equivalent) \"pHyp assisted dump\"...  it\u0027s a rewrite of a\n     mechanism to get the hypervisor to do crash dumps on pSeries, the\n     new implementation hopefully being much more reliable.  Thanks\n     Mahesh Salgaonkar.\n\n   - The \"EEH\" code (pSeries PCI error handling \u0026 recovery) got a big\n     spring cleaning, motivated by the need to be able to implement a\n     new backend for it on top of some new different type of firwmare.\n\n     The work isn\u0027t complete yet, but a good chunk of the cleanups is\n     there.  Note that this adds a field to struct device_node which is\n     not very nice and which Grant objects to.  I will have a patch soon\n     that moves that to a powerpc private data structure (hopefully\n     before rc1) and we\u0027ll improve things further later on (hopefully\n     getting rid of the need for that pointer completely).  Thanks Gavin\n     Shan.\n\n   - I dug into our exception \u0026 interrupt handling code to improve the\n     way we do lazy interrupt handling (and make it work properly with\n     \"edge\" triggered interrupt sources), and while at it found \u0026 fixed\n     a wagon of issues in those areas, including adding support for page\n     fault retry \u0026 fatal signals on page faults.\n\n   - Your usual random batch of small fixes \u0026 updates, including a bunch\n     of new embedded boards, both Freescale and APM based ones, etc...\"\n\nI fixed up some conflicts with the generalized irq-domain changes from\nGrant Likely, hopefully correctly.\n\n* \u0027next\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/benh/powerpc: (141 commits)\n  powerpc/ps3: Do not adjust the wrapper load address\n  powerpc: Remove the rest of the legacy iSeries include files\n  powerpc: Remove the remaining CONFIG_PPC_ISERIES pieces\n  init: Remove CONFIG_PPC_ISERIES\n  powerpc: Remove FW_FEATURE ISERIES from arch code\n  tty/hvc_vio: FW_FEATURE_ISERIES is no longer selectable\n  powerpc/spufs: Fix double unlocks\n  powerpc/5200: convert mpc5200 to use of_platform_populate()\n  powerpc/mpc5200: add options to mpc5200_defconfig\n  powerpc/mpc52xx: add a4m072 board support\n  powerpc/mpc5200: update mpc5200_defconfig to fit for charon board\n  Documentation/powerpc/mpc52xx.txt: Checkpatch cleanup\n  powerpc/44x: Add additional device support for APM821xx SoC and Bluestone board\n  powerpc/44x: Add support PCI-E for APM821xx SoC and Bluestone board\n  MAINTAINERS: Update PowerPC 4xx tree\n  powerpc/44x: The bug fixed support for APM821xx SoC and Bluestone board\n  powerpc: document the FSL MPIC message register binding\n  powerpc: add support for MPIC message register API\n  powerpc/fsl: Added aliased MSIIR register address to MSI node in dts\n  powerpc/85xx: mpc8548cds - add 36-bit dts\n  ...\n"
    },
    {
      "commit": "b57cb7231b2ce52d3dda14a7b417ae125fb2eb97",
      "tree": "b6b3af0b2866f76fe5db80af678f4b3d54cc9b81",
      "parents": [
        "ad12ab259d9131a53aa11c7c4561d97f7cc900df",
        "ae909ea4ad2431e085e6cc96446fbc1c1ae88498"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Mar 21 18:17:51 2012 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Mar 21 18:17:51 2012 -0700"
      },
      "message": "Merge branch \u0027for-next\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/gerg/m68knommu\n\nPull m68knommu arch updates from Greg Ungerer:\n \"Includes a cleanup of the non-MMU linker script (it now almost\n  exclusively uses the well defined linker script support macros and\n  definitions).  Some more merging of MMU and non-MMU common files\n  (specifically the arch process.c, ptrace and time.c).  And a big\n  cleanup of the massively duplicated ColdFire device definition code.\n\n  Overall we remove about 2000 lines of code, and end up with a single\n  set of platform device definitions for the serial ports, ethernet\n  ports and QSPI ports common in most ColdFire SoCs.\n\n  I expect you will get a merge conflict on arch/m68k/kernel/process.c,\n  in cpu_idle().  It should be relatively strait forward to fixup.\"\n\nAnd cpu_idle() conflict resolution was indeed trivial (merging the\nnommu/mmu versions of process.c trivially conflicting with the\nconversion to use the schedule_preempt_disabled() helper function)\n\n* \u0027for-next\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/gerg/m68knommu: (57 commits)\n  m68knommu: factor more common ColdFire cpu reset code\n  m68knommu: make 528x CPU reset register addressing consistent\n  m68knommu: make 527x CPU reset register addressing consistent\n  m68knommu: make 523x CPU reset register addressing consistent\n  m68knommu: factor some common ColdFire cpu reset code\n  m68knommu: move old ColdFire timers init from CPU init to timers code\n  m68knommu: clean up init code in ColdFire 532x startup\n  m68knommu: clean up init code in ColdFire 528x startup\n  m68knommu: clean up init code in ColdFire 523x startup\n  m68knommu: merge common ColdFire QSPI platform setup code\n  m68knommu: make 532x QSPI platform addressing consistent\n  m68knommu: make 528x QSPI platform addressing consistent\n  m68knommu: make 527x QSPI platform addressing consistent\n  m68knommu: make 5249 QSPI platform addressing consistent\n  m68knommu: make 523x QSPI platform addressing consistent\n  m68knommu: make 520x QSPI platform addressing consistent\n  m68knommu: merge common ColdFire FEC platform setup code\n  m68knommu: make 532x FEC platform addressing consistent\n  m68knommu: make 528x FEC platform addressing consistent\n  m68knommu: make 527x FEC platform addressing consistent\n  ...\n"
    },
    {
      "commit": "ff0a70fe053614e763eb3ac88bfea9c5615fce3b",
      "tree": "1575b70793ba17c26ebbed08c7799dc9b978d62a",
      "parents": [
        "676a38046f4fba4e7418756c6f6fc25cf5976312"
      ],
      "author": {
        "name": "Jussi Kivilinna",
        "email": "jussi.kivilinna@mbnet.fi",
        "time": "Thu Mar 15 22:11:57 2012 +0200"
      },
      "committer": {
        "name": "Herbert Xu",
        "email": "herbert@gondor.apana.org.au",
        "time": "Thu Mar 22 09:17:45 2012 +0800"
      },
      "message": "crypto: twofish-x86_64-3way - module init/exit functions should be static\n\nThis caused conflict with camellia-x86_64 when compiled into kernel, same\nfunction names and not static.\n\nReported-by: Randy Dunlap \u003crdunlap@xenotime.net\u003e\nSigned-off-by: Jussi Kivilinna \u003cjussi.kivilinna@mbnet.fi\u003e\nAcked-by: Randy Dunlap \u003crdunlap@xenotime.net\u003e\nSigned-off-by: Herbert Xu \u003cherbert@gondor.apana.org.au\u003e\n"
    },
    {
      "commit": "676a38046f4fba4e7418756c6f6fc25cf5976312",
      "tree": "0775b953b23538b7c989ae1b14e9aced39b1bf41",
      "parents": [
        "2dc9b5dbdef09840de852a4f0cc6a9c9eece7220"
      ],
      "author": {
        "name": "Jussi Kivilinna",
        "email": "jussi.kivilinna@mbnet.fi",
        "time": "Thu Mar 15 22:11:51 2012 +0200"
      },
      "committer": {
        "name": "Herbert Xu",
        "email": "herbert@gondor.apana.org.au",
        "time": "Thu Mar 22 09:17:44 2012 +0800"
      },
      "message": "crypto: camellia-x86_64 - module init/exit functions should be static\n\nThis caused conflict with twofish-x86_64-3way when compiled into kernel,\nsame function names and not static.\n\nReported-by: Randy Dunlap \u003crdunlap@xenotime.net\u003e\nSigned-off-by: Jussi Kivilinna \u003cjussi.kivilinna@mbnet.fi\u003e\nAcked-by: Randy Dunlap \u003crdunlap@xenotime.net\u003e\nSigned-off-by: Herbert Xu \u003cherbert@gondor.apana.org.au\u003e\n"
    },
    {
      "commit": "ad12ab259d9131a53aa11c7c4561d97f7cc900df",
      "tree": "457e99e4c4b1facf029a6a094428eaef73f5d261",
      "parents": [
        "30d73f375238441d6dc31de0d90bc39f5bb0bfe5",
        "220cca2a4f5867db595135e0450381032eb54902"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Mar 21 18:00:03 2012 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Mar 21 18:00:03 2012 -0700"
      },
      "message": "Merge git://git.kernel.org/pub/scm/linux/kernel/git/steve/gfs2-3.0-nmw\n\nPull gfs2 changes from Steven Whitehouse.\n\n* git://git.kernel.org/pub/scm/linux/kernel/git/steve/gfs2-3.0-nmw:\n  GFS2: Change truncate page allocation to be GFP_NOFS\n  GFS2: call gfs2_write_alloc_required for each chunk\n  GFS2: Clean up log flush header writing\n  GFS2: Remove a __GFP_NOFAIL allocation\n  GFS2: Flush pending glock work when evicting an inode\n  GFS2: make sure rgrps are up to date in func gfs2_blk2rgrpd\n  GFS2: Eliminate sd_rindex_mutex\n  GFS2: Unlock rindex mutex on glock error\n  GFS2: Make bd_cmp() static\n  GFS2: Sort the ordered write list\n  GFS2: FITRIM ioctl support\n  GFS2: Move two functions from log.c to lops.c\n  GFS2: glock statistics gathering\n"
    },
    {
      "commit": "12724850e8064f64b6223d26d78c0597c742c65a",
      "tree": "f0b91eeae069fe92906db7ad9d0d8a8003f05db4",
      "parents": [
        "d8c37c480678ebe09bc570f33e085e28049db035"
      ],
      "author": {
        "name": "Naoya Horiguchi",
        "email": "n-horiguchi@ah.jp.nec.com",
        "time": "Wed Mar 21 16:34:28 2012 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Mar 21 17:55:02 2012 -0700"
      },
      "message": "memcg: avoid THP split in task migration\n\nCurrently we can\u0027t do task migration among memory cgroups without THP\nsplit, which means processes heavily using THP experience large overhead\nin task migration.  This patch introduces the code for moving charge of\nTHP and makes THP more valuable.\n\nSigned-off-by: Naoya Horiguchi \u003cn-horiguchi@ah.jp.nec.com\u003e\nAcked-by: Hillf Danton \u003cdhillf@gmail.com\u003e\nCc: Andrea Arcangeli \u003caarcange@redhat.com\u003e\nAcked-by: KAMEZAWA Hiroyuki \u003ckamezawa.hiroyu@jp.fujitsu.com\u003e\nCc: David Rientjes \u003crientjes@google.com\u003e\nCc: Daisuke Nishimura \u003cnishimura@mxp.nes.nec.co.jp\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "d8c37c480678ebe09bc570f33e085e28049db035",
      "tree": "c8c53fde803f1a9655f44193c97db76dc4a90fe1",
      "parents": [
        "8d32ff84401f1addb961c7af2c8d9baceb0ab9ba"
      ],
      "author": {
        "name": "Naoya Horiguchi",
        "email": "n-horiguchi@ah.jp.nec.com",
        "time": "Wed Mar 21 16:34:27 2012 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Mar 21 17:55:02 2012 -0700"
      },
      "message": "thp: add HPAGE_PMD_* definitions for !CONFIG_TRANSPARENT_HUGEPAGE\n\nThese macros will be used in a later patch, where all usages are expected\nto be optimized away without #ifdef CONFIG_TRANSPARENT_HUGEPAGE.  But to\ndetect unexpected usages, we convert the existing BUG() to BUILD_BUG().\n\n[akpm@linux-foundation.org: fix build in mm/pgtable-generic.c]\nSigned-off-by: Naoya Horiguchi \u003cn-horiguchi@ah.jp.nec.com\u003e\nAcked-by: Hillf Danton \u003cdhillf@gmail.com\u003e\nReviewed-by: Andrea Arcangeli \u003caarcange@redhat.com\u003e\nReviewed-by: KAMEZAWA Hiroyuki \u003ckamezawa.hiroyu@jp.fujitsu.com\u003e\nAcked-by: David Rientjes \u003crientjes@google.com\u003e\nCc: Daisuke Nishimura \u003cnishimura@mxp.nes.nec.co.jp\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "8d32ff84401f1addb961c7af2c8d9baceb0ab9ba",
      "tree": "bf62513b239dce072f0105c0b06ed694634a77d4",
      "parents": [
        "a488428871265979bcf2c46298a04c1d5826e6cb"
      ],
      "author": {
        "name": "Naoya Horiguchi",
        "email": "n-horiguchi@ah.jp.nec.com",
        "time": "Wed Mar 21 16:34:27 2012 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Mar 21 17:55:02 2012 -0700"
      },
      "message": "memcg: clean up existing move charge code\n\n- Replace lengthy function name is_target_pte_for_mc() with a shorter\n  one in order to avoid ugly line breaks.\n\n- explicitly use MC_TARGET_* instead of simply using integers.\n\nSigned-off-by: Naoya Horiguchi \u003cn-horiguchi@ah.jp.nec.com\u003e\nCc: Andrea Arcangeli \u003caarcange@redhat.com\u003e\nCc: KAMEZAWA Hiroyuki \u003ckamezawa.hiroyu@jp.fujitsu.com\u003e\nCc: Daisuke Nishimura \u003cnishimura@mxp.nes.nec.co.jp\u003e\nCc: Hillf Danton \u003cdhillf@gmail.com\u003e\nCc: David Rientjes \u003crientjes@google.com\u003e\nAcked-by: Hillf Danton \u003cdhillf@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": "a488428871265979bcf2c46298a04c1d5826e6cb",
      "tree": "87126bade942bcff8f36e538c8f45605fd080fd0",
      "parents": [
        "45f3e385b7a639c633d7a4b1e863c2d52b918258"
      ],
      "author": {
        "name": "Jeff Liu",
        "email": "jeff.liu@oracle.com",
        "time": "Wed Mar 21 16:34:27 2012 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Mar 21 17:55:02 2012 -0700"
      },
      "message": "mm/memcontrol.c: remove unnecessary \u0027break\u0027 in mem_cgroup_read()\n\nSigned-off-by: Jie Liu \u003cjeff.liu@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": "45f3e385b7a639c633d7a4b1e863c2d52b918258",
      "tree": "8f0c068aff36cc4f915899ed68d2e8686d75b069",
      "parents": [
        "13fd1dd9db345f6b2babd1e80a1c929092eb4896"
      ],
      "author": {
        "name": "Anton Vorontsov",
        "email": "anton.vorontsov@linaro.org",
        "time": "Wed Mar 21 16:34:26 2012 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Mar 21 17:55:02 2012 -0700"
      },
      "message": "mm/memcontrol.c: remove redundant BUG_ON() in mem_cgroup_usage_unregister_event()\n\nIn the following code:\n\n\tif (type \u003d\u003d _MEM)\n\t\tthresholds \u003d \u0026memcg-\u003ethresholds;\n\telse if (type \u003d\u003d _MEMSWAP)\n\t\tthresholds \u003d \u0026memcg-\u003ememsw_thresholds;\n\telse\n\t\tBUG();\n\n\tBUG_ON(!thresholds);\n\nThe BUG_ON() seems redundant.\n\nSigned-off-by: Anton Vorontsov \u003canton.vorontsov@linaro.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "13fd1dd9db345f6b2babd1e80a1c929092eb4896",
      "tree": "03d5fd77f06780bd5c164b82c6ba04b56a259b06",
      "parents": [
        "4331f7d339ee0b54603344b9d13662a9c022540c"
      ],
      "author": {
        "name": "Andrew Morton",
        "email": "akpm@linux-foundation.org",
        "time": "Wed Mar 21 16:34:26 2012 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Mar 21 17:55:02 2012 -0700"
      },
      "message": "mm/memcontrol.c: s/stealed/stolen/\n\nA grammatical fix.\n\nCc: KAMEZAWA Hiroyuki \u003ckamezawa.hiroyu@jp.fujitsu.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "4331f7d339ee0b54603344b9d13662a9c022540c",
      "tree": "ea67ad19a4dff0f8bf7d335bb7ab148ecfb4d329",
      "parents": [
        "2ff76f1193f8481f7e6c29304eea4006e8e51569"
      ],
      "author": {
        "name": "KAMEZAWA Hiroyuki",
        "email": "kamezawa.hiroyu@jp.fujitsu.com",
        "time": "Wed Mar 21 16:34:26 2012 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Mar 21 17:55:02 2012 -0700"
      },
      "message": "memcg: fix performance of mem_cgroup_begin_update_page_stat()\n\nmem_cgroup_begin_update_page_stat() should be very fast because it\u0027s\ncalled very frequently.  Now, it needs to look up page_cgroup and its\nmemcg....this is slow.\n\nThis patch adds a global variable to check \"any memcg is moving or not\".\nWith this, the caller doesn\u0027t need to visit page_cgroup and memcg.\n\nHere is a test result.  A test program makes page faults onto a file,\nMAP_SHARED and makes each page\u0027s page_mapcount(page) \u003e 1, and free the\nrange by madvise() and page fault again.  This program causes 26214400\ntimes of page fault onto a file(size was 1G.) and shows shows the cost of\nmem_cgroup_begin_update_page_stat().\n\nBefore this patch for mem_cgroup_begin_update_page_stat()\n\n    [kamezawa@bluextal test]$ time ./mmap 1G\n\n    real    0m21.765s\n    user    0m5.999s\n    sys     0m15.434s\n\n    27.46%     mmap  mmap               [.] reader\n    21.15%     mmap  [kernel.kallsyms]  [k] page_fault\n     9.17%     mmap  [kernel.kallsyms]  [k] filemap_fault\n     2.96%     mmap  [kernel.kallsyms]  [k] __do_fault\n     2.83%     mmap  [kernel.kallsyms]  [k] __mem_cgroup_begin_update_page_stat\n\nAfter this patch\n\n    [root@bluextal test]# time ./mmap 1G\n\n    real    0m21.373s\n    user    0m6.113s\n    sys     0m15.016s\n\nIn usual path, calls to __mem_cgroup_begin_update_page_stat() goes away.\n\nNote: we may be able to remove this optimization in future if\n      we can get pointer to memcg directly from struct page.\n\n[akpm@linux-foundation.org: don\u0027t return a void]\nSigned-off-by: KAMEZAWA Hiroyuki \u003ckamezawa.hiroyu@jp.fujitsu.com\u003e\nAcked-by: Greg Thelen \u003cgthelen@google.com\u003e\nAcked-by: Johannes Weiner \u003channes@cmpxchg.org\u003e\nCc: Michal Hocko \u003cmhocko@suse.cz\u003e\nCc: KOSAKI Motohiro \u003ckosaki.motohiro@jp.fujitsu.com\u003e\nCc: Ying Han \u003cyinghan@google.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "2ff76f1193f8481f7e6c29304eea4006e8e51569",
      "tree": "a263678dc298e29a0c54bb2e6f98bb1d5ee19751",
      "parents": [
        "89c06bd52fb9ffceddf84f7309d2e8c9f1666216"
      ],
      "author": {
        "name": "KAMEZAWA Hiroyuki",
        "email": "kamezawa.hiroyu@jp.fujitsu.com",
        "time": "Wed Mar 21 16:34:25 2012 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Mar 21 17:55:01 2012 -0700"
      },
      "message": "memcg: remove PCG_FILE_MAPPED\n\nWith the new lock scheme for updating memcg\u0027s page stat, we don\u0027t need a\nflag PCG_FILE_MAPPED which was duplicated information of page_mapped().\n\n[hughd@google.com: cosmetic fix]\n[hughd@google.com: add comment to MEM_CGROUP_CHARGE_TYPE_MAPPED case in __mem_cgroup_uncharge_common()]\nSigned-off-by: KAMEZAWA Hiroyuki \u003ckamezawa.hiroyu@jp.fujitsu.com\u003e\nAcked-by: Greg Thelen \u003cgthelen@google.com\u003e\nAcked-by: Johannes Weiner \u003channes@cmpxchg.org\u003e\nCc: Michal Hocko \u003cmhocko@suse.cz\u003e\nCc: KOSAKI Motohiro \u003ckosaki.motohiro@jp.fujitsu.com\u003e\nCc: Ying Han \u003cyinghan@google.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "89c06bd52fb9ffceddf84f7309d2e8c9f1666216",
      "tree": "43ec3d97a89988bc143bed5796bcd7bef64212dc",
      "parents": [
        "312734c04e2fecc58429aec98194e4ff12d8f7d6"
      ],
      "author": {
        "name": "KAMEZAWA Hiroyuki",
        "email": "kamezawa.hiroyu@jp.fujitsu.com",
        "time": "Wed Mar 21 16:34:25 2012 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Mar 21 17:55:01 2012 -0700"
      },
      "message": "memcg: use new logic for page stat accounting\n\nNow, page-stat-per-memcg is recorded into per page_cgroup flag by\nduplicating page\u0027s status into the flag.  The reason is that memcg has a\nfeature to move a page from a group to another group and we have race\nbetween \"move\" and \"page stat accounting\",\n\nUnder current logic, assume CPU-A and CPU-B.  CPU-A does \"move\" and CPU-B\ndoes \"page stat accounting\".\n\nWhen CPU-A goes 1st,\n\n            CPU-A                           CPU-B\n                                    update \"struct page\" info.\n    move_lock_mem_cgroup(memcg)\n    see pc-\u003eflags\n    copy page stat to new group\n    overwrite pc-\u003emem_cgroup.\n    move_unlock_mem_cgroup(memcg)\n                                    move_lock_mem_cgroup(mem)\n                                    set pc-\u003eflags\n                                    update page stat accounting\n                                    move_unlock_mem_cgroup(mem)\n\nstat accounting is guarded by move_lock_mem_cgroup() and \"move\" logic\n(CPU-A) doesn\u0027t see changes in \"struct page\" information.\n\nBut it\u0027s costly to have the same information both in \u0027struct page\u0027 and\n\u0027struct page_cgroup\u0027.  And, there is a potential problem.\n\nFor example, assume we have PG_dirty accounting in memcg.\nPG_..is a flag for struct page.\nPCG_ is a flag for struct page_cgroup.\n(This is just an example. The same problem can be found in any\n kind of page stat accounting.)\n\n\t  CPU-A                               CPU-B\n      TestSet PG_dirty\n      (delay)                        TestClear PG_dirty\n                                     if (TestClear(PCG_dirty))\n                                          memcg-\u003enr_dirty--\n      if (TestSet(PCG_dirty))\n          memcg-\u003enr_dirty++\n\nHere, memcg-\u003enr_dirty \u003d +1, this is wrong.  This race was reported by Greg\nThelen \u003cgthelen@google.com\u003e.  Now, only FILE_MAPPED is supported but\nfortunately, it\u0027s serialized by page table lock and this is not real bug,\n_now_,\n\nIf this potential problem is caused by having duplicated information in\nstruct page and struct page_cgroup, we may be able to fix this by using\noriginal \u0027struct page\u0027 information.  But we\u0027ll have a problem in \"move\naccount\"\n\nAssume we use only PG_dirty.\n\n         CPU-A                   CPU-B\n    TestSet PG_dirty\n    (delay)                    move_lock_mem_cgroup()\n                               if (PageDirty(page))\n                                      new_memcg-\u003enr_dirty++\n                               pc-\u003emem_cgroup \u003d new_memcg;\n                               move_unlock_mem_cgroup()\n    move_lock_mem_cgroup()\n    memcg \u003d pc-\u003emem_cgroup\n    new_memcg-\u003enr_dirty++\n\naccounting information may be double-counted.  This was original reason to\nhave PCG_xxx flags but it seems PCG_xxx has another problem.\n\nI think we need a bigger lock as\n\n     move_lock_mem_cgroup(page)\n     TestSetPageDirty(page)\n     update page stats (without any checks)\n     move_unlock_mem_cgroup(page)\n\nThis fixes both of problems and we don\u0027t have to duplicate page flag into\npage_cgroup.  Please note: move_lock_mem_cgroup() is held only when there\nare possibility of \"account move\" under the system.  So, in most path,\nstatus update will go without atomic locks.\n\nThis patch introduces mem_cgroup_begin_update_page_stat() and\nmem_cgroup_end_update_page_stat() both should be called at modifying\n\u0027struct page\u0027 information if memcg takes care of it.  as\n\n     mem_cgroup_begin_update_page_stat()\n     modify page information\n     mem_cgroup_update_page_stat()\n     \u003d\u003e never check any \u0027struct page\u0027 info, just update counters.\n     mem_cgroup_end_update_page_stat().\n\nThis patch is slow because we need to call begin_update_page_stat()/\nend_update_page_stat() regardless of accounted will be changed or not.  A\nfollowing patch adds an easy optimization and reduces the cost.\n\n[akpm@linux-foundation.org: s/lock/locked/]\n[hughd@google.com: fix deadlock by avoiding stat lock when anon]\nSigned-off-by: KAMEZAWA Hiroyuki \u003ckamezawa.hiroyu@jp.fujitsu.com\u003e\nCc: Greg Thelen \u003cgthelen@google.com\u003e\nAcked-by: Johannes Weiner \u003channes@cmpxchg.org\u003e\nCc: Michal Hocko \u003cmhocko@suse.cz\u003e\nCc: KOSAKI Motohiro \u003ckosaki.motohiro@jp.fujitsu.com\u003e\nCc: Ying Han \u003cyinghan@google.com\u003e\nSigned-off-by: Hugh Dickins \u003chughd@google.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "312734c04e2fecc58429aec98194e4ff12d8f7d6",
      "tree": "c1195cd46733b6a3909c11b2b5abcdee4412b99b",
      "parents": [
        "619d094b5872a5af153f1af77a8b7f7326faf0d0"
      ],
      "author": {
        "name": "KAMEZAWA Hiroyuki",
        "email": "kamezawa.hiroyu@jp.fujitsu.com",
        "time": "Wed Mar 21 16:34:24 2012 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Mar 21 17:55:01 2012 -0700"
      },
      "message": "memcg: remove PCG_MOVE_LOCK flag from page_cgroup\n\nPCG_MOVE_LOCK is used for bit spinlock to avoid race between overwriting\npc-\u003emem_cgroup and page statistics accounting per memcg.  This lock helps\nto avoid the race but the race is very rare because moving tasks between\ncgroup is not a usual job.  So, it seems using 1bit per page is too\ncostly.\n\nThis patch changes this lock as per-memcg spinlock and removes\nPCG_MOVE_LOCK.\n\nIf smaller lock is required, we\u0027ll be able to add some hashes but I\u0027d like\nto start from this.\n\nSigned-off-by: KAMEZAWA Hiroyuki \u003ckamezawa.hiroyu@jp.fujitsu.com\u003e\nAcked-by: Greg Thelen \u003cgthelen@google.com\u003e\nCc: Johannes Weiner \u003channes@cmpxchg.org\u003e\nCc: Michal Hocko \u003cmhocko@suse.cz\u003e\nCc: KOSAKI Motohiro \u003ckosaki.motohiro@jp.fujitsu.com\u003e\nCc: Ying Han \u003cyinghan@google.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "619d094b5872a5af153f1af77a8b7f7326faf0d0",
      "tree": "4de9ff8640d8cee092800cd722e621ea2db63640",
      "parents": [
        "9e3357907c84517d9e07bc0b19265807f0264b43"
      ],
      "author": {
        "name": "KAMEZAWA Hiroyuki",
        "email": "kamezawa.hiroyu@jp.fujitsu.com",
        "time": "Wed Mar 21 16:34:23 2012 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Mar 21 17:55:01 2012 -0700"
      },
      "message": "memcg: simplify move_account() check\n\nIn memcg, for avoiding take-lock-irq-off at accessing page_cgroup, a\nlogic, flag + rcu_read_lock(), is used.  This works as following\n\n     CPU-A                     CPU-B\n                             rcu_read_lock()\n    set flag\n                             if(flag is set)\n                                   take heavy lock\n                             do job.\n    synchronize_rcu()        rcu_read_unlock()\n    take heavy lock.\n\nIn recent discussion, it\u0027s argued that using per-cpu value for this flag\njust complicates the code because \u0027set flag\u0027 is very rare.\n\nThis patch changes \u0027flag\u0027 implementation from percpu to atomic_t.  This\nwill be much simpler.\n\nSigned-off-by: KAMEZAWA Hiroyuki \u003ckamezawa.hiroyu@jp.fujitsu.com\u003e\nAcked-by: Greg Thelen \u003cgthelen@google.com\u003e\nCc: Johannes Weiner \u003channes@cmpxchg.org\u003e\nCc: Michal Hocko \u003cmhocko@suse.cz\u003e\nCc: KOSAKI Motohiro \u003ckosaki.motohiro@jp.fujitsu.com\u003e\nCc: Ying Han \u003cyinghan@google.com\u003e\nCc: \"Paul E. McKenney\" \u003cpaulmck@us.ibm.com\u003e\nAcked-by: Johannes Weiner \u003channes@cmpxchg.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "9e3357907c84517d9e07bc0b19265807f0264b43",
      "tree": "3ce1602eefd0c1f006c23170da16545478dc5404",
      "parents": [
        "a710920caedfcf56543136bfea300a6c593f9838"
      ],
      "author": {
        "name": "KAMEZAWA Hiroyuki",
        "email": "kamezawa.hiroyu@jp.fujitsu.com",
        "time": "Wed Mar 21 16:34:23 2012 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Mar 21 17:55:01 2012 -0700"
      },
      "message": "memcg: remove EXPORT_SYMBOL(mem_cgroup_update_page_stat)\n\nAs described in the log, I guess EXPORT was for preparing dirty\naccounting.  But _now_, we don\u0027t need to export this.  Remove this for\nnow.\n\nSigned-off-by: KAMEZAWA Hiroyuki \u003ckamezawa.hiroyu@jp.fujitsu.com\u003e\nReviewed-by: Greg Thelen \u003cgthelen@google.com\u003e\nCc: Johannes Weiner \u003channes@cmpxchg.org\u003e\nCc: Michal Hocko \u003cmhocko@suse.cz\u003e\nCc: KOSAKI Motohiro \u003ckosaki.motohiro@jp.fujitsu.com\u003e\nCc: Ying Han \u003cyinghan@google.com\u003e\nAcked-by: Johannes Weiner \u003channes@cmpxchg.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    }
  ],
  "next": "a710920caedfcf56543136bfea300a6c593f9838"
}
