)]}'
{
  "log": [
    {
      "commit": "b2bc4782191cb574924a1d09f48083ea8b33a93b",
      "tree": "e91ef7b6fb2869908ce1aa7372747687ad0b5ec3",
      "parents": [
        "ba466c74d99b91b2f390a09ad31bbc6cddd8cf4b"
      ],
      "author": {
        "name": "Goldwyn Rodrigues",
        "email": "rgoldwyn@suse.de",
        "time": "Mon Jul 04 09:26:57 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jul 04 15:53:28 2011 -0700"
      },
      "message": "RDMA: Check for NULL mode in .devnode methods\n\nCommits 71c29bd5c235 (\"IB/uverbs: Add devnode method to set path/mode\")\nand c3af0980ce01 (\"IB: Add devnode methods to cm_class and umad_class\")\nadded devnode methods that set the mode.\n\nHowever, these methods don\u0027t check for a NULL mode, and so we get a\ncrash when unloading modules because devtmpfs_delete_node() calls\ndevice_get_devnode() with mode \u003d\u003d NULL.\n\nAdd the missing checks.\n\nSigned-off-by: Goldwyn Rodrigues \u003crgoldwyn@suse.de\u003e\n[ Also fix cm.c.  - Roland ]\nSigned-off-by: Roland Dreier \u003croland@purestorage.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "c7d74b090913102e7917dd02bb574ef060e1e930",
      "tree": "2e08d32ec397034e5dde80d62684bf78b2aab384",
      "parents": [
        "8da7e7a55231543b84ac84e93ad5ca9d340773d7",
        "3126448451105fae59de0058c68692aa09aa4c37"
      ],
      "author": {
        "name": "Roland Dreier",
        "email": "roland@purestorage.com",
        "time": "Fri Jun 17 11:57:55 2011 -0700"
      },
      "committer": {
        "name": "Roland Dreier",
        "email": "roland@purestorage.com",
        "time": "Fri Jun 17 11:57:55 2011 -0700"
      },
      "message": "Merge branches \u0027cxgb4\u0027 and \u0027qib\u0027 into for-next\n"
    },
    {
      "commit": "3126448451105fae59de0058c68692aa09aa4c37",
      "tree": "b895c5861c0e648e4ee2876376d7353b6c348e43",
      "parents": [
        "2c53b436a30867eb6b47dd7bab23ba638d1fb0d2"
      ],
      "author": {
        "name": "Mitko Haralanov",
        "email": "mitko@qlogic.com",
        "time": "Thu Jun 09 20:27:26 2011 +0000"
      },
      "committer": {
        "name": "Roland Dreier",
        "email": "roland@purestorage.com",
        "time": "Fri Jun 17 11:56:59 2011 -0700"
      },
      "message": "IB/qib: Ensure that LOS and DFE are being turned off\n\nDue to timing, it is possible for the LOS and DFE to remain on. This\nis due to the link progressing to LinkUP prior to the driver getting\nthe first Status Changed interrupt.  By expanding the conditions under\nwhich LOS is turned off and DFE timeout is being set, timing is no\nlonger an issue.\n\nSigned-off-by: Mitko Haralanov \u003cmitko@qlogic.com\u003e\nSigned-off-by: Mike Marciniszyn \u003cmike.marciniszyn@qlogic.com\u003e\nSigned-off-by: Roland Dreier \u003croland@purestorage.com\u003e\n"
    },
    {
      "commit": "8da7e7a55231543b84ac84e93ad5ca9d340773d7",
      "tree": "4f1b15e211a42879b18353b5f2f8c0d164250c7c",
      "parents": [
        "301c2c3f039a1f9478f6cbef60f2ccd4da9bd4a1"
      ],
      "author": {
        "name": "Steve Wise",
        "email": "swise@opengridcomputing.com",
        "time": "Tue Jun 14 20:59:27 2011 +0000"
      },
      "committer": {
        "name": "Roland Dreier",
        "email": "roland@purestorage.com",
        "time": "Fri Jun 17 11:54:56 2011 -0700"
      },
      "message": "RDMA/cxgb4: Couple of abort fixes\n\n- fix a race where the driver could end up sending a close_con_req\n  after an abort_rpl.  In c4iw_ep_disconnect(), send abort or close\n  request with the ep mutex held.\n\n- fix a hang where driver fails to wake up when a connection is reset\n  during a normal close.  Wake up any waiters in the interrupt path,\n  and correctly cleanup after rdma_fini() failures.\n\nSigned-off-by: Steve Wise \u003cswise@opengridcomputing.com\u003e\nSigned-off-by: Roland Dreier \u003croland@purestorage.com\u003e\n"
    },
    {
      "commit": "301c2c3f039a1f9478f6cbef60f2ccd4da9bd4a1",
      "tree": "f74efa0453126d5780f080e5c0fb93d7e97e0918",
      "parents": [
        "2ff7d09a1b0f20f2d9c1bde0e003d4e384de2313"
      ],
      "author": {
        "name": "Steve Wise",
        "email": "swise@opengridcomputing.com",
        "time": "Tue Jun 14 20:59:21 2011 +0000"
      },
      "committer": {
        "name": "Roland Dreier",
        "email": "roland@purestorage.com",
        "time": "Fri Jun 17 11:54:50 2011 -0700"
      },
      "message": "RDMA/cxgb4: Don\u0027t truncate MR lengths\n\nRemove left-over code from T3 that limited MR sizes to 32b.\n\nSigned-off-by: Steve Wise \u003cswise@opengridcomputing.com\u003e\nSigned-off-by: Roland Dreier \u003croland@purestorage.com\u003e\n"
    },
    {
      "commit": "2ff7d09a1b0f20f2d9c1bde0e003d4e384de2313",
      "tree": "9eb1621a6806950d89496c5dde9ff36b6ae90b71",
      "parents": [
        "2c53b436a30867eb6b47dd7bab23ba638d1fb0d2"
      ],
      "author": {
        "name": "Steve Wise",
        "email": "swise@opengridcomputing.com",
        "time": "Wed Jun 01 17:49:14 2011 +0000"
      },
      "committer": {
        "name": "Roland Dreier",
        "email": "roland@purestorage.com",
        "time": "Fri Jun 17 11:52:45 2011 -0700"
      },
      "message": "RDMA/cxgb4: Don\u0027t exceed hw IQ depth limit for user CQs\n\nMemory allocated for user CQs gets rounded up to the next page\nboundary.  And after rounding, we recalculate the resulting IQ depth\nand we need to make sure we don\u0027t exceed the HW limits.\n\nThis bug can result a much smaller CQ allocated than was expected if\nthe HW size field is exceeded, resulting in CQ overflow failures.\n\nSigned-off-by: Steve Wise \u003cswise@opengridcomputing.com\u003e\nSigned-off-by: Roland Dreier \u003croland@purestorage.com\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": "8dc4abdf4c82d0e1c47f14b6615406d31975ea66",
      "tree": "846f8c987c1b2a0baf7bd47f568100a4ce23dd6a",
      "parents": [
        "04ea2f81973f55db715bfdac7dd258f8a8485a6d",
        "807838686eb9e40d73b8a3f2384881358f51fff0",
        "c337374bf23b88620bcc66a7a09f141cc640f548",
        "52f81dbaf1378faf64c3ecea5129cebf826ef126",
        "83e9502d8db142822f3302e6a46a45082d3a27b7",
        "737b94eb41cb99250ccce9148ca411b55d4dc96a",
        "71c29bd5c23559c9cabcca3bfb3152ecc5efcd75"
      ],
      "author": {
        "name": "Roland Dreier",
        "email": "roland@purestorage.com",
        "time": "Wed May 25 13:47:20 2011 -0700"
      },
      "committer": {
        "name": "Roland Dreier",
        "email": "roland@purestorage.com",
        "time": "Wed May 25 13:47:20 2011 -0700"
      },
      "message": "Merge branches \u0027cma\u0027, \u0027cxgb3\u0027, \u0027cxgb4\u0027, \u0027misc\u0027, \u0027nes\u0027, \u0027netlink\u0027, \u0027srp\u0027 and \u0027uverbs\u0027 into for-next\n"
    },
    {
      "commit": "83e9502d8db142822f3302e6a46a45082d3a27b7",
      "tree": "9c2888434fa1dd50c360de637bb902961476705b",
      "parents": [
        "753f618ae03a699cc30044d64eea84165016dc6e"
      ],
      "author": {
        "name": "Nir Muchtar",
        "email": "nirm@voltaire.com",
        "time": "Thu Jan 13 13:56:04 2011 +0000"
      },
      "committer": {
        "name": "Roland Dreier",
        "email": "roland@purestorage.com",
        "time": "Wed May 25 13:46:23 2011 -0700"
      },
      "message": "RDMA/cma: Save PID of ID\u0027s owner\n\nSave the PID associated with an RDMA CM ID for reporting via netlink.\n\nSigned-off-by: Nir Muchtar \u003cnirm@voltaire.com\u003e\nSigned-off-by: Roland Dreier \u003croland@purestorage.com\u003e\n"
    },
    {
      "commit": "753f618ae03a699cc30044d64eea84165016dc6e",
      "tree": "145bbd73eef824f047affe79ee0570a6bb0940b1",
      "parents": [
        "b26f9b9949013fec31b23c426fc463164ae08891"
      ],
      "author": {
        "name": "Nir Muchtar",
        "email": "nirm@voltaire.com",
        "time": "Mon Jan 03 15:33:53 2011 +0000"
      },
      "committer": {
        "name": "Roland Dreier",
        "email": "roland@purestorage.com",
        "time": "Wed May 25 13:46:23 2011 -0700"
      },
      "message": "RDMA/cma: Add support for netlink statistics export\n\nAdd callbacks and data types for statistics export of all current\ndevices/ids.  The schema for RDMA CM is a series of netlink messages.\nEach one contains an rdma_cm_stat struct.  Additionally, two netlink\nattributes are created for the addresses for each message (if\napplicable).\n\nTheir types used are:\nRDMA_NL_RDMA_CM_ATTR_SRC_ADDR (The source address for this ID)\nRDMA_NL_RDMA_CM_ATTR_DST_ADDR (The destination address for this ID)\nsockaddr_* structs are encapsulated within these attributes.\n\nIn other words, every transaction contains a series of messages like:\n\n-------message 1-------\nstruct rdma_cm_id_stats {\n       __u32 qp_num;\n       __u32 bound_dev_if;\n       __u32 port_space;\n       __s32 pid;\n       __u8 cm_state;\n       __u8 node_type;\n       __u8 port_num;\n       __u8 reserved;\n}\nRDMA_NL_RDMA_CM_ATTR_SRC_ADDR attribute - contains the source address\nRDMA_NL_RDMA_CM_ATTR_DST_ADDR attribute - contains the destination address\n-------end 1-------\n-------message 2-------\nstruct rdma_cm_id_stats\nRDMA_NL_RDMA_CM_ATTR_SRC_ADDR attribute\nRDMA_NL_RDMA_CM_ATTR_DST_ADDR attribute\n-------end 2-------\n\nSigned-off-by: Nir Muchtar \u003cnirm@voltaire.com\u003e\nSigned-off-by: Roland Dreier \u003croland@purestorage.com\u003e\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": "550e5ca77e96989c5e19f60e017205b2bcc615a5",
      "tree": "ac2a52507f095a476875eab4ead8957655671bc3",
      "parents": [
        "b2cbae2c248776d81cc265ff7d48405b6a4cc463"
      ],
      "author": {
        "name": "Nir Muchtar",
        "email": "nirm@voltaire.com",
        "time": "Fri May 20 11:46:11 2011 -0700"
      },
      "committer": {
        "name": "Roland Dreier",
        "email": "roland@purestorage.com",
        "time": "Wed May 25 13:46:22 2011 -0700"
      },
      "message": "RDMA/cma: Export enum cma_state in \u003crdma/rdma_cm.h\u003e\n\nMove cma.c\u0027s internal definition of enum cma_state to enum rdma_cm_state\nin an exported header so that it can be exported via RDMA netlink.\n\nSigned-off-by: Nir Muchtar \u003cnirm@voltaire.com\u003e\nSigned-off-by: Roland Dreier \u003croland@purestorage.com\u003e\n"
    },
    {
      "commit": "52f81dbaf1378faf64c3ecea5129cebf826ef126",
      "tree": "cd7be0e965a12f0da8ad42f08414df2b6beebf3c",
      "parents": [
        "c3af0980ce01dfb8e946990c3ae4c3727b1e9f26"
      ],
      "author": {
        "name": "Liu Yuan",
        "email": "tailai.ly@taobao.com",
        "time": "Fri Apr 01 06:23:49 2011 +0000"
      },
      "committer": {
        "name": "Roland Dreier",
        "email": "roland@purestorage.com",
        "time": "Tue May 24 10:06:25 2011 -0700"
      },
      "message": "RDMA/nes: Add a check for strict_strtoul()\n\nIt should check if strict_strtoul() succeeds before using\n\u0027wqm_quanta_value\u0027.\n\nSigned-off-by: Liu Yuan \u003ctailai.ly@taobao.com\u003e\n\n[ Convert to kstrtoul() directly while we\u0027re here.  - Roland ]\n\nSigned-off-by: Roland Dreier \u003croland@purestorage.com\u003e\n"
    },
    {
      "commit": "807838686eb9e40d73b8a3f2384881358f51fff0",
      "tree": "13ab2b82122044054693e949513500bbc8967aef",
      "parents": [
        "257313b2a87795e07a0bdf58d0fffbdba8b31051"
      ],
      "author": {
        "name": "Steve Wise",
        "email": "swise@opengridcomputing.com",
        "time": "Fri May 13 18:37:18 2011 +0000"
      },
      "committer": {
        "name": "Roland Dreier",
        "email": "roland@purestorage.com",
        "time": "Tue May 24 10:01:04 2011 -0700"
      },
      "message": "RDMA/cxgb3: Don\u0027t post zero-byte read if endpoint is going away\n\ntx_ack() wasn\u0027t checking the endpoint state and consequently would\nattempt to post the p2p 0B read on an endpoint/QP that is closing or\naborting.  This causes a NULL pointer dereference crash.\n\nSigned-off-by: Steve Wise \u003cswise@opengridcomputing.com\u003e\nSigned-off-by: Roland Dreier \u003croland@purestorage.com\u003e\n"
    },
    {
      "commit": "c337374bf23b88620bcc66a7a09f141cc640f548",
      "tree": "5867078d9b9f7e8eb44df4e94b08e460aede1616",
      "parents": [
        "257313b2a87795e07a0bdf58d0fffbdba8b31051"
      ],
      "author": {
        "name": "Steve Wise",
        "email": "swise@opengridcomputing.com",
        "time": "Fri May 20 16:25:05 2011 +0000"
      },
      "committer": {
        "name": "Roland Dreier",
        "email": "roland@purestorage.com",
        "time": "Tue May 24 09:47:38 2011 -0700"
      },
      "message": "RDMA/cxgb4: Use completion objects for event blocking\n\nThere exists a race condition when using wait_queue_head_t objects\nthat are declared on the stack.  This was being done in a few places\nwhere we are sending work requests to the FW and awaiting replies, but\nwe don\u0027t have an endpoint structure with an embedded c4iw_wr_wait\nstruct.  So the code was allocating it locally on the stack.  Bad\ndesign.  The race is:\n\n  1) thread on cpuX declares the wait_queue_head_t on the stack, then\n     posts a firmware WR with that wait object ptr as the cookie to be\n     returned in the WR reply.  This thread will proceed to block in\n     wait_event_timeout() but before it does:\n\n  2) An interrupt runs on cpuY with the WR reply.  fw6_msg() handles\n     this and calls c4iw_wake_up().  c4iw_wake_up() sets the condition\n     variable in the c4iw_wr_wait object to TRUE and will call\n     wake_up(), but before it calls wake_up():\n\n  3) The thread on cpuX calls c4iw_wait_for_reply(), which calls\n     wait_event_timeout().  The wait_event_timeout() macro checks the\n     condition variable and returns immediately since it is TRUE.  So\n     this thread never blocks/sleeps. The function then returns\n     effectively deallocating the c4iw_wr_wait object that was on the\n     stack.\n\n  4) So at this point cpuY has a pointer to the c4iw_wr_wait object\n     that is no longer valid.  Further its pointing to a stack frame\n     that might now be in use by some other context/thread.  So cpuY\n     continues execution and calls wake_up() on a ptr to a wait object\n     that as been effectively deallocated.\n\nThis race, when it hits, can cause a crash in wake_up(), which I\u0027ve\nseen under heavy stress. It can also corrupt the referenced stack\nwhich can cause any number of failures.\n\nThe fix:\n\nUse struct completion, which supports on-stack declarations.\nCompletions use a spinlock around setting the condition to true and\nthe wake up so that steps 2 and 4 above are atomic and step 3 can\nnever happen in-between.\n\nSigned-off-by: Steve Wise \u003cswise@opengridcomputing.com\u003e\n"
    },
    {
      "commit": "737b94eb41cb99250ccce9148ca411b55d4dc96a",
      "tree": "431b5c05c3140be705adc77307dce3fd1bdfdd26",
      "parents": [
        "257313b2a87795e07a0bdf58d0fffbdba8b31051"
      ],
      "author": {
        "name": "Roland Dreier",
        "email": "roland@purestorage.com",
        "time": "Mon May 23 11:30:04 2011 -0700"
      },
      "committer": {
        "name": "Roland Dreier",
        "email": "roland@purestorage.com",
        "time": "Mon May 23 11:30:04 2011 -0700"
      },
      "message": "IB/srp: Fix integer -\u003e pointer cast warnings\n\nFix\n\n    drivers/infiniband/ulp/srp/ib_srp.c: In function \u0027srp_handle_recv\u0027:\n    drivers/infiniband/ulp/srp/ib_srp.c:1150: warning: cast to pointer from integer of different size\n    drivers/infiniband/ulp/srp/ib_srp.c: In function \u0027srp_send_completion\u0027:\n    drivers/infiniband/ulp/srp/ib_srp.c:1234: warning: cast to pointer from integer of different size\n\nby adding an intermediate cast to uintptr_t.\n\nSigned-off-by: Roland Dreier \u003croland@purestorage.com\u003e\nAcked-by: David Dillow \u003cdillowda@ornl.gov\u003e\n"
    },
    {
      "commit": "c3af0980ce01dfb8e946990c3ae4c3727b1e9f26",
      "tree": "13552e10c7b36da435d4aa950a9a569e561f3dff",
      "parents": [
        "c8367c4cd9de512d296fc557f121be62a43987f3"
      ],
      "author": {
        "name": "Roland Dreier",
        "email": "roland@purestorage.com",
        "time": "Mon May 23 11:21:47 2011 -0700"
      },
      "committer": {
        "name": "Roland Dreier",
        "email": "roland@purestorage.com",
        "time": "Mon May 23 11:24:28 2011 -0700"
      },
      "message": "IB: Add devnode methods to cm_class and umad_class\n\nWe want the ucmX, umadX and issmX device nodes to show up under\n/dev/infiniband, and additionally ucmX should have mode 0666.  Add\nappropriate devnode methods to their class structs for this.\n\nSigned-off-by: Roland Dreier \u003croland@purestorage.com\u003e\n\n"
    },
    {
      "commit": "c8367c4cd9de512d296fc557f121be62a43987f3",
      "tree": "36b9c185a8ebda7dfbe1a61884291f6ae04766d8",
      "parents": [
        "257313b2a87795e07a0bdf58d0fffbdba8b31051"
      ],
      "author": {
        "name": "Ira Weiny",
        "email": "weiny2@llnl.gov",
        "time": "Thu May 19 18:19:28 2011 -0700"
      },
      "committer": {
        "name": "Roland Dreier",
        "email": "roland@purestorage.com",
        "time": "Mon May 23 11:15:48 2011 -0700"
      },
      "message": "IB/mad: Return EPROTONOSUPPORT when an RDMA device lacks the QP required\n\nWe had a script which was looping through the devices returned from\nibstat and attempted to register a SMI agent on an ethernet device.\nThis caused a kernel panic for IBoE devices that don\u0027t have QP0.\n\nFix this by checking if the QP exists before using it.\n\nSigned-off-by: Ira Weiny \u003cweiny2@llnl.gov\u003e\nAcked-by: Sean Hefty \u003csean.hefty@intel.com\u003e\nSigned-off-by: Roland Dreier \u003croland@purestorage.com\u003e\n"
    },
    {
      "commit": "71c29bd5c23559c9cabcca3bfb3152ecc5efcd75",
      "tree": "d4c1e56584e664b0bad103370955a6883f247cf3",
      "parents": [
        "257313b2a87795e07a0bdf58d0fffbdba8b31051"
      ],
      "author": {
        "name": "Roland Dreier",
        "email": "roland@purestorage.com",
        "time": "Mon May 23 11:10:05 2011 -0700"
      },
      "committer": {
        "name": "Roland Dreier",
        "email": "roland@purestorage.com",
        "time": "Mon May 23 11:10:05 2011 -0700"
      },
      "message": "IB/uverbs: Add devnode method to set path/mode\n\nWe want udev to create a device node under /dev/infiniband with\npermission 0666 for uverbsX devices, so add a devnode method to set the\nappropriate info.\n\nSigned-off-by: Roland Dreier \u003croland@purestorage.com\u003e\n"
    },
    {
      "commit": "04ea2f81973f55db715bfdac7dd258f8a8485a6d",
      "tree": "f8f0bf76fc9e7e409dc26b088e1263603556dcb1",
      "parents": [
        "257313b2a87795e07a0bdf58d0fffbdba8b31051"
      ],
      "author": {
        "name": "Roland Dreier",
        "email": "roland@purestorage.com",
        "time": "Mon May 23 10:48:43 2011 -0700"
      },
      "committer": {
        "name": "Roland Dreier",
        "email": "roland@purestorage.com",
        "time": "Mon May 23 10:48:43 2011 -0700"
      },
      "message": "RDMA/ucma: Add .nodename/.mode to tell userspace where to create device node\n\nWe want udev to create a device node under /dev/infiniband with\npermission 0666 for rdma_cm, so add that info to our struct miscdevice.\n\nSigned-off-by: Roland Dreier \u003croland@purestorage.com\u003e\nAcked-by: Sean Hefty \u003csean.hefty@intel.com\u003e\n\n"
    },
    {
      "commit": "70c71606190e9115e5f8363bfcd164c582eb314a",
      "tree": "17c7f6b5df814b9ed319bc0d839969a0de741433",
      "parents": [
        "281dc5c5ec0fb299514567cbc358562649c1af95"
      ],
      "author": {
        "name": "Paul Gortmaker",
        "email": "paul.gortmaker@windriver.com",
        "time": "Sun May 22 16:47:17 2011 -0400"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sun May 22 21:41:57 2011 -0700"
      },
      "message": "Add appropriate \u003clinux/prefetch.h\u003e include for prefetch users\n\nAfter discovering that wide use of prefetch on modern CPUs\ncould be a net loss instead of a win, net drivers which were\nrelying on the implicit inclusion of prefetch.h via the list\nheaders showed up in the resulting cleanup fallout.  Give\nthem an explicit include via the following $0.02 script.\n\n \u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\n #!/bin/bash\n MANUAL\u003d\"\"\n for i in `git grep -l \u0027prefetch(.*)\u0027 .` ; do\n \tgrep -q \u0027\u003clinux/prefetch.h\u003e\u0027 $i\n \tif [ $? \u003d 0 ] ; then\n \t\tcontinue\n \tfi\n\n \t(\techo \u0027?^#include \u003clinux/?a\u0027\n \t\techo \u0027#include \u003clinux/prefetch.h\u003e\u0027\n \t\techo .\n \t\techo w\n \t\techo q\n \t) | ed -s $i \u003e /dev/null 2\u003e\u00261\n \tif [ $? !\u003d 0 ]; then\n \t\techo $i needs manual fixup\n \t\tMANUAL\u003d\"$i $MANUAL\"\n \tfi\n done\n echo ------------------- 8\\\u003c----------------------\n echo vi $MANUAL\n \u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\n\nSigned-off-by: Paul \u003cpaul.gortmaker@windriver.com\u003e\n[ Fixed up some incorrect #include placements, and added some\n  non-network drivers and the fib_trie.c case    - Linus ]\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "06f4e926d256d902dd9a53dcb400fd74974ce087",
      "tree": "0b438b67f5f0eff6fd617bc497a9dace6164a488",
      "parents": [
        "8e7bfcbab3825d1b404d615cb1b54f44ff81f981",
        "d93515611bbc70c2fe4db232e5feb448ed8e4cc9"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri May 20 13:43:21 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri May 20 13:43:21 2011 -0700"
      },
      "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: (1446 commits)\n  macvlan: fix panic if lowerdev in a bond\n  tg3: Add braces around 5906 workaround.\n  tg3: Fix NETIF_F_LOOPBACK error\n  macvlan: remove one synchronize_rcu() call\n  networking: NET_CLS_ROUTE4 depends on INET\n  irda: Fix error propagation in ircomm_lmp_connect_response()\n  irda: Kill set but unused variable \u0027bytes\u0027 in irlan_check_command_param()\n  irda: Kill set but unused variable \u0027clen\u0027 in ircomm_connect_indication()\n  rxrpc: Fix set but unused variable \u0027usage\u0027 in rxrpc_get_transport()\n  be2net: Kill set but unused variable \u0027req\u0027 in lancer_fw_download()\n  irda: Kill set but unused vars \u0027saddr\u0027 and \u0027daddr\u0027 in irlan_provider_connect_indication()\n  atl1c: atl1c_resume() is only used when CONFIG_PM_SLEEP is defined.\n  rxrpc: Fix set but unused variable \u0027usage\u0027 in rxrpc_get_peer().\n  rxrpc: Kill set but unused variable \u0027local\u0027 in rxrpc_UDP_error_handler()\n  rxrpc: Kill set but unused variable \u0027sp\u0027 in rxrpc_process_connection()\n  rxrpc: Kill set but unused variable \u0027sp\u0027 in rxrpc_rotate_tx_window()\n  pkt_sched: Kill set but unused variable \u0027protocol\u0027 in tc_classify()\n  isdn: capi: Use pr_debug() instead of ifdefs.\n  tg3: Update version to 3.119\n  tg3: Apply rx_discards fix to 5719/5720\n  ...\n\nFix up trivial conflicts in arch/x86/Kconfig and net/mac80211/agg-tx.c\nas per Davem.\n"
    },
    {
      "commit": "b2cbae2c248776d81cc265ff7d48405b6a4cc463",
      "tree": "fbd4f4e0812fbcc991670c81967e90bfdd9f80c0",
      "parents": [
        "fd75c789abf7948e16fe50917a6acb809927719a"
      ],
      "author": {
        "name": "Roland Dreier",
        "email": "roland@purestorage.com",
        "time": "Fri May 20 11:46:11 2011 -0700"
      },
      "committer": {
        "name": "Roland Dreier",
        "email": "roland@purestorage.com",
        "time": "Fri May 20 11:46:11 2011 -0700"
      },
      "message": "RDMA: Add netlink infrastructure\n\nAdd basic RDMA netlink infrastructure that allows for registration of\nRDMA clients for which data is to be exported and supplies message\nconstruction callbacks.\n\nSigned-off-by: Nir Muchtar \u003cnirm@voltaire.com\u003e\n\n[ Reorganize a few things, add CONFIG_NET dependency.  - Roland ]\n\nSigned-off-by: Roland Dreier \u003croland@purestorage.com\u003e\n"
    },
    {
      "commit": "fd75c789abf7948e16fe50917a6acb809927719a",
      "tree": "e85ee47f2a5575e2f4f9398da43d9ca82fc275f9",
      "parents": [
        "257313b2a87795e07a0bdf58d0fffbdba8b31051"
      ],
      "author": {
        "name": "Nir Muchtar",
        "email": "nirm@voltaire.com",
        "time": "Fri May 20 11:46:10 2011 -0700"
      },
      "committer": {
        "name": "Roland Dreier",
        "email": "roland@purestorage.com",
        "time": "Fri May 20 11:46:10 2011 -0700"
      },
      "message": "RDMA: Add error handling to ib_core_init()\n\nFail RDMA midlayer initialization if sysfs setup fails.\n\nSigned-off-by: Nir Muchtar \u003cnirm@voltaire.com\u003e\nSigned-off-by: Roland Dreier \u003croland@purestorage.com\u003e\n"
    },
    {
      "commit": "880102e78547c1db158a17e36cf0cdd98e7ad710",
      "tree": "3fff9cc54c44dafe275cfabefb96c589e08d971d",
      "parents": [
        "3d07f0e83d4323d2cd45cc583f7cf1957aca3cac",
        "39ab05c8e0b519ff0a04a869f065746e6e8c3d95"
      ],
      "author": {
        "name": "Benjamin Herrenschmidt",
        "email": "benh@kernel.crashing.org",
        "time": "Fri May 20 15:36:52 2011 +1000"
      },
      "committer": {
        "name": "Benjamin Herrenschmidt",
        "email": "benh@kernel.crashing.org",
        "time": "Fri May 20 15:36:52 2011 +1000"
      },
      "message": "Merge remote branch \u0027origin/master\u0027 into merge\n\nManual merge of arch/powerpc/kernel/smp.c and add missing scheduler_ipi()\ncall to arch/powerpc/platforms/cell/interrupt.c\n\nSigned-off-by: Benjamin Herrenschmidt \u003cbenh@kernel.crashing.org\u003e\n"
    },
    {
      "commit": "4c8440666b995f20604852b35dcfdbcc1d5931f1",
      "tree": "b3b6cd65ee275ba1adf9d2c050063f30ebbadb91",
      "parents": [
        "751e1f5099f1568444fe2485f2485ca541d4952e",
        "c560bbceaf6b06e52f1ef20131b76a3fdc0a2c19"
      ],
      "author": {
        "name": "Benjamin Herrenschmidt",
        "email": "benh@kernel.crashing.org",
        "time": "Thu May 19 17:00:06 2011 +1000"
      },
      "committer": {
        "name": "Benjamin Herrenschmidt",
        "email": "benh@kernel.crashing.org",
        "time": "Thu May 19 17:00:06 2011 +1000"
      },
      "message": "Merge branch \u0027merge\u0027 into next\n"
    },
    {
      "commit": "1df9fad1220beb21b4b4230373cbf4924436dd88",
      "tree": "439df63eee43e198b3b593aebfc094a9ddf29ef4",
      "parents": [
        "d0c49bf391b2e230a8f3ae4486da7df440f1216d",
        "2f25e9a540951ebd533b9b98d2259deb44b0b476",
        "1c65335714e99864a438b0d757c8736d3c6e7d79"
      ],
      "author": {
        "name": "Roland Dreier",
        "email": "roland@purestorage.com",
        "time": "Thu May 12 08:57:20 2011 -0700"
      },
      "committer": {
        "name": "Roland Dreier",
        "email": "roland@purestorage.com",
        "time": "Thu May 12 08:57:20 2011 -0700"
      },
      "message": "Merge branches \u0027cma\u0027, \u0027cxgb4\u0027 and \u0027qib\u0027 into for-next\n"
    },
    {
      "commit": "1c65335714e99864a438b0d757c8736d3c6e7d79",
      "tree": "a9649fad2ab06f130ef4ae17731034ddd9ba8825",
      "parents": [
        "ec03d6777a9e2b76917ef6d3fc8a01e174bcb9b1"
      ],
      "author": {
        "name": "Sergei Shtylyov",
        "email": "sshtylyov@ru.mvista.com",
        "time": "Mon May 09 22:07:31 2011 -0700"
      },
      "committer": {
        "name": "Roland Dreier",
        "email": "roland@purestorage.com",
        "time": "Thu May 12 08:57:12 2011 -0700"
      },
      "message": "IB/qib: Use pci_dev-\u003erevision\n\nThe driver reads PCI revision ID from the PCI configuration register\nwhile it\u0027s already stored by PCI subsystem in the revision field of\nstruct pci_dev.\n\nSigned-off-by: Sergei Shtylyov \u003csshtylyov@ru.mvista.com\u003e\nAcked-by: Mike Marciniszyn \u003cmike.marciniszyn@qlogic.com\u003e\nSigned-off-by: Roland Dreier \u003croland@purestorage.com\u003e\n"
    },
    {
      "commit": "5fc3590c81bd233c25fbe127cdcf7a8e26e12378",
      "tree": "eb3f4485e47a9f1d0366d4fbeab34d688e17e17d",
      "parents": [
        "902ebd3e0de618b6d39004edac00b2cc36362065"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon May 09 14:52:02 2011 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue May 10 13:32:48 2011 -0700"
      },
      "message": "infiniband: Remove rt-\u003ert_src usage in addr4_resolve()\n\nUse an explicit flow key and fetch it from there.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "d0c49bf391b2e230a8f3ae4486da7df440f1216d",
      "tree": "77c63b308e23c8a97b2fd334ddd820a5f5aac6a2",
      "parents": [
        "a9bb79128aa659f97b774b97c9bb1bdc74444595"
      ],
      "author": {
        "name": "Roland Dreier",
        "email": "roland@purestorage.com",
        "time": "Mon May 09 22:23:57 2011 -0700"
      },
      "committer": {
        "name": "Roland Dreier",
        "email": "roland@purestorage.com",
        "time": "Mon May 09 22:23:57 2011 -0700"
      },
      "message": "RDMA/iwcm: Get rid of enum iw_cm_event_status\n\nThe IW_CM_EVENT_STATUS_xxx values were used in only a couple of places;\ncma.c uses -Exxx values instead, and so do the amso1100, cxgb3 and cxgb4\ndrivers -- only nes was using the enum values (with the mild consequence\nthat all nes connection failures were treated as generic errors rather\nthan reported as timeouts or rejections).\n\nWe can fix this confusion by getting rid of enum iw_cm_event_status and\nusing a plain int for struct iw_cm_event.status, and converting nes to\nuse -Exxx as the other iWARP drivers do.\n\nThis also gets rid of the warning\n\n    drivers/infiniband/core/cma.c: In function \u0027cma_iw_handler\u0027:\n    drivers/infiniband/core/cma.c:1333:3: warning: case value \u00274294967185\u0027 not in enumerated type \u0027enum iw_cm_event_status\u0027\n    drivers/infiniband/core/cma.c:1336:3: warning: case value \u00274294967186\u0027 not in enumerated type \u0027enum iw_cm_event_status\u0027\n    drivers/infiniband/core/cma.c:1332:3: warning: case value \u00274294967192\u0027 not in enumerated type \u0027enum iw_cm_event_status\u0027\n\nSigned-off-by: Roland Dreier \u003croland@purestorage.com\u003e\nReviewed-by: Steve Wise \u003cswise@opengridcomputing.com\u003e\nReviewed-by: Sean Hefty \u003csean.hefty@intel.com\u003e\nReviewed-by: Faisal Latif \u003cfaisal.latif@intel.com\u003e\n"
    },
    {
      "commit": "ec03d6777a9e2b76917ef6d3fc8a01e174bcb9b1",
      "tree": "3740ca28203029eb173bc65ba67859183255241d",
      "parents": [
        "9f5754e34bf964a41e821b2e0b358bc7c314ca4e"
      ],
      "author": {
        "name": "Sergei Shtylyov",
        "email": "sshtylyov@ru.mvista.com",
        "time": "Mon May 09 22:07:31 2011 -0700"
      },
      "committer": {
        "name": "Roland Dreier",
        "email": "roland@purestorage.com",
        "time": "Mon May 09 22:07:31 2011 -0700"
      },
      "message": "IB/ipath: Use pci_dev-\u003erevision, again\n\nCommit 44c10138fd4b (\"PCI: Change all drivers to use pci_device-\u003erevision\")\nalready converted this driver to using the revision field of struct\npci_dev but commit bb9171448deb (\"IB/ipath: Misc changes to prepare\nfor IB7220 introduction\") later reverted that change for some strange\nreason.  Restore the change.\n\nSigned-off-by: Sergei Shtylyov \u003csshtylyov@ru.mvista.com\u003e\nAcked-by: Mike Marciniszyn \u003cmike.marciniszyn@qlogic.com\u003e\nSigned-off-by: Roland Dreier \u003croland@purestorage.com\u003e\n"
    },
    {
      "commit": "9f5754e34bf964a41e821b2e0b358bc7c314ca4e",
      "tree": "755d47a9e64526d8c91194af84aba08286957a4a",
      "parents": [
        "693d92a1bbc9e42681c42ed190bd42b636ca876f"
      ],
      "author": {
        "name": "Mitko Haralanov",
        "email": "mitko@qlogic.com",
        "time": "Mon May 09 22:07:31 2011 -0700"
      },
      "committer": {
        "name": "Roland Dreier",
        "email": "roland@purestorage.com",
        "time": "Mon May 09 22:07:31 2011 -0700"
      },
      "message": "IB/qib: Prevent driver hang with unprogrammed boards\n\nThe time limit test now correctly checks against current jiffies to\navoid the hang.\n\nSigned-off-by: Mitko Haralanov \u003cmitko@qlogic.com\u003e\nSigned-off-by: Mike Marciniszyn \u003cmike.marciniszyn@qlogic.com\u003e\nSigned-off-by: Roland Dreier \u003croland@purestorage.com\u003e\n"
    },
    {
      "commit": "2f25e9a540951ebd533b9b98d2259deb44b0b476",
      "tree": "a2548d5cbcb9e26b679e9f783c78cf088f7b2123",
      "parents": [
        "d9594d990a528d4c444777d0f360bb50c6114825"
      ],
      "author": {
        "name": "Steve Wise",
        "email": "swise@opengridcomputing.com",
        "time": "Mon May 09 22:06:23 2011 -0700"
      },
      "committer": {
        "name": "Roland Dreier",
        "email": "roland@purestorage.com",
        "time": "Mon May 09 22:06:23 2011 -0700"
      },
      "message": "RDMA/cxgb4: EEH errors can hang the driver\n\nA few more EEH fixes:\n\nc4iw_wait_for_reply(): detect fatal EEH condition on timeout and\nreturn an error.\n\nThe iw_cxgb4 driver was only calling ib_deregister_device() on an EEH\nevent followed by a ib_register_device() when the device was\nreinitialized.  However, the RDMA core doesn\u0027t allow multiple\niterations of register/deregister by the provider. See\ndrivers/infiniband/core/sysfs.c: ib_device_unregister_sysfs() where\nthe kobject ref is held until the device is deallocated in\nib_deallocate_device().  Calling deregister adds this kobj reference,\nand then a subsequent register call will generate a WARN_ON() from the\nkobject subsystem because the kobject is being initialized but is\nalready initialized with the ref held.\n\nSo the provider must deregister and dealloc when resetting for an EEH\nevent, then alloc/register to re-initialize.  To do this, we cannot\nuse the device ptr as our ULD handle since it will change with each\nreallocation.  This commit adds a ULD context struct which is used as\nthe ULD handle, and then contains the device pointer and other state\nneeded.\n\nSigned-off-by: Steve Wise \u003cswise@opengridcomputing.com\u003e\nSigned-off-by: Roland Dreier \u003croland@purestorage.com\u003e\n"
    },
    {
      "commit": "d9594d990a528d4c444777d0f360bb50c6114825",
      "tree": "93b587a40d1bd17200f3076edc5a2c0f78feb230",
      "parents": [
        "85d215b0f316bee0a6936bd1a5f21abf03333eaa"
      ],
      "author": {
        "name": "Steve Wise",
        "email": "swise@opengridcomputing.com",
        "time": "Mon May 09 22:06:22 2011 -0700"
      },
      "committer": {
        "name": "Roland Dreier",
        "email": "roland@purestorage.com",
        "time": "Mon May 09 22:06:22 2011 -0700"
      },
      "message": "RDMA/cxgb4: Reset wait condition atomically\n\nThe driver was never really waiting for RDMA_WR/FINI completions\nbecause the condition variable used to determine if the completion\nhappened was never reset, and this condition variable is reused for\nboth connection setup and teardown.  This causes various driver\ncrashes under heavy loads due to releasing resources too early.\n\nThe fix is to use atomic bits to correctly reset the condition\nimmediately after the completion is detected.\n\nSigned-off-by: Steve Wise \u003cswise@opengridcomputing.com\u003e\nSigned-off-by: Roland Dreier \u003croland@purestorage.com\u003e\n"
    },
    {
      "commit": "85d215b0f316bee0a6936bd1a5f21abf03333eaa",
      "tree": "5066ff348af5db4a47a80a283b5d92c7b03e487c",
      "parents": [
        "bbe9a0a2bc07cf30c5b89b51154f2c87200a5dfd"
      ],
      "author": {
        "name": "Roel Kluin",
        "email": "roel.kluin@gmail.com",
        "time": "Mon May 09 22:06:22 2011 -0700"
      },
      "committer": {
        "name": "Roland Dreier",
        "email": "roland@purestorage.com",
        "time": "Mon May 09 22:06:22 2011 -0700"
      },
      "message": "RDMA/cxgb4: Fix missing parentheses\n\nParens are missing: \u0027|\u0027 has a higher presedence than \u0027?\u0027.\n\nSigned-off-by: Roel Kluin \u003croel.kluin@gmail.com\u003e\nAcked-by: Steve Wise \u003cswise@opengridcomputing.com\u003e\nSigned-off-by: Roland Dreier \u003croland@purestorage.com\u003e\n"
    },
    {
      "commit": "bbe9a0a2bc07cf30c5b89b51154f2c87200a5dfd",
      "tree": "f2040a64347602937a12b8f84b5fab7beb23095c",
      "parents": [
        "30c95c2d495c1c8d4d6a97bb9f4e4eacb91ba1d2"
      ],
      "author": {
        "name": "Steve Wise",
        "email": "swise@opengridcomputing.com",
        "time": "Mon May 09 22:06:22 2011 -0700"
      },
      "committer": {
        "name": "Roland Dreier",
        "email": "roland@purestorage.com",
        "time": "Mon May 09 22:06:22 2011 -0700"
      },
      "message": "RDMA/cxgb4: Initialization errors can cause crash\n\nc4iw_uld_add() must return ERR_PTR() values instead of NULL on failure.\n\nSigned-off-by: Steve Wise \u003cswise@opengridcomputing.com\u003e\nSigned-off-by: Roland Dreier \u003croland@purestorage.com\u003e\n"
    },
    {
      "commit": "30c95c2d495c1c8d4d6a97bb9f4e4eacb91ba1d2",
      "tree": "ace5f0f3da8d942bc894f8ad0fbc6ceddda1d64d",
      "parents": [
        "693d92a1bbc9e42681c42ed190bd42b636ca876f"
      ],
      "author": {
        "name": "Steve Wise",
        "email": "swise@opengridcomputing.com",
        "time": "Mon May 09 22:06:22 2011 -0700"
      },
      "committer": {
        "name": "Roland Dreier",
        "email": "roland@purestorage.com",
        "time": "Mon May 09 22:06:22 2011 -0700"
      },
      "message": "RDMA/cxgb4: Don\u0027t change QP state outside EP lock\n\nConcurrent ingress CLOSE and ULP ABORT operations causes a crash due\nto a race condition where the close path releases the EP lock and then\ntries to move the QP state to CLOSED.  This must be done inside the EP\nlock to avoid the race.\n\nSigned-off-by: Steve Wise \u003cswise@opengridcomputing.com\u003e\nSigned-off-by: Roland Dreier \u003croland@purestorage.com\u003e\n"
    },
    {
      "commit": "a9bb79128aa659f97b774b97c9bb1bdc74444595",
      "tree": "20208e66195581568e5c68f838897199d224fa90",
      "parents": [
        "43b752daae9445a3b2b075a236840d801fce1593"
      ],
      "author": {
        "name": "Hefty, Sean",
        "email": "sean.hefty@intel.com",
        "time": "Mon May 09 22:06:10 2011 -0700"
      },
      "committer": {
        "name": "Roland Dreier",
        "email": "roland@purestorage.com",
        "time": "Mon May 09 22:06:10 2011 -0700"
      },
      "message": "RDMA/cma: Add an ID_REUSEADDR option\n\nLustre requires that clients bind to a privileged port number before\nconnecting to a remote server.  On larger clusters (typically more\nthan about 1000 nodes), the number of privileged ports is exhausted,\nresulting in lustre being unusable.\n\nTo handle this, we add support for reusable addresses to the rdma_cm.\nThis mimics the behavior of the socket option SO_REUSEADDR.  A user\nmay set an rdma_cm_id to reuse an address before calling\nrdma_bind_addr() (explicitly or implicitly).  If set, other\nrdma_cm_id\u0027s may be bound to the same address, provided that they all\nhave reuse enabled, and there are no active listens.\n\nIf rdma_listen() is called on an rdma_cm_id that has reuse enabled, it\nwill only succeed if there are no other id\u0027s bound to that same\naddress.  The reuse option is exported to user space.  The behavior of\nthe kernel reuse implementation was verified against that given by\nsockets.\n\nThis patch is derived from a path by Ira Weiny \u003cweiny2@llnl.gov\u003e\n\nSigned-off-by: Sean Hefty \u003csean.hefty@intel.com\u003e\nSigned-off-by: Roland Dreier \u003croland@purestorage.com\u003e\n"
    },
    {
      "commit": "43b752daae9445a3b2b075a236840d801fce1593",
      "tree": "0fb5fabb3bebcbc707a9b1ab6f4d53f5e7fe2cf3",
      "parents": [
        "693d92a1bbc9e42681c42ed190bd42b636ca876f"
      ],
      "author": {
        "name": "Hefty, Sean",
        "email": "sean.hefty@intel.com",
        "time": "Mon May 09 22:06:10 2011 -0700"
      },
      "committer": {
        "name": "Roland Dreier",
        "email": "roland@purestorage.com",
        "time": "Mon May 09 22:06:10 2011 -0700"
      },
      "message": "RDMA/cma: Fix handling of IPv6 addressing in cma_use_port\n\ncma_use_port() assumes that the sockaddr is an IPv4 address.  Since\nIPv6 addressing is supported (and also to support other address\nfamilies) make the code more generic in its address handling.\n\nSigned-off-by: Sean Hefty \u003csean.hefty@intel.com\u003e\nSigned-off-by: Roland Dreier \u003croland@purestorage.com\u003e\n"
    },
    {
      "commit": "31e4543db29fb85496a122b965d6482c8d1a2bfe",
      "tree": "3e49d61a1202e1b3c8c71e422f3fd8e4f2616d01",
      "parents": [
        "f1390160ddcd64a3cfd48b3280d0a616a31b9520"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue May 03 20:25:42 2011 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue May 03 20:25:42 2011 -0700"
      },
      "message": "ipv4: Make caller provide on-stack flow key to ip_route_output_ports().\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "707394972093e2056e1e8cc39be19cf9bcb3e7b3",
      "tree": "f6dc95219bca6895adf304b79241e9d60561f8f5",
      "parents": [
        "25db0338813a8915457636b1f6abe6a28fa73f8d"
      ],
      "author": {
        "name": "David Decotigny",
        "email": "decot@google.com",
        "time": "Wed Apr 27 18:32:40 2011 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Apr 29 14:03:01 2011 -0700"
      },
      "message": "ethtool: cosmetic: Use ethtool ethtool_cmd_speed API\n\nThis updates the network drivers so that they don\u0027t access the\nethtool_cmd::speed field directly, but use ethtool_cmd_speed()\ninstead.\n\nFor most of the drivers, these changes are purely cosmetic and don\u0027t\nfix any problem, such as for those 1GbE/10GbE drivers that indirectly\ncall their own ethtool get_settings()/mii_ethtool_gset(). The changes\nare meant to enforce code consistency and provide robustness with\nfuture larger throughputs, at the expense of a few CPU cycles for each\nethtool operation.\n\nAll drivers compiled with make allyesconfig ion x86_64 have been\nupdated.\n\nTested: make allyesconfig on x86_64 + e1000e/bnx2x work\nSigned-off-by: David Decotigny \u003cdecot@google.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "e9c549998dc24209847007e1f209f3b6c88d21ba",
      "tree": "0f52fcbe1dfa158349afc6ad2edaa6738615dc3b",
      "parents": [
        "8e10cd74342c7f5ce259cceca36f6eba084f5d58"
      ],
      "author": {
        "name": "Lucas De Marchi",
        "email": "lucas.demarchi@profusion.mobi",
        "time": "Tue Apr 26 23:28:26 2011 -0700"
      },
      "committer": {
        "name": "Lucas De Marchi",
        "email": "lucas.demarchi@profusion.mobi",
        "time": "Tue Apr 26 23:31:11 2011 -0700"
      },
      "message": "Revert wrong fixes for common misspellings\n\nThese changes were incorrectly fixed by codespell. They were now\nmanually corrected.\n\nSigned-off-by: Lucas De Marchi \u003clucas.demarchi@profusion.mobi\u003e\n"
    },
    {
      "commit": "e297d9dd5cfafbeb2e7585bb444941848e030454",
      "tree": "72a38df12fb3928b3b8493ef1e783374c0892559",
      "parents": [
        "efcac6589a277c10060e4be44b9455cf43838dc1"
      ],
      "author": {
        "name": "Nishanth Aravamudan",
        "email": "nacc@us.ibm.com",
        "time": "Mon Mar 14 10:36:11 2011 +0000"
      },
      "committer": {
        "name": "Benjamin Herrenschmidt",
        "email": "benh@kernel.crashing.org",
        "time": "Wed Apr 27 14:18:25 2011 +1000"
      },
      "message": "cxgb4: use pgprot_writecombine() on powerpc\n\nCommit fe3cc0d99de6a9bf99b6c279a8afb5833888c1f7 (\"powerpc: Add\npgprot_writecombine\") in benh\u0027s tree exposes the pgprot_writecombine()\nAPI to drivers on powerpc. cxgb4 has an open-coded version of the same,\nso use the common API now that it\u0027s available.\n\nSigned-off-by: Nishanth Aravamudan \u003cnacc@us.ibm.com\u003e\nCc: Steve Wise \u003cswise@opengridcomputing.com\u003e\nCc: Anton Blanchard \u003canton@samba.org\u003e\nAcked-by: Steve Wise \u003cswise@opengridcomputing.com\u003e\nSigned-off-by: Benjamin Herrenschmidt \u003cbenh@kernel.crashing.org\u003e\n"
    },
    {
      "commit": "3d96c74d8983b16bc7ecb196e61a2173fcc3f09f",
      "tree": "3ecb598a9e24e916854e43f7f0ce5016ebebc22e",
      "parents": [
        "6204b47ec4394f7e472885c8d05d9cda96d97a25"
      ],
      "author": {
        "name": "Michał Mirosław",
        "email": "mirq-linux@rere.qmqm.pl",
        "time": "Tue Apr 19 00:43:20 2011 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Apr 20 01:30:42 2011 -0700"
      },
      "message": "net: infiniband/ulp/ipoib: convert to hw_features\n\nSigned-off-by: Michał Mirosław \u003cmirq-linux@rere.qmqm.pl\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "dd6f6d024906b8f05a0832c78c16a1e818958321",
      "tree": "4f01ca0ce3511e579a661e0fdffb53d502872264",
      "parents": [
        "8727bfaa8a723009e9c6eb1bb57b90ebdb0a4126"
      ],
      "author": {
        "name": "Michał Mirosław",
        "email": "mirq-linux@rere.qmqm.pl",
        "time": "Tue Apr 19 00:43:20 2011 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Apr 20 01:30:41 2011 -0700"
      },
      "message": "net: infiniband/hw/nes: convert to hw_features\n\nSigned-off-by: Michał Mirosław \u003cmirq-linux@rere.qmqm.pl\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "25985edcedea6396277003854657b5f3cb31a628",
      "tree": "f026e810210a2ee7290caeb737c23cb6472b7c38",
      "parents": [
        "6aba74f2791287ec407e0f92487a725a25908067"
      ],
      "author": {
        "name": "Lucas De Marchi",
        "email": "lucas.demarchi@profusion.mobi",
        "time": "Wed Mar 30 22:57:33 2011 -0300"
      },
      "committer": {
        "name": "Lucas De Marchi",
        "email": "lucas.demarchi@profusion.mobi",
        "time": "Thu Mar 31 11:26:23 2011 -0300"
      },
      "message": "Fix common misspellings\n\nFixes generated by \u0027codespell\u0027 and manually reviewed.\n\nSigned-off-by: Lucas De Marchi \u003clucas.demarchi@profusion.mobi\u003e\n"
    },
    {
      "commit": "dc50eddb2f3a0dff365f093b2a93fb4ab4dd4389",
      "tree": "314a2ec5770b18c20a11066889342a48f46ecea0",
      "parents": [
        "9f34217c846a96dea03f4418e2f27423658d3542",
        "cf55bb2439d2a7080fae6edf84919fd81f891574"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Mar 25 21:06:37 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Mar 25 21:06:37 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/nes: Fix test of uninitialized netdev\n"
    },
    {
      "commit": "00a2470546dd8427325636a711a42c934135dbf5",
      "tree": "9567002c1ae07a918ccf11ec2a72c6e4831cb535",
      "parents": [
        "5aafdea448fb86412a6f8e46df518c1545d32436",
        "6df59a84eccd4cad7fcefda3e0c5e55239a3b2dd"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Mar 25 21:02:22 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Mar 25 21:02:22 2011 -0700"
      },
      "message": "Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-2.6\n\n* git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-2.6: (56 commits)\n  route: Take the right src and dst addresses in ip_route_newports\n  ipv4: Fix nexthop caching wrt. scoping.\n  ipv4: Invalidate nexthop cache nh_saddr more correctly.\n  net: fix pch_gbe section mismatch warning\n  ipv4: fix fib metrics\n  mlx4_en: Removing HW info from ethtool -i report.\n  net_sched: fix THROTTLED/RUNNING race\n  drivers/net/a2065.c: Convert release_resource to release_region/release_mem_region\n  drivers/net/ariadne.c: Convert release_resource to release_region/release_mem_region\n  bonding: fix rx_handler locking\n  myri10ge: fix rmmod crash\n  mlx4_en: updated driver version to 1.5.4.1\n  mlx4_en: Using blue flame support\n  mlx4_core: reserve UARs for userspace consumers\n  mlx4_core: maintain available field in bitmap allocator\n  mlx4: Add blue flame support for kernel consumers\n  mlx4_en: Enabling new steering\n  mlx4: Add support for promiscuous mode in the new steering model.\n  mlx4: generalization of multicast steering.\n  mlx4_en: Reporting HW revision in ethtool -i\n  ...\n"
    },
    {
      "commit": "cf55bb2439d2a7080fae6edf84919fd81f891574",
      "tree": "1f9c3f01fb4cf2a6192e4dfa714ce001f7c9b2f1",
      "parents": [
        "6c5103890057b1bb781b26b7aae38d33e4c517d8"
      ],
      "author": {
        "name": "Roland Dreier",
        "email": "roland@purestorage.com",
        "time": "Thu Mar 24 17:13:20 2011 -0700"
      },
      "committer": {
        "name": "Roland Dreier",
        "email": "roland@purestorage.com",
        "time": "Thu Mar 24 17:18:30 2011 -0700"
      },
      "message": "RDMA/nes: Fix test of uninitialized netdev\n\nCommit 1765a575334f (\"net: make dev-\u003emaster general\") introduced a\ntest of an uninitialized netdev.  Fix the code so the intended netdev\nis tested.\n\nSigned-off-by: Roland Dreier \u003croland@purestorage.com\u003e\n"
    },
    {
      "commit": "0625bef6060fab4aab0e484130b59af5e9ac81bc",
      "tree": "2774beafe6bcab689ab5da5413726d8f8f606241",
      "parents": [
        "a6a1d6485e77f28c11cdf943a3ed2a3fd83ac727",
        "ba82638247c10cfda32268c894f78f8124f54084"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Mar 24 07:59:46 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Mar 24 07:59:46 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  IB: Increase DMA max_segment_size on Mellanox hardware\n  IB/mad: Improve an error message so error code is included\n  RDMA/nes: Don\u0027t print success message at level KERN_ERR\n  RDMA/addr: Fix return of uninitialized ret value\n  IB/srp: try to use larger FMR sizes to cover our mappings\n  IB/srp: add support for indirect tables that don\u0027t fit in SRP_CMD\n  IB/srp: rework mapping engine to use multiple FMR entries\n  IB/srp: allow sg_tablesize to be set for each target\n  IB/srp: move IB CM setup completion into its own function\n  IB/srp: always avoid non-zero offsets into an FMR\n"
    },
    {
      "commit": "0345584e0b8be3735a950d17c7e463db20c6ce27",
      "tree": "f49fd3824c1f3b620d456c40539f9b1b88832b69",
      "parents": [
        "725c89997e03d71b09ea3c17c997da0712b9d835"
      ],
      "author": {
        "name": "Yevgeny Petrilin",
        "email": "yevgenyp@mellanox.co.il",
        "time": "Tue Mar 22 22:38:17 2011 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Mar 23 12:24:21 2011 -0700"
      },
      "message": "mlx4: generalization of multicast steering.\n\nThe same packet steering mechanism would be used both for IB and Ethernet,\nBoth multicasts and unicasts.\nThis commit prepares the general infrastructure for this.\n\nSigned-off-by: Yevgeny Petrilin \u003cyevgenyp@mellanox.co.il\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "725c89997e03d71b09ea3c17c997da0712b9d835",
      "tree": "d141987aec9ae90d43e3f44e3facee921ec6f526",
      "parents": [
        "14c07b1358ede1664652bb9b28d9ace5fe6f7f92"
      ],
      "author": {
        "name": "Yevgeny Petrilin",
        "email": "yevgenyp@mellanox.co.il",
        "time": "Tue Mar 22 22:38:07 2011 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Mar 23 12:24:20 2011 -0700"
      },
      "message": "mlx4_en: Reporting HW revision in ethtool -i\n\nHW revision is derived from device ID and rev id.\n\nSigned-off-by: Eugenia Emantayev \u003ceugenia@mellanox.co.il\u003e\nSigned-off-by: Yevgeny Petrilin \u003cyevgenyp@mellanox.co.il\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "ba82638247c10cfda32268c894f78f8124f54084",
      "tree": "ca46805a5343218fd7445c08a1025c74c5bfa6ac",
      "parents": [
        "7f9e5c48c1078507747434d4c182ab10925bf98a",
        "748bfd9c1ded8419e7fdba4ca6f0c1dc1642df63",
        "071c7783479ac3beb09a21e74305a4f6af1e68d6"
      ],
      "author": {
        "name": "Roland Dreier",
        "email": "roland@purestorage.com",
        "time": "Wed Mar 23 11:13:37 2011 -0700"
      },
      "committer": {
        "name": "Roland Dreier",
        "email": "roland@purestorage.com",
        "time": "Wed Mar 23 11:13:37 2011 -0700"
      },
      "message": "Merge branches \u0027misc\u0027, \u0027nes\u0027 and \u0027srp\u0027 into for-next\n"
    },
    {
      "commit": "7f9e5c48c1078507747434d4c182ab10925bf98a",
      "tree": "7be46b01df63e36cee9f17ec6bf9b0910be321c2",
      "parents": [
        "1eba843dd7678b9033a0d1ccff21c21b857de77b"
      ],
      "author": {
        "name": "David Dillow",
        "email": "dillowda@ornl.gov",
        "time": "Mon Jan 17 02:09:44 2011 +0000"
      },
      "committer": {
        "name": "Roland Dreier",
        "email": "roland@purestorage.com",
        "time": "Tue Mar 22 09:39:18 2011 -0700"
      },
      "message": "IB: Increase DMA max_segment_size on Mellanox hardware\n\nBy default, each device is assumed to be able only handle 64 KB chunks\nduring DMA. By giving the segment size a larger value, the block layer\nwill coalesce more S/G entries together for SRP, allowing larger\nrequests with the same sg_tablesize setting.  The block layer is the\nonly direct user of it, though a few IOMMU drivers reference it as\nwell for their *_map_sg coalescing code. pci-gart_64 on x86, and a\nsmattering on on sparc, powerpc, and ia64.\n\nSince other IB protocols could potentially see larger segments with\nthis, let\u0027s check those:\n\n - iSER is fine, because you limit your maximum request size to 512\n   KB, so we\u0027ll never overrun the page vector in struct iser_page_vec\n   (128 entries currently). It is independent of the DMA segment size,\n   and handles multi-page segments already.\n\n - IPoIB is fine, as it maps each page individually, and doesn\u0027t use\n   ib_dma_map_sg().\n\n - RDS appears to do the right thing and has no dependencies on DMA\n   segment size, but I don\u0027t claim to have done a complete audit.\n\n - NFSoRDMA and 9p are OK -- they do not use ib_dma_map_sg(), so they\n   doesn\u0027t care about the coalescing.\n\n - Lustre\u0027s ko2iblnd does not care about coalescing -- it properly\n   walks the returned sg list.\n\nThis patch ups the value on Mellanox hardware to 1 GB, which matches\nreported firmware limits on mlx4.\n\nSigned-off-by: David Dillow \u003cdillowda@ornl.gov\u003e\nSigned-off-by: Roland Dreier \u003croland@purestorage.com\u003e\n"
    },
    {
      "commit": "071c7783479ac3beb09a21e74305a4f6af1e68d6",
      "tree": "73f6aa346a98a9405f9e3ad666baee4344f40c32",
      "parents": [
        "7b7adc4a016a1decb806eb71ecab98721fa7f146",
        "be8b981453a4904399cb090c1660618e250092d8"
      ],
      "author": {
        "name": "Roland Dreier",
        "email": "roland@purestorage.com",
        "time": "Mon Mar 21 11:52:00 2011 -0700"
      },
      "committer": {
        "name": "Roland Dreier",
        "email": "roland@purestorage.com",
        "time": "Mon Mar 21 11:52:00 2011 -0700"
      },
      "message": "Merge branch \u0027external-indirect\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/dad/srp-initiator into srp\n"
    },
    {
      "commit": "1eba843dd7678b9033a0d1ccff21c21b857de77b",
      "tree": "f4195735d983f368587d5b319279ed2f75a4d19f",
      "parents": [
        "1bdd6384c2b43cac9be8d6f2c298bcf39f50cd07"
      ],
      "author": {
        "name": "Michael Heinz",
        "email": "mheinz@qlogic.com",
        "time": "Fri Feb 11 21:44:30 2011 +0000"
      },
      "committer": {
        "name": "Roland Dreier",
        "email": "roland@purestorage.com",
        "time": "Fri Mar 18 09:42:20 2011 -0700"
      },
      "message": "IB/mad: Improve an error message so error code is included\n\nSigned-off-by: Michael Heinz \u003cmichael.heinz@qlogic.com\u003e\nSigned-off-by: Roland Dreier \u003croland@purestorage.com\u003e\n"
    },
    {
      "commit": "748bfd9c1ded8419e7fdba4ca6f0c1dc1642df63",
      "tree": "d17a63f9f3b5d65e9d3dff164ce08d79da62a388",
      "parents": [
        "7b7adc4a016a1decb806eb71ecab98721fa7f146"
      ],
      "author": {
        "name": "Roland Dreier",
        "email": "roland@purestorage.com",
        "time": "Fri Mar 18 08:52:30 2011 -0700"
      },
      "committer": {
        "name": "Roland Dreier",
        "email": "roland@purestorage.com",
        "time": "Fri Mar 18 08:52:30 2011 -0700"
      },
      "message": "RDMA/nes: Don\u0027t print success message at level KERN_ERR\n\nThere\u0027s no reason to print \"NetEffect RNIC driver successfully loaded\" \nat level KERN_ERR (where it will uglify the console on a quiet boot).\nChange it to KERN_INFO.\n\nSigned-off-by: Roland Dreier \u003croland@purestorage.com\u003e\n\n"
    },
    {
      "commit": "ec0afc9311adcfb10b90e547c23250f63939f990",
      "tree": "2093d2668898a8a03f30acbfd5568e65b8c086b9",
      "parents": [
        "804f18536984939622ddca60ab6b25743e0ec68d",
        "776e58ea3d3735f85678155398241d2513afa67a"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Mar 17 18:40:35 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Mar 17 18:40:35 2011 -0700"
      },
      "message": "Merge branch \u0027kvm-updates/2.6.39\u0027 of git://git.kernel.org/pub/scm/virt/kvm/kvm\n\n* \u0027kvm-updates/2.6.39\u0027 of git://git.kernel.org/pub/scm/virt/kvm/kvm: (55 commits)\n  KVM: unbreak userspace that does not sets tss address\n  KVM: MMU: cleanup pte write path\n  KVM: MMU: introduce a common function to get no-dirty-logged slot\n  KVM: fix rcu usage in init_rmode_* functions\n  KVM: fix kvmclock regression due to missing clock update\n  KVM: emulator: Fix permission checking in io permission bitmap\n  KVM: emulator: Fix io permission checking for 64bit guest\n  KVM: SVM: Load %gs earlier if CONFIG_X86_32_LAZY_GS\u003dn\n  KVM: x86: Remove useless regs_page pointer from kvm_lapic\n  KVM: improve comment on rcu use in irqfd_deassign\n  KVM: MMU: remove unused macros\n  KVM: MMU: cleanup page alloc and free\n  KVM: MMU: do not record gfn in kvm_mmu_pte_write\n  KVM: MMU: move mmu pages calculated out of mmu lock\n  KVM: MMU: set spte accessed bit properly\n  KVM: MMU: fix kvm_mmu_slot_remove_write_access dropping intermediate W bits\n  KVM: Start lock documentation\n  KVM: better readability of efer_reserved_bits\n  KVM: Clear async page fault hash after switching to real mode\n  KVM: VMX: Initialize vm86 TSS only once.\n  ...\n"
    },
    {
      "commit": "c55d267de274d308927b60c3e740c1a826832317",
      "tree": "21b53a8c725d9f9650f60d94b349459d5b8dae10",
      "parents": [
        "61ef46fd45c3c62dc7c880a45dd2aa841b9af8fb",
        "bc898c97f7ba24def788d9f80786cf028a197122"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Mar 17 17:54:40 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Mar 17 17:54:40 2011 -0700"
      },
      "message": "Merge git://git.kernel.org/pub/scm/linux/kernel/git/jejb/scsi-misc-2.6\n\n* git://git.kernel.org/pub/scm/linux/kernel/git/jejb/scsi-misc-2.6: (170 commits)\n  [SCSI] scsi_dh_rdac: Add MD36xxf into device list\n  [SCSI] scsi_debug: add consecutive medium errors\n  [SCSI] libsas: fix ata list corruption issue\n  [SCSI] hpsa: export resettable host attribute\n  [SCSI] hpsa: move device attributes to avoid forward declarations\n  [SCSI] scsi_debug: Logical Block Provisioning (SBC3r26)\n  [SCSI] sd: Logical Block Provisioning update\n  [SCSI] Include protection operation in SCSI command trace\n  [SCSI] hpsa: fix incorrect PCI IDs and add two new ones (2nd try)\n  [SCSI] target: Fix volume size misreporting for volumes \u003e 2TB\n  [SCSI] bnx2fc: Broadcom FCoE offload driver\n  [SCSI] fcoe: fix broken fcoe interface reset\n  [SCSI] fcoe: precedence bug in fcoe_filter_frames()\n  [SCSI] libfcoe: Remove stale fcoe-netdev entries\n  [SCSI] libfcoe: Move FCOE_MTU definition from fcoe.h to libfcoe.h\n  [SCSI] libfc: introduce __fc_fill_fc_hdr that accepts fc_hdr as an argument\n  [SCSI] fcoe, libfc: initialize EM anchors list and then update npiv EMs\n  [SCSI] Revert \"[SCSI] libfc: fix exchange being deleted when the abort itself is timed out\"\n  [SCSI] libfc: Fixing a memory leak when destroying an interface\n  [SCSI] megaraid_sas: Version and Changelog update\n  ...\n\nFix up trivial conflicts due to whitespace differences in\ndrivers/scsi/libsas/{sas_ata.c,sas_scsi_host.c}\n"
    },
    {
      "commit": "1bdd6384c2b43cac9be8d6f2c298bcf39f50cd07",
      "tree": "13f142bfd526a8682167e0bc43e1472ee9a08ded",
      "parents": [
        "7b7adc4a016a1decb806eb71ecab98721fa7f146"
      ],
      "author": {
        "name": "Sean Hefty",
        "email": "sean.hefty@intel.com",
        "time": "Thu Mar 17 23:35:39 2011 +0000"
      },
      "committer": {
        "name": "Roland Dreier",
        "email": "roland@purestorage.com",
        "time": "Thu Mar 17 17:00:19 2011 -0700"
      },
      "message": "RDMA/addr: Fix return of uninitialized ret value\n\nCommit b23dd4fe42b4 (\"ipv4: Make output route lookup return rtable\ndirectly\") resulted in leaving ret uninitialized, where it may later\nbe returned.\n\nSigned-off-by: Sean Hefty \u003csean.hefty@intel.com\u003e\nSigned-off-by: Roland Dreier \u003croland@purestorage.com\u003e\n"
    },
    {
      "commit": "0014bd990e69063b0fb78940b35439d7980ce3ee",
      "tree": "56d4576cc07954eb304abaf602aba44a6aa2a4f1",
      "parents": [
        "91c9c3eda4f3066980d13a6907ef84f3a99364bd"
      ],
      "author": {
        "name": "Huang Ying",
        "email": "ying.huang@intel.com",
        "time": "Sun Jan 30 11:15:47 2011 +0800"
      },
      "committer": {
        "name": "Marcelo Tosatti",
        "email": "mtosatti@redhat.com",
        "time": "Thu Mar 17 13:08:27 2011 -0300"
      },
      "message": "mm: export __get_user_pages\n\nIn most cases, get_user_pages and get_user_pages_fast should be used\nto pin user pages in memory.  But sometimes, some special flags except\nFOLL_GET, FOLL_WRITE and FOLL_FORCE are needed, for example in\nfollowing patch, KVM needs FOLL_HWPOISON.  To support these users,\n__get_user_pages is exported directly.\n\nThere are some symbol name conflicts in infiniband driver, fixed them too.\n\nSigned-off-by: Huang Ying \u003cying.huang@intel.com\u003e\nCC: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nCC: Michel Lespinasse \u003cwalken@google.com\u003e\nCC: Roland Dreier \u003croland@kernel.org\u003e\nCC: Ralph Campbell \u003cinfinipath@qlogic.com\u003e\nSigned-off-by: Marcelo Tosatti \u003cmtosatti@redhat.com\u003e\n"
    },
    {
      "commit": "7a6362800cb7d1d618a697a650c7aaed3eb39320",
      "tree": "087f9bc6c13ef1fad4b392c5cf9325cd28fa8523",
      "parents": [
        "6445ced8670f37cfc2c5e24a9de9b413dbfc788d",
        "ceda86a108671294052cbf51660097b6534672f5"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Mar 16 16:29:25 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Mar 16 16:29:25 2011 -0700"
      },
      "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: (1480 commits)\n  bonding: enable netpoll without checking link status\n  xfrm: Refcount destination entry on xfrm_lookup\n  net: introduce rx_handler results and logic around that\n  bonding: get rid of IFF_SLAVE_INACTIVE netdev-\u003epriv_flag\n  bonding: wrap slave state work\n  net: get rid of multiple bond-related netdevice-\u003epriv_flags\n  bonding: register slave pointer for rx_handler\n  be2net: Bump up the version number\n  be2net: Copyright notice change. Update to Emulex instead of ServerEngines\n  e1000e: fix kconfig for crc32 dependency\n  netfilter ebtables: fix xt_AUDIT to work with ebtables\n  xen network backend driver\n  bonding: Improve syslog message at device creation time\n  bonding: Call netif_carrier_off after register_netdevice\n  bonding: Incorrect TX queue offset\n  net_sched: fix ip_tos2prio\n  xfrm: fix __xfrm_route_forward()\n  be2net: Fix UDP packet detected status in RX compl\n  Phonet: fix aligned-mode pipe socket buffer header reserve\n  netxen: support for GbE port settings\n  ...\n\nFix up conflicts in drivers/staging/brcm80211/brcmsmac/wl_mac80211.c\nwith the staging updates.\n"
    },
    {
      "commit": "be8b981453a4904399cb090c1660618e250092d8",
      "tree": "74def65115c67e7713fb5ca0a90d50b581abaa73",
      "parents": [
        "c07d424d6118d528ef71b22b7424bfc359c307a5"
      ],
      "author": {
        "name": "David Dillow",
        "email": "dillowda@ornl.gov",
        "time": "Tue Jan 18 21:58:09 2011 -0500"
      },
      "committer": {
        "name": "David Dillow",
        "email": "dillowda@ornl.gov",
        "time": "Tue Mar 15 19:41:30 2011 -0400"
      },
      "message": "IB/srp: try to use larger FMR sizes to cover our mappings\n\nNow that we can get larger SG lists, we can take advantage of HCAs that\nallow us to use larger FMR sizes. In many cases, we can use up to 512\nentries, so start there and work our way down.\n\nSigned-off-by: David Dillow \u003cdillowda@ornl.gov\u003e\n"
    },
    {
      "commit": "c07d424d6118d528ef71b22b7424bfc359c307a5",
      "tree": "1d61da8aea0fa80c2c7bc13b03d15ddb470bcfa6",
      "parents": [
        "8f26c9ff9cd0317ad867bce972f69e0c6c2cbe3c"
      ],
      "author": {
        "name": "David Dillow",
        "email": "dillowda@ornl.gov",
        "time": "Sun Jan 16 13:57:10 2011 -0500"
      },
      "committer": {
        "name": "David Dillow",
        "email": "dillowda@ornl.gov",
        "time": "Tue Mar 15 19:37:23 2011 -0400"
      },
      "message": "IB/srp: add support for indirect tables that don\u0027t fit in SRP_CMD\n\nThis allows us to guarantee the ability to submit up to 8 MB requests\nbased on the current value of SCSI_MAX_SG_CHAIN_SEGMENTS. While FMR will\nusually condense the requests into 8 SG entries, it is imperative that\nthe target support external tables in case the FMR mapping fails or is\nnot supported.\n\nWe add a safety valve to allow targets without the needed support to\nreap the benefits of the large tables, but fail in a manner that lets\nthe user know that the data didn\u0027t make it to the device. The user must\nadd \"allow_ext_sg\u003d1\" to the target parameters to indicate that the\ntarget has the needed support.\n\nIf indirect_sg_entries is not specified in the modules options, then\nthe sg_tablesize for the target will default to cmd_sg_entries unless\noverridden by the target options.\n\nSigned-off-by: David Dillow \u003cdillowda@ornl.gov\u003e\n"
    },
    {
      "commit": "8f26c9ff9cd0317ad867bce972f69e0c6c2cbe3c",
      "tree": "e130e878b4e13cbac4892011cc18aa8fef5257fb",
      "parents": [
        "4924864404d0ce2c32a6d20b27b5b6fcb31e481d"
      ],
      "author": {
        "name": "David Dillow",
        "email": "dillowda@ornl.gov",
        "time": "Fri Jan 14 19:45:50 2011 -0500"
      },
      "committer": {
        "name": "David Dillow",
        "email": "dillowda@ornl.gov",
        "time": "Tue Mar 15 19:35:16 2011 -0400"
      },
      "message": "IB/srp: rework mapping engine to use multiple FMR entries\n\nInstead of forcing all of the S/G entries to fit in one FMR, and falling\nback to indirect descriptors if that fails, allow the use of as many\nFMRs as needed to map the request. This lays the groundwork for allowing\nindirect descriptor tables that are larger than can fit in the command\nIU, but should marginally improve performance now by reducing the number\nof indirect descriptors needed.\n\nWe increase the minimum page size for the FMR pool to 4K, as larger\npages help increase the coverage of each FMR, and it is rare that the\nkernel would send down a request with scattered 512 byte fragments.\n\nThis patch also move some of the target initialization code afte the\nparsing of options, to keep it together with the new code that needs to\nallocate memory based on the options given.\n\nSigned-off-by: David Dillow \u003cdillowda@ornl.gov\u003e\n"
    },
    {
      "commit": "4924864404d0ce2c32a6d20b27b5b6fcb31e481d",
      "tree": "2157ed7ed90b1fddf4013c560467082374d7c688",
      "parents": [
        "961e0be89a5120a1409ebc525cca6f603615a8a8"
      ],
      "author": {
        "name": "David Dillow",
        "email": "dillowda@ornl.gov",
        "time": "Fri Jan 14 18:23:24 2011 -0500"
      },
      "committer": {
        "name": "David Dillow",
        "email": "dillowda@ornl.gov",
        "time": "Tue Mar 15 19:35:05 2011 -0400"
      },
      "message": "IB/srp: allow sg_tablesize to be set for each target\n\nDifferent configurations of target software allow differing max sizes of\nthe command IU. Allowing this to be changed per-target allows all\ntargets on an initiator to get an optimal setting.\n\nWe deprecate srp_sg_tablesize and replace it with cmd_sg_entries in\npreparation for allowing more indirect descriptors than can fit in the\nIU.\n\nSigned-off-by: David Dillow \u003cdillowda@ornl.gov\u003e\n"
    },
    {
      "commit": "961e0be89a5120a1409ebc525cca6f603615a8a8",
      "tree": "4a56b84ef3a6aee8b0c23bdd4c8bf92f3e1b7110",
      "parents": [
        "8c4037b501acd2ec3abc7925e66af8af40a2da9d"
      ],
      "author": {
        "name": "David Dillow",
        "email": "dillowda@ornl.gov",
        "time": "Fri Jan 14 17:32:07 2011 -0500"
      },
      "committer": {
        "name": "David Dillow",
        "email": "dillowda@ornl.gov",
        "time": "Tue Mar 15 19:34:48 2011 -0400"
      },
      "message": "IB/srp: move IB CM setup completion into its own function\n\nThis is to clean up prior to further changes.\n\nSigned-off-by: David Dillow \u003cdillowda@ornl.gov\u003e\n"
    },
    {
      "commit": "8c4037b501acd2ec3abc7925e66af8af40a2da9d",
      "tree": "49c39371ceef4a32c760a26edcf62f920e4f80f7",
      "parents": [
        "521cb40b0c44418a4fd36dc633f575813d59a43d"
      ],
      "author": {
        "name": "David Dillow",
        "email": "dillowda@ornl.gov",
        "time": "Fri Jan 14 17:02:23 2011 -0500"
      },
      "committer": {
        "name": "David Dillow",
        "email": "dillowda@ornl.gov",
        "time": "Tue Mar 15 19:34:28 2011 -0400"
      },
      "message": "IB/srp: always avoid non-zero offsets into an FMR\n\nIt is unclear exactly how this code works around Mellanox SRP targets,\nor if the problem is on the target side or in the HCA itself. In an\nabundance of caution, we should always enable the workaround.\n\nSigned-off-by: David Dillow \u003cdillowda@ornl.gov\u003e\n"
    },
    {
      "commit": "043332cf28368e38fdfcee1a4827025e8bdbc540",
      "tree": "fb179157040c52ac2c8184f52e28de65342a6267",
      "parents": [
        "a396d43a35fb91f2d4920a4700d25ecc5ec92404",
        "db5d040d7b2d15539d2c84932f93621d9bd482f7",
        "2a543904ddcb463db9d56d1efcb2f80884ea55f3",
        "36b87b419c7616a8aaa9889566d9a9b50689dee1"
      ],
      "author": {
        "name": "Roland Dreier",
        "email": "roland@purestorage.com",
        "time": "Tue Mar 15 10:58:04 2011 -0700"
      },
      "committer": {
        "name": "Roland Dreier",
        "email": "roland@purestorage.com",
        "time": "Tue Mar 15 10:58:04 2011 -0700"
      },
      "message": "Merge branches \u0027cma\u0027, \u0027cxgb4\u0027, \u0027ipath\u0027 and \u0027qib\u0027 into for-next\n"
    },
    {
      "commit": "a396d43a35fb91f2d4920a4700d25ecc5ec92404",
      "tree": "5658f67fe3b18c51c51340b777cbb0fd803376ba",
      "parents": [
        "8d8ac86564b616bc17054cbb6e727588da64c86b"
      ],
      "author": {
        "name": "Sean Hefty",
        "email": "sean.hefty@intel.com",
        "time": "Wed Feb 23 09:05:39 2011 -0800"
      },
      "committer": {
        "name": "Roland Dreier",
        "email": "roland@purestorage.com",
        "time": "Tue Mar 15 10:57:34 2011 -0700"
      },
      "message": "RDMA/cma: Replace global lock in rdma_destroy_id() with id-specific one\n\nrdma_destroy_id currently uses the global rdma cm \u0027lock\u0027 to test if an\nrdma_cm_id has been bound to a device.  This prevents an active\naddress resolution callback handler from assigning a device to the\nrdma_cm_id after rdma_destroy_id checks for one.\n\nInstead, we can replace the use of the global lock around the check to\nthe rdma_cm_id device pointer by setting the id state to destroying,\nthen flushing all active callbacks.  The latter is accomplished by\nacquiring and releasing the handler_mutex.  Any active handler will\ncomplete first, and any newly scheduled handlers will find the\nrdma_cm_id in an invalid state.\n\nIn addition to optimizing the current locking scheme, the use of the\nrdma_cm_id mutex is a more intuitive synchronization mechanism than\nthat of the global lock.  These changes are based on feedback from\nDoug Ledford \u003cdledford@redhat.com\u003e while he was trying to debug a\ncrash in the rdma cm destroy path.\n\nSigned-off-by: Sean Hefty \u003csean.hefty@intel.com\u003e\nSigned-off-by: Roland Dreier \u003croland@purestorage.com\u003e\n"
    },
    {
      "commit": "8d8ac86564b616bc17054cbb6e727588da64c86b",
      "tree": "f17f09108b2fa639d5248120409e2fe562069545",
      "parents": [
        "29963437a48475036353b95ab142bf199adb909e"
      ],
      "author": {
        "name": "Sean Hefty",
        "email": "sean.hefty@intel.com",
        "time": "Thu Mar 03 23:31:06 2011 +0000"
      },
      "committer": {
        "name": "Roland Dreier",
        "email": "roland@purestorage.com",
        "time": "Tue Mar 15 10:56:12 2011 -0700"
      },
      "message": "IB/cm: Cancel pending LAP message when exiting IB_CM_ESTABLISH state\n\nThis problem was reported by Moni Shoua \u003cmonis@mellanox.com\u003e and Amir\nVadai \u003camirv@mellanox.com\u003e:\n\n\tWhen destroying a cm_id from a context of a work queue and if\n\tthe lap_state of this cm_id is IB_CM_LAP_SENT, we need to\n\trelease the reference of this id that was taken upon the send\n\tof the LAP message.  Otherwise, if the expected APR message\n\tgets lost, it is only after a long time that the reference\n\twill be released, while during that the work handler thread is\n\tnot available to process other things.\n\nIt turns out that we need to cancel any pending LAP messages whenever\nwe transition out of the IB_CM_ESTABLISH state.  This occurs when\ndisconnecting - either sending or receiving a DREQ.  It can also\nhappen in a corner case where we receive a REJ message after sending\nan RTU, followed by a LAP.  Add checks and cancel any outstanding LAP\nmessages in these three cases.\n\nCanceling the LAP when sending a DREQ fixes the destroy problem\nreported by Moni.  When a cm_id is destroyed in the IB_CM_ESTABLISHED\nstate, it sends a DREQ to the remote side to notify the peer that the\nconnection is going away.\n\nSigned-off-by: Sean Hefty \u003csean.hefty@intel.com\u003e\nSigned-off-by: Roland Dreier \u003croland@purestorage.com\u003e\n"
    },
    {
      "commit": "29963437a48475036353b95ab142bf199adb909e",
      "tree": "23564281f4d60b7a9cdbaab5e1babe3f67cc8ca8",
      "parents": [
        "25ae21a10112875763c18b385624df713a288a05"
      ],
      "author": {
        "name": "Sean Hefty",
        "email": "sean.hefty@intel.com",
        "time": "Wed Feb 23 08:17:40 2011 -0800"
      },
      "committer": {
        "name": "Roland Dreier",
        "email": "roland@purestorage.com",
        "time": "Tue Mar 15 10:56:12 2011 -0700"
      },
      "message": "IB/cm: Bump reference count on cm_id before invoking callback\n\nWhen processing a SIDR REQ, the ib_cm allocates a new cm_id.  The\nrefcount of the cm_id is initialized to 1.  However, cm_process_work\nwill decrement the refcount after invoking all callbacks.  The result\nis that the cm_id will end up with refcount set to 0 by the end of the\nsidr req handler.\n\nIf a user tries to destroy the cm_id, the destruction will proceed,\nunder the incorrect assumption that no other threads are referencing\nthe cm_id.  This can lead to a crash when the cm callback thread tries\nto access the cm_id.\n\nThis problem was noticed as part of a larger investigation with kernel\ncrashes in the rdma_cm when running on a real time OS.\n\nSigned-off-by: Sean Hefty \u003csean.hefty@intel.com\u003e\nAcked-by: Doug Ledford \u003cdledford@redhat.com\u003e\nCc: \u003cstable@kernel.org\u003e\nSigned-off-by: Roland Dreier \u003croland@purestorage.com\u003e\n"
    },
    {
      "commit": "25ae21a10112875763c18b385624df713a288a05",
      "tree": "e05138aae6bd98f055ce2be0437922cee8e9f17e",
      "parents": [
        "a5bbef0b2deb7b943f095181309ecc9e1fc91c0f"
      ],
      "author": {
        "name": "Sean Hefty",
        "email": "sean.hefty@intel.com",
        "time": "Wed Feb 23 08:11:32 2011 -0800"
      },
      "committer": {
        "name": "Roland Dreier",
        "email": "roland@purestorage.com",
        "time": "Tue Mar 15 10:00:28 2011 -0700"
      },
      "message": "RDMA/cma: Fix crash in request handlers\n\nDoug Ledford and Red Hat reported a crash when running the rdma_cm on\na real-time OS.  The crash has the following call trace:\n\n    cm_process_work\n       cma_req_handler\n          cma_disable_callback\n          rdma_create_id\n             kzalloc\n             init_completion\n          cma_get_net_info\n          cma_save_net_info\n          cma_any_addr\n             cma_zero_addr\n          rdma_translate_ip\n             rdma_copy_addr\n          cma_acquire_dev\n             rdma_addr_get_sgid\n             ib_find_cached_gid\n             cma_attach_to_dev\n          ucma_event_handler\n             kzalloc\n             ib_copy_ah_attr_to_user\n          cma_comp\n\n[ preempted ]\n\n    cma_write\n        copy_from_user\n        ucma_destroy_id\n           copy_from_user\n           _ucma_find_context\n           ucma_put_ctx\n           ucma_free_ctx\n              rdma_destroy_id\n                 cma_exch\n                 cma_cancel_operation\n                 rdma_node_get_transport\n\n        rt_mutex_slowunlock\n        bad_area_nosemaphore\n        oops_enter\n\nThey were able to reproduce the crash multiple times with the\nfollowing details:\n\n    Crash seems to always happen on the:\n            mutex_unlock(\u0026conn_id-\u003ehandler_mutex);\n    as conn_id looks to have been freed during this code path.\n\nAn examination of the code shows that a race exists in the request\nhandlers.  When a new connection request is received, the rdma_cm\nallocates a new connection identifier.  This identifier has a single\nreference count on it.  If a user calls rdma_destroy_id() from another\nthread after receiving a callback, rdma_destroy_id will proceed to\ndestroy the id and free the associated memory.  However, the request\nhandlers may still be in the process of running.  When control returns\nto the request handlers, they can attempt to access the newly created\nidentifiers.\n\nFix this by holding a reference on the newly created rdma_cm_id until\nthe request handler is through accessing it.\n\nSigned-off-by: Sean Hefty \u003csean.hefty@intel.com\u003e\nAcked-by: Doug Ledford \u003cdledford@redhat.com\u003e\nCc: \u003cstable@kernel.org\u003e\nSigned-off-by: Roland Dreier \u003croland@purestorage.com\u003e\n"
    },
    {
      "commit": "2a543904ddcb463db9d56d1efcb2f80884ea55f3",
      "tree": "57cdb9098e4299cc47bb21e8061b671b24d70219",
      "parents": [
        "a5bbef0b2deb7b943f095181309ecc9e1fc91c0f"
      ],
      "author": {
        "name": "Nicolas Kaiser",
        "email": "nikai@nikai.net",
        "time": "Tue Oct 26 15:47:52 2010 +0000"
      },
      "committer": {
        "name": "Roland Dreier",
        "email": "roland@purestorage.com",
        "time": "Mon Mar 14 14:25:59 2011 -0700"
      },
      "message": "IB/ipath: Don\u0027t reset disabled devices\n\nThe comment some lines above states that disabled devices must not reset.\n\nSigned-off-by: Nicolas Kaiser \u003cnikai@nikai.net\u003e\n"
    },
    {
      "commit": "36b87b419c7616a8aaa9889566d9a9b50689dee1",
      "tree": "a1509da10d80a58e2803420804ed2f1d8c780f26",
      "parents": [
        "4634b7945cf0d6a66036ad10c3d658ae4eb39fa0"
      ],
      "author": {
        "name": "Mitko Haralanov",
        "email": "mitko@qlogic.com",
        "time": "Fri Mar 04 18:53:17 2011 +0000"
      },
      "committer": {
        "name": "Roland Dreier",
        "email": "roland@purestorage.com",
        "time": "Mon Mar 14 12:11:51 2011 -0700"
      },
      "message": "IB/qib: Fix M_Key field in SubnGet and SubnGetResp MADs\n\nSet the M_Key field in SubnGet and SugnGetResp MADs based on correctly\ninterpreting the protection level specified in the M_KeyProtBits field.\n\nSigned-off-by: Mitko Haralanov \u003cmitko@qlogic.com\u003e\nSigned-off-by: Mike Marciniszyn \u003cmike.marciniszyn@qlogic.com\u003e\nSigned-off-by: Roland Dreier \u003croland@purestorage.com\u003e\n"
    },
    {
      "commit": "4634b7945cf0d6a66036ad10c3d658ae4eb39fa0",
      "tree": "55e10d1d51b6c40d5dff669bde13832c55e8a977",
      "parents": [
        "cc7fb05946fb1cd2fd0582f9e39f759e20dfeefa"
      ],
      "author": {
        "name": "Mitko Haralanov",
        "email": "mitko@qlogic.com",
        "time": "Mon Feb 28 13:39:49 2011 +0000"
      },
      "committer": {
        "name": "Roland Dreier",
        "email": "roland@purestorage.com",
        "time": "Mon Mar 14 12:10:34 2011 -0700"
      },
      "message": "IB/qib: Set default LE2 value for active cables to 0\n\nFor active and far-EQ cables use an LE2 value of 0 for improved SI.\n\nSigned-off-by: Mitko Haralanov \u003cmitko@qlogic.com\u003e\nSigned-off-by: Mike Marciniszyn \u003cmike.marciniszyn@qlogic.com\u003e\nSigned-off-by: Roland Dreier \u003croland@purestorage.com\u003e\n"
    },
    {
      "commit": "db5d040d7b2d15539d2c84932f93621d9bd482f7",
      "tree": "115c8e629b40106cc6d2dc6211a97d9c77d4bfb6",
      "parents": [
        "767fbe8151d1a7cc8a69e52e354e4220a5e804fb"
      ],
      "author": {
        "name": "Steve Wise",
        "email": "swise@opengridcomputing.com",
        "time": "Fri Mar 11 22:29:50 2011 +0000"
      },
      "committer": {
        "name": "Roland Dreier",
        "email": "roland@purestorage.com",
        "time": "Mon Mar 14 12:09:14 2011 -0700"
      },
      "message": "RDMA/cxgb4: Debugfs dump_qp() updates\n\n- Show whether the SQ is in onchip memory or not.\n- Dump both SQ and RQ QIDs.\n\nSigned-off-by: Steve Wise \u003cswise@opengridcomputing.com\u003e\nSigned-off-by: Roland Dreier \u003croland@purestorage.com\u003e\n"
    },
    {
      "commit": "767fbe8151d1a7cc8a69e52e354e4220a5e804fb",
      "tree": "805495187c3d9ffe78b23bccd82fc21ffc955c86",
      "parents": [
        "b48f3b9c10d731160f0af5c3028ad57d9c66673b"
      ],
      "author": {
        "name": "Steve Wise",
        "email": "swise@opengridcomputing.com",
        "time": "Fri Mar 11 22:30:53 2011 +0000"
      },
      "committer": {
        "name": "Roland Dreier",
        "email": "roland@purestorage.com",
        "time": "Mon Mar 14 12:09:13 2011 -0700"
      },
      "message": "RDMA/cxgb4: Dispatch FATAL event on EEH errors\n\nThis at least kicks the user mode applications that are watching for\ndevice events.\n\nSigned-off-by: Steve Wise \u003cswise@opengridcomputing.com\u003e\nSigned-off-by: Roland Dreier \u003croland@purestorage.com\u003e\n"
    },
    {
      "commit": "b48f3b9c10d731160f0af5c3028ad57d9c66673b",
      "tree": "505fbe19fa360d0a18f08af3ccdb727e801fa115",
      "parents": [
        "a9c7719800ac513b2df14e267d062ec84dc9313e"
      ],
      "author": {
        "name": "Steve Wise",
        "email": "swise@opengridcomputing.com",
        "time": "Fri Mar 11 22:30:21 2011 +0000"
      },
      "committer": {
        "name": "Roland Dreier",
        "email": "roland@purestorage.com",
        "time": "Mon Mar 14 12:09:12 2011 -0700"
      },
      "message": "RDMA/cxgb4: Use ULP_MODE_TCPDDP\n\nSet the ULP mode for initial RDMA connection setup to the proper DDP\nmode.  This avoids wasting some HW resources while in streaming mode.\n\nSigned-off-by: Steve Wise \u003cswise@opengridcomputing.com\u003e\nSigned-off-by: Roland Dreier \u003croland@purestorage.com\u003e\n"
    },
    {
      "commit": "a9c7719800ac513b2df14e267d062ec84dc9313e",
      "tree": "44ed2a27f269a126a767cde283424417f7081f20",
      "parents": [
        "ffc3f7487ff0b32500b319c770475383f6f6efab"
      ],
      "author": {
        "name": "Steve Wise",
        "email": "swise@opengridcomputing.com",
        "time": "Fri Mar 11 22:30:11 2011 +0000"
      },
      "committer": {
        "name": "Roland Dreier",
        "email": "roland@purestorage.com",
        "time": "Mon Mar 14 12:09:12 2011 -0700"
      },
      "message": "RDMA/cxgb4: Enable on-chip SQ support by default\n\nSigned-off-by: Steve Wise \u003cswise@opengridcomputing.com\u003e\nSigned-off-by: Roland Dreier \u003croland@purestorage.com\u003e\n"
    },
    {
      "commit": "ffc3f7487ff0b32500b319c770475383f6f6efab",
      "tree": "64beb59d6b0b843316a47bdae156a24893254380",
      "parents": [
        "294281373999e7fff393c04eb16092a8f00ad5aa"
      ],
      "author": {
        "name": "Steve Wise",
        "email": "swise@opengridcomputing.com",
        "time": "Fri Mar 11 22:30:42 2011 +0000"
      },
      "committer": {
        "name": "Roland Dreier",
        "email": "roland@purestorage.com",
        "time": "Mon Mar 14 12:09:11 2011 -0700"
      },
      "message": "RDMA/cxgb4: Do CIDX_INC updates every 1/16 CQ depth CQE reaps\n\nThis avoids the CIDX_INC overflow issue with T4A2 when running\nkernel RDMA applications.\n\nSigned-off-by: Steve Wise \u003cswise@opengridcomputing.com\u003e\nSigned-off-by: Roland Dreier \u003croland@purestorage.com\u003e\n"
    },
    {
      "commit": "294281373999e7fff393c04eb16092a8f00ad5aa",
      "tree": "3608fd01c734f99670f43f4cfac691da63c7a5d2",
      "parents": [
        "b52fe09e3309c3d7069cd0e5a3bdb5b4ba45e01f"
      ],
      "author": {
        "name": "Steve Wise",
        "email": "swise@opengridcomputing.com",
        "time": "Fri Mar 11 22:30:32 2011 +0000"
      },
      "committer": {
        "name": "Roland Dreier",
        "email": "roland@purestorage.com",
        "time": "Mon Mar 14 12:09:10 2011 -0700"
      },
      "message": "RDMA/cxgb4: Remove db_drop_task\n\nUnloading iw_cxgb4 can crash due to the unload code trying to use\ndb_drop_task, which is uninitialized.  So remove this dead code.\n\nSigned-off-by: Steve Wise \u003cswise@opengridcomputing.com\u003e\nSigned-off-by: Roland Dreier \u003croland@purestorage.com\u003e\n"
    },
    {
      "commit": "b52fe09e3309c3d7069cd0e5a3bdb5b4ba45e01f",
      "tree": "a8b5beeed11f6c7bbe0ee09f1607619e10a54627",
      "parents": [
        "a5bbef0b2deb7b943f095181309ecc9e1fc91c0f"
      ],
      "author": {
        "name": "Steve Wise",
        "email": "swise@opengridcomputing.com",
        "time": "Fri Mar 11 22:30:01 2011 +0000"
      },
      "committer": {
        "name": "Roland Dreier",
        "email": "roland@purestorage.com",
        "time": "Mon Mar 14 12:09:09 2011 -0700"
      },
      "message": "RDMA/cxgb4: Turn on delayed ACK\n\nSet the default to on.\n\nSigned-off-by: Steve Wise \u003cswise@opengridcomputing.com\u003e\nSigned-off-by: Roland Dreier \u003croland@purestorage.com\u003e\n"
    },
    {
      "commit": "4c9483b2fb5d2548c3cc1fe03cdd4484ceeb5d1c",
      "tree": "c29c8070012cffb38fe249cf528589a675f622b1",
      "parents": [
        "9cce96df5b76691712dba22e83ff5efe900361e1"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sat Mar 12 16:22:43 2011 -0500"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sat Mar 12 15:08:54 2011 -0800"
      },
      "message": "ipv6: Convert to use flowi6 where applicable.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "1d28f42c1bd4bb2363d88df74d0128b4da135b4a",
      "tree": "cb2e652fe79a2bc307e871bc2d3fa51cc8051e45",
      "parents": [
        "ca116922afa8cc5ad46b00c0a637b1cde5ca478a"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sat Mar 12 00:29:39 2011 -0500"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sat Mar 12 15:08:44 2011 -0800"
      },
      "message": "net: Put flowi_* prefix on AF independent members of struct flowi\n\nI intend to turn struct flowi into a union of AF specific flowi\nstructs.  There will be a common structure that each variant includes\nfirst, much like struct sock_common.\n\nThis is the first step to move in that direction.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "78fbfd8a653ca972afe479517a40661bfff6d8c3",
      "tree": "9dccc5c16bf269d53d8499064ec95a998e84c646",
      "parents": [
        "1561747ddf9d28185548687b11aae7074d6129c4"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sat Mar 12 00:00:52 2011 -0500"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sat Mar 12 15:08:42 2011 -0800"
      },
      "message": "ipv4: Create and use route lookup helpers.\n\nThe idea here is this minimizes the number of places one has to edit\nin order to make changes to how flows are defined and used.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "b23dd4fe42b455af5c6e20966b7d6959fa8352ea",
      "tree": "bf97323eae9a8d084170e573ff2c0c40bc72c3cd",
      "parents": [
        "452edd598f60522c11f7f88fdbab27eb36509d1a"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Mar 02 14:31:35 2011 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Mar 02 14:31:35 2011 -0800"
      },
      "message": "ipv4: Make output route lookup return rtable directly.\n\nInstead of on the stack.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "273447b352e69c327efdecfd6e1d6fe3edbdcd14",
      "tree": "dae1e0778ca973c25b74fd3dc9728616d6e65b73",
      "parents": [
        "5df65e5567a497a28067019b8ff08f98fb026629"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Mar 01 14:27:04 2011 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Mar 01 14:27:04 2011 -0800"
      },
      "message": "ipv4: Kill can_sleep arg to ip_route_output_flow()\n\nThis boolean state is now available in the flow flags.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "420d44daa7aa1cc847e9e527f0a27a9ce61768ca",
      "tree": "a5aab8c6b925ba3da1079b7262f7d6c504406eb8",
      "parents": [
        "abdf7e7239da270e68262728f125ea94b9b7d42d"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Mar 01 14:19:23 2011 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Mar 01 14:19:23 2011 -0800"
      },
      "message": "ipv4: Make final arg to ip_route_output_flow to be boolean \"can_sleep\"\n\nSince that is what the current vague \"flags\" argument means.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "7c53c6f89d7a6487986c51cd73ae9a9be338a8f4",
      "tree": "b1762d88f6906093be6cb80b9c8a4607d973e764",
      "parents": [
        "d8585bcd7da071f4278710f1c39e18dfe7cb0280"
      ],
      "author": {
        "name": "Mike Christie",
        "email": "michaelc@cs.wisc.edu",
        "time": "Wed Feb 16 15:04:40 2011 -0600"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@suse.de",
        "time": "Thu Feb 24 12:41:23 2011 -0500"
      },
      "message": "[SCSI] iser: export addr and port\n\nThis pactch has iser export the address and port\nof the endpoint.\n\nSigned-off-by: Mike Christie \u003cmichaelc@cs.wisc.edu\u003e\nSigned-off-by: James Bottomley \u003cJames.Bottomley@suse.de\u003e\n"
    },
    {
      "commit": "cc7fb05946fb1cd2fd0582f9e39f759e20dfeefa",
      "tree": "5b6bc0af27d0312f558f70b52ff82e17c1694e2b",
      "parents": [
        "a5bbef0b2deb7b943f095181309ecc9e1fc91c0f"
      ],
      "author": {
        "name": "Mitko Haralanov",
        "email": "mitko@qlogic.com",
        "time": "Tue Feb 22 16:56:37 2011 -0800"
      },
      "committer": {
        "name": "Roland Dreier",
        "email": "roland@purestorage.com",
        "time": "Tue Feb 22 16:56:37 2011 -0800"
      },
      "message": "IB/qib: Return correct MAD when setting link width to 255\n\nFix a bug which causes the driver to return incorrect MADs as a\nresponse to Set(PortInfo) which sets the link width to 0xFF or link\nspeed to 0xF.\n\nSigned-off-by: Mitko Haralanov \u003cmitko@qlogic.com\u003e\nSigned-off-by: Mike Marciniszyn \u003cmike.marciniszyn@qlogic.com\u003e\nSigned-off-by: Roland Dreier \u003croland@purestorage.com\u003e\n"
    },
    {
      "commit": "da935c66bacb3ed9ada984b053297f87c2dff63a",
      "tree": "46278da2b312c73f1375b830d7e5912bf23abd78",
      "parents": [
        "9435eb1cf0b76b323019cebf8d16762a50a12a19",
        "2205a6ea93fea76f88b43727fea53f3ce3790d6f"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sat Feb 19 19:17:35 2011 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sat Feb 19 19:17:35 2011 -0800"
      },
      "message": "Merge branch \u0027master\u0027 of master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6\n\nConflicts:\n\tDocumentation/feature-removal-schedule.txt\n\tdrivers/net/e1000e/netdev.c\n\tnet/xfrm/xfrm_policy.c\n"
    },
    {
      "commit": "814b0a61204d24f9fba6f7c575e6450d15ce2cf1",
      "tree": "978d0265d1387036e8285685bc0692cade005f90",
      "parents": [
        "25a54a6bb87dc966f6a3fc1f2ac6e88db1f5614c",
        "c0af2c057d7ce3f0b260f9380d187a82bb5cab28"
      ],
      "author": {
        "name": "Roland Dreier",
        "email": "roland@purestorage.com",
        "time": "Thu Feb 17 14:04:59 2011 -0800"
      },
      "committer": {
        "name": "Roland Dreier",
        "email": "roland@purestorage.com",
        "time": "Thu Feb 17 14:04:59 2011 -0800"
      },
      "message": "Merge branches \u0027nes\u0027 and \u0027qib\u0027 into for-next\n"
    },
    {
      "commit": "c0af2c057d7ce3f0b260f9380d187a82bb5cab28",
      "tree": "30b59bf396145825d5b005dcc8f6fa1abf5c2b1f",
      "parents": [
        "414ed90cee32486c50f91b28990443e0dc21c868"
      ],
      "author": {
        "name": "Mike Marciniszyn",
        "email": "mike.marciniszyn@qlogic.com",
        "time": "Wed Feb 16 15:48:25 2011 +0000"
      },
      "committer": {
        "name": "Roland Dreier",
        "email": "roland@purestorage.com",
        "time": "Thu Feb 17 14:04:50 2011 -0800"
      },
      "message": "IB/qib: Prevent double completions after a timeout or RNR error\n\nThere is a double completion associated with error handling for RC QPs.\n\nThe sequence is:\n\n - The do_rc_ack() routine fields an RNR nack and there are 0\n   rnr_retries configured on the QP.\n - qib_error_qp() stops the pending timer\n - qib_rc_send_complete() is called from sdma_complete()\n - qib_rc_send_complete() starts the timer because the msb of the psn\n   just completed says an ack is needed.\n - a bunch of flushes occur as ipoib posts WQEs to an error\u0027ed QP\n - rc_timeout() calls qib_restart_rc()\n - qib_restart_rc() calls qib_send_complete() with a\n   IB_WC_RETRY_EXC_ERR on a wqe that has already been completed in the\n   past\n\nThe fix avoids starting the timer since another packet will never\narrive.\n\nSigned-off-by: Mike Marciniszyn \u003cmike.marciniszyn@qlogic.com\u003e\nSigned-off-by: Roland Dreier \u003croland@purestorage.com\u003e\n"
    },
    {
      "commit": "1765a575334f1a232c1478accdee5c7d19f4b3e3",
      "tree": "6613f53ce9095b799048d891f0b4b6e34a479fe0",
      "parents": [
        "d59cfde2fb960b5970ccb5a38cea25d38b37a8e8"
      ],
      "author": {
        "name": "Jiri Pirko",
        "email": "jpirko@redhat.com",
        "time": "Sat Feb 12 06:48:36 2011 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun Feb 13 10:42:07 2011 -0800"
      },
      "message": "net: make dev-\u003emaster general\n\ndev-\u003emaster is now tightly connected to bonding driver. This patch makes\nthis pointer more general and ready to be used by others.\n\n - netdev_set_master() - bond specifics moved to new function\n   netdev_set_bond_master()\n - introduced netif_is_bond_slave() to check if device is a bonding slave\n\nSigned-off-by: Jiri Pirko \u003cjpirko@redhat.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "414ed90cee32486c50f91b28990443e0dc21c868",
      "tree": "bcb6fc2551b3bb230c6aa9ebf18502728f573228",
      "parents": [
        "831d52bc153971b70e64eccfbed2b232394f22f8"
      ],
      "author": {
        "name": "Mike Marciniszyn",
        "email": "mike.marciniszyn@qlogic.com",
        "time": "Thu Feb 10 14:11:28 2011 +0000"
      },
      "committer": {
        "name": "Roland Dreier",
        "email": "roland@purestorage.com",
        "time": "Thu Feb 10 11:24:08 2011 -0800"
      },
      "message": "IB/qib: Fix double add_timer()\n\nThe following panic BUG_ON occurs during qib testing:\n\n    Kernel BUG at include/linux/timer.h:82\n\n    RIP  [\u003cffffffff881f7109\u003e] :ib_qib:start_timer+0x73/0x89\n     RSP \u003cffffffff80425bd0\u003e\n     \u003c0\u003eKernel panic - not syncing: Fatal exception\n     \u003c0\u003eDumping qib trace buffer from panic\n    qib_set_lid INFO: IB0:1 got a lid: 0xf8\n    Done dumping qib trace buffer\n    BUG: warning at kernel/panic.c:137/panic() (Tainted: G\n\nThe flaw is due to a missing state test when processing responses that\nresults in an add_timer() call when the same timer is already queued.\nThis code was executing in parallel with a QP destroy on another CPU\nthat had changed the state to reset, but the missing test caused to\nresponse handling code to run on into the panic.\n\nSigned-off-by: Mike Marciniszyn \u003cmike.marciniszyn@qlogic.com\u003e\nSigned-off-by: Roland Dreier \u003croland@purestorage.com\u003e\n"
    },
    {
      "commit": "25a54a6bb87dc966f6a3fc1f2ac6e88db1f5614c",
      "tree": "5ac11304c2b46557439fd22d688e2d93bd70fce3",
      "parents": [
        "831d52bc153971b70e64eccfbed2b232394f22f8"
      ],
      "author": {
        "name": "Maciej Sosnowski",
        "email": "maciej.sosnowski@intel.com",
        "time": "Thu Feb 03 15:55:26 2011 -0800"
      },
      "committer": {
        "name": "Roland Dreier",
        "email": "roland@purestorage.com",
        "time": "Thu Feb 03 15:55:26 2011 -0800"
      },
      "message": "RDMA/nes: Don\u0027t generate async events for unregistered devices\n\nnes_port_ibevent() should not be called when the nes RDMA device is not\nregistered with the RDMA core.  Add missing checks of of_device_registered flag.\n\nSigned-off-by: Maciej Sosnowski \u003cmaciej.sosnowski@intel.com\u003e\nSigned-off-by: Roland Dreier \u003croland@purestorage.com\u003e\n"
    },
    {
      "commit": "9118626a30f8a3f58674623bebd3c34961e558af",
      "tree": "9dac3d8f95f82b84c39695a648ee3a718daba676",
      "parents": [
        "aba99437f5af7a419a82438f7fab16bb3ddd9b44",
        "e51c7b1ab05d4a6fe4d153b2769290d37e077479"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Feb 03 11:19:26 2011 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Feb 03 11:19:26 2011 -0800"
      },
      "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: Update missed conversion of flush_scheduled_work()\n  RDMA/ucma: Copy iWARP route information on queries\n  RDMA/amso1100: Fix compile warnings\n  RDMA/cxgb4: Set the correct device physical function for iWARP connections\n  RDMA/cxgb4: Limit MAXBURST EQ context field to 256B\n  IB/qib: Hold link for TX SERDES settings\n  mlx4_core: Add ConnectX-3 device IDs\n"
    },
    {
      "commit": "e51c7b1ab05d4a6fe4d153b2769290d37e077479",
      "tree": "97b3fe2f6cb216a47237b2f57f5e58ae79837b85",
      "parents": [
        "f9a4f6dcdd3f9b6d938484c2c394f39007c14f38",
        "e86f8b06f5fa884a84c22b2dcd0df37ed0a75827",
        "94788657c94169171971968c9d4b6222c5e704aa",
        "96e61fa55e86fbd10c526567aacae5b484c4b63c",
        "31dd272e8cbb32ef31a411492cc642c363bb54b9",
        "d70585f7de4b4c3725062b7ce7d492f4903e4833"
      ],
      "author": {
        "name": "Roland Dreier",
        "email": "roland@purestorage.com",
        "time": "Sat Jan 29 20:45:04 2011 -0800"
      },
      "committer": {
        "name": "Roland Dreier",
        "email": "roland@purestorage.com",
        "time": "Sat Jan 29 20:45:04 2011 -0800"
      },
      "message": "Merge branches \u0027amso1100\u0027, \u0027cma\u0027, \u0027cxgb4\u0027, \u0027misc\u0027, \u0027mlx4\u0027 and \u0027qib\u0027 into for-next\n"
    },
    {
      "commit": "96e61fa55e86fbd10c526567aacae5b484c4b63c",
      "tree": "ae95defe8cc2597352baa30e720ccb7ba21bd587",
      "parents": [
        "a25cecce88194b2edf38b8c3b1665e9318eb2d22"
      ],
      "author": {
        "name": "Tejun Heo",
        "email": "tj@kernel.org",
        "time": "Mon Jan 24 11:06:54 2011 +0000"
      },
      "committer": {
        "name": "Roland Dreier",
        "email": "roland@purestorage.com",
        "time": "Fri Jan 28 16:39:08 2011 -0800"
      },
      "message": "RDMA: Update missed conversion of flush_scheduled_work()\n\nCommit f06267104dd9 (\"RDMA: Update workqueue usage\") introduced ib_wq\nand removed the use of flush_scheduled_work(); however, during the merge\nprocess one chunk was lost in ib_sa_remove_one().  Fix it.\n\nSigned-off-by: Tejun Heo \u003ctj@kernel.org\u003e\nSigned-off-by: Roland Dreier \u003croland@purestorage.com\u003e\n"
    }
  ],
  "next": "e86f8b06f5fa884a84c22b2dcd0df37ed0a75827"
}
