)]}'
{
  "log": [
    {
      "commit": "4c84a39c8adba6bf2f829b217e78bfd61478191a",
      "tree": "0f0f415099cf49d894d65e5120563d30cf1a0fc9",
      "parents": [
        "d0b952a9837f81cd89e756b1b34293fa6e1cb59d",
        "9ead190bfde2a434c74ea604382d08acb2eceef5"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Mon Jun 19 19:01:59 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Mon Jun 19 19:01:59 2006 -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: (46 commits)\n  IB/uverbs: Don\u0027t serialize with ib_uverbs_idr_mutex\n  IB/mthca: Make all device methods truly reentrant\n  IB/mthca: Fix memory leak on modify_qp error paths\n  IB/uverbs: Factor out common idr code\n  IB/uverbs: Don\u0027t decrement usecnt on error paths\n  IB/uverbs: Release lock on error path\n  IB/cm: Use address handle helpers\n  IB/sa: Add ib_init_ah_from_path()\n  IB: Add ib_init_ah_from_wc()\n  IB/ucm: Get rid of duplicate P_Key parameter\n  IB/srp: Factor out common request reset code\n  IB/srp: Support SRP rev. 10 targets\n  [SCSI] srp.h: Add I/O Class values\n  IB/fmr: Use device\u0027s max_map_map_per_fmr attribute in FMR pool.\n  IB/mthca: Fill in max_map_per_fmr device attribute\n  IB/ipath: Add client reregister event generation\n  IB/mthca: Add client reregister event generation\n  IB: Move struct port_info from ipath to \u003crdma/ib_smi.h\u003e\n  IPoIB: Handle client reregister events\n  IB: Add client reregister event type\n  ...\n"
    },
    {
      "commit": "932ff279a43ab7257942cddff2595acd541cc49b",
      "tree": "e60130673a20d71becdac858c2589d8dfbf3ae1f",
      "parents": [
        "bf0857ea32addb6bc8b46383604b218b8ec09f19"
      ],
      "author": {
        "name": "Herbert Xu",
        "email": "herbert@gondor.apana.org.au",
        "time": "Fri Jun 09 12:20:56 2006 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@sunset.davemloft.net",
        "time": "Sat Jun 17 21:30:14 2006 -0700"
      },
      "message": "[NET]: Add netif_tx_lock\n\nVarious drivers use xmit_lock internally to synchronise with their\ntransmission routines.  They do so without setting xmit_lock_owner.\nThis is fine as long as netpoll is not in use.\n\nWith netpoll it is possible for deadlocks to occur if xmit_lock_owner\nisn\u0027t set.  This is because if a printk occurs while xmit_lock is held\nand xmit_lock_owner is not set can cause netpoll to attempt to take\nxmit_lock recursively.\n\nWhile it is possible to resolve this by getting netpoll to use\ntrylock, it is suboptimal because netpoll\u0027s sole objective is to\nmaximise the chance of getting the printk out on the wire.  So\ndelaying or dropping the message is to be avoided as much as possible.\n\nSo the only alternative is to always set xmit_lock_owner.  The\nfollowing patch does this by introducing the netif_tx_lock family of\nfunctions that take care of setting/unsetting xmit_lock_owner.\n\nI renamed xmit_lock to _xmit_lock to indicate that it should not be\nused directly.  I didn\u0027t provide irq versions of the netif_tx_lock\nfunctions since xmit_lock is meant to be a BH-disabling lock.\n\nThis is pretty much a straight text substitution except for a small\nbug fix in winbond.  It currently uses\nnetif_stop_queue/spin_unlock_wait to stop transmission.  This is\nunsafe as an IRQ can potentially wake up the queue.  So it is safer to\nuse netif_tx_disable.\n\nThe hamradio bits used spin_lock_irq but it is unnecessary as\nxmit_lock must never be taken in an IRQ handler.\n\nSigned-off-by: Herbert Xu \u003cherbert@gondor.apana.org.au\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "9ead190bfde2a434c74ea604382d08acb2eceef5",
      "tree": "937f1bb8dedea56efc46aed12370bb3865898763",
      "parents": [
        "c93b6fbaa99bb3a1552e14317296be14dde51dfb"
      ],
      "author": {
        "name": "Roland Dreier",
        "email": "rolandd@cisco.com",
        "time": "Sat Jun 17 20:44:49 2006 -0700"
      },
      "committer": {
        "name": "Roland Dreier",
        "email": "rolandd@cisco.com",
        "time": "Sat Jun 17 20:44:49 2006 -0700"
      },
      "message": "IB/uverbs: Don\u0027t serialize with ib_uverbs_idr_mutex\n\nCurrently, all userspace verbs operations that call into the kernel\nare serialized by ib_uverbs_idr_mutex.  This can be a scalability\nissue for some workloads, especially for devices driven by the ipath\ndriver, which needs to call into the kernel even for datapath\noperations.\n\nFix this by adding reference counts to the userspace objects, and then\nconverting ib_uverbs_idr_mutex into a spinlock that only protects the\nidrs long enough to take a reference on the object being looked up.\nBecause remove operations may fail, we have to do a slightly funky\ntwo-step deletion, which is described in the comments at the top of\nuverbs_cmd.c.\n\nThis also still leaves ib_uverbs_idr_lock as a single lock that is\npossibly subject to contention.  However, the lock hold time will only\nbe a single idr operation, so multiple threads should still be able to\nmake progress, even if ib_uverbs_idr_lock is being ping-ponged.\n\nSurprisingly, these changes even shrink the object code:\n\nadd/remove: 23/5 grow/shrink: 4/21 up/down: 633/-693 (-60)\n\nSigned-off-by: Roland Dreier \u003crolandd@cisco.com\u003e\n"
    },
    {
      "commit": "c93b6fbaa99bb3a1552e14317296be14dde51dfb",
      "tree": "bad61dc728f0eb28fcfdf01953cd0ae43a4b2350",
      "parents": [
        "c9c5d9feef86debee4d8e77a738ad86877cf371a"
      ],
      "author": {
        "name": "Roland Dreier",
        "email": "rolandd@cisco.com",
        "time": "Sat Jun 17 20:37:41 2006 -0700"
      },
      "committer": {
        "name": "Roland Dreier",
        "email": "rolandd@cisco.com",
        "time": "Sat Jun 17 20:37:41 2006 -0700"
      },
      "message": "IB/mthca: Make all device methods truly reentrant\n\nDocumentation/infiniband/core_locking.txt says:\n\n  All of the methods in struct ib_device exported by a low-level\n  driver must be fully reentrant.  The low-level driver is required to\n  perform all synchronization necessary to maintain consistency, even\n  if multiple function calls using the same object are run\n  simultaneously.\n\nHowever, mthca\u0027s modify_qp, modify_srq and resize_cq methods are\ncurrently not reentrant.  Add a mutex to the QP, SRQ and CQ structures\nso that these calls can be properly serialized.\n\nSigned-off-by: Roland Dreier \u003crolandd@cisco.com\u003e\n"
    },
    {
      "commit": "c9c5d9feef86debee4d8e77a738ad86877cf371a",
      "tree": "692adc21d8337a063be7e159860ded87b6e6829a",
      "parents": [
        "3463175d6ee55fdbd5cda2a03415e2068599b2b7"
      ],
      "author": {
        "name": "Roland Dreier",
        "email": "rolandd@cisco.com",
        "time": "Sat Jun 17 20:37:41 2006 -0700"
      },
      "committer": {
        "name": "Roland Dreier",
        "email": "rolandd@cisco.com",
        "time": "Sat Jun 17 20:37:41 2006 -0700"
      },
      "message": "IB/mthca: Fix memory leak on modify_qp error paths\n\nSome error paths after the mthca_alloc_mailbox() call in mthca_modify_qp()\njust do a \"return -EINVAL\" without freeing the mailbox.  Convert these\nreturns to \"goto out\" to avoid leaking the mailbox storage.\n\nSigned-off-by: Roland Dreier \u003crolandd@cisco.com\u003e\n"
    },
    {
      "commit": "3463175d6ee55fdbd5cda2a03415e2068599b2b7",
      "tree": "f629b7c65894d591d861bb121a71f67d0b960f36",
      "parents": [
        "92b1582268e269b3a9e54e186e740396f0f2012b"
      ],
      "author": {
        "name": "Roland Dreier",
        "email": "rolandd@cisco.com",
        "time": "Sat Jun 17 20:37:40 2006 -0700"
      },
      "committer": {
        "name": "Roland Dreier",
        "email": "rolandd@cisco.com",
        "time": "Sat Jun 17 20:37:40 2006 -0700"
      },
      "message": "IB/uverbs: Factor out common idr code\n\nFactor out common code for adding a userspace object to an idr into a\nfunction idr_add_uobj().  This shrinks both the source and object code:\n\nadd/remove: 1/0 grow/shrink: 0/6 up/down: 57/-220 (-163)\nfunction                                     old     new   delta\nidr_add_uobj                                   -      57     +57\nib_uverbs_create_ah                          543     512     -31\nib_uverbs_create_srq                         662     630     -32\nib_uverbs_reg_mr                             737     699     -38\nib_uverbs_create_cq                          639     600     -39\nib_uverbs_alloc_pd                           485     446     -39\nib_uverbs_create_qp                         1020     979     -41\n\nSigned-off-by: Roland Dreier \u003crolandd@cisco.com\u003e\n"
    },
    {
      "commit": "92b1582268e269b3a9e54e186e740396f0f2012b",
      "tree": "6dee998bb8c363ccecdf1f36f155875aea80cdc1",
      "parents": [
        "77f76013e3ffda605b20184db5862ce1efcb6f5a"
      ],
      "author": {
        "name": "Roland Dreier",
        "email": "rolandd@cisco.com",
        "time": "Sat Jun 17 20:37:40 2006 -0700"
      },
      "committer": {
        "name": "Roland Dreier",
        "email": "rolandd@cisco.com",
        "time": "Sat Jun 17 20:37:40 2006 -0700"
      },
      "message": "IB/uverbs: Don\u0027t decrement usecnt on error paths\n\nIn error paths when destroying an object, uverbs should not decrement\nassociated objects\u0027 usecnt, since ib_dereg_mr(), ib_destroy_qp(),\netc. already do that.\n\nSigned-off-by: Roland Dreier \u003crolandd@cisco.com\u003e\n"
    },
    {
      "commit": "77f76013e3ffda605b20184db5862ce1efcb6f5a",
      "tree": "ce0c5fb39d891027e2609f74a160eb54b15dce37",
      "parents": [
        "ca222c6b2c48e1e0be330a55611ba394251330cb"
      ],
      "author": {
        "name": "Ganapathi CH",
        "email": "cganapathi@novell.com",
        "time": "Sat Jun 17 20:37:40 2006 -0700"
      },
      "committer": {
        "name": "Roland Dreier",
        "email": "rolandd@cisco.com",
        "time": "Sat Jun 17 20:37:40 2006 -0700"
      },
      "message": "IB/uverbs: Release lock on error path\n\nIf ibdev-\u003ealloc_ucontext() fails then ib_uverbs_get_context() does not\nunlock file-\u003emutex before returning error.\n\nSigned-off by: Ganapathi CH \u003ccganapathi@novell.com\u003e\nSigned-off-by: Roland Dreier \u003crolandd@cisco.com\u003e\n"
    },
    {
      "commit": "ca222c6b2c48e1e0be330a55611ba394251330cb",
      "tree": "80491af9034f3cadad8b68fdb140bb6909f4e48e",
      "parents": [
        "6d969a471ba107d94cf03dab3c69f45b9733f500"
      ],
      "author": {
        "name": "Sean Hefty",
        "email": "sean.hefty@intel.com",
        "time": "Sat Jun 17 20:37:40 2006 -0700"
      },
      "committer": {
        "name": "Roland Dreier",
        "email": "rolandd@cisco.com",
        "time": "Sat Jun 17 20:37:40 2006 -0700"
      },
      "message": "IB/cm: Use address handle helpers\n\nUse new ib_init_ah_from_wc() and ib_init_ah_from_path() helper\nfunctions to clean up the IB CM.\n\nSigned-off-by: Sean Hefty \u003csean.hefty@intel.com\u003e\nSigned-off-by: Roland Dreier \u003crolandd@cisco.com\u003e\n"
    },
    {
      "commit": "6d969a471ba107d94cf03dab3c69f45b9733f500",
      "tree": "7a9fea5c2a321434e5c4c3bc590393728b85b4dd",
      "parents": [
        "4e00d69454a8747798de11dc4eeef1edeee5ce98"
      ],
      "author": {
        "name": "Sean Hefty",
        "email": "sean.hefty@intel.com",
        "time": "Sat Jun 17 20:37:39 2006 -0700"
      },
      "committer": {
        "name": "Roland Dreier",
        "email": "rolandd@cisco.com",
        "time": "Sat Jun 17 20:37:39 2006 -0700"
      },
      "message": "IB/sa: Add ib_init_ah_from_path()\n\nAdd a call to initialize address handle attributes given a path record.\nThis is used by the CM, and would be useful for users of UD QPs.\n\nSigned-off-by: Sean Hefty \u003csean.hefty@intel.com\u003e\nSigned-off-by: Roland Dreier \u003crolandd@cisco.com\u003e\n"
    },
    {
      "commit": "4e00d69454a8747798de11dc4eeef1edeee5ce98",
      "tree": "e09582595f80e1e7479c4f8b5a559be0db9ac251",
      "parents": [
        "75af9088514432ef0c1052ba3767ceb0beb6f101"
      ],
      "author": {
        "name": "Sean Hefty",
        "email": "sean.hefty@intel.com",
        "time": "Sat Jun 17 20:37:39 2006 -0700"
      },
      "committer": {
        "name": "Roland Dreier",
        "email": "rolandd@cisco.com",
        "time": "Sat Jun 17 20:37:39 2006 -0700"
      },
      "message": "IB: Add ib_init_ah_from_wc()\n\nAdd a function to initialize address handle attributes from a work\ncompletion.  This functionality is duplicated by both verbs and the CM.\n\nSigned-off-by: Sean Hefty \u003csean.hefty@intel.com\u003e\nSigned-off-by: Roland Dreier \u003crolandd@cisco.com\u003e\n"
    },
    {
      "commit": "75af9088514432ef0c1052ba3767ceb0beb6f101",
      "tree": "92f312a058889beef2c85a18b9b7f231947c7590",
      "parents": [
        "526b4caa0a48382115fa9d8f7d8caf68dbcaa2bf"
      ],
      "author": {
        "name": "Sean Hefty",
        "email": "sean.hefty@intel.com",
        "time": "Sat Jun 17 20:37:39 2006 -0700"
      },
      "committer": {
        "name": "Roland Dreier",
        "email": "rolandd@cisco.com",
        "time": "Sat Jun 17 20:37:39 2006 -0700"
      },
      "message": "IB/ucm: Get rid of duplicate P_Key parameter\n\nThe P_Key is provided into a SIDR REQ in two places, once as a\nparameter, and again in the path record.  Remove the P_Key as a\nparameter and always use the one given in the path record.\n\nThis change has no practical effect on ABI functionality.\n\nSigned-off-by: Sean Hefty \u003csean.hefty@intel.com\u003e\nSigned-off-by: Roland Dreier \u003crolandd@cisco.com\u003e\n"
    },
    {
      "commit": "526b4caa0a48382115fa9d8f7d8caf68dbcaa2bf",
      "tree": "82383da15f298a7d42f161e12bea175f55b78dea",
      "parents": [
        "0c0450db31481aa01a04e7faecc93ee6841972d6"
      ],
      "author": {
        "name": "Ishai Rabinovitz",
        "email": "ishai@mellanox.co.il",
        "time": "Sat Jun 17 20:37:38 2006 -0700"
      },
      "committer": {
        "name": "Roland Dreier",
        "email": "rolandd@cisco.com",
        "time": "Sat Jun 17 20:37:38 2006 -0700"
      },
      "message": "IB/srp: Factor out common request reset code\n\nMisc cleanups in ib_srp:\n1) I think that it is more efficient to move the req entries from req_list\n   to free_list in srp_reconnect_target (rather than rebuild the free_list).\n   (In any case this code is shorter).\n2) This allows us to reuse code in srp_reset_device and srp_reconnect_target\n   and call a new function srp_reset_req.\n\nSigned-off-by: Ishai Rabinovitz \u003cishai@mellanox.co.il\u003e\nSigned-off-by: Roland Dreier \u003crolandd@cisco.com\u003e\n"
    },
    {
      "commit": "0c0450db31481aa01a04e7faecc93ee6841972d6",
      "tree": "c7a1ed2896345d022011831f8a9aaa21e8d8ff00",
      "parents": [
        "73c0996b1ca60338fa50e42acfcebd32b7636a8b"
      ],
      "author": {
        "name": "Ramachandra K",
        "email": "rkuchimanchi@silverstorm.com",
        "time": "Sat Jun 17 20:37:38 2006 -0700"
      },
      "committer": {
        "name": "Roland Dreier",
        "email": "rolandd@cisco.com",
        "time": "Sat Jun 17 20:37:38 2006 -0700"
      },
      "message": "IB/srp: Support SRP rev. 10 targets\n\nThere has been a change in the format of port identifiers between\nrevision 10 of the SRP specification and the current revision 16A.\n\nRevision 10 specifies port identifier format as\n\n  lower 8 bytes :  GUID   upper 8 bytes :  Extension\n\nWhereas revision 16A specifies it as \n\n lower 8 bytes :  Extension  upper 8 bytes :  GUID\n\nThere are older targets (e.g. SilverStorm Virtual Fibre Channel\nBridge) which conform to revision 10 of the SRP specification.\n\nThe I/O class of revision 10 is 0xFF00 and the I/O class of revision\n16A is 0x0100.\n\nFor supporting older targets, this patch:\n\n1) Adds a new optional target creation parameter \"io_class\". Default\n   value of io_class is 0x0100 (i.e. revision 16A)\n2) Uses the correct port identifier format for targets with IO class\n   of 0xFF00 (i.e. conforming to revision 10)\n\nSigned-off-by: Ramachandra K \u003crkuchimanchi@silverstorm.com\u003e\nSigned-off-by: Roland Dreier \u003crolandd@cisco.com\u003e\n"
    },
    {
      "commit": "6c8c1aa25d213a288df381f431ce5b6a155146ec",
      "tree": "379670131076d3ca0af68f9e91f6f038e86e0e96",
      "parents": [
        "d4cb0784fd1ea99ef3d20526811bd5608146fe60"
      ],
      "author": {
        "name": "Or Gerlitz",
        "email": "ogerlitz@voltaire.com",
        "time": "Sat Jun 17 20:37:37 2006 -0700"
      },
      "committer": {
        "name": "Roland Dreier",
        "email": "rolandd@cisco.com",
        "time": "Sat Jun 17 20:37:37 2006 -0700"
      },
      "message": "IB/fmr: Use device\u0027s max_map_map_per_fmr attribute in FMR pool.\n\nWhen creating a FMR pool, query the IB device and use the returned\nmax_map_map_per_fmr attribute as for the max number of FMR remaps. If\nthe device does not suport querying this attribute, use the original\nIB_FMR_MAX_REMAPS (32) default.\n\nSigned-off-by: Or Gerlitz \u003cogerlitz@voltaire.com\u003e\nSigned-off-by: Roland Dreier \u003crolandd@cisco.com\u003e\n"
    },
    {
      "commit": "d4cb0784fd1ea99ef3d20526811bd5608146fe60",
      "tree": "214f2e6923c9a04c27b09d790968736cc90c0cdd",
      "parents": [
        "6eddb5cb906ac5c9a17a1b76464eadacd88b6c92"
      ],
      "author": {
        "name": "Or Gerlitz",
        "email": "ogerlitz@voltaire.com",
        "time": "Sat Jun 17 20:37:37 2006 -0700"
      },
      "committer": {
        "name": "Roland Dreier",
        "email": "rolandd@cisco.com",
        "time": "Sat Jun 17 20:37:37 2006 -0700"
      },
      "message": "IB/mthca: Fill in max_map_per_fmr device attribute\n\nReport the true max_map_per_fmr value from mthca_query_device(),\ntaking into account the change in FMR remapping introduced by the\nSinai performance optimization.\n\nSigned-off-by: Or Gerlitz \u003cogerlitz@voltaire.com\u003e\nSigned-off-by: Roland Dreier \u003crolandd@cisco.com\u003e\n"
    },
    {
      "commit": "6eddb5cb906ac5c9a17a1b76464eadacd88b6c92",
      "tree": "8f12b13a64030e422b7c7d753009dab3dce3aa6b",
      "parents": [
        "12bbb2b7be7f5564952ebe0196623e97464b8ac5"
      ],
      "author": {
        "name": "Roland Dreier",
        "email": "rolandd@cisco.com",
        "time": "Sat Jun 17 20:37:37 2006 -0700"
      },
      "committer": {
        "name": "Roland Dreier",
        "email": "rolandd@cisco.com",
        "time": "Sat Jun 17 20:37:37 2006 -0700"
      },
      "message": "IB/ipath: Add client reregister event generation\n\nGenerate a client reregister event instead of a LID change event when\nclient reregister bit is set.\n\nSigned-off-by: Roland Dreier \u003crolandd@cisco.com\u003e\n"
    },
    {
      "commit": "12bbb2b7be7f5564952ebe0196623e97464b8ac5",
      "tree": "2c2aed2ffd043a145ba0369a799d9e8a1bd29ede",
      "parents": [
        "da2ab62ab5e430e6ffafc2d0e6046dcd2780f570"
      ],
      "author": {
        "name": "Leonid Arsh",
        "email": "leonida@voltaire.com",
        "time": "Sat Jun 17 20:37:36 2006 -0700"
      },
      "committer": {
        "name": "Roland Dreier",
        "email": "rolandd@cisco.com",
        "time": "Sat Jun 17 20:37:36 2006 -0700"
      },
      "message": "IB/mthca: Add client reregister event generation\n\nChange the mthca snoop of MADs that set PortInfo to check if the SM\nhas set the client reregister bit, and if it has, generate a client\nreregister event.  If the bit is not set, just generate a LID change\nevent as usual.\n\nSigned-off-by: Leonid Arsh \u003cleonida@voltaire.com\u003e\nSigned-off-by: Roland Dreier \u003crolandd@cisco.com\u003e\n"
    },
    {
      "commit": "da2ab62ab5e430e6ffafc2d0e6046dcd2780f570",
      "tree": "8628b70e91c193cd2ed90dca062974dc90fe16d7",
      "parents": [
        "508e434123b136c96d1bf989e8d4ab0c8d7498b1"
      ],
      "author": {
        "name": "Leonid Arsh",
        "email": "leonida@voltaire.com",
        "time": "Sat Jun 17 20:37:36 2006 -0700"
      },
      "committer": {
        "name": "Roland Dreier",
        "email": "rolandd@cisco.com",
        "time": "Sat Jun 17 20:37:36 2006 -0700"
      },
      "message": "IB: Move struct port_info from ipath to \u003crdma/ib_smi.h\u003e\n\nMove ipath\u0027s struct port_info into \u003crdma/ib_smi.h\u003e, so that it can be\nused by mthca to implement client reregister support.\n\nRemove the __attribute__((packed)) because all the members of the struct\nare naturally aligned anyway.\n\nSigned-off-by: Leonid Arsh \u003cleonida@voltaire.com\u003e\nSigned-off-by: Roland Dreier \u003crolandd@cisco.com\u003e\n"
    },
    {
      "commit": "508e434123b136c96d1bf989e8d4ab0c8d7498b1",
      "tree": "1085714b3d50f6a8706e6ab5fb5ba721cac38209",
      "parents": [
        "63942c9a981ecfa2aabfb27ff1a87b88f2ee9f5b"
      ],
      "author": {
        "name": "Leonid Arsh",
        "email": "leonida@voltaire.com",
        "time": "Sat Jun 17 20:37:36 2006 -0700"
      },
      "committer": {
        "name": "Roland Dreier",
        "email": "rolandd@cisco.com",
        "time": "Sat Jun 17 20:37:36 2006 -0700"
      },
      "message": "IPoIB: Handle client reregister events\n\nHandle client reregister events by treating them just like LID or\nSM changes -- flush all cached paths and rejoin multicast groups.\n\nSigned-off-by: Leonid Arsh \u003cleonida@voltaire.com\u003e\nSigned-off-by: Roland Dreier \u003crolandd@cisco.com\u003e\n"
    },
    {
      "commit": "37c22a77212c13201497378cc8becc5c95d0f3f5",
      "tree": "5a38388266a09c9892e5d8e336d7287ae763e7c0",
      "parents": [
        "31c02e215700c2b704d9441f629ae87bb9aeb561"
      ],
      "author": {
        "name": "Jack Morgenstein",
        "email": "jackm@mellanox.co.il",
        "time": "Mon May 29 19:14:05 2006 +0300"
      },
      "committer": {
        "name": "Roland Dreier",
        "email": "rolandd@cisco.com",
        "time": "Sat Jun 17 20:37:35 2006 -0700"
      },
      "message": "IPoIB: Fix kernel unaligned access on ia64\n\nFix misaligned access faults on ia64: never cast a misaligned\nneighbour-\u003eha + 4 pointer to union ib_gid type; pass a void * pointer\ninstead.  The memcpy was being optimized to use full word accesses\nbecause the compiler thought that union ib_gid is always aligned.\n\nThe cast in IPOIB_GID_ARG is safe, since it is fixed to access each\nbyte separately.\n\nSigned-off-by: Jack Morgenstein \u003cjackm@mellanox.co.il\u003e\nSigned-off-by: Michael S. Tsirkin \u003cmst@mellanox.co.il\u003e\nSigned-off-by: Roland Dreier \u003crolandd@cisco.com\u003e\n\n"
    },
    {
      "commit": "31c02e215700c2b704d9441f629ae87bb9aeb561",
      "tree": "057b5e1de62cbecbbe6a0a4532e7eab0fd0313e4",
      "parents": [
        "9874e746550fbd366484621b8838b98589bb2a15"
      ],
      "author": {
        "name": "Roland Dreier",
        "email": "rolandd@cisco.com",
        "time": "Sat Jun 17 20:37:34 2006 -0700"
      },
      "committer": {
        "name": "Roland Dreier",
        "email": "rolandd@cisco.com",
        "time": "Sat Jun 17 20:37:34 2006 -0700"
      },
      "message": "IPoIB: Avoid using stale last_send counter when reaping AHs\n\nThe comparisons of priv-\u003etx_tail to ah-\u003elast_send in ipoib_free_ah()\nand ipoib_post_receive() are slightly unsafe, because priv-\u003etx_lock is\nnot held and hence a stale value of ah-\u003elast_send might be used, which\nwould lead to freeing an AH before the driver was really done with it.\nThe simple way to fix this is to the optimization of early free from\nipoib_free_ah() and unconditionally queue AHs for reaping, and then\ntake priv-\u003etx_lock in __ipoib_reap_ah().\n\nSigned-off-by: Roland Dreier \u003crolandd@cisco.com\u003e\n"
    },
    {
      "commit": "9874e746550fbd366484621b8838b98589bb2a15",
      "tree": "8927d1f6a2c082591a539e42202c3b266a684ae0",
      "parents": [
        "6fb9cdbf2cdb2ea187e57ec2e16cc59df2adf86a"
      ],
      "author": {
        "name": "Jack Morgenstein",
        "email": "jackm@mellanox.co.il",
        "time": "Sat Jun 17 20:37:34 2006 -0700"
      },
      "committer": {
        "name": "Roland Dreier",
        "email": "rolandd@cisco.com",
        "time": "Sat Jun 17 20:37:34 2006 -0700"
      },
      "message": "IB/mad: Check GID/LID when matching requests\n\nCheck GID/LID for requester side when searching for request which\nmatches received response.  This is in order to guarantee uniqueness\nif the same TID is used when requesting via multiple source LIDs (when\nLMC is not zero).  Use ports\u0027 cached LMC to perform the check.\n\nFurther, do not perform LID check for direct-routed packets, since\nthe permissive LID makes a proper check impossible.\n\nSigned-off-by: Jack Morgenstein \u003cjackm@mellanox.co.il\u003e\nSigned-off-by: Sean Hefty \u003csean.hefty@intel.com\u003e\nSigned-off-by: Roland Dreier \u003crolandd@cisco.com\u003e\n"
    },
    {
      "commit": "6fb9cdbf2cdb2ea187e57ec2e16cc59df2adf86a",
      "tree": "329eb272835bd3105696ddbc60cdaea971aa2a6e",
      "parents": [
        "856c256f883f027a14b546164294b4a86fea81a4"
      ],
      "author": {
        "name": "Jack Morgenstein",
        "email": "jackm@mellanox.co.il",
        "time": "Sat Jun 17 20:37:34 2006 -0700"
      },
      "committer": {
        "name": "Roland Dreier",
        "email": "rolandd@cisco.com",
        "time": "Sat Jun 17 20:37:34 2006 -0700"
      },
      "message": "IB: Add caching of ports\u0027 LMC\n\nAdd an LMC cache to struct ib_device, and add a function\nib_get_cached_lmc() to query the cache.\n\nSigned-off-by: Jack Morgenstein \u003cjackm@mellanox.co.il\u003e\nSigned-off-by: Sean Hefty \u003csean.hefty@intel.com\u003e\nSigned-off-by: Roland Dreier \u003crolandd@cisco.com\u003e\n"
    },
    {
      "commit": "856c256f883f027a14b546164294b4a86fea81a4",
      "tree": "c505262354179db879aed2c8a48806f98ba6c614",
      "parents": [
        "4be10c1e6dcafec993ac4f9abfa5fdcd83728302"
      ],
      "author": {
        "name": "Michael S. Tsirkin",
        "email": "mst@mellanox.co.il",
        "time": "Thu May 25 14:51:33 2006 -0700"
      },
      "committer": {
        "name": "Roland Dreier",
        "email": "rolandd@cisco.com",
        "time": "Sat Jun 17 20:37:33 2006 -0700"
      },
      "message": "IB/cm: remove unneeded flush_workqueue\n\ndestroy_workqueue() already does flush_workqueue().\n\nSigned-off-by: Michael S. Tsirkin \u003cmst@mellanox.co.il\u003e\nSigned-off-by: Sean Hefty \u003csean.hefty@intel.com\u003e\n"
    },
    {
      "commit": "4be10c1e6dcafec993ac4f9abfa5fdcd83728302",
      "tree": "c7f804d21f0fb39cf3a7b7e85266eeb020957af2",
      "parents": [
        "6bfa24fa3e189269e113197a80e12862c211b3d3"
      ],
      "author": {
        "name": "Sean Hefty",
        "email": "sean.hefty@intel.com",
        "time": "Thu May 25 10:03:23 2006 -0700"
      },
      "committer": {
        "name": "Roland Dreier",
        "email": "rolandd@cisco.com",
        "time": "Sat Jun 17 20:37:33 2006 -0700"
      },
      "message": "IB/ucm: convert semaphore to mutex\n\nConvert semaphore in ib_ucm_file to a real mutex.\n\nSigned-off-by: Sean Hefty \u003csean.hefty@intel.com\u003e\nSigned-off-by: Roland Dreier \u003crolandd@cisco.com\u003e\n"
    },
    {
      "commit": "6bfa24fa3e189269e113197a80e12862c211b3d3",
      "tree": "cdd5adcb58ce726708a48636d3b657155000e8cf",
      "parents": [
        "b7ac4ab497e44cba75fb0e9e5afca06776518934"
      ],
      "author": {
        "name": "Roland Dreier",
        "email": "rolandd@cisco.com",
        "time": "Sat Jun 17 20:37:33 2006 -0700"
      },
      "committer": {
        "name": "Roland Dreier",
        "email": "rolandd@cisco.com",
        "time": "Sat Jun 17 20:37:33 2006 -0700"
      },
      "message": "IB/srp: Get rid of \"Target has req_lim 0\" messages\n\nIt\u0027s perfectly valid for a connection to an SRP target to have a\nrequest limit of 0, so get rid of the message about it, which can spam\nkernel logs even with printk_ratelimit().  Keep a count of such events\nin a \"zero_req_lim\" SCSI host attribute instead, so someone who cares\ncan look at the statistics.\n\nSigned-off-by: Roland Dreier \u003crolandd@cisco.com\u003e\n"
    },
    {
      "commit": "b7ac4ab497e44cba75fb0e9e5afca06776518934",
      "tree": "d0d513d83ef71ea7530a3e57ccac41c3684a4fcb",
      "parents": [
        "ac83cbaa9a41344c3adf329ede607e58d887f354"
      ],
      "author": {
        "name": "Ishai Rabinovitz",
        "email": "ishai@mellanox.co.il",
        "time": "Sat Jun 17 20:37:32 2006 -0700"
      },
      "committer": {
        "name": "Roland Dreier",
        "email": "rolandd@cisco.com",
        "time": "Sat Jun 17 20:37:32 2006 -0700"
      },
      "message": "IB/srp: Handle DREQ events from CM\n\nHandle IB_CM_DREQ_ERROR and IB_CM_DREQ_RECEIVED events from the CM,\ninstead of just printing \"Unhandled CM event\".  In the case of\nDREQ_ERROR, just ignore the event -- a TIMEWAIT_EXIT will be generated\nalso.  For DREQ_RECEIVED, send a DREP in response to shut the\nconnection down cleanly.\n\nSigned-off-by: Ishai Rabinovitz \u003cishai@mellanox.co.il\u003e\nSigned-off-by: Roland Dreier \u003crolandd@cisco.com\u003e\n"
    },
    {
      "commit": "74b0a15b5e18e44206c98419745a472c3d28e561",
      "tree": "9aa9846193df826cc81d2072a0ca56a569ea9668",
      "parents": [
        "52fb2b50c4baa1430064c1e6c1c7df473d469df1"
      ],
      "author": {
        "name": "Vu Pham",
        "email": "vu@mellanox.com",
        "time": "Sat Jun 17 20:37:32 2006 -0700"
      },
      "committer": {
        "name": "Roland Dreier",
        "email": "rolandd@cisco.com",
        "time": "Sat Jun 17 20:37:32 2006 -0700"
      },
      "message": "IB/srp: Allow sg_tablesize to be adjusted\n\nMake the sg_tablesize used by SRP adjustable at module load time via a\nmodule parameter.  Calculate the corresponding IU length required to\nsupport this.\n\nSigned-off-by: Vu Pham \u003cvu@mellanox.com\u003e\nSigned-off-by: Roland Dreier \u003crolandd@cisco.com\u003e\n"
    },
    {
      "commit": "52fb2b50c4baa1430064c1e6c1c7df473d469df1",
      "tree": "7d538c270d6b9064b5674a8fd6f7cf81d8b8580f",
      "parents": [
        "0c5b395239cdea4db3d9c23a5738fdaf3b9ada4c"
      ],
      "author": {
        "name": "Vu Pham",
        "email": "vu@mellanox.com",
        "time": "Sat Jun 17 20:37:31 2006 -0700"
      },
      "committer": {
        "name": "Roland Dreier",
        "email": "rolandd@cisco.com",
        "time": "Sat Jun 17 20:37:31 2006 -0700"
      },
      "message": "IB/srp: Allow cmd_per_lun to be set per target port\n\nAllow userspace to throttle traffic on a given connection to a target\nport by adding \"max_cmd_per_lun\u003dxyz\" to lower the cmd_per_lun value\nset for that scsi_host.\n\nSigned-off-by: Vu Pham \u003cvu@mellanox.com\u003e\nSigned-off-by: Roland Dreier \u003crolandd@cisco.com\u003e\n"
    },
    {
      "commit": "0c5b395239cdea4db3d9c23a5738fdaf3b9ada4c",
      "tree": "92262c3a2480603bee7e8b8b405a3a4060433315",
      "parents": [
        "403a496fd4af3036c12e1f9c90a89cf846fadd35"
      ],
      "author": {
        "name": "Ishai Rabinovitz",
        "email": "ishai@mellanox.co.il",
        "time": "Sat Jun 17 20:37:31 2006 -0700"
      },
      "committer": {
        "name": "Roland Dreier",
        "email": "rolandd@cisco.com",
        "time": "Sat Jun 17 20:37:31 2006 -0700"
      },
      "message": "IB/srp: Clean up loop in srp_remove_one()\n\nInterrupts will always be enabled in srp_remove_one(), so\nspin_lock_irq() can be used instead of spin_lock_irqsave().\nAlso, the loop takes target-\u003escsi_host-\u003ehost_lock, so target-\u003estate\ncan just be set to SRP_TARGET_REMOVED witout testing the old value.\n\nSigned-off-by: Ishai Rabinovitz \u003cishai@mellanox.co.il\u003e\nSigned-off-by: Roland Dreier \u003crolandd@cisco.com\u003e\n"
    },
    {
      "commit": "403a496fd4af3036c12e1f9c90a89cf846fadd35",
      "tree": "a2aaa788cb21341f9245db9c7f5c2dfb459d206b",
      "parents": [
        "b3589fd49067bab9fe0c60430860e6befbd5ba37"
      ],
      "author": {
        "name": "Roland Dreier",
        "email": "rolandd@cisco.com",
        "time": "Sat Jun 17 20:37:31 2006 -0700"
      },
      "committer": {
        "name": "Roland Dreier",
        "email": "rolandd@cisco.com",
        "time": "Sat Jun 17 20:37:31 2006 -0700"
      },
      "message": "IB: Make needlessly global ib_mad_cache static\n\nSigned-off-by: Roland Dreier \u003crolandd@cisco.com\u003e\n"
    },
    {
      "commit": "b3589fd49067bab9fe0c60430860e6befbd5ba37",
      "tree": "be054dba4fd5d39e4af03d18e1d57d3b88033ca7",
      "parents": [
        "549c5fc2c8149498118f2494a1b6a4938ca05985"
      ],
      "author": {
        "name": "Matthew Wilcox",
        "email": "matthew@wil.cx",
        "time": "Sat Jun 17 20:37:30 2006 -0700"
      },
      "committer": {
        "name": "Roland Dreier",
        "email": "rolandd@cisco.com",
        "time": "Sat Jun 17 20:37:30 2006 -0700"
      },
      "message": "IB/srp: Change target_mutex to a spinlock\n\nThe SRP driver never sleeps while holding target_mutex, and it\u0027s just\nused to protect some simple list operations, so hold times will be\nshort.  So just convert it to a spinlock, which is smaller and faster.\n\nSigned-off-by: Matthew Wilcox \u003cmatthew@wil.cx\u003e\nSigned-off-by: Roland Dreier \u003crolandd@cisco.com\u003e\n"
    },
    {
      "commit": "549c5fc2c8149498118f2494a1b6a4938ca05985",
      "tree": "409aff9ba655db4a58d475a7f74f7917d8eca31e",
      "parents": [
        "1962a4a1e4b3716aa836ebeb5b80c804a7f7c5ba"
      ],
      "author": {
        "name": "Matthew Wilcox",
        "email": "matthew@wil.cx",
        "time": "Sat Jun 17 20:37:30 2006 -0700"
      },
      "committer": {
        "name": "Roland Dreier",
        "email": "rolandd@cisco.com",
        "time": "Sat Jun 17 20:37:30 2006 -0700"
      },
      "message": "IB/srp: Get rid of unneeded use of list_for_each_entry_safe()\n\nlist_for_each_entry_safe() is used in one place where the list isn\u0027t\nmodified.  So just change it to list_for_each_entry().\n\nSigned-off-by: Matthew Wilcox \u003cmatthew@wil.cx\u003e\nSigned-off-by: Roland Dreier \u003crolandd@cisco.com\u003e\n"
    },
    {
      "commit": "1962a4a1e4b3716aa836ebeb5b80c804a7f7c5ba",
      "tree": "f88f56331bdae7d46a16261c1c31ab8731b1ac91",
      "parents": [
        "e9cd59418f049966a690372c4919e98c88bb119b"
      ],
      "author": {
        "name": "Matthew Wilcox",
        "email": "matthew@wil.cx",
        "time": "Sat Jun 17 20:37:30 2006 -0700"
      },
      "committer": {
        "name": "Roland Dreier",
        "email": "rolandd@cisco.com",
        "time": "Sat Jun 17 20:37:30 2006 -0700"
      },
      "message": "IB/srp: Use SCAN_WILD_CARD from SCSI headers\n\nSCAN_WILD_CARD is indeed available from \u003cscsi/scsi.h\u003e, which is\nalready included.  So get rid of private hack.\n\nSigned-off-by: Matthew Wilcox \u003cmatthew@wil.cx\u003e\nSigned-off-by: Roland Dreier \u003crolandd@cisco.com\u003e\n"
    },
    {
      "commit": "e9cd59418f049966a690372c4919e98c88bb119b",
      "tree": "7624e7d85f4f927692771483a763dafa9f8bb8d5",
      "parents": [
        "f5358a172f79e3f995919224401b25637f4324f6"
      ],
      "author": {
        "name": "Roland Dreier",
        "email": "rolandd@cisco.com",
        "time": "Sat Jun 17 20:37:30 2006 -0700"
      },
      "committer": {
        "name": "Roland Dreier",
        "email": "rolandd@cisco.com",
        "time": "Sat Jun 17 20:37:30 2006 -0700"
      },
      "message": "IB/mthca: Convert FW commands to use wait_for_completion_timeout()\n\nThe kernel has had wait_for_completion_timeout() for a long time now.\nmthca should use it to handle FW commands timing out, instead of\nimplementing the same thing in a much more complicated way by using\nwait_for_completion() along with a timer that does complete().\n\nSigned-off-by: Roland Dreier \u003crolandd@cisco.com\u003e\n"
    },
    {
      "commit": "f5358a172f79e3f995919224401b25637f4324f6",
      "tree": "52980f6f7707af3fca77958d04e88b9cee3c1a2a",
      "parents": [
        "a26026c1221c3e78e6e9f156994c41fb74e99022"
      ],
      "author": {
        "name": "Roland Dreier",
        "email": "rolandd@cisco.com",
        "time": "Sat Jun 17 20:37:29 2006 -0700"
      },
      "committer": {
        "name": "Roland Dreier",
        "email": "rolandd@cisco.com",
        "time": "Sat Jun 17 20:37:29 2006 -0700"
      },
      "message": "IB/srp: Use FMRs to map gather/scatter lists\n\nCreate an SRP FMR pool on HCAs that support FMRs, and use FMRs to map\ngather/scatter lists that have more than one entry into a single\nmemory region that appears virtually contiguous to the SRP target\n(which is the RDMA initiator).\n\nThis patch bails out on FMR mapping for SCSI commands where the\ngather/scatter list cannot be mapped into a single FMR because there\nare sub-page-sized entries in middle of the list.  An unaligned\nstart or end of the list is OK.\n\nBased on a patch by Vu Pham \u003cvuhuong@mellanox.com\u003e.\n\nSigned-off-by: Roland Dreier \u003crolandd@cisco.com\u003e\n"
    },
    {
      "commit": "a26026c1221c3e78e6e9f156994c41fb74e99022",
      "tree": "3c5cf6f6e43ffc8d078d096809490a29df7c23e4",
      "parents": [
        "e51060f08a61965c4dd91516d82fe90617152590"
      ],
      "author": {
        "name": "Michael S. Tsirkin",
        "email": "mst@mellanox.co.il",
        "time": "Sat Jun 17 20:37:29 2006 -0700"
      },
      "committer": {
        "name": "Roland Dreier",
        "email": "rolandd@cisco.com",
        "time": "Sat Jun 17 20:37:29 2006 -0700"
      },
      "message": "IB/mthca: Remove dead code\n\nKill some dead code in mthca_eq.c\n\nSigned-off-by: Michael S. Tsirkin \u003cmst@mellanox.co.il\u003e\nSigned-off-by: Roland Dreier \u003crolandd@cisco.com\u003e\n"
    },
    {
      "commit": "e51060f08a61965c4dd91516d82fe90617152590",
      "tree": "19a8a0cc519e215e12ce460258a356cdac842f6e",
      "parents": [
        "7025fcd36bd62af2c6ca0ea3490c00b216c4d168"
      ],
      "author": {
        "name": "Sean Hefty",
        "email": "sean.hefty@intel.com",
        "time": "Sat Jun 17 20:37:29 2006 -0700"
      },
      "committer": {
        "name": "Roland Dreier",
        "email": "rolandd@cisco.com",
        "time": "Sat Jun 17 20:37:29 2006 -0700"
      },
      "message": "IB: IP address based RDMA connection manager\n\nKernel connection management agent over InfiniBand that connects based\non IP addresses.  The agent defines a generic RDMA connection\nabstraction to support clients wanting to connect over different RDMA\ndevices.\n\nThe agent also handles RDMA device hotplug events on behalf of clients.\n\nSigned-off-by: Sean Hefty \u003csean.hefty@intel.com\u003e\nSigned-off-by: Roland Dreier \u003crolandd@cisco.com\u003e\n"
    },
    {
      "commit": "7025fcd36bd62af2c6ca0ea3490c00b216c4d168",
      "tree": "e2fda3944176fcafb24876680d6eb8b6be394fe6",
      "parents": [
        "a1e8733e557bb390e13aa00ef044a6022c8d0bb2"
      ],
      "author": {
        "name": "Sean Hefty",
        "email": "sean.hefty@intel.com",
        "time": "Sat Jun 17 20:37:28 2006 -0700"
      },
      "committer": {
        "name": "Roland Dreier",
        "email": "rolandd@cisco.com",
        "time": "Sat Jun 17 20:37:28 2006 -0700"
      },
      "message": "IB: address translation to map IP toIB addresses (GIDs)\n\nAdd an address translation service that maps IP addresses to\nInfiniBand GID addresses using IPoIB.\n\nSigned-off-by: Sean Hefty \u003csean.hefty@intel.com\u003e\nSigned-off-by: Roland Dreier \u003crolandd@cisco.com\u003e\n"
    },
    {
      "commit": "6e61d04f2d8c7ac4f67e1f498ed2a2a3ad8edaa3",
      "tree": "cf184fe1a9ebc7187cd452b2427234726436da94",
      "parents": [
        "6a9af2e18a5c6ebcf8283309d20ac0e9fa35e346"
      ],
      "author": {
        "name": "Sean Hefty",
        "email": "sean.hefty@intel.com",
        "time": "Sat Jun 17 20:37:28 2006 -0700"
      },
      "committer": {
        "name": "Roland Dreier",
        "email": "rolandd@cisco.com",
        "time": "Sat Jun 17 20:37:28 2006 -0700"
      },
      "message": "IB/cm: Match connection requests based on private data\n\nExtend matching connection requests to listens in the InfiniBand CM to\ninclude private data checks.\n\nThis allows applications to listen on the same service identifier,\nwith private data directing the request to the appropriate application.\n\nSigned-off-by: Sean Hefty \u003csean.hefty@intel.com\u003e\nSigned-off-by: Roland Dreier \u003crolandd@cisco.com\u003e\n"
    },
    {
      "commit": "6a9af2e18a5c6ebcf8283309d20ac0e9fa35e346",
      "tree": "550bf42e4fff6b89160224fdf130085fefd0fe2e",
      "parents": [
        "4e56ea794ec8636991e21942fc2e0d071ea8ee1d"
      ],
      "author": {
        "name": "Sean Hefty",
        "email": "sean.hefty@intel.com",
        "time": "Sat Jun 17 20:37:27 2006 -0700"
      },
      "committer": {
        "name": "Roland Dreier",
        "email": "rolandd@cisco.com",
        "time": "Sat Jun 17 20:37:27 2006 -0700"
      },
      "message": "IB: common handling for marshalling parameters to/from userspace\n\nProvide common handling for marshalling data between userspace clients\nand kernel InfiniBand drivers.\n\nSigned-off-by: Sean Hefty \u003csean.hefty@intel.com\u003e\nSigned-off-by: Roland Dreier \u003crolandd@cisco.com\u003e\n"
    },
    {
      "commit": "4e56ea794ec8636991e21942fc2e0d071ea8ee1d",
      "tree": "eb03f5a3246c69fdaf6dd485395b13d33aef158d",
      "parents": [
        "13aa6ecb47990cfc78e20e347fdd3f1df6189426"
      ],
      "author": {
        "name": "Michael S. Tsirkin",
        "email": "mst@mellanox.co.il",
        "time": "Tue Jun 13 17:19:42 2006 +0300"
      },
      "committer": {
        "name": "Roland Dreier",
        "email": "rolandd@cisco.com",
        "time": "Sat Jun 17 20:37:20 2006 -0700"
      },
      "message": "IB/mthca: memfree completion with error FW bug workaround\n\nMemfree firmware is in rare cases reporting WQE index \u003d\u003d base - 1 in\nreceive completion with error, instead of (rq size - 1); base is 0 in\nmthca.  Here is a patch to avoid kernel crash and report a correct WR\nid in this case.\n\nSigned-off-by: Michael S. Tsirkin \u003cmst@mellanox.co.il\u003e\nSigned-off-by: Roland Dreier \u003crolandd@cisco.com\u003e\n\n"
    },
    {
      "commit": "13aa6ecb47990cfc78e20e347fdd3f1df6189426",
      "tree": "d26f2ed61becb6603aff5dc1467270a370483333",
      "parents": [
        "427abfa28afedffadfca9dd8b067eb6d36bac53f"
      ],
      "author": {
        "name": "Michael S. Tsirkin",
        "email": "mst@mellanox.co.il",
        "time": "Mon Jun 12 16:57:51 2006 +0300"
      },
      "committer": {
        "name": "Roland Dreier",
        "email": "rolandd@cisco.com",
        "time": "Sat Jun 17 20:37:00 2006 -0700"
      },
      "message": "IB/mthca: restore missing PCI registers after reset\n\nmthca does not restore the following PCI-X/PCI Express registers after reset:\n  PCI-X device: PCI-X command register\n  PCI-X bridge: upstream and downstream split transaction registers\n  PCI Express : PCI Express device control and link control registers\n\nThis causes instability and/or bad performance on systems where one of\nthese registers is set to a non-default value by BIOS.\n\nSigned-off-by: Michael S. Tsirkin \u003cmst@mellanox.co.il\u003e\nSigned-off-by: Roland Dreier \u003crolandd@cisco.com\u003e\n\n"
    },
    {
      "commit": "959eb39297e8c82f61fbfc283ad4ff11c883bf1e",
      "tree": "7539406ef0c36eb1ba6969fe8aeccd56fab97ea7",
      "parents": [
        "672c6108a51bf559d19595d9f8193dfd81f0f752"
      ],
      "author": {
        "name": "Eli Cohen",
        "email": "eli@mellanox.co.il",
        "time": "Mon Jun 05 09:51:36 2006 -0700"
      },
      "committer": {
        "name": "Roland Dreier",
        "email": "rolandd@cisco.com",
        "time": "Mon Jun 05 09:51:36 2006 -0700"
      },
      "message": "IPoIB: Fix AH leak at interface down\n\nWhen ipoib_stop() is called it first calls netif_stop_queue() to stop\nthe kernel from passing more packets to the network driver. However,\nthe completion handler may call netif_wake_queue() re-enabling packet\ntransfer.\n\nThis might result in leaks (we see AH leaks which we think can be\nattributed to this bug) as new packets get posted while the interface\nis going down.\n\nSigned-off-by: Eli Cohen \u003celi@mellanox.co.il\u003e\nSigned-off-by: Michael Tsirkin \u003cmst@mellanox.co.il\u003e\nSigned-off-by: Roland Dreier \u003crolandd@cisco.com\u003e\n"
    },
    {
      "commit": "ab28b171eabc0a414e0404844453c11af3caed10",
      "tree": "35c7037516ec32da168468823c1fbba96a930eb2",
      "parents": [
        "da8bacf6d59288ef3e41389db24886c928dcbd33"
      ],
      "author": {
        "name": "Michael S. Tsirkin",
        "email": "mst@mellanox.co.il",
        "time": "Wed May 24 18:27:07 2006 +0300"
      },
      "committer": {
        "name": "Roland Dreier",
        "email": "rolandd@cisco.com",
        "time": "Wed May 24 13:43:37 2006 -0700"
      },
      "message": "IB/mthca: Fix posting lists of 256 receive requests to SRQ for Tavor\n\nIf we post a list of length exactly a multiple of 256, nreq in\ndoorbell gets set to 256 which is wrong: it should be encoded by 0.\nThis is because we only zero it out on the next WR, which may not be\nthere.  The solution is to ring the doorbell after posting a WQE, not\nbefore posting the next one.\n\nThis is the same bug that we just fixed for QPs with non-shared RQ.\n\nSigned-off-by: Michael S. Tsirkin \u003cmst@mellanox.co.il\u003e\nSigned-off-by: Roland Dreier \u003crolandd@cisco.com\u003e\n"
    },
    {
      "commit": "09b74de9fff056a0a4058a0f14508acba89ea6fc",
      "tree": "1a935fea2400450afe8984975eea6e22ddf57833",
      "parents": [
        "3977026462314dfbb237adf6a964d0f683b8e45d"
      ],
      "author": {
        "name": "Bryan O\u0027Sullivan",
        "email": "bos@pathscale.com",
        "time": "Tue May 23 11:32:38 2006 -0700"
      },
      "committer": {
        "name": "Roland Dreier",
        "email": "rolandd@cisco.com",
        "time": "Tue May 23 13:29:35 2006 -0700"
      },
      "message": "IB/ipath: deref correct pointer when using kernel SMA\n\nAt this point, the core QP structure hasn\u0027t been initialized, so what\u0027s\nin there isn\u0027t valid.  Get the same information elsewhere.\n\nSigned-off-by: Bryan O\u0027Sullivan \u003cbos@pathscale.com\u003e\nSigned-off-by: Roland Dreier \u003crolandd@cisco.com\u003e\n"
    },
    {
      "commit": "3977026462314dfbb237adf6a964d0f683b8e45d",
      "tree": "d9fbd218ac4a742371468a67db1a738f52af5a83",
      "parents": [
        "41c75a19bf4a0102f49763a686fb7e39780349f3"
      ],
      "author": {
        "name": "Bryan O\u0027Sullivan",
        "email": "bos@pathscale.com",
        "time": "Tue May 23 11:32:37 2006 -0700"
      },
      "committer": {
        "name": "Roland Dreier",
        "email": "rolandd@cisco.com",
        "time": "Tue May 23 13:29:35 2006 -0700"
      },
      "message": "IB/ipath: fix null deref during rdma ops\n\nThe problem was that node A\u0027s sending thread, which handles sending RDMA\nread response data, would write the trigger word, the last packet would\nbe sent, node B would send a new RDMA read request, node A\u0027s interrupt\nhandler would initialize s_rdma_sge, then node A\u0027s sending thread would\nupdate s_rdma_sge.  This didn\u0027t happen very often naturally but was more\nfrequent with 1 byte RDMA reads.  Rather than adding more locking or\nincreasing the QP structure size and copying sge data, I modified the\ncopy routine to update the pointers before writing the trigger word to\navoid the update race.\n\nSigned-off-by: Ralph Campbell \u003cralphc@pathscale.com\u003e\nSigned-off-by: Bryan O\u0027Sullivan \u003cbos@pathscale.com\u003e\nSigned-off-by: Roland Dreier \u003crolandd@cisco.com\u003e\n"
    },
    {
      "commit": "41c75a19bf4a0102f49763a686fb7e39780349f3",
      "tree": "5f9e8db9047ea613ef41ece49be72cd845239b20",
      "parents": [
        "9dcc0e58e2913f7e6ffba64c27fe5c2f2c7b845c"
      ],
      "author": {
        "name": "Bryan O\u0027Sullivan",
        "email": "bos@pathscale.com",
        "time": "Tue May 23 11:32:36 2006 -0700"
      },
      "committer": {
        "name": "Roland Dreier",
        "email": "rolandd@cisco.com",
        "time": "Tue May 23 13:29:35 2006 -0700"
      },
      "message": "IB/ipath: register as IB device owner\n\nThis fixes an oops.\n\nSigned-off-by: Bryan O\u0027Sullivan \u003cbos@pathscale.com\u003e\nSigned-off-by: Roland Dreier \u003crolandd@cisco.com\u003e\n"
    },
    {
      "commit": "9dcc0e58e2913f7e6ffba64c27fe5c2f2c7b845c",
      "tree": "67280213382759829dfbbc423b55ed898c841b9f",
      "parents": [
        "f2080fa3c6098dedfb9b599bdaedd07be2ea4646"
      ],
      "author": {
        "name": "Bryan O\u0027Sullivan",
        "email": "bos@pathscale.com",
        "time": "Tue May 23 11:32:35 2006 -0700"
      },
      "committer": {
        "name": "Roland Dreier",
        "email": "rolandd@cisco.com",
        "time": "Tue May 23 13:29:35 2006 -0700"
      },
      "message": "IB/ipath: enable PE800 receive interrupts on user ports\n\nFixed so it works on the PE-800.  It had not previously been updated to\nmatch PE-800 receive interrupt differences from HT-400.\n\nSigned-off-by: Bryan O\u0027Sullivan \u003cbos@pathscale.com\u003e\nSigned-off-by: Roland Dreier \u003crolandd@cisco.com\u003e\n"
    },
    {
      "commit": "f2080fa3c6098dedfb9b599bdaedd07be2ea4646",
      "tree": "e6d144327abb892f7598905bb823770283d1b669",
      "parents": [
        "b0ff7c2005f7ec8dec10fb15e62b8e1acc172bbf"
      ],
      "author": {
        "name": "Bryan O\u0027Sullivan",
        "email": "bos@pathscale.com",
        "time": "Tue May 23 11:32:34 2006 -0700"
      },
      "committer": {
        "name": "Roland Dreier",
        "email": "rolandd@cisco.com",
        "time": "Tue May 23 13:29:34 2006 -0700"
      },
      "message": "IB/ipath: enable GPIO interrupt on HT-460\n\nThis is required for even semi-decent performance on OpenIB.\n\nSigned-off-by: Bryan O\u0027Sullivan \u003cbos@pathscale.com\u003e\nSigned-off-by: Roland Dreier \u003crolandd@cisco.com\u003e\n"
    },
    {
      "commit": "b0ff7c2005f7ec8dec10fb15e62b8e1acc172bbf",
      "tree": "d62bf6616d98ef73a941d7bbfbe1ebd5d1621d40",
      "parents": [
        "94b8d9f98d7f535037eb9845b81396f667b4f727"
      ],
      "author": {
        "name": "Bryan O\u0027Sullivan",
        "email": "bos@pathscale.com",
        "time": "Tue May 23 11:32:33 2006 -0700"
      },
      "committer": {
        "name": "Roland Dreier",
        "email": "rolandd@cisco.com",
        "time": "Tue May 23 13:27:06 2006 -0700"
      },
      "message": "IB/ipath: fix NULL dereference during cleanup\n\nFix NULL deref due to pcidev being clobbered before dd-\u003eipath_f_cleanup()\nwas called.\n\nSigned-off-by: Bryan O\u0027Sullivan \u003cbos@pathscale.com\u003e\nSigned-off-by: Roland Dreier \u003crolandd@cisco.com\u003e\n"
    },
    {
      "commit": "94b8d9f98d7f535037eb9845b81396f667b4f727",
      "tree": "20eeb94120a7da859e27876aa997619ce73bc2a8",
      "parents": [
        "eaf6733bc176742fb08def2269441684e963c275"
      ],
      "author": {
        "name": "Bryan O\u0027Sullivan",
        "email": "bos@pathscale.com",
        "time": "Tue May 23 11:32:32 2006 -0700"
      },
      "committer": {
        "name": "Roland Dreier",
        "email": "rolandd@cisco.com",
        "time": "Tue May 23 13:27:06 2006 -0700"
      },
      "message": "IB/ipath: replace uses of LIST_POISON\n\nPer Andrew\u0027s request.\n\nSigned-off-by: Bryan O\u0027Sullivan \u003cbos@pathscale.com\u003e\nSigned-off-by: Roland Dreier \u003crolandd@cisco.com\u003e\n"
    },
    {
      "commit": "eaf6733bc176742fb08def2269441684e963c275",
      "tree": "cc365d39b9d0e1121fdead2c324250d51a3699c4",
      "parents": [
        "b228b43c491c53d1838e06f47a7470db9f84d899"
      ],
      "author": {
        "name": "Bryan O\u0027Sullivan",
        "email": "bos@pathscale.com",
        "time": "Tue May 23 11:32:31 2006 -0700"
      },
      "committer": {
        "name": "Roland Dreier",
        "email": "rolandd@cisco.com",
        "time": "Tue May 23 13:27:06 2006 -0700"
      },
      "message": "IB/ipath: fix reporting of driver version to userspace\n\nFix the interface version that gets exported to userspace.\n\nSigned-off-by: Bryan O\u0027Sullivan \u003cbos@pathscale.com\u003e\nSigned-off-by: Roland Dreier \u003crolandd@cisco.com\u003e\n"
    },
    {
      "commit": "b228b43c491c53d1838e06f47a7470db9f84d899",
      "tree": "3dc567452c12e13ed89d6c12563558cd9407d48c",
      "parents": [
        "ebac3800e5652063aa9491ef7fb4d57e089eb385"
      ],
      "author": {
        "name": "Bryan O\u0027Sullivan",
        "email": "bos@pathscale.com",
        "time": "Tue May 23 11:32:30 2006 -0700"
      },
      "committer": {
        "name": "Roland Dreier",
        "email": "rolandd@cisco.com",
        "time": "Tue May 23 13:27:06 2006 -0700"
      },
      "message": "IB/ipath: don\u0027t modify QP if changes fail\n\nMake sure modify_qp won\u0027t modify the QP if any of the changes failed.\n\nSigned-off-by: Bryan O\u0027Sullivan \u003cbos@pathscale.com\u003e\nSigned-off-by: Roland Dreier \u003crolandd@cisco.com\u003e\n"
    },
    {
      "commit": "ebac3800e5652063aa9491ef7fb4d57e089eb385",
      "tree": "c925e75212ff309bdfaf6dfef7cbe9defb00c7fc",
      "parents": [
        "1faadface9c5d000bb16e42c89f24859337cf2db"
      ],
      "author": {
        "name": "Bryan O\u0027Sullivan",
        "email": "bos@pathscale.com",
        "time": "Tue May 23 11:32:29 2006 -0700"
      },
      "committer": {
        "name": "Roland Dreier",
        "email": "rolandd@cisco.com",
        "time": "Tue May 23 13:27:06 2006 -0700"
      },
      "message": "IB/ipath: fix spinlock recursion bug\n\nThe local loopback path for RC can lock the rkey table lock without\nblocking interrupts.  The receive interrupt path can then call\nipath_rkey_ok() and deadlock.  Remove the redundant lock.\n\nSigned-off-by: Bryan O\u0027Sullivan \u003cbos@pathscale.com\u003e\nSigned-off-by: Roland Dreier \u003crolandd@cisco.com\u003e\n"
    },
    {
      "commit": "23f3bc0f2c1e26215b671499c07047c325d54d9c",
      "tree": "a76e595b413de71d7f6fae1d959566447e1f6c5e",
      "parents": [
        "0cb4fe8d2658dc0bd1accfbb74ee288a9d6788f4"
      ],
      "author": {
        "name": "Michael S. Tsirkin",
        "email": "mst@mellanox.co.il",
        "time": "Thu May 18 18:32:54 2006 +0300"
      },
      "committer": {
        "name": "Roland Dreier",
        "email": "rolandd@cisco.com",
        "time": "Thu May 18 11:37:03 2006 -0700"
      },
      "message": "IB/mthca: Fix posting lists of 256 receive requests for Tavor\n\nIf we post a list of length 256 exactly, nreq in doorbell gets set to\n256 which is wrong: it should be encoded by 0.  This is because we\nonly zero it out on the next WR, which may not be there.  The solution\nis to ring the doorbell after posting a WQE, not before posting the\nnext one.\n\nSigned-off-by: Michael S. Tsirkin \u003cmst@mellanox.co.il\u003e\nSigned-off-by: Roland Dreier \u003crolandd@cisco.com\u003e\n"
    },
    {
      "commit": "0cb4fe8d2658dc0bd1accfbb74ee288a9d6788f4",
      "tree": "26d1c7122d28acecb99698aef362d667b684bfb6",
      "parents": [
        "093beac189e4295d968f0d38787b46f76cb0eaaa"
      ],
      "author": {
        "name": "Roland Dreier",
        "email": "rolandd@cisco.com",
        "time": "Wed May 17 22:20:50 2006 -0700"
      },
      "committer": {
        "name": "Roland Dreier",
        "email": "rolandd@cisco.com",
        "time": "Wed May 17 22:20:50 2006 -0700"
      },
      "message": "IB/uverbs: Don\u0027t leak ref to mm on error path\n\nIn ib_umem_release_on_close(), if the kmalloc() fails, then a\nreference to current-\u003emm will be leaked.  Fix this by adding a mmput()\ninstead of just returning on kmalloc() failure.\n\nSigned-off-by: Roland Dreier \u003crolandd@cisco.com\u003e\n"
    },
    {
      "commit": "093beac189e4295d968f0d38787b46f76cb0eaaa",
      "tree": "d5d5c476dd06b3ba6a5a7fc4787a3bbdc9d4ba63",
      "parents": [
        "ec2d7208494fe599a5ff13b40a0a20c9881f2737"
      ],
      "author": {
        "name": "Ishai Rabinovitz",
        "email": "ishai@mellanox.co.il",
        "time": "Wed May 17 09:20:48 2006 -0700"
      },
      "committer": {
        "name": "Roland Dreier",
        "email": "rolandd@cisco.com",
        "time": "Wed May 17 09:20:48 2006 -0700"
      },
      "message": "IB/srp: Complete correct SCSI commands on device reset\n\nWhen flushing out queued commands after a successful device reset,\nmake sure that SRP completes the right commands, instead of calling\nscsi_done on the command passed into the device reset handler over and\nover.\n\nSigned-off-by: Ishai Rabinovitz \u003cishai@mellanox.co.il\u003e\nSigned-off-by: Roland Dreier \u003crolandd@cisco.com\u003e\n"
    },
    {
      "commit": "ec2d7208494fe599a5ff13b40a0a20c9881f2737",
      "tree": "32af58729f73b18d08fa8759a3408cb4058c6455",
      "parents": [
        "e65810566f3e613d9baa5512b8724ebde42ace0f"
      ],
      "author": {
        "name": "Roland Dreier",
        "email": "rolandd@cisco.com",
        "time": "Wed May 17 09:16:03 2006 -0700"
      },
      "committer": {
        "name": "Roland Dreier",
        "email": "rolandd@cisco.com",
        "time": "Wed May 17 09:16:03 2006 -0700"
      },
      "message": "IB/srp: Get rid of extra scsi_host_put()s if reconnection fails\n\nIf a reconnection attempt fails, then SRP does two scsi_host_put()s.\nThis is a historical relic from an earlier version of the driver that\ntook a reference on the scsi_host before trying to reconnect, so get\nrid of the extra scsi_host_put().\n\nSigned-off-by: Roland Dreier \u003crolandd@cisco.com\u003e\n"
    },
    {
      "commit": "e65810566f3e613d9baa5512b8724ebde42ace0f",
      "tree": "4d2cb2737f240eff4a54d73fd4f33ced16954526",
      "parents": [
        "1db76c14d215c8b26024dd532de3dcaf66ea30f7"
      ],
      "author": {
        "name": "Roland Dreier",
        "email": "rolandd@cisco.com",
        "time": "Wed May 17 09:13:21 2006 -0700"
      },
      "committer": {
        "name": "Roland Dreier",
        "email": "rolandd@cisco.com",
        "time": "Wed May 17 09:13:21 2006 -0700"
      },
      "message": "IB/srp: Don\u0027t wait for disconnection if sending DREQ fails\n\nSending a DREQ may fail, for example because the remote target has\nalready broken the connection.  If so, then SRP should not wait for\nthe disconnection to complete, because it never will.\n\nSigned-off-by: Roland Dreier \u003crolandd@cisco.com\u003e\n"
    },
    {
      "commit": "1db76c14d215c8b26024dd532de3dcaf66ea30f7",
      "tree": "6c9c22c450e20e98b75e835930c897c99477c788",
      "parents": [
        "032ebf2620ef99a4fedaa0f77dc2272095ac5863"
      ],
      "author": {
        "name": "Roland Dreier",
        "email": "rolandd@cisco.com",
        "time": "Wed May 17 07:48:07 2006 -0700"
      },
      "committer": {
        "name": "Roland Dreier",
        "email": "rolandd@cisco.com",
        "time": "Wed May 17 07:48:07 2006 -0700"
      },
      "message": "IB/mthca: Make fw_cmd_doorbell default to 0\n\nSetting fw_cmd_doorbell allows FW command to be queued using posted\nwrites instead of requiring polling on a \"go\" bit, so it should be a\nperformance boost.  However, the option causes problems with at least\nsome device/firmware combinations, so set the default to 0 until we\nunderstand what\u0027s going on better.\n\nSigned-off-by: Roland Dreier \u003crolandd@cisco.com\u003e\n"
    },
    {
      "commit": "1b52fa98edd1c3e663ea4a06519e3d20976084a8",
      "tree": "178d5fd1fe2230b39f49cd36f481024e49878eb1",
      "parents": [
        "6f4bb3d8205d943acafa2f536f37131777524b67"
      ],
      "author": {
        "name": "Sean Hefty",
        "email": "mshefty@ichips.intel.com",
        "time": "Fri May 12 14:57:52 2006 -0700"
      },
      "committer": {
        "name": "Roland Dreier",
        "email": "rolandd@cisco.com",
        "time": "Fri May 12 14:57:52 2006 -0700"
      },
      "message": "IB: refcount race fixes\n\nFix race condition during destruction calls to avoid possibility of\naccessing object after it has been freed.  Instead of waking up a wait\nqueue directly, which is susceptible to a race where the object is\nfreed between the reference count going to 0 and the wake_up(), use a\ncompletion to wait in the function doing the freeing.\n\nSigned-off-by: Sean Hefty \u003csean.hefty@intel.com\u003e\nSigned-off-by: Roland Dreier \u003crolandd@cisco.com\u003e\n"
    },
    {
      "commit": "6f4bb3d8205d943acafa2f536f37131777524b67",
      "tree": "c91bbf0190eef4e36be82fed70a6cbd4f01694a3",
      "parents": [
        "be1fd94fd698e9dfa2676f688d4e9b034e0d4b9e"
      ],
      "author": {
        "name": "Roland Dreier",
        "email": "rolandd@cisco.com",
        "time": "Fri May 12 14:57:52 2006 -0700"
      },
      "committer": {
        "name": "Roland Dreier",
        "email": "rolandd@cisco.com",
        "time": "Fri May 12 14:57:52 2006 -0700"
      },
      "message": "IB/ipath: Properly terminate PCI ID table\n\nThe ipath driver\u0027s table of PCI IDs needs a { 0, } entry at the end.\nThis makes all of the device aliases visible to userspace so hotplug\nloads the module for all supported devices.  Without the patch,\nmodinfo ipath_core only shows:\n\n    alias:          pci:v00001FC1d0000000Dsv*sd*bc*sc*i*\n\ninstead of the correct:\n\n    alias:          pci:v00001FC1d00000010sv*sd*bc*sc*i*\n    alias:          pci:v00001FC1d0000000Dsv*sd*bc*sc*i*\n\nSigned-off-by: Roland Dreier \u003crolandd@cisco.com\u003e\nSigned-off-by: Bryan O\u0027Sullivan \u003cbos@pathscale.com\u003e\n"
    },
    {
      "commit": "ce477ae4f8c75c94587c3157deffad8219db09a0",
      "tree": "772147685889baa627fc058ecb53a98229bfe4f7",
      "parents": [
        "5941d079f2c3bdf0dffed1afb8941678fcd0bcb7"
      ],
      "author": {
        "name": "Michael S. Tsirkin",
        "email": "mst@mellanox.co.il",
        "time": "Wed May 10 17:58:41 2006 +0300"
      },
      "committer": {
        "name": "Roland Dreier",
        "email": "rolandd@cisco.com",
        "time": "Wed May 10 15:16:57 2006 -0700"
      },
      "message": "IB/mthca: FMR ioremap fix\n\nAddresses for ioremap must be calculated off of pci_resource_start;\nwe can\u0027t directly use the bus address as seen by the HCA.  Fix the\ncode that remaps device memory for FMR access.\n\nBased on patch by Klaus Smolin.\n\nSigned-off-by: Michael S. Tsirkin \u003cmst@mellanox.co.il\u003e\nSigned-off-by: Roland Dreier \u003crolandd@cisco.com\u003e\n"
    },
    {
      "commit": "5941d079f2c3bdf0dffed1afb8941678fcd0bcb7",
      "tree": "ba07f5ef258f51e095d0bc3fa77d03321b8866a2",
      "parents": [
        "a3285aa4eecd722508dab01c4932b11b4ba80134"
      ],
      "author": {
        "name": "Roland Dreier",
        "email": "rolandd@cisco.com",
        "time": "Tue May 09 22:54:59 2006 -0700"
      },
      "committer": {
        "name": "Roland Dreier",
        "email": "rolandd@cisco.com",
        "time": "Tue May 09 22:54:59 2006 -0700"
      },
      "message": "IPoIB: Free child interfaces properly\n\nWhen deleting a child interface with a non-default P_Key via\n/sys/class/net/ibX/delete_child, the interface must be freed with\nfree_netdev() (rather than kfree() on the private data).\n\nSigned-off-by: Roland Dreier \u003crolandd@cisco.com\u003e\n"
    },
    {
      "commit": "a3285aa4eecd722508dab01c4932b11b4ba80134",
      "tree": "1d12d6bbba7f42939536ccdba14f7738f2a26793",
      "parents": [
        "d945e1df28ca07642b3e1a9b9d07074ba5f76be0"
      ],
      "author": {
        "name": "Roland Dreier",
        "email": "rolandd@cisco.com",
        "time": "Tue May 09 10:50:29 2006 -0700"
      },
      "committer": {
        "name": "Roland Dreier",
        "email": "rolandd@cisco.com",
        "time": "Tue May 09 10:50:29 2006 -0700"
      },
      "message": "IB/mthca: Fix race in reference counting\n\nFix races in in destroying various objects.  If a destroy routine\nwaits for an object to become free by doing\n\n\twait_event(\u0026obj-\u003ewait, !atomic_read(\u0026obj-\u003erefcount));\n\t/* now clean up and destroy the object */\n\nand another place drops a reference to the object by doing\n\n\tif (atomic_dec_and_test(\u0026obj-\u003erefcount))\n\t\twake_up(\u0026obj-\u003ewait);\n\nthen this is susceptible to a race where the wait_event() and final\nfreeing of the object occur between the atomic_dec_and_test() and the\nwake_up().  And this is a use-after-free, since wake_up() will be\ncalled on part of the already-freed object.\n\nFix this in mthca by replacing the atomic_t refcounts with plain old\nintegers protected by a spinlock.  This makes it possible to do the\ndecrement of the reference count and the wake_up() so that it appears\nas a single atomic operation to the code waiting on the wait queue.\n\nWhile touching this code, also simplify mthca_cq_clean(): the CQ being\ncleaned cannot go away, because it still has a QP attached to it.  So\nthere\u0027s no reason to be paranoid and look up the CQ by number; it\u0027s\nperfectly safe to use the pointer that the callers already have.\n\nSigned-off-by: Roland Dreier \u003crolandd@cisco.com\u003e\n"
    },
    {
      "commit": "d945e1df28ca07642b3e1a9b9d07074ba5f76be0",
      "tree": "ff392416f1339dd222b9470c24db1ec4defc1bf5",
      "parents": [
        "d8b9f23b23e080d820e3c0aa5ccd7834c26ebf96"
      ],
      "author": {
        "name": "Roland Dreier",
        "email": "rolandd@cisco.com",
        "time": "Tue May 09 10:50:28 2006 -0700"
      },
      "committer": {
        "name": "Roland Dreier",
        "email": "rolandd@cisco.com",
        "time": "Tue May 09 10:50:28 2006 -0700"
      },
      "message": "IB/srp: Fix tracking of pending requests during error handling\n\nIf a SCSI abort completes, or the command completes successfully, then\nthe driver must remove the command from its queue of pending\ncommands.  Similarly, if a device reset succeeds, then all commands\nqueued for the given device must be removed from the queue.\n\nSigned-off-by: Roland Dreier \u003crolandd@cisco.com\u003e\n"
    },
    {
      "commit": "d8b9f23b23e080d820e3c0aa5ccd7834c26ebf96",
      "tree": "d6b4b8576ad5df14c24515c55ee8316c252a6ca0",
      "parents": [
        "3cd73eedde34c5fd88d62d8523c4260970fdc6fb"
      ],
      "author": {
        "name": "Ralph Campbell",
        "email": "ralph.campbell@qlogic.com",
        "time": "Tue May 09 10:50:28 2006 -0700"
      },
      "committer": {
        "name": "Roland Dreier",
        "email": "rolandd@cisco.com",
        "time": "Tue May 09 10:50:28 2006 -0700"
      },
      "message": "IB: Fix display of 4-bit port counters in sysfs\n\nThe code to display local_link_integrity_errors and\nexcessive_buffer_overrun_errors in\n/sys/class/infiniband/\u003chca\u003e/ports/\u003cn\u003e/counters/\nuses the wrong shift to extract the 4 bit values.\n\nSigned-off-by: Ralph Campbell \u003cralph.campbell@qlogic.com\u003e\nSigned-off-by: Roland Dreier \u003crolandd@cisco.com\u003e\n"
    },
    {
      "commit": "f6f0413e10b76440fb82efebc63120f3b6d42adb",
      "tree": "59be18af9ca5c47c6a552dadd884459a3eab0914",
      "parents": [
        "d562a5ae69bd5643d777788117d02acb22fab347"
      ],
      "author": {
        "name": "Bryan O\u0027Sullivan",
        "email": "bos@pathscale.com",
        "time": "Mon Apr 24 14:23:09 2006 -0700"
      },
      "committer": {
        "name": "Roland Dreier",
        "email": "rolandd@cisco.com",
        "time": "Mon May 01 12:14:23 2006 -0700"
      },
      "message": "IB/ipath: tidy up white space in a few files\n\nSigned-off-by: Bryan O\u0027Sullivan \u003cbos@pathscale.com\u003e\nSigned-off-by: Roland Dreier \u003crolandd@cisco.com\u003e\n"
    },
    {
      "commit": "d562a5ae69bd5643d777788117d02acb22fab347",
      "tree": "d903dfecf15d3265ce13cdfd0ed76aa5abf30995",
      "parents": [
        "ae15f540cc52acbcbfdf4b902d214a5db5c835d2"
      ],
      "author": {
        "name": "Bryan O\u0027Sullivan",
        "email": "bos@pathscale.com",
        "time": "Mon Apr 24 14:23:08 2006 -0700"
      },
      "committer": {
        "name": "Roland Dreier",
        "email": "rolandd@cisco.com",
        "time": "Mon May 01 12:14:22 2006 -0700"
      },
      "message": "IB/ipath: fix label name in interrupt handler\n\nNames that are the opposite of their intended meanings are not so helpful.\n\nSigned-off-by: Bryan O\u0027Sullivan \u003cbos@pathscale.com\u003e\nSigned-off-by: Roland Dreier \u003crolandd@cisco.com\u003e\n"
    },
    {
      "commit": "ae15f540cc52acbcbfdf4b902d214a5db5c835d2",
      "tree": "1e3e6a15f6d73fab9fa1a3bd0a8f5ec47cf6ccba",
      "parents": [
        "9b2017f1e1c95625b2ca2a1ec5317097117d7078"
      ],
      "author": {
        "name": "Bryan O\u0027Sullivan",
        "email": "bos@pathscale.com",
        "time": "Mon Apr 24 14:23:07 2006 -0700"
      },
      "committer": {
        "name": "Roland Dreier",
        "email": "rolandd@cisco.com",
        "time": "Mon May 01 12:14:21 2006 -0700"
      },
      "message": "IB/ipath: improve sparse annotation\n\nSigned-off-by: Bryan O\u0027Sullivan \u003cbos@pathscale.com\u003e\nSigned-off-by: Roland Dreier \u003crolandd@cisco.com\u003e\n"
    },
    {
      "commit": "9b2017f1e1c95625b2ca2a1ec5317097117d7078",
      "tree": "2f799016e4f05348ddf6e01d71993c08fd5b0a0f",
      "parents": [
        "76f0dd141b477094b026206c0d8c21beac6069f5"
      ],
      "author": {
        "name": "Bryan O\u0027Sullivan",
        "email": "bos@pathscale.com",
        "time": "Mon Apr 24 14:23:06 2006 -0700"
      },
      "committer": {
        "name": "Roland Dreier",
        "email": "rolandd@cisco.com",
        "time": "Mon May 01 12:14:21 2006 -0700"
      },
      "message": "IB/ipath: simplify IB timer usage\n\nSigned-off-by: Bryan O\u0027Sullivan \u003cbos@pathscale.com\u003e\nSigned-off-by: Roland Dreier \u003crolandd@cisco.com\u003e\n"
    },
    {
      "commit": "76f0dd141b477094b026206c0d8c21beac6069f5",
      "tree": "7ca7f8dace47a2aaa0440d881d581a589dec2463",
      "parents": [
        "c71c30dcba142f16bc5f651812b1bc0b9f70f02d"
      ],
      "author": {
        "name": "Bryan O\u0027Sullivan",
        "email": "bos@pathscale.com",
        "time": "Mon Apr 24 14:23:05 2006 -0700"
      },
      "committer": {
        "name": "Roland Dreier",
        "email": "rolandd@cisco.com",
        "time": "Mon May 01 12:14:20 2006 -0700"
      },
      "message": "IB/ipath: simplify RC send posting\n\nRemove some unnecessarily complicated tests.\n\nSigned-off-by: Bryan O\u0027Sullivan \u003cbos@pathscale.com\u003e\nSigned-off-by: Roland Dreier \u003crolandd@cisco.com\u003e\n"
    },
    {
      "commit": "c71c30dcba142f16bc5f651812b1bc0b9f70f02d",
      "tree": "a6cb67f3b2c59d5eeb3638c859d983d9006c5a2d",
      "parents": [
        "fccea663643cedfa310c5254da30e1e35e09199b"
      ],
      "author": {
        "name": "Bryan O\u0027Sullivan",
        "email": "bos@pathscale.com",
        "time": "Mon Apr 24 14:23:03 2006 -0700"
      },
      "committer": {
        "name": "Roland Dreier",
        "email": "rolandd@cisco.com",
        "time": "Mon May 01 12:14:16 2006 -0700"
      },
      "message": "IB/ipath: prevent hardware from being accessed during reset\n\nThe reset code now turns off the PRESENT flag during a reset, so that\nother code won\u0027t attempt to access a device that\u0027s in mid-reset.\n\nSigned-off-by: Bryan O\u0027Sullivan \u003cbos@pathscale.com\u003e\nSigned-off-by: Roland Dreier \u003crolandd@cisco.com\u003e\n"
    },
    {
      "commit": "fccea663643cedfa310c5254da30e1e35e09199b",
      "tree": "a377c3608bd8b0ce02f0145cde6012dcc046cfbb",
      "parents": [
        "52e7fad825c47fb86801f23b9f793da1d2774f18"
      ],
      "author": {
        "name": "Bryan O\u0027Sullivan",
        "email": "bos@pathscale.com",
        "time": "Mon Apr 24 14:23:02 2006 -0700"
      },
      "committer": {
        "name": "Roland Dreier",
        "email": "rolandd@cisco.com",
        "time": "Mon May 01 12:14:15 2006 -0700"
      },
      "message": "IB/ipath: fix verbs registration\n\nRemember when the verbs layer unregisters from the lower-level code.\n\nSigned-off-by: Bryan O\u0027Sullivan \u003cbos@pathscale.com\u003e\nSigned-off-by: Roland Dreier \u003crolandd@cisco.com\u003e\n"
    },
    {
      "commit": "52e7fad825c47fb86801f23b9f793da1d2774f18",
      "tree": "22b5b7c03c07a786a20e7faa8d3a2901685b46f8",
      "parents": [
        "23e86a4584606a08393e0ad3a5ca27b19a3de374"
      ],
      "author": {
        "name": "Bryan O\u0027Sullivan",
        "email": "bos@pathscale.com",
        "time": "Mon Apr 24 14:23:00 2006 -0700"
      },
      "committer": {
        "name": "Roland Dreier",
        "email": "rolandd@cisco.com",
        "time": "Mon May 01 12:14:14 2006 -0700"
      },
      "message": "IB/ipath: change handling of PIO buffers\n\nDifferent ipath hardware types have different numbers of buffers\navailable, so we decide on the counts ourselves unless we are specifically\noverridden with a module parameter.\n\nSigned-off-by: Bryan O\u0027Sullivan \u003cbos@pathscale.com\u003e\nSigned-off-by: Roland Dreier \u003crolandd@cisco.com\u003e\n"
    },
    {
      "commit": "23e86a4584606a08393e0ad3a5ca27b19a3de374",
      "tree": "b0f7c792c53611402e31bb9405d05214467fa3d1",
      "parents": [
        "68dd43a162b43218d2e5ac1d139c1d53da965f54"
      ],
      "author": {
        "name": "Bryan O\u0027Sullivan",
        "email": "bos@pathscale.com",
        "time": "Mon Apr 24 14:22:59 2006 -0700"
      },
      "committer": {
        "name": "Roland Dreier",
        "email": "rolandd@cisco.com",
        "time": "Mon May 01 12:14:13 2006 -0700"
      },
      "message": "IB/ipath: iterate over correct number of ports during reset\n\nSigned-off-by: Bryan O\u0027Sullivan \u003cbos@pathscale.com\u003e\nSigned-off-by: Roland Dreier \u003crolandd@cisco.com\u003e\n"
    },
    {
      "commit": "68dd43a162b43218d2e5ac1d139c1d53da965f54",
      "tree": "5c21df89d9b154b287cc340a5ac4be97d1a61e3f",
      "parents": [
        "755e4ca4a9885b79a14169ab5b615920eb38a32a"
      ],
      "author": {
        "name": "Bryan O\u0027Sullivan",
        "email": "bos@pathscale.com",
        "time": "Mon Apr 24 14:22:58 2006 -0700"
      },
      "committer": {
        "name": "Roland Dreier",
        "email": "rolandd@cisco.com",
        "time": "Mon May 01 12:14:12 2006 -0700"
      },
      "message": "IB/ipath: set up 32-bit DMA mask if 64-bit setup fails\n\nSome systems do not set up 64-bit maps on systems with 2GB or less of\nmemory installed, so we have to fall back to trying a 32-bit setup.\n\nSigned-off-by: Bryan O\u0027Sullivan \u003cbos@pathscale.com\u003e\nSigned-off-by: Roland Dreier \u003crolandd@cisco.com\u003e\n"
    },
    {
      "commit": "755e4ca4a9885b79a14169ab5b615920eb38a32a",
      "tree": "df85b5a5f16f25db7f6d106c69f4ddb10b9f1880",
      "parents": [
        "254abfd33a214617deb916585b306faee834c97f"
      ],
      "author": {
        "name": "Bryan O\u0027Sullivan",
        "email": "bos@pathscale.com",
        "time": "Mon Apr 24 14:22:57 2006 -0700"
      },
      "committer": {
        "name": "Roland Dreier",
        "email": "rolandd@cisco.com",
        "time": "Mon May 01 12:14:11 2006 -0700"
      },
      "message": "IB/ipath: fix race with exposing reset file\n\nWe were accidentally exposing the \"reset\" sysfs file more than once\nper device.\n\nSigned-off-by: Bryan O\u0027Sullivan \u003cbos@pathscale.com\u003e\nSigned-off-by: Roland Dreier \u003crolandd@cisco.com\u003e\n"
    },
    {
      "commit": "254abfd33a214617deb916585b306faee834c97f",
      "tree": "a926e60a3733a24e5e666d9e21877813f34e1228",
      "parents": [
        "1f4a90670bacbf61f2fcc19a9e0e78748c932a25"
      ],
      "author": {
        "name": "Roland Dreier",
        "email": "rolandd@cisco.com",
        "time": "Mon May 01 10:40:23 2006 -0700"
      },
      "committer": {
        "name": "Roland Dreier",
        "email": "rolandd@cisco.com",
        "time": "Mon May 01 10:40:23 2006 -0700"
      },
      "message": "IB/mthca: Fix offset in query_gid method\n\nGuidInfo records have 8 byte GUIDs in them, so an index should be\nmultiplied by 8 to get an offset.  mthca_query_gid() was incorrectly\nmultiplying by 16.\n\nNoticed by Leonid Keller \u003cleonid@mellanox.co.il\u003e.\n\nSigned-off-by: Roland Dreier \u003crolandd@cisco.com\u003e\n"
    },
    {
      "commit": "415dcd95b25b59631656f559570d1a973bf691a9",
      "tree": "1019e737207ecf1bd69dbcbef1e6e655dda83d2d",
      "parents": [
        "5494c22ba293a37534591d793f73e445a66196b5"
      ],
      "author": {
        "name": "Adrian Bunk",
        "email": "bunk@stusta.de",
        "time": "Wed Apr 19 00:15:35 2006 +0200"
      },
      "committer": {
        "name": "Roland Dreier",
        "email": "rolandd@cisco.com",
        "time": "Wed Apr 19 11:40:12 2006 -0700"
      },
      "message": "IB/mthca: make a function static\n\nThis patch makes the needlessly global mthca_update_rate() static.\n\nSigned-off-by: Adrian Bunk \u003cbunk@stusta.de\u003e\nSigned-off-by: Roland Dreier \u003crolandd@cisco.com\u003e\n"
    },
    {
      "commit": "5494c22ba293a37534591d793f73e445a66196b5",
      "tree": "6e3d5d25eed0ac80a32e85a834012ea6dde6d3d3",
      "parents": [
        "ac2ae4c9770de9450a8e881082a54bbb6f09534e"
      ],
      "author": {
        "name": "Roland Dreier",
        "email": "rolandd@cisco.com",
        "time": "Wed Apr 19 11:40:12 2006 -0700"
      },
      "committer": {
        "name": "Roland Dreier",
        "email": "rolandd@cisco.com",
        "time": "Wed Apr 19 11:40:12 2006 -0700"
      },
      "message": "IB/ipath: Fix whitespace\n\nSigned-off-by: Roland Dreier \u003crolandd@cisco.com\u003e\n"
    },
    {
      "commit": "ac2ae4c9770de9450a8e881082a54bbb6f09534e",
      "tree": "af8c250aa16dd78b1dc6accf29dbc4fdf2af0900",
      "parents": [
        "64cb9c6aff273b1cd449e773c937378d68233f8b"
      ],
      "author": {
        "name": "Roland Dreier",
        "email": "rolandd@cisco.com",
        "time": "Wed Apr 19 11:40:12 2006 -0700"
      },
      "committer": {
        "name": "Roland Dreier",
        "email": "rolandd@cisco.com",
        "time": "Wed Apr 19 11:40:12 2006 -0700"
      },
      "message": "IB/ipath: Make more names static\n\nMake symbols that are only used in a single source file static.\n\nSigned-off-by: Roland Dreier \u003crolandd@cisco.com\u003e\n"
    },
    {
      "commit": "64cb9c6aff273b1cd449e773c937378d68233f8b",
      "tree": "a39978e7cbc58de3edda228c95ca328ced510435",
      "parents": [
        "f80887d0b9e1af481dc4a30fc145dfed24ddfd59"
      ],
      "author": {
        "name": "Hal Rosenstock",
        "email": "halr@voltaire.com",
        "time": "Wed Apr 12 21:29:10 2006 -0400"
      },
      "committer": {
        "name": "Roland Dreier",
        "email": "rolandd@cisco.com",
        "time": "Wed Apr 19 11:40:11 2006 -0700"
      },
      "message": "IB/mad: Fix RMPP version check during agent registration\n\nOnly check that RMPP version is not specified when MAD class does not\nsupport RMPP.  Just because a class is allowed to use RMPP doesn\u0027t\nmean that rmpp_version needs to be set for the MAD agent to\nregister. Checking this was a recent change which was too pedantic.\n\nSigned-off-by: Hal Rosenstock \u003chalr@voltaire.com\u003e\nSigned-off-by: Roland Dreier \u003crolandd@cisco.com\u003e\n"
    },
    {
      "commit": "f80887d0b9e1af481dc4a30fc145dfed24ddfd59",
      "tree": "a928a8469193981b7df4df4db8c16baa44da4fd8",
      "parents": [
        "0efd9323f32c137b5cf48bc6582cd08556e7cdfc"
      ],
      "author": {
        "name": "Roland Dreier",
        "email": "rolandd@cisco.com",
        "time": "Wed Apr 19 11:40:10 2006 -0700"
      },
      "committer": {
        "name": "Roland Dreier",
        "email": "rolandd@cisco.com",
        "time": "Wed Apr 19 11:40:10 2006 -0700"
      },
      "message": "IB/srp: Remove request from list when SCSI abort succeeds\n\nIf a SCSI abort succeeds, then the aborted request should to be\nremoved from the list of pending requests.  This fixes list corruption\nafter an abort occurs.\n\nSigned-off-by: Roland Dreier \u003crolandd@cisco.com\u003e\n"
    },
    {
      "commit": "59fef3b1e96217c6e736372ff8cc95cbcca1b6aa",
      "tree": "5373713d77df970b52e9dd968a69252d469433a9",
      "parents": [
        "ce684df05a531904ea055d01aeee75321fa0db1e"
      ],
      "author": {
        "name": "Jack Morgenstein",
        "email": "jackm@mellanox.co.il",
        "time": "Tue Apr 11 18:16:27 2006 +0300"
      },
      "committer": {
        "name": "Roland Dreier",
        "email": "rolandd@cisco.com",
        "time": "Wed Apr 12 11:42:30 2006 -0700"
      },
      "message": "IB/mthca: Fix max_srq_sge returned by ib_query_device for Tavor devices\n\nThe driver allocates SRQ WQEs size with a power of 2 size both for\nTavor and for memfree. For Tavor, however, the hardware only requires\nthe WQE size to be a multiple of 16, not a power of 2, and the max\nnumber of scatter-gather allowed is reported accordingly by the\nfirmware (and this is the value currently returned by\nib_query_device() and ibv_query_device()).\n\nIf the max number of scatter/gather entries reported by the FW is used\nwhen creating an SRQ, the creation will fail for Tavor, since the\nrequired WQE size will be increased to the next power of 2, which\nturns out to be larger than the device permitted max WQE size (which\nis not a power of 2).\n\nThis patch reduces the reported SRQ max wqe size so that it can be used\nsuccessfully in creating an SRQ on Tavor HCAs.\n\nSigned-off-by: Jack Morgenstein \u003cjackm@mellanox.co.il\u003e\nSigned-off-by: Roland Dreier \u003crolandd@cisco.com\u003e\n\n"
    },
    {
      "commit": "ce684df05a531904ea055d01aeee75321fa0db1e",
      "tree": "0190ad3a94d12efeed218abe8e69a9062a75c75c",
      "parents": [
        "f697f74a6b189702474b2fd457e1f9365fa213e3"
      ],
      "author": {
        "name": "Michael S. Tsirkin",
        "email": "mst@mellanox.co.il",
        "time": "Mon Apr 10 13:17:43 2006 -0700"
      },
      "committer": {
        "name": "Roland Dreier",
        "email": "rolandd@cisco.com",
        "time": "Mon Apr 10 13:17:43 2006 -0700"
      },
      "message": "IB/cache: Use correct pointer to calculate size\n\nWhen allocating gid_cache, use kmalloc(sizeof *gid_cache, ...) rather\nthan kmalloc(sizeof *pkey_cache, ...).  It doesn\u0027t really matter which\none is used, since the size ends up the same either way, but it\u0027s much\nbetter to say what we mean.\n\nSigned-off-by: Michael S. Tsirkin \u003cmst@mellanox.co.il\u003e\nSigned-off-by: Roland Dreier \u003crolandd@cisco.com\u003e\n"
    },
    {
      "commit": "f697f74a6b189702474b2fd457e1f9365fa213e3",
      "tree": "2e01abf6b8f324b195c7d72e925b79e9eca9ab1f",
      "parents": [
        "a30bb96c6f5aca6513e4dbd94962da03d14b20a9"
      ],
      "author": {
        "name": "Roland Dreier",
        "email": "rolandd@cisco.com",
        "time": "Mon Apr 10 09:43:59 2006 -0700"
      },
      "committer": {
        "name": "Roland Dreier",
        "email": "rolandd@cisco.com",
        "time": "Mon Apr 10 09:43:59 2006 -0700"
      },
      "message": "IPoIB: Use spin_lock_irq() instead of spin_lock_irqsave()\n\nWe know ipoib_flush_paths() is called from plain process context with\ninterrupts enabled, since it does wait_for_completion().  So there\u0027s\nno need to use spin_lock_irqsave() -- spin_lock_irq() is fine.\n\nSigned-off-by: Roland Dreier \u003crolandd@cisco.com\u003e\n"
    },
    {
      "commit": "a30bb96c6f5aca6513e4dbd94962da03d14b20a9",
      "tree": "7314d0813071b9e1b808422c96e868c26e14245a",
      "parents": [
        "abf45dbb5b256dab439ca3b6b71191ecfddf9cb6"
      ],
      "author": {
        "name": "Eli Cohen",
        "email": "eli@mellanox.co.il",
        "time": "Wed Apr 05 15:59:34 2006 +0300"
      },
      "committer": {
        "name": "Roland Dreier",
        "email": "rolandd@cisco.com",
        "time": "Mon Apr 10 09:43:59 2006 -0700"
      },
      "message": "IPoIB: Close race in ipoib_flush_paths()\n\nib_sa_cancel_query() must be called with priv-\u003elock held since\na completion might arrive and set path-\u003equery to NULL.\n\nSigned-off-by: Eli Cohen \u003celi@mellanox.co.il\u003e\nSigned-off-by: Roland Dreier \u003crolandd@cisco.com\u003e\n"
    },
    {
      "commit": "abf45dbb5b256dab439ca3b6b71191ecfddf9cb6",
      "tree": "c2b95e3e911f6c8649c84c196de8b399cf7db269",
      "parents": [
        "0f4852513fb07405ce88da40d8c497060561246e"
      ],
      "author": {
        "name": "Michael S. Tsirkin",
        "email": "mst@mellanox.co.il",
        "time": "Wed Apr 05 15:47:16 2006 +0300"
      },
      "committer": {
        "name": "Roland Dreier",
        "email": "rolandd@cisco.com",
        "time": "Mon Apr 10 09:43:58 2006 -0700"
      },
      "message": "IB/mthca: Disable tuning PCI read burst size\n\nThe PCI spec recommends against drivers playing with a device\u0027s PCI\nread burst size, and says that systems software should configure it.\nAnd we actually have users that report that changing it from the\ndefault set by BIOS hurts performance and/or stability for them.  On\nthe other hand, the Mellanox Programmer\u0027s Reference Manual recommends\nturning it up all the way to the maximum value.  Some tests conducted\nhere in the lab do not show performance improvement from this tuning,\nbut this might be just me.\n\nAs a work-around, make this tuning an option, off by default (safe\nvalue), with an eye towards removing it completely one day if no one\ncomplains.\n\nSigned-off-by: Michael S. Tsirkin \u003cmst@mellanox.co.il\u003e\nSigned-off-by: Roland Dreier \u003crolandd@cisco.com\u003e\n"
    },
    {
      "commit": "0f4852513fb07405ce88da40d8c497060561246e",
      "tree": "4221d43a7868b0431d7564601017d8f1449cd13d",
      "parents": [
        "f2de3b06126ddb07d0e4617225d74dce0855add3"
      ],
      "author": {
        "name": "Shirley Ma",
        "email": "xma@us.ibm.com",
        "time": "Mon Apr 10 09:43:58 2006 -0700"
      },
      "committer": {
        "name": "Roland Dreier",
        "email": "rolandd@cisco.com",
        "time": "Mon Apr 10 09:43:58 2006 -0700"
      },
      "message": "IPoIB: Make send and receive queue sizes tunable\n\nMake IPoIB\u0027s send and receive queue sizes tunable via module\nparameters (\"send_queue_size\" and \"recv_queue_size\").  This allows the\nqueue sizes to be enlarged to fix disastrously bad performance on some\nplatforms and workloads, without bloating memory usage when large\nqueues aren\u0027t needed.\n\nSigned-off-by: Shirley Ma \u003cxma@us.ibm.com\u003e\nSigned-off-by: Roland Dreier \u003crolandd@cisco.com\u003e\n"
    },
    {
      "commit": "f2de3b06126ddb07d0e4617225d74dce0855add3",
      "tree": "21a62b2115804688d700c01ed2ede87413b5d9d1",
      "parents": [
        "bf6a9e31cfa768ce0a8e18474b3ca808641d9243"
      ],
      "author": {
        "name": "Eli Cohen",
        "email": "eli@mellanox.co.il",
        "time": "Wed Apr 05 14:59:40 2006 +0300"
      },
      "committer": {
        "name": "Roland Dreier",
        "email": "rolandd@cisco.com",
        "time": "Mon Apr 10 09:43:58 2006 -0700"
      },
      "message": "IPoIB: Wait for join to finish before freeing mcast struct\n\nipoib_mcast_restart_task() might free an mcast object while a join\nrequest is still outstanding, leading to an oops when the query\ncompletes.  Fix this by waiting for query to complete, similar to what\nipoib_stop_thread() is doing.  The wait for mcast completion code is\nconsolidated in wait_for_mcast_join().\n\nSigned-off-by: Eli Cohen \u003celi@mellanox.co.il\u003e\nSigned-off-by: Roland Dreier \u003crolandd@cisco.com\u003e\n"
    },
    {
      "commit": "bf6a9e31cfa768ce0a8e18474b3ca808641d9243",
      "tree": "a7ebdb5a10e528959ca1497e222975d3087a5eef",
      "parents": [
        "d2e0655ede1d91c3a586455d03a4a2d57e659830"
      ],
      "author": {
        "name": "Jack Morgenstein",
        "email": "jackm@mellanox.co.il",
        "time": "Mon Apr 10 09:43:47 2006 -0700"
      },
      "committer": {
        "name": "Roland Dreier",
        "email": "rolandd@cisco.com",
        "time": "Mon Apr 10 09:43:47 2006 -0700"
      },
      "message": "IB: simplify static rate encoding\n\nPush translation of static rate to HCA format into low-level drivers,\nwhere it belongs.  For static rate encoding, use encoding of rate\nfield from IB standard PathRecord, with addition of value 0, for\nbackwards compatibility with current usage.  The changes are:\n\n - Add enum ib_rate to midlayer includes.\n - Get rid of static rate translation in IPoIB; just use static rate\n   directly from Path and MulticastGroup records.\n - Update mthca driver to translate absolute static rate into the\n   format used by hardware.  This also fixes mthca\u0027s static rate\n   handling for HCAs that are capable of 4X DDR.\n\nSigned-off-by: Jack Morgenstein \u003cjackm@mellanox.co.il\u003e\nSigned-off-by: Roland Dreier \u003crolandd@cisco.com\u003e\n"
    },
    {
      "commit": "d2e0655ede1d91c3a586455d03a4a2d57e659830",
      "tree": "e507e7c6dee32cb7ea8ebe0fc2024f81cf0f9b0f",
      "parents": [
        "ce1823f0323be9f38bbe0df229a5bba025404923"
      ],
      "author": {
        "name": "Michael S. Tsirkin",
        "email": "mst@mellanox.co.il",
        "time": "Tue Apr 04 19:59:40 2006 +0300"
      },
      "committer": {
        "name": "Roland Dreier",
        "email": "rolandd@cisco.com",
        "time": "Tue Apr 04 14:46:48 2006 -0700"
      },
      "message": "IPoIB: Consolidate private neighbour data handling\n\nConsolidate IPoIB\u0027s private neighbour data handling into\nipoib_neigh_alloc() and ipoib_neigh_free().  This will make it easier\nto keep track of the neighbour structures that IPoIB is handling, and\nis a nice cleanup of the code:\n\nadd/remove: 2/1 grow/shrink: 1/8 up/down: 100/-178 (-78)\nfunction                                     old     new   delta\nipoib_neigh_alloc                              -      61     +61\nipoib_neigh_free                               -      36     +36\nipoib_mcast_join_finish                     1288    1291      +3\npath_rec_completion                          575     573      -2\nipoib_mcast_join_task                        664     660      -4\nipoib_neigh_destructor                       101      92      -9\nipoib_neigh_setup_dev                         14       3     -11\nipoib_neigh_setup                             17       -     -17\npath_free                                    238     215     -23\nipoib_mcast_free                             329     306     -23\nipoib_mcast_send                             718     684     -34\nneigh_add_path                               705     650     -55\n\nSigned-off-by: Michael S. Tsirkin \u003cmst@mellanox.co.il\u003e\nSigned-off-by: Roland Dreier \u003crolandd@cisco.com\u003e\n"
    },
    {
      "commit": "ce1823f0323be9f38bbe0df229a5bba025404923",
      "tree": "f3c896b952cf01fb81054f65f2861be0e2d4f437",
      "parents": [
        "227c939b00cf786b5e2e95fc904518206f478421"
      ],
      "author": {
        "name": "Roland Dreier",
        "email": "rolandd@cisco.com",
        "time": "Mon Apr 03 09:31:04 2006 -0700"
      },
      "committer": {
        "name": "Roland Dreier",
        "email": "rolandd@cisco.com",
        "time": "Mon Apr 03 09:31:04 2006 -0700"
      },
      "message": "IB/srp: Fix memory leak in options parsing\n\nFix memory leak if parsing destination GID fails.\n\nCoverity bug 1042\n\nSigned-off-by: Roland Dreier \u003crolandd@cisco.com\u003e\n"
    },
    {
      "commit": "227c939b00cf786b5e2e95fc904518206f478421",
      "tree": "f62cd8a2f0663d3c9853eead57ba91dd9626a572",
      "parents": [
        "f5545d24b8aa9fccd8071203e83bc9f4b26e17a6"
      ],
      "author": {
        "name": "Roland Dreier",
        "email": "rolandd@cisco.com",
        "time": "Sun Apr 02 14:39:20 2006 -0700"
      },
      "committer": {
        "name": "Roland Dreier",
        "email": "rolandd@cisco.com",
        "time": "Sun Apr 02 14:39:20 2006 -0700"
      },
      "message": "IB/mthca: Always build debugging code unless CONFIG_EMBEDDED\u003dy\n\nChange the mthca debugging trace output code so that it can enabled\nand disabled at runtime with the debug_level module parameter in\nsysfs.  Also, don\u0027t allow CONFIG_INFINIBAND_MTHCA_DEBUG to be disabled\nunless CONFIG_EMBEDDED is selected.  We want users (and especially\ndistros) to have this turned on unless they really need to save space,\nbecause by the time we want debugging output, it\u0027s usually too late to\nrebuild a kernel.\n\nSigned-off-by: Roland Dreier \u003crolandd@cisco.com\u003e\n"
    },
    {
      "commit": "f5545d24b8aa9fccd8071203e83bc9f4b26e17a6",
      "tree": "c58bc4967eb3eff701acba0e9ea295fbc4c68c89",
      "parents": [
        "37289efe3ee0c0a00b5d8302df9a2b007e65c187"
      ],
      "author": {
        "name": "Roland Dreier",
        "email": "rolandd@cisco.com",
        "time": "Sun Apr 02 14:39:19 2006 -0700"
      },
      "committer": {
        "name": "Roland Dreier",
        "email": "rolandd@cisco.com",
        "time": "Sun Apr 02 14:39:19 2006 -0700"
      },
      "message": "IPoIB: Always build debugging code unless CONFIG_EMBEDDED\u003dy\n\nDon\u0027t allow CONFIG_INFINIBAND_IPOIB_DEBUG to be disabled unless\nCONFIG_EMBEDDED is selected.  We want users (and especially distros)\nto have this turned on unless they really need to save space, because\nby the time we want debugging output, it\u0027s usually too late to rebuild\na kernel.  The debugging output can be controlled at runtime via the\ndebug_level module parameter in sysfs.\n\nSigned-off-by: Roland Dreier \u003crolandd@cisco.com\u003e\n"
    },
    {
      "commit": "37289efe3ee0c0a00b5d8302df9a2b007e65c187",
      "tree": "92abe35ea148d32c735c7a675fdb9640fe9cfb7f",
      "parents": [
        "f27f0a045b79de5729d064497e21a70871f1d6fe"
      ],
      "author": {
        "name": "Michael S. Tsirkin",
        "email": "mst@mellanox.co.il",
        "time": "Thu Mar 30 15:52:54 2006 +0200"
      },
      "committer": {
        "name": "Roland Dreier",
        "email": "rolandd@cisco.com",
        "time": "Sun Apr 02 14:39:19 2006 -0700"
      },
      "message": "IB/mad: fix oops in cancel_mads\n\nWe have seen the following OOPs in cancel_mads, when restarting opensm\nmultiple times:\n\n    Call Trace:\n      [\u003cc010549b\u003e] show_stack+0x9b/0xb0\n      [\u003cc01055ec\u003e] show_registers+0x11c/0x190\n      [\u003cc01057cd\u003e] die+0xed/0x160\n      [\u003cc031b966\u003e] do_page_fault+0x3f6/0x5d0\n      [\u003cc010511f\u003e] error_code+0x4f/0x60\n      [\u003cf8ac4e38\u003e] cancel_mads+0x128/0x150 [ib_mad]\n      [\u003cf8ac2811\u003e] unregister_mad_agent+0x11/0x130 [ib_mad]\n      [\u003cf8ac2a12\u003e] ib_unregister_mad_agent+0x12/0x20 [ib_mad]\n      [\u003cf8b10f23\u003e] ib_umad_close+0xf3/0x130 [ib_umad]\n      [\u003cc0162937\u003e] __fput+0x187/0x1c0\n      [\u003cc01627a9\u003e] fput+0x19/0x20\n      [\u003cc0160f7a\u003e] filp_close+0x3a/0x60\n      [\u003cc0121ca8\u003e] put_files_struct+0x68/0xa0\n      [\u003cc0103cf7\u003e] do_signal+0x47/0x100\n      [\u003cc0103ded\u003e] do_notify_resume+0x3d/0x40\n      [\u003cc0103f9e\u003e] work_notifysig+0x13/0x25\n\nWe traced this back to local_completions unlocking mad_agent_priv-\u003elock\nwhile still keeping a pointer into local_list. A later call to\nlist_del(\u0026local-\u003ecompletion_list) would then corrupt the list.\n\nTo fix this, remove the entry from local_list after looking it up but\nbefore releasing mad_agent_priv-\u003elock, to prevent cancel_mads from\nfinding and freeing it.\n\nSigned-off-by: Jack Morgenstein \u003cjackm@mellanox.co.il\u003e\nSigned-off-by: Michael S. Tsirkin \u003cmst@mellanox.co.il\u003e\nSigned-off-by: Roland Dreier \u003crolandd@cisco.com\u003e\n"
    },
    {
      "commit": "77d8798b554c856e21400bc8e761bc1b2ded8967",
      "tree": "ea5dd7ed3ccb4b7095c37d4633f6f6a7b0a6b38e",
      "parents": [
        "6522108f19a998a5ded4d0c4d0f9eb9736398e31"
      ],
      "author": {
        "name": "Bryan O\u0027Sullivan",
        "email": "bos@pathscale.com",
        "time": "Wed Mar 29 15:23:39 2006 -0800"
      },
      "committer": {
        "name": "Roland Dreier",
        "email": "rolandd@cisco.com",
        "time": "Fri Mar 31 13:14:21 2006 -0800"
      },
      "message": "IB/ipath: kbuild infrastructure\n\nIntegrate the ipath core and OpenIB drivers into the kernel build\ninfrastructure.  Add entry to MAINTAINERS.\n\nSigned-off-by: Bryan O\u0027Sullivan \u003cbos@pathscale.com\u003e\nSigned-off-by: Roland Dreier \u003crolandd@cisco.com\u003e\n"
    }
  ],
  "next": "6522108f19a998a5ded4d0c4d0f9eb9736398e31"
}
