)]}'
{
  "log": [
    {
      "commit": "71db34fc4330f7c784397acb9f1e6ee7f7b32eb2",
      "tree": "77dd08f6f778a799dcd0c48eb72d0742349df235",
      "parents": [
        "50483c3268918ee51a56d1baa39b9149d2d0d521",
        "797a9d797f8483bb67f265c761b76dcd5a077a23"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Mar 29 14:53:25 2012 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Mar 29 14:53:25 2012 -0700"
      },
      "message": "Merge branch \u0027for-3.4\u0027 of git://linux-nfs.org/~bfields/linux\n\nPull nfsd changes from Bruce Fields:\n\nHighlights:\n - Benny Halevy and Tigran Mkrtchyan implemented some more 4.1 features,\n   moving us closer to a complete 4.1 implementation.\n - Bernd Schubert fixed a long-standing problem with readdir cookies on\n   ext2/3/4.\n - Jeff Layton performed a long-overdue overhaul of the server reboot\n   recovery code which will allow us to deprecate the current code (a\n   rather unusual user of the vfs), and give us some needed flexibility\n   for further improvements.\n - Like the client, we now support numeric uid\u0027s and gid\u0027s in the\n   auth_sys case, allowing easier upgrades from NFSv2/v3 to v4.x.\n\nPlus miscellaneous bugfixes and cleanup.\n\nThanks to everyone!\n\nThere are also some delegation fixes waiting on vfs review that I\nsuppose will have to wait for 3.5.  With that done I think we\u0027ll finally\nturn off the \"EXPERIMENTAL\" dependency for v4 (though that\u0027s mostly\nsymbolic as it\u0027s been on by default in distro\u0027s for a while).\n\nAnd the list of 4.1 todo\u0027s should be achievable for 3.5 as well:\n\n   http://wiki.linux-nfs.org/wiki/index.php/Server_4.0_and_4.1_issues\n\nthough we may still want a bit more experience with it before turning it\non by default.\n\n* \u0027for-3.4\u0027 of git://linux-nfs.org/~bfields/linux: (55 commits)\n  nfsd: only register cld pipe notifier when CONFIG_NFSD_V4 is enabled\n  nfsd4: use auth_unix unconditionally on backchannel\n  nfsd: fix NULL pointer dereference in cld_pipe_downcall\n  nfsd4: memory corruption in numeric_name_to_id()\n  sunrpc: skip portmap calls on sessions backchannel\n  nfsd4: allow numeric idmapping\n  nfsd: don\u0027t allow legacy client tracker init for anything but init_net\n  nfsd: add notifier to handle mount/unmount of rpc_pipefs sb\n  nfsd: add the infrastructure to handle the cld upcall\n  nfsd: add a header describing upcall to nfsdcld\n  nfsd: add a per-net-namespace struct for nfsd\n  sunrpc: create nfsd dir in rpc_pipefs\n  nfsd: add nfsd4_client_tracking_ops struct and a way to set it\n  nfsd: convert nfs4_client-\u003ecl_cb_flags to a generic flags field\n  NFSD: Fix nfs4_verifier memory alignment\n  NFSD: Fix warnings when NFSD_DEBUG is not defined\n  nfsd: vfs_llseek() with 32 or 64 bit offsets (hashes)\n  nfsd: rename \u0027int access\u0027 to \u0027int may_flags\u0027 in nfsd_open()\n  ext4: return 32/64-bit dir name hash according to usage type\n  fs: add new FMODE flags: FMODE_32bithash and FMODE_64bithash\n  ...\n"
    },
    {
      "commit": "1df00640c9111c881633d9b219f18e66c52599ec",
      "tree": "e36d3924d84f47ec93f6650ff1fd5b8ea7d10d24",
      "parents": [
        "ab4684d1560f8d77f6ce82bd3f1f82937070d397",
        "5a7c9eec9fde1da0e3adf0a4ddb64ff2a324a492"
      ],
      "author": {
        "name": "J. Bruce Fields",
        "email": "bfields@redhat.com",
        "time": "Wed Mar 21 16:42:14 2012 -0400"
      },
      "committer": {
        "name": "J. Bruce Fields",
        "email": "bfields@redhat.com",
        "time": "Mon Mar 26 11:48:54 2012 -0400"
      },
      "message": "Merge nfs containerization work from Trond\u0027s tree\n\nThe nfs containerization work is a prerequisite for Jeff Layton\u0027s reboot\nrecovery rework.\n"
    },
    {
      "commit": "f63d395d47f37a4fe771e6d4b1db9d2cdae5ffc5",
      "tree": "3448a14ae965802adb963762cadeb9989ce4caa2",
      "parents": [
        "643ac9fc5429e85b8b7f534544b80bcc4f34c367",
        "5a7c9eec9fde1da0e3adf0a4ddb64ff2a324a492"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Mar 23 08:53:47 2012 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Mar 23 08:53:47 2012 -0700"
      },
      "message": "Merge tag \u0027nfs-for-3.4-1\u0027 of git://git.linux-nfs.org/projects/trondmy/linux-nfs\n\nPull NFS client updates for Linux 3.4 from Trond Myklebust:\n \"New features include:\n   - Add NFS client support for containers.\n\n     This should enable most of the necessary functionality, including\n     lockd support, and support for rpc.statd, NFSv4 idmapper and\n     RPCSEC_GSS upcalls into the correct network namespace from which\n     the mount system call was issued.\n\n   - NFSv4 idmapper scalability improvements\n\n     Base the idmapper cache on the keyring interface to allow\n     concurrent access to idmapper entries.  Start the process of\n     migrating users from the single-threaded daemon-based approach to\n     the multi-threaded request-key based approach.\n\n   - NFSv4.1 implementation id.\n\n     Allows the NFSv4.1 client and server to mutually identify each\n     other for logging and debugging purposes.\n\n   - Support the \u0027vers\u003d4.1\u0027 mount option for mounting NFSv4.1 instead of\n     having to use the more counterintuitive \u0027vers\u003d4,minorversion\u003d1\u0027.\n\n   - SUNRPC tracepoints.\n\n     Start the process of adding tracepoints in order to improve\n     debugging of the RPC layer.\n\n   - pNFS object layout support for autologin.\n\n  Important bugfixes include:\n\n   - Fix a bug in rpc_wake_up/rpc_wake_up_status that caused them to\n     fail to wake up all tasks when applied to priority waitqueues.\n\n   - Ensure that we handle read delegations correctly, when we try to\n     truncate a file.\n\n   - A number of fixes for NFSv4 state manager loops (mostly to do with\n     delegation recovery).\"\n\n* tag \u0027nfs-for-3.4-1\u0027 of git://git.linux-nfs.org/projects/trondmy/linux-nfs: (224 commits)\n  NFS: fix sb-\u003es_id in nfs debug prints\n  xprtrdma: Remove assumption that each segment is \u003c\u003d PAGE_SIZE\n  xprtrdma: The transport should not bug-check when a dup reply is received\n  pnfs-obj: autologin: Add support for protocol autologin\n  NFS: Remove nfs4_setup_sequence from generic rename code\n  NFS: Remove nfs4_setup_sequence from generic unlink code\n  NFS: Remove nfs4_setup_sequence from generic read code\n  NFS: Remove nfs4_setup_sequence from generic write code\n  NFS: Fix more NFS debug related build warnings\n  SUNRPC/LOCKD: Fix build warnings when CONFIG_SUNRPC_DEBUG is undefined\n  nfs: non void functions must return a value\n  SUNRPC: Kill compiler warning when RPC_DEBUG is unset\n  SUNRPC/NFS: Add Kbuild dependencies for NFS_DEBUG/RPC_DEBUG\n  NFS: Use cond_resched_lock() to reduce latencies in the commit scans\n  NFSv4: It is not safe to dereference lsp-\u003els_state in release_lockowner\n  NFS: ncommit count is being double decremented\n  SUNRPC: We must not use list_for_each_entry_safe() in rpc_wake_up()\n  Try using machine credentials for RENEW calls\n  NFSv4.1: Fix a few issues in filelayout_commit_pagelist\n  NFSv4.1: Clean ups and bugfixes for the pNFS read/writeback/commit code\n  ...\n"
    },
    {
      "commit": "9b78145c0f280d4f01c460d6251eab2584181fa9",
      "tree": "09f0f8b13541db68f23e73be122129a9ee4e4dcb",
      "parents": [
        "4a6862b3649d705bf41a36e3c7943d0322a9ee27"
      ],
      "author": {
        "name": "Tom Tucker",
        "email": "tom@ogc.us",
        "time": "Mon Feb 20 13:07:57 2012 -0600"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Wed Mar 21 09:31:47 2012 -0400"
      },
      "message": "xprtrdma: Remove assumption that each segment is \u003c\u003d PAGE_SIZE\n\nThe xprtrdma FRMR mapping logic assumes that a segment is \u003c\u003d PAGE_SIZE.\nThis is not true for NFS4.\n\nSigned-off-by: Tom Tucker \u003ctom@ogc.us\u003e\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "4a6862b3649d705bf41a36e3c7943d0322a9ee27",
      "tree": "d4e53e6f1c1b53716a373bb316e408653d28a8ef",
      "parents": [
        "18d98f6c04991dd3c12acf6f39cea40e9510640a"
      ],
      "author": {
        "name": "Tom Tucker",
        "email": "tom@ogc.us",
        "time": "Mon Feb 20 13:07:42 2012 -0600"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Wed Mar 21 09:31:47 2012 -0400"
      },
      "message": "xprtrdma: The transport should not bug-check when a dup reply is received\n\nThe client side RDMA transport will bug check if it receives a duplicate\nreply, instead we should simply drop the duplicate reply.\n\nSigned-off-by: Tom Tucker \u003ctom@ogc.us\u003e\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "b85417860172ff693dc115d7999805fc240cec1c",
      "tree": "e7f1c8ac18958e7bcb9182caa8639104384e44f9",
      "parents": [
        "6114eab535ab49239e0a6ce08eb9243664aef993"
      ],
      "author": {
        "name": "Cong Wang",
        "email": "amwang@redhat.com",
        "time": "Fri Nov 25 23:14:40 2011 +0800"
      },
      "committer": {
        "name": "Cong Wang",
        "email": "xiyou.wangcong@gmail.com",
        "time": "Tue Mar 20 21:48:28 2012 +0800"
      },
      "message": "sunrpc: remove the second argument of k[un]map_atomic()\n\nSigned-off-by: Cong Wang \u003camwang@redhat.com\u003e\n"
    },
    {
      "commit": "cec56c8ff5e28f58ff13041dca7853738ae577a1",
      "tree": "fb21c7337e046cb2361faca4931907e28fadcb5d",
      "parents": [
        "2c8bd7e0d1b66b2f8f267fd6ab62a30569c792c0"
      ],
      "author": {
        "name": "Tom Tucker",
        "email": "tom@ogc.us",
        "time": "Wed Feb 15 11:30:00 2012 -0600"
      },
      "committer": {
        "name": "J. Bruce Fields",
        "email": "bfields@redhat.com",
        "time": "Fri Feb 17 18:38:50 2012 -0500"
      },
      "message": "svcrdma: Cleanup sparse warnings in the svcrdma module\n\nThe svcrdma transport was un-marshalling requests in-place. This resulted\nin sparse warnings due to __beXX data containing both NBO and HBO data.\n\nThe code has been restructured to do byte-swapping as the header is\nparsed instead of when the header is validated immediately after receipt.\n\nAlso moved extern declarations for the workqueue and memory pools to the\nprivate header file.\n\nSigned-off-by: Tom Tucker \u003ctom@ogc.us\u003e\nSigned-off-by: J. Bruce Fields \u003cbfields@redhat.com\u003e\n"
    },
    {
      "commit": "bd4620ddf6d6eb3d9e7d073ad601fa4299d46ba9",
      "tree": "26625283079a642b4241b7b75482a0a558dd5ca9",
      "parents": [
        "94cf3179ccfc69d727dd884fd0831d82ada6bb06"
      ],
      "author": {
        "name": "Stanislav Kinsbursky",
        "email": "skinsbursky@parallels.com",
        "time": "Tue Dec 06 14:19:10 2011 +0300"
      },
      "committer": {
        "name": "J. Bruce Fields",
        "email": "bfields@redhat.com",
        "time": "Tue Dec 06 16:20:42 2011 -0500"
      },
      "message": "SUNRPC: create svc_xprt in proper network namespace\n\nThis patch makes svc_xprt inherit network namespace link from its socket.\n\nSigned-off-by: Stanislav Kinsbursky \u003cskinsbursky@parallels.com\u003e\nSigned-off-by: J. Bruce Fields \u003cbfields@redhat.com\u003e\n"
    },
    {
      "commit": "bc3b2d7fb9b014d75ebb79ba371a763dbab5e8cf",
      "tree": "b0fd4e724bdb1c0a1783616614ae5a9dec1cfa5c",
      "parents": [
        "d9b9384215e17c68d7b6bd05d6fa409e5d4140d7"
      ],
      "author": {
        "name": "Paul Gortmaker",
        "email": "paul.gortmaker@windriver.com",
        "time": "Fri Jul 15 11:47:34 2011 -0400"
      },
      "committer": {
        "name": "Paul Gortmaker",
        "email": "paul.gortmaker@windriver.com",
        "time": "Mon Oct 31 19:30:30 2011 -0400"
      },
      "message": "net: Add export.h for EXPORT_SYMBOL/THIS_MODULE to non-modules\n\nThese files are non modular, but need to export symbols using\nthe macros now living in export.h -- call out the include so\nthat things won\u0027t break when we remove the implicit presence\nof module.h from everywhere.\n\nSigned-off-by: Paul Gortmaker \u003cpaul.gortmaker@windriver.com\u003e\n"
    },
    {
      "commit": "28890d3598c352ae065b560e0fded3e79c800ba1",
      "tree": "93267c5b29b9e81185e66a6c2e70e67dc626b63f",
      "parents": [
        "91d41fdf31f74e6e2e5f3cb018eca4200e36e202",
        "ed1e6211a0a134ff23592c6f057af982ad5dab52"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Jul 27 13:23:02 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Jul 27 13:23:02 2011 -0700"
      },
      "message": "Merge branch \u0027nfs-for-3.1\u0027 of git://git.linux-nfs.org/projects/trondmy/linux-nfs\n\n* \u0027nfs-for-3.1\u0027 of git://git.linux-nfs.org/projects/trondmy/linux-nfs: (44 commits)\n  NFSv4: Don\u0027t use the delegation-\u003einode in nfs_mark_return_delegation()\n  nfs: don\u0027t use d_move in nfs_async_rename_done\n  RDMA: Increasing RPCRDMA_MAX_DATA_SEGS\n  SUNRPC: Replace xprt-\u003eresend and xprt-\u003esending with a priority queue\n  SUNRPC: Allow caller of rpc_sleep_on() to select priority levels\n  SUNRPC: Support dynamic slot allocation for TCP connections\n  SUNRPC: Clean up the slot table allocation\n  SUNRPC: Initalise the struct xprt upon allocation\n  SUNRPC: Ensure that we grab the XPRT_LOCK before calling xprt_alloc_slot\n  pnfs: simplify pnfs files module autoloading\n  nfs: document nfsv4 sillyrename issues\n  NFS: Convert nfs4_set_ds_client to EXPORT_SYMBOL_GPL\n  SUNRPC: Convert the backchannel exports to EXPORT_SYMBOL_GPL\n  SUNRPC: sunrpc should not explicitly depend on NFS config options\n  NFS: Clean up - simplify the switch to read/write-through-MDS\n  NFS: Move the pnfs write code into pnfs.c\n  NFS: Move the pnfs read code into pnfs.c\n  NFS: Allow the nfs_pageio_descriptor to signal that a re-coalesce is needed\n  NFS: Use the nfs_pageio_descriptor-\u003epg_bsize in the read/write request\n  NFS: Cache rpc_ops in struct nfs_pageio_descriptor\n  ...\n"
    },
    {
      "commit": "60063497a95e716c9a689af3be2687d261f115b4",
      "tree": "6ce0d68db76982c53df46aee5f29f944ebf2c320",
      "parents": [
        "148817ba092f9f6edd35bad3c6c6b8e8f90fe2ed"
      ],
      "author": {
        "name": "Arun Sharma",
        "email": "asharma@fb.com",
        "time": "Tue Jul 26 16:09:06 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Jul 26 16:49:47 2011 -0700"
      },
      "message": "atomic: use \u003clinux/atomic.h\u003e\n\nThis allows us to move duplicated code in \u003casm/atomic.h\u003e\n(atomic_inc_not_zero() for now) to \u003clinux/atomic.h\u003e\n\nSigned-off-by: Arun Sharma \u003casharma@fb.com\u003e\nReviewed-by: Eric Dumazet \u003ceric.dumazet@gmail.com\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: David Miller \u003cdavem@davemloft.net\u003e\nCc: Eric Dumazet \u003ceric.dumazet@gmail.com\u003e\nAcked-by: Mike Frysinger \u003cvapier@gentoo.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "2773395b34883fe54418de188733a63bb38e0ad6",
      "tree": "e29d8964602bf06bce1a0ebd60e92aeac9bb05ac",
      "parents": [
        "5f00bcb38ef9a980a33c6dbdc0044964b05f22dd"
      ],
      "author": {
        "name": "Steve Dickson",
        "email": "steved@redhat.com",
        "time": "Thu Jul 21 13:49:02 2011 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Mon Jul 25 14:54:31 2011 -0400"
      },
      "message": "RDMA: Increasing RPCRDMA_MAX_DATA_SEGS\n\nOur performance team has noticed that increasing\nRPCRDMA_MAX_DATA_SEGS from 8 to 64 significantly\nincreases throughput when using the RDMA transport.\n\nSigned-off-by: Steve Dickson \u003csteved@redhat.com\u003e\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "5f00bcb38ef9a980a33c6dbdc0044964b05f22dd",
      "tree": "3175fb9375aecb50bde1be0bf4fa8aa8155131d6",
      "parents": [
        "34006cee28f7344f9557a4be3816c7891b1bbab1",
        "b6844e8f64920cdee620157252169ba63afb0c89"
      ],
      "author": {
        "name": "Stephen Rothwell",
        "email": "sfr@canb.auug.org.au",
        "time": "Mon Jul 25 13:59:46 2011 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Mon Jul 25 14:53:52 2011 -0400"
      },
      "message": "Merge branch \u0027master\u0027 into devel and apply fixup from Stephen Rothwell:\n\nvfs/nfs: fixup for nfs_open_context change\n\nSigned-off-by: Stephen Rothwell \u003csfr@canb.auug.org.au\u003e\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "d9ba131d8f58c0d2ff5029e7002ab43f913b36f9",
      "tree": "f2ed7330c72077bf84954b989cbe1ff47522a115",
      "parents": [
        "21de0a955f3af29fa1100d96f66e6adade89e77a"
      ],
      "author": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Sun Jul 17 18:11:30 2011 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Sun Jul 17 18:11:30 2011 -0400"
      },
      "message": "SUNRPC: Support dynamic slot allocation for TCP connections\n\nAllow the number of available slots to grow with the TCP window size.\n\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "43cedbf0e8dfb9c5610eb7985d5f21263e313802",
      "tree": "7758630292b6a276a3db72e63803ddc02c0a4444",
      "parents": [
        "f85ef69ce08bc2209858135328335f668ba35bdb"
      ],
      "author": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Sun Jul 17 16:01:03 2011 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Sun Jul 17 16:01:03 2011 -0400"
      },
      "message": "SUNRPC: Ensure that we grab the XPRT_LOCK before calling xprt_alloc_slot\n\nThis throttles the allocation of new slots when the socket is busy\nreconnecting and/or is out of buffer space.\n\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "a6b7a407865aab9f849dd99a71072b7cd1175116",
      "tree": "42995f2e25b777e8930b5ac180599f8d4e655df6",
      "parents": [
        "aedfebbaa7a4883dc568d8d32b7b32a0f9833f41"
      ],
      "author": {
        "name": "Alexey Dobriyan",
        "email": "adobriyan@gmail.com",
        "time": "Mon Jun 06 10:43:46 2011 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Jun 06 22:55:11 2011 -0700"
      },
      "message": "net: remove interrupt.h inclusion from netdevice.h\n\n* remove interrupt.g inclusion from netdevice.h -- not needed\n* fixup fallout, add interrupt.h and hardirq.h back where needed.\n\nSigned-off-by: Alexey Dobriyan \u003cadobriyan@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "4c171acc20794af16a27da25e11ec4e9cad5d9fa",
      "tree": "fb097384d709b7bda982902d999f658bb4f07b2c",
      "parents": [
        "20e0ec119b2c6cc412addefbe169f4f5e38701e8",
        "8dc4abdf4c82d0e1c47f14b6615406d31975ea66"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu May 26 12:13:57 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu May 26 12:13:57 2011 -0700"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/roland/infiniband\n\n* \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/roland/infiniband:\n  RDMA/cma: Save PID of ID\u0027s owner\n  RDMA/cma: Add support for netlink statistics export\n  RDMA/cma: Pass QP type into rdma_create_id()\n  RDMA: Update exported headers list\n  RDMA/cma: Export enum cma_state in \u003crdma/rdma_cm.h\u003e\n  RDMA/nes: Add a check for strict_strtoul()\n  RDMA/cxgb3: Don\u0027t post zero-byte read if endpoint is going away\n  RDMA/cxgb4: Use completion objects for event blocking\n  IB/srp: Fix integer -\u003e pointer cast warnings\n  IB: Add devnode methods to cm_class and umad_class\n  IB/mad: Return EPROTONOSUPPORT when an RDMA device lacks the QP required\n  IB/uverbs: Add devnode method to set path/mode\n  RDMA/ucma: Add .nodename/.mode to tell userspace where to create device node\n  RDMA: Add netlink infrastructure\n  RDMA: Add error handling to ib_core_init()\n"
    },
    {
      "commit": "b26f9b9949013fec31b23c426fc463164ae08891",
      "tree": "072bbf5abb93baea33a4aebaad2381ff69563a0b",
      "parents": [
        "9a7147b506ccae8552b0cf218b3c02982012eb4d"
      ],
      "author": {
        "name": "Sean Hefty",
        "email": "sean.hefty@intel.com",
        "time": "Thu Apr 01 17:08:41 2010 +0000"
      },
      "committer": {
        "name": "Roland Dreier",
        "email": "roland@purestorage.com",
        "time": "Wed May 25 13:46:23 2011 -0700"
      },
      "message": "RDMA/cma: Pass QP type into rdma_create_id()\n\nThe RDMA CM currently infers the QP type from the port space selected\nby the user.  In the future (eg with RDMA_PS_IB or XRC), there may not\nbe a 1-1 correspondence between port space and QP type.  For netlink\nexport of RDMA CM state, we want to export the QP type to userspace,\nso it is cleaner to explicitly associate a QP type to an ID.\n\nModify rdma_create_id() to allow the user to specify the QP type, and\nuse it to make our selections of datagram versus connected mode.\n\nSigned-off-by: Sean Hefty \u003csean.hefty@intel.com\u003e\nSigned-off-by: Roland Dreier \u003croland@purestorage.com\u003e\n"
    },
    {
      "commit": "70f23fd66bc821a0e99647f70a809e277cc93c4c",
      "tree": "3e768b77e63c6364ef32cf257c9449369afd215f",
      "parents": [
        "c719864f15676af92b705589c93ba1468b89cd24"
      ],
      "author": {
        "name": "Justin P. Mattock",
        "email": "justinmattock@gmail.com",
        "time": "Tue May 10 10:16:21 2011 +0200"
      },
      "committer": {
        "name": "Jiri Kosina",
        "email": "jkosina@suse.cz",
        "time": "Tue May 10 10:16:21 2011 +0200"
      },
      "message": "treewide: fix a few typos in comments\n\n- kenrel -\u003e kernel\n- whetehr -\u003e whether\n- ttt -\u003e tt\n- sss -\u003e ss\n\nSigned-off-by: Justin P. Mattock \u003cjustinmattock@gmail.com\u003e\nSigned-off-by: Jiri Kosina \u003cjkosina@suse.cz\u003e\n"
    },
    {
      "commit": "986d4abbddf9e76184f6cabf66654ea8e61bcde5",
      "tree": "911372f76d30665c08957ee5422cc408137c43b7",
      "parents": [
        "4d4a76f3309edc671918a767b336492fbc80a16d"
      ],
      "author": {
        "name": "Randy Dunlap",
        "email": "randy.dunlap@oracle.com",
        "time": "Tue Mar 15 17:11:59 2011 -0700"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Tue Mar 15 20:17:32 2011 -0400"
      },
      "message": "sunrpc: fix printk format warning\n\nFix printk format build warning:\n\nnet/sunrpc/xprtrdma/verbs.c:1463: warning: format \u0027%llx\u0027 expects type \u0027long long unsigned int\u0027, but argument 3 has type \u0027dma_addr_t\u0027\n\nSigned-off-by: Randy Dunlap \u003crandy.dunlap@oracle.com\u003e\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "5c635e09cec0feeeb310968e51dad01040244851",
      "tree": "6f776276df4d20b221c02f776a677f8719f9a0aa",
      "parents": [
        "bd7ea31b9e8a342be76e0fe8d638343886c2d8c5"
      ],
      "author": {
        "name": "Tom Tucker",
        "email": "tom@ogc.us",
        "time": "Wed Feb 09 19:45:34 2011 +0000"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Fri Mar 11 15:39:27 2011 -0500"
      },
      "message": "RPCRDMA: Fix FRMR registration/invalidate handling.\n\nWhen the rpc_memreg_strategy is 5, FRMR are used to map RPC data.\nThis mode uses an FRMR to map the RPC data, then invalidates\n(i.e. unregisers) the data in xprt_rdma_free. These FRMR are used\nacross connections on the same mount, i.e. if the connection goes\naway on an idle timeout and reconnects later, the FRMR are not\ndestroyed and recreated.\n\nThis creates a problem for transport errors because the WR that\ninvalidate an FRMR may be flushed (i.e. fail) leaving the\nFRMR valid. When the FRMR is later used to map an RPC it will fail,\ntearing down the transport and starting over. Over time, more and\nmore of the FRMR pool end up in the wrong state resulting in\nseemingly random disconnects.\n\nThis fix keeps track of the FRMR state explicitly by setting it\u0027s\nstate based on the successful completion of a reg/inv WR. If the FRMR\nis ever used and found to be in the wrong state, an invalidate WR\nis prepended, re-syncing the FRMR state and avoiding the connection loss.\n\nSigned-off-by: Tom Tucker \u003ctom@ogc.us\u003e\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "bd7ea31b9e8a342be76e0fe8d638343886c2d8c5",
      "tree": "bc56c61372dcd6ff08cca605f4eb7359ce025048",
      "parents": [
        "b064eca2cf6440bf9d5843b24cc4010624031694"
      ],
      "author": {
        "name": "Tom Tucker",
        "email": "tom@ogc.us",
        "time": "Wed Feb 09 19:45:28 2011 +0000"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Fri Mar 11 15:39:27 2011 -0500"
      },
      "message": "RPCRDMA: Fix to XDR page base interpretation in marshalling logic.\n\nThe RPCRDMA marshalling logic assumed that xdr-\u003epage_base was an\noffset into the first page of xdr-\u003epage_list. It is in fact an\noffset into the xdr-\u003epage_list itself, that is, it selects the\nfirst page in the page_list and the offset into that page.\n\nThe symptom depended in part on the rpc_memreg_strategy, if it was\nFRMR, or some other one-shot mapping mode, the connection would get\ntorn down on a base and bounds error. When the badly marshalled RPC\nwas retransmitted it would reconnect, get the error, and tear down the\nconnection again in a loop forever. This resulted in a hung-mount. For\nthe other modes, it would result in silent data corruption. This bug is\nmost easily reproduced by writing more data than the filesystem\nhas space for.\n\nThis fix corrects the page_base assumption and otherwise simplifies\nthe iov mapping logic.\n\nSigned-off-by: Tom Tucker \u003ctom@ogc.us\u003e\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "a5e502681007779d4762fb3ef7e80a3ecd1cfe6b",
      "tree": "bfa3e8658e93fd8c64eff33cca5904c9f32ae055",
      "parents": [
        "d2224e7afbf2a6556f4f8f25bc0e96d99ec4d2bd"
      ],
      "author": {
        "name": "Jesper Juhl",
        "email": "jj@chaosbits.net",
        "time": "Sat Jan 22 21:40:20 2011 +0000"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Thu Mar 10 15:04:54 2011 -0500"
      },
      "message": "SUNRPC: Remove resource leak in svc_rdma_send_error()\n\nWe leak the memory allocated to \u0027ctxt\u0027 when we return after\n\u0027ib_dma_mapping_error()\u0027 returns !\u003d0.\n\nSigned-off-by: Jesper Juhl \u003cjj@chaosbits.net\u003e\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "a25e758c5fa1137e1bbc440194e55f7c59177145",
      "tree": "4563a1d423ef9c9d54ca0c1222d34274613b31cf",
      "parents": [
        "8f3a6de313391b6910aa7db185eb9f3e930a51cf"
      ],
      "author": {
        "name": "Tejun Heo",
        "email": "tj@kernel.org",
        "time": "Fri Oct 15 17:49:27 2010 +0200"
      },
      "committer": {
        "name": "J. Bruce Fields",
        "email": "bfields@redhat.com",
        "time": "Thu Oct 21 10:11:45 2010 -0400"
      },
      "message": "sunrpc/xprtrdma: clean up workqueue usage\n\n* Create and use svc_rdma_wq instead of using the system workqueue and\n  flush_scheduled_work().  This workqueue is necessary to serve as\n  flushing domain for rdma-\u003esc_work which is used to destroy itself\n  and thus can\u0027t be flushed explicitly.\n\n* Replace cancel_delayed_work() + flush_scheduled_work() with\n  cancel_delayed_work_sync().\n\n* Implement synchronous connect in xprt_rdma_connect() using\n  flush_delayed_work() on the rdma_connect work instead of using\n  flush_scheduled_work().\n\nThis is to prepare for the deprecation and removal of\nflush_scheduled_work().\n\nSigned-off-by: Tejun Heo \u003ctj@kernel.org\u003e\nSigned-off-by: J. Bruce Fields \u003cbfields@redhat.com\u003e\n"
    },
    {
      "commit": "4a84386fc27fdc7d2ea69fdbc641008e8f943159",
      "tree": "4d237d58f695713c72a01631d010e6387db820c7",
      "parents": [
        "b432e6b3d9c1b4271c43f02b45136f33a8ed5820"
      ],
      "author": {
        "name": "Tom Tucker",
        "email": "tom@ogc.us",
        "time": "Tue Oct 12 15:33:57 2010 -0500"
      },
      "committer": {
        "name": "J. Bruce Fields",
        "email": "bfields@redhat.com",
        "time": "Mon Oct 18 19:51:32 2010 -0400"
      },
      "message": "svcrdma: Cleanup DMA unmapping in error paths.\n\nThere are several error paths in the code that do not unmap DMA. This\npatch adds calls to svc_rdma_unmap_dma to free these DMA contexts.\n\nSigned-off-by: Tom Tucker \u003ctom@opengridcomputing.com\u003e\nSigned-off-by: J. Bruce Fields \u003cbfields@redhat.com\u003e\n"
    },
    {
      "commit": "b432e6b3d9c1b4271c43f02b45136f33a8ed5820",
      "tree": "bc557633646b380b8d5cc7e037a7ddc9036bbd2a",
      "parents": [
        "ecec6e34e18660799444c5a163c7313a20fba701"
      ],
      "author": {
        "name": "Tom Tucker",
        "email": "tom@ogc.us",
        "time": "Tue Oct 12 15:33:52 2010 -0500"
      },
      "committer": {
        "name": "J. Bruce Fields",
        "email": "bfields@redhat.com",
        "time": "Mon Oct 18 19:51:31 2010 -0400"
      },
      "message": "svcrdma: Change DMA mapping logic to avoid the page_address kernel API\n\nThere was logic in the send path that assumed that a page containing data\nto send to the client has a KVA. This is not always the case and can result\nin data corruption when page_address returns zero and we end up DMA mapping\nzero.\n\nThis patch changes the bus mapping logic to avoid page_address() where\nnecessary and converts all calls from ib_dma_map_single to ib_dma_map_page\nin order to keep the map/unmap calls symmetric.\n\nSigned-off-by: Tom Tucker \u003ctom@ogc.us\u003e\nSigned-off-by: J. Bruce Fields \u003cbfields@redhat.com\u003e\n"
    },
    {
      "commit": "37aa2133731d9231eb834f700119f0d3f1ed2664",
      "tree": "2b4da236e76d590fb1bd675e4401af5d1ecff327",
      "parents": [
        "9a23e332ec621d36e52cc7a978abc0917067b1aa"
      ],
      "author": {
        "name": "Pavel Emelyanov",
        "email": "xemul@parallels.com",
        "time": "Wed Sep 29 16:05:43 2010 +0400"
      },
      "committer": {
        "name": "J. Bruce Fields",
        "email": "bfields@redhat.com",
        "time": "Fri Oct 01 17:18:58 2010 -0400"
      },
      "message": "sunrpc: Tag rpc_xprt with net\n\nThe net is known from the xprt_create and this tagging will also\ngive un the context in the conntection workers where real sockets\nare created.\n\nSigned-off-by: Pavel Emelyanov \u003cxemul@openvz.org\u003e\nSigned-off-by: J. Bruce Fields \u003cbfields@redhat.com\u003e\n"
    },
    {
      "commit": "62832c039eab9d03cd28a66427ce8276988f28b0",
      "tree": "47d0b7fbd5ca567aa31661146ba16218149d67c8",
      "parents": [
        "fc5d00b04a3a58cac8620403dfe9f43f72578ec1"
      ],
      "author": {
        "name": "Pavel Emelyanov",
        "email": "xemul@parallels.com",
        "time": "Wed Sep 29 16:04:18 2010 +0400"
      },
      "committer": {
        "name": "J. Bruce Fields",
        "email": "bfields@redhat.com",
        "time": "Fri Oct 01 17:18:55 2010 -0400"
      },
      "message": "sunrpc: Pull net argument downto svc_create_socket\n\nAfter this the socket creation in it knows the context.\n\nSigned-off-by: Pavel Emelyanov \u003cxemul@openvz.org\u003e\nSigned-off-by: J. Bruce Fields \u003cbfields@redhat.com\u003e\n"
    },
    {
      "commit": "e204e621b4160c802315bc2d0fa335337c0d62e8",
      "tree": "f61889925880484b71ce8b5dbef9a95c3a3b4acb",
      "parents": [
        "bd1722d4316e42a12fe6337ebe34d7e1e2c088b2"
      ],
      "author": {
        "name": "Pavel Emelyanov",
        "email": "xemul@parallels.com",
        "time": "Wed Sep 29 16:03:13 2010 +0400"
      },
      "committer": {
        "name": "J. Bruce Fields",
        "email": "bfields@redhat.com",
        "time": "Fri Oct 01 17:18:53 2010 -0400"
      },
      "message": "sunrpc: Factor out rpc_xprt freeing\n\nSigned-off-by: Pavel Emelyanov \u003cxemul@openvz.org\u003e\nSigned-off-by: J. Bruce Fields \u003cbfields@redhat.com\u003e\n"
    },
    {
      "commit": "bd1722d4316e42a12fe6337ebe34d7e1e2c088b2",
      "tree": "358d45aaf5fb08a177fd6fbe5dcf8872160c30fc",
      "parents": [
        "2b44f1ba40914777f4b1075254ba97663d4e2574"
      ],
      "author": {
        "name": "Pavel Emelyanov",
        "email": "xemul@parallels.com",
        "time": "Wed Sep 29 16:02:43 2010 +0400"
      },
      "committer": {
        "name": "J. Bruce Fields",
        "email": "bfields@redhat.com",
        "time": "Fri Oct 01 17:18:52 2010 -0400"
      },
      "message": "sunrpc: Factor out rpc_xprt allocation\n\nSigned-off-by: Pavel Emelyanov \u003cxemul@openvz.org\u003e\nSigned-off-by: J. Bruce Fields \u003cbfields@redhat.com\u003e\n"
    },
    {
      "commit": "15cdc644b268a9a9ce73ce0b153129222c254b7b",
      "tree": "aca119f733a5c0823ed4b294c3eef4a222d55b7c",
      "parents": [
        "7a8b80eb38b248cfdf84048dad12073d5cfba3e6"
      ],
      "author": {
        "name": "Tom Tucker",
        "email": "tom@ogc.us",
        "time": "Wed Aug 11 12:47:24 2010 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Wed Aug 11 12:47:24 2010 -0400"
      },
      "message": "rpcrdma: Fix SQ size calculation when memreg is FRMR\n\nThis patch updates the computation to include the worst case situation\nwhere three FRMR are required to map a single RPC REQ.\n\nSigned-off-by: Tom Tucker \u003ctom@ogc.us\u003e\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "7a8b80eb38b248cfdf84048dad12073d5cfba3e6",
      "tree": "d66e1ec8f4b95a1d17dad42af67dd1137a6ece77",
      "parents": [
        "5d7ca35a182a626f8ed5596023ad42eb219a332e"
      ],
      "author": {
        "name": "Steve Wise",
        "email": "swise@opengridcomputing.com",
        "time": "Wed Aug 11 12:47:08 2010 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Wed Aug 11 12:47:08 2010 -0400"
      },
      "message": "xprtrdma: Do not truncate iova_start values in frmr registrations.\n\nA bad cast causes the iova_start, which in this case is a 64b DMA\nbus address, to be truncated on 32b systems.  This breaks frmrs on\n32b systems.  No cast is needed.\n\nSigned-off-by: Steve Wise \u003cswise@opengridcomputing.com\u003e\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "f72caf7e496465182eeda842ac66a5e75404ddf1",
      "tree": "682e2e4b34d6240ea5dbc516d368dd14b21de182",
      "parents": [
        "6a6be470c3071559970c5659354484d4f664050e",
        "e4e83ea47babd9d4bf95a13aed87f8ef51e46472"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed May 19 17:24:54 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed May 19 17:24:54 2010 -0700"
      },
      "message": "Merge branch \u0027for-2.6.35\u0027 of git://linux-nfs.org/~bfields/linux\n\n* \u0027for-2.6.35\u0027 of git://linux-nfs.org/~bfields/linux: (45 commits)\n  Revert \"nfsd4: distinguish expired from stale stateids\"\n  nfsd: safer initialization order in find_file()\n  nfs4: minor callback code simplification, comment\n  NFSD: don\u0027t report compiled-out versions as present\n  nfsd4: implement reclaim_complete\n  nfsd4: nfsd4_destroy_session must set callback client under the state lock\n  nfsd4: keep a reference count on client while in use\n  nfsd4: mark_client_expired\n  nfsd4: introduce nfs4_client.cl_refcount\n  nfsd4: refactor expire_client\n  nfsd4: extend the client_lock to cover cl_lru\n  nfsd4: use list_move in move_to_confirmed\n  nfsd4: fold release_session into expire_client\n  nfsd4: rename sessionid_lock to client_lock\n  nfsd4: fix bare destroy_session null dereference\n  nfsd4: use local variable in nfs4svc_encode_compoundres\n  nfsd: further comment typos\n  sunrpc: centralise most calls to svc_xprt_received\n  nfsd4: fix unlikely race in session replay case\n  nfsd4: fix filehandle comment\n  ...\n"
    },
    {
      "commit": "d60dbb20a74c2cfa142be0a34dac3c6547ea086c",
      "tree": "7af95739f8fbbef11f490b5b58bf639dbbe8a181",
      "parents": [
        "9c7e7e23371e629dbb3b341610a418cdf1c19d91"
      ],
      "author": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Thu May 13 12:51:49 2010 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Fri May 14 15:09:36 2010 -0400"
      },
      "message": "SUNRPC: Move the task-\u003etk_bytes_sent and tk_rtt to struct rpc_rqst\n\nIt seems strange to maintain stats for bytes_sent in one structure, and\nbytes received in another. Try to assemble all the RPC request-related\nstats in struct rpc_rqst\n\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "a8ce4a8f37fef0a09a1e920c2e09f67a80426c7e",
      "tree": "cd3c11c87fa63c8bf15e74f311560a83637fc3fa",
      "parents": [
        "0b9e79431377df452348e78262dd5a3dc359eeef"
      ],
      "author": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Fri Apr 16 16:42:12 2010 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Fri May 14 15:09:30 2010 -0400"
      },
      "message": "SUNRPC: Fail over more quickly on connect errors\n\nWe should not allow soft tasks to wait for longer than the major timeout\nperiod when waiting for a reconnect to occur.\n\nRemove the field xprt-\u003econnect_timeout since it has been obsoleted by\nxprt-\u003ereestablish_timeout.\n\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "0b9e79431377df452348e78262dd5a3dc359eeef",
      "tree": "0a69324b177e2db40e88988b83e0782dd9d98990",
      "parents": [
        "19445b99b6d66af661c586c052de23110731a502"
      ],
      "author": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Fri Apr 16 16:41:57 2010 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Fri May 14 15:09:29 2010 -0400"
      },
      "message": "SUNRPC: Move the test for XPRT_CONNECTING into xprt_connect()\n\nThis fixes a bug with setting xprt-\u003estat.connect_start.\n\nReviewed-by: Chuck Lever \u003cchuck.lever@oracle.com\u003e\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "5306293c9cd2caf41849cc909281bda628bb989e",
      "tree": "3be4e8231e2772c8a43ddbef5c6a72c20b3054bb",
      "parents": [
        "dbd65a7e44fff4741a0b2c84bd6bace85d22c242",
        "66f41d4c5c8a5deed66fdcc84509376c9a0bf9d8"
      ],
      "author": {
        "name": "J. Bruce Fields",
        "email": "bfields@citi.umich.edu",
        "time": "Tue May 04 11:27:05 2010 -0400"
      },
      "committer": {
        "name": "J. Bruce Fields",
        "email": "bfields@citi.umich.edu",
        "time": "Tue May 04 11:29:05 2010 -0400"
      },
      "message": "Merge commit \u0027v2.6.34-rc6\u0027\n\nConflicts:\n\tfs/nfsd/nfs4callback.c\n"
    },
    {
      "commit": "b48fa6b99100dc7772af3cd276035fcec9719ceb",
      "tree": "415dba87c6c5de0ab85a8493f864838f4f3cc005",
      "parents": [
        "26c0c75e69265961e891ed80b38fb62a548ab371"
      ],
      "author": {
        "name": "Neil Brown",
        "email": "neilb@suse.de",
        "time": "Mon Mar 01 16:51:14 2010 +1100"
      },
      "committer": {
        "name": "J. Bruce Fields",
        "email": "bfields@citi.umich.edu",
        "time": "Mon May 03 08:33:00 2010 -0400"
      },
      "message": "sunrpc: centralise most calls to svc_xprt_received\n\nsvc_xprt_received must be called when -\u003expo_recvfrom has finished\nreceiving a message, so that the XPT_BUSY flag will be cleared and\nif necessary, requeued for further work.\n\nThis call is currently made in each -\u003expo_recvfrom function, often\nfrom multiple different points.  In each case it is the earliest point\non a particular path where it is known that the protection provided by\nXPT_BUSY is no longer needed.\n\nHowever there are (still) some error paths which do not call\nsvc_xprt_received, and requiring each -\u003expo_recvfrom to make the call\ndoes not encourage robustness.\n\nSo: move the svc_xprt_received call to be made just after the\ncall to -\u003expo_recvfrom(), and move it of the various -\u003expo_recvfrom\nmethods.\n\nThis means that it may not be called at the earliest possible instant,\nbut this is unlikely to be a measurable performance issue.\n\nNote that there are still other calls to svc_xprt_received as it is\nalso needed when an xprt is newly created.\n\nSigned-off-by: NeilBrown \u003cneilb@suse.de\u003e\nSigned-off-by: J. Bruce Fields \u003cbfields@citi.umich.edu\u003e\n"
    },
    {
      "commit": "fedfb947b2235c1085df97cf52f688b808c3a515",
      "tree": "5eb0ffcd0eace60c7e206df6f33f9841b452f2b3",
      "parents": [
        "44fa2b4bee5b07d506a7b002b4e2eb73654db7e0",
        "bade732a2848e640482c1e99629a90e085d574dd"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Apr 12 18:34:56 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Apr 12 18:34:56 2010 -0700"
      },
      "message": "Merge branch \u0027for-2.6.34\u0027 of git://linux-nfs.org/~bfields/linux\n\n* \u0027for-2.6.34\u0027 of git://linux-nfs.org/~bfields/linux:\n  svcrdma: RDMA support not yet compatible with RPC6\n"
    },
    {
      "commit": "bade732a2848e640482c1e99629a90e085d574dd",
      "tree": "721ae2ac175ccbc15af2abb4fc288f352a453c73",
      "parents": [
        "2eaa9cfdf33b8d7fb7aff27792192e0019ae8fc6"
      ],
      "author": {
        "name": "Tom Tucker",
        "email": "tom@ogc.us",
        "time": "Sat Apr 03 08:27:29 2010 -0500"
      },
      "committer": {
        "name": "J. Bruce Fields",
        "email": "bfields@citi.umich.edu",
        "time": "Mon Apr 05 12:10:22 2010 -0400"
      },
      "message": "svcrdma: RDMA support not yet compatible with RPC6\n\nRPC6 requires that it be possible to create endpoints that listen\nexclusively for IPv4 or IPv6 connection requests. This is not currently\nsupported by the RDMA API.\n\nThis fixes a server RDMA regression introduced by 37498292a \"NFSD:\nCreate PF_INET6 listener in write_ports\".\n\nSigned-off-by: Tom Tucker\u003ctom@opengridcomputing.com\u003e\nTested-by: Steve Wise \u003cswise@opengridcomputing.com\u003e\nReviewed-by: Chuck Lever \u003cchuck.lever@oracle.com\u003e\nSigned-off-by: J. Bruce Fields \u003cbfields@citi.umich.edu\u003e\n"
    },
    {
      "commit": "5a0e3ad6af8660be21ca98a971cd00f331318c05",
      "tree": "5bfb7be11a03176a87296a43ac6647975c00a1d1",
      "parents": [
        "ed391f4ebf8f701d3566423ce8f17e614cde9806"
      ],
      "author": {
        "name": "Tejun Heo",
        "email": "tj@kernel.org",
        "time": "Wed Mar 24 17:04:11 2010 +0900"
      },
      "committer": {
        "name": "Tejun Heo",
        "email": "tj@kernel.org",
        "time": "Tue Mar 30 22:02:32 2010 +0900"
      },
      "message": "include cleanup: Update gfp.h and slab.h includes to prepare for breaking implicit slab.h inclusion from percpu.h\n\npercpu.h is included by sched.h and module.h and thus ends up being\nincluded when building most .c files.  percpu.h includes slab.h which\nin turn includes gfp.h making everything defined by the two files\nuniversally available and complicating inclusion dependencies.\n\npercpu.h -\u003e slab.h dependency is about to be removed.  Prepare for\nthis change by updating users of gfp and slab facilities include those\nheaders directly instead of assuming availability.  As this conversion\nneeds to touch large number of source files, the following script is\nused as the basis of conversion.\n\n  http://userweb.kernel.org/~tj/misc/slabh-sweep.py\n\nThe script does the followings.\n\n* Scan files for gfp and slab usages and update includes such that\n  only the necessary includes are there.  ie. if only gfp is used,\n  gfp.h, if slab is used, slab.h.\n\n* When the script inserts a new include, it looks at the include\n  blocks and try to put the new include such that its order conforms\n  to its surrounding.  It\u0027s put in the include block which contains\n  core kernel includes, in the same order that the rest are ordered -\n  alphabetical, Christmas tree, rev-Xmas-tree or at the end if there\n  doesn\u0027t seem to be any matching order.\n\n* If the script can\u0027t find a place to put a new include (mostly\n  because the file doesn\u0027t have fitting include block), it prints out\n  an error message indicating which .h file needs to be added to the\n  file.\n\nThe conversion was done in the following steps.\n\n1. The initial automatic conversion of all .c files updated slightly\n   over 4000 files, deleting around 700 includes and adding ~480 gfp.h\n   and ~3000 slab.h inclusions.  The script emitted errors for ~400\n   files.\n\n2. Each error was manually checked.  Some didn\u0027t need the inclusion,\n   some needed manual addition while adding it to implementation .h or\n   embedding .c file was more appropriate for others.  This step added\n   inclusions to around 150 files.\n\n3. The script was run again and the output was compared to the edits\n   from #2 to make sure no file was left behind.\n\n4. Several build tests were done and a couple of problems were fixed.\n   e.g. lib/decompress_*.c used malloc/free() wrappers around slab\n   APIs requiring slab.h to be added manually.\n\n5. The script was run on all .h files but without automatically\n   editing them as sprinkling gfp.h and slab.h inclusions around .h\n   files could easily lead to inclusion dependency hell.  Most gfp.h\n   inclusion directives were ignored as stuff from gfp.h was usually\n   wildly available and often used in preprocessor macros.  Each\n   slab.h inclusion directive was examined and added manually as\n   necessary.\n\n6. percpu.h was updated not to include slab.h.\n\n7. Build test were done on the following configurations and failures\n   were fixed.  CONFIG_GCOV_KERNEL was turned off for all tests (as my\n   distributed build env didn\u0027t work with gcov compiles) and a few\n   more options had to be turned off depending on archs to make things\n   build (like ipr on powerpc/64 which failed due to missing writeq).\n\n   * x86 and x86_64 UP and SMP allmodconfig and a custom test config.\n   * powerpc and powerpc64 SMP allmodconfig\n   * sparc and sparc64 SMP allmodconfig\n   * ia64 SMP allmodconfig\n   * s390 SMP allmodconfig\n   * alpha SMP allmodconfig\n   * um on x86_64 SMP allmodconfig\n\n8. percpu.h modifications were reverted so that it could be applied as\n   a separate patch and serve as bisection point.\n\nGiven the fact that I had only a couple of failures from tests on step\n6, I\u0027m fairly confident about the coverage of this conversion patch.\nIf there is a breakage, it\u0027s likely to be something in one of the arch\nheaders which should be easily discoverable easily on most builds of\nthe specific arch.\n\nSigned-off-by: Tejun Heo \u003ctj@kernel.org\u003e\nGuess-its-ok-by: Christoph Lameter \u003ccl@linux-foundation.org\u003e\nCc: Ingo Molnar \u003cmingo@redhat.com\u003e\nCc: Lee Schermerhorn \u003cLee.Schermerhorn@hp.com\u003e\n"
    },
    {
      "commit": "81160e66cca3d3a16b7d88e0e2dccfc5c76f36f9",
      "tree": "4bd45b3b0870989ab742a318dd2940b94ca1f80f",
      "parents": [
        "fc0b579168cbe737c83c6b9bbfe265d3ae6baca6"
      ],
      "author": {
        "name": "Joe Perches",
        "email": "joe@perches.com",
        "time": "Mon Mar 08 12:15:59 2010 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Mar 08 12:15:59 2010 -0800"
      },
      "message": "net/sunrpc: Convert (void)snprintf to snprintf\n\n(Applies on top of \"Remove uses of NIPQUAD, use %pI4\")\n\nCasts to void of snprintf are most uncommon in kernel source.\n9 use casts, 1301 do not.\n\nRemove the remaining uses in net/sunrpc/\n\nSigned-off-by: Joe Perches \u003cjoe@perches.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "fc0b579168cbe737c83c6b9bbfe265d3ae6baca6",
      "tree": "a9818961a11c7322cb585b03859ebf497e8db62f",
      "parents": [
        "e9dcd1613f0ac0b3573b7d813a2c5672cd8302eb"
      ],
      "author": {
        "name": "Joe Perches",
        "email": "joe@perches.com",
        "time": "Mon Mar 08 12:15:28 2010 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Mar 08 12:15:28 2010 -0800"
      },
      "message": "net/sunrpc: Remove uses of NIPQUAD, use %pI4\n\nOriginally submitted Jan 1, 2010\nhttp://patchwork.kernel.org/patch/71221/\n\nConvert NIPQUAD to the %pI4 format extension where possible\nConvert %02x%02x%02x%02x/NIPQUAD to %08x/ntohl\n\nSigned-off-by: Joe Perches \u003cjoe@perches.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "4ef58d4e2ad1fa2a3e5bbf41af2284671fca8cf8",
      "tree": "856ba96302a36014736747e8464f80eeb827bbdd",
      "parents": [
        "f6c4c8195b5e7878823caa1181be404d9e86d369",
        "d014d043869cdc591f3a33243d3481fa4479c2d0"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Dec 09 19:43:33 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Dec 09 19:43:33 2009 -0800"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/jikos/trivial\n\n* \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/jikos/trivial: (42 commits)\n  tree-wide: fix misspelling of \"definition\" in comments\n  reiserfs: fix misspelling of \"journaled\"\n  doc: Fix a typo in slub.txt.\n  inotify: remove superfluous return code check\n  hdlc: spelling fix in find_pvc() comment\n  doc: fix regulator docs cut-and-pasteism\n  mtd: Fix comment in Kconfig\n  doc: Fix IRQ chip docs\n  tree-wide: fix assorted typos all over the place\n  drivers/ata/libata-sff.c: comment spelling fixes\n  fix typos/grammos in Documentation/edac.txt\n  sysctl: add missing comments\n  fs/debugfs/inode.c: fix comment typos\n  sgivwfb: Make use of ARRAY_SIZE.\n  sky2: fix sky2_link_down copy/paste comment error\n  tree-wide: fix typos \"couter\" -\u003e \"counter\"\n  tree-wide: fix typos \"offest\" -\u003e \"offset\"\n  fix kerneldoc for set_irq_msi()\n  spidev: fix double \"of of\" in comment\n  comment typo fix: sybsystem -\u003e subsystem\n  ...\n"
    },
    {
      "commit": "d7fc02c7bae7b1cf69269992cf880a43a350cdaa",
      "tree": "a43d56fa72913a1cc98a0bbebe054d08581b3a7c",
      "parents": [
        "ee1262dbc65ce0b6234a915d8432171e8d77f518",
        "28b4d5cc17c20786848cdc07b7ea237a309776bb"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Dec 08 07:55:01 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Dec 08 07:55:01 2009 -0800"
      },
      "message": "Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-next-2.6\n\n* git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-next-2.6: (1815 commits)\n  mac80211: fix reorder buffer release\n  iwmc3200wifi: Enable wimax core through module parameter\n  iwmc3200wifi: Add wifi-wimax coexistence mode as a module parameter\n  iwmc3200wifi: Coex table command does not expect a response\n  iwmc3200wifi: Update wiwi priority table\n  iwlwifi: driver version track kernel version\n  iwlwifi: indicate uCode type when fail dump error/event log\n  iwl3945: remove duplicated event logging code\n  b43: fix two warnings\n  ipw2100: fix rebooting hang with driver loaded\n  cfg80211: indent regulatory messages with spaces\n  iwmc3200wifi: fix NULL pointer dereference in pmkid update\n  mac80211: Fix TX status reporting for injected data frames\n  ath9k: enable 2GHz band only if the device supports it\n  airo: Fix integer overflow warning\n  rt2x00: Fix padding bug on L2PAD devices.\n  WE: Fix set events not propagated\n  b43legacy: avoid PPC fault during resume\n  b43: avoid PPC fault during resume\n  tcp: fix a timewait refcnt race\n  ...\n\nFix up conflicts due to sysctl cleanups (dead sysctl_check code and\nCTL_UNNUMBERED removed) in\n\tkernel/sysctl_check.c\n\tnet/ipv4/sysctl_net_ipv4.c\n\tnet/ipv6/addrconf.c\n\tnet/sctp/sysctl.c\n"
    },
    {
      "commit": "af901ca181d92aac3a7dc265144a9081a86d8f39",
      "tree": "380054af22521144fbe1364c3bcd55ad24c9bde4",
      "parents": [
        "972b94ffb90ea6d20c589d9a47215df103388ddd"
      ],
      "author": {
        "name": "André Goddard Rosa",
        "email": "andre.goddard@gmail.com",
        "time": "Sat Nov 14 13:09:05 2009 -0200"
      },
      "committer": {
        "name": "Jiri Kosina",
        "email": "jkosina@suse.cz",
        "time": "Fri Dec 04 15:39:55 2009 +0100"
      },
      "message": "tree-wide: fix assorted typos all over the place\n\nThat is \"success\", \"unknown\", \"through\", \"performance\", \"[re|un]mapping\"\n, \"access\", \"default\", \"reasonable\", \"[con]currently\", \"temperature\"\n, \"channel\", \"[un]used\", \"application\", \"example\",\"hierarchy\", \"therefore\"\n, \"[over|under]flow\", \"contiguous\", \"threshold\", \"enough\" and others.\n\nSigned-off-by: André Goddard Rosa \u003candre.goddard@gmail.com\u003e\nSigned-off-by: Jiri Kosina \u003cjkosina@suse.cz\u003e\n"
    },
    {
      "commit": "f64f9e719261a87818dd192a3a2352e5b20fbd0f",
      "tree": "b2d5cbaef3df615295f6061d8c4d6a912690556c",
      "parents": [
        "152b6a62aea2d43359dd37004e9c218bf7bdeb3b"
      ],
      "author": {
        "name": "Joe Perches",
        "email": "joe@perches.com",
        "time": "Sun Nov 29 16:55:45 2009 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun Nov 29 16:55:45 2009 -0800"
      },
      "message": "net: Move \u0026\u0026 and || to end of previous line\n\nNot including net/atm/\n\nCompiled tested x86 allyesconfig only\nAdded a \u003e 80 column line or two, which I ignored.\nExisting checkpatch plaints willfully, cheerfully ignored.\n\nSigned-off-by: Joe Perches \u003cjoe@perches.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "6d4561110a3e9fa742aeec6717248a491dfb1878",
      "tree": "689e2abf19940416ce597ba56ed31026ff59bd21",
      "parents": [
        "86926d0096279b9739ceeff40f68d3c33b9119a9"
      ],
      "author": {
        "name": "Eric W. Biederman",
        "email": "ebiederm@xmission.com",
        "time": "Mon Nov 16 03:11:48 2009 -0800"
      },
      "committer": {
        "name": "Eric W. Biederman",
        "email": "ebiederm@xmission.com",
        "time": "Wed Nov 18 08:37:40 2009 -0800"
      },
      "message": "sysctl: Drop \u0026 in front of every proc_handler.\n\nFor consistency drop \u0026 in front of every proc_handler.  Explicity\ntaking the address is unnecessary and it prevents optimizations\nlike stubbing the proc_handlers to NULL.\n\nCc: Alexey Dobriyan \u003cadobriyan@gmail.com\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: Joe Perches \u003cjoe@perches.com\u003e\nSigned-off-by: Eric W. Biederman \u003cebiederm@xmission.com\u003e\n"
    },
    {
      "commit": "f8572d8f2a2ba75408b97dc24ef47c83671795d7",
      "tree": "052506a457939fea00d138d3a982d778df34e14c",
      "parents": [
        "86b1bc68e2f4244e4ea5db5458df9d19259fbb30"
      ],
      "author": {
        "name": "Eric W. Biederman",
        "email": "ebiederm@xmission.com",
        "time": "Thu Nov 05 13:32:03 2009 -0800"
      },
      "committer": {
        "name": "Eric W. Biederman",
        "email": "ebiederm@xmission.com",
        "time": "Thu Nov 12 02:05:06 2009 -0800"
      },
      "message": "sysctl net: Remove unused binary sysctl code\n\nNow that sys_sysctl is a compatiblity wrapper around /proc/sys\nall sysctl strategy routines, and all ctl_name and strategy\nentries in the sysctl tables are unused, and can be\nrevmoed.\n\nIn addition neigh_sysctl_register has been modified to no longer\ntake a strategy argument and it\u0027s callers have been modified not\nto pass one.\n\nCc: \"David Miller\" \u003cdavem@davemloft.net\u003e\nCc: Hideaki YOSHIFUJI \u003cyoshfuji@linux-ipv6.org\u003e\nCc: netdev@vger.kernel.org\nSigned-off-by: Eric W. Biederman \u003cebiederm@xmission.com\u003e\n"
    },
    {
      "commit": "d43c36dc6b357fa1806800f18aa30123c747a6d1",
      "tree": "339ce510073ecbe9b3592008f7dece7b277035ef",
      "parents": [
        "69585dd69e663a40729492c7b52eb82477a2027a"
      ],
      "author": {
        "name": "Alexey Dobriyan",
        "email": "adobriyan@gmail.com",
        "time": "Wed Oct 07 17:09:06 2009 +0400"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun Oct 11 11:20:58 2009 -0700"
      },
      "message": "headers: remove sched.h from interrupt.h\n\nAfter m68k\u0027s task_thread_info() doesn\u0027t refer to current,\nit\u0027s possible to remove sched.h from interrupt.h and not break m68k!\nMany thanks to Heiko Carstens for allowing this.\n\nSigned-off-by: Alexey Dobriyan \u003cadobriyan@gmail.com\u003e\n"
    },
    {
      "commit": "8d65af789f3e2cf4cfbdbf71a0f7a61ebcd41d38",
      "tree": "121df3bfffc7853ac6d2c514ad514d4a748a0933",
      "parents": [
        "c0d0787b6d47d9f4d5e8bd321921104e854a9135"
      ],
      "author": {
        "name": "Alexey Dobriyan",
        "email": "adobriyan@gmail.com",
        "time": "Wed Sep 23 15:57:19 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Sep 24 07:21:04 2009 -0700"
      },
      "message": "sysctl: remove \"struct file *\" argument of -\u003eproc_handler\n\nIt\u0027s unused.\n\nIt isn\u0027t needed -- read or write flag is already passed and sysctl\nshouldn\u0027t care about the rest.\n\nIt _was_ used in two places at arch/frv for some reason.\n\nSigned-off-by: Alexey Dobriyan \u003cadobriyan@gmail.com\u003e\nCc: David Howells \u003cdhowells@redhat.com\u003e\nCc: \"Eric W. Biederman\" \u003cebiederm@xmission.com\u003e\nCc: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\nCc: Ralf Baechle \u003cralf@linux-mips.org\u003e\nCc: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: \"David S. Miller\" \u003cdavem@davemloft.net\u003e\nCc: James Morris \u003cjmorris@namei.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "e9dc122166b8d863d3057a66ada04838e5548e52",
      "tree": "749e15bf719b64bf9113db7acd8e043d9742cb26",
      "parents": [
        "560ab42ef923aaf2e4347315bdfcc74b2708972c",
        "405d8f8b1d936414da2093d4149ff790ff3f84a5"
      ],
      "author": {
        "name": "J. Bruce Fields",
        "email": "bfields@citi.umich.edu",
        "time": "Fri Aug 21 11:27:29 2009 -0400"
      },
      "committer": {
        "name": "J. Bruce Fields",
        "email": "bfields@citi.umich.edu",
        "time": "Fri Aug 21 11:27:29 2009 -0400"
      },
      "message": "Merge branch \u0027nfs-for-2.6.32\u0027 of git://git.linux-nfs.org/projects/trondmy/nfs-2.6 into for-2.6.32-incoming\n\nConflicts:\n\tnet/sunrpc/cache.c\n"
    },
    {
      "commit": "c740eff84bcfd63c0497ef880e80171931cb8222",
      "tree": "a990bca471ca6334172787a17c6b9c833e48d682",
      "parents": [
        "fbfffbd5e74c5fa8c9165e110cb5899ec21e6364"
      ],
      "author": {
        "name": "Chuck Lever",
        "email": "chuck.lever@oracle.com",
        "time": "Sun Aug 09 15:09:46 2009 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Sun Aug 09 15:09:46 2009 -0400"
      },
      "message": "SUNRPC: Kill RPC_DISPLAY_ALL\n\nAt some point, I recall that rpc_pipe_fs used RPC_DISPLAY_ALL.\nCurrently there are no uses of RPC_DISPLAY_ALL outside the transport\nmodules themselves, so we can safely get rid of it.\n\nSigned-off-by: Chuck Lever \u003cchuck.lever@oracle.com\u003e\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "c877b849d302d1275452af80b7221a2555dc02e1",
      "tree": "7baf4099cbb235e9ee4d420f61208d10ecdc8c4d",
      "parents": [
        "ba809130bc260fce04141aca01ef9e068d32af2a"
      ],
      "author": {
        "name": "Chuck Lever",
        "email": "chuck.lever@oracle.com",
        "time": "Sun Aug 09 15:09:36 2009 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Sun Aug 09 15:09:36 2009 -0400"
      },
      "message": "SUNRPC: Use rpc_ntop() for constructing transport address strings\n\nClean up:  In addition to using the new generic rpc_ntop() and\nrpc_get_port() functions, have the RPC client compute the presentation\naddress buffer sizes dynamically using kstrdup().\n\nSigned-off-by: Chuck Lever \u003cchuck.lever@oracle.com\u003e\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "ba809130bc260fce04141aca01ef9e068d32af2a",
      "tree": "8aa5fe3f46c679346120f2c28848bf4446133a4c",
      "parents": [
        "a02d692611348f11ee1bc37431a883c3ff2de23e"
      ],
      "author": {
        "name": "Chuck Lever",
        "email": "chuck.lever@oracle.com",
        "time": "Sun Aug 09 15:09:35 2009 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Sun Aug 09 15:09:35 2009 -0400"
      },
      "message": "SUNRPC: Remove duplicate universal address generation\n\nRPC universal address generation is currently done in several places:\nrpcb_clnt.c, nfs4proc.c xprtsock.c, and xprtrdma.c.  Remove the\nredundant cases that convert a socket address to a universal\naddress.  The nfs4proc.c case takes a pre-formatted presentation\naddress string, not a socket address, so we\u0027ll leave that one.\n\nBecause the new uaddr constructor uses the recently introduced\nrpc_ntop(), it now supports proper \"::\" shorthanding for IPv6\naddresses.  This allows the kernel to register properly formed\nuniversal addresses with the local rpcbind service, in _all_ cases.\n\nThe kernel can now also send properly formed universal addresses in\nRPCB_GETADDR requests, and support link-local properly when\nencoding and decoding IPv6 addresses.\n\nSigned-off-by: Chuck Lever \u003cchuck.lever@oracle.com\u003e\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "846d8e7cc82a6205d5c0a905a4940abd0f565741",
      "tree": "0d89d831c0e7a7979b404e7aaa9a0f76a2feb5d9",
      "parents": [
        "28d0325ce6e0a52f53d8af687e6427fee59004d3"
      ],
      "author": {
        "name": "Wei Yongjun",
        "email": "yjwei@cn.fujitsu.com",
        "time": "Thu Jun 25 16:35:44 2009 +0800"
      },
      "committer": {
        "name": "J. Bruce Fields",
        "email": "bfields@citi.umich.edu",
        "time": "Fri Jul 03 10:14:59 2009 -0400"
      },
      "message": "svcrdma: fix error handling of rdma_alloc_frmr()\n\nib_alloc_fast_reg_mr() and ib_alloc_fast_reg_page_list() returns\nERR_PTR() and not NULL. Compile tested only.\n\nSigned-off-by: Wei Yongjun \u003cyjwei@cn.fujitsu.com\u003e\nSigned-off-by: J. Bruce Fields \u003cbfields@citi.umich.edu\u003e\n"
    },
    {
      "commit": "59fb30660be3f3ead54b3850c401d462449caaaa",
      "tree": "d052746d89590b44b854ff2a2fc1dfa7d816040b",
      "parents": [
        "e4636d535e32768c8c500641ddb144f56e3dc5c0"
      ],
      "author": {
        "name": "Christian Engelmayer",
        "email": "christian.engelmayer@frequentis.com",
        "time": "Sun Jun 14 00:05:26 2009 +0200"
      },
      "committer": {
        "name": "J. Bruce Fields",
        "email": "bfields@citi.umich.edu",
        "time": "Mon Jun 15 19:34:32 2009 -0700"
      },
      "message": "sunrpc: potential memory leak in function rdma_read_xdr\n\nIn case the check on ch_count fails the cleanup path is skipped and the\npreviously allocated memory \u0027rpl_map\u0027, \u0027chl_map\u0027 is not freed.\n\nReported by Coverity.\n\nSigned-off-by: Christian Engelmayer \u003cchristian.engelmayer@frequentis.com\u003e\nSigned-off-by: J. Bruce Fields \u003cbfields@citi.umich.edu\u003e\n"
    },
    {
      "commit": "c8bce3d3bdedc7d187fa222a3b36d149bd940d0e",
      "tree": "47f335f6faaca36eed1dceb64dc0366ef68ec875",
      "parents": [
        "5f789cd8bae9b6315b7bf93e24ec1ac85f5a13b9",
        "98779be861a05c4cb75bed916df72ec0cba8b53d"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri May 29 08:49:09 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri May 29 08:49:09 2009 -0700"
      },
      "message": "Merge branch \u0027for-2.6.30\u0027 of git://linux-nfs.org/~bfields/linux\n\n* \u0027for-2.6.30\u0027 of git://linux-nfs.org/~bfields/linux:\n  svcrdma: dma unmap the correct length for the RPCRDMA header page.\n  nfsd: Revert \"svcrpc: take advantage of tcp autotuning\"\n  nfsd: fix hung up of nfs client while sync write data to nfs server\n"
    },
    {
      "commit": "98779be861a05c4cb75bed916df72ec0cba8b53d",
      "tree": "6c7f51832c835cc3e98796fff83abc440edb3255",
      "parents": [
        "7f4218354fe312b327af06c3d8c95ed5f214c8ca"
      ],
      "author": {
        "name": "Steve Wise",
        "email": "swise@opengridcomputing.com",
        "time": "Thu May 14 16:34:28 2009 -0500"
      },
      "committer": {
        "name": "J. Bruce Fields",
        "email": "bfields@citi.umich.edu",
        "time": "Wed May 27 18:57:24 2009 -0400"
      },
      "message": "svcrdma: dma unmap the correct length for the RPCRDMA header page.\n\nThe svcrdma module was incorrectly unmapping the RPCRDMA header page.\nOn IBM pserver systems this causes a resource leak that results in\nrunning out of bus address space (10 cthon iterations will reproduce it).\nThe code was mapping the full page but only unmapping the actual header\nlength.  The fix is to only map the header length.\n\nI also cleaned up the use of ib_dma_map_page() calls since the unmap\nlogic always uses ib_dma_unmap_single().  I made these symmetrical.\n\nSigned-off-by: Steve Wise \u003cswise@opengridcomputing.com\u003e\nSigned-off-by: Tom Tucker \u003ctom@opengridcomputing.com\u003e\nSigned-off-by: J. Bruce Fields \u003cbfields@citi.umich.edu\u003e\n"
    },
    {
      "commit": "68743082b560067e3e93eab8b2568f238e486865",
      "tree": "b907dd1a170e6be38e4ab5fb61733f642532bf9c",
      "parents": [
        "b18f1e21993f73f072b1e0859f942fb11afddcb1"
      ],
      "author": {
        "name": "Vu Pham",
        "email": "vu@mellanox.com",
        "time": "Tue May 26 14:51:00 2009 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Tue May 26 14:51:00 2009 -0400"
      },
      "message": "XPRTRDMA: fix client rpcrdma FRMR registration on mlx4 devices\n\nmlx4/connectX FRMR requires local write enable together with remote\nrdma write enable. This fixes NFS/RDMA operation over the ConnectX\nInfiniband HCA in the default memreg mode.\n\nSigned-off-by: Vu Pham \u003cvu@mellanox.com\u003e\nSigned-off-by: Tom Talpey \u003ctmtalpey@gmail.com\u003e\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "21515e46bc6a6279dd13f6c01898ada9720100a3",
      "tree": "12acd677f3d1b7e615d3887a20f46bceb02438f9",
      "parents": [
        "d0687be7c7ae21461da4438d5fd059b48487bfe1"
      ],
      "author": {
        "name": "Steve Wise",
        "email": "swise@opengridcomputing.com",
        "time": "Wed Apr 29 14:14:00 2009 -0500"
      },
      "committer": {
        "name": "J. Bruce Fields",
        "email": "bfields@citi.umich.edu",
        "time": "Sun May 03 14:19:10 2009 -0400"
      },
      "message": "svcrdma: clean up error paths.\n\nThese fixes resolved crashes due to resource leak BUG_ON checks. The\nresource leaks were detected by introducing asynchronous transport errors.\n\nSigned-off-by: Steve Wise \u003cswise@opengridcomputing.com\u003e\nSigned-off-by: Tom Tucker \u003ctom@opengridcomputing.com\u003e\nSigned-off-by: J. Bruce Fields \u003cbfields@citi.umich.edu\u003e\n"
    },
    {
      "commit": "d0687be7c7ae21461da4438d5fd059b48487bfe1",
      "tree": "06036d8b604f6470a52a121aecd41f6e4a4cec23",
      "parents": [
        "091069740304c979f957ceacec39c461d0192158"
      ],
      "author": {
        "name": "Steve Wise",
        "email": "swise@opengridcomputing.com",
        "time": "Fri Apr 03 15:18:24 2009 -0500"
      },
      "committer": {
        "name": "J. Bruce Fields",
        "email": "bfields@citi.umich.edu",
        "time": "Sat Apr 25 18:11:14 2009 -0400"
      },
      "message": "svcrdma: Fix dma map direction for rdma read targets\n\nThe nfs server rdma transport was mapping rdma read target pages for\nTO_DEVICE instead of FROM_DEVICE.  This causes data corruption on non\ncache-coherent systems if frmrs are used.\n\nSigned-off-by: Steve Wise \u003cswise@opengridcomputing.com\u003e\nSigned-off-by: J. Bruce Fields \u003cbfields@citi.umich.edu\u003e\n"
    },
    {
      "commit": "2e3c230bc7149a6af65d26a0c312e230e0c33cc3",
      "tree": "11375e4bcc5ce17265ef41d210d21a3ac8860a2e",
      "parents": [
        "55420c24a0d4d1fce70ca713f84aa00b6b74a70e"
      ],
      "author": {
        "name": "Tom Talpey",
        "email": "tmtalpey@gmail.com",
        "time": "Thu Mar 12 22:21:21 2009 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Thu Mar 19 15:17:37 2009 -0400"
      },
      "message": "SVCRDMA: fix recent printk format warnings.\n\nprintk formats in prior commit were reversed/incorrect.\nCompiled without warning on x86 and x86_64, but detected on ppc.\n\nSigned-off-by: Tom Talpey \u003ctmtalpey@gmail.com\u003e\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "b38ab40ad58c1fc43ea590d6342f6a6763ac8fb6",
      "tree": "f2e701eff6bed88f1085a95a9a240db105776831",
      "parents": [
        "b1e1e158779f1d99c2cc18e466f6bf9099fc0853"
      ],
      "author": {
        "name": "Tom Talpey",
        "email": "tmtalpey@gmail.com",
        "time": "Wed Mar 11 14:37:55 2009 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Wed Mar 11 14:37:55 2009 -0400"
      },
      "message": "XPRTRDMA: correct an rpc/rdma inline send marshaling error\n\nCertain client rpc\u0027s which contain both lengthy page-contained\nmetadata and a non-empty xdr_tail buffer require careful handling\nto avoid overlapped memory copying. Rearranging of existing rpcrdma\nmarshaling code avoids it; this fixes an NFSv4 symlink creation error\ndetected with connectathon basic/test8 to multiple servers.\n\nSigned-off-by: Tom Talpey \u003ctmtalpey@gmail.com\u003e\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "b1e1e158779f1d99c2cc18e466f6bf9099fc0853",
      "tree": "6f73394f824f6234e8da245f4633ed8323293919",
      "parents": [
        "e1ebfd33be068ec933f8954060a499bd22ad6f69"
      ],
      "author": {
        "name": "Tom Talpey",
        "email": "tmtalpey@gmail.com",
        "time": "Wed Mar 11 14:37:55 2009 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Wed Mar 11 14:37:55 2009 -0400"
      },
      "message": "SVCRDMA: remove faulty assertions in rpc/rdma chunk validation.\n\nCertain client-provided RPCRDMA chunk alignments result in an\nadditional scatter/gather entry, which triggered nfs/rdma server\nassertions incorrectly. OpenSolaris nfs/rdma client connectathon\ntesting was blocked by these in the special/locking section.\n\nSigned-off-by: Tom Talpey \u003ctmtalpey@gmail.com\u003e\nCc: Tom Tucker \u003ctom@opengridcomputing.com\u003e\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "b1721d2bb9d015d7e49079414671569a2fc0ac9b",
      "tree": "f8c1cc3d7d3072c5f1d1cf78e430dddca18f1450",
      "parents": [
        "79f55f11a090d9f369448dcb58242c7924873920"
      ],
      "author": {
        "name": "Ilpo Järvinen",
        "email": "ilpo.jarvinen@helsinki.fi",
        "time": "Sun Dec 14 23:19:48 2008 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun Dec 14 23:19:48 2008 -0800"
      },
      "message": "rpc/rdma: goto instead of copypaste\n\nSigned-off-by: Ilpo Järvinen \u003cilpo.jarvinen@helsinki.fi\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "5eaa65b240c5eb7bf2235eb9dd177c83e6e3832c",
      "tree": "1a6b217cfc5b241b298a8765f68fcb5f711f9bc3",
      "parents": [
        "2107fb8b5bf018be691afdd4c6ffaecf0c3307be"
      ],
      "author": {
        "name": "Roel Kluin",
        "email": "roel.kluin@gmail.com",
        "time": "Wed Dec 10 15:18:31 2008 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Dec 10 15:18:31 2008 -0800"
      },
      "message": "net: Make static\n\nSparse asked whether these could be static.\n\nSigned-off-by: Roel Kluin \u003croel.kluin@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "ff0db0490a2eb6db4f03870987c5c8e3dd81e747",
      "tree": "8ca1dbcb1ed367d3c6ee482a1dfa049ca351e94e",
      "parents": [
        "e14bec2e2b59a6180f04544a867b7e52cd414455"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Nov 25 16:58:42 2008 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Nov 25 16:58:42 2008 -0800"
      },
      "message": "sunrpc: fix warning in net/sunrpc/xprtrdma/verbs.c\n\nfix this warning:\n\n  net/sunrpc/xprtrdma/verbs.c: In function ‘rpcrdma_conn_upcall’:\n  net/sunrpc/xprtrdma/verbs.c:279: warning: unused variable ‘addr’\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "ed72b9c6e0ec4e66dd16b7ca212845e1eb985d65",
      "tree": "731d4865ab1b2c3acbc8077b6a03f33b87017a53",
      "parents": [
        "be5a3c62c805878d67036b4683f09118cab4c9fd"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Nov 25 16:49:37 2008 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Nov 25 16:49:37 2008 -0800"
      },
      "message": "sunrpc: fix warning in net/sunrpc/xprtrdma/svc_rdma_transport.c\n\nthis warning:\n\n  net/sunrpc/xprtrdma/svc_rdma_transport.c: In function ‘svc_rdma_accept’:\n  net/sunrpc/xprtrdma/svc_rdma_transport.c:830: warning: ‘dma_mr_acc’ may be used uninitialized in this function\n\ntriggers because GCC does not recognize the (correct) flow connection\nbetween need_dma_mr and dma_mr_acc.\n\nAnnotate it.\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "21454aaad30651ba0dcc16fe5271bc12ee21f132",
      "tree": "eb525494d6f80a0e855840bc588ae1f422348b04",
      "parents": [
        "14d5e834f6b36667c7da56374645f99b6cf30814"
      ],
      "author": {
        "name": "Harvey Harrison",
        "email": "harvey.harrison@gmail.com",
        "time": "Fri Oct 31 00:54:56 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Oct 31 00:54:56 2008 -0700"
      },
      "message": "net: replace NIPQUAD() in net/*/\n\nUsing NIPQUAD() with NIPQUAD_FMT, %d.%d.%d.%d or %u.%u.%u.%u\ncan be replaced with %pI4\n\nSigned-off-by: Harvey Harrison \u003charvey.harrison@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "6925bac120097b823fc990c143b9789c21cc60b5",
      "tree": "0f92e1b22122fba623aeff4c271c16df673244eb",
      "parents": [
        "04ab591808565f968d4406f6435090ad671ebdab",
        "011935a0a710c20bb7ae63523b78856848db1926"
      ],
      "author": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Wed Oct 15 15:54:56 2008 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Wed Oct 15 15:54:56 2008 -0400"
      },
      "message": "Merge branch \u0027next\u0027\n"
    },
    {
      "commit": "8acd3a60bcca17c6d89c73cee3ad6057eb83ba1e",
      "tree": "d610c8d39246c33c499ee9d92d302d3ca9e89ae3",
      "parents": [
        "c269bc00fcb876ae3b85f178f1e34601185c8ccc",
        "107e0008dfb8bd6366bc8827f5bbbc0c1f795d2d"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Oct 14 12:31:14 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Oct 14 12:31:14 2008 -0700"
      },
      "message": "Merge branch \u0027for-2.6.28\u0027 of git://linux-nfs.org/~bfields/linux\n\n* \u0027for-2.6.28\u0027 of git://linux-nfs.org/~bfields/linux: (59 commits)\n  svcrdma: Fix IRD/ORD polarity\n  svcrdma: Update svc_rdma_send_error to use DMA LKEY\n  svcrdma: Modify the RPC reply path to use FRMR when available\n  svcrdma: Modify the RPC recv path to use FRMR when available\n  svcrdma: Add support to svc_rdma_send to handle chained WR\n  svcrdma: Modify post recv path to use local dma key\n  svcrdma: Add a service to register a Fast Reg MR with the device\n  svcrdma: Query device for Fast Reg support during connection setup\n  svcrdma: Add FRMR get/put services\n  NLM: Remove unused argument from svc_addsock() function\n  NLM: Remove \"proto\" argument from lockd_up()\n  NLM: Always start both UDP and TCP listeners\n  lockd: Remove unused fields in the nlm_reboot structure\n  lockd: Add helper to sanity check incoming NOTIFY requests\n  lockd: change nlmclnt_grant() to take a \"struct sockaddr *\"\n  lockd: Adjust nlmsvc_lookup_host() to accomodate AF_INET6 addresses\n  lockd: Adjust nlmclnt_lookup_host() signature to accomodate non-AF_INET\n  lockd: Support non-AF_INET addresses in nlm_lookup_host()\n  NLM: Convert nlm_lookup_host() to use a single argument\n  svcrdma: Add Fast Reg MR Data Types\n  ...\n"
    },
    {
      "commit": "c055551e97e1ca00781bc41523f829e05a8afed7",
      "tree": "6e4743b84b176788174b66c756b98562ce956a1b",
      "parents": [
        "08ca0dce1eafa419059ac4cad9ed522af7052526"
      ],
      "author": {
        "name": "Tom Talpey",
        "email": "talpey@netapp.com",
        "time": "Fri Oct 10 11:32:45 2008 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Fri Oct 10 15:15:06 2008 -0400"
      },
      "message": "RPC/RDMA: ensure connection attempt is complete before signalling.\n\nThe RPC/RDMA connection logic could return early from reconnection\nattempts, leading to additional spurious retries.\n\nSigned-off-by: Tom Talpey \u003ctalpey@netapp.com\u003e\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "08ca0dce1eafa419059ac4cad9ed522af7052526",
      "tree": "76724d885bcfc89db261f119a6f38a8cbb1a6240",
      "parents": [
        "b3cd8d45a764e6edb06e7bd386faf99a879569b8"
      ],
      "author": {
        "name": "Tom Talpey",
        "email": "talpey@netapp.com",
        "time": "Fri Oct 10 11:32:34 2008 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Fri Oct 10 15:15:02 2008 -0400"
      },
      "message": "RPC/RDMA: correct the reconnect timer backoff\n\nThe RPC/RDMA code had a constant 5-second reconnect backoff, and\nalways performed it, even when re-establishing a connection to a\nserver after the RPC layer closed it due to being idle. Make it\nan geometric backoff (up to 30 seconds), and don\u0027t delay idle\nreconnect.\n\nSigned-off-by: Tom Talpey \u003ctalpey@netapp.com\u003e\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "b3cd8d45a764e6edb06e7bd386faf99a879569b8",
      "tree": "e77218bd80d3b9c6ba64b2ff304375458486e514",
      "parents": [
        "5f37d561e0f0cd98017c389cbc22080290f11c3c"
      ],
      "author": {
        "name": "Tom Talpey",
        "email": "talpey@netapp.com",
        "time": "Thu Oct 09 15:02:02 2008 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Fri Oct 10 15:13:59 2008 -0400"
      },
      "message": "RPC/RDMA: optionally emit useful transport info upon connect/disconnect.\n\nSigned-off-by: Tom Talpey \u003ctalpey@netapp.com\u003e\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "5f37d561e0f0cd98017c389cbc22080290f11c3c",
      "tree": "747b34df0fa4d36c7597571a9120513dd8aa8609",
      "parents": [
        "5675add36e76b9487e7f9e689f854cb8d6afd9b4"
      ],
      "author": {
        "name": "Tom Talpey",
        "email": "talpey@netapp.com",
        "time": "Thu Oct 09 15:01:52 2008 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Fri Oct 10 15:13:42 2008 -0400"
      },
      "message": "RPC/RDMA: reformat a debug printk to keep lines together.\n\nThe send marshaling code split a particular dprintk across two\nlines, which makes it hard to extract from logfiles.\n\nSigned-off-by: Tom Talpey \u003ctalpey@netapp.com\u003e\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "5675add36e76b9487e7f9e689f854cb8d6afd9b4",
      "tree": "414b5e26b099c6aa42ee989925c0dfb8b717366e",
      "parents": [
        "1a954051b0cf79bd67e5f9db40333e3a9b1d05d2"
      ],
      "author": {
        "name": "Tom Talpey",
        "email": "talpey@netapp.com",
        "time": "Thu Oct 09 15:01:41 2008 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Fri Oct 10 15:13:31 2008 -0400"
      },
      "message": "RPC/RDMA: harden connection logic against missing/late rdma_cm upcalls.\n\nAdd defensive timeouts to wait_for_completion() calls in RDMA\naddress resolution, and make them interruptible. Fix the timeout\nunits to milliseconds (formerly jiffies) and move to private header.\n\nSigned-off-by: Tom Talpey \u003ctalpey@netapp.com\u003e\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "1a954051b0cf79bd67e5f9db40333e3a9b1d05d2",
      "tree": "48a0e5f876776865552cfce522ebee604da30fbb",
      "parents": [
        "926449ba66ce2a45c619bbe755b00d6bdbf0d83e"
      ],
      "author": {
        "name": "Tom Talpey",
        "email": "talpey@netapp.com",
        "time": "Thu Oct 09 15:01:31 2008 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Fri Oct 10 15:13:02 2008 -0400"
      },
      "message": "RPC/RDMA: fix connect/reconnect resource leak.\n\nThe RPC/RDMA code can leak RDMA connection manager endpoints in\ncertain error cases on connect. Don\u0027t signal unwanted events,\nand be certain to destroy any allocated qp.\n\nSigned-off-by: Tom Talpey \u003ctalpey@netapp.com\u003e\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "926449ba66ce2a45c619bbe755b00d6bdbf0d83e",
      "tree": "94bebe684f2d9c1e2954843e571cb2657e75ac05",
      "parents": [
        "9191ca3b381b15b9a88785a8ae2fa4db8e553b0c"
      ],
      "author": {
        "name": "Tom Talpey",
        "email": "talpey@netapp.com",
        "time": "Thu Oct 09 15:01:21 2008 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Fri Oct 10 15:12:44 2008 -0400"
      },
      "message": "RPC/RDMA: return a consistent error, when connect fails.\n\nThe xprt_connect call path does not expect such errors as ECONNREFUSED\nto be returned from failed transport connection attempts, otherwise it\ntranslates them to EIO and signals fatal errors. For example, mount.nfs\nprints simply \"internal error\". Translate all such errors to ENOTCONN\nfrom RPC/RDMA to match sockets behavior.\n\nSigned-off-by: Tom Talpey \u003ctalpey@netapp.com\u003e\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "9191ca3b381b15b9a88785a8ae2fa4db8e553b0c",
      "tree": "7357b4009fefff106adab972f0572b3d4e105fa0",
      "parents": [
        "fee08caf943e8ed3446ce42fa085b5e7e5f08d92"
      ],
      "author": {
        "name": "Tom Talpey",
        "email": "talpey@netapp.com",
        "time": "Thu Oct 09 15:01:11 2008 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Fri Oct 10 15:12:33 2008 -0400"
      },
      "message": "RPC/RDMA: adhere to protocol for unpadded client trailing write chunks.\n\nThe RPC/RDMA protocol allows clients and servers to avoid RDMA\noperations for data which is purely the result of XDR padding.\nOn the client, automatically insert the necessary padding for\nsuch server replies, and optionally don\u0027t marshal such chunks.\n\nSigned-off-by: Tom Talpey \u003ctalpey@netapp.com\u003e\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "fee08caf943e8ed3446ce42fa085b5e7e5f08d92",
      "tree": "21419677bd5210c7a9068b698c23e52cd385f530",
      "parents": [
        "ad0e9e01da4ece70ff524b49c77c5e850d5dd53e"
      ],
      "author": {
        "name": "Tom Talpey",
        "email": "talpey@netapp.com",
        "time": "Thu Oct 09 15:01:00 2008 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Fri Oct 10 15:11:40 2008 -0400"
      },
      "message": "RPC/RDMA: avoid an oops due to disconnect racing with async upcalls.\n\nRDMA disconnects yield an upcall from the RDMA connection manager,\nwhich can race with rpc transport close, e.g. on ^C of a mount.\nEnsure any rdma cm_id and qp are fully destroyed before continuing.\n\nSigned-off-by: Tom Talpey \u003ctalpey@netapp.com\u003e\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "ad0e9e01da4ece70ff524b49c77c5e850d5dd53e",
      "tree": "bf8f2ee9e7c900b495bc7fd589045c3b407bc791",
      "parents": [
        "575448bd36208f99fe0dd554a43518d798966740"
      ],
      "author": {
        "name": "Tom Talpey",
        "email": "talpey@netapp.com",
        "time": "Thu Oct 09 15:00:50 2008 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Fri Oct 10 15:10:40 2008 -0400"
      },
      "message": "RPC/RDMA: maintain the RPC task bytes-sent statistic.\n\nSigned-off-by: Tom Talpey \u003ctalpey@netapp.com\u003e\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "575448bd36208f99fe0dd554a43518d798966740",
      "tree": "191d98d11586952ec961c56b58335cc76346b4b6",
      "parents": [
        "b334eaabf4f92226d2df13c613888a507f03da99"
      ],
      "author": {
        "name": "Tom Talpey",
        "email": "talpey@netapp.com",
        "time": "Thu Oct 09 15:00:40 2008 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Fri Oct 10 15:10:36 2008 -0400"
      },
      "message": "RPC/RDMA: suppress retransmit on RPC/RDMA clients.\n\nAn RPC/RDMA client cannot retransmit on an unbroken connection,\ndoing so violates its flow control with the server.\n\nSigned-off-by: Tom Talpey \u003ctalpey@netapp.com\u003e\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "b334eaabf4f92226d2df13c613888a507f03da99",
      "tree": "da3ce699ec10898dd41483e52c6e99805be6f363",
      "parents": [
        "3197d309f5fb042499b2c4c8f2fcb67372df5201"
      ],
      "author": {
        "name": "Tom Tucker",
        "email": "tom@opengridcomputing.com",
        "time": "Thu Oct 09 15:00:30 2008 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Fri Oct 10 15:09:56 2008 -0400"
      },
      "message": "RPC/RDMA: fix connection IRD/ORD setting\n\nThis logic sets the connection parameter that configures the local device\nand informs the remote peer how many concurrent incoming RDMA_READ\nrequests are supported. The original logic didn\u0027t really do what was\nintended for two reasons:\n\n- The max number supported by the device is typically smaller than\nany one factor in the calculation used, and\n\n- The field in the connection parameter structure where the value is\nstored is a u8 and always overflows for the default settings.\n\nSo what really happens is the value requested for responder resources\nis the left over 8 bits from the \"desired value\". If the desired value\nhappened to be a multiple of 256, the result was zero and it wouldn\u0027t\nconnect at all.\n\nGiven the above and the fact that max_requests is almost always larger\nthan the max responder resources supported by the adapter, this patch\nsimplifies this logic and simply requests the max supported by the device,\nsubject to a reasonable limit.\n\nThis bug was found by Jim Schutt at Sandia.\n\nSigned-off-by: Tom Tucker \u003ctom@opengridcomputing.com\u003e\nAcked-by: Tom Talpey \u003ctalpey@netapp.com\u003e\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "3197d309f5fb042499b2c4c8f2fcb67372df5201",
      "tree": "a4cca3420bc99e44af00806abe4a265d539d9c24",
      "parents": [
        "bd7ed1d13304d914648dacec4dbb9145aaae614e"
      ],
      "author": {
        "name": "Tom Talpey",
        "email": "talpey@netapp.com",
        "time": "Thu Oct 09 15:00:20 2008 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Fri Oct 10 15:09:34 2008 -0400"
      },
      "message": "RPC/RDMA: support FRMR client memory registration.\n\nConfigure, detect and use \"fastreg\" support from IB/iWARP verbs\nlayer to perform RPC/RDMA memory registration.\n\nMake FRMR the default memreg mode (will fall back if not supported\nby the selected RDMA adapter).\n\nThis allows full and optimal operation over the cxgb3 adapter, and others.\n\nSigned-off-by: Tom Talpey \u003ctalpey@netapp.com\u003e\nAcked-by: Tom Tucker \u003ctom@opengridcomputing.com\u003e\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "bd7ed1d13304d914648dacec4dbb9145aaae614e",
      "tree": "a0eee0c8304ab4bab7baca4675ebf8fffef1e288",
      "parents": [
        "fe9053b30bb48b99f7b45541249f5cfe96bdf7f7"
      ],
      "author": {
        "name": "Tom Talpey",
        "email": "talpey@netapp.com",
        "time": "Thu Oct 09 15:00:09 2008 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Fri Oct 10 15:09:26 2008 -0400"
      },
      "message": "RPC/RDMA: check selected memory registration mode at runtime.\n\nAt transport creation, check for, and use, any local dma lkey.\nThen, check that the selected memory registration mode is in fact\nsupported by the RDMA adapter selected for the mount. Fall back\nto best alternative if not.\n\nSigned-off-by: Tom Talpey \u003ctalpey@netapp.com\u003e\nAcked-by: Tom Tucker \u003ctom@opengridcomputing.com\u003e\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "fe9053b30bb48b99f7b45541249f5cfe96bdf7f7",
      "tree": "41904e855b60678ae8788e68e8a5944d686b31e3",
      "parents": [
        "8d4ba0347ccfea4f12e56e2484954b891411b74d"
      ],
      "author": {
        "name": "Tom Talpey",
        "email": "talpey@netapp.com",
        "time": "Thu Oct 09 14:59:59 2008 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Fri Oct 10 15:09:24 2008 -0400"
      },
      "message": "RPC/RDMA: add data types and new FRMR memory registration enum.\n\nInternal RPC/RDMA structure updates in preparation for FRMR support.\n\nSigned-off-by: Tom Talpey \u003ctalpey@netapp.com\u003e\nAcked-by: Tom Tucker \u003ctom@opengridcomputing.com\u003e\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "8d4ba0347ccfea4f12e56e2484954b891411b74d",
      "tree": "839874b3462d28a2876abf0868aa9a6d2c4780b2",
      "parents": [
        "5e2e7721f04c11e6dc4a74b33f05a0e1c0381e2e"
      ],
      "author": {
        "name": "Tom Talpey",
        "email": "talpey@netapp.com",
        "time": "Thu Oct 09 14:59:49 2008 -0400"
      },
      "committer": {
        "name": "Trond Myklebust",
        "email": "Trond.Myklebust@netapp.com",
        "time": "Fri Oct 10 15:09:16 2008 -0400"
      },
      "message": "RPC/RDMA: refactor the inline memory registration code.\n\nRefactor the memory registration and deregistration routines.\nThis saves stack space, makes the code more readable and prepares\nto add the new FRMR registration methods.\n\nSigned-off-by: Tom Talpey \u003ctalpey@netapp.com\u003e\nSigned-off-by: Trond Myklebust \u003cTrond.Myklebust@netapp.com\u003e\n"
    },
    {
      "commit": "67080c82361b7510b602c87b83399421aa2d2895",
      "tree": "4003f47552ac28b54a75826e7230c711e7b64f45",
      "parents": [
        "04911b539c9817aa88a6da8f563e65e3e0bc974b"
      ],
      "author": {
        "name": "Tom Tucker",
        "email": "tom@opengridcomputing.com",
        "time": "Fri Oct 03 12:41:14 2008 -0500"
      },
      "committer": {
        "name": "Tom Tucker",
        "email": "tom@opengridcomputing.com",
        "time": "Mon Oct 06 14:46:13 2008 -0500"
      },
      "message": "svcrdma: Fix IRD/ORD polarity\n\nThe inititator/responder resources in the event have been swapped. They\nno represent what the local peer would set their values to in order to\nmatch the peer. Note that iWARP does not exchange these on the wire and\nthe provider is simply putting in the local device max.\n\nSigned-off-by: Tom Tucker \u003ctom@opengridcomputing.com\u003e\n"
    },
    {
      "commit": "04911b539c9817aa88a6da8f563e65e3e0bc974b",
      "tree": "9379440a4ca2a972d02d35feb3ac6ab0419e96c4",
      "parents": [
        "afd566ea080572499cc01d42d2f578bf4b54f20f"
      ],
      "author": {
        "name": "Tom Tucker",
        "email": "tom@opengridcomputing.com",
        "time": "Mon Aug 11 15:14:53 2008 -0500"
      },
      "committer": {
        "name": "Tom Tucker",
        "email": "tom@opengridcomputing.com",
        "time": "Mon Oct 06 14:46:08 2008 -0500"
      },
      "message": "svcrdma: Update svc_rdma_send_error to use DMA LKEY\n\nUpdate the svc_rdma_send_error code to use the DMA LKEY which is valid\nregardless of the memory registration strategy in use.\n\nSigned-off-by: Tom Tucker \u003ctom@opengridcomputing.com\u003e\n"
    },
    {
      "commit": "afd566ea080572499cc01d42d2f578bf4b54f20f",
      "tree": "cbd0c55f27cfd0a432bf669d6db4cbe0e595a2bf",
      "parents": [
        "146b6df6a537939570c5772ebd7db826fdbd5d82"
      ],
      "author": {
        "name": "Tom Tucker",
        "email": "tom@opengridcomputing.com",
        "time": "Fri Oct 03 15:45:03 2008 -0500"
      },
      "committer": {
        "name": "Tom Tucker",
        "email": "tom@opengridcomputing.com",
        "time": "Mon Oct 06 14:46:05 2008 -0500"
      },
      "message": "svcrdma: Modify the RPC reply path to use FRMR when available\n\nUse FRMR to map local RPC reply data. This allows RDMA_WRITE to send reply\ndata using a single WR. The FRMR is invalidated by linking the LOCAL_INV WR\nto the RDMA_SEND message used to complete the reply.\n\nSigned-off-by: Tom Tucker \u003ctom@opengridcomputing.com\u003e\n"
    },
    {
      "commit": "146b6df6a537939570c5772ebd7db826fdbd5d82",
      "tree": "1acf55f3244719e543fb5f6eed6de11c5dd3110e",
      "parents": [
        "5b180a9a64ca2217a658bd515ef910eafefc5e5a"
      ],
      "author": {
        "name": "Tom Tucker",
        "email": "tom@opengridcomputing.com",
        "time": "Tue Aug 12 15:12:10 2008 -0500"
      },
      "committer": {
        "name": "Tom Tucker",
        "email": "tom@opengridcomputing.com",
        "time": "Mon Oct 06 14:46:01 2008 -0500"
      },
      "message": "svcrdma: Modify the RPC recv path to use FRMR when available\n\nRPCRDMA requests that specify a read-list are fetched with RDMA_READ. Using\nan FRMR to map the data sink improves NFSRDMA security on transports that\nplace the RDMA_READ data sink LKEY on the wire because the valid lifetime\nof the MR is only the duration of the RDMA_READ. The LKEY is invalidated\nwhen the last RDMA_READ WR completes.\n\nMapping the data sink also allows for very large amounts to data to be\nfetched with a single WR, so if the client is also using FRMR, the entire\nRPC read-list can be fetched with a single WR.\n\nSigned-off-by: Tom Tucker \u003ctom@opengridcomputing.com\u003e\n"
    },
    {
      "commit": "5b180a9a64ca2217a658bd515ef910eafefc5e5a",
      "tree": "61fe08b958b3707be0a516677f72216c06217edd",
      "parents": [
        "a5abf4e81545d9c7280c49cae853cc45fd769ddf"
      ],
      "author": {
        "name": "Tom Tucker",
        "email": "tom@opengridcomputing.com",
        "time": "Mon Aug 11 14:10:19 2008 -0500"
      },
      "committer": {
        "name": "Tom Tucker",
        "email": "tom@opengridcomputing.com",
        "time": "Mon Oct 06 14:45:56 2008 -0500"
      },
      "message": "svcrdma: Add support to svc_rdma_send to handle chained WR\n\nWR can be submitted as linked lists of WR. Update the svc_rdma_send\nroutine to handle WR chains. This will be used to submit a WR that\nuses an FRMR with another WR that invalidates the FRMR.\n\nSigned-off-by: Tom Tucker \u003ctom@opengridcomputing.com\u003e\n"
    },
    {
      "commit": "a5abf4e81545d9c7280c49cae853cc45fd769ddf",
      "tree": "fef48a88715bac9bfdca3e00aa1ed6afb1177004",
      "parents": [
        "e1183210625cc8e02ce13eec78fb7a246567fc59"
      ],
      "author": {
        "name": "Tom Tucker",
        "email": "tom@opengridcomputing.com",
        "time": "Tue Sep 30 14:05:41 2008 -0500"
      },
      "committer": {
        "name": "Tom Tucker",
        "email": "tom@opengridcomputing.com",
        "time": "Mon Oct 06 14:45:52 2008 -0500"
      },
      "message": "svcrdma: Modify post recv path to use local dma key\n\nUpdate the svc_rdma_post_recv routine to use the adapter\u0027s global LKEY\ninstead of sc_phys_mr which is only valid when using a DMA MR.\n\nSigned-off-by: Tom Tucker \u003ctom@opengridcomputing.com\u003e\n"
    },
    {
      "commit": "e1183210625cc8e02ce13eec78fb7a246567fc59",
      "tree": "c01cb7326fb64b899cc375bbadcea0e4579c6043",
      "parents": [
        "3a5c63803d0552a3ad93b85c262f12cd86471443"
      ],
      "author": {
        "name": "Tom Tucker",
        "email": "tom@opengridcomputing.com",
        "time": "Fri Oct 03 15:22:18 2008 -0500"
      },
      "committer": {
        "name": "Tom Tucker",
        "email": "tom@opengridcomputing.com",
        "time": "Mon Oct 06 14:45:49 2008 -0500"
      },
      "message": "svcrdma: Add a service to register a Fast Reg MR with the device\n\nFast Reg MR introduces a new WR type. Add a service to register the\nregion with the adapter and update the completion handling to support\ncompletions with a NULL WR context.\n\nSigned-off-by: Tom Tucker \u003ctom@opengridcomputing.com\u003e\n"
    },
    {
      "commit": "3a5c63803d0552a3ad93b85c262f12cd86471443",
      "tree": "aec8f9e66b2ac4258a7e379be5ce9abd5670da49",
      "parents": [
        "64be8608c163bd480cf5ec4b34366f11e0f3c87f"
      ],
      "author": {
        "name": "Tom Tucker",
        "email": "tom@opengridcomputing.com",
        "time": "Tue Sep 30 13:46:13 2008 -0500"
      },
      "committer": {
        "name": "Tom Tucker",
        "email": "tom@opengridcomputing.com",
        "time": "Mon Oct 06 14:45:45 2008 -0500"
      },
      "message": "svcrdma: Query device for Fast Reg support during connection setup\n\nQuery the device capabilities in the svc_rdma_accept function to determine\nwhat advanced memory management capabilities are supported by the device.\nBased on the query, select the most secure model available given the\nrequirements of the transport and capabilities of the adapter.\n\nSigned-off-by: Tom Tucker \u003ctom@opengridcomputing.com\u003e\n"
    },
    {
      "commit": "64be8608c163bd480cf5ec4b34366f11e0f3c87f",
      "tree": "e0a2499259c799d1ac97935107a25c4cefd7cb0c",
      "parents": [
        "0d3ebb9ae9f9c887518fd4c81a68084111d154d7"
      ],
      "author": {
        "name": "Tom Tucker",
        "email": "tom@opengridcomputing.com",
        "time": "Mon Oct 06 14:45:18 2008 -0500"
      },
      "committer": {
        "name": "Tom Tucker",
        "email": "tom@opengridcomputing.com",
        "time": "Mon Oct 06 14:45:18 2008 -0500"
      },
      "message": "svcrdma: Add FRMR get/put services\n\nAdd services for the allocating, freeing, and unmapping Fast Reg MR. These\nservices will be used by the transport connection setup, send and receive\nroutines.\n\nSigned-off-by: Tom Tucker \u003ctom@opengridcomputing.com\u003e\n"
    },
    {
      "commit": "6067804047b64dde89f4f133fc7eba48ee44107d",
      "tree": "abe87787c3ad2aee82e576c7d4128e29bb296ac0",
      "parents": [
        "a574420ff46cff0245e6b0fce2e961aa2717743d"
      ],
      "author": {
        "name": "Arnaldo Carvalho de Melo",
        "email": "acme@redhat.com",
        "time": "Sat Sep 20 22:20:49 2008 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sat Sep 20 22:20:49 2008 -0700"
      },
      "message": "net: Use hton[sl]() instead of __constant_hton[sl]() where applicable\n\nSigned-off-by: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "24b8b44780a2c53ecb738f4a1c08d114f5eda27c",
      "tree": "f772e59438783c6230158ea65bd5aeb3f84f4202",
      "parents": [
        "30a2f3c60a84092c8084dfe788b710f8d0768cd4"
      ],
      "author": {
        "name": "Tom Tucker",
        "email": "tom@opengridcomputing.com",
        "time": "Wed Aug 13 11:05:41 2008 -0500"
      },
      "committer": {
        "name": "J. Bruce Fields",
        "email": "bfields@citi.umich.edu",
        "time": "Wed Aug 13 16:57:31 2008 -0400"
      },
      "message": "svcrdma: Fix race between svc_rdma_recvfrom thread and the dto_tasklet\n\nRDMA_READ completions are kept on a separate queue from the general\nI/O request queue. Since a separate lock is used to protect the RDMA_READ\ncompletion queue, a race exists between the dto_tasklet and the\nsvc_rdma_recvfrom thread where the dto_tasklet sets the XPT_DATA\nbit and adds I/O to the read-completion queue. Concurrently, the\nrecvfrom thread checks the generic queue, finds it empty and resets\nthe XPT_DATA bit. A subsequent svc_xprt_enqueue will fail to enqueue\nthe transport for I/O and cause the transport to \"stall\".\n\nThe fix is to protect both lists with the same lock and set the XPT_DATA\nbit with this lock held.\n\nSigned-off-by: Tom Tucker \u003ctom@opengridcomputing.com\u003e\nSigned-off-by: J. Bruce Fields \u003cbfields@citi.umich.edu\u003e\n"
    },
    {
      "commit": "8d8bb39b9eba32dd70e87fd5ad5c5dd4ba118e06",
      "tree": "64090a84f4c4466f9f30ff46c993e0cede379052",
      "parents": [
        "c485b465a031b6f9b9a51300e0ee1f86efc6db87"
      ],
      "author": {
        "name": "FUJITA Tomonori",
        "email": "fujita.tomonori@lab.ntt.co.jp",
        "time": "Fri Jul 25 19:44:49 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Jul 26 12:00:03 2008 -0700"
      },
      "message": "dma-mapping: add the device argument to dma_mapping_error()\n\nAdd per-device dma_mapping_ops support for CONFIG_X86_64 as POWER\narchitecture does:\n\nThis enables us to cleanly fix the Calgary IOMMU issue that some devices\nare not behind the IOMMU (http://lkml.org/lkml/2008/5/8/423).\n\nI think that per-device dma_mapping_ops support would be also helpful for\nKVM people to support PCI passthrough but Andi thinks that this makes it\ndifficult to support the PCI passthrough (see the above thread).  So I\nCC\u0027ed this to KVM camp.  Comments are appreciated.\n\nA pointer to dma_mapping_ops to struct dev_archdata is added.  If the\npointer is non NULL, DMA operations in asm/dma-mapping.h use it.  If it\u0027s\nNULL, the system-wide dma_ops pointer is used as before.\n\nIf it\u0027s useful for KVM people, I plan to implement a mechanism to register\na hook called when a new pci (or dma capable) device is created (it works\nwith hot plugging).  It enables IOMMUs to set up an appropriate\ndma_mapping_ops per device.\n\nThe major obstacle is that dma_mapping_error doesn\u0027t take a pointer to the\ndevice unlike other DMA operations.  So x86 can\u0027t have dma_mapping_ops per\ndevice.  Note all the POWER IOMMUs use the same dma_mapping_error function\nso this is not a problem for POWER but x86 IOMMUs use different\ndma_mapping_error functions.\n\nThe first patch adds the device argument to dma_mapping_error.  The patch\nis trivial but large since it touches lots of drivers and dma-mapping.h in\nall the architecture.\n\nThis patch:\n\ndma_mapping_error() doesn\u0027t take a pointer to the device unlike other DMA\noperations.  So we can\u0027t have dma_mapping_ops per device.\n\nNote that POWER already has dma_mapping_ops per device but all the POWER\nIOMMUs use the same dma_mapping_error function.  x86 IOMMUs use device\nargument.\n\n[akpm@linux-foundation.org: fix sge]\n[akpm@linux-foundation.org: fix svc_rdma]\n[akpm@linux-foundation.org: build fix]\n[akpm@linux-foundation.org: fix bnx2x]\n[akpm@linux-foundation.org: fix s2io]\n[akpm@linux-foundation.org: fix pasemi_mac]\n[akpm@linux-foundation.org: fix sdhci]\n[akpm@linux-foundation.org: build fix]\n[akpm@linux-foundation.org: fix sparc]\n[akpm@linux-foundation.org: fix ibmvscsi]\nSigned-off-by: FUJITA Tomonori \u003cfujita.tomonori@lab.ntt.co.jp\u003e\nCc: Muli Ben-Yehuda \u003cmuli@il.ibm.com\u003e\nCc: Andi Kleen \u003candi@firstfloor.org\u003e\nCc: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: Avi Kivity \u003cavi@qumranet.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    }
  ],
  "next": "8948896c9e098c6fd31a6a698a598a7cbd7fa40e"
}
