)]}'
{
  "log": [
    {
      "commit": "b48a97be8e6c2afdba2f3b61fd88c3c7743fbd73",
      "tree": "c5b9258be43d7f4e2ec1d91e4b83820562fbaebb",
      "parents": [
        "04012e3076943f17c8cfc77a196701c8f0b8964f",
        "e70308ec0e4bff344fcfdf160de40e1150552c5f"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Jul 24 11:05:18 2013 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Jul 24 11:05:18 2013 -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 push fixes a memory corruption issue in caam, as well as\n  reverting the new optimised crct10dif implementation as it breaks boot\n  on initrd systems.\n\n  Hopefully crct10dif will be reinstated once the supporting code is\n  added so that it doesn\u0027t break boot\"\n\n* git://git.kernel.org/pub/scm/linux/kernel/git/herbert/crypto-2.6:\n  Revert \"crypto: crct10dif - Wrap crc_t10dif function all to use crypto transform framework\"\n  crypto: caam - Fixed the memory out of bound overwrite issue\n"
    },
    {
      "commit": "e70308ec0e4bff344fcfdf160de40e1150552c5f",
      "tree": "17f12cc09fd55065c7dc2a1fd43215d728442598",
      "parents": [
        "9c23b7d3d6bda41e2a27375df705485523a96dc8"
      ],
      "author": {
        "name": "Herbert Xu",
        "email": "herbert@gondor.apana.org.au",
        "time": "Wed Jul 24 17:04:16 2013 +1000"
      },
      "committer": {
        "name": "Herbert Xu",
        "email": "herbert@gondor.apana.org.au",
        "time": "Wed Jul 24 17:04:16 2013 +1000"
      },
      "message": "Revert \"crypto: crct10dif - Wrap crc_t10dif function all to use crypto transform framework\"\n\nThis reverts commits\n    67822649d7305caf3dd50ed46c27b99c94eff996\n    39761214eefc6b070f29402aa1165f24d789b3f7\n    0b95a7f85718adcbba36407ef88bba0a7379ed03\n    31d939625a9a20b1badd2d4e6bf6fd39fa523405\n    2d31e518a42828df7877bca23a958627d60408bc\n\nUnfortunately this change broke boot on some systems that used an\ninitrd which does not include the newly created crct10dif modules.\nAs these modules are required by sd_mod under certain configurations\nthis is a serious problem.\n\nSigned-off-by: Herbert Xu \u003cherbert@gondor.apana.org.au\u003e\n"
    },
    {
      "commit": "a5c6eae4d6763e50101494b392ef6518c0ef96e9",
      "tree": "c87c5e3ee2b4729615297fcd0313095f9fc80995",
      "parents": [
        "01350eb6c0d6fa7831b387d50e19830d8d0da354"
      ],
      "author": {
        "name": "Richard Henderson",
        "email": "rth@twiddle.net",
        "time": "Wed Jul 10 11:05:59 2013 -0700"
      },
      "committer": {
        "name": "Matt Turner",
        "email": "mattst88@gmail.com",
        "time": "Fri Jul 19 13:54:23 2013 -0700"
      },
      "message": "alpha: Modernize lib/mpi/longlong.h\n\nRemove the compile warning for __udiv_qrnnd not having a prototype.\nUse the __builtin_alpha_umulh introduced in gcc 4.0.\n\nReviewed-and-Tested-by: Matt Turner \u003cmattst88@gmail.com\u003e\nSigned-off-by: Matt Turner \u003cmattst88@gmail.com\u003e\nSigned-off-by: Richard Henderson \u003crth@twiddle.net\u003e\n"
    },
    {
      "commit": "0db0628d90125193280eabb501c94feaf48fa9ab",
      "tree": "0e0ef0c4eac101d25a3bd125c4a9200ac4d294c0",
      "parents": [
        "49fb4c6290c70c418a5c25eee996d6b55ea132d6"
      ],
      "author": {
        "name": "Paul Gortmaker",
        "email": "paul.gortmaker@windriver.com",
        "time": "Wed Jun 19 14:53:51 2013 -0400"
      },
      "committer": {
        "name": "Paul Gortmaker",
        "email": "paul.gortmaker@windriver.com",
        "time": "Sun Jul 14 19:36:59 2013 -0400"
      },
      "message": "kernel: delete __cpuinit usage from all core kernel files\n\nThe __cpuinit type of throwaway sections might have made sense\nsome time ago when RAM was more constrained, but now the savings\ndo not offset the cost and complications.  For example, the fix in\ncommit 5e427ec2d0 (\"x86: Fix bit corruption at CPU resume time\")\nis a good example of the nasty type of bugs that can be created\nwith improper use of the various __init prefixes.\n\nAfter a discussion on LKML[1] it was decided that cpuinit should go\nthe way of devinit and be phased out.  Once all the users are gone,\nwe can then finally remove the macros themselves from linux/init.h.\n\nThis removes all the uses of the __cpuinit macros from C files in\nthe core kernel directories (kernel, init, lib, mm, and include)\nthat don\u0027t really have a specific maintainer.\n\n[1] https://lkml.org/lkml/2013/5/20/589\n\nSigned-off-by: Paul Gortmaker \u003cpaul.gortmaker@windriver.com\u003e\n"
    },
    {
      "commit": "41d9884c44237cd66e2bdbc412028b29196b344c",
      "tree": "7a386f6de2f07c01f87f3a16965c9bb8b40f63c1",
      "parents": [
        "63345b4794aef4ebe16502cfe35b02bc9822d763",
        "dae3794fd603b92dcbac2859fe0bc7fe129a5188"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun Jul 14 11:42:26 2013 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun Jul 14 11:42:26 2013 -0700"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs\n\nPull more vfs stuff from Al Viro:\n \"O_TMPFILE ABI changes, Oleg\u0027s fput() series, misc cleanups, including\n  making simple_lookup() usable for filesystems with non-NULL s_d_op,\n  which allows us to get rid of quite a bit of ugliness\"\n\n* \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs:\n  sunrpc: now we can just set -\u003es_d_op\n  cgroup: we can use simple_lookup() now\n  efivarfs: we can use simple_lookup() now\n  make simple_lookup() usable for filesystems that set -\u003es_d_op\n  configfs: don\u0027t open-code d_alloc_name()\n  __rpc_lookup_create_exclusive: pass string instead of qstr\n  rpc_create_*_dir: don\u0027t bother with qstr\n  llist: llist_add() can use llist_add_batch()\n  llist: fix/simplify llist_add() and llist_add_batch()\n  fput: turn \"list_head delayed_fput_list\" into llist_head\n  fs/file_table.c:fput(): add comment\n  Safer ABI for O_TMPFILE\n"
    },
    {
      "commit": "4fa109b13042868de84bedc70ea9b8337b502cf9",
      "tree": "e82ebb56e8b9316d5d7e3561523db0c8bcd42946",
      "parents": [
        "9663398a094e3b85415e27fe6047b067f5f81f99",
        "1b375dc30710180c4b88cc59caba6e3481ec5c8b"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Jul 13 15:35:12 2013 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Jul 13 15:35:12 2013 -0700"
      },
      "message": "Merge branch \u0027core-urgent-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip\n\nPull core locking updates from Thomas Gleixner:\n \"Header cleanup as requested by Linus\"\n\n(This is the \"don\u0027t include support for ww_mutex in a header file that\neverybody wants, when almost nobody wants the ww part\" change)\n\n* \u0027core-urgent-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:\n  mutex: Move ww_mutex definitions to ww_mutex.h\n"
    },
    {
      "commit": "d1447464789918db1e1a3d0aaf50d3d0f6487a4f",
      "tree": "490bd5c493cdba742dc90d3731962226838e5f33",
      "parents": [
        "833e68340d108d88f4cb79b7d7223f6859d362ca",
        "6ac5310e649df5fcd240d764503bf16a1317ea39"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Jul 13 14:52:21 2013 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Jul 13 14:52:21 2013 -0700"
      },
      "message": "Merge branch \u0027upstream\u0027 of git://git.linux-mips.org/pub/scm/ralf/upstream-linus\n\nPull MIPS updates from Ralf Baechle:\n \"MIPS updates:\n\n   - All the things that didn\u0027t make 3.10.\n   - Removes the Windriver PPMC platform.  Nobody will miss it.\n   - Remove a workaround from kernel/irq/irqdomain.c which was there\n     exclusivly for MIPS.  Patch by Grant Likely.\n   - More small improvments for the SEAD 3 platform\n   - Improvments on the BMIPS / SMP support for the BCM63xx series.\n   - Various cleanups of dead leftovers.\n   - Platform support for the Cavium Octeon-based EdgeRouter Lite.\n\n  Two large KVM patchsets didn\u0027t make it for this pull request because\n  their respective authors are vacationing\"\n\n* \u0027upstream\u0027 of git://git.linux-mips.org/pub/scm/ralf/upstream-linus: (124 commits)\n  MIPS: Kconfig: Add missing MODULES dependency to VPE_LOADER\n  MIPS: BCM63xx: CLK: Add dummy clk_{set,round}_rate() functions\n  MIPS: SEAD3: Disable L2 cache on SEAD-3.\n  MIPS: BCM63xx: Enable second core SMP on BCM6328 if available\n  MIPS: BCM63xx: Add SMP support to prom.c\n  MIPS: define write{b,w,l,q}_relaxed\n  MIPS: Expose missing pci_io{map,unmap} declarations\n  MIPS: Malta: Update GCMP detection.\n  Revert \"MIPS: make CAC_ADDR and UNCAC_ADDR account for PHYS_OFFSET\"\n  MIPS: APSP: Remove \u003casm/kspd.h\u003e\n  SSB: Kconfig: Amend SSB_EMBEDDED dependencies\n  MIPS: microMIPS: Fix improper definition of ISA exception bit.\n  MIPS: Don\u0027t try to decode microMIPS branch instructions where they cannot exist.\n  MIPS: Declare emulate_load_store_microMIPS as a static function.\n  MIPS: Fix typos and cleanup comment\n  MIPS: Cleanup indentation and whitespace\n  MIPS: BMIPS: support booting from physical CPU other than 0\n  MIPS: Only set cpu_has_mmips if SYS_SUPPORTS_MICROMIPS\n  MIPS: GIC: Fix gic_set_affinity infinite loop\n  MIPS: Don\u0027t save/restore OCTEON wide multiplier state on syscalls.\n  ...\n"
    },
    {
      "commit": "fb4214db50b00558cc6e274c88b3f7325068e942",
      "tree": "17a68a322310eaeb5bd3c3885ccdd14191f8b7bd",
      "parents": [
        "4f5e65a1cc90bbb15b9f6cdc362922af1bcc155a"
      ],
      "author": {
        "name": "Oleg Nesterov",
        "email": "oleg@redhat.com",
        "time": "Mon Jul 08 14:24:18 2013 -0700"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Sat Jul 13 13:29:24 2013 +0400"
      },
      "message": "llist: fix/simplify llist_add() and llist_add_batch()\n\n1. This is mostly theoretical, but llist_add*() need ACCESS_ONCE().\n\n   Otherwise it is not guaranteed that the first cmpxchg() uses the\n   same value for old_entry and new_last-\u003enext.\n\n2. These helpers cache the result of cmpxchg() and read the initial\n   value of head-\u003efirst before the main loop. I do not think this\n   makes sense. In the likely case cmpxchg() succeeds, otherwise\n   it doesn\u0027t hurt to reload head-\u003efirst.\n\n   I think it would be better to simplify the code and simply read\n   -\u003efirst before cmpxchg().\n\nSigned-off-by: Oleg Nesterov \u003coleg@redhat.com\u003e\nCc: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\nCc: Andrey Vagin \u003cavagin@openvz.org\u003e\nCc: \"Eric W. Biederman\" \u003cebiederm@xmission.com\u003e\nCc: David Howells \u003cdhowells@redhat.com\u003e\nCc: Huang Ying \u003cying.huang@intel.com\u003e\nCc: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "1b375dc30710180c4b88cc59caba6e3481ec5c8b",
      "tree": "24b5cfc929db57207afec4633909b8e6755df5f9",
      "parents": [
        "2e17c5a97e231f3cb426f4b7895eab5be5c5442e"
      ],
      "author": {
        "name": "Maarten Lankhorst",
        "email": "maarten.lankhorst@canonical.com",
        "time": "Fri Jul 05 09:29:32 2013 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@kernel.org",
        "time": "Fri Jul 12 12:07:46 2013 +0200"
      },
      "message": "mutex: Move ww_mutex definitions to ww_mutex.h\n\nMove the definitions for wound/wait mutexes out to a separate\nheader, ww_mutex.h. This reduces clutter in mutex.h, and\nincreases readability.\n\nSuggested-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\nSigned-off-by: Maarten Lankhorst \u003cmaarten.lankhorst@canonical.com\u003e\nAcked-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nAcked-by: Rik van Riel \u003criel@redhat.com\u003e\nAcked-by: Maarten Lankhorst \u003cmaarten.lankhorst@canonical.com\u003e\nCc: Dave Airlie \u003cairlied@gmail.com\u003e\nLink: http://lkml.kernel.org/r/51D675DC.3000907@canonical.com\n[ Tidied up the code a bit. ]\nSigned-off-by: Ingo Molnar \u003cmingo@kernel.org\u003e\n"
    },
    {
      "commit": "496322bc91e35007ed754184dcd447a02b6dd685",
      "tree": "f5298d0a74c0a6e65c0e98050b594b8d020904c1",
      "parents": [
        "2e17c5a97e231f3cb426f4b7895eab5be5c5442e",
        "56e0ef527b184b3de2d7f88c6190812b2b2ac6bf"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Jul 09 18:24:39 2013 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Jul 09 18:24:39 2013 -0700"
      },
      "message": "Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-next\n\nPull networking updates from David Miller:\n \"This is a re-do of the net-next pull request for the current merge\n  window.  The only difference from the one I made the other day is that\n  this has Eliezer\u0027s interface renames and the timeout handling changes\n  made based upon your feedback, as well as a few bug fixes that have\n  trickeled in.\n\n  Highlights:\n\n   1) Low latency device polling, eliminating the cost of interrupt\n      handling and context switches.  Allows direct polling of a network\n      device from socket operations, such as recvmsg() and poll().\n\n      Currently ixgbe, mlx4, and bnx2x support this feature.\n\n      Full high level description, performance numbers, and design in\n      commit 0a4db187a999 (\"Merge branch \u0027ll_poll\u0027\")\n\n      From Eliezer Tamir.\n\n   2) With the routing cache removed, ip_check_mc_rcu() gets exercised\n      more than ever before in the case where we have lots of multicast\n      addresses.  Use a hash table instead of a simple linked list, from\n      Eric Dumazet.\n\n   3) Add driver for Atheros CQA98xx 802.11ac wireless devices, from\n      Bartosz Markowski, Janusz Dziedzic, Kalle Valo, Marek Kwaczynski,\n      Marek Puzyniak, Michal Kazior, and Sujith Manoharan.\n\n   4) Support reporting the TUN device persist flag to userspace, from\n      Pavel Emelyanov.\n\n   5) Allow controlling network device VF link state using netlink, from\n      Rony Efraim.\n\n   6) Support GRE tunneling in openvswitch, from Pravin B Shelar.\n\n   7) Adjust SOCK_MIN_RCVBUF and SOCK_MIN_SNDBUF for modern times, from\n      Daniel Borkmann and Eric Dumazet.\n\n   8) Allow controlling of TCP quickack behavior on a per-route basis,\n      from Cong Wang.\n\n   9) Several bug fixes and improvements to vxlan from Stephen\n      Hemminger, Pravin B Shelar, and Mike Rapoport.  In particular,\n      support receiving on multiple UDP ports.\n\n  10) Major cleanups, particular in the area of debugging and cookie\n      lifetime handline, to the SCTP protocol code.  From Daniel\n      Borkmann.\n\n  11) Allow packets to cross network namespaces when traversing tunnel\n      devices.  From Nicolas Dichtel.\n\n  12) Allow monitoring netlink traffic via AF_PACKET sockets, in a\n      manner akin to how we monitor real network traffic via ptype_all.\n      From Daniel Borkmann.\n\n  13) Several bug fixes and improvements for the new alx device driver,\n      from Johannes Berg.\n\n  14) Fix scalability issues in the netem packet scheduler\u0027s time queue,\n      by using an rbtree.  From Eric Dumazet.\n\n  15) Several bug fixes in TCP loss recovery handling, from Yuchung\n      Cheng.\n\n  16) Add support for GSO segmentation of MPLS packets, from Simon\n      Horman.\n\n  17) Make network notifiers have a real data type for the opaque\n      pointer that\u0027s passed into them.  Use this to properly handle\n      network device flag changes in arp_netdev_event().  From Jiri\n      Pirko and Timo Teräs.\n\n  18) Convert several drivers over to module_pci_driver(), from Peter\n      Huewe.\n\n  19) tcp_fixup_rcvbuf() can loop 500 times over loopback, just use a\n      O(1) calculation instead.  From Eric Dumazet.\n\n  20) Support setting of explicit tunnel peer addresses in ipv6, just\n      like ipv4.  From Nicolas Dichtel.\n\n  21) Protect x86 BPF JIT against spraying attacks, from Eric Dumazet.\n\n  22) Prevent a single high rate flow from overruning an individual cpu\n      during RX packet processing via selective flow shedding.  From\n      Willem de Bruijn.\n\n  23) Don\u0027t use spinlocks in TCP md5 signing fast paths, from Eric\n      Dumazet.\n\n  24) Don\u0027t just drop GSO packets which are above the TBF scheduler\u0027s\n      burst limit, chop them up so they are in-bounds instead.  Also\n      from Eric Dumazet.\n\n  25) VLAN offloads are missed when configured on top of a bridge, fix\n      from Vlad Yasevich.\n\n  26) Support IPV6 in ping sockets.  From Lorenzo Colitti.\n\n  27) Receive flow steering targets should be updated at poll() time\n      too, from David Majnemer.\n\n  28) Fix several corner case regressions in PMTU/redirect handling due\n      to the routing cache removal, from Timo Teräs.\n\n  29) We have to be mindful of ipv4 mapped ipv6 sockets in\n      upd_v6_push_pending_frames().  From Hannes Frederic Sowa.\n\n  30) Fix L2TP sequence number handling bugs, from James Chapman.\"\n\n* git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-next: (1214 commits)\n  drivers/net: caif: fix wrong rtnl_is_locked() usage\n  drivers/net: enic: release rtnl_lock on error-path\n  vhost-net: fix use-after-free in vhost_net_flush\n  net: mv643xx_eth: do not use port number as platform device id\n  net: sctp: confirm route during forward progress\n  virtio_net: fix race in RX VQ processing\n  virtio: support unlocked queue poll\n  net/cadence/macb: fix bug/typo in extracting gem_irq_read_clear bit\n  Documentation: Fix references to defunct linux-net@vger.kernel.org\n  net/fs: change busy poll time accounting\n  net: rename low latency sockets functions to busy poll\n  bridge: fix some kernel warning in multicast timer\n  sfc: Fix memory leak when discarding scattered packets\n  sit: fix tunnel update via netlink\n  dt:net:stmmac: Add dt specific phy reset callback support.\n  dt:net:stmmac: Add support to dwmac version 3.610 and 3.710\n  dt:net:stmmac: Allocate platform data only if its NULL.\n  net:stmmac: fix memleak in the open method\n  ipv6: rt6_check_neigh should successfully verify neigh if no NUD information are available\n  net: ipv6: fix wrong ping_v6_sendmsg return value\n  ...\n"
    },
    {
      "commit": "27daabd9b6a157c34a6e7a7f509fa26866e6420f",
      "tree": "349a1b1641ac497a3c999e1524dd39812f93a6b4",
      "parents": [
        "a451751172b39702e94c683882ab01d816b673c7"
      ],
      "author": {
        "name": "Dan Carpenter",
        "email": "dan.carpenter@oracle.com",
        "time": "Mon Jul 08 16:01:58 2013 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Jul 09 10:33:31 2013 -0700"
      },
      "message": "lib/scatterlist: error handling in __sg_alloc_table()\n\nI was reviewing code which I suspected might allocate a zero size SG\ntable.  That will cause memory corruption.  Also we can\u0027t return before\ndoing the memset or we could end up using uninitialized memory in the\ncleanup path.\n\nSigned-off-by: Dan Carpenter \u003cdan.carpenter@oracle.com\u003e\nCc: Akinobu Mita \u003cakinobu.mita@gmail.com\u003e\nCc: Imre Deak \u003cimre.deak@intel.com\u003e\nCc: Tejun Heo \u003ctj@kernel.org\u003e\nCc: Daniel Vetter \u003cdaniel.vetter@ffwll.ch\u003e\nCc: Maxim Levitsky \u003cmaximlevitsky@gmail.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "df642cea25c90dc7d5dcd9d3b480b6b59de7d787",
      "tree": "947e40ff7e12907461082d88ef390084bb90f915",
      "parents": [
        "1105200480b4faeb673d1b23658650b003302c06"
      ],
      "author": {
        "name": "Akinobu Mita",
        "email": "akinobu.mita@gmail.com",
        "time": "Mon Jul 08 16:01:54 2013 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Jul 09 10:33:30 2013 -0700"
      },
      "message": "lib/scatterlist: introduce sg_pcopy_from_buffer() and sg_pcopy_to_buffer()\n\nThe only difference between sg_pcopy_{from,to}_buffer() and\nsg_copy_{from,to}_buffer() is an additional argument that specifies the\nnumber of bytes to skip the SG list before copying.\n\nSigned-off-by: Akinobu Mita \u003cakinobu.mita@gmail.com\u003e\nCc: \"David S. Miller\" \u003cdavem@davemloft.net\u003e\nCc: \"James E.J. Bottomley\" \u003cJBottomley@parallels.com\u003e\nCc: Douglas Gilbert \u003cdgilbert@interlog.com\u003e\nCc: Herbert Xu \u003cherbert@gondor.apana.org.au\u003e\nCc: Horia Geanta \u003choria.geanta@freescale.com\u003e\nCc: Imre Deak \u003cimre.deak@intel.com\u003e\nAcked-by: Tejun Heo \u003ctj@kernel.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "1105200480b4faeb673d1b23658650b003302c06",
      "tree": "546433c5f8c403c296fa7e1f8929030b902514ed",
      "parents": [
        "0ea8530dcf762526459b29ac713a623b51fd691f"
      ],
      "author": {
        "name": "Akinobu Mita",
        "email": "akinobu.mita@gmail.com",
        "time": "Mon Jul 08 16:01:52 2013 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Jul 09 10:33:30 2013 -0700"
      },
      "message": "lib/scatterlist: factor out sg_miter_get_next_page() from sg_miter_next()\n\nThis patchset introduces sg_pcopy_from_buffer() and sg_pcopy_to_buffer(),\nwhich copy data between a linear buffer and an SG list.\n\nThe only difference between sg_pcopy_{from,to}_buffer() and\nsg_copy_{from,to}_buffer() is an additional argument that specifies the\nnumber of bytes to skip the SG list before copying.\n\nThe main reason for introducing these functions is to fix a problem in\nscsi_debug module.  And there is a local function in crypto/talitos\nmodule, which can be replaced by sg_pcopy_to_buffer().\n\nThis patch:\n\nsg_miter_get_next_page() is used to proceed page iterator to the next page\nif necessary, and will be used to implement the variants of\nsg_copy_{from,to}_buffer() later.\n\nSigned-off-by: Akinobu Mita \u003cakinobu.mita@gmail.com\u003e\nAcked-by: Tejun Heo \u003ctj@kernel.org\u003e\nCc: Tejun Heo \u003ctj@kernel.org\u003e\nCc: Imre Deak \u003cimre.deak@intel.com\u003e\nCc: Herbert Xu \u003cherbert@gondor.apana.org.au\u003e\nCc: \"David S. Miller\" \u003cdavem@davemloft.net\u003e\nCc: \"James E.J. Bottomley\" \u003cJBottomley@parallels.com\u003e\nCc: Douglas Gilbert \u003cdgilbert@interlog.com\u003e\nCc: Horia Geanta \u003choria.geanta@freescale.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "c72ac7a1a926dbffb59daf0f275450e5eecce16f",
      "tree": "11350b56ad27c7001bdd45ce35d95666c355dfa8",
      "parents": [
        "f9b493ac9b833fd9dd3bbd50460adb33f29e1238"
      ],
      "author": {
        "name": "Chanho Min",
        "email": "chanho.min@lge.com",
        "time": "Mon Jul 08 16:01:49 2013 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Jul 09 10:33:30 2013 -0700"
      },
      "message": "lib: add lz4 compressor module\n\nThis patchset is for supporting LZ4 compression and the crypto API using\nit.\n\nAs shown below, the size of data is a little bit bigger but compressing\nspeed is faster under the enabled unaligned memory access.  We can use\nlz4 de/compression through crypto API as well.  Also, It will be useful\nfor another potential user of lz4 compression.\n\nlz4 Compression Benchmark:\nCompiler: ARM gcc 4.6.4\nARMv7, 1 GHz based board\n   Kernel: linux 3.4\n   Uncompressed data Size: 101 MB\n         Compressed Size  compression Speed\n   LZO   72.1MB\t\t  32.1MB/s, 33.0MB/s(UA)\n   LZ4   75.1MB\t\t  30.4MB/s, 35.9MB/s(UA)\n   LZ4HC 59.8MB\t\t   2.4MB/s,  2.5MB/s(UA)\n- UA: Unaligned memory Access support\n- Latest patch set for LZO applied\n\nThis patch:\n\nAdd support for LZ4 compression in the Linux Kernel.  LZ4 Compression APIs\nfor kernel are based on LZ4 implementation by Yann Collet and were changed\nfor kernel coding style.\n\nLZ4 homepage : http://fastcompression.blogspot.com/p/lz4.html\nLZ4 source repository : http://code.google.com/p/lz4/\nsvn revision : r90\n\nTwo APIs are added:\n\nlz4_compress() support basic lz4 compression whereas lz4hc_compress()\nsupport high compression or CPU performance get lower but compression\nratio get higher.  Also, we require the pre-allocated working memory with\nthe defined size and destination buffer must be allocated with the size of\nlz4_compressbound.\n\n[akpm@linux-foundation.org: make lz4_compresshcctx() static]\nSigned-off-by: Chanho Min \u003cchanho.min@lge.com\u003e\nCc: \"Darrick J. Wong\" \u003cdjwong@us.ibm.com\u003e\nCc: Bob Pearson \u003crpearson@systemfabricworks.com\u003e\nCc: Richard Weinberger \u003crichard@nod.at\u003e\nCc: Herbert Xu \u003cherbert@gondor.hengli.com.au\u003e\nCc: Yann Collet \u003cyann.collet.73@gmail.com\u003e\nCc: Kyungsik Lee \u003ckyungsik.lee@lge.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "e76e1fdfa8f8dc1ea6699923cf5d92b5bee9c936",
      "tree": "d216233bcf256a8a3d8912cebbbf82032bb7b715",
      "parents": [
        "cffb78b0e0b3a30b059b27a1d97500cf6464efa9"
      ],
      "author": {
        "name": "Kyungsik Lee",
        "email": "kyungsik.lee@lge.com",
        "time": "Mon Jul 08 16:01:46 2013 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Jul 09 10:33:30 2013 -0700"
      },
      "message": "lib: add support for LZ4-compressed kernel\n\nAdd support for extracting LZ4-compressed kernel images, as well as\nLZ4-compressed ramdisk images in the kernel boot process.\n\nSigned-off-by: Kyungsik Lee \u003ckyungsik.lee@lge.com\u003e\nCc: \"H. Peter Anvin\" \u003chpa@zytor.com\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nCc: Russell King \u003crmk@arm.linux.org.uk\u003e\nCc: Borislav Petkov \u003cbp@alien8.de\u003e\nCc: Florian Fainelli \u003cflorian@openwrt.org\u003e\nCc: Yann Collet \u003cyann.collet.73@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": "cffb78b0e0b3a30b059b27a1d97500cf6464efa9",
      "tree": "e20e06f58e90d3a6f3c3ff91547a9e9d51a8f230",
      "parents": [
        "4df87bb7b6a22dfc6fdd5abb3dd362b3af2c164d"
      ],
      "author": {
        "name": "Kyungsik Lee",
        "email": "kyungsik.lee@lge.com",
        "time": "Mon Jul 08 16:01:45 2013 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Jul 09 10:33:30 2013 -0700"
      },
      "message": "decompressor: add LZ4 decompressor module\n\nAdd support for LZ4 decompression in the Linux Kernel.  LZ4 Decompression\nAPIs for kernel are based on LZ4 implementation by Yann Collet.\n\nBenchmark Results(PATCH v3)\nCompiler: Linaro ARM gcc 4.6.2\n\n1. ARMv7, 1.5GHz based board\n   Kernel: linux 3.4\n   Uncompressed Kernel Size: 14MB\n        Compressed Size  Decompression Speed\n   LZO  6.7MB            20.1MB/s, 25.2MB/s(UA)\n   LZ4  7.3MB            29.1MB/s, 45.6MB/s(UA)\n\n2. ARMv7, 1.7GHz based board\n   Kernel: linux 3.7\n   Uncompressed Kernel Size: 14MB\n        Compressed Size  Decompression Speed\n   LZO  6.0MB            34.1MB/s, 52.2MB/s(UA)\n   LZ4  6.5MB            86.7MB/s\n- UA: Unaligned memory Access support\n- Latest patch set for LZO applied\n\nThis patch set is for adding support for LZ4-compressed Kernel.  LZ4 is a\nvery fast lossless compression algorithm and it also features an extremely\nfast decoder [1].\n\nBut we have five of decompressors already and one question which does\narise, however, is that of where do we stop adding new ones?  This issue\nhad been discussed and came to the conclusion [2].\n\nRussell King said that we should have:\n\n - one decompressor which is the fastest\n - one decompressor for the highest compression ratio\n - one popular decompressor (eg conventional gzip)\n\nIf we have a replacement one for one of these, then it should do exactly\nthat: replace it.\n\nThe benchmark shows that an 8% increase in image size vs a 66% increase\nin decompression speed compared to LZO(which has been known as the\nfastest decompressor in the Kernel).  Therefore the \"fast but may not be\nsmall\" compression title has clearly been taken by LZ4 [3].\n\n[1] http://code.google.com/p/lz4/\n[2] http://thread.gmane.org/gmane.linux.kbuild.devel/9157\n[3] http://thread.gmane.org/gmane.linux.kbuild.devel/9347\n\nLZ4 homepage: http://fastcompression.blogspot.com/p/lz4.html\nLZ4 source repository: http://code.google.com/p/lz4/\n\nSigned-off-by: Kyungsik Lee \u003ckyungsik.lee@lge.com\u003e\nSigned-off-by: Yann Collet \u003cyann.collet.73@gmail.com\u003e\nCc: \"H. Peter Anvin\" \u003chpa@zytor.com\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nCc: Russell King \u003crmk@arm.linux.org.uk\u003e\nCc: Borislav Petkov \u003cbp@alien8.de\u003e\nCc: Florian Fainelli \u003cflorian@openwrt.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "4df87bb7b6a22dfc6fdd5abb3dd362b3af2c164d",
      "tree": "e7e065ee0e172184fc7dc8f96a508518836e38f2",
      "parents": [
        "1b3a5d02ee070c8f9943333b9b6370f486601e0f"
      ],
      "author": {
        "name": "Chanho Min",
        "email": "chanho.min@lge.com",
        "time": "Mon Jul 08 16:01:43 2013 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Jul 09 10:33:30 2013 -0700"
      },
      "message": "lib: add weak clz/ctz functions\n\nSome architectures need __c[lt]z[sd]i2() for __builtin_c[lt]z[ll] and\nthat causes a build failure.  They can be implemented using the\nfls()/__ffs() and overridden by linking arch-specific versions may not\nbe implemented yet.\n\nThis is required by \"lib: add lz4 compressor module\".\n\nReference: https://lkml.org/lkml/2013/4/18/603\n\nSigned-off-by: Chanho Min \u003cchanho.min@lge.com\u003e\nReported-by: Geert Uytterhoeven \u003cgeert@linux-m68k.org\u003e\nCc: \"Darrick J. Wong\" \u003cdjwong@us.ibm.com\u003e\nCc: Bob Pearson \u003crpearson@systemfabricworks.com\u003e\nCc: Richard Weinberger \u003crichard@nod.at\u003e\nCc: Herbert Xu \u003cherbert@gondor.hengli.com.au\u003e\nCc: Yann Collet \u003cyann.collet.73@gmail.com\u003e\nCc: Kyungsik Lee \u003ckyungsik.lee@lge.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "b2c311075db578f1433d9b303698491bfa21279a",
      "tree": "41d5f1b5ad6f45be7211f524328de81f7e9754be",
      "parents": [
        "45175476ae2dbebc860d5cf486f2916044343513",
        "02c0241b600e4ab8a732c89749e252165145d60c"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Jul 05 12:12:33 2013 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Jul 05 12:12:33 2013 -0700"
      },
      "message": "Merge git://git.kernel.org/pub/scm/linux/kernel/git/herbert/crypto-2.6\n\nPull crypto update from Herbert Xu:\n - Do not idle omap device between crypto operations in one session.\n - Added sha224/sha384 shims for SSSE3.\n - More optimisations for camellia-aesni-avx2.\n - Removed defunct blowfish/twofish AVX2 implementations.\n - Added unaligned buffer self-tests.\n - Added PCLMULQDQ optimisation for CRCT10DIF.\n - Added support for Freescale\u0027s DCP co-processor\n - Misc fixes.\n\n* git://git.kernel.org/pub/scm/linux/kernel/git/herbert/crypto-2.6: (44 commits)\n  crypto: testmgr - test hash implementations with unaligned buffers\n  crypto: testmgr - test AEADs with unaligned buffers\n  crypto: testmgr - test skciphers with unaligned buffers\n  crypto: testmgr - check that entries in alg_test_descs are in correct order\n  Revert \"crypto: twofish - add AVX2/x86_64 assembler implementation of twofish cipher\"\n  Revert \"crypto: blowfish - add AVX2/x86_64 implementation of blowfish cipher\"\n  crypto: camellia-aesni-avx2 - tune assembly code for more performance\n  hwrng: bcm2835 - fix MODULE_LICENSE tag\n  hwrng: nomadik - use clk_prepare_enable()\n  crypto: picoxcell - replace strict_strtoul() with kstrtoul()\n  crypto: dcp - Staticize local symbols\n  crypto: dcp - Use NULL instead of 0\n  crypto: dcp - Use devm_* APIs\n  crypto: dcp - Remove redundant platform_set_drvdata()\n  hwrng: use platform_{get,set}_drvdata()\n  crypto: omap-aes - Don\u0027t idle/start AES device between Encrypt operations\n  crypto: crct10dif - Use PTR_RET\n  crypto: ux500 - Cocci spatch \"resource_size.spatch\"\n  crypto: sha256_ssse3 - add sha224 support\n  crypto: sha512_ssse3 - add sha384 support\n  ...\n"
    },
    {
      "commit": "80cc38b16389849a6e06441ace4530f6b2497c3c",
      "tree": "1dabc02b0a1faa6b640de20e38aa31bb5d0c443f",
      "parents": [
        "3366dd9fa887ebbda4872e9554f853eaeda764be",
        "83a35e360433b58791bc9c4e288cace466d62e3a"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Jul 04 11:40:58 2013 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Jul 04 11:40:58 2013 -0700"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/jikos/trivial\n\nPull trivial tree updates from Jiri Kosina:\n \"The usual stuff from trivial tree\"\n\n* \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/jikos/trivial: (34 commits)\n  treewide: relase -\u003e release\n  Documentation/cgroups/memory.txt: fix stat file documentation\n  sysctl/net.txt: delete reference to obsolete 2.4.x kernel\n  spinlock_api_smp.h: fix preprocessor comments\n  treewide: Fix typo in printk\n  doc: device tree: clarify stuff in usage-model.txt.\n  open firmware: \"/aliasas\" -\u003e \"/aliases\"\n  md: bcache: Fixed a typo with the word \u0027arithmetic\u0027\n  irq/generic-chip: fix a few kernel-doc entries\n  frv: Convert use of typedef ctl_table to struct ctl_table\n  sgi: xpc: Convert use of typedef ctl_table to struct ctl_table\n  doc: clk: Fix incorrect wording\n  Documentation/arm/IXP4xx fix a typo\n  Documentation/networking/ieee802154 fix a typo\n  Documentation/DocBook/media/v4l fix a typo\n  Documentation/video4linux/si476x.txt fix a typo\n  Documentation/virtual/kvm/api.txt fix a typo\n  Documentation/early-userspace/README fix a typo\n  Documentation/video4linux/soc-camera.txt fix a typo\n  lguest: fix CONFIG_PAE -\u003e CONFIG_x86_PAE in comment\n  ...\n"
    },
    {
      "commit": "e61aca5158a84932cf9fbbcbf8aef9cef63f5026",
      "tree": "25234bcfe6b13c8a66bdb22eb9eba0a3bbace424",
      "parents": [
        "da67db4e55b45690cd283cdbdfa92d3252191108",
        "92aef8fbabb4cc8616777ab27d6499a3719c3e4c"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Jul 04 11:25:51 2013 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Jul 04 11:25:51 2013 -0700"
      },
      "message": "Merge branch \u0027kconfig-diet\u0027 from Dave Hansen\n\nMerge Kconfig menu diet patches from Dave Hansen:\n \"I think the \"Kernel Hacking\" menu has gotten a bit out of hand.  It is\n  over 120 lines long on my system with everything enabled and options\n  are scattered around it haphazardly.\n\n        http://sr71.net/~dave/linux/kconfig-horror.png\n\n  Let\u0027s try to introduce some sanity.  This set takes that 120 lines\n  down to 55 and makes it vastly easier to find some things.  It\u0027s a\n  start.\n\n  This set stands on its own, but there is plenty of room for follow-up\n  patches.  The arch-specific debug options still end up getting stuck\n  in the top-level \"kernel hacking\" menu.  OPTIMIZE_INLINING, for\n  instance, could obviously go in to the \"compiler options\" menu, but\n  the fact that it is defined in arch/ in a separate Kconfig file keeps\n  it on its own for the moment.\n\n  The Signed-off-by\u0027s in here look funky.  I changed employers while\n  working on this set, so I have signoffs from both email addresses\"\n\n* emailed patches from Dave Hansen \u003cdave@sr71.net\u003e:\n  hang and lockup detection menu\n  kconfig: consolidate printk options\n  group locking debugging options\n  consolidate compilation option configs\n  consolidate runtime testing configs\n  order memory debugging Kconfig options\n  consolidate per-arch stack overflow debugging options\n"
    },
    {
      "commit": "92aef8fbabb4cc8616777ab27d6499a3719c3e4c",
      "tree": "44b19a0d06116bc4621ddaf78b389977cbe081bd",
      "parents": [
        "604ff0dceb2aca049a25a181c68f8db5c0798f7f"
      ],
      "author": {
        "name": "Dave Hansen",
        "email": "dave.hansen@linux.intel.com",
        "time": "Mon Jul 01 13:04:50 2013 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Jul 04 11:25:39 2013 -0700"
      },
      "message": "hang and lockup detection menu\n\nThe hard/softlockup and hung-task entries take up 6 lines\nof screen real-estate when enabled.  I bet folks don\u0027t\nmess with these _that_ often, so move them in a group\ndown a level.\n\nSigned-off-by: Dave Hansen \u003cdave.hansen@linux.intel.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "604ff0dceb2aca049a25a181c68f8db5c0798f7f",
      "tree": "cd512d23691ee4fcc4ed9dbeb767a8b43510c59d",
      "parents": [
        "9eade16b4151ec35a9e03bbc7cc890e640a536c1"
      ],
      "author": {
        "name": "Dave Hansen",
        "email": "dave.hansen@linux.intel.com",
        "time": "Mon Jul 01 13:04:49 2013 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Jul 04 11:25:39 2013 -0700"
      },
      "message": "kconfig: consolidate printk options\n\nSame deal, take the printk-related things and hide them in a menu.\nThis takes another 4 items out of the top-level menu.\n\nSigned-off-by: Dave Hansen \u003cdave.hansen@linux.intel.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "9eade16b4151ec35a9e03bbc7cc890e640a536c1",
      "tree": "253dc89cf1dba37e4e941cfbeaf1d967d8002600",
      "parents": [
        "6dfc06651b3d29aa07ed99b8075e5d324f7a953a"
      ],
      "author": {
        "name": "Dave Hansen",
        "email": "dave@linux.vnet.ibm.com",
        "time": "Mon Jul 01 13:04:47 2013 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Jul 04 11:25:39 2013 -0700"
      },
      "message": "group locking debugging options\n\nOriginal posting:\n\n\thttp://lkml.kernel.org/r/20121214184208.D9E5804D@kernel.stglabs.ibm.com\n\nThere are quite a few of these, and we want to make sure that\nthere is one-stop-shopping for lock debugging.\n\nSigned-off-by: Dave Hansen \u003cdave@linux.vnet.ibm.com\u003e\nSigned-off-by: Dave Hansen \u003cdave.hansen@linux.intel.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "6dfc06651b3d29aa07ed99b8075e5d324f7a953a",
      "tree": "e4ae4a93c349456e894da04689a6deaae3063e75",
      "parents": [
        "881c5149543a3a391ab6ce2ebe70235924f15d9c"
      ],
      "author": {
        "name": "Dave Hansen",
        "email": "dave@linux.vnet.ibm.com",
        "time": "Mon Jul 01 13:04:46 2013 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Jul 04 11:25:39 2013 -0700"
      },
      "message": "consolidate compilation option configs\n\nOriginal Post:\n\n\thttp://lkml.kernel.org/r/20121214184207.6E00DDEC@kernel.stglabs.ibm.com\n\nAgain, trying to come up with some common themes of the stuff in\nthe kernel hacking menu...  There are quite a few options to\ntweak compilation in some way, or perform extra compile-time\nchecks.  Give them their own menu.\n\nThe diff here looks a bit funny... makes it look like I\u0027m\nmoving debugfs even though I\u0027m actually moving the options on\neither side of it.\n\nSigned-off-by: Dave Hansen \u003cdave@linux.vnet.ibm.com\u003e\nSigned-off-by: Dave Hansen \u003cdave.hansen@linux.intel.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "881c5149543a3a391ab6ce2ebe70235924f15d9c",
      "tree": "0136f2864d7c44f4bef678723250a9ecf051ac8d",
      "parents": [
        "0610c8a8a258e869a542e5fdb964c6816336559e"
      ],
      "author": {
        "name": "Dave Hansen",
        "email": "dave@linux.vnet.ibm.com",
        "time": "Mon Jul 01 13:04:44 2013 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Jul 04 11:25:39 2013 -0700"
      },
      "message": "consolidate runtime testing configs\n\nOriginal posting:\n\n\thttp://lkml.kernel.org/r/20121214184206.FC11422F@kernel.stglabs.ibm.com\n\nThese runtime tests are great, except that there are a lot of them,\nand they are very rarely needed.  Give them their own menu so that\nonly the folks who need them will have to go looking for them.\n\nNote that there are some other runtime tests that are not in here,\nlike for RCU or locking.  This menu should only be used for tests\nthat do not have a more appropriate home.\n\nSigned-off-by: Dave Hansen \u003cdave@linux.vnet.ibm.com\u003e\nSigned-off-by: Dave Hansen \u003cdave.hansen@linux.intel.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "0610c8a8a258e869a542e5fdb964c6816336559e",
      "tree": "d70e7aba355ec74c4310ac5f4cc57a8f713954ea",
      "parents": [
        "d1a1dc0be866219f7a613c6368c6a036b8eefe03"
      ],
      "author": {
        "name": "Dave Hansen",
        "email": "dave@linux.vnet.ibm.com",
        "time": "Mon Jul 01 13:04:43 2013 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Jul 04 11:25:39 2013 -0700"
      },
      "message": "order memory debugging Kconfig options\n\nOriginal posting:\n\n\thttp://lkml.kernel.org/r/20121214184203.37E6C724@kernel.stglabs.ibm.com\n\nThere are a *LOT* of memory debugging options.  They are just scattered\nall over the \"Kernel Hacking\" menu.  Sure, \"memory debugging\" is a very\nvague term and it\u0027s going to be hard to make absolute rules about what\ngoes in here, but this has to be better than what we had before.\n\nThis does, however, leave out the architecture-specific memory\ndebugging options (like x86\u0027s DEBUG_SET_MODULE_RONX).  There would need\nto be some substantial changes to move those in here.  Kconfig can not\neasily mix arch-specific and generic options together: it really\nrequires a file per-architecture, and I think having an\narch/foo/Kconfig.debug-memory might be taking things a bit too far\n\nSigned-off-by: Dave Hansen \u003cdave@linux.vnet.ibm.com\u003e\nSigned-off-by: Dave Hansen \u003cdave.hansen@linux.intel.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "d1a1dc0be866219f7a613c6368c6a036b8eefe03",
      "tree": "3e82bc03670f24e26cb340278e6bc2abd8f7f54b",
      "parents": [
        "8bb495e3f02401ee6f76d1b1d77f3ac9f079e376"
      ],
      "author": {
        "name": "Dave Hansen",
        "email": "dave@linux.vnet.ibm.com",
        "time": "Mon Jul 01 13:04:42 2013 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Jul 04 11:25:39 2013 -0700"
      },
      "message": "consolidate per-arch stack overflow debugging options\n\nOriginal posting:\n\n\thttp://lkml.kernel.org/r/20121214184202.F54094D9@kernel.stglabs.ibm.com\n\nSeveral architectures have similar stack debugging config options.\nThey all pretty much do the same thing, some with slightly\ndiffering help text.\n\nThis patch changes the architectures to instead enable a Kconfig\nboolean, and then use that boolean in the generic Kconfig.debug\nto present the actual menu option.  This removes a bunch of\nduplication and adds consistency across arches.\n\nSigned-off-by: Dave Hansen \u003cdave@linux.vnet.ibm.com\u003e\nReviewed-by: H. Peter Anvin \u003chpa@zytor.com\u003e\nReviewed-by: James Hogan \u003cjames.hogan@imgtec.com\u003e\nAcked-by: Chris Metcalf \u003ccmetcalf@tilera.com\u003e [for tile]\nSigned-off-by: Dave Hansen \u003cdave.hansen@linux.intel.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "7f0ef0267e20d62d45d527911a993b1e998f4968",
      "tree": "de51abc7da5903f59d83e23937f22420164c9477",
      "parents": [
        "862f0012549110d6f2586bf54b52ed4540cbff3a",
        "9307c29524502c21f0e8a6d96d850b2f5bc0bd9a"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Jul 03 17:12:13 2013 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Jul 03 17:12:13 2013 -0700"
      },
      "message": "Merge branch \u0027akpm\u0027 (updates from Andrew Morton)\n\nMerge first patch-bomb from Andrew Morton:\n - various misc bits\n - I\u0027m been patchmonkeying ocfs2 for a while, as Joel and Mark have been\n   distracted.  There has been quite a bit of activity.\n - About half the MM queue\n - Some backlight bits\n - Various lib/ updates\n - checkpatch updates\n - zillions more little rtc patches\n - ptrace\n - signals\n - exec\n - procfs\n - rapidio\n - nbd\n - aoe\n - pps\n - memstick\n - tools/testing/selftests updates\n\n* emailed patches from Andrew Morton \u003cakpm@linux-foundation.org\u003e: (445 commits)\n  tools/testing/selftests: don\u0027t assume the x bit is set on scripts\n  selftests: add .gitignore for kcmp\n  selftests: fix clean target in kcmp Makefile\n  selftests: add .gitignore for vm\n  selftests: add hugetlbfstest\n  self-test: fix make clean\n  selftests: exit 1 on failure\n  kernel/resource.c: remove the unneeded assignment in function __find_resource\n  aio: fix wrong comment in aio_complete()\n  drivers/w1/slaves/w1_ds2408.c: add magic sequence to disable P0 test mode\n  drivers/memstick/host/r592.c: convert to module_pci_driver\n  drivers/memstick/host/jmb38x_ms: convert to module_pci_driver\n  pps-gpio: add device-tree binding and support\n  drivers/pps/clients/pps-gpio.c: convert to module_platform_driver\n  drivers/pps/clients/pps-gpio.c: convert to devm_* helpers\n  drivers/parport/share.c: use kzalloc\n  Documentation/accounting/getdelays.c: avoid strncpy in accounting tool\n  aoe: update internal version number to v83\n  aoe: update copyright date\n  aoe: perform I/O completions in parallel\n  ...\n"
    },
    {
      "commit": "dd04b452f532ca100f7c557295ffcbc049c77171",
      "tree": "a889034e7b6cd0507ec10f32f07731b59e6cefc2",
      "parents": [
        "8bdc237ac113dd42a1c977c8cd3a65a82f774d5e"
      ],
      "author": {
        "name": "Jean Delvare",
        "email": "jdelvare@suse.de",
        "time": "Wed Jul 03 15:08:47 2013 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Jul 03 16:08:04 2013 -0700"
      },
      "message": "idr: print a stack dump after ida_remove warning\n\nWe print a dump stack after idr_remove warning.  This is useful to find\nthe faulty piece of code.  Let\u0027s do the same for ida_remove, as it would\nbe equally useful there.\n\n[akpm@linux-foundation.org: convert the open-coded printk+dump_stack into WARN()]\nSigned-off-by: Jean Delvare \u003cjdelvare@suse.de\u003e\nCc: Tejun Heo \u003ctj@kernel.org\u003e\nCc: Takashi Iwai \u003ctiwai@suse.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "64df3071a97f20767f63b88c573791691a855b5c",
      "tree": "d7f8de21c425465f6e790c5de74d2dc54214b9e3",
      "parents": [
        "5cb0656b62ff1199763764e4f6b4c06d30d5d0f5"
      ],
      "author": {
        "name": "Fan Du",
        "email": "fan.du@windriver.com",
        "time": "Wed Jul 03 15:05:19 2013 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Jul 03 16:07:43 2013 -0700"
      },
      "message": "lib/percpu_counter.c: __this_cpu_write() doesn\u0027t need to be protected by spinlock\n\n__this_cpu_write doesn\u0027t need to be protected by spinlock, AS we are doing\nper cpu write with preempt disabled.  And another reason to remove\n__this_cpu_write outside of spinlock: __percpu_counter_sum is not an\naccurate counter.\n\nSigned-off-by: Fan Du \u003cfan.du@windriver.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "b58d977432c80ee60d6970042775a62e3f8d7675",
      "tree": "ca998b67437265115d2d242b47f2ac52fa0091c5",
      "parents": [
        "f170168b9a0b61ea1e647b082b38f605f1d3de3e"
      ],
      "author": {
        "name": "Alex Thorlton",
        "email": "athorlton@sgi.com",
        "time": "Wed Jul 03 15:04:59 2013 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Jul 03 16:07:41 2013 -0700"
      },
      "message": "dump_stack: serialize the output from dump_stack()\n\nAdd functionality to serialize the output from dump_stack() to avoid\nmangling of the output when dump_stack is called simultaneously from\nmultiple cpus.\n\n[akpm@linux-foundation.org: fix comment indenting, avoid inclusion of \u003casm/\u003e files - use \u003clinux/\u003e where possiblem fix uniprocessor build (__dump_stack undefined), remove unneeded ifdef around smp.h inclusion]\nSigned-off-by: Alex Thorlton \u003cathorlton@sgi.com\u003e\nReported-by: Russ Anderson \u003crja@sgi.com\u003e\nReviewed-by: Robin Holt \u003cholt@sgi.com\u003e\nCc: Vineet Gupta \u003cvgupta@synopsys.com\u003e\nCc: David S. Miller \u003cdavem@davemloft.net\u003e\nCc: Richard Kuo \u003crkuo@codeaurora.org\u003e\nCc: Jesper Nilsson \u003cjesper.nilsson@axis.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "ab5348573908dedb62dd906aa60c5989fecfe38f",
      "tree": "e98fc37939cc8bf69b5d678171b1edd4f1444c04",
      "parents": [
        "0e97456ab5ba2761892d9e67b7e3b0cac262141c",
        "ee89bd6bc73d1d14555418a2642172448052f1dd"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Jul 03 11:12:08 2013 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Jul 03 11:12:08 2013 -0700"
      },
      "message": "Merge branch \u0027exotic-arch-fixes\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/geert/linux-m68k\n\nPull \"exotic\" arch fixes from Geert Uytterhoeven:\n \"This is a collection of several exotic architecture fixes, and a few\n  other fixes for issues that were detected while doing the former\"\n\n* \u0027exotic-arch-fixes\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/geert/linux-m68k: (35 commits)\n  lib: Move fonts from drivers/video/console/ to lib/fonts/\n  console/font: Refactor font support code selection logic\n  Revert \"staging/solo6x10: depend on CONFIG_FONTS\"\n  input: cros_ec_keyb_clear_keyboard() depends on CONFIG_PM_SLEEP\n  score: Wire up asm-generic/xor.h\n  score: Remove unneeded \u003casm/dma-mapping.h\u003e\n  openrisc: Wire up asm-generic/xor.h\n  h8300/boot: Use POSIX \"$((..))\" instead of bashism \"$[...]\"\n  h8300: Mark H83002 and H83048 CPU support broken\n  h8300: Switch h8300 to drivers/Kconfig\n  h8300: Limit timer channel ranges in Kconfig\n  h8300: Wire up asm-generic/xor.h\n  h8300: Fill the system call table using a CALL() macro\n  h8300: Fix \u003casm/tlb.h\u003e\n  h8300: Hardcode symbol prefixes in asm sources\n  h8300: add missing definition for read_barries_depends()\n  frv: head.S - Remove commented-out initialization code\n  cris: Wire up asm-generic/vga.h\n  parport: disable PC-style parallel port support on cris\n  console: Disable VGA text console support on cris\n  ...\n"
    },
    {
      "commit": "13cc56013842a847a0f6ff805d9ed9181e753ef8",
      "tree": "76b55717efc36f83c934ee894a8522e8a28eb57f",
      "parents": [
        "7c6809ff2bd63d4c97ce9e0b94d39d5180842c48",
        "a4244454df1296e90cc961c1b636b1176ef0d9a0"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Jul 02 19:52:14 2013 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Jul 02 19:52:14 2013 -0700"
      },
      "message": "Merge branch \u0027for-3.11\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tj/percpu\n\nPull per-cpu changes from Tejun Heo:\n \"This pull request contains Kent\u0027s per-cpu reference counter.  It has\n  gone through several iterations since the last time and the dynamic\n  allocation is gone.\n\n  The usual usage is relatively straight-forward although async kill\n  confirm interface, which is not used int most cases, is somewhat icky.\n  There also are some interface concerns - e.g.  I\u0027m not sure about\n  passing in @relesae callback during init as that becomes funny when we\n  later implement synchronous kill_and_drain - but nothing too serious\n  and it\u0027s quite useable now.\n\n  cgroup_subsys_state refcnting has already been converted and we should\n  convert module refcnt (Kent?)\"\n\n* \u0027for-3.11\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tj/percpu:\n  percpu-refcount: use RCU-sched insted of normal RCU\n  percpu-refcount: implement percpu_tryget() along with percpu_ref_kill_and_confirm()\n  percpu-refcount: implement percpu_ref_cancel_init()\n  percpu-refcount: add __must_check to percpu_ref_init() and don\u0027t use ACCESS_ONCE() in percpu_ref_kill_rcu()\n  percpu-refcount: cosmetic updates\n  percpu-refcount: consistently use plain (non-sched) RCU\n  percpu-refcount: Don\u0027t use silly cmpxchg()\n  percpu: implement generic percpu refcounting\n"
    },
    {
      "commit": "0c46d68d1930c8a58d0f291328b9759da754e599",
      "tree": "5cc551f56a86e204d648488c036fc1092fcd22a0",
      "parents": [
        "3e42dee676e8cf5adca817b1518b2e99d1c138ff",
        "166989e366ffa66108b2f37b870e66b85b2185ad"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Jul 02 16:09:13 2013 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Jul 02 16:09:13 2013 -0700"
      },
      "message": "Merge branch \u0027core-mutexes-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip\n\nPull WW mutex support from Ingo Molnar:\n \"This tree adds support for wound/wait style locks, which the graphics\n  guys would like to make use of in the TTM graphics subsystem.\n\n  Wound/wait mutexes are used when other multiple lock acquisitions of a\n  similar type can be done in an arbitrary order.  The deadlock handling\n  used here is called wait/wound in the RDBMS literature: The older\n  tasks waits until it can acquire the contended lock.  The younger\n  tasks needs to back off and drop all the locks it is currently\n  holding, ie the younger task is wounded.\n\n  See this LWN.net description of W/W mutexes:\n\n     https://lwn.net/Articles/548909/\n\n  The comments there outline specific usecases for this facility (which\n  have already been implemented for the DRM tree).\n\n  Also see Documentation/ww-mutex-design.txt for more details\"\n\n* \u0027core-mutexes-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:\n  locking-selftests: Handle unexpected failures more strictly\n  mutex: Add more w/w tests to test EDEADLK path handling\n  mutex: Add more tests to lib/locking-selftest.c\n  mutex: Add w/w tests to lib/locking-selftest.c\n  mutex: Add w/w mutex slowpath debugging\n  mutex: Add support for wound/wait style locks\n  arch: Make __mutex_fastpath_lock_retval return whether fastpath succeeded or not\n"
    },
    {
      "commit": "22237d5a588cfad92525d2998ff14d3666399dce",
      "tree": "0f76b3a9febe573702669628fadaaab6c5725634",
      "parents": [
        "fc76a258d41eea7953bb763397c3d1e589d3bb98",
        "6b9a39de73490abb93a0b48a5e6c417c518f3a59"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Jul 02 13:24:47 2013 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Jul 02 13:24:47 2013 -0700"
      },
      "message": "Merge tag \u0027fixes-non-critical-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc\n\nPull ARM SoC non-cricitical bug fixes from Arnd Bergmann:\n \"These are various bug fixes that were not considered important enough\n  for merging into 3.10.\n\n  The majority of the ARM fixes are for the OMAP and at91 platforms, and\n  there is another set of bug fixes for device drivers that resolve\n  \u0027randconfig\u0027 build errors and that the subsystem maintainers either\n  did not pick up or preferred to get merged through the arm-soc tree.\"\n\n* tag \u0027fixes-non-critical-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc: (43 commits)\n  ARM: at91/PMC: use at91_usb_rate() for UTMI PLL\n  ARM: at91/PMC: fix at91sam9n12 USB FS init\n  ARM: at91/PMC: at91sam9n12 family has a PLLB\n  ARM: at91/PMC: sama5d3 family doesn\u0027t have a PLLB\n  ARM: tegra: fix section mismatch in tegra_pmc_parse_dt\n  ARM: mxs: don\u0027t select HAVE_PWM\n  ARM: mxs: stub out mxs_pm_init for !CONFIG_PM\n  cpuidle: calxeda: select ARM_CPU_SUSPEND\n  ARM: mvebu: fix length of ethernet registers in mv78260 dtsi\n  ARM: at91: cpuidle: Fix target_residency\n  ARM: at91: fix at91_extern_irq usage for non-dt boards\n  ARM: sirf: use CONFIG_SIRF rather than CONFIG_PRIMA2 where necessary\n  clocksource: kona: adapt to CLOCKSOURCE_OF_DECLARE change\n  X.509: do not emit any informational output\n  mtd: omap2: allow bulding as a module\n  [SCSI] nsp32: use mdelay instead of large udelay constants\n  hwrng: bcm2835: fix MODULE_LICENSE tag\n  ARM: at91: Change the internal SRAM memory type MT_MEMORY_NONCACHED\n  ARM: at91: Fix link breakage when !CONFIG_PHYLIB\n  MAINTAINERS: Add exynos filename match to ARM/S5P EXYNOS ARM ARCHITECTURES\n  ...\n"
    },
    {
      "commit": "fc76a258d41eea7953bb763397c3d1e589d3bb98",
      "tree": "ef8c4b828f3011adf9fc9ef976b9d07c35628e81",
      "parents": [
        "fe3c22bd5cadd8e36977b218b27fbea821381ec8",
        "bfd63cd24df69120585c22e09fda78723772ee2a"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Jul 02 11:44:19 2013 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Jul 02 11:44:19 2013 -0700"
      },
      "message": "Merge tag \u0027driver-core-3.11-rc1\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/driver-core\n\nPull driver core updates from Greg KH:\n \"Here\u0027s the big driver core merge for 3.11-rc1\n\n  Lots of little things, and larger firmware subsystem updates, all\n  described in the shortlog.  Nice thing here is that we finally get rid\n  of CONFIG_HOTPLUG, after 10+ years, thanks to Stephen Rohtwell (it had\n  been always on for a number of kernel releases, now it\u0027s just\n  removed)\"\n\n* tag \u0027driver-core-3.11-rc1\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/driver-core: (27 commits)\n  driver core: device.h: fix doc compilation warnings\n  firmware loader: fix another compile warning with PM_SLEEP unset\n  build some drivers only when compile-testing\n  firmware loader: fix compile warning with PM_SLEEP set\n  kobject: sanitize argument for format string\n  sysfs_notify is only possible on file attributes\n  firmware loader: simplify holding module for request_firmware\n  firmware loader: don\u0027t export cache_firmware and uncache_firmware\n  drivers/base: Use attribute groups to create sysfs memory files\n  firmware loader: fix compile warning\n  firmware loader: fix build failure with !CONFIG_FW_LOADER_USER_HELPER\n  Documentation: Updated broken link in HOWTO\n  Finally eradicate CONFIG_HOTPLUG\n  driver core: firmware loader: kill FW_ACTION_NOHOTPLUG requests before suspend\n  driver core: firmware loader: don\u0027t cache FW_ACTION_NOHOTPLUG firmware\n  Documentation: Tidy up some drivers/base/core.c kerneldoc content.\n  platform_device: use a macro instead of platform_driver_register\n  firmware: move EXPORT_SYMBOL annotations\n  firmware: Avoid deadlock of usermodehelper lock at shutdown\n  dell_rbu: Select CONFIG_FW_LOADER_USER_HELPER explicitly\n  ...\n"
    },
    {
      "commit": "1067964305df131ede2c08c2f3c9b3892640f1c6",
      "tree": "669ec54a6978c1301ea1003897fadd9b616879e4",
      "parents": [
        "936faf6c4937c50048e5779f6e49cfce566048d3"
      ],
      "author": {
        "name": "Daniel Borkmann",
        "email": "dborkman@redhat.com",
        "time": "Fri Jun 28 19:49:39 2013 +0200"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Jul 01 23:22:13 2013 -0700"
      },
      "message": "lib: vsprintf: add IPv4/v6 generic %p[Ii]S[pfs] format specifier\n\nIn order to avoid making code that deals with printing both, IPv4 and\nIPv6 addresses, unnecessary complicated as for example ...\n\n  if (sa.sa_family \u003d\u003d AF_INET6)\n    printk(\"... %pI6 ...\", ..sin6_addr);\n  else\n    printk(\"... %pI4 ...\", ..sin_addr.s_addr);\n\n... it would be better to introduce a format specifier that can deal\nwith those kind of situations internally; just as we have a \"struct\nsockaddr\" for generic mapping into \"struct sockaddr_in\" or \"struct\nsockaddr_in6\" as e.g. done in \"union sctp_addr\". Then, we could\nreduce the above statement into something like:\n\n  printk(\"... %pIS ..\", \u0026sockaddr);\n\nIn case our pointer is NULL, pointer() then deals with that already at\nan earlier point in time internally. While we\u0027re at it, support for both\n%piS/%pIS, where \u0027S\u0027 stands for sockaddr, comes (almost) for free.\n\nAdditionally to that, postfix specifiers \u0027p\u0027, \u0027f\u0027 and \u0027s\u0027 are supported\nas suggested and initially implemented in 2009 by Joe Perches [1].\nHandling of those additional specifiers orientate on the initial RFC that\nwas proposed. Also we support IPv6 compressed format specified by \u0027c\u0027 and\nvarious other IPv4 extensions as stated in the documentation part.\n\nLikely, there are many other areas than just SCTP in the kernel to make\nuse of this extension as well.\n\n [1] http://patchwork.ozlabs.org/patch/31480/\n\nSigned-off-by: Daniel Borkmann \u003cdborkman@redhat.com\u003e\nCC: Joe Perches \u003cjoe@perches.com\u003e\nCC: linux-kernel@vger.kernel.org\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "ee89bd6bc73d1d14555418a2642172448052f1dd",
      "tree": "854442fcd43a77286056a1eafecacd8878f067f4",
      "parents": [
        "d1e183c8dd38bfdd07e38a79577fe78124e63ab1"
      ],
      "author": {
        "name": "Geert Uytterhoeven",
        "email": "geert@linux-m68k.org",
        "time": "Sun Jun 09 11:46:43 2013 +0200"
      },
      "committer": {
        "name": "Geert Uytterhoeven",
        "email": "geert@linux-m68k.org",
        "time": "Fri Jun 28 10:28:22 2013 +0200"
      },
      "message": "lib: Move fonts from drivers/video/console/ to lib/fonts/\n\nSeveral drivers need font support independent of CONFIG_VT, cfr. commit\n9cbce8d7e1dae0744ca4f68d62aa7de18196b6f4, \"console/font: Refactor font\nsupport code selection logic\").\nHence move the fonts and their support logic from drivers/video/console/ to\nits own library directory lib/fonts/.\nThis also allows to limit processing of drivers/video/console/Makefile to\nCONFIG_VT\u003dy again.\n\n[Kevin Hilman \u003ckhilman@linaro.org\u003e: Update arch/arm/boot/compressed/Makefile]\nSigned-off-by: Geert Uytterhoeven \u003cgeert@linux-m68k.org\u003e\n"
    },
    {
      "commit": "166989e366ffa66108b2f37b870e66b85b2185ad",
      "tree": "1973b0dc9dd2eb10b35d541fffca643d210ae3d2",
      "parents": [
        "f3cf139efa4bc0fe4f032af6ca3e49e38a5d9ae5"
      ],
      "author": {
        "name": "Maarten Lankhorst",
        "email": "maarten.lankhorst@canonical.com",
        "time": "Thu Jun 20 13:31:51 2013 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@kernel.org",
        "time": "Wed Jun 26 12:10:59 2013 +0200"
      },
      "message": "locking-selftests: Handle unexpected failures more strictly\n\nWhen CONFIG_PROVE_LOCKING is not enabled, more tests are\nexpected to pass unexpectedly, but there no tests that should\nstart to fail that pass with CONFIG_PROVE_LOCKING enabled.\n\nSigned-off-by: Maarten Lankhorst \u003cmaarten.lankhorst@canonical.com\u003e\nAcked-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: dri-devel@lists.freedesktop.org\nCc: linaro-mm-sig@lists.linaro.org\nCc: rostedt@goodmis.org\nCc: daniel@ffwll.ch\nCc: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\nCc: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nCc: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nLink: http://lkml.kernel.org/r/20130620113151.4001.77963.stgit@patser\nSigned-off-by: Ingo Molnar \u003cmingo@kernel.org\u003e\n"
    },
    {
      "commit": "f3cf139efa4bc0fe4f032af6ca3e49e38a5d9ae5",
      "tree": "2c21ea868c522edd2642dac07718a94cf816b6c1",
      "parents": [
        "2fe3d4b149ccebbb384062fbbe6634439f2bf120"
      ],
      "author": {
        "name": "Maarten Lankhorst",
        "email": "maarten.lankhorst@canonical.com",
        "time": "Thu Jun 20 13:31:42 2013 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@kernel.org",
        "time": "Wed Jun 26 12:10:58 2013 +0200"
      },
      "message": "mutex: Add more w/w tests to test EDEADLK path handling\n\nSigned-off-by: Maarten Lankhorst \u003cmaarten.lankhorst@canonical.com\u003e\nAcked-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: dri-devel@lists.freedesktop.org\nCc: linaro-mm-sig@lists.linaro.org\nCc: rostedt@goodmis.org\nCc: daniel@ffwll.ch\nCc: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\nCc: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nCc: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nLink: http://lkml.kernel.org/r/20130620113141.4001.54331.stgit@patser\nSigned-off-by: Ingo Molnar \u003cmingo@kernel.org\u003e\n"
    },
    {
      "commit": "2fe3d4b149ccebbb384062fbbe6634439f2bf120",
      "tree": "cc868c534a58bc75f8704d11d9a845a50fe85c17",
      "parents": [
        "1de994452f44005e4b1f5c6c77eae4a26f86d484"
      ],
      "author": {
        "name": "Maarten Lankhorst",
        "email": "maarten.lankhorst@canonical.com",
        "time": "Thu Jun 20 13:31:30 2013 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@kernel.org",
        "time": "Wed Jun 26 12:10:57 2013 +0200"
      },
      "message": "mutex: Add more tests to lib/locking-selftest.c\n\nNone of the ww_mutex codepaths should be taken in the \u0027normal\u0027\nmutex calls. The easiest way to verify this is by using the\nnormal mutex calls, and making sure o.ctx is unmodified.\n\nSigned-off-by: Maarten Lankhorst \u003cmaarten.lankhorst@canonical.com\u003e\nAcked-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: dri-devel@lists.freedesktop.org\nCc: linaro-mm-sig@lists.linaro.org\nCc: robclark@gmail.com\nCc: rostedt@goodmis.org\nCc: daniel@ffwll.ch\nCc: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\nCc: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nCc: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nLink: http://lkml.kernel.org/r/20130620113130.4001.45423.stgit@patser\nSigned-off-by: Ingo Molnar \u003cmingo@kernel.org\u003e\n"
    },
    {
      "commit": "1de994452f44005e4b1f5c6c77eae4a26f86d484",
      "tree": "e8de47c719892694c3586d52c421be285639f888",
      "parents": [
        "230100276955529d5a7c69207421756b9a61a8e5"
      ],
      "author": {
        "name": "Maarten Lankhorst",
        "email": "maarten.lankhorst@canonical.com",
        "time": "Thu Jun 20 13:31:24 2013 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@kernel.org",
        "time": "Wed Jun 26 12:10:57 2013 +0200"
      },
      "message": "mutex: Add w/w tests to lib/locking-selftest.c\n\nThis stresses the lockdep code in some ways specifically useful\nto ww_mutexes. It adds checks for most of the common locking\nerrors.\n\nSigned-off-by: Maarten Lankhorst \u003cmaarten.lankhorst@canonical.com\u003e\nAcked-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: dri-devel@lists.freedesktop.org\nCc: linaro-mm-sig@lists.linaro.org\nCc: robclark@gmail.com\nCc: rostedt@goodmis.org\nCc: daniel@ffwll.ch\nCc: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\nCc: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nCc: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nLink: http://lkml.kernel.org/r/20130620113124.4001.23186.stgit@patser\nSigned-off-by: Ingo Molnar \u003cmingo@kernel.org\u003e\n"
    },
    {
      "commit": "230100276955529d5a7c69207421756b9a61a8e5",
      "tree": "e9cb48f8e43bd7e3d3cf38ee1f1e2838de112913",
      "parents": [
        "040a0a37100563754bb1fee6ff6427420bcfa609"
      ],
      "author": {
        "name": "Daniel Vetter",
        "email": "daniel.vetter@ffwll.ch",
        "time": "Thu Jun 20 13:31:17 2013 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@kernel.org",
        "time": "Wed Jun 26 12:10:56 2013 +0200"
      },
      "message": "mutex: Add w/w mutex slowpath debugging\n\nInjects EDEADLK conditions at pseudo-random interval, with\nexponential backoff up to UINT_MAX (to ensure that every lock\noperation still completes in a reasonable time).\n\nThis way we can test the wound slowpath even for ww mutex users\nwhere contention is never expected, and the ww deadlock\navoidance algorithm is only needed for correctness against\nmalicious userspace. An example would be protecting kernel\nmodesetting properties, which thanks to single-threaded X isn\u0027t\nreally expected to contend, ever.\n\nI\u0027ve looked into using the CONFIG_FAULT_INJECTION\ninfrastructure, but decided against it for two reasons:\n\n- EDEADLK handling is mandatory for ww mutex users and should\n  never affect the outcome of a syscall. This is in contrast to -ENOMEM\n  injection. So fine configurability isn\u0027t required.\n\n- The fault injection framework only allows to set a simple\n  probability for failure. Now the probability that a ww mutex acquire\n  stage with N locks will never complete (due to too many injected\n  EDEADLK backoffs) is zero. But the expected number of ww_mutex_lock\n  operations for the completely uncontended case would be O(exp(N)).\n  The per-acuiqire ctx exponential backoff solution choosen here only\n  results in O(log N) overhead due to injection and so O(log N * N)\n  lock operations. This way we can fail with high probability (and so\n  have good test coverage even for fancy backoff and lock acquisition\n  paths) without running into patalogical cases.\n\nNote that EDEADLK will only ever be injected when we managed to\nacquire the lock. This prevents any behaviour changes for users\nwhich rely on the EALREADY semantics.\n\nSigned-off-by: Daniel Vetter \u003cdaniel.vetter@ffwll.ch\u003e\nSigned-off-by: Maarten Lankhorst \u003cmaarten.lankhorst@canonical.com\u003e\nAcked-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: dri-devel@lists.freedesktop.org\nCc: linaro-mm-sig@lists.linaro.org\nCc: rostedt@goodmis.org\nCc: daniel@ffwll.ch\nCc: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\nCc: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nCc: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nLink: http://lkml.kernel.org/r/20130620113117.4001.21681.stgit@patser\nSigned-off-by: Ingo Molnar \u003cmingo@kernel.org\u003e\n"
    },
    {
      "commit": "040a0a37100563754bb1fee6ff6427420bcfa609",
      "tree": "153e76b27ef95f57ad2055d42b8bb07cb1f8d493",
      "parents": [
        "a41b56efa70e060f650aeb54740aaf52044a1ead"
      ],
      "author": {
        "name": "Maarten Lankhorst",
        "email": "maarten.lankhorst@canonical.com",
        "time": "Mon Jun 24 10:30:04 2013 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@kernel.org",
        "time": "Wed Jun 26 12:10:56 2013 +0200"
      },
      "message": "mutex: Add support for wound/wait style locks\n\nWound/wait mutexes are used when other multiple lock\nacquisitions of a similar type can be done in an arbitrary\norder. The deadlock handling used here is called wait/wound in\nthe RDBMS literature: The older tasks waits until it can acquire\nthe contended lock. The younger tasks needs to back off and drop\nall the locks it is currently holding, i.e. the younger task is\nwounded.\n\nFor full documentation please read Documentation/ww-mutex-design.txt.\n\nReferences: https://lwn.net/Articles/548909/\nSigned-off-by: Maarten Lankhorst \u003cmaarten.lankhorst@canonical.com\u003e\nAcked-by: Daniel Vetter \u003cdaniel.vetter@ffwll.ch\u003e\nAcked-by: Rob Clark \u003crobdclark@gmail.com\u003e\nAcked-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: dri-devel@lists.freedesktop.org\nCc: linaro-mm-sig@lists.linaro.org\nCc: rostedt@goodmis.org\nCc: daniel@ffwll.ch\nCc: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\nCc: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nCc: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nLink: http://lkml.kernel.org/r/51C8038C.9000106@canonical.com\nSigned-off-by: Ingo Molnar \u003cmingo@kernel.org\u003e\n"
    },
    {
      "commit": "25c87eae1725ed77a8b44d782a86abdc279b4ede",
      "tree": "11abc7702bce20ce3adba6b2abf14bcd1c784fad",
      "parents": [
        "d949b4fe6d23dd92b5fa48cbf7af90ca32beed2e"
      ],
      "author": {
        "name": "Markos Chandras",
        "email": "markos.chandras@imgtec.com",
        "time": "Tue Jun 11 08:49:50 2013 +0000"
      },
      "committer": {
        "name": "Ralf Baechle",
        "email": "ralf@linux-mips.org",
        "time": "Fri Jun 21 18:07:01 2013 +0200"
      },
      "message": "lib/Kconfig.debug: Restrict FRAME_POINTER for MIPS\n\nFAULT_INJECTION_STACKTRACE_FILTER selects FRAME_POINTER but\nthat symbol is not available for MIPS.\n\nFixes the following problem on a randconfig:\nwarning: (LOCKDEP \u0026\u0026 FAULT_INJECTION_STACKTRACE_FILTER \u0026\u0026 LATENCYTOP \u0026\u0026\n KMEMCHECK) selects FRAME_POINTER which has unmet direct dependencies\n(DEBUG_KERNEL \u0026\u0026 (CRIS || M68K || FRV || UML || AVR32 || SUPERH || BLACKFIN ||\nMN10300 || METAG) || ARCH_WANT_FRAME_POINTERS)\n\nSigned-off-by: Markos Chandras \u003cmarkos.chandras@imgtec.com\u003e\nAcked-by: Steven J. Hill \u003cSteven.Hill@imgtec.com\u003e\nCc: linux-mips@linux-mips.org\nPatchwork: https://patchwork.linux-mips.org/patch/5441/\nSigned-off-by: Ralf Baechle \u003cralf@linux-mips.org\u003e\n"
    },
    {
      "commit": "a857c6e7d5fda19c39674a61d9f360bc43a7dcf6",
      "tree": "149ce92604fc9b649653ec0b273810162d21793b",
      "parents": [
        "930d800bded771b26d9944c47810829130ff7c8c"
      ],
      "author": {
        "name": "Arnd Bergmann",
        "email": "arnd@arndb.de",
        "time": "Tue Jan 08 19:09:14 2013 +0000"
      },
      "committer": {
        "name": "Arnd Bergmann",
        "email": "arnd@arndb.de",
        "time": "Wed Jun 19 17:54:06 2013 +0200"
      },
      "message": "X.509: do not emit any informational output\n\nWhen building a kernel using \u0027make -s\u0027, I expect to see an empty output,\nexcept for build warnings and errors. The build_OID_registry code\nalways prints one line when run, which is not helpful to most people\nbuilding the kernels, and which makes it harder to automatically\ncheck for build warnings.\n\nLet\u0027s just remove the one line output.\n\nSigned-off-by: Arnd Bergmann \u003carnd@arndb.de\u003e\nCc: David Howells \u003cdhowells@redhat.com\u003e\nCc: Rusty Russell \u003crusty@rustcorp.com.au\u003e\n"
    },
    {
      "commit": "278cee0515a3b3abb0d4e614d969b5be35c2c288",
      "tree": "84c5b7eb509ee8f70636d87f9b1099b2e15094fa",
      "parents": [
        "b6f4287c493d666c6d97f2c1dff82cf63b143153"
      ],
      "author": {
        "name": "Masanari Iida",
        "email": "standby24x7@gmail.com",
        "time": "Sat Jun 01 01:30:56 2013 +0900"
      },
      "committer": {
        "name": "Jiri Kosina",
        "email": "jkosina@suse.cz",
        "time": "Tue Jun 18 13:48:45 2013 +0200"
      },
      "message": "treewide: Fix typo in printk\n\nCorrect spelling typo in printk within various drivers.\n\nSigned-off-by: Masanari Iida \u003cstandby24x7@gmail.com\u003e\nAcked-by: Randy Dunlap \u003crdunlap@infradead.org\u003e\nSigned-off-by: Jiri Kosina \u003cjkosina@suse.cz\u003e\n"
    },
    {
      "commit": "bb07b00be77fb33274cb44a03bdbf2471e556189",
      "tree": "620390077de843dd7626998f0d8441d14a6c66d9",
      "parents": [
        "b7165ebbf0898bad9aaeddfa22b918e94ed90e07",
        "7d132055814ef17a6c7b69f342244c410a5e000f"
      ],
      "author": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@linuxfoundation.org",
        "time": "Mon Jun 17 16:57:20 2013 -0700"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@linuxfoundation.org",
        "time": "Mon Jun 17 16:57:20 2013 -0700"
      },
      "message": "Merge 3.10-rc6 into driver-core-next\n\nWe want these fixes here too.\n\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@linuxfoundation.org\u003e\n"
    },
    {
      "commit": "0e496b8e84410c96d1ffc86f0b37b0328a4234da",
      "tree": "d8a2aeeaee03eb4f305ba4dc5ab9395c4ee31321",
      "parents": [
        "214da6728acac285cac0e8e9b6c4c13838b8e1b0",
        "7d132055814ef17a6c7b69f342244c410a5e000f"
      ],
      "author": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@linuxfoundation.org",
        "time": "Mon Jun 17 11:54:25 2013 -0700"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@linuxfoundation.org",
        "time": "Mon Jun 17 11:54:25 2013 -0700"
      },
      "message": "Merge 3.10-rc6 into char-misc-next\n\nWe want the fixes in here.\n"
    },
    {
      "commit": "a4244454df1296e90cc961c1b636b1176ef0d9a0",
      "tree": "9be151f1e7a791dbf2d146fc5283ed246562d7f1",
      "parents": [
        "dbece3a0f1ef0b19aff1cc6ed0942fec9ab98de1"
      ],
      "author": {
        "name": "Tejun Heo",
        "email": "tj@kernel.org",
        "time": "Sun Jun 16 16:12:26 2013 -0700"
      },
      "committer": {
        "name": "Tejun Heo",
        "email": "tj@kernel.org",
        "time": "Sun Jun 16 16:12:26 2013 -0700"
      },
      "message": "percpu-refcount: use RCU-sched insted of normal RCU\n\npercpu-refcount was incorrectly using preempt_disable/enable() for RCU\ncritical sections against call_rcu().  6a24474da8 (\"percpu-refcount:\nconsistently use plain (non-sched) RCU\") fixed it by converting the\npreepmtion operations with rcu_read_[un]lock() citing that there isn\u0027t\nany advantage in using sched-RCU over using the usual one; however,\nrcu_read_[un]lock() for the preemptible RCU implementation -\nCONFIG_TREE_PREEMPT_RCU, chosen when CONFIG_PREEMPT - are slightly\nmore expensive than preempt_disable/enable().\n\nIn a contrived microbench which repeats the followings,\n\n - percpu_ref_get()\n - copy 32 bytes of data into percpu buffer\n - percpu_put_get()\n - copy 32 bytes of data into percpu buffer\n\nrcu_read_[un]lock() used in percpu_ref_get/put() makes it go slower by\nabout 15% when compared to using sched-RCU.\n\nAs the RCU critical sections are extremely short, using sched-RCU\nshouldn\u0027t have any latency implications.  Convert to RCU-sched.\n\nSigned-off-by: Tejun Heo \u003ctj@kernel.org\u003e\nAcked-by: Kent Overstreet \u003ckoverstreet@google.com\u003e\nAcked-by: \"Paul E. McKenney\" \u003cpaulmck@linux.vnet.ibm.com\u003e\nCc: Michal Hocko \u003cmhocko@suse.cz\u003e\nCc: Rusty Russell \u003crusty@rustcorp.com.au\u003e\n"
    },
    {
      "commit": "dbece3a0f1ef0b19aff1cc6ed0942fec9ab98de1",
      "tree": "3f594245c15b2f3ae8de6ec0c339e024988d22c4",
      "parents": [
        "bc497bd33b2d6a6f07bc8574b4764edbd7fdffa8"
      ],
      "author": {
        "name": "Tejun Heo",
        "email": "tj@kernel.org",
        "time": "Thu Jun 13 19:23:53 2013 -0700"
      },
      "committer": {
        "name": "Tejun Heo",
        "email": "tj@kernel.org",
        "time": "Thu Jun 13 19:23:53 2013 -0700"
      },
      "message": "percpu-refcount: implement percpu_tryget() along with percpu_ref_kill_and_confirm()\n\nImplement percpu_tryget() which stops giving out references once the\npercpu_ref is visible as killed.  Because the refcnt is per-cpu,\ndifferent CPUs will start to see a refcnt as killed at different\npoints in time and tryget() may continue to succeed on subset of cpus\nfor a while after percpu_ref_kill() returns.\n\nFor use cases where it\u0027s necessary to know when all CPUs start to see\nthe refcnt as dead, percpu_ref_kill_and_confirm() is added.  The new\nfunction takes an extra argument @confirm_kill which is invoked when\nthe refcnt is guaranteed to be viewed as killed on all CPUs.\n\nWhile this isn\u0027t the prettiest interface, it doesn\u0027t force synchronous\nwait and is much safer than requiring the caller to do its own\ncall_rcu().\n\nv2: Patch description rephrased to emphasize that tryget() may\n    continue to succeed on some CPUs after kill() returns as suggested\n    by Kent.\n\nv3: Function comment in percpu_ref_kill_and_confirm() updated warning\n    people to not depend on the implied RCU grace period from the\n    confirm callback as it\u0027s an implementation detail.\n\nSigned-off-by: Tejun Heo \u003ctj@kernel.org\u003e\nSlightly-Grumpily-Acked-by: Kent Overstreet \u003ckoverstreet@google.com\u003e\n"
    },
    {
      "commit": "bc497bd33b2d6a6f07bc8574b4764edbd7fdffa8",
      "tree": "2425880399cae042dcb7bf9c4fefdbdaf67f6ab5",
      "parents": [
        "acac7883ee7bcc32476963bce7baf73d44574dd1"
      ],
      "author": {
        "name": "Tejun Heo",
        "email": "tj@kernel.org",
        "time": "Wed Jun 12 20:52:35 2013 -0700"
      },
      "committer": {
        "name": "Tejun Heo",
        "email": "tj@kernel.org",
        "time": "Thu Jun 13 11:08:27 2013 -0700"
      },
      "message": "percpu-refcount: implement percpu_ref_cancel_init()\n\nNormally, percpu_ref_init() initializes and percpu_ref_kill()\ninitiates destruction which completes asynchronously.  The\nasynchronous destruction can be problematic in init failure path where\nthe caller wants to destroy half-constructed object - distinguishing\nhalf-constructed objects from the usual release method can be painful\nfor complex objects.\n\nThis patch implements percpu_ref_cancel_init() which synchronously\ndestroys the percpu_ref without invoking release.  To avoid\nunintentional misuses, the function requires the ref to have finished\npercpu_ref_init() but never used and triggers WARN otherwise.\n\nv2: Explain the weird name and usage restriction in the function\n    comment.\n\nSigned-off-by: Tejun Heo \u003ctj@kernel.org\u003e\nAcked-by: Kent Overstreet \u003ckoverstreet@google.com\u003e\n"
    },
    {
      "commit": "acac7883ee7bcc32476963bce7baf73d44574dd1",
      "tree": "1ac595ff0f048b4beb74fd59819233b066c2d2f2",
      "parents": [
        "ac899061a93250c28562f05ad94d5c74603415bc"
      ],
      "author": {
        "name": "Tejun Heo",
        "email": "tj@kernel.org",
        "time": "Wed Jun 12 20:52:01 2013 -0700"
      },
      "committer": {
        "name": "Tejun Heo",
        "email": "tj@kernel.org",
        "time": "Thu Jun 13 11:08:26 2013 -0700"
      },
      "message": "percpu-refcount: add __must_check to percpu_ref_init() and don\u0027t use ACCESS_ONCE() in percpu_ref_kill_rcu()\n\nTwo small changes.\n\n* Unlike most init functions, percpu_ref_init() allocates memory and\n  may fail.  Let\u0027s mark it with __must_check in case the caller\n  forgets.\n\n* percpu_ref_kill_rcu() is unnecessarily using ACCESS_ONCE() to\n  dereference @ref-\u003epcpu_count, which can be misleading.  The pointer\n  is guaranteed to be valid and visible and can\u0027t change underneath\n  the function.  Drop ACCESS_ONCE().\n\nSigned-off-by: Tejun Heo \u003ctj@kernel.org\u003e\n"
    },
    {
      "commit": "ac899061a93250c28562f05ad94d5c74603415bc",
      "tree": "26acc69d4b0f509b2ee0693d3fd7b0fd12232059",
      "parents": [
        "6a24474da83ea7c8b7d32f05f858b1259994067a"
      ],
      "author": {
        "name": "Tejun Heo",
        "email": "tj@kernel.org",
        "time": "Wed Jun 12 20:43:06 2013 -0700"
      },
      "committer": {
        "name": "Tejun Heo",
        "email": "tj@kernel.org",
        "time": "Wed Jun 12 20:43:06 2013 -0700"
      },
      "message": "percpu-refcount: cosmetic updates\n\n* s/percpu_ref_release/percpu_ref_func_t/ as it\u0027s customary to have _t\n  postfix for types and the type is gonna be used for a different type\n  of callback too.\n\n* Add @ARG to function comments.\n\n* Drop unnecessary and unaligned indentation from percpu_ref_init()\n  function comment.\n\nSigned-off-by: Tejun Heo \u003ctj@kernel.org\u003e\nAcked-by: Kent Overstreet \u003ckoverstreet@google.com\u003e\n"
    },
    {
      "commit": "5402b8047b0d286b6501f9097891cbf1e06daa3a",
      "tree": "9b656a3842c07b1407579a5096f500998ccf95ed",
      "parents": [
        "637241a900cbd982f744d44646b48a273d609b34"
      ],
      "author": {
        "name": "Chen Gang",
        "email": "gang.chen@asianux.com",
        "time": "Wed Jun 12 14:04:40 2013 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Jun 12 16:29:44 2013 -0700"
      },
      "message": "lib/mpi/mpicoder.c: looping issue, need stop when equal to zero, found by \u0027EXTRA_FLAGS\u003d-W\u0027.\n\nFor \u0027while\u0027 looping, need stop when \u0027nbytes \u003d\u003d 0\u0027, or will cause issue.\n(\u0027nbytes\u0027 is size_t which is always bigger or equal than zero).\n\nThe related warning: (with EXTRA_CFLAGS\u003d-W)\n\n  lib/mpi/mpicoder.c:40:2: warning: comparison of unsigned expression \u003e\u003d 0 is always true [-Wtype-limits]\n\nSigned-off-by: Chen Gang \u003cgang.chen@asianux.com\u003e\nCc: Rusty Russell \u003crusty@rustcorp.com.au\u003e\nCc: David Howells \u003cdhowells@redhat.com\u003e\nCc: James Morris \u003cjames.l.morris@oracle.com\u003e\nCc: Andy Shevchenko \u003candriy.shevchenko@linux.intel.com\u003e\nAcked-by: David Howells \u003cdhowells@redhat.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "b7165ebbf0898bad9aaeddfa22b918e94ed90e07",
      "tree": "1256297e5ed27757724770a5f6f5a40589be031f",
      "parents": [
        "fc60bb8339b66183f40ea9a001538c958f6d2c9e"
      ],
      "author": {
        "name": "Kees Cook",
        "email": "keescook@chromium.org",
        "time": "Thu Jun 06 13:52:19 2013 -0700"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@linuxfoundation.org",
        "time": "Fri Jun 07 16:05:50 2013 -0700"
      },
      "message": "kobject: sanitize argument for format string\n\nUnlike kobject_set_name(), the kset_create_and_add() interface does not\nprovide a way to use format strings, so make sure that the interface\ncannot be abused accidentally. It looks like all current callers use\nstatic strings, so there\u0027s no existing flaw.\n\nSigned-off-by: Kees Cook \u003ckeescook@chromium.org\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@linuxfoundation.org\u003e\n"
    },
    {
      "commit": "4cd5773a2ae6facdde3f563087a4cc50f00d9530",
      "tree": "f473e0a20e69f056394d3b268bfb4256cedff4ed",
      "parents": [
        "143e9c76c487957de89808cf2a3c828518ad131b"
      ],
      "author": {
        "name": "Andy Shevchenko",
        "email": "andy.shevchenko@gmail.com",
        "time": "Tue Jun 04 19:46:26 2013 +0300"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@linuxfoundation.org",
        "time": "Wed Jun 05 12:00:27 2013 -0700"
      },
      "message": "net: core: move mac_pton() to lib/net_utils.c\n\nSince we have at least one user of this function outside of CONFIG_NET\nscope, we have to provide this function independently. The proposed\nsolution is to move it under lib/net_utils.c with corresponding\nconfiguration variable and select wherever it is needed.\n\nSigned-off-by: Andy Shevchenko \u003candy.shevchenko@gmail.com\u003e\nReported-by: Arnd Bergmann \u003carnd@arndb.de\u003e\nAcked-by: David S. Miller \u003cdavem@davemloft.net\u003e\nAcked-by: Arnd Bergmann \u003carnd@arndb.de\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@linuxfoundation.org\u003e\n"
    },
    {
      "commit": "67822649d7305caf3dd50ed46c27b99c94eff996",
      "tree": "e12f15bf5e8ebad64f33df36ac8a6a8f95f811e0",
      "parents": [
        "bbb85b25688fcdc70b895711870c23de7b12721b"
      ],
      "author": {
        "name": "Herbert Xu",
        "email": "herbert@gondor.apana.org.au",
        "time": "Wed Jun 05 16:27:51 2013 +0800"
      },
      "committer": {
        "name": "Herbert Xu",
        "email": "herbert@gondor.apana.org.au",
        "time": "Wed Jun 05 16:27:51 2013 +0800"
      },
      "message": "crypto: crct10dif - Use PTR_RET\n\nlib/crc-t10dif.c:42:1-3: WARNING: PTR_RET can be used\n\n Use PTR_RET rather than if(IS_ERR(...)) + PTR_ERR\n\nGenerated by: coccinelle/api/ptr_ret.cocci\n\nReported-by: Fengguang Wu \u003cfengguang.wu@intel.com\u003e\nSigned-off-by: Herbert Xu \u003cherbert@gondor.apana.org.au\u003e\n"
    },
    {
      "commit": "c1ae6e9b4db00023b9caed72af49a93abad46452",
      "tree": "3bd3a5c78af7a7a18d6f390f651b8f5dbaba4c0b",
      "parents": [
        "215e262f2aeba378aa192da07c30770f9925a4bf"
      ],
      "author": {
        "name": "Kent Overstreet",
        "email": "koverstreet@google.com",
        "time": "Mon Jun 03 16:02:29 2013 -0700"
      },
      "committer": {
        "name": "Tejun Heo",
        "email": "tj@kernel.org",
        "time": "Mon Jun 03 16:04:04 2013 -0700"
      },
      "message": "percpu-refcount: Don\u0027t use silly cmpxchg()\n\nThe cmpxchg() was just to ensure the debug check didn\u0027t race, which was\na bit excessive. The caller is supposed to do the appropriate\nsynchronization, which means percpu_ref_kill() can just do a simple\nstore.\n\nSigned-off-by: Kent Overstreet \u003ckoverstreet@google.com\u003e\nSigned-off-by: Tejun Heo \u003ctj@kernel.org\u003e\n"
    },
    {
      "commit": "215e262f2aeba378aa192da07c30770f9925a4bf",
      "tree": "c854461e40f3ce9dde45f7128679b20a362643f8",
      "parents": [
        "042dd60ca6dec9a02cefa8edd67de386e35755d6"
      ],
      "author": {
        "name": "Kent Overstreet",
        "email": "koverstreet@google.com",
        "time": "Fri May 31 15:26:45 2013 -0700"
      },
      "committer": {
        "name": "Tejun Heo",
        "email": "tj@kernel.org",
        "time": "Mon Jun 03 15:36:41 2013 -0700"
      },
      "message": "percpu: implement generic percpu refcounting\n\nThis implements a refcount with similar semantics to\natomic_get()/atomic_dec_and_test() - but percpu.\n\nIt also implements two stage shutdown, as we need it to tear down the\npercpu counts.  Before dropping the initial refcount, you must call\npercpu_ref_kill(); this puts the refcount in \"shutting down mode\" and\nswitches back to a single atomic refcount with the appropriate\nbarriers (synchronize_rcu()).\n\nIt\u0027s also legal to call percpu_ref_kill() multiple times - it only\nreturns true once, so callers don\u0027t have to reimplement shutdown\nsynchronization.\n\n[akpm@linux-foundation.org: fix build]\n[akpm@linux-foundation.org: coding-style tweak]\nSigned-off-by: Kent Overstreet \u003ckoverstreet@google.com\u003e\nCc: Zach Brown \u003czab@redhat.com\u003e\nCc: Felipe Balbi \u003cbalbi@ti.com\u003e\nCc: Greg Kroah-Hartman \u003cgregkh@linuxfoundation.org\u003e\nCc: Mark Fasheh \u003cmfasheh@suse.com\u003e\nCc: Joel Becker \u003cjlbec@evilplan.org\u003e\nCc: Rusty Russell \u003crusty@rustcorp.com.au\u003e\nCc: Jens Axboe \u003caxboe@kernel.dk\u003e\nCc: Asai Thambi S P \u003casamymuthupa@micron.com\u003e\nCc: Selvan Mani \u003csmani@micron.com\u003e\nCc: Sam Bradshaw \u003csbradshaw@micron.com\u003e\nCc: Jeff Moyer \u003cjmoyer@redhat.com\u003e\nCc: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\nCc: Benjamin LaHaise \u003cbcrl@kvack.org\u003e\nCc: Tejun Heo \u003ctj@kernel.org\u003e\nCc: Oleg Nesterov \u003coleg@redhat.com\u003e\nCc: Christoph Lameter \u003ccl@linux-foundation.org\u003e\nCc: Ingo Molnar \u003cmingo@redhat.com\u003e\nReviewed-by: \"Theodore Ts\u0027o\" \u003ctytso@mit.edu\u003e\nSigned-off-by: Tejun Heo \u003ctj@kernel.org\u003e\n"
    },
    {
      "commit": "3a76e5e09fbb51e756b4e732e3e65446f4984cf5",
      "tree": "b08061613e352317bc3189abff31609279c0f2fa",
      "parents": [
        "4993632218e2202d4f110c8e83ae819ca26e6845"
      ],
      "author": {
        "name": "Seth Jennings",
        "email": "sjenning@linux.vnet.ibm.com",
        "time": "Mon Jun 03 15:33:02 2013 -0500"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@linuxfoundation.org",
        "time": "Mon Jun 03 13:55:01 2013 -0700"
      },
      "message": "debugfs: add get/set for atomic types\n\ndebugfs currently lack the ability to create attributes\nthat set/get atomic_t values.\n\nThis patch adds support for this through a new\ndebugfs_create_atomic_t() function.\n\nSigned-off-by: Seth Jennings \u003csjenning@linux.vnet.ibm.com\u003e\nAcked-by: Greg Kroah-Hartman \u003cgregkh@linuxfoundation.org\u003e\nAcked-by: Mel Gorman \u003cmgorman@suse.de\u003e\nAcked-by: Rik van Riel \u003criel@redhat.com\u003e\nAcked-by: Konrad Rzeszutek Wilk \u003ckonrad.wilk@oracle.com\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@linuxfoundation.org\u003e\n"
    },
    {
      "commit": "360603a1be2c7dc940105575f7dd1b8b82d1c3b3",
      "tree": "58dc2ff7b263d8e9e2d1cd7105d848f5bbe4fb34",
      "parents": [
        "a7d4e022ca350bd6a0b45382bb58d907092139dd"
      ],
      "author": {
        "name": "Steven Rostedt",
        "email": "rostedt@goodmis.org",
        "time": "Tue May 28 15:47:39 2013 -0400"
      },
      "committer": {
        "name": "Jiri Kosina",
        "email": "jkosina@suse.cz",
        "time": "Wed May 29 01:14:46 2013 +0200"
      },
      "message": "sprintf: hex_string(): fix comment\n\nhex_string() had a typo in a comment.\n\nSigned-off-by: Steven Rostedt \u003crostedt@goodmis.org\u003e\nSigned-off-by: Jiri Kosina \u003cjkosina@suse.cz\u003e\n"
    },
    {
      "commit": "70ef5578dd8011eeafa999a18194d9b548a4d889",
      "tree": "9d6c403711e784ccca4a38761435424e44c27306",
      "parents": [
        "17fdfd0851617b6c18c0913364caf2a54171ce85"
      ],
      "author": {
        "name": "Helge Deller",
        "email": "deller@gmx.de",
        "time": "Sun May 05 22:08:22 2013 +0000"
      },
      "committer": {
        "name": "Helge Deller",
        "email": "deller@gmx.de",
        "time": "Fri May 24 22:30:11 2013 +0200"
      },
      "message": "MPILIB: disable usage of floating point registers on parisc\n\nThe umul_ppmm() macro for parisc uses the xmpyu assembler statement\nwhich does calculation via a floating point register.\n\nBut usage of floating point registers inside the Linux kernel are not\nallowed and gcc will stop compilation due to the -mdisable-fpregs\ncompiler option.\n\nFix this by disabling the umul_ppmm() and udiv_qrnnd() macros. The\nmpilib will then use the generic built-in implementations instead.\n\nSigned-off-by: Helge Deller \u003cdeller@gmx.de\u003e\n"
    },
    {
      "commit": "c7153d0643dd161df9e7a2fcb952418055aa5fca",
      "tree": "b6db0c75eb77ce920c3aa3c8b63071f661a14e98",
      "parents": [
        "5cc0c03823ca18c490f8223f85ed40f2a9d936c4",
        "ac5a2962b02f57dea76d314ef2521a2170b28ab6"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu May 23 09:27:08 2013 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu May 23 09:27:08 2013 -0700"
      },
      "message": "Merge tag \u0027driver-core-3.10-rc2\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/driver-core\n\nPull driver core fixes from Greg Kroah-Hartman:\n \"Here are 3 tiny driver core fixes for 3.10-rc2.\n\n  A needed symbol export, a change to make it easier to track down\n  offending sysfs files with incorrect attributes, and a klist bugfix.\n\n  All have been in linux-next for a while\"\n\n* tag \u0027driver-core-3.10-rc2\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/driver-core:\n  klist: del waiter from klist_remove_waiters before wakeup waitting process\n  driver core: print sysfs attribute name when warning about bogus permissions\n  driver core: export subsys_virtual_register\n"
    },
    {
      "commit": "b4d3ba3346f092b9185da991414775281ceacaac",
      "tree": "d18fa278f09e9717a000e14728f9c55960dc5126",
      "parents": [
        "101b82f56d50a445bb5281f834c86e106732070f"
      ],
      "author": {
        "name": "Randy Dunlap",
        "email": "rdunlap@infradead.org",
        "time": "Wed May 22 22:46:09 2013 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu May 23 09:17:11 2013 -0700"
      },
      "message": "lib: make iovec obj instead of lib\n\nFix build error io vmw_vmci.ko when CONFIG_VMWARE_VMCI\u003dm by chaning\niovec.o from lib-y to obj-y.\n\n  ERROR: \"memcpy_toiovec\" [drivers/misc/vmw_vmci/vmw_vmci.ko] undefined!\n  ERROR: \"memcpy_fromiovec\" [drivers/misc/vmw_vmci/vmw_vmci.ko] undefined!\n\nSigned-off-by: Randy Dunlap \u003crdunlap@infradead.org\u003e\nAcked-by: Rusty Russell \u003crusty@rustcorp.com.au\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "ac5a2962b02f57dea76d314ef2521a2170b28ab6",
      "tree": "07c5b125c8b80182fedd9fd74098b79647f7a08f",
      "parents": [
        "97521978c5ea80857d4f4f74d4e1fc93721482cf"
      ],
      "author": {
        "name": "wang, biao",
        "email": "biao.wang@intel.com",
        "time": "Thu May 16 09:50:13 2013 +0800"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@linuxfoundation.org",
        "time": "Tue May 21 10:16:39 2013 -0700"
      },
      "message": "klist: del waiter from klist_remove_waiters before wakeup waitting process\n\nThere is a race between klist_remove and klist_release. klist_remove\nuses a local var waiter saved on stack. When klist_release calls\nwake_up_process(waiter-\u003eprocess) to wake up the waiter, waiter might run\nimmediately and reuse the stack. Then, klist_release calls\nlist_del(\u0026waiter-\u003elist) to change previous\nwait data and cause prior waiter thread corrupt.\n\nThe patch fixes it against kernel 3.9.\n\nSigned-off-by: wang, biao \u003cbiao.wang@intel.com\u003e\nAcked-by: Peter Zijlstra \u003cpeterz@infradead.org\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@linuxfoundation.org\u003e\n"
    },
    {
      "commit": "2d31e518a42828df7877bca23a958627d60408bc",
      "tree": "83630715e5a962e734a936310adae2731edb8a3d",
      "parents": [
        "986dfbcf8b493928188f0e634068993bf2067ad7"
      ],
      "author": {
        "name": "Tim Chen",
        "email": "tim.c.chen@linux.intel.com",
        "time": "Wed May 01 12:52:48 2013 -0700"
      },
      "committer": {
        "name": "Herbert Xu",
        "email": "herbert@gondor.apana.org.au",
        "time": "Mon May 20 20:11:01 2013 +0800"
      },
      "message": "crypto: crct10dif - Wrap crc_t10dif function all to use crypto transform framework\n\nWhen CRC T10 DIF is calculated using the crypto transform framework, we\nwrap the crc_t10dif function call to utilize it.  This allows us to\ntake advantage of any accelerated CRC T10 DIF transform that is\nplugged into the crypto framework.\n\nSigned-off-by: Tim Chen \u003ctim.c.chen@linux.intel.com\u003e\nSigned-off-by: Herbert Xu \u003cherbert@gondor.apana.org.au\u003e\n"
    },
    {
      "commit": "d2f83e9078b8114e3b9d09082856c1aac299aa37",
      "tree": "707f0d810d28e000eb3f9a775be880687dde1030",
      "parents": [
        "d5fe85af85367d5892e4308f596de4e2a5fb9017"
      ],
      "author": {
        "name": "Rusty Russell",
        "email": "rusty@rustcorp.com.au",
        "time": "Fri May 17 09:05:21 2013 +0930"
      },
      "committer": {
        "name": "Rusty Russell",
        "email": "rusty@rustcorp.com.au",
        "time": "Mon May 20 10:24:22 2013 +0930"
      },
      "message": "Hoist memcpy_fromiovec/memcpy_toiovec into lib/\n\nERROR: \"memcpy_fromiovec\" [drivers/vhost/vhost_scsi.ko] undefined!\n\nThat function is only present with CONFIG_NET.  Turns out that\ncrypto/algif_skcipher.c also uses that outside net, but it actually\nneeds sockets anyway.\n\nIn addition, commit 6d4f0139d642c45411a47879325891ce2a7c164a added\nCONFIG_NET dependency to CONFIG_VMCI for memcpy_toiovec, so hoist\nthat function and revert that commit too.\n\nsocket.h already includes uio.h, so no callers need updating; trying\nonly broke things fo x86_64 randconfig (thanks Fengguang!).\n\nReported-by: Randy Dunlap \u003crdunlap@infradead.org\u003e\nAcked-by: David S. Miller \u003cdavem@davemloft.net\u003e\nAcked-by: Michael S. Tsirkin \u003cmst@redhat.com\u003e\nSigned-off-by: Rusty Russell \u003crusty@rustcorp.com.au\u003e\n"
    },
    {
      "commit": "ebb37277796269da36a8bc5d72ed1e8e1fb7d34b",
      "tree": "0ded627a62a5cec70b18d12825dd858855c135d3",
      "parents": [
        "4de13d7aa8f4d02f4dc99d4609575659f92b3c5a",
        "f50efd2fdbd9b35b11f5778ed85beb764184bda9"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed May 08 11:51:05 2013 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed May 08 11:51:05 2013 -0700"
      },
      "message": "Merge branch \u0027for-3.10/drivers\u0027 of git://git.kernel.dk/linux-block\n\nPull block driver updates from Jens Axboe:\n \"It might look big in volume, but when categorized, not a lot of\n  drivers are touched.  The pull request contains:\n\n   - mtip32xx fixes from Micron.\n\n   - A slew of drbd updates, this time in a nicer series.\n\n   - bcache, a flash/ssd caching framework from Kent.\n\n   - Fixes for cciss\"\n\n* \u0027for-3.10/drivers\u0027 of git://git.kernel.dk/linux-block: (66 commits)\n  bcache: Use bd_link_disk_holder()\n  bcache: Allocator cleanup/fixes\n  cciss: bug fix to prevent cciss from loading in kdump crash kernel\n  cciss: add cciss_allow_hpsa module parameter\n  drivers/block/mg_disk.c: add CONFIG_PM_SLEEP to suspend/resume functions\n  mtip32xx: Workaround for unaligned writes\n  bcache: Make sure blocksize isn\u0027t smaller than device blocksize\n  bcache: Fix merge_bvec_fn usage for when it modifies the bvm\n  bcache: Correctly check against BIO_MAX_PAGES\n  bcache: Hack around stuff that clones up to bi_max_vecs\n  bcache: Set ra_pages based on backing device\u0027s ra_pages\n  bcache: Take data offset from the bdev superblock.\n  mtip32xx: mtip32xx: Disable TRIM support\n  mtip32xx: fix a smatch warning\n  bcache: Disable broken btree fuzz tester\n  bcache: Fix a format string overflow\n  bcache: Fix a minor memory leak on device teardown\n  bcache: Documentation updates\n  bcache: Use WARN_ONCE() instead of __WARN()\n  bcache: Add missing #include \u003clinux/prefetch.h\u003e\n  ...\n"
    },
    {
      "commit": "9607a85b67a9714290a78c1a56630ab1c9fa2c23",
      "tree": "b1f5f8c8a056f39f160bdd08f1f2340d5a700710",
      "parents": [
        "2d864e41710f1d2ba406fb62018ab0487152e6f2"
      ],
      "author": {
        "name": "Davidlohr Bueso",
        "email": "davidlohr.bueso@hp.com",
        "time": "Tue May 07 15:39:03 2013 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue May 07 16:11:51 2013 -0700"
      },
      "message": "rwsem: check counter to avoid cmpxchg calls\n\nThis patch tries to reduce the amount of cmpxchg calls in the writer\nfailed path by checking the counter value first before issuing the\ninstruction.  If -\u003ecount is not set to RWSEM_WAITING_BIAS then there is\nno point wasting a cmpxchg call.\n\nFurthermore, Michel states \"I suppose it helps due to the case where\nsomeone else steals the lock while we\u0027re trying to acquire\nsem-\u003ewait_lock.\"\n\nTwo very different workloads and machines were used to see how this\npatch improves throughput: pgbench on a quad-core laptop and aim7 on a\nlarge 8 socket box with 80 cores.\n\nSome results comparing Michel\u0027s fast-path write lock stealing\n(tps-rwsem) on a quad-core laptop running pgbench:\n\n  | db_size | clients  |  tps-rwsem     |   tps-patch  |\n  +---------+----------+----------------+--------------+\n  | 160 MB   |       1 |           6906 |         9153 | + 32.5\n  | 160 MB   |       2 |          15931 |        22487 | + 41.1%\n  | 160 MB   |       4 |          33021 |        32503 |\n  | 160 MB   |       8 |          34626 |        34695 |\n  | 160 MB   |      16 |          33098 |        34003 |\n  | 160 MB   |      20 |          31343 |        31440 |\n  | 160 MB   |      30 |          28961 |        28987 |\n  | 160 MB   |      40 |          26902 |        26970 |\n  | 160 MB   |      50 |          25760 |        25810 |\n  ------------------------------------------------------\n  | 1.6 GB   |       1 |           7729 |         7537 |\n  | 1.6 GB   |       2 |          19009 |        23508 | + 23.7%\n  | 1.6 GB   |       4 |          33185 |        32666 |\n  | 1.6 GB   |       8 |          34550 |        34318 |\n  | 1.6 GB   |      16 |          33079 |        32689 |\n  | 1.6 GB   |      20 |          31494 |        31702 |\n  | 1.6 GB   |      30 |          28535 |        28755 |\n  | 1.6 GB   |      40 |          27054 |        27017 |\n  | 1.6 GB   |      50 |          25591 |        25560 |\n  ------------------------------------------------------\n  | 7.6 GB   |       1 |           6224 |         7469 | + 20.0%\n  | 7.6 GB   |       2 |          13611 |        12778 |\n  | 7.6 GB   |       4 |          33108 |        32927 |\n  | 7.6 GB   |       8 |          34712 |        34878 |\n  | 7.6 GB   |      16 |          32895 |        33003 |\n  | 7.6 GB   |      20 |          31689 |        31974 |\n  | 7.6 GB   |      30 |          29003 |        28806 |\n  | 7.6 GB   |      40 |          26683 |        26976 |\n  | 7.6 GB   |      50 |          25925 |        25652 |\n  ------------------------------------------------------\n\nFor the aim7 worloads, they overall improved on top of Michel\u0027s\npatchset.  For full graphs on how the rwsem series plus this patch\nbehaves on a large 8 socket machine against a vanilla kernel:\n\n  http://stgolabs.net/rwsem-aim7-results.tar.gz\n\nSigned-off-by: Davidlohr Bueso \u003cdavidlohr.bueso@hp.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "2d864e41710f1d2ba406fb62018ab0487152e6f2",
      "tree": "52c6a3172b7a4099830962323f2a1742fa166b01",
      "parents": [
        "292088ee032d0df59e7c8a7a00e9b97260146078"
      ],
      "author": {
        "name": "Anatol Pomozov",
        "email": "anatol.pomozov@gmail.com",
        "time": "Tue May 07 15:37:48 2013 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue May 07 16:09:00 2013 -0700"
      },
      "message": "kref: minor cleanup\n\n - make warning smp-safe\n - result of atomic _unless_zero functions should be checked by caller\n   to avoid use-after-free error\n - trivial whitespace fix.\n\nLink: https://lkml.org/lkml/2013/4/12/391\n\nTested: compile x86, boot machine and run xfstests\nSigned-off-by: Anatol Pomozov \u003canatol.pomozov@gmail.com\u003e\n[ Removed line-break, changed to use WARN_ON_ONCE()  - Linus ]\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "c8de2fa4dc2778ae3605925c127b3deac54b2b3a",
      "tree": "3b123a360b3b118d0f43efdb9180d205f8d4ccd7",
      "parents": [
        "0f47c9423c0fe468d0b5b153f9b9d6e8e20707eb",
        "b5f541810ea9fb98d93c0ee0e00e07a22874856f"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue May 07 09:22:03 2013 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue May 07 09:22:03 2013 -0700"
      },
      "message": "Merge branch \u0027rwsem-optimizations\u0027\n\nMerge rwsem optimizations from Michel Lespinasse:\n \"These patches extend Alex Shi\u0027s work (which added write lock stealing\n  on the rwsem slow path) in order to provide rwsem write lock stealing\n  on the fast path (that is, without taking the rwsem\u0027s wait_lock).\n\n  I have unfortunately been unable to push this through -next before due\n  to Ingo Molnar / David Howells / Peter Zijlstra being busy with other\n  things.  However, this has gotten some attention from Rik van Riel and\n  Davidlohr Bueso who both commented that they felt this was ready for\n  v3.10, and Ingo Molnar has said that he was OK with me pushing\n  directly to you.  So, here goes :)\n\n  Davidlohr got the following test results from pgbench running on a\n  quad-core laptop:\n\n    | db_size | clients  |  tps-vanilla   |   tps-rwsem  |\n    +---------+----------+----------------+--------------+\n    | 160 MB   |       1 |           5803 |         6906 | + 19.0%\n    | 160 MB   |       2 |          13092 |        15931 |\n    | 160 MB   |       4 |          29412 |        33021 |\n    | 160 MB   |       8 |          32448 |        34626 |\n    | 160 MB   |      16 |          32758 |        33098 |\n    | 160 MB   |      20 |          26940 |        31343 | + 16.3%\n    | 160 MB   |      30 |          25147 |        28961 |\n    | 160 MB   |      40 |          25484 |        26902 |\n    | 160 MB   |      50 |          24528 |        25760 |\n    ------------------------------------------------------\n    | 1.6 GB   |       1 |           5733 |         7729 | + 34.8%\n    | 1.6 GB   |       2 |           9411 |        19009 | + 101.9%\n    | 1.6 GB   |       4 |          31818 |        33185 |\n    | 1.6 GB   |       8 |          33700 |        34550 |\n    | 1.6 GB   |      16 |          32751 |        33079 |\n    | 1.6 GB   |      20 |          30919 |        31494 |\n    | 1.6 GB   |      30 |          28540 |        28535 |\n    | 1.6 GB   |      40 |          26380 |        27054 |\n    | 1.6 GB   |      50 |          25241 |        25591 |\n    ------------------------------------------------------\n    | 7.6 GB   |       1 |           5779 |         6224 |\n    | 7.6 GB   |       2 |          10897 |        13611 | + 24.9%\n    | 7.6 GB   |       4 |          32683 |        33108 |\n    | 7.6 GB   |       8 |          33968 |        34712 |\n    | 7.6 GB   |      16 |          32287 |        32895 |\n    | 7.6 GB   |      20 |          27770 |        31689 | + 14.1%\n    | 7.6 GB   |      30 |          26739 |        29003 |\n    | 7.6 GB   |      40 |          24901 |        26683 |\n    | 7.6 GB   |      50 |          17115 |        25925 | + 51.5%\n    ------------------------------------------------------\n\n  (Davidlohr also has one additional patch which further improves\n  throughput, though I will ask him to send it directly to you as I have\n  suggested some minor changes).\"\n\n* emailed patches from Michel Lespinasse \u003cwalken@google.com\u003e:\n  rwsem: no need for explicit signed longs\n  x86 rwsem: avoid taking slow path when stealing write lock\n  rwsem: do not block readers at head of queue if other readers are active\n  rwsem: implement support for write lock stealing on the fastpath\n  rwsem: simplify __rwsem_do_wake\n  rwsem: skip initial trylock in rwsem_down_write_failed\n  rwsem: avoid taking wait_lock in rwsem_down_write_failed\n  rwsem: use cmpxchg for trying to steal write lock\n  rwsem: more agressive lock stealing in rwsem_down_write_failed\n  rwsem: simplify rwsem_down_write_failed\n  rwsem: simplify rwsem_down_read_failed\n  rwsem: move rwsem_down_failed_common code into rwsem_down_{read,write}_failed\n  rwsem: shorter spinlocked section in rwsem_down_failed_common()\n  rwsem: make the waiter type an enumeration rather than a bitmask\n"
    },
    {
      "commit": "b5f541810ea9fb98d93c0ee0e00e07a22874856f",
      "tree": "eb6cbe19735fe7f9b6928cf21108e79bbe434258",
      "parents": [
        "a31a369b07cf306ae1de0b2d4a52c3821a570bf6"
      ],
      "author": {
        "name": "Davidlohr Bueso",
        "email": "davidlohr.bueso@hp.com",
        "time": "Tue May 07 06:46:02 2013 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue May 07 07:20:17 2013 -0700"
      },
      "message": "rwsem: no need for explicit signed longs\n\nChange explicit \"signed long\" declarations into plain \"long\" as suggested\nby Peter Hurley.\n\nSigned-off-by: Davidlohr Bueso \u003cdavidlohr.bueso@hp.com\u003e\nReviewed-by: Michel Lespinasse \u003cwalken@google.com\u003e\nSigned-off-by: Michel Lespinasse \u003cwalken@google.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "25c39325968bbcebe6cd2a1991228c9dfb48d655",
      "tree": "627e32434338adcf4f7583219e9b4014b738dcc3",
      "parents": [
        "fe6e674c6187d4f452a679ced7e95262bd517936"
      ],
      "author": {
        "name": "Michel Lespinasse",
        "email": "walken@google.com",
        "time": "Tue May 07 06:46:00 2013 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue May 07 07:20:17 2013 -0700"
      },
      "message": "rwsem: do not block readers at head of queue if other readers are active\n\nThis change fixes a race condition where a reader might determine it\nneeds to block, but by the time it acquires the wait_lock the rwsem has\nactive readers and no queued waiters.\n\nIn this situation the reader can run in parallel with the existing\nactive readers; it does not need to block until the active readers\ncomplete.\n\nThanks to Peter Hurley for noticing this possible race.\n\nSigned-off-by: Michel Lespinasse \u003cwalken@google.com\u003e\nReviewed-by: Peter Hurley \u003cpeter@hurleysoftware.com\u003e\nAcked-by: Davidlohr Bueso \u003cdavidlohr.bueso@hp.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "fe6e674c6187d4f452a679ced7e95262bd517936",
      "tree": "ba04818049ec225a541f278940532473d3005b9c",
      "parents": [
        "8cf5322ce69afea1fab6a6270db24d057d664798"
      ],
      "author": {
        "name": "Michel Lespinasse",
        "email": "walken@google.com",
        "time": "Tue May 07 06:45:59 2013 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue May 07 07:20:16 2013 -0700"
      },
      "message": "rwsem: implement support for write lock stealing on the fastpath\n\nWhen we decide to wake up readers, we must first grant them as many read\nlocks as necessary, and then actually wake up all these readers.  But in\norder to know how many read shares to grant, we must first count the\nreaders at the head of the queue.  This might take a while if there are\nmany readers, and we want to be protected against a writer stealing the\nlock while we\u0027re counting.  To that end, we grant the first reader lock\nbefore counting how many more readers are queued.\n\nWe also require some adjustments to the wake_type semantics.\n\nRWSEM_WAKE_NO_ACTIVE used to mean that we had found the count to be\nRWSEM_WAITING_BIAS, in which case the rwsem was known to be free as\nnobody could steal it while we hold the wait_lock.  This doesn\u0027t make\nsense once we implement fastpath write lock stealing, so we now use\nRWSEM_WAKE_ANY in that case.\n\nSimilarly, when rwsem_down_write_failed found that a read lock was\nactive, it would use RWSEM_WAKE_READ_OWNED which signalled that new\nreaders could be woken without checking first that the rwsem was\navailable.  We can\u0027t do that anymore since the existing readers might\nrelease their read locks, and a writer could steal the lock before we\nwake up additional readers.  So, we have to use a new RWSEM_WAKE_READERS\nvalue to indicate we only want to wake readers, but we don\u0027t currently\nhold any read lock.\n\nSigned-off-by: Michel Lespinasse \u003cwalken@google.com\u003e\nReviewed-by: Peter Hurley \u003cpeter@hurleysoftware.com\u003e\nAcked-by: Davidlohr Bueso \u003cdavidlohr.bueso@hp.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "8cf5322ce69afea1fab6a6270db24d057d664798",
      "tree": "a7b49b135dc7703a4a709562178a847fb9bc4f77",
      "parents": [
        "9b0fc9c09f1b262b7fe697eba6b05095d78850e5"
      ],
      "author": {
        "name": "Michel Lespinasse",
        "email": "walken@google.com",
        "time": "Tue May 07 06:45:58 2013 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue May 07 07:20:16 2013 -0700"
      },
      "message": "rwsem: simplify __rwsem_do_wake\n\nThis is mostly for cleanup value:\n\n- We don\u0027t need several gotos to handle the case where the first\n  waiter is a writer. Two simple tests will do (and generate very\n  similar code).\n\n- In the remainder of the function, we know the first waiter is a reader,\n  so we don\u0027t have to double check that. We can use do..while loops\n  to iterate over the readers to wake (generates slightly better code).\n\nSigned-off-by: Michel Lespinasse \u003cwalken@google.com\u003e\nReviewed-by: Peter Hurley \u003cpeter@hurleysoftware.com\u003e\nAcked-by: Davidlohr Bueso \u003cdavidlohr.bueso@hp.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "9b0fc9c09f1b262b7fe697eba6b05095d78850e5",
      "tree": "5fb25ae32c9aed77f604858a77a27cd4b37bbfc6",
      "parents": [
        "a7d2c573ae7fad1b2c877d1a1342fa5bb0d6478c"
      ],
      "author": {
        "name": "Michel Lespinasse",
        "email": "walken@google.com",
        "time": "Tue May 07 06:45:57 2013 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue May 07 07:20:16 2013 -0700"
      },
      "message": "rwsem: skip initial trylock in rwsem_down_write_failed\n\nWe can skip the initial trylock in rwsem_down_write_failed() if there\nare known active lockers already, thus saving one likely-to-fail\ncmpxchg.\n\nSigned-off-by: Michel Lespinasse \u003cwalken@google.com\u003e\nReviewed-by: Peter Hurley \u003cpeter@hurleysoftware.com\u003e\nAcked-by: Davidlohr Bueso \u003cdavidlohr.bueso@hp.com\u003e\nAcked-by: Rik van Riel \u003criel@redhat.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "a7d2c573ae7fad1b2c877d1a1342fa5bb0d6478c",
      "tree": "1494f94f71a299d32a3584565a538e5ffdef1163",
      "parents": [
        "5ede972df1cd9294c82e9515949fd2103be81d7b"
      ],
      "author": {
        "name": "Michel Lespinasse",
        "email": "walken@google.com",
        "time": "Tue May 07 06:45:56 2013 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue May 07 07:20:16 2013 -0700"
      },
      "message": "rwsem: avoid taking wait_lock in rwsem_down_write_failed\n\nIn rwsem_down_write_failed(), if there are active locks after we wake up\n(i.e.  the lock got stolen from us), skip taking the wait_lock and go\nback to sleep immediately.\n\nSigned-off-by: Michel Lespinasse \u003cwalken@google.com\u003e\nReviewed-by: Peter Hurley \u003cpeter@hurleysoftware.com\u003e\nAcked-by: Davidlohr Bueso \u003cdavidlohr.bueso@hp.com\u003e\nAcked-by: Rik van Riel \u003criel@redhat.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "5ede972df1cd9294c82e9515949fd2103be81d7b",
      "tree": "2c6df4c16fbe4430ea2723f2aec284105aab08db",
      "parents": [
        "ed00f64346631dff035adfb9b0240daaa8b46c4e"
      ],
      "author": {
        "name": "Michel Lespinasse",
        "email": "walken@google.com",
        "time": "Tue May 07 06:45:55 2013 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue May 07 07:20:16 2013 -0700"
      },
      "message": "rwsem: use cmpxchg for trying to steal write lock\n\nUsing rwsem_atomic_update to try stealing the write lock forced us to\nundo the adjustment in the failure path.  We can have simpler and faster\ncode by using cmpxchg instead.\n\nSigned-off-by: Michel Lespinasse \u003cwalken@google.com\u003e\nReviewed-by: Peter Hurley \u003cpeter@hurleysoftware.com\u003e\nAcked-by: Davidlohr Bueso \u003cdavidlohr.bueso@hp.com\u003e\nAcked-by: Rik van Riel \u003criel@redhat.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "ed00f64346631dff035adfb9b0240daaa8b46c4e",
      "tree": "61afae642c8a3333587bf73a8dc19849416e243d",
      "parents": [
        "023fe4f712028d25b42d31984abae1f3d3f0e3e2"
      ],
      "author": {
        "name": "Michel Lespinasse",
        "email": "walken@google.com",
        "time": "Tue May 07 06:45:54 2013 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue May 07 07:20:16 2013 -0700"
      },
      "message": "rwsem: more agressive lock stealing in rwsem_down_write_failed\n\nSome small code simplifications can be achieved by doing more agressive\nlock stealing:\n\n- When rwsem_down_write_failed() notices that there are no active locks\n  (and thus no thread to wake us if we decided to sleep), it used to wake\n  the first queued process. However, stealing the lock is also sufficient\n  to deal with this case, so we don\u0027t need this check anymore.\n\n- In try_get_writer_sem(), we can steal the lock even when the first waiter\n  is a reader. This is correct because the code path that wakes readers is\n  protected by the wait_lock. As to the performance effects of this change,\n  they are expected to be minimal: readers are still granted the lock\n  (rather than having to acquire it themselves) when they reach the front\n  of the wait queue, so we have essentially the same behavior as in\n  rwsem-spinlock.\n\nSigned-off-by: Michel Lespinasse \u003cwalken@google.com\u003e\nReviewed-by: Rik van Riel \u003criel@redhat.com\u003e\nReviewed-by: Peter Hurley \u003cpeter@hurleysoftware.com\u003e\nAcked-by: Davidlohr Bueso \u003cdavidlohr.bueso@hp.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "023fe4f712028d25b42d31984abae1f3d3f0e3e2",
      "tree": "59d1f890bfd4047c36808f7f7313bb2e0f39503c",
      "parents": [
        "da16922cc031b9c0221c836994276ab193b31de8"
      ],
      "author": {
        "name": "Michel Lespinasse",
        "email": "walken@google.com",
        "time": "Tue May 07 06:45:53 2013 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue May 07 07:20:16 2013 -0700"
      },
      "message": "rwsem: simplify rwsem_down_write_failed\n\nWhen waking writers, we never grant them the lock - instead, they have\nto acquire it themselves when they run, and remove themselves from the\nwait_list when they succeed.\n\nAs a result, we can do a few simplifications in rwsem_down_write_failed():\n\n- We don\u0027t need to check for !waiter.task since __rwsem_do_wake() doesn\u0027t\n  remove writers from the wait_list\n\n- There is no point releaseing the wait_lock before entering the wait loop,\n  as we will need to reacquire it immediately. We can change the loop so\n  that the lock is always held at the start of each loop iteration.\n\n- We don\u0027t need to get a reference on the task structure, since the task\n  is responsible for removing itself from the wait_list. There is no risk,\n  like in the rwsem_down_read_failed() case, that a task would wake up and\n  exit (thus destroying its task structure) while __rwsem_do_wake() is\n  still running - wait_lock protects against that.\n\nSigned-off-by: Michel Lespinasse \u003cwalken@google.com\u003e\nReviewed-by: Rik van Riel \u003criel@redhat.com\u003e\nReviewed-by: Peter Hurley \u003cpeter@hurleysoftware.com\u003e\nAcked-by: Davidlohr Bueso \u003cdavidlohr.bueso@hp.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "da16922cc031b9c0221c836994276ab193b31de8",
      "tree": "8765a482ab31db66f3cc9cab83bf67eaafe88f75",
      "parents": [
        "1e78277ccbbb48af32a618d1ef0e8534e0b648d7"
      ],
      "author": {
        "name": "Michel Lespinasse",
        "email": "walken@google.com",
        "time": "Tue May 07 06:45:52 2013 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue May 07 07:20:16 2013 -0700"
      },
      "message": "rwsem: simplify rwsem_down_read_failed\n\nWhen trying to acquire a read lock, the RWSEM_ACTIVE_READ_BIAS\nadjustment doesn\u0027t cause other readers to block, so we never have to\nworry about waking them back after canceling this adjustment in\nrwsem_down_read_failed().\n\nWe also never want to steal the lock in rwsem_down_read_failed(), so we\ndon\u0027t have to grab the wait_lock either.\n\nSigned-off-by: Michel Lespinasse \u003cwalken@google.com\u003e\nReviewed-by: Rik van Riel \u003criel@redhat.com\u003e\nReviewed-by: Peter Hurley \u003cpeter@hurleysoftware.com\u003e\nAcked-by: Davidlohr Bueso \u003cdavidlohr.bueso@hp.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "1e78277ccbbb48af32a618d1ef0e8534e0b648d7",
      "tree": "033542c27093b7a24131bee12e84e8ca18cb19dc",
      "parents": [
        "f7dd1cee9a4e2b1450e4a3732636dfbf28562ee4"
      ],
      "author": {
        "name": "Michel Lespinasse",
        "email": "walken@google.com",
        "time": "Tue May 07 06:45:51 2013 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue May 07 07:20:16 2013 -0700"
      },
      "message": "rwsem: move rwsem_down_failed_common code into rwsem_down_{read,write}_failed\n\nRemove the rwsem_down_failed_common function and replace it with two\nidentical copies of its code in rwsem_down_{read,write}_failed.\n\nThis is because we want to make different optimizations in\nrwsem_down_{read,write}_failed; we are adding this pure-duplication\nstep as a separate commit in order to make it easier to check the\nfollowing steps.\n\nSigned-off-by: Michel Lespinasse \u003cwalken@google.com\u003e\nReviewed-by: Rik van Riel \u003criel@redhat.com\u003e\nReviewed-by: Peter Hurley \u003cpeter@hurleysoftware.com\u003e\nAcked-by: Davidlohr Bueso \u003cdavidlohr.bueso@hp.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "f7dd1cee9a4e2b1450e4a3732636dfbf28562ee4",
      "tree": "4dc69d1b121d07d25d6dac56fd33eaffd6dac91f",
      "parents": [
        "e2d57f782c8a906f80d5b5f54da803c1638929d7"
      ],
      "author": {
        "name": "Michel Lespinasse",
        "email": "walken@google.com",
        "time": "Tue May 07 06:45:50 2013 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue May 07 07:20:16 2013 -0700"
      },
      "message": "rwsem: shorter spinlocked section in rwsem_down_failed_common()\n\nThis change reduces the size of the spinlocked and TASK_UNINTERRUPTIBLE\nsections in rwsem_down_failed_common():\n\n- We only need the sem-\u003ewait_lock to insert ourselves on the wait_list;\n  the waiter node can be prepared outside of the wait_lock.\n\n- The task state only needs to be set to TASK_UNINTERRUPTIBLE immediately\n  before checking if we actually need to sleep; it doesn\u0027t need to protect\n  the entire function.\n\nSigned-off-by: Michel Lespinasse \u003cwalken@google.com\u003e\nReviewed-by: Rik van Riel \u003criel@redhat.com\u003e\nReviewed-by: Peter Hurley \u003cpeter@hurleysoftware.com\u003e\nAcked-by: Davidlohr Bueso \u003cdavidlohr.bueso@hp.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "e2d57f782c8a906f80d5b5f54da803c1638929d7",
      "tree": "96a3d2f26b8257d39db40ec4cd3cd52b3ef14588",
      "parents": [
        "c1be5a5b1b355d40e6cf79cc979eb66dafa24ad1"
      ],
      "author": {
        "name": "Michel Lespinasse",
        "email": "walken@google.com",
        "time": "Tue May 07 06:45:49 2013 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue May 07 07:20:15 2013 -0700"
      },
      "message": "rwsem: make the waiter type an enumeration rather than a bitmask\n\nWe are not planning to add some new waiter flags, so we can convert the\nwaiter type into an enumeration.\n\nBackground: David Howells suggested I do this back when I tried adding\na new waiter type for unfair readers. However, I believe the cleanup\napplies regardless of that use case.\n\nSigned-off-by: Michel Lespinasse \u003cwalken@google.com\u003e\nReviewed-by: Rik van Riel \u003criel@redhat.com\u003e\nReviewed-by: Peter Hurley \u003cpeter@hurleysoftware.com\u003e\nAcked-by: Davidlohr Bueso \u003cdavidlohr.bueso@hp.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "9e6879460c8edb0cd3c24c09b83d06541b5af0dc",
      "tree": "1f3b8b270280841c16771d02b9ceab5fc1733957",
      "parents": [
        "534c97b0950b1967bca1c753aeaed32f5db40264"
      ],
      "author": {
        "name": "David Howells",
        "email": "dhowells@redhat.com",
        "time": "Sat May 04 08:48:27 2013 +0100"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun May 05 14:38:00 2013 -0700"
      },
      "message": "Give the OID registry file module info to avoid kernel tainting\n\nGive the OID registry file module information so that it doesn\u0027t taint the\nkernel when compiled as a module and loaded.\n\nReported-by: Dros Adamson \u003cWeston.Adamson@netapp.com\u003e\nSigned-off-by: David Howells \u003cdhowells@redhat.com\u003e\ncc: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\ncc: stable@vger.kernel.org\ncc: linux-nfs@vger.kernel.org\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "20a2078ce7705a6e0722ef5184336eb8657a58d8",
      "tree": "5b927c96516380aa0ecd68d8a609f7cd72120ad5",
      "parents": [
        "0279b3c0ada1d78882f24acf94ac4595bd657a89",
        "307b9c022720f9de90d58e51743e01e9a42aec59"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu May 02 19:40:34 2013 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu May 02 19:40:34 2013 -0700"
      },
      "message": "Merge branch \u0027drm-next\u0027 of git://people.freedesktop.org/~airlied/linux\n\nPull drm updates from Dave Airlie:\n \"This is the main drm pull request for 3.10.\n\n  Wierd bits:\n   - OMAP drm changes required OMAP dss changes, in drivers/video, so I\n     took them in here.\n   - one more fbcon fix for font handover\n   - VT switch avoidance in pm code\n   - scatterlist helpers for gpu drivers - have acks from akpm\n\n  Highlights:\n   - qxl kms driver - driver for the spice qxl virtual GPU\n\n  Nouveau:\n   - fermi/kepler VRAM compression\n   - GK110/nvf0 modesetting support.\n\n  Tegra:\n   - host1x core merged with 2D engine support\n\n  i915:\n   - vt switchless resume\n   - more valleyview support\n   - vblank fixes\n   - modesetting pipe config rework\n\n  radeon:\n   - UVD engine support\n   - SI chip tiling support\n   - GPU registers initialisation from golden values.\n\n  exynos:\n   - device tree changes\n   - fimc block support\n\n  Otherwise:\n   - bunches of fixes all over the place.\"\n\n* \u0027drm-next\u0027 of git://people.freedesktop.org/~airlied/linux: (513 commits)\n  qxl: update to new idr interfaces.\n  drm/nouveau: fix build with nv50-\u003envc0\n  drm/radeon: fix handling of v6 power tables\n  drm/radeon: clarify family checks in pm table parsing\n  drm/radeon: consolidate UVD clock programming\n  drm/radeon: fix UPLL_REF_DIV_MASK definition\n  radeon: add bo tracking debugfs\n  drm/radeon: add new richland pci ids\n  drm/radeon: add some new SI PCI ids\n  drm/radeon: fix scratch reg handling for UVD fence\n  drm/radeon: allocate SA bo in the requested domain\n  drm/radeon: fix possible segfault when parsing pm tables\n  drm/radeon: fix endian bugs in atom_allocate_fb_scratch()\n  OMAPDSS: TFP410: return EPROBE_DEFER if the i2c adapter not found\n  OMAPDSS: VENC: Add error handling for venc_probe_pdata\n  OMAPDSS: HDMI: Add error handling for hdmi_probe_pdata\n  OMAPDSS: RFBI: Add error handling for rfbi_probe_pdata\n  OMAPDSS: DSI: Add error handling for dsi_probe_pdata\n  OMAPDSS: SDI: Add error handling for sdi_probe_pdata\n  OMAPDSS: DPI: Add error handling for dpi_probe_pdata\n  ...\n"
    },
    {
      "commit": "0279b3c0ada1d78882f24acf94ac4595bd657a89",
      "tree": "ba31505ea6581b840604493d0233857bb7ce58d1",
      "parents": [
        "797994f81a8b2bdca2eecffa415c1e7a89a4f961",
        "f3002134158092178be81339ec5a22ff80e6c308"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu May 02 14:56:31 2013 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu May 02 14:56:31 2013 -0700"
      },
      "message": "Merge branch \u0027sched-urgent-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip\n\nPull scheduler fixes from Ingo Molnar:\n \"This fixes the cputime scaling overflow problems for good without\n  having bad 32-bit overhead, and gets rid of the div64_u64_rem() helper\n  as well.\"\n\n* \u0027sched-urgent-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:\n  Revert \"math64: New div64_u64_rem helper\"\n  sched: Avoid prev-\u003estime underflow\n  sched: Do not account bogus utime\n  sched: Avoid cputime scaling overflow\n"
    },
    {
      "commit": "20b4fb485227404329e41ad15588afad3df23050",
      "tree": "f3e099f0ab3da8a93b447203e294d2bb22f6dc05",
      "parents": [
        "b9394d8a657cd3c064fa432aa0905c1b58b38fe9",
        "ac3e3c5b1164397656df81b9e9ab4991184d3236"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed May 01 17:51:54 2013 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed May 01 17:51:54 2013 -0700"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs\n\nPull VFS updates from Al Viro,\n\nMisc cleanups all over the place, mainly wrt /proc interfaces (switch\ncreate_proc_entry to proc_create(), get rid of the deprecated\ncreate_proc_read_entry() in favor of using proc_create_data() and\nseq_file etc).\n\n7kloc removed.\n\n* \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs: (204 commits)\n  don\u0027t bother with deferred freeing of fdtables\n  proc: Move non-public stuff from linux/proc_fs.h to fs/proc/internal.h\n  proc: Make the PROC_I() and PDE() macros internal to procfs\n  proc: Supply a function to remove a proc entry by PDE\n  take cgroup_open() and cpuset_open() to fs/proc/base.c\n  ppc: Clean up scanlog\n  ppc: Clean up rtas_flash driver somewhat\n  hostap: proc: Use remove_proc_subtree()\n  drm: proc: Use remove_proc_subtree()\n  drm: proc: Use minor-\u003eindex to label things, not PDE-\u003ename\n  drm: Constify drm_proc_list[]\n  zoran: Don\u0027t print proc_dir_entry data in debug\n  reiserfs: Don\u0027t access the proc_dir_entry in r_open(), r_start() r_show()\n  proc: Supply an accessor for getting the data from a PDE\u0027s parent\n  airo: Use remove_proc_subtree()\n  rtl8192u: Don\u0027t need to save device proc dir PDE\n  rtl8187se: Use a dir under /proc/net/r8180/\n  proc: Add proc_mkdir_data()\n  proc: Move some bits from linux/proc_fs.h to linux/{of.h,signal.h,tty.h}\n  proc: Move PDE_NET() to fs/proc/proc_net.c\n  ...\n"
    },
    {
      "commit": "5f56886521d6ddd3648777fae44d82382dd8c87f",
      "tree": "aa0db6331cdb01c23f1884439840aadd31bbcca4",
      "parents": [
        "f1e9a236e5ddab6c349611ee86f54291916f226c",
        "e2a8b0a779787314eca1061308a8182e6c5bfabd"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Apr 30 17:37:43 2013 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Apr 30 17:37:43 2013 -0700"
      },
      "message": "Merge branch \u0027akpm\u0027 (incoming from Andrew)\n\nMerge third batch of fixes from Andrew Morton:\n \"Most of the rest.  I still have two large patchsets against AIO and\n  IPC, but they\u0027re a bit stuck behind other trees and I\u0027m about to\n  vanish for six days.\n\n   - random fixlets\n   - inotify\n   - more of the MM queue\n   - show_stack() cleanups\n   - DMI update\n   - kthread/workqueue things\n   - compat cleanups\n   - epoll udpates\n   - binfmt updates\n   - nilfs2\n   - hfs\n   - hfsplus\n   - ptrace\n   - kmod\n   - coredump\n   - kexec\n   - rbtree\n   - pids\n   - pidns\n   - pps\n   - semaphore tweaks\n   - some w1 patches\n   - relay updates\n   - core Kconfig changes\n   - sysrq tweaks\"\n\n* emailed patches from Andrew Morton \u003cakpm@linux-foundation.org\u003e: (109 commits)\n  Documentation/sysrq: fix inconstistent help message of sysrq key\n  ethernet/emac/sysrq: fix inconstistent help message of sysrq key\n  sparc/sysrq: fix inconstistent help message of sysrq key\n  powerpc/xmon/sysrq: fix inconstistent help message of sysrq key\n  ARM/etm/sysrq: fix inconstistent help message of sysrq key\n  power/sysrq: fix inconstistent help message of sysrq key\n  kgdb/sysrq: fix inconstistent help message of sysrq key\n  lib/decompress.c: fix initconst\n  notifier-error-inject: fix module names in Kconfig\n  kernel/sys.c: make prctl(PR_SET_MM) generally available\n  UAPI: remove empty Kbuild files\n  menuconfig: print more info for symbol without prompts\n  init/Kconfig: re-order CONFIG_EXPERT options to fix menuconfig display\n  kconfig menu: move Virtualization drivers near other virtualization options\n  Kconfig: consolidate CONFIG_DEBUG_STRICT_USER_COPY_CHECKS\n  relay: use macro PAGE_ALIGN instead of FIX_SIZE\n  kernel/relay.c: move FIX_SIZE macro into relay.c\n  kernel/relay.c: remove unused function argument actor\n  drivers/w1/slaves/w1_ds2760.c: fix the error handling in w1_ds2760_add_slave()\n  drivers/w1/slaves/w1_ds2781.c: fix the error handling in w1_ds2781_add_slave()\n  ...\n"
    },
    {
      "commit": "6f9982bdde99d4e6f248613ca780c63de26ba086",
      "tree": "ce2b8576bf00be1aa4b45ac8dc8e9b8d392d324f",
      "parents": [
        "e12a95f40ac78f223deab743a5228f9eb3df8ed1"
      ],
      "author": {
        "name": "Andi Kleen",
        "email": "andi@firstfloor.org",
        "time": "Tue Apr 30 15:28:50 2013 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Apr 30 17:04:09 2013 -0700"
      },
      "message": "lib/decompress.c: fix initconst\n\nSigned-off-by: Andi Kleen \u003candi@firstfloor.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "e12a95f40ac78f223deab743a5228f9eb3df8ed1",
      "tree": "e0eb25b9a232e682115e02f80010c8842db36ff0",
      "parents": [
        "52b3694157e3aa6df871e283115652ec6f2d31e0"
      ],
      "author": {
        "name": "Akinobu Mita",
        "email": "akinobu.mita@gmail.com",
        "time": "Tue Apr 30 15:28:49 2013 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Apr 30 17:04:09 2013 -0700"
      },
      "message": "notifier-error-inject: fix module names in Kconfig\n\nThe Kconfig help text for MEMORY_NOTIFIER_ERROR_INJECT and\nOF_RECONFIG_NOTIFIER_ERROR_INJECT has mismatched module names.\n\nSigned-off-by: Akinobu Mita \u003cakinobu.mita@gmail.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "446f24d1199e8a546ba7c97da3fbb9a505a94795",
      "tree": "42c44a565fbdd6f923e0c2403b1c62154acab1b2",
      "parents": [
        "a05342cbd62b7f6dacb8d71683d799f5e5e694b8"
      ],
      "author": {
        "name": "Stephen Boyd",
        "email": "sboyd@codeaurora.org",
        "time": "Tue Apr 30 15:28:42 2013 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Apr 30 17:04:09 2013 -0700"
      },
      "message": "Kconfig: consolidate CONFIG_DEBUG_STRICT_USER_COPY_CHECKS\n\nThe help text for this config is duplicated across the x86, parisc, and\ns390 Kconfig.debug files.  Arnd Bergman noted that the help text was\nslightly misleading and should be fixed to state that enabling this\noption isn\u0027t a problem when using pre 4.4 gcc.\n\nTo simplify the rewording, consolidate the text into lib/Kconfig.debug\nand modify it there to be more explicit about when you should say N to\nthis config.\n\nAlso, make the text a bit more generic by stating that this option\nenables compile time checks so we can cover architectures which emit\nwarnings vs.  ones which emit errors.  The details of how an\narchitecture decided to implement the checks isn\u0027t as important as the\nconcept of compile time checking of copy_from_user() calls.\n\nWhile we\u0027re doing this, remove all the copy_from_user_overflow() code\nthat\u0027s duplicated many times and place it into lib/ so that any\narchitecture supporting this option can get the function for free.\n\nSigned-off-by: Stephen Boyd \u003csboyd@codeaurora.org\u003e\nAcked-by: Arnd Bergmann \u003carnd@arndb.de\u003e\nAcked-by: Ingo Molnar \u003cmingo@kernel.org\u003e\nAcked-by: H. Peter Anvin \u003chpa@zytor.com\u003e\nCc: Arjan van de Ven \u003carjan@linux.intel.com\u003e\nAcked-by: Helge Deller \u003cdeller@gmx.de\u003e\nCc: Heiko Carstens \u003cheiko.carstens@de.ibm.com\u003e\nCc: Stephen Rothwell \u003csfr@canb.auug.org.au\u003e\nCc: Chris Metcalf \u003ccmetcalf@tilera.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "c75aaa8ed03eb1312ed2990f1a716b2b9cc0df42",
      "tree": "7646064b514d7e799ef59abe3f4f445bf2cbd029",
      "parents": [
        "4130f0efbfe5adb360328b777afa8e45f7e467f7"
      ],
      "author": {
        "name": "Davidlohr Bueso",
        "email": "davidlohr.bueso@hp.com",
        "time": "Tue Apr 30 15:28:25 2013 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Apr 30 17:04:07 2013 -0700"
      },
      "message": "rbtree_test: add __init/__exit annotations\n\nSigned-off-by: Davidlohr Bueso \u003cdavidlohr.bueso@hp.com\u003e\nReviewed-by: Michel Lespinasse \u003cwalken@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": "4130f0efbfe5adb360328b777afa8e45f7e467f7",
      "tree": "1067bb405268e345a2faa59f987491157bc82d2a",
      "parents": [
        "31c3a3fe0777642816045a8dd1b666f1718851d7"
      ],
      "author": {
        "name": "Davidlohr Bueso",
        "email": "davidlohr.bueso@hp.com",
        "time": "Tue Apr 30 15:28:24 2013 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Apr 30 17:04:07 2013 -0700"
      },
      "message": "rbtree_test: add extra rbtree integrity check\n\nAccount for the rbtree having  2**bh(v)-1 internal nodes.\n\nWhile this can be seen as a consequence of other checks, Michel states\nthat it nicely sums up what the other properties are for.\n\nSigned-off-by: Davidlohr Bueso \u003cdavidlohr.bueso@hp.com\u003e\nReviewed-by: Michel Lespinasse \u003cwalken@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": "d338b1379f96b20e63aa65082e19e9a18a93b608",
      "tree": "fce537cd0f14c8664de42be3cc7f6465adf15b79",
      "parents": [
        "576d742e4a0d0f1bab7950012addccb82fbc172a"
      ],
      "author": {
        "name": "Andy Shevchenko",
        "email": "andriy.shevchenko@linux.intel.com",
        "time": "Tue Apr 30 15:27:32 2013 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Apr 30 17:04:03 2013 -0700"
      },
      "message": "dynamic_debug: reuse generic string_unescape function\n\nThere is kernel function to do the job in generic way. Let\u0027s use it.\n\nSigned-off-by: Andy Shevchenko \u003candriy.shevchenko@linux.intel.com\u003e\nCc: Jason Baron \u003cjbaron@redhat.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "16c7fa05829e8b91db48e3539c5d6ff3c2b18a23",
      "tree": "6658e9f27c033e5f6de19284fe9a6b8485360aa6",
      "parents": [
        "e1d12f327037a59e06c66520951ab4e0bd29f9c4"
      ],
      "author": {
        "name": "Andy Shevchenko",
        "email": "andriy.shevchenko@linux.intel.com",
        "time": "Tue Apr 30 15:27:30 2013 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Apr 30 17:04:03 2013 -0700"
      },
      "message": "lib/string_helpers: introduce generic string_unescape\n\nThere are several places in kernel where modules unescapes input to convert\nC-Style Escape Sequences into byte codes.\n\nThe patch provides generic implementation of such approach. Test cases are\nalso included into the patch.\n\n[akpm@linux-foundation.org: clarify comment]\n[akpm@linux-foundation.org: export get_random_int() to modules]\nSigned-off-by: Andy Shevchenko \u003candriy.shevchenko@linux.intel.com\u003e\nCc: Samuel Thibault \u003csamuel.thibault@ens-lyon.org\u003e\nCc: Greg Kroah-Hartman \u003cgregkh@linuxfoundation.org\u003e\nCc: Jason Baron \u003cjbaron@redhat.com\u003e\nCc: Alexander Viro \u003cviro@zeniv.linux.org.uk\u003e\nCc: William Hubbs \u003cw.d.hubbs@gmail.com\u003e\nCc: Chris Brannon \u003cchris@the-brannons.com\u003e\nCc: Kirk Reiser \u003ckirk@braille.uwo.ca\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "196779b9b4ce1922afabdc20d0270720603bd46c",
      "tree": "9628ad58fef85b4cc060f434e01fe50a8e0e333c",
      "parents": [
        "89e3f23da9c827bfa9806c3d4da83a12c1c8543a"
      ],
      "author": {
        "name": "Tejun Heo",
        "email": "tj@kernel.org",
        "time": "Tue Apr 30 15:27:12 2013 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Apr 30 17:04:02 2013 -0700"
      },
      "message": "dump_stack: consolidate dump_stack() implementations and unify their behaviors\n\nBoth dump_stack() and show_stack() are currently implemented by each\narchitecture.  show_stack(NULL, NULL) dumps the backtrace for the\ncurrent task as does dump_stack().  On some archs, dump_stack() prints\nextra information - pid, utsname and so on - in addition to the\nbacktrace while the two are identical on other archs.\n\nThe usages in arch-independent code of the two functions indicate\nshow_stack(NULL, NULL) should print out bare backtrace while\ndump_stack() is used for debugging purposes when something went wrong,\nso it does make sense to print additional information on the task which\ntriggered dump_stack().\n\nThere\u0027s no reason to require archs to implement two separate but mostly\nidentical functions.  It leads to unnecessary subtle information.\n\nThis patch expands the dummy fallback dump_stack() implementation in\nlib/dump_stack.c such that it prints out debug information (taken from\nx86) and invokes show_stack(NULL, NULL) and drops arch-specific\ndump_stack() implementations in all archs except blackfin.  Blackfin\u0027s\ndump_stack() does something wonky that I don\u0027t understand.\n\nDebug information can be printed separately by calling\ndump_stack_print_info() so that arch-specific dump_stack()\nimplementation can still emit the same debug information.  This is used\nin blackfin.\n\nThis patch brings the following behavior changes.\n\n* On some archs, an extra level in backtrace for show_stack() could be\n  printed.  This is because the top frame was determined in\n  dump_stack() on those archs while generic dump_stack() can\u0027t do that\n  reliably.  It can be compensated by inlining dump_stack() but not\n  sure whether that\u0027d be necessary.\n\n* Most archs didn\u0027t use to print debug info on dump_stack().  They do\n  now.\n\nAn example WARN dump follows.\n\n WARNING: at kernel/workqueue.c:4841 init_workqueues+0x35/0x505()\n Hardware name: empty\n Modules linked in:\n CPU: 0 PID: 1 Comm: swapper/0 Not tainted 3.9.0-rc1-work+ #9\n  0000000000000009 ffff88007c861e08 ffffffff81c614dc ffff88007c861e48\n  ffffffff8108f50f ffffffff82228240 0000000000000040 ffffffff8234a03c\n  0000000000000000 0000000000000000 0000000000000000 ffff88007c861e58\n Call Trace:\n  [\u003cffffffff81c614dc\u003e] dump_stack+0x19/0x1b\n  [\u003cffffffff8108f50f\u003e] warn_slowpath_common+0x7f/0xc0\n  [\u003cffffffff8108f56a\u003e] warn_slowpath_null+0x1a/0x20\n  [\u003cffffffff8234a071\u003e] init_workqueues+0x35/0x505\n  ...\n\nv2: CPU number added to the generic debug info as requested by s390\n    folks and dropped the s390 specific dump_stack().  This loses %ksp\n    from the debug message which the maintainers think isn\u0027t important\n    enough to keep the s390-specific dump_stack() implementation.\n\n    dump_stack_print_info() is moved to kernel/printk.c from\n    lib/dump_stack.c.  Because linkage is per objecct file,\n    dump_stack_print_info() living in the same lib file as generic\n    dump_stack() means that archs which implement custom dump_stack()\n    - at this point, only blackfin - can\u0027t use dump_stack_print_info()\n    as that will bring in the generic version of dump_stack() too.  v1\n    The v1 patch broke build on blackfin due to this issue.  The build\n    breakage was reported by Fengguang Wu.\n\nSigned-off-by: Tejun Heo \u003ctj@kernel.org\u003e\nAcked-by: David S. Miller \u003cdavem@davemloft.net\u003e\nAcked-by: Vineet Gupta \u003cvgupta@synopsys.com\u003e\nAcked-by: Jesper Nilsson \u003cjesper.nilsson@axis.com\u003e\nAcked-by: Vineet Gupta \u003cvgupta@synopsys.com\u003e\nAcked-by: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\t[s390 bits]\nCc: Heiko Carstens \u003cheiko.carstens@de.ibm.com\u003e\nCc: Mike Frysinger \u003cvapier@gentoo.org\u003e\nCc: Fengguang Wu \u003cfengguang.wu@intel.com\u003e\nCc: Bjorn Helgaas \u003cbhelgaas@google.com\u003e\nCc: Sam Ravnborg \u003csam@ravnborg.org\u003e\nAcked-by: Richard Kuo \u003crkuo@codeaurora.org\u003e\t\t[hexagon bits]\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "30945669593df14692e933c557d00c4bb2727857",
      "tree": "69dee0556b482898ae95f1bdfa25c63f4ce16f57",
      "parents": [
        "5aa1c98862d3f365d9cf6d0833d5dc127d2a76e7",
        "b0d33c2bd77bcf2d7c9427d2361ac57fe5b33aa1"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Apr 30 13:47:37 2013 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Apr 30 13:47:37 2013 -0700"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/jikos/trivial\n\nPull fixup for trivial branch from Jiri Kosina:\n \"Unfortunately I made a mistake when merging into for-linus branch, and\n  omitted one pre-requisity patch for a few other patches (which have\n  been Acked by the appropriate maintainers) in the series.  Mea culpa\n  maxima, sorry for that.\"\n\nThe trivial branch added %pSR usage before actually teaching vsnprintf()\nabout the \u0027R\u0027 part of %pSR.  The \u0027R\u0027 causes the symbol translation to do\na \"__builtin_extract_return_addr()\" before symbol lookup.\n\nThat said, on most architectures __builtin_extract_return_addr() isn\u0027t\nlikely to do anything special, so it probably is not normally\nnoticeable.\n\n* \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/jikos/trivial:\n  vsprintf: Add extension %pSR - print_symbol replacement\n"
    },
    {
      "commit": "b0d33c2bd77bcf2d7c9427d2361ac57fe5b33aa1",
      "tree": "2acb72d0e39aee019cf8aecc917685b120e506a3",
      "parents": [
        "071361d3473ebb8142907470ff12d59c59f6be72"
      ],
      "author": {
        "name": "Joe Perches",
        "email": "joe@perches.com",
        "time": "Wed Dec 12 10:18:50 2012 -0800"
      },
      "committer": {
        "name": "Jiri Kosina",
        "email": "jkosina@suse.cz",
        "time": "Tue Apr 30 22:31:16 2013 +0200"
      },
      "message": "vsprintf: Add extension %pSR - print_symbol replacement\n\nprint_symbol takes a long and converts it to a function\nname and offset.  %pS does something similar, but doesn\u0027t\ntranslate the address via __builtin_extract_return_addr.\n%pSR does the translation.\n\nThis will enable replacing multiple calls like\n\tprintk(...);\n\tprintk_symbol(addr);\n\tprintk(\"\\n\");\nwith a single non-interleavable in dmesg\n\tprintk(\"... %pSR\\n\", (void *)addr);\n\nUpdate documentation too.\n\nSigned-off-by: Joe Perches \u003cjoe@perches.com\u003e\nSigned-off-by: Jiri Kosina \u003cjkosina@suse.cz\u003e\n"
    }
  ],
  "next": "f3002134158092178be81339ec5a22ff80e6c308"
}
