)]}'
{
  "log": [
    {
      "commit": "3f44675439b136d51179d31eb5a498383cb38624",
      "tree": "a3c9f6b6c0a2fd5cd948c8482242dc859e1ddfdf",
      "parents": [
        "6e86841d05f371b5b9b86ce76c02aaee83352298"
      ],
      "author": {
        "name": "Roland Dreier",
        "email": "rolandd@cisco.com",
        "time": "Mon Aug 04 11:02:14 2008 -0700"
      },
      "committer": {
        "name": "Roland Dreier",
        "email": "rolandd@cisco.com",
        "time": "Mon Aug 04 11:02:14 2008 -0700"
      },
      "message": "RDMA/cma: Remove padding arrays by using struct sockaddr_storage\n\nThere are a few places where the RDMA CM code handles IPv6 by doing\n\n\tstruct sockaddr\t\taddr;\n\tu8\t\t\tpad[sizeof(struct sockaddr_in6) -\n\t\t\t\t    sizeof(struct sockaddr)];\n\nThis is fragile and ugly; handle this in a better way with just\n\n\tstruct sockaddr_storage\taddr;\n\n[ Also roll in patch from Aleksey Senin \u003calekseys@voltaire.com\u003e to\n  switch to struct sockaddr_storage and get rid of padding arrays in\n  struct rdma_addr. ]\n\nSigned-off-by: Roland Dreier \u003crolandd@cisco.com\u003e\n"
    },
    {
      "commit": "8d8bb39b9eba32dd70e87fd5ad5c5dd4ba118e06",
      "tree": "64090a84f4c4466f9f30ff46c993e0cede379052",
      "parents": [
        "c485b465a031b6f9b9a51300e0ee1f86efc6db87"
      ],
      "author": {
        "name": "FUJITA Tomonori",
        "email": "fujita.tomonori@lab.ntt.co.jp",
        "time": "Fri Jul 25 19:44:49 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Sat Jul 26 12:00:03 2008 -0700"
      },
      "message": "dma-mapping: add the device argument to dma_mapping_error()\n\nAdd per-device dma_mapping_ops support for CONFIG_X86_64 as POWER\narchitecture does:\n\nThis enables us to cleanly fix the Calgary IOMMU issue that some devices\nare not behind the IOMMU (http://lkml.org/lkml/2008/5/8/423).\n\nI think that per-device dma_mapping_ops support would be also helpful for\nKVM people to support PCI passthrough but Andi thinks that this makes it\ndifficult to support the PCI passthrough (see the above thread).  So I\nCC\u0027ed this to KVM camp.  Comments are appreciated.\n\nA pointer to dma_mapping_ops to struct dev_archdata is added.  If the\npointer is non NULL, DMA operations in asm/dma-mapping.h use it.  If it\u0027s\nNULL, the system-wide dma_ops pointer is used as before.\n\nIf it\u0027s useful for KVM people, I plan to implement a mechanism to register\na hook called when a new pci (or dma capable) device is created (it works\nwith hot plugging).  It enables IOMMUs to set up an appropriate\ndma_mapping_ops per device.\n\nThe major obstacle is that dma_mapping_error doesn\u0027t take a pointer to the\ndevice unlike other DMA operations.  So x86 can\u0027t have dma_mapping_ops per\ndevice.  Note all the POWER IOMMUs use the same dma_mapping_error function\nso this is not a problem for POWER but x86 IOMMUs use different\ndma_mapping_error functions.\n\nThe first patch adds the device argument to dma_mapping_error.  The patch\nis trivial but large since it touches lots of drivers and dma-mapping.h in\nall the architecture.\n\nThis patch:\n\ndma_mapping_error() doesn\u0027t take a pointer to the device unlike other DMA\noperations.  So we can\u0027t have dma_mapping_ops per device.\n\nNote that POWER already has dma_mapping_ops per device but all the POWER\nIOMMUs use the same dma_mapping_error function.  x86 IOMMUs use device\nargument.\n\n[akpm@linux-foundation.org: fix sge]\n[akpm@linux-foundation.org: fix svc_rdma]\n[akpm@linux-foundation.org: build fix]\n[akpm@linux-foundation.org: fix bnx2x]\n[akpm@linux-foundation.org: fix s2io]\n[akpm@linux-foundation.org: fix pasemi_mac]\n[akpm@linux-foundation.org: fix sdhci]\n[akpm@linux-foundation.org: build fix]\n[akpm@linux-foundation.org: fix sparc]\n[akpm@linux-foundation.org: fix ibmvscsi]\nSigned-off-by: FUJITA Tomonori \u003cfujita.tomonori@lab.ntt.co.jp\u003e\nCc: Muli Ben-Yehuda \u003cmuli@il.ibm.com\u003e\nCc: Andi Kleen \u003candi@firstfloor.org\u003e\nCc: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: Avi Kivity \u003cavi@qumranet.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "38ca83a588662f0af684ba2567dd910a564268ab",
      "tree": "b5983ebd94a89f924e06e3bbd1c174533144682e",
      "parents": [
        "dd5bdff83b19d9174126e0398b47117c3a80e22d"
      ],
      "author": {
        "name": "Amir Vadai",
        "email": "amirv@mellanox.co.il",
        "time": "Tue Jul 22 14:14:23 2008 -0700"
      },
      "committer": {
        "name": "Roland Dreier",
        "email": "rolandd@cisco.com",
        "time": "Tue Jul 22 14:14:23 2008 -0700"
      },
      "message": "RDMA/cma: Add RDMA_CM_EVENT_TIMEWAIT_EXIT event\n\nConsumers that want to re-use their QPs in new connections need to\nknow when the QP has exited the timewait state.  Report the timewait\nevent through the rdma_cm.\n\nSigned-off-by: Amir Vadai \u003camirv@mellanox.co.il\u003e\nAcked-by: Sean Hefty \u003csean.hefty@intel.com\u003e\nSigned-off-by: Roland Dreier \u003crolandd@cisco.com\u003e\n"
    },
    {
      "commit": "dd5bdff83b19d9174126e0398b47117c3a80e22d",
      "tree": "2bdbc102afcc851d1cd0bef07e3a47d4e9ec1ae9",
      "parents": [
        "d35cb360c29956510b2fe1a953bd4968536f7216"
      ],
      "author": {
        "name": "Or Gerlitz",
        "email": "ogerlitz@voltaire.com",
        "time": "Tue Jul 22 14:14:22 2008 -0700"
      },
      "committer": {
        "name": "Roland Dreier",
        "email": "rolandd@cisco.com",
        "time": "Tue Jul 22 14:14:22 2008 -0700"
      },
      "message": "RDMA/cma: Add RDMA_CM_EVENT_ADDR_CHANGE event\n\nAdd an RDMA_CM_EVENT_ADDR_CHANGE event can be used by rdma-cm\nconsumers that wish to have their RDMA sessions always use the same\nlinks (eg \u003chca/port\u003e) as the IP stack does.  In the current code, this\ndoes not happen when bonding is used and fail-over happened but the IB\nlink used by an already existing session is operating fine.\n\nUse the netevent notification for sensing that a change has happened\nin the IP stack, then scan the rdma-cm ID list to see if there is an\nID that is \"misaligned\" with respect to the IP stack, and deliver\nRDMA_CM_EVENT_ADDR_CHANGE for this ID.  The consumer can act on the\nevent or just ignore it.\n\nSigned-off-by: Or Gerlitz \u003cogerlitz@voltaire.com\u003e\nSigned-off-by: Roland Dreier \u003crolandd@cisco.com\u003e\n"
    },
    {
      "commit": "64c5e613b9dd34ef1281ed6d22478609667ae36a",
      "tree": "ba749c73291bbb98954c08581b93d5bd6a931813",
      "parents": [
        "4ab928f69208d240d3681336f34589e4b151824f"
      ],
      "author": {
        "name": "Or Gerlitz",
        "email": "ogerlitz@voltaire.com",
        "time": "Mon Jul 14 23:48:53 2008 -0700"
      },
      "committer": {
        "name": "Roland Dreier",
        "email": "rolandd@cisco.com",
        "time": "Mon Jul 14 23:48:53 2008 -0700"
      },
      "message": "RDMA/addr: Keep pointer to netdevice in struct rdma_dev_addr\n\nKeep a pointer to the local (src) netdevice in struct rdma_dev_addr,\nand copy it in as part of rdma_copy_addr().  Use rdma_translate_ip()\nin cma_new_conn_id() to reduce some code duplication and also make\nsure the src_dev member gets set.\n\nIn a high-availability configuration the netdevice pointer can be used\nby the RDMA CM to align RDMA sessions to use the same links as the IP\nstack does under fail-over and route change cases.\n\nSigned-off-by: Or Gerlitz \u003cogerlitz@voltaire.com\u003e\nSigned-off-by: Roland Dreier \u003crolandd@cisco.com\u003e\n"
    },
    {
      "commit": "96f15c03532282366364ecfd20f04e49b5d96f3a",
      "tree": "cf3cdbd22a112c43807175045d4e02286b729de0",
      "parents": [
        "aed012279d35e88e29fd55737d8821604433f50a"
      ],
      "author": {
        "name": "Steve Wise",
        "email": "swise@opengridcomputing.com",
        "time": "Mon Jul 14 23:48:53 2008 -0700"
      },
      "committer": {
        "name": "Roland Dreier",
        "email": "rolandd@cisco.com",
        "time": "Mon Jul 14 23:48:53 2008 -0700"
      },
      "message": "RDMA/core: Add local DMA L_Key support\n\n- Change the IB_DEVICE_ZERO_STAG flag to the transport-neutral name\n  IB_DEVICE_LOCAL_DMA_LKEY, which is used by iWARP RNICs to indicate 0\n  STag support and IB HCAs to indicate reserved L_Key support.\n\n- Add a u32 local_dma_lkey member to struct ib_device.  Drivers fill\n  this in with the appropriate local DMA L_Key (if they support it).\n\n- Fix up the drivers using this flag.\n\nSigned-off-by: Steve Wise \u003cswise@opengridcomputing.com\u003e\nSigned-off-by: Roland Dreier \u003crolandd@cisco.com\u003e\n"
    },
    {
      "commit": "47ee1b9f2e7bf73950602efe0b74fa1a8481f222",
      "tree": "9ae4012272ccb5524a2826a1593db12dd525bae3",
      "parents": [
        "14cc180f7b032f8484c1a3d0533b1129ffe307fd"
      ],
      "author": {
        "name": "Ron Livne",
        "email": "ronli@voltaire.com",
        "time": "Mon Jul 14 23:48:48 2008 -0700"
      },
      "committer": {
        "name": "Roland Dreier",
        "email": "rolandd@cisco.com",
        "time": "Mon Jul 14 23:48:48 2008 -0700"
      },
      "message": "IB/core: Add support for multicast loopback blocking\n\nThis patch also adds a creation flag for QPs,\nIB_QP_CREATE_MULTICAST_BLOCK_LOOPBACK, which when set means that\nmulticast sends from the QP to a group that the QP is attached to will\nnot be looped back to the QP\u0027s receive queue.  This can be used to\nsave receive resources when a consumer does not want a local copy of\nmulticast traffic; for example IPoIB must waste CPU time throwing away\nsuch local copies of multicast traffic.\n\nThis patch also adds a device capability flag that shows whether a\ndevice supports this feature or not.\n\nSigned-off-by: Ron Livne \u003cronli@voltaire.com\u003e\nSigned-off-by: Roland Dreier \u003crolandd@cisco.com\u003e\n"
    },
    {
      "commit": "7f624d023b5fb150831e02c1e4c0f2619ade72c2",
      "tree": "9618a7eaa601855c3ab7763a3c31ee2fc16364ee",
      "parents": [
        "a7d834c4bc6be73e8f83eaa5072fac3c5549f7f2"
      ],
      "author": {
        "name": "Steve Wise",
        "email": "swise@opengridcomputing.com",
        "time": "Mon Jul 14 23:48:48 2008 -0700"
      },
      "committer": {
        "name": "Roland Dreier",
        "email": "rolandd@cisco.com",
        "time": "Mon Jul 14 23:48:48 2008 -0700"
      },
      "message": "RDMA/core: Add iWARP protocol statistics attributes in sysfs\n\nThis patch adds a sysfs attribute group called \"proto_stats\" under\n/sys/class/infiniband/$device/ and populates this group with protocol\nstatistics if they exist for a given device.  Currently, only iWARP\nstats are defined, but the code is designed to allow InfiniBand\nprotocol stats if they become available.  These stats are per-device\nand more importantly -not- per port.\n\nDetails:\n\n- Add union rdma_protocol_stats in ib_verbs.h.  This union allows\n  defining transport-specific stats.  Currently only iwarp stats are\n  defined.\n\n- Add struct iw_protocol_stats to define the current set of iwarp\n  protocol stats.\n\n- Add new ib_device method called get_proto_stats() to return protocol\n  statistics.\n\n- Add logic in core/sysfs.c to create iwarp protocol stats attributes\n  if the device is an RNIC and has a get_proto_stats() method.\n\nSigned-off-by: Steve Wise \u003cswise@opengridcomputing.com\u003e\nSigned-off-by: Roland Dreier \u003crolandd@cisco.com\u003e\n"
    },
    {
      "commit": "00f7ec36c9324928e4cd23f02e6d8550f30c32ca",
      "tree": "dd9bea0d7589d49b4eb7e264e5f318045fcee1fb",
      "parents": [
        "f89271da32bc1a636cf4eb078e615930886cd013"
      ],
      "author": {
        "name": "Steve Wise",
        "email": "swise@opengridcomputing.com",
        "time": "Mon Jul 14 23:48:45 2008 -0700"
      },
      "committer": {
        "name": "Roland Dreier",
        "email": "rolandd@cisco.com",
        "time": "Mon Jul 14 23:48:45 2008 -0700"
      },
      "message": "RDMA/core: Add memory management extensions support\n\nThis patch adds support for the IB \"base memory management extension\"\n(BMME) and the equivalent iWARP operations (which the iWARP verbs\nmandates all devices must implement).  The new operations are:\n\n - Allocate an ib_mr for use in fast register work requests.\n\n - Allocate/free a physical buffer lists for use in fast register work\n   requests.  This allows device drivers to allocate this memory as\n   needed for use in posting send requests (eg via dma_alloc_coherent).\n\n - New send queue work requests:\n   * send with remote invalidate\n   * fast register memory region\n   * local invalidate memory region\n   * RDMA read with invalidate local memory region (iWARP only)\n\nConsumer interface details:\n\n - A new device capability flag IB_DEVICE_MEM_MGT_EXTENSIONS is added\n   to indicate device support for these features.\n\n - New send work request opcodes IB_WR_FAST_REG_MR, IB_WR_LOCAL_INV,\n   IB_WR_RDMA_READ_WITH_INV are added.\n\n - A new consumer API function, ib_alloc_mr() is added to allocate\n   fast register memory regions.\n\n - New consumer API functions, ib_alloc_fast_reg_page_list() and\n   ib_free_fast_reg_page_list() are added to allocate and free\n   device-specific memory for fast registration page lists.\n\n - A new consumer API function, ib_update_fast_reg_key(), is added to\n   allow the key portion of the R_Key and L_Key of a fast registration\n   MR to be updated.  Consumers call this if desired before posting\n   a IB_WR_FAST_REG_MR work request.\n\nConsumers can use this as follows:\n\n - MR is allocated with ib_alloc_mr().\n\n - Page list memory is allocated with ib_alloc_fast_reg_page_list().\n\n - MR R_Key/L_Key \"key\" field is updated with ib_update_fast_reg_key().\n\n - MR made VALID and bound to a specific page list via\n   ib_post_send(IB_WR_FAST_REG_MR)\n\n - MR made INVALID via ib_post_send(IB_WR_LOCAL_INV),\n   ib_post_send(IB_WR_RDMA_READ_WITH_INV) or an incoming send with\n   invalidate operation.\n\n - MR is deallocated with ib_dereg_mr()\n\n - page lists dealloced via ib_free_fast_reg_page_list().\n\nApplications can allocate a fast register MR once, and then can\nrepeatedly bind the MR to different physical block lists (PBLs) via\nposting work requests to a send queue (SQ).  For each outstanding\nMR-to-PBL binding in the SQ pipe, a fast_reg_page_list needs to be\nallocated (the fast_reg_page_list is owned by the low-level driver\nfrom the consumer posting a work request until the request completes).\nThus pipelining can be achieved while still allowing device-specific\npage_list processing.\n\nThe 32-bit fast register memory key/STag is composed of a 24-bit index\nand an 8-bit key.  The application can change the key each time it\nfast registers thus allowing more control over the peer\u0027s use of the\nkey/STag (ie it can effectively be changed each time the rkey is\nrebound to a page list).\n\nSigned-off-by: Steve Wise \u003cswise@opengridcomputing.com\u003e\nSigned-off-by: Roland Dreier \u003crolandd@cisco.com\u003e\n"
    },
    {
      "commit": "4deccd6d95f1f1536dad3c842e39c1ace577329d",
      "tree": "1c1e8020f79b6fbbafd18f28da49573ad911bc87",
      "parents": [
        "fd91b1bf1bb6fb443cb8c7600c7314f093b31f40"
      ],
      "author": {
        "name": "Dotan Barak",
        "email": "dotanba@gmail.com",
        "time": "Mon Jul 14 23:48:44 2008 -0700"
      },
      "committer": {
        "name": "Roland Dreier",
        "email": "rolandd@cisco.com",
        "time": "Mon Jul 14 23:48:44 2008 -0700"
      },
      "message": "RDMA: Improve include file coding style\n\nRemove subversion $Id lines and improve readability by fixing other\ncoding style problems pointed out by checkpatch.pl.\n\nSigned-off-by: Dotan Barak \u003cdotanba@gmail.com\u003e\nSigned-off-by: Roland Dreier \u003crolandd@cisco.com\u003e\n"
    },
    {
      "commit": "a9474917099e007c0f51d5474394b5890111614f",
      "tree": "d33da1632f3a03871f45a382124158a046f54b88",
      "parents": [
        "929555a2baed9b0b050d03532655bfd721a43c44"
      ],
      "author": {
        "name": "Sean Hefty",
        "email": "sean.hefty@intel.com",
        "time": "Mon Jul 14 23:48:43 2008 -0700"
      },
      "committer": {
        "name": "Roland Dreier",
        "email": "rolandd@cisco.com",
        "time": "Mon Jul 14 23:48:43 2008 -0700"
      },
      "message": "RDMA: Fix license text\n\nThe license text for several files references a third software license\nthat was inadvertently copied in.  Update the license to what was\nintended.  This update was based on a request from HP.\n\nSigned-off-by: Sean Hefty \u003csean.hefty@intel.com\u003e\nSigned-off-by: Roland Dreier \u003crolandd@cisco.com\u003e\n"
    },
    {
      "commit": "4c0283fc561d79a4f94ab48ec37282e15273d1f8",
      "tree": "2826dd873ca2e9ce699c11211582f2f9425871e4",
      "parents": [
        "8079ffa0e18baaf2940e52e0c118eef420a473a4"
      ],
      "author": {
        "name": "Roland Dreier",
        "email": "rolandd@cisco.com",
        "time": "Mon Jun 09 09:58:42 2008 -0700"
      },
      "committer": {
        "name": "Roland Dreier",
        "email": "rolandd@cisco.com",
        "time": "Mon Jun 09 09:58:42 2008 -0700"
      },
      "message": "IB/core: Remove IB_DEVICE_SEND_W_INV capability flag\n\nIn 2.6.26, we added some support for send with invalidate work\nrequests, including a device capability flag to indicate whether a\ndevice supports such requests.  However, the support was incomplete:\nthe completion structure was not extended with a field for the key\ncontained in incoming send with invalidate requests.\n\nFull support for memory management extensions (send with invalidate,\nlocal invalidate, fast register through a send queue, etc) is planned\nfor 2.6.27.  Since send with invalidate is not very useful by itself,\njust remove the IB_DEVICE_SEND_W_INV bit before the 2.6.26 final\nrelease; we will add an IB_DEVICE_MEM_MGT_EXTENSIONS bit in 2.6.27,\nwhich makes things simpler for applications, since they will not have\nquite as confusing an array of fine-grained bits to check.\n\nSigned-off-by: Roland Dreier \u003crolandd@cisco.com\u003e\n"
    },
    {
      "commit": "cb9fbc5c37b69ac584e61d449cfd590f5ae1f90d",
      "tree": "3079752ba33535a21db08bed1390aca9136fadfe",
      "parents": [
        "309df0c503c35fbb5a09537fcbb1f4967b9ca489"
      ],
      "author": {
        "name": "Arthur Kepner",
        "email": "akepner@sgi.com",
        "time": "Tue Apr 29 01:00:34 2008 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Apr 29 08:06:12 2008 -0700"
      },
      "message": "IB: expand ib_umem_get() prototype\n\nAdd a new parameter, dmasync, to the ib_umem_get() prototype.  Use dmasync \u003d 1\nwhen mapping user-allocated CQs with ib_umem_get().\n\nSigned-off-by: Arthur Kepner \u003cakepner@sgi.com\u003e\nCc: Tony Luck \u003ctony.luck@intel.com\u003e\nCc: Jesse Barnes \u003cjbarnes@virtuousgeek.org\u003e\nCc: Jes Sorensen \u003cjes@sgi.com\u003e\nCc: Randy Dunlap \u003crandy.dunlap@oracle.com\u003e\nCc: Roland Dreier \u003crdreier@cisco.com\u003e\nCc: James Bottomley \u003cJames.Bottomley@HansenPartnership.com\u003e\nCc: David Miller \u003cdavem@davemloft.net\u003e\nCc: Benjamin Herrenschmidt \u003cbenh@kernel.crashing.org\u003e\nCc: Grant Grundler \u003cgrundler@parisc-linux.org\u003e\nCc: Michael Ellerman \u003cmichael@ellerman.id.au\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "f4e91eb4a81559da87a3843758a641b5cc590b65",
      "tree": "534335821d076764cbc072586b19c4b061710e3d",
      "parents": [
        "c4c66cf1787d408066fbfc69209185701f5df15f"
      ],
      "author": {
        "name": "Tony Jones",
        "email": "tonyj@suse.de",
        "time": "Fri Feb 22 00:13:36 2008 +0100"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Sat Apr 19 19:10:30 2008 -0700"
      },
      "message": "IB: convert struct class_device to struct device\n\nThis converts the main ib_device to use struct device instead of struct\nclass_device as class_device is going away.\n\nSigned-off-by: Tony Jones \u003ctonyj@suse.de\u003e\nSigned-off-by: Kay Sievers \u003ckay.sievers@vrfy.org\u003e\nCc: Roland Dreier \u003crolandd@cisco.com\u003e\nCc: Sean Hefty \u003csean.hefty@intel.com\u003e\nCc: Hal Rosenstock \u003chal.rosenstock@gmail.com\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n\n"
    },
    {
      "commit": "2dd5716227878d5950988514a2cbabf72f7fc888",
      "tree": "cd999c4f9bcf1bb1f54fc6b91fac7d16552a930e",
      "parents": [
        "82c24c18afc5e1c2a955bdc2762b19721283365c"
      ],
      "author": {
        "name": "Eli Cohen",
        "email": "eli@dev.mellanox.co.il",
        "time": "Wed Apr 16 21:09:33 2008 -0700"
      },
      "committer": {
        "name": "Roland Dreier",
        "email": "rolandd@cisco.com",
        "time": "Wed Apr 16 21:09:33 2008 -0700"
      },
      "message": "IB/core: Add support for modify CQ\n\nAdd support for modifying CQ parameters for controlling event\ngeneration moderation.\n\nSigned-off-by: Eli Cohen \u003celi@mellanox.co.il\u003e\nSigned-off-by: Roland Dreier \u003crolandd@cisco.com\u003e\n"
    },
    {
      "commit": "0f39cf3d54e67a705773fd0ec56ca3dcd3e9272f",
      "tree": "83f19f0014d0e880fb245906105e903dd6d733d5",
      "parents": [
        "e7eacd36865ae0707f5efae8e4dda421ffcd1b66"
      ],
      "author": {
        "name": "Roland Dreier",
        "email": "rolandd@cisco.com",
        "time": "Wed Apr 16 21:09:32 2008 -0700"
      },
      "committer": {
        "name": "Roland Dreier",
        "email": "rolandd@cisco.com",
        "time": "Wed Apr 16 21:09:32 2008 -0700"
      },
      "message": "IB/core: Add support for \"send with invalidate\" work requests\n\nAdd a new IB_WR_SEND_WITH_INV send opcode that can be used to mark a\n\"send with invalidate\" work request as defined in the iWARP verbs and\nthe InfiniBand base memory management extensions.  Also put \"imm_data\"\nand a new \"invalidate_rkey\" member in a new \"ex\" union in struct\nib_send_wr. The invalidate_rkey member can be used to pass in an\nR_Key/STag to be invalidated.  Add this new union to struct\nib_uverbs_send_wr.  Add code to copy the invalidate_rkey field in\nib_uverbs_post_send().\n\nFix up low-level drivers to deal with the change to struct ib_send_wr,\nand just remove the imm_data initialization from net/sunrpc/xprtrdma/,\nsince that code never does any send with immediate operations.\n\nAlso, move the existing IB_DEVICE_SEND_W_INV flag to a new bit, since\nthe iWARP drivers currently in the tree set the bit.  The amso1100\ndriver at least will silently fail to honor the IB_SEND_INVALIDATE bit\nif passed in as part of userspace send requests (since it does not\nimplement kernel bypass work request queueing).  Remove the flag from\nall existing drivers that set it until we know which ones are OK.\n\nThe values chosen for the new flag is not consecutive to avoid clashing\nwith flags defined in the XRC patches, which are not merged yet but\nwhich are already in use and are likely to be merged soon.\n\nThis resurrects a patch sent long ago by Mikkel Hagen \u003cmhagen@iol.unh.edu\u003e.\n\nSigned-off-by: Roland Dreier \u003crolandd@cisco.com\u003e\n"
    },
    {
      "commit": "c93570f23a98c633570397aedc6d1808f5d5846a",
      "tree": "91251e98dcacfe9e7be8bf805f4bd5c4b2284f90",
      "parents": [
        "b846f25aa2a353355aec5202fe4dbdc6674dfc64"
      ],
      "author": {
        "name": "Eli Cohen",
        "email": "eli@dev.mellanox.co.il",
        "time": "Wed Apr 16 21:09:27 2008 -0700"
      },
      "committer": {
        "name": "Roland Dreier",
        "email": "rolandd@cisco.com",
        "time": "Wed Apr 16 21:09:27 2008 -0700"
      },
      "message": "IB/core: Add IPoIB UD LSO support\n\nLSO (large send offload) allows the networking stack to pass SKBs with\ndata size larger than the MTU to the IPoIB driver and have the HCA HW\nfragment the data to multiple MSS-sized packets.  Add a device\ncapability flag IB_DEVICE_UD_TSO for devices that can perform TCP\nsegmentation offload, a new send work request opcode IB_WR_LSO,\nheader, hlen and mss fields for the work request structure, and a new\nIB_WC_LSO completion type.\n\nSigned-off-by: Eli Cohen \u003celi@mellanox.co.il\u003e\nSigned-off-by: Roland Dreier \u003crolandd@cisco.com\u003e\n"
    },
    {
      "commit": "b846f25aa2a353355aec5202fe4dbdc6674dfc64",
      "tree": "2daf137a2974c1ced5363020e88057c802cea5a5",
      "parents": [
        "d84e0b28d3a0b41fc574ea50d60522ae0fba75f4"
      ],
      "author": {
        "name": "Eli Cohen",
        "email": "eli@dev.mellanox.co.il",
        "time": "Wed Apr 16 21:09:27 2008 -0700"
      },
      "committer": {
        "name": "Roland Dreier",
        "email": "rolandd@cisco.com",
        "time": "Wed Apr 16 21:09:27 2008 -0700"
      },
      "message": "IB/core: Add creation flags to struct ib_qp_init_attr\n\nAdd a create_flags member to struct ib_qp_init_attr that will allow a\nkernel verbs consumer to create a pass special flags when creating a QP.\nAdd a flag value for telling low-level drivers that a QP will be used\nfor IPoIB UD LSO.  The create_flags member will also be useful for XRC\nand ehca low-latency QP support.\n\nSince no create_flags handling is implemented yet, add code to all\nlow-level drivers to return -EINVAL if create_flags is non-zero.\n\nSigned-off-by: Eli Cohen \u003celi@mellanox.co.il\u003e\nSigned-off-by: Roland Dreier \u003crolandd@cisco.com\u003e\n"
    },
    {
      "commit": "b3d636b0d1b2eb870a55ae196b8f3838e1399554",
      "tree": "f33ae9f2f618c0367dcddf4238cdba10f29f1d2b",
      "parents": [
        "edba846af9e1f27bab00d5aebfeef01386e00af0"
      ],
      "author": {
        "name": "Roland Dreier",
        "email": "rolandd@cisco.com",
        "time": "Wed Apr 16 21:01:06 2008 -0700"
      },
      "committer": {
        "name": "Roland Dreier",
        "email": "rolandd@cisco.com",
        "time": "Wed Apr 16 21:01:06 2008 -0700"
      },
      "message": "IB: Make struct ib_uobject.id a signed int\n\nIDR IDs are signed, so struct ib_uobject.id should be signed.  This\navoids some sparse pointer signedness warnings.\n\nSigned-off-by: Roland Dreier \u003crolandd@cisco.com\u003e\n"
    },
    {
      "commit": "5128bdc97a1018aacac2550cf73bda61041cc3b8",
      "tree": "d9a953efea6e5cd391d19e2eac56fffdc01d60e9",
      "parents": [
        "e0605d9199b462454f2f2e5ca01810255a6d5cfa"
      ],
      "author": {
        "name": "Roland Dreier",
        "email": "rolandd@cisco.com",
        "time": "Fri Feb 08 14:47:26 2008 -0800"
      },
      "committer": {
        "name": "Roland Dreier",
        "email": "rolandd@cisco.com",
        "time": "Fri Feb 08 14:47:26 2008 -0800"
      },
      "message": "IB/core: Remove unused struct ib_device.flags member\n\nAvoid confusion about what it might mean, since it\u0027s never initialized.\n\nSigned-off-by: Roland Dreier \u003crolandd@cisco.com\u003e\n"
    },
    {
      "commit": "e0605d9199b462454f2f2e5ca01810255a6d5cfa",
      "tree": "c822a9a89fb74b1768dae4c3660474bc6304a35e",
      "parents": [
        "7143740d26098aca84ecc7376ccfe2c58fd0412e"
      ],
      "author": {
        "name": "Eli Cohen",
        "email": "eli@mellanox.co.il",
        "time": "Wed Jan 30 18:30:57 2008 +0200"
      },
      "committer": {
        "name": "Roland Dreier",
        "email": "rolandd@cisco.com",
        "time": "Fri Feb 08 14:37:56 2008 -0800"
      },
      "message": "IB/core: Add IP checksum offload support\n\nAdd a device capability to show when it can handle checksum offload.\nAlso add a send flag for inserting checksums and a csum_ok field to\nthe completion record.\n\nSigned-off-by: Eli Cohen \u003celi@mellanox.co.il\u003e\nSigned-off-by: Roland Dreier \u003crolandd@cisco.com\u003e\n"
    },
    {
      "commit": "88314e4dda1e158aabce76429ef4d017b48f8b92",
      "tree": "951aad1d512d0ac0fce5bfd6189e7ed1fbd84e71",
      "parents": [
        "45d9478da106c749203056f56e94d0e370dfac87"
      ],
      "author": {
        "name": "Sean Hefty",
        "email": "sean.hefty@intel.com",
        "time": "Wed Nov 14 00:29:50 2007 -0800"
      },
      "committer": {
        "name": "Roland Dreier",
        "email": "rolandd@cisco.com",
        "time": "Fri Jan 25 14:15:32 2008 -0800"
      },
      "message": "RDMA/cma: add support for rdma_migrate_id() \n\nThis is based on user feedback from Doug Ledford at RedHat:\n\nEvents that occur on an rdma_cm_id are reported to userspace through an\nevent channel.  Connection request events are reported on the event\nchannel associated with the listen.  When the connection is accepted, a\nnew rdma_cm_id is created and automatically uses the listen event\nchannel.  This is suboptimal where the user only wants listen events on\nthat channel.\n\nAdditionally, it may be desirable to have events related to connection\nestablishment use a different event channel than those related to\nalready established connections.\n\nAllow the user to migrate an rdma_cm_id between event channels. All\npending events associated with the rdma_cm_id are moved to the new event\nchannel.\n\nSigned-off-by: Sean Hefty \u003csean.hefty@intel.com\u003e\nSigned-off-by: Roland Dreier \u003crolandd@cisco.com\u003e\n"
    },
    {
      "commit": "4fc8cd4919428f9b86f0b65e2f3245a1c186737f",
      "tree": "07bca41da2be7504e6d17745fb86264e59a4958e",
      "parents": [
        "547af76521b3fd4b9ec5c9a9975a17eadb95e6f6"
      ],
      "author": {
        "name": "Sean Hefty",
        "email": "sean.hefty@intel.com",
        "time": "Tue Nov 27 00:11:04 2007 -0800"
      },
      "committer": {
        "name": "Roland Dreier",
        "email": "rolandd@cisco.com",
        "time": "Fri Jan 25 14:15:30 2008 -0800"
      },
      "message": "IB/mad: Report number of times a mad was retried\n\nTo allow ULPs to tune timeout values and capture retry statistics,\nreport the number of times that a mad send operation was retried.\n\nFor RMPP mads, report the total number of times that the any portion\n(send window) of the send operation was retried.\n\nSigned-off-by: Sean Hefty \u003csean.hefty@intel.com\u003e\nSigned-off-by: Roland Dreier \u003crolandd@cisco.com\u003e\n"
    },
    {
      "commit": "35be0681983752116a8161ad3b30e830963108a4",
      "tree": "6eb3fe7dcc4ec690d8062912eb4b1e3ce17ad5b5",
      "parents": [
        "901195ed7f4b2f30dc5a36271887939c5d7bfb9f"
      ],
      "author": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Mon Dec 17 15:54:39 2007 -0400"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Thu Jan 24 20:40:26 2008 -0800"
      },
      "message": "Kobject: change drivers/infiniband to use kobject_init_and_add\n\nStop using kobject_register, as this way we can control the sending of\nthe uevent properly, after everything is properly initialized.\n\nCc: Roland Dreier \u003crolandd@cisco.com\u003e\nCc: Sean Hefty \u003cmshefty@ichips.intel.com\u003e\nCc: Hal Rosenstock \u003chal.rosenstock@gmail.com\u003e\nCc: Kay Sievers \u003ckay.sievers@vrfy.org\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "87ae9afdcada236d0a1b38ce2c465a65916961dc",
      "tree": "c885e589ff66daf4f860b19818228edb75b29530",
      "parents": [
        "013fb33972061ac65cdf3e1771267985e59deca1"
      ],
      "author": {
        "name": "Adrian Bunk",
        "email": "bunk@kernel.org",
        "time": "Tue Oct 30 10:35:04 2007 +0100"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "axboe@carl.home.kernel.dk",
        "time": "Fri Nov 02 08:47:06 2007 +0100"
      },
      "message": "cleanup asm/scatterlist.h includes\n\nNot architecture specific code should not #include \u003casm/scatterlist.h\u003e.\n\nThis patch therefore either replaces them with\n#include \u003clinux/scatterlist.h\u003e or simply removes them if they were\nunused.\n\nSigned-off-by: Adrian Bunk \u003cbunk@kernel.org\u003e\nSigned-off-by: Jens Axboe \u003cjens.axboe@oracle.com\u003e\n"
    },
    {
      "commit": "de98b693e9857e183679cd2f49b3c30d2bc57629",
      "tree": "bfb31d9109f5057926b8849671e2937df22b37fd",
      "parents": [
        "1a1eb6a646f52dc62e3f9ceac4aab9c27e781186"
      ],
      "author": {
        "name": "Sean Hefty",
        "email": "sean.hefty@intel.com",
        "time": "Wed Aug 01 13:49:53 2007 -0700"
      },
      "committer": {
        "name": "Roland Dreier",
        "email": "rolandd@cisco.com",
        "time": "Tue Oct 09 19:59:17 2007 -0700"
      },
      "message": "IB/cm: Modify interface to send MRAs in response to duplicate messages\n\nThe IB CM provides a message received acknowledged (MRA) message that\ncan be sent to indicate that a REQ or REP message has been received, but\nwill require more time to process than the timeout specified by those\nmessages.  In many cases, the application may not know how long it will\ntake to respond to a CM message, but the majority of the time, it will\nusually respond before a retry has been sent.  Rather than sending an\nMRA in response to all messages just to handle the case where a longer\ntimeout is needed, it is more efficient to queue the MRA for sending in\ncase a duplicate message is received.\n\nThis avoids sending an MRA when it is not needed, but limits the number\nof times that a REQ or REP will be resent.  It also provides for a\nsimpler implementation than generating the MRA based on a timer event.\n(That is, trying to send the MRA after receiving the first REQ or REP if\na response has not been generated, so that it is received at the remote\nside before a duplicate REQ or REP has been received)\n\nSigned-off-by: Sean Hefty \u003csean.hefty@intel.com\u003e\nSigned-off-by: Roland Dreier \u003crolandd@cisco.com\u003e\n"
    },
    {
      "commit": "a394f83bdfec10b09d8cb111e622556b2e6fd0de",
      "tree": "bc9735ed3ccda810634173f01528741cefc71a6c",
      "parents": [
        "2be8e3ee8efd6f99ce454115c29d09750915021a"
      ],
      "author": {
        "name": "Roland Dreier",
        "email": "rolandd@cisco.com",
        "time": "Tue Oct 09 19:59:15 2007 -0700"
      },
      "committer": {
        "name": "Roland Dreier",
        "email": "rolandd@cisco.com",
        "time": "Tue Oct 09 19:59:15 2007 -0700"
      },
      "message": "IB/umad: Fix bit ordering and 32-on-64 problems on big endian systems\n\nThe declaration of struct ib_user_mad_reg_req.method_mask[] exported\nto userspace was an array of __u32, but the kernel internally treated\nit as a bitmap made up of longs.  This makes a difference for 64-bit\nbig-endian kernels, where numbering the bits in an array of__u32 gives:\n\n    |31.....0|63....31|95....64|127...96|\n\nwhile numbering the bits in an array of longs gives:\n\n    |63..............0|127............64|\n\n64-bit userspace can handle this by just treating method_mask[] as an\narray of longs, but 32-bit userspace is really stuck: the meaning of\nthe bits in method_mask[] depends on whether the kernel is 32-bit or\n64-bit, and there\u0027s no sane way for userspace to know that.\n\nFix this by updating \u003crdma/ib_user_mad.h\u003e to make it clear that\nmethod_mask[] is an array of longs, and using a compat_ioctl method to\nconvert to an array of 64-bit longs to handle the 32-on-64 problem.\nThis fixes the interface description to match existing behavior (so\nworking binaries continue to work) in almost all situations, and gives\nconsistent semantics in the case of 32-bit userspace that can run on\neither a 32-bit or 64-bit kernel, so that the same binary can work for\nboth 32-on-32 and 32-on-64 systems.\n\nSigned-off-by: Roland Dreier \u003crolandd@cisco.com\u003e\n"
    },
    {
      "commit": "2be8e3ee8efd6f99ce454115c29d09750915021a",
      "tree": "00e21e061a18c7bd1339ebbb637de9701863312d",
      "parents": [
        "c01759cee91379cc3cb551bfd7c76f1b51f91ca2"
      ],
      "author": {
        "name": "Roland Dreier",
        "email": "rolandd@cisco.com",
        "time": "Tue Oct 09 19:59:15 2007 -0700"
      },
      "committer": {
        "name": "Roland Dreier",
        "email": "rolandd@cisco.com",
        "time": "Tue Oct 09 19:59:15 2007 -0700"
      },
      "message": "IB/umad: Add P_Key index support\n\nAdd support for setting the P_Key index of sent MADs and getting the\nP_Key index of received MADs.  This requires a change to the layout of\nthe ABI structure struct ib_user_mad_hdr, so to avoid breaking\ncompatibility, we default to the old (unchanged) ABI and add a new\nioctl IB_USER_MAD_ENABLE_PKEY that allows applications that are aware\nof the new ABI to opt into using it.\n\nWe plan on switching to the new ABI by default in a year or so, and\nthis patch adds a warning that is printed when an application uses the\nold ABI, to push people towards converting to the new ABI.\n\nSigned-off-by: Roland Dreier \u003crolandd@cisco.com\u003e\nReviewed-by: Sean Hefty \u003csean.hefty@intel.com\u003e\nReviewed-by: Hal Rosenstock \u003chal@xsigo.com\u003e\n"
    },
    {
      "commit": "c8d8beea0383e47c9d65d45f0ca95626ec435fcd",
      "tree": "00f409205683f3489344eb0cf1b86f8091354fc7",
      "parents": [
        "247e020ee5e2a7bf46f2d7a3d4490a670a712a40"
      ],
      "author": {
        "name": "Joachim Fenkes",
        "email": "fenkes@de.ibm.com",
        "time": "Thu Sep 13 18:15:28 2007 +0200"
      },
      "committer": {
        "name": "Roland Dreier",
        "email": "rolandd@cisco.com",
        "time": "Tue Oct 09 19:59:13 2007 -0700"
      },
      "message": "IB/umem: Add hugetlb flag to struct ib_umem\n\nDuring ib_umem_get(), determine whether all pages from the memory\nregion are hugetlb pages and report this in the \"hugetlb\" member.\nLow-level drivers can use this information if they need it.\n\nSigned-off-by: Joachim Fenkes \u003cfenkes@de.ibm.com\u003e\nSigned-off-by: Roland Dreier \u003crolandd@cisco.com\u003e\n"
    },
    {
      "commit": "7ce86409adcd2fda652b628173a66e905950ece1",
      "tree": "37ec32b859f358c77267c465a6e04a642d7c5ff3",
      "parents": [
        "a81c994d5eef87ed77cb30d8343d6be296528b3f"
      ],
      "author": {
        "name": "Sean Hefty",
        "email": "sean.hefty@intel.com",
        "time": "Wed Aug 08 15:51:13 2007 -0700"
      },
      "committer": {
        "name": "Roland Dreier",
        "email": "rolandd@cisco.com",
        "time": "Tue Oct 09 19:59:12 2007 -0700"
      },
      "message": "RDMA/ucma: Allow user space to set service type\n\nExport the ability to set the type of service to user space.  Model\nthe interface after setsockopt.\n\nSigned-off-by: Sean Hefty \u003csean.hefty@intel.com\u003e\nSigned-off-by: Roland Dreier \u003crolandd@cisco.com\u003e\n"
    },
    {
      "commit": "a81c994d5eef87ed77cb30d8343d6be296528b3f",
      "tree": "2d5be6dcb6283ab32cbc434b43f04df3034de5d8",
      "parents": [
        "733d65fe33b3002a6f2694c0fd8bd760dc13141f"
      ],
      "author": {
        "name": "Sean Hefty",
        "email": "sean.hefty@intel.com",
        "time": "Wed Aug 08 15:51:06 2007 -0700"
      },
      "committer": {
        "name": "Roland Dreier",
        "email": "rolandd@cisco.com",
        "time": "Tue Oct 09 19:59:12 2007 -0700"
      },
      "message": "RDMA/cma: Add ability to specify type of service\n\nProvide support to specify a type of service for a communication\nidentifier.  A new function call is used when dealing with IPv4\naddresses.  For IPv6 addresses, the ToS is specified through the\ntraffic class field in the sockaddr_in6 structure.\n\nSigned-off-by: Sean Hefty \u003csean.hefty@intel.com\u003e\n\n[ The comments Eitan Zahavi and myself have made over the v1 post at \n  \u003chttp://lists.openfabrics.org/pipermail/general/2007-August/039247.html\u003e\n  were fully addressed. ]\n \nReviewed-by: Or Gerlitz \u003cogerlitz@voltaire.com\u003e \nSigned-off-by: Roland Dreier \u003crolandd@cisco.com\u003e\n"
    },
    {
      "commit": "733d65fe33b3002a6f2694c0fd8bd760dc13141f",
      "tree": "cf9460740b86c49c704497d8e911488863e72aec",
      "parents": [
        "81668838c4583b19276b16382e0c61e21ef5adf0"
      ],
      "author": {
        "name": "Sean Hefty",
        "email": "sean.hefty@intel.com",
        "time": "Wed Aug 08 15:41:28 2007 -0700"
      },
      "committer": {
        "name": "Roland Dreier",
        "email": "rolandd@cisco.com",
        "time": "Tue Oct 09 19:59:12 2007 -0700"
      },
      "message": "IB/sa: Add new QoS fields to path record\n\nThe QoS annex defines new fields for path records.  Add them to the\nib_sa for consumers that want to use them.\n\nSigned-off-by: Sean Hefty \u003csean.hefty@intel.com\u003e\nReviewed-by: Or Gerlitz \u003cogerlitz@voltaire.com\u003e\nSigned-off-by: Roland Dreier \u003crolandd@cisco.com\u003e\n"
    },
    {
      "commit": "92ddc447ce7382e36b72a240697c00bf4beb8d75",
      "tree": "0368be72cdeed0d9d90e35d1a77bea50fb3208f0",
      "parents": [
        "bfb3ea125174813cdf87b1120caf0c9bd580283e"
      ],
      "author": {
        "name": "Dotan Barak",
        "email": "dotanb@dev.mellanox.co.il",
        "time": "Wed Aug 01 13:33:56 2007 +0300"
      },
      "committer": {
        "name": "Roland Dreier",
        "email": "rolandd@cisco.com",
        "time": "Fri Aug 03 10:45:18 2007 -0700"
      },
      "message": "IB: Move the macro IB_UMEM_MAX_PAGE_CHUNK() to umem.c\n\nAfter moving the definition of struct ib_umem_chunk from ib_verbs.h to\nib_umem.h there isn\u0027t any reason for the macro IB_UMEM_MAX_PAGE_CHUNK\nto stay in ib_verbs.h.  Move the macro to umem.c, the only place where\nit is used.\n\nSigned-off-by: Dotan Barak \u003cdotanb@dev.mellanox.co.il\u003e\nSigned-off-by: Roland Dreier \u003crolandd@cisco.com\u003e\n"
    },
    {
      "commit": "bfb3ea125174813cdf87b1120caf0c9bd580283e",
      "tree": "1c510cdf419b5b99981794d17dedc48cdc2a3d64",
      "parents": [
        "e8b398deb73b4a0c3d636f2146c9f35f8eac6d88"
      ],
      "author": {
        "name": "Dotan Barak",
        "email": "dotanb@dev.mellanox.co.il",
        "time": "Tue Jul 31 16:49:15 2007 +0300"
      },
      "committer": {
        "name": "Roland Dreier",
        "email": "rolandd@cisco.com",
        "time": "Fri Aug 03 10:45:18 2007 -0700"
      },
      "message": "IB: Include \u003clinux/list.h\u003e and \u003clinux/rwsem.h\u003e from \u003crdma/ib_verbs.h\u003e\n\nib_verbs.h uses struct list_head and rw_semaphore, so while the files\n\u003clinux/list.h\u003e and \u003clinux/rwsem.h\u003e seem to be pulled in indirectly by\nthe other header files it includes, the right thing is to include\nthose files directly.\n\nSigned-off-by: Dotan Barak \u003cdotanb@dev.mellanox.co.il\u003e\nSigned-off-by: Roland Dreier \u003crolandd@cisco.com\u003e\n"
    },
    {
      "commit": "e8b398deb73b4a0c3d636f2146c9f35f8eac6d88",
      "tree": "eac160876ef715cef19c1bd33c8920f5b3f2d1ad",
      "parents": [
        "38d5af9565f3fa1bf258f3eaeb47c4a95fd7a2b2"
      ],
      "author": {
        "name": "Dotan Barak",
        "email": "dotanb@dev.mellanox.co.il",
        "time": "Tue Jul 31 16:37:11 2007 +0300"
      },
      "committer": {
        "name": "Roland Dreier",
        "email": "rolandd@cisco.com",
        "time": "Fri Aug 03 10:45:17 2007 -0700"
      },
      "message": "IB: Include \u003clinux/list.h\u003e from \u003crdma/ib_mad.h\u003e\n\nib_mad.h uses struct list_head, so while linux/list.h seems to be\npulled in indirectly by one of the headers it includes, the right\nthing is to include linux/list.h directly.\n\nSigned-off-by: Dotan Barak \u003cdotanb@dev.mellanox.co.il\u003e\nSigned-off-by: Roland Dreier \u003crolandd@cisco.com\u003e\n"
    },
    {
      "commit": "1d84612649427a85e1f311baa7215f9a6252d856",
      "tree": "cbb9d614cb56c12f76e438f3f05ca9559a2dee3a",
      "parents": [
        "24be6e81c78314c91a47200272eb4bc31284bd7b"
      ],
      "author": {
        "name": "Sean Hefty",
        "email": "sean.hefty@intel.com",
        "time": "Mon Jun 18 11:09:37 2007 -0700"
      },
      "committer": {
        "name": "Roland Dreier",
        "email": "rolandd@cisco.com",
        "time": "Tue Jul 10 21:50:05 2007 -0700"
      },
      "message": "IB/cm: Include HCA ACK delay in local ACK timeout\n\nThe IB CM should include the HCA ACK delay when calculating the local\nACK timeout value to use for RC QPs.  If the HCA ACK delay is large\nenough relative to the packet life time, then if it is not taken into\naccount, the calculated timeout value ends up being too small, which\ncan result in \"retry exceeded\" errors.\n\nSigned-off-by: Sean Hefty \u003csean.hefty@intel.com\u003e\nSigned-off-by: Roland Dreier \u003crolandd@cisco.com\u003e\n"
    },
    {
      "commit": "2aec5c602c6a44e2a3a173339a9ab94549658e4b",
      "tree": "b16a5002a07d96b88ad162ac34d628b531844a6f",
      "parents": [
        "1b844afe9e67d6cd441ae6df71051b4004f31dd2"
      ],
      "author": {
        "name": "Sean Hefty",
        "email": "sean.hefty@intel.com",
        "time": "Mon Jun 18 11:03:58 2007 -0700"
      },
      "committer": {
        "name": "Roland Dreier",
        "email": "rolandd@cisco.com",
        "time": "Tue Jul 10 21:45:31 2007 -0700"
      },
      "message": "IB/sa: Make sure SA queries use default P_Key\n\nMADs sent to the SA should use the the default P_Key (0x7fff/0xffff).\nThere\u0027s no requirement that the default P_Key is stored at index 0 in\nthe local P_Key table, so add code to the sa_query module to look up\nthe index of the default P_Key when creating an address handle for the\nSA (which is done any time the P_Key table might change), and use this\nindex for all SA queries.\n\nSigned-off-by: Sean Hefty \u003csean.hefty@intel.com\u003e\nSigned-off-by: Roland Dreier \u003crolandd@cisco.com\u003e\n"
    },
    {
      "commit": "8aee74c8ee875448cc6d1cf995c9469eb60ae515",
      "tree": "9e9f57dd7fe321825d7e39472cf44777c82f39cf",
      "parents": [
        "080e89270a7bfb7d01fac9a67050f8ac6d6cdd11",
        "9f81036c54ed1f860d2807c5a6aa4f2b30c21204"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Mon May 21 16:19:32 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Mon May 21 16:19:32 2007 -0700"
      },
      "message": "Merge branch \u0027for-linus\u0027 of master.kernel.org:/pub/scm/linux/kernel/git/roland/infiniband\n\n* \u0027for-linus\u0027 of master.kernel.org:/pub/scm/linux/kernel/git/roland/infiniband:\n  IB/cm: Improve local id allocation\n  IPoIB/cm: Fix SRQ WR leak\n  IB/ipoib: Fix typos in error messages\n  IB/mlx4: Check if SRQ is full when posting receive\n  IB/mlx4: Pass send queue sizes from userspace to kernel\n  IB/mlx4: Fix check of opcode in mlx4_ib_post_send()\n  mlx4_core: Fix array overrun in dump_dev_cap_flags()\n  IB/mlx4: Fix RESET to RESET and RESET to ERROR transitions\n  IB/mthca: Fix RESET to ERROR transition\n  IB/mlx4: Set GRH:HopLimit when sending globally routed MADs\n  IB/mthca: Set GRH:HopLimit when building MLX headers\n  IB/mlx4: Fix check of max_qp_dest_rdma in modify QP\n  IB/mthca: Fix use-after-free on device restart\n  IB/ehca: Return proper error code if register_mr fails\n  IPoIB: Handle P_Key table reordering\n  IB/core: Use start_port() and end_port()\n  IB/core: Add helpers for uncached GID and P_Key searches\n  IB/ipath: Fix potential deadlock with multicast spinlocks\n  IB/core: Free umem when mm is already gone\n"
    },
    {
      "commit": "e8edc6e03a5c8562dc70a6d969f732bdb355a7e7",
      "tree": "fc86c863655128a7041dfe613d14393d761fa7b9",
      "parents": [
        "ff1be9ad61e3e17ba83702d8ed0b534e5b8ee15c"
      ],
      "author": {
        "name": "Alexey Dobriyan",
        "email": "adobriyan@gmail.com",
        "time": "Mon May 21 01:22:52 2007 +0400"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Mon May 21 09:18:19 2007 -0700"
      },
      "message": "Detach sched.h from mm.h\n\nFirst thing mm.h does is including sched.h solely for can_do_mlock() inline\nfunction which has \"current\" dereference inside. By dealing with can_do_mlock()\nmm.h can be detached from sched.h which is good. See below, why.\n\nThis patch\na) removes unconditional inclusion of sched.h from mm.h\nb) makes can_do_mlock() normal function in mm/mlock.c\nc) exports can_do_mlock() to not break compilation\nd) adds sched.h inclusions back to files that were getting it indirectly.\ne) adds less bloated headers to some files (asm/signal.h, jiffies.h) that were\n   getting them indirectly\n\nNet result is:\na) mm.h users would get less code to open, read, preprocess, parse, ... if\n   they don\u0027t need sched.h\nb) sched.h stops being dependency for significant number of files:\n   on x86_64 allmodconfig touching sched.h results in recompile of 4083 files,\n   after patch it\u0027s only 3744 (-8.3%).\n\nCross-compile tested on\n\n\tall arm defconfigs, all mips defconfigs, all powerpc defconfigs,\n\talpha alpha-up\n\tarm\n\ti386 i386-up i386-defconfig i386-allnoconfig\n\tia64 ia64-up\n\tm68k\n\tmips\n\tparisc parisc-up\n\tpowerpc powerpc-up\n\ts390 s390-up\n\tsparc sparc-up\n\tsparc64 sparc64-up\n\tum-x86_64\n\tx86_64 x86_64-up x86_64-defconfig x86_64-allnoconfig\n\nas well as my two usual configs.\n\nSigned-off-by: Alexey Dobriyan \u003cadobriyan@gmail.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "5eb620c81ce35aa0c533131bf4d06c4c8c2bfadf",
      "tree": "8c6346a3af0611b7b2e1b8df41cb058b5fc145e5",
      "parents": [
        "8b8c8bca3a63073bac20f0fca178e00fdf7f5a09"
      ],
      "author": {
        "name": "Yosef Etigin",
        "email": "yosefe@voltaire.com",
        "time": "Mon May 14 07:26:51 2007 +0300"
      },
      "committer": {
        "name": "Roland Dreier",
        "email": "rolandd@cisco.com",
        "time": "Sat May 19 08:51:53 2007 -0700"
      },
      "message": "IB/core: Add helpers for uncached GID and P_Key searches\n\nAdd ib_find_gid() and ib_find_pkey() functions that use uncached device\nqueries.  The calls might block but the returns are always up-to-date.\nCache P_Key and GID table lengths in core to avoid extra port info queries.\n\nSigned-off-by: Yosef Etigin \u003cyosefe@voltaire.com\u003e\nAcked-by: Michael S. Tsirkin \u003cmst@dev.mellanox.co.il\u003e\nSigned-off-by: Roland Dreier \u003crolandd@cisco.com\u003e\n"
    },
    {
      "commit": "1bf66a30421ca772820f489d88c16d0c430d6a67",
      "tree": "b1ab223e6908d772bcad7f9bc3382c33ad5a4490",
      "parents": [
        "f7c6a7b5d59980b076abbf2ceeb8735591290285"
      ],
      "author": {
        "name": "Roland Dreier",
        "email": "rolandd@cisco.com",
        "time": "Wed Apr 18 20:20:28 2007 -0700"
      },
      "committer": {
        "name": "Roland Dreier",
        "email": "rolandd@cisco.com",
        "time": "Tue May 08 18:00:37 2007 -0700"
      },
      "message": "IB: Put rlimit accounting struct in struct ib_umem\n\nWhen memory pinned with ib_umem_get() is released, ib_umem_release()\nneeds to subtract the amount of memory being unpinned from\nmm-\u003elocked_vm.  However, ib_umem_release() may be called with\nmm-\u003emmap_sem already held for writing if the memory is being released\nas part of an munmap() call, so it is sometimes necessary to defer\nthis accounting into a workqueue.\n\nHowever, the work struct used to defer this accounting is dynamically\nallocated before it is queued, so there is the possibility of failing\nthat allocation.  If the allocation fails, then ib_umem_release has no\nchoice except to bail out and leave the process with a permanently\nelevated locked_vm.\n\nFix this by allocating the structure to defer accounting as part of\nthe original struct ib_umem, so there\u0027s no possibility of failing a\nlater allocation if creating the struct ib_umem and pinning memory\nsucceeds.\n\nSigned-off-by: Roland Dreier \u003crolandd@cisco.com\u003e\n"
    },
    {
      "commit": "f7c6a7b5d59980b076abbf2ceeb8735591290285",
      "tree": "29c35b47052bba87f031a4744d8ad12ff5187149",
      "parents": [
        "36f021b579d195cdc5fa6f3e2bab198b4bf70643"
      ],
      "author": {
        "name": "Roland Dreier",
        "email": "rolandd@cisco.com",
        "time": "Sun Mar 04 16:15:11 2007 -0800"
      },
      "committer": {
        "name": "Roland Dreier",
        "email": "rolandd@cisco.com",
        "time": "Tue May 08 18:00:37 2007 -0700"
      },
      "message": "IB/uverbs: Export ib_umem_get()/ib_umem_release() to modules\n\nExport ib_umem_get()/ib_umem_release() and put low-level drivers in\ncontrol of when to call ib_umem_get() to pin and DMA map userspace,\nrather than always calling it in ib_uverbs_reg_mr() before calling the\nlow-level driver\u0027s reg_user_mr method.\n\nAlso move these functions to be in the ib_core module instead of\nib_uverbs, so that driver modules using them do not depend on\nib_uverbs.\n\nThis has a number of advantages:\n - It is better design from the standpoint of making generic code a\n   library that can be used or overridden by device-specific code as\n   the details of specific devices dictate.\n - Drivers that do not need to pin userspace memory regions do not\n   need to take the performance hit of calling ib_mem_get().  For\n   example, although I have not tried to implement it in this patch,\n   the ipath driver should be able to avoid pinning memory and just\n   use copy_{to,from}_user() to access userspace memory regions.\n - Buffers that need special mapping treatment can be identified by\n   the low-level driver.  For example, it may be possible to solve\n   some Altix-specific memory ordering issues with mthca CQs in\n   userspace by mapping CQ buffers with extra flags.\n - Drivers that need to pin and DMA map userspace memory for things\n   other than memory regions can use ib_umem_get() directly, instead\n   of hacks using extra parameters to their reg_phys_mr method.  For\n   example, the mlx4 driver that is pending being merged needs to pin\n   and DMA map QP and CQ buffers, but it does not need to create a\n   memory key for these buffers.  So the cleanest solution is for mlx4\n   to call ib_umem_get() in the create_qp and create_cq methods.\n\nSigned-off-by: Roland Dreier \u003crolandd@cisco.com\u003e\n"
    },
    {
      "commit": "972d45fb43f0f0793fa275c4a22998106760cd61",
      "tree": "f80ac6698044b179bf3fb9d686bd33083033ccb5",
      "parents": [
        "5b6b54982258c330247957a8d877b9851ac69d53",
        "8d1cc86a6278687efbab7b8c294ab01efe4d4231"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Mon May 07 12:18:21 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Mon May 07 12:18:21 2007 -0700"
      },
      "message": "Merge branch \u0027for-linus\u0027 of master.kernel.org:/pub/scm/linux/kernel/git/roland/infiniband\n\n* \u0027for-linus\u0027 of master.kernel.org:/pub/scm/linux/kernel/git/roland/infiniband:\n  IPoIB: Convert to NAPI\n  IB: Return \"maybe missed event\" hint from ib_req_notify_cq()\n  IB: Add CQ comp_vector support\n  IB/ipath: Fix a race condition when generating ACKs\n  IB/ipath: Fix two more spin lock problems\n  IB/fmr_pool: Add prefix to all printks\n  IB/srp: Set proc_name\n  IB/srp: Add orig_dgid sysfs attribute to scsi_host\n  IPoIB/cm: Don\u0027t crash if remote side uses one QP for both directions\n  RDMA/cxgb3: Support for new abort logic\n  RDMA/cxgb3: Initialize cpu_idx field in cpl_close_listserv_req message\n  RDMA/cxgb3: Fail qp creation if the requested max_inline is too large\n  RDMA/cxgb3: Fix TERM codes\n  IPoIB/cm: Fix error handling in ipoib_cm_dev_open()\n  IB/ipath: Don\u0027t corrupt pending mmap list when unmapped objects are freed\n  IB/mthca: Work around kernel QP starvation\n  IB/ipath: Don\u0027t put QP in timeout queue if waiting to send\n  IB/ipath: Don\u0027t call spin_lock_irq() from interrupt context\n"
    },
    {
      "commit": "ed23a72778f3dbd465e55b06fe31629e7e1dd2f3",
      "tree": "99ab8b4cf7c51ae64b4d3d9108e82b31db2b3465",
      "parents": [
        "f4fd0b224d60044d2da5ca02f8f2b5150c1d8731"
      ],
      "author": {
        "name": "Roland Dreier",
        "email": "rolandd@cisco.com",
        "time": "Sun May 06 21:02:48 2007 -0700"
      },
      "committer": {
        "name": "Roland Dreier",
        "email": "rolandd@cisco.com",
        "time": "Sun May 06 21:18:11 2007 -0700"
      },
      "message": "IB: Return \"maybe missed event\" hint from ib_req_notify_cq()\n\nThe semantics defined by the InfiniBand specification say that\ncompletion events are only generated when a completions is added to a\ncompletion queue (CQ) after completion notification is requested.  In\nother words, this means that the following race is possible:\n\n\twhile (CQ is not empty)\n\t\tib_poll_cq(CQ);\n\t// new completion is added after while loop is exited\n\tib_req_notify_cq(CQ);\n\t// no event is generated for the existing completion\n\nTo close this race, the IB spec recommends doing another poll of the\nCQ after requesting notification.\n\nHowever, it is not always possible to arrange code this way (for\nexample, we have found that NAPI for IPoIB cannot poll after\nrequesting notification).  Also, some hardware (eg Mellanox HCAs)\nactually will generate an event for completions added before the call\nto ib_req_notify_cq() -- which is allowed by the spec, since there\u0027s\nno way for any upper-layer consumer to know exactly when a completion\nwas really added -- so the extra poll of the CQ is just a waste.\n\nMotivated by this, we add a new flag \"IB_CQ_REPORT_MISSED_EVENTS\" for\nib_req_notify_cq() so that it can return a hint about whether the a\ncompletion may have been added before the request for notification.\nThe return value of ib_req_notify_cq() is extended so:\n\n\t \u003c 0\tmeans an error occurred while requesting notification\n\t\u003d\u003d 0\tmeans notification was requested successfully, and if\n\t\tIB_CQ_REPORT_MISSED_EVENTS was passed in, then no\n\t\tevents were missed and it is safe to wait for another\n\t\tevent.\n\t \u003e 0\tis only returned if IB_CQ_REPORT_MISSED_EVENTS was\n\t\tpassed in.  It means that the consumer must poll the\n\t\tCQ again to make sure it is empty to avoid the race\n\t\tdescribed above.\n\nWe add a flag to enable this behavior rather than turning it on\nunconditionally, because checking for missed events may incur\nsignificant overhead for some low-level drivers, and consumers that\ndon\u0027t care about the results of this test shouldn\u0027t be forced to pay\nfor the test.\n\nSigned-off-by: Roland Dreier \u003crolandd@cisco.com\u003e\n"
    },
    {
      "commit": "f4fd0b224d60044d2da5ca02f8f2b5150c1d8731",
      "tree": "9bc6c08bde26e6b7d5c51ebd48fc26357d6ae9c5",
      "parents": [
        "154257f3626ea6dd96781fac0896c3f27fe2b0a1"
      ],
      "author": {
        "name": "Michael S. Tsirkin",
        "email": "mst@dev.mellanox.co.il",
        "time": "Thu May 03 13:48:47 2007 +0300"
      },
      "committer": {
        "name": "Roland Dreier",
        "email": "rolandd@cisco.com",
        "time": "Sun May 06 21:18:11 2007 -0700"
      },
      "message": "IB: Add CQ comp_vector support\n\nAdd a num_comp_vectors member to struct ib_device and extend\nib_create_cq() to pass in a comp_vector parameter -- this parallels\nthe userspace libibverbs API.  Update all hardware drivers to set\nnum_comp_vectors to 1 and have all ULPs pass 0 for the comp_vector\nvalue.  Pass the value of num_comp_vectors to userspace rather than\nhard-coding a value of 1.\n\nWe want multiple CQ event vector support (via MSI-X or similar for\nadapters that can generate multiple interrupts), but it\u0027s not clear\nhow many vectors we want, or how we want to deal with policy issues\nsuch as how to decide which vector to use or how to set up interrupt\naffinity.  This patch is useful for experimenting, since no core\nchanges will be necessary when updating a driver to support multiple\nvectors, and we know that we want to make at least these changes\nanyway.\n\nSigned-off-by: Michael S. Tsirkin \u003cmst@dev.mellanox.co.il\u003e\nSigned-off-by: Roland Dreier \u003crolandd@cisco.com\u003e\n"
    },
    {
      "commit": "6473d160b4aba8023bcf38519a5989694dfd51a7",
      "tree": "5a3fe32ecc3d846b9de00ad5ba726314ca79f15b",
      "parents": [
        "a9dfd281a7e12f6d9b53b5a28649b3a3c76a70e6"
      ],
      "author": {
        "name": "Jean Delvare",
        "email": "khali@linux-fr.org",
        "time": "Tue Mar 06 02:45:12 2007 -0800"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Wed May 02 19:02:35 2007 -0700"
      },
      "message": "PCI: Cleanup the includes of \u003clinux/pci.h\u003e\n\nI noticed that many source files include \u003clinux/pci.h\u003e while they do\nnot appear to need it. Here is an attempt to clean it all up.\n\nIn order to find all possibly affected files, I searched for all\nfiles including \u003clinux/pci.h\u003e but without any other occurence of \"pci\"\nor \"PCI\". I removed the include statement from all of these, then I\ncompiled an allmodconfig kernel on both i386 and x86_64 and fixed the\nfalse positives manually.\n\nMy tests covered 66% of the affected files, so there could be false\npositives remaining. Untested files are:\n\narch/alpha/kernel/err_common.c\narch/alpha/kernel/err_ev6.c\narch/alpha/kernel/err_ev7.c\narch/ia64/sn/kernel/huberror.c\narch/ia64/sn/kernel/xpnet.c\narch/m68knommu/kernel/dma.c\narch/mips/lib/iomap.c\narch/powerpc/platforms/pseries/ras.c\narch/ppc/8260_io/enet.c\narch/ppc/8260_io/fcc_enet.c\narch/ppc/8xx_io/enet.c\narch/ppc/syslib/ppc4xx_sgdma.c\narch/sh64/mach-cayman/iomap.c\narch/xtensa/kernel/xtensa_ksyms.c\narch/xtensa/platform-iss/setup.c\ndrivers/i2c/busses/i2c-at91.c\ndrivers/i2c/busses/i2c-mpc.c\ndrivers/media/video/saa711x.c\ndrivers/misc/hdpuftrs/hdpu_cpustate.c\ndrivers/misc/hdpuftrs/hdpu_nexus.c\ndrivers/net/au1000_eth.c\ndrivers/net/fec_8xx/fec_main.c\ndrivers/net/fec_8xx/fec_mii.c\ndrivers/net/fs_enet/fs_enet-main.c\ndrivers/net/fs_enet/mac-fcc.c\ndrivers/net/fs_enet/mac-fec.c\ndrivers/net/fs_enet/mac-scc.c\ndrivers/net/fs_enet/mii-bitbang.c\ndrivers/net/fs_enet/mii-fec.c\ndrivers/net/ibm_emac/ibm_emac_core.c\ndrivers/net/lasi_82596.c\ndrivers/parisc/hppb.c\ndrivers/sbus/sbus.c\ndrivers/video/g364fb.c\ndrivers/video/platinumfb.c\ndrivers/video/stifb.c\ndrivers/video/valkyriefb.c\ninclude/asm-arm/arch-ixp4xx/dma.h\nsound/oss/au1550_ac97.c\n\nI would welcome test reports for these files. I am fine with removing\nthe untested files from the patch if the general opinion is that these\nchanges aren\u0027t safe. The tested part would still be nice to have.\n\nNote that this patch depends on another header fixup patch I submitted\nto LKML yesterday:\n  [PATCH] scatterlist.h needs types.h\n  http://lkml.org/lkml/2007/3/01/141\n\nSigned-off-by: Jean Delvare \u003ckhali@linux-fr.org\u003e\nCc: Badari Pulavarty \u003cpbadari@us.ibm.com\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "c8f6a362bf3eb28ade6027b49bb160a336dd51c0",
      "tree": "b9b19599c9fddea313725a359283bc624a86c1ec",
      "parents": [
        "faec2f7b96b555055d0aa6cc6b83a537270bed52"
      ],
      "author": {
        "name": "Sean Hefty",
        "email": "sean.hefty@intel.com",
        "time": "Thu Feb 15 17:00:18 2007 -0800"
      },
      "committer": {
        "name": "Roland Dreier",
        "email": "rolandd@cisco.com",
        "time": "Fri Feb 16 14:29:07 2007 -0800"
      },
      "message": "RDMA/cma: Add multicast communication support\n\nExtend rdma_cm to support multicast communication.  Multicast support\nis added to the existing RDMA_PS_UDP port space, as well as a new\nRDMA_PS_IPOIB port space.  The latter port space allows joining the\nmulticast groups used by IPoIB, which enables offloading IPoIB traffic\nto a separate QP.  The port space determines the signature used in the\nMGID when joining the group.  The newly added RDMA_PS_IPOIB also\nallows for unicast operations, similar to RDMA_PS_UDP.\n\nSupporting the RDMA_PS_IPOIB requires changing how UD QPs are initialized,\nsince we can no longer assume that the qkey is constant.  This requires\nsaving the Q_Key to use when attaching to a device, so that it is\navailable when creating the QP.  The Q_Key information is exported to\nthe user through the existing rdma_init_qp_attr() interface.\n\nMulticast support is also exported to userspace through the rdma_ucm.\n\nSigned-off-by: Roland Dreier \u003crolandd@cisco.com\u003e\n"
    },
    {
      "commit": "faec2f7b96b555055d0aa6cc6b83a537270bed52",
      "tree": "0916cb780a1a5d5fe2ac98364917c79f25d57fcf",
      "parents": [
        "8a2e65f87c66ab1e720f49378750cdd800f9e9cf"
      ],
      "author": {
        "name": "Sean Hefty",
        "email": "sean.hefty@intel.com",
        "time": "Thu Feb 15 17:00:17 2007 -0800"
      },
      "committer": {
        "name": "Roland Dreier",
        "email": "rolandd@cisco.com",
        "time": "Fri Feb 16 14:20:02 2007 -0800"
      },
      "message": "IB/sa: Track multicast join/leave requests\n\nThe IB SA tracks multicast join/leave requests on a per port basis and\ndoes not do any reference counting: if two users of the same port join\nthe same group, and one leaves that group, then the SA will remove the\nport from the group even though there is one user who wants to stay a\nmember left.  Therefore, in order to support multiple users of the\nsame multicast group from the same port, we need to perform reference\ncounting locally.\n\nTo do this, add an multicast submodule to ib_sa to perform reference\ncounting of multicast join/leave operations.  Modify ib_ipoib (the\nonly in-kernel user of multicast) to use the new interface.\n\nSigned-off-by: Roland Dreier \u003crolandd@cisco.com\u003e\n"
    },
    {
      "commit": "fa7252ed4d92397baf30e4a144af95a33eaa925b",
      "tree": "aeb9502195cc0faff69631ca184d38779e0d8ed5",
      "parents": [
        "1033ff670d49760604f5d4c73a1b60741863a406"
      ],
      "author": {
        "name": "Jason Gunthorpe",
        "email": "jgunthorpe@obsidianresearch.com",
        "time": "Fri Jan 19 11:58:49 2007 -0700"
      },
      "committer": {
        "name": "Roland Dreier",
        "email": "rolandd@cisco.com",
        "time": "Sun Feb 04 14:11:56 2007 -0800"
      },
      "message": "IB: Make sure struct ib_user_mad.data is aligned\n\nMake the untyped data region in ib_user_mad have type u64 so that it\ngets aligned properly.  This avoids alignment faults in ib_umad when\ncasting the data field to an rmpp_mad and accessing the 64-bit tid\nfield on architectures like ia64.\n\nSigned-off-by: Jason Gunthorpe \u003cjgunthorpe@obsidianresearch.com\u003e\nSigned-off-by: Roland Dreier \u003crolandd@cisco.com\u003e\n\n"
    },
    {
      "commit": "062dbb69f32b9ccea701b30f8cc0049482e6211f",
      "tree": "063b57c57dfce3ff2775a64721f5fe311752247a",
      "parents": [
        "459d6e2a541a5226825db998e627e0aa046aa257"
      ],
      "author": {
        "name": "Michael S. Tsirkin",
        "email": "mst@mellanox.co.il",
        "time": "Sun Dec 31 21:09:42 2006 +0200"
      },
      "committer": {
        "name": "Roland Dreier",
        "email": "rolandd@cisco.com",
        "time": "Sun Feb 04 14:11:55 2007 -0800"
      },
      "message": "IB: Return qp pointer as part of ib_wc\n\nstruct ib_wc currently only includes the local QP number: this matches\nthe IB spec, but seems mostly useless. The following patch replaces\nthis with the pointer to qp itself, and updates all low level drivers\nand all users.\n\nThis has the following advantages:\n- Ability to get a per-qp context through wc-\u003eqp-\u003eqp_context\n- Existing drivers already have the qp pointer ready in poll cq, so\n  this change actually saves a tiny bit (extra memory read) on data path\n  (for ehca it would actually be expensive to find the QP pointer when\n  polling a CQ, but ehca does not support SRQ so we can leave wc-\u003eqp as\n  NULL for ehca)\n- Users that need the QP number can still get it through wc-\u003eqp-\u003eqp_num\n\nUse case:\n\nIn IPoIB connected mode code, I have a common CQ shared by multiple\nQPs.  To track connection usage, I need a way to get at some per-QP\ncontext upon the completion, and I would like to avoid allocating\ncontext object per work request just to stick a QP pointer into it.\nWith this code, I can just use wc-\u003eqp-\u003eqp_context.\n\nSigned-off-by: Michael S. Tsirkin \u003cmst@mellanox.co.il\u003e\nSigned-off-by: Roland Dreier \u003crolandd@cisco.com\u003e\n"
    },
    {
      "commit": "459d6e2a541a5226825db998e627e0aa046aa257",
      "tree": "d8b47ba3d3de7e009e0b068a2660f711d9385f6c",
      "parents": [
        "62d0cfcb27cf755cebdc93ca95dabc83608007cd"
      ],
      "author": {
        "name": "Michael S. Tsirkin",
        "email": "mst@mellanox.co.il",
        "time": "Sun Feb 04 14:11:55 2007 -0800"
      },
      "committer": {
        "name": "Roland Dreier",
        "email": "rolandd@cisco.com",
        "time": "Sun Feb 04 14:11:55 2007 -0800"
      },
      "message": "IB: Include \u003clinux/kref.h\u003e explicitly in \u003crdma/ib_verbs.h\u003e\n\n\u003crdma/ib_verbs.h\u003e uses struct kref, so it should include \u003clinux/kref.h\u003e\nexplicitly to avoid hidden include dependencies.\n\nSigned-off-by: Michael S. Tsirkin \u003cmst@mellanox.co.il\u003e\nSigned-off-by: Roland Dreier \u003crolandd@cisco.com\u003e\n"
    },
    {
      "commit": "c59a3da1342ff456e5123361739bc331446cda21",
      "tree": "a75aa1d937a774f53e1875849082d28683c859ec",
      "parents": [
        "d1998ef38a13c4e74c69df55ccd38b0440c429b2"
      ],
      "author": {
        "name": "Roland Dreier",
        "email": "rolandd@cisco.com",
        "time": "Fri Dec 15 13:57:26 2006 -0800"
      },
      "committer": {
        "name": "Roland Dreier",
        "email": "rolandd@cisco.com",
        "time": "Fri Dec 15 13:57:26 2006 -0800"
      },
      "message": "IB: Fix ib_dma_alloc_coherent() wrapper\n\nThe ib_dma_alloc_coherent() wrapper uses a u64* for the dma_handle\nparameter, unlike dma_alloc_coherent, which uses dma_addr_t*.  This\nmeans that we need a temporary variable to handle the case when\nib_dma_alloc_coherent() just falls through directly to\ndma_alloc_coherent() on architectures where sizeof u64 !\u003d sizeof\ndma_addr_t.\n\nSigned-off-by: Roland Dreier \u003crolandd@cisco.com\u003e\n"
    },
    {
      "commit": "d1998ef38a13c4e74c69df55ccd38b0440c429b2",
      "tree": "b70872f617961c6db06fb6e4f8f26fb53caba8a6",
      "parents": [
        "cc016448b0bf0764928275d034e367753bde8162"
      ],
      "author": {
        "name": "Ben Collins",
        "email": "ben.collins@ubuntu.com",
        "time": "Wed Dec 13 22:10:05 2006 -0500"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.osdl.org",
        "time": "Wed Dec 13 19:47:13 2006 -0800"
      },
      "message": "[PATCH] ib_verbs: Use explicit if-else statements to avoid errors with do-while macros\n\nAt least on PPC, the \"op ? op : dma\" construct causes a compile failure\nbecause the dma_* is a do{}while(0) macro.\n\nThis turns all of them into proper if/else to avoid this problem.\n\nSigned-off-by: Ben Collins \u003cbcollins@ubuntu.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "9b513090a3c5e4964f9ac09016c1586988abb3d5",
      "tree": "8b71e45be3fae1ef83a7a2808141fb02e7160fae",
      "parents": [
        "75216638572f53612304c05a374f0246fe1d16da"
      ],
      "author": {
        "name": "Ralph Campbell",
        "email": "ralph.campbell@qlogic.com",
        "time": "Tue Dec 12 14:27:41 2006 -0800"
      },
      "committer": {
        "name": "Roland Dreier",
        "email": "rolandd@cisco.com",
        "time": "Tue Dec 12 14:27:41 2006 -0800"
      },
      "message": "IB: Add DMA mapping functions to allow device drivers to interpose\n\nThe QLogic InfiniPath HCAs use programmed I/O instead of HW DMA.\nThis patch allows a verbs device driver to interpose on DMA mapping\nfunction calls in order to avoid relying on bus_to_virt() and\nphys_to_virt() to undo the mappings created by dma_map_single(),\ndma_map_sg(), etc.\n\nSigned-off-by: Ralph Campbell \u003cralph.campbell@qlogic.com\u003e\nSigned-off-by: Roland Dreier \u003crolandd@cisco.com\u003e\n"
    },
    {
      "commit": "75216638572f53612304c05a374f0246fe1d16da",
      "tree": "25697e2e380f4eda1eccc308ba1bbf4b428714c7",
      "parents": [
        "628e5f6d39d5a6be96c1272a6709f2dd3ec8b7ce"
      ],
      "author": {
        "name": "Sean Hefty",
        "email": "sean.hefty@intel.com",
        "time": "Thu Nov 30 16:53:41 2006 -0800"
      },
      "committer": {
        "name": "Roland Dreier",
        "email": "rolandd@cisco.com",
        "time": "Tue Dec 12 11:50:22 2006 -0800"
      },
      "message": "RDMA/cma: Export rdma cm interface to userspace\n\nExport the rdma cm interfaces to userspace via a misc device.\n\nSigned-off-by: Sean Hefty \u003csean.hefty@intel.com\u003e\nSigned-off-by: Roland Dreier \u003crolandd@cisco.com\u003e\n"
    },
    {
      "commit": "628e5f6d39d5a6be96c1272a6709f2dd3ec8b7ce",
      "tree": "91cd315e0bbc7873366fd589d69b4f182a1fd854",
      "parents": [
        "0fe313b000b6a699afbbb59ef9c47a2b22146f1e"
      ],
      "author": {
        "name": "Sean Hefty",
        "email": "sean.hefty@intel.com",
        "time": "Thu Nov 30 16:44:16 2006 -0800"
      },
      "committer": {
        "name": "Roland Dreier",
        "email": "rolandd@cisco.com",
        "time": "Tue Dec 12 11:50:21 2006 -0800"
      },
      "message": "RDMA/cma: Add support for RDMA_PS_UDP\n\nAllow the use of UD QPs through the rdma_cm, in order to provide\naddress translation services for resolving IB addresses for datagram\nmessages using SIDR.\n\nSigned-off-by: Sean Hefty \u003csean.hefty@intel.com\u003e\nSigned-off-by: Roland Dreier \u003crolandd@cisco.com\u003e\n\n"
    },
    {
      "commit": "0fe313b000b6a699afbbb59ef9c47a2b22146f1e",
      "tree": "d3a9a066218cdd07caa13b6b646e0fe140e4901d",
      "parents": [
        "a1b1b61f80aba49f1e0f32b0e4b1c35be91c57fa"
      ],
      "author": {
        "name": "Sean Hefty",
        "email": "sean.hefty@intel.com",
        "time": "Thu Nov 30 16:37:15 2006 -0800"
      },
      "committer": {
        "name": "Roland Dreier",
        "email": "rolandd@cisco.com",
        "time": "Tue Dec 12 11:50:21 2006 -0800"
      },
      "message": "RDMA/cma: Allow early transition to RTS to handle lost CM messages\n\nDuring connection establishment, the passive side of a connection can\nreceive messages from the active side before the connection event has\nbeen delivered to the user.  Allow the passive side to send messages\nin response to received data before the event is delivered.  To handle\nthe case where the connection messages are lost, a new rdma_notify()\nfunction is added that users may invoke to force a connection into the\nestablished state.\n\nSigned-off-by: Sean Hefty \u003csean.hefty@intel.com\u003e\nSigned-off-by: Roland Dreier \u003crolandd@cisco.com\u003e\n\n"
    },
    {
      "commit": "a1b1b61f80aba49f1e0f32b0e4b1c35be91c57fa",
      "tree": "8bd7253546835791ff5a74bf17464992ea038cbf",
      "parents": [
        "9b2e9c0c241e532d923fff23d9a7c0bd31bd96b1"
      ],
      "author": {
        "name": "Sean Hefty",
        "email": "sean.hefty@intel.com",
        "time": "Thu Nov 30 16:33:14 2006 -0800"
      },
      "committer": {
        "name": "Roland Dreier",
        "email": "rolandd@cisco.com",
        "time": "Tue Dec 12 11:50:21 2006 -0800"
      },
      "message": "RDMA/cma: Report connect info with connect events\n\nConnection information was never given to the recipient of a\nconnection request or reply message.  Only the event was delivered.\nReport the connection data with the event to allows user to\nreject the connection based on the requested parameters, or adjust\ntheir resources to match the request.\n\nSigned-off-by: Sean Hefty \u003csean.hefty@intel.com\u003e\nSigned-off-by: Roland Dreier \u003crolandd@cisco.com\u003e\n\n"
    },
    {
      "commit": "9b2e9c0c241e532d923fff23d9a7c0bd31bd96b1",
      "tree": "50edc4dbe3058276b977020ccf202dc676f27779",
      "parents": [
        "0a1336c8c93530b93c8ecd8c9882f5e528673cab"
      ],
      "author": {
        "name": "Sean Hefty",
        "email": "sean.hefty@intel.com",
        "time": "Thu Nov 30 16:30:47 2006 -0800"
      },
      "committer": {
        "name": "Roland Dreier",
        "email": "rolandd@cisco.com",
        "time": "Tue Dec 12 11:50:21 2006 -0800"
      },
      "message": "RDMA/cma: Remove unneeded qp_type parameter from rdma_cm\n\nThe qp_type parameter into the rdma_cm is unneeded, and can be\nmisleading.  The QP type should be determined from the port space.\n\nSigned-off-by: Sean Hefty \u003csean.hefty@intel.com\u003e\nSigned-off-by: Roland Dreier \u003crolandd@cisco.com\u003e\n\n"
    },
    {
      "commit": "e1444b5a163e81138754cab27c4fa1637b5a2239",
      "tree": "090ef599a01da78e86d0e527ee3938f96fd0842e",
      "parents": [
        "2745b5b713bf3457d8977c62dc2b3aa61f4a14b0"
      ],
      "author": {
        "name": "Sean Hefty",
        "email": "sean.hefty@intel.com",
        "time": "Tue Nov 28 14:57:13 2006 -0800"
      },
      "committer": {
        "name": "Roland Dreier",
        "email": "rolandd@cisco.com",
        "time": "Wed Nov 29 15:33:10 2006 -0800"
      },
      "message": "IB/cm: Fix automatic path migration support\n\nThe ib_cm_establish() function is replaced with a more generic\nib_cm_notify().  This routine is used to notify the CM that failover\nhas occurred, so that future CM messages (LAP, DREQ) reach the remote\nCM.  (Currently, we continue to use the original path)  This bumps the\nuserspace CM ABI.\n\nNew alternate path information is captured when a LAP message is sent\nor received.  This allows QP attributes to be initialized for the user\nwhen a new path is loaded after failover occurs.\n\nSigned-off-by: Sean Hefty \u003csean.hefty@intel.com\u003e\nSigned-off-by: Roland Dreier \u003crolandd@cisco.com\u003e\n"
    },
    {
      "commit": "7a118df3ea23820b9922a1b51cd2f24e464f4c17",
      "tree": "723e979c84263c52971494b7ba69cbee25f602bc",
      "parents": [
        "68586b67ab1a2fd618f79e29a06f10ae886f4b46"
      ],
      "author": {
        "name": "Sean Hefty",
        "email": "sean.hefty@intel.com",
        "time": "Tue Oct 31 11:12:59 2006 -0800"
      },
      "committer": {
        "name": "Roland Dreier",
        "email": "rolandd@cisco.com",
        "time": "Thu Nov 02 14:26:04 2006 -0800"
      },
      "message": "RDMA/addr: Use client registration to fix module unload race\n\nRequire registration with ib_addr module to prevent caller from\nunloading while a callback is in progress.\n\nSigned-off-by: Sean Hefty \u003csean.hefty@intel.com\u003e\nSigned-off-by: Roland Dreier \u003crolandd@cisco.com\u003e\n"
    },
    {
      "commit": "0b26c88f29ad8bcf91a2ea8f25a36f2028ebabea",
      "tree": "8d8f3417f9ccc1fb24a112c8fa256e1f215cc677",
      "parents": [
        "d7b748d63c908a0a85099ce546594192ae0926f6"
      ],
      "author": {
        "name": "Jack Morgenstein",
        "email": "jackm@dev.mellanox.co.il",
        "time": "Wed Oct 25 12:54:20 2006 +0200"
      },
      "committer": {
        "name": "Roland Dreier",
        "email": "rolandd@cisco.com",
        "time": "Mon Oct 30 21:19:35 2006 -0800"
      },
      "message": "IB/uverbs: Return sq_draining value in query_qp response\n\nReturn the sq_draining value back to user space for query_qp instead\nof the en_sqd_async notify value, which is valid only for\nmodify_qp.  For query_qp, the draining status should returned.\n\nSigned-off-by: Jack Morgenstein \u003cjackm@mellanox.co.il\u003e\nSigned-off-by: Roland Dreier \u003crolandd@cisco.com\u003e\n"
    },
    {
      "commit": "aec79fcc3ea3b536a2788b4e22b7ebabbb176485",
      "tree": "3ae94bd1003362c52aa6118897fbeacfd0b4128a",
      "parents": [
        "5755d6dad95808a24a65dd9e61e23c305f9b077c"
      ],
      "author": {
        "name": "Michael S. Tsirkin",
        "email": "mst@mellanox.co.il",
        "time": "Mon Sep 18 22:17:08 2006 +0300"
      },
      "committer": {
        "name": "Roland Dreier",
        "email": "rolandd@cisco.com",
        "time": "Fri Sep 22 15:22:55 2006 -0700"
      },
      "message": "IB/sa: fix ib_sa_selector names\n\nRelevant SA queries are actually \"greater than\" / \"less than\", not\n\"greater than or equal\" / \"less than or equal\" as the names imply.\n(See IB spec 1.2 Vol 1, 15.2.5.16 PATHRECORD/Table 205 PathRecord)\n\nSigned-off-by: Michael S. Tsirkin \u003cmst@mellanox.co.il\u003e\nSigned-off-by: Roland Dreier \u003crolandd@cisco.com\u003e\n\n"
    },
    {
      "commit": "951f7fc1372da3d826b1d975b3cc5e3db92af5d0",
      "tree": "21129949b4ad6fd3ad9da5bbd427db090d2cb3da",
      "parents": [
        "b3b30f5e8a0c50db3d76b6f7c7cc50245aeb57fd"
      ],
      "author": {
        "name": "Or Gerlitz",
        "email": "ogerlitz@voltaire.com",
        "time": "Fri Sep 22 15:22:54 2006 -0700"
      },
      "committer": {
        "name": "Roland Dreier",
        "email": "rolandd@cisco.com",
        "time": "Fri Sep 22 15:22:54 2006 -0700"
      },
      "message": "RDMA/cma: Document rdma_accept() error handling\n\nDocument the reject sending and modifying QP to error done in rdma_accept().\n\nSigned-off-by: Or Gerlitz \u003cogerlitz@voltaire.com\u003e\nSigned-off-by: Sean Hefty \u003csean.hefty@intel.com\u003e\nSigned-off-by: Roland Dreier \u003crolandd@cisco.com\u003e\n"
    },
    {
      "commit": "07eeec0627e93a1a753c4df004a97a4d0a7b9ceb",
      "tree": "a64ef6da30f93a2443c8a3131e1cfc0d04c721d0",
      "parents": [
        "a70d059009f4a207e2a9c794f40fc8c870096d54"
      ],
      "author": {
        "name": "Or Gerlitz",
        "email": "ogerlitz@voltaire.com",
        "time": "Tue Sep 12 09:03:33 2006 -0700"
      },
      "committer": {
        "name": "Roland Dreier",
        "email": "rolandd@cisco.com",
        "time": "Fri Sep 22 15:22:54 2006 -0700"
      },
      "message": "RDMA/cma: Document rdma_destroy_id() function\n\nClarify that rdma_destroy_id cancels outstanding asynchronous operations on the\nAssociated id.\n\nSigned-off-by: Or Gerlitz \u003cogerlitz@voltaire.com\u003e\nSigned-off-by: Sean Hefty \u003csean.hefty@intel.com\u003e\nSigned-off-by: Roland Dreier \u003crolandd@cisco.com\u003e\n\n"
    },
    {
      "commit": "c1a0b23bf477c2e1068905f4e2b5c3cee139e853",
      "tree": "68357e32e8b6542647f639da8ca3859b4cb3b59b",
      "parents": [
        "2439a6e65ff09729c3b4215f134dc5cd4e8a30c0"
      ],
      "author": {
        "name": "Michael S. Tsirkin",
        "email": "mst@mellanox.co.il",
        "time": "Mon Aug 21 16:40:12 2006 -0700"
      },
      "committer": {
        "name": "Roland Dreier",
        "email": "rolandd@cisco.com",
        "time": "Fri Sep 22 15:22:53 2006 -0700"
      },
      "message": "IB/sa: Require SA registration\n\nRequire users to register with SA module, to prevent the sa_query\nmodule text from going away while an SA query callback is still\nrunning.  Update all in-tree users for the new interface.\n\nSigned-off-by: Michael S. Tsirkin \u003cmst@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": "07ebafbaaa72aa6a35472879008f5a1d1d469a0c",
      "tree": "c42ed5c70e5bea1382f1cbde3f4a70d172e2f650",
      "parents": [
        "922a8e9fb2e0711212badce47a41137e2ca04cb3"
      ],
      "author": {
        "name": "Tom Tucker",
        "email": "tom@opengridcomputing.com",
        "time": "Thu Aug 03 16:02:42 2006 -0500"
      },
      "committer": {
        "name": "Roland Dreier",
        "email": "rolandd@cisco.com",
        "time": "Fri Sep 22 15:22:47 2006 -0700"
      },
      "message": "RDMA: iWARP Core Changes.\n\nModifications to the existing rdma header files, core files, drivers,\nand ulp files to support iWARP, including:\n - Hook iWARP CM into the build system and use it in rdma_cm.\n - Convert enum ib_node_type to enum rdma_node_type, which includes\n   the possibility of RDMA_NODE_RNIC, and update everything for this.\n\nSigned-off-by: Tom Tucker \u003ctom@opengridcomputing.com\u003e\nSigned-off-by: Steve Wise \u003cswise@opengridcomputing.com\u003e\nSigned-off-by: Roland Dreier \u003crolandd@cisco.com\u003e\n"
    },
    {
      "commit": "922a8e9fb2e0711212badce47a41137e2ca04cb3",
      "tree": "54af57ac9f2ddcaf0e6fdead4d9175eecd9e06e2",
      "parents": [
        "3cd965646b7cb75ae84dd0daf6258adf20e4f169"
      ],
      "author": {
        "name": "Tom Tucker",
        "email": "tom@opengridcomputing.com",
        "time": "Thu Aug 03 16:02:40 2006 -0500"
      },
      "committer": {
        "name": "Roland Dreier",
        "email": "rolandd@cisco.com",
        "time": "Fri Sep 22 15:22:46 2006 -0700"
      },
      "message": "RDMA: iWARP Connection Manager.\n\nAdd an iWARP Connection Manager (CM), which abstracts connection\nmanagement for iWARP devices (RNICs).  It is a logical instance of the\nxx_cm where xx is the transport type (ib or iw).  The symbols exported\nare used by the transport independent rdma_cm module, and are\navailable also for transport dependent ULPs.\n\nSigned-off-by: Tom Tucker \u003ctom@opengridcomputing.com\u003e\nSigned-off-by: Steve Wise \u003cswise@opengridcomputing.com\u003e\nSigned-off-by: Roland Dreier \u003crolandd@cisco.com\u003e\n\n"
    },
    {
      "commit": "9bc57e2d19db4da81c1150120658cc3658a99ed4",
      "tree": "0047863da8629f79d59f50d243ad7d6c01a5ec5c",
      "parents": [
        "64f817ba98095156149ba5991592d5d039f6da74"
      ],
      "author": {
        "name": "Ralph Campbell",
        "email": "ralphc@pathscale.com",
        "time": "Fri Aug 11 14:58:09 2006 -0700"
      },
      "committer": {
        "name": "Roland Dreier",
        "email": "rolandd@cisco.com",
        "time": "Fri Sep 22 15:22:25 2006 -0700"
      },
      "message": "IB/uverbs: Pass userspace data to modify_srq and modify_qp methods\n\nPass a struct ib_udata to the low-level driver\u0027s -\u003emodify_srq() and\n-\u003emodify_qp() methods, so that it can get to the device-specific data\npassed in by the userspace driver.\n\nSigned-off-by: Ralph Campbell \u003cralph.campbell@qlogic.com\u003e\nSigned-off-by: Roland Dreier \u003crolandd@cisco.com\u003e\n\n"
    },
    {
      "commit": "64f817ba98095156149ba5991592d5d039f6da74",
      "tree": "72aaa87275033036bbf0e886c1cb7cf1e9d38bb5",
      "parents": [
        "fab97220c9e409a98b1956ba677ddd2dd43b0b95"
      ],
      "author": {
        "name": "Ralph Campbell",
        "email": "ralph.campbell@qlogic.com",
        "time": "Fri Sep 22 15:22:24 2006 -0700"
      },
      "committer": {
        "name": "Roland Dreier",
        "email": "rolandd@cisco.com",
        "time": "Fri Sep 22 15:22:24 2006 -0700"
      },
      "message": "IB/uverbs: Allow resize CQ operation to return driver-specific data\n\nAdd a ib_uverbs_resize_cq_resp.driver_data field so that low-level\ndrivers can return data from a resize CQ operation to userspace.  Have\nib_uverbs_resize_cq() only copy the cqe field, to avoid having to bump\nthe userspace ABI.\n\nSigned-off-by: Ralph Campbell \u003cralph.campbell@qlogic.com\u003e\nSigned-off-by: Roland Dreier \u003crolandd@cisco.com\u003e\n"
    },
    {
      "commit": "fadcfa33b6319a5faf8af2287f08bf93a7f926b6",
      "tree": "367e931ec64a88c20a4d15c351d4c7dbb1b7adf1",
      "parents": [
        "47a5c6fa0e204a2b63309c648bb2fde36836c826"
      ],
      "author": {
        "name": "David Woodhouse",
        "email": "dwmw2@infradead.org",
        "time": "Tue Sep 19 12:43:58 2006 +0100"
      },
      "committer": {
        "name": "David Woodhouse",
        "email": "dwmw2@infradead.org",
        "time": "Tue Sep 19 12:43:58 2006 +0100"
      },
      "message": "[HEADERS] One line per header in Kbuild files to reduce conflicts\n\nSigned-off-by: David Woodhouse \u003cdwmw2@infradead.org\u003e\n"
    },
    {
      "commit": "2527e681fd4fd4231c2e04f09d7b04d3cab8eefe",
      "tree": "c9c4fe05d04bcad941505f9e8d1c3903d9501f6b",
      "parents": [
        "16c59419a09f0140a07a1828d6a45656265e07c7"
      ],
      "author": {
        "name": "Sean Hefty",
        "email": "sean.hefty@intel.com",
        "time": "Thu Jul 20 11:25:50 2006 +0300"
      },
      "committer": {
        "name": "Roland Dreier",
        "email": "rolandd@cisco.com",
        "time": "Mon Jul 24 09:18:07 2006 -0700"
      },
      "message": "IB/mad: Validate MADs for spec compliance\n\nValidate MADs sent by userspace clients for spec compliance with\nC13-18.1.1 (prevent duplicate requests and responses sent on the\nsame port).  Without this, RMPP transactions get aborted because\nof duplicate packets.\n\nThis patch is similar to that provided by Jack Morgenstein.\n\nSigned-off-by: Sean Hefty \u003csean.hefty@intel.com\u003e\nSigned-off-by: Michael S. Tsirkin \u003cmst@mellanox.co.il\u003e\nSigned-off-by: Jack Morgenstein \u003cjackm@mellanox.co.il\u003e\nSigned-off-by: Roland Dreier \u003crolandd@cisco.com\u003e\n"
    },
    {
      "commit": "adfaa888a292e7f38fb43668d8994f246e371f0f",
      "tree": "b84155cedf9a1361ff4f7b0586c9b0be702ca605",
      "parents": [
        "74f76fbac72c84ac78620698a584d403b655e62a"
      ],
      "author": {
        "name": "Michael S. Tsirkin",
        "email": "mst@mellanox.co.il",
        "time": "Fri Jul 14 00:23:55 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Fri Jul 14 21:53:51 2006 -0700"
      },
      "message": "[PATCH] fmr pool: remove unnecessary pointer dereference\n\nib_fmr_pool_map_phys gets the virtual address by pointer but never writes\nthere, and users (e.g.  srp) seem to assume this and ignore the value\nreturned.  This patch cleans up the API to get the VA by value, and updates\nall users.\n\nSigned-off-by: Michael S. Tsirkin \u003cmst@mellanox.co.il\u003e\nAcked-by: Roland Dreier \u003crolandd@cisco.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "f0ee3404cce2c45f8b95b341dd6311cd92e5cee0",
      "tree": "fc4a88c79310ea1937c6ede58c0a06f5b056078a",
      "parents": [
        "04c335430f6d9f9088c852bc05a3a0c8baa921c4"
      ],
      "author": {
        "name": "Michael S. Tsirkin",
        "email": "mst@mellanox.co.il",
        "time": "Fri Jul 14 00:23:52 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Fri Jul 14 21:53:50 2006 -0700"
      },
      "message": "[PATCH] IB/addr: gid structure alignment fix\n\nThe device address contains unsigned character arrays, which contain raw GID\naddresses.  The GIDs may not be naturally aligned, so do not cast them to\nstructures or unions.\n\nSigned-off-by: Sean Hefty \u003csean.hefty@intel.com\u003e\nSigned-off-by: Michael S. Tsirkin \u003cmst@mellanox.co.il\u003e\nCc: Roland Dreier \u003crolandd@cisco.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@osdl.org\u003e\n"
    },
    {
      "commit": "6fa0cb1141da80eed4f86155fb51931bc1c31888",
      "tree": "df9b3c378ae4f44260eaae1a4b9d5c4ccf7bb641",
      "parents": [
        "c6482dde1c2811afba289b2344268f850595f350",
        "257a5bdeb0441789d8e34e1b3e92b26d0f51bbf0"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Jul 04 12:55:45 2006 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@g5.osdl.org",
        "time": "Tue Jul 04 12:55:45 2006 -0700"
      },
      "message": "Merge git://git.infradead.org/hdrinstall-2.6\n\n* git://git.infradead.org/hdrinstall-2.6:\n  Remove export of include/linux/isdn/tpam.h\n  Remove \u003clinux/i2c-id.h\u003e and \u003clinux/i2c-algo-ite.h\u003e from userspace export\n  Restrict headers exported to userspace for SPARC and SPARC64\n  Add empty Kbuild files for \u0027make headers_install\u0027 in remaining arches.\n  Add Kbuild file for Alpha \u0027make headers_install\u0027\n  Add Kbuild file for SPARC \u0027make headers_install\u0027\n  Add Kbuild file for IA64 \u0027make headers_install\u0027\n  Add Kbuild file for S390 \u0027make headers_install\u0027\n  Add Kbuild file for i386 \u0027make headers_install\u0027\n  Add Kbuild file for x86_64 \u0027make headers_install\u0027\n  Add Kbuild file for PowerPC \u0027make headers_install\u0027\n  Add generic Kbuild files for \u0027make headers_install\u0027\n  Basic implementation of \u0027make headers_check\u0027\n  Basic implementation of \u0027make headers_install\u0027\n"
    },
    {
      "commit": "8555255f0b426858d8648c6206b70eb906cf4ec7",
      "tree": "3afe2ae27f6390bd6cb2350a578fafc690fa7803",
      "parents": [
        "684753599afc76aa8f66c731bafb7204b39265b8"
      ],
      "author": {
        "name": "David Woodhouse",
        "email": "dwmw2@infradead.org",
        "time": "Sun Jun 18 12:14:01 2006 +0100"
      },
      "committer": {
        "name": "David Woodhouse",
        "email": "dwmw2@infradead.org",
        "time": "Sun Jun 18 12:14:01 2006 +0100"
      },
      "message": "Add generic Kbuild files for \u0027make headers_install\u0027\n\nThis adds the Kbuild files listing the files which are to be installed by\nthe \u0027headers_install\u0027 make target, in generic directories.\n\nSigned-off-by: David Woodhouse \u003cdwmw2@infradead.org\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": "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": "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": "63942c9a981ecfa2aabfb27ff1a87b88f2ee9f5b",
      "tree": "40ddf2d6a967564c979fb198b5a78a4e888fea84",
      "parents": [
        "37c22a77212c13201497378cc8becc5c95d0f3f5"
      ],
      "author": {
        "name": "Leonid Arsh",
        "email": "leonida@voltaire.com",
        "time": "Sat Jun 17 20:37:35 2006 -0700"
      },
      "committer": {
        "name": "Roland Dreier",
        "email": "rolandd@cisco.com",
        "time": "Sat Jun 17 20:37:35 2006 -0700"
      },
      "message": "IB: Add client reregister event type\n\nAdd IB_EVENT_CLIENT_REREGISTER to enum so low-level drivers can\ngenerate \"client reregister\" events.\n\nSigned-off-by: Leonid Arsh \u003cleonida@voltaire.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": "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": "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": "618a3c03fcfdf1ac4543247c8ddfb0c9d775ff33",
      "tree": "9b3c0baf53f0fcab01848b7816aace785afd8a94",
      "parents": [
        "fa9656bbd9af5b95adc43eaa0a143992346378cb"
      ],
      "author": {
        "name": "Hal Rosenstock",
        "email": "halr@voltaire.com",
        "time": "Tue Mar 28 16:40:04 2006 -0800"
      },
      "committer": {
        "name": "Roland Dreier",
        "email": "rolandd@cisco.com",
        "time": "Thu Mar 30 07:19:51 2006 -0800"
      },
      "message": "IB/mad: RMPP support for additional classes\n\nAdd RMPP support for additional management classes that support it.\nAlso, validate RMPP is consistent with management class specified.\n\nSigned-off-by: Hal Rosenstock \u003chalr@voltaire.com\u003e\nSigned-off-by: Sean Hefty \u003csean.hefty@intel.com\u003e\nSigned-off-by: Roland Dreier \u003crolandd@cisco.com\u003e\n"
    },
    {
      "commit": "f36e1793e25513380cae5958a9164d4cc4458ad0",
      "tree": "aa31d34ee07971645af6f21068709166420caee2",
      "parents": [
        "6ecb0c849625e830ab96495d473bb704812c30e1"
      ],
      "author": {
        "name": "Jack Morgenstein",
        "email": "jackm@mellanox.co.il",
        "time": "Fri Mar 03 21:54:13 2006 -0800"
      },
      "committer": {
        "name": "Roland Dreier",
        "email": "rolandd@cisco.com",
        "time": "Mon Mar 20 10:08:23 2006 -0800"
      },
      "message": "IB/umad: Add support for large RMPP transfers\n\nAdd support for sending and receiving large RMPP transfers.  The old\ncode supports transfers only as large as a single contiguous kernel\nmemory allocation.  This patch uses linked list of memory buffers when\nsending and receiving data to avoid needing contiguous pages for\nlarger transfers.\n\n  Receive side: copy the arriving MADs in chunks instead of coalescing\n  to one large buffer in kernel space.\n\n  Send side: split a multipacket MAD buffer to a list of segments,\n  (multipacket_list) and send these using a gather list of size 2.\n  Also, save pointer to last sent segment, and retrieve requested\n  segments by walking list starting at last sent segment. Finally,\n  save pointer to last-acked segment.  When retrying, retrieve\n  segments for resending relative to this pointer.  When updating last\n  ack, start at this pointer.\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": "ea88fd16d6e85f4bc71b6053180b64f04be1ff14",
      "tree": "ea0f02aca9bb83f636e60002a9f98f9dab6d57e0",
      "parents": [
        "abb6e9ba17eb133ab385d0f9017fa8afa809d52a"
      ],
      "author": {
        "name": "Dotan Barak",
        "email": "dotanb@mellanox.co.il",
        "time": "Thu Feb 23 12:36:18 2006 -0800"
      },
      "committer": {
        "name": "Roland Dreier",
        "email": "rolandd@cisco.com",
        "time": "Mon Mar 20 10:08:16 2006 -0800"
      },
      "message": "IB/uverbs: Return actual capacity from create SRQ operation\n\nPass actual capacity of created SRQ back to userspace, so that\nuserspace can report accurate capacities.  This requires an ABI bump,\nto change struct ib_uverbs_create_srq_resp.\n\nSigned-off-by: Dotan Barak \u003cdotanb@mellanox.co.il\u003e\nSigned-off-by: Roland Dreier \u003crolandd@cisco.com\u003e\n"
    },
    {
      "commit": "abb6e9ba17eb133ab385d0f9017fa8afa809d52a",
      "tree": "6cab0a44a1cb439c3c204149d44e6295320e5de7",
      "parents": [
        "44af79f9524c29d6850591cc972f2667a27234d4"
      ],
      "author": {
        "name": "Dotan Barak",
        "email": "dotanb@mellanox.co.il",
        "time": "Thu Feb 23 12:13:51 2006 -0800"
      },
      "committer": {
        "name": "Roland Dreier",
        "email": "rolandd@cisco.com",
        "time": "Mon Mar 20 10:08:16 2006 -0800"
      },
      "message": "IB/mthca: Return actual capacity from create_srq\n\nHave mthca\u0027s create_srq method return the actual capacity of the SRQ\nthat gets created.  Also update comments in \u003crdma/ib_verbs.h\u003e to\nclarify that this is what is expected from ib_create_srq().\n\nSigned-off-by: Dotan Barak \u003cdotanb@mellanox.co.il\u003e\nSigned-off-by: Roland Dreier \u003crolandd@cisco.com\u003e\n"
    },
    {
      "commit": "4d9781c5ce1a517a07dbf03c37323c011037fe79",
      "tree": "68ad197f6ced067ab8c29294d156ee6e2e04da4e",
      "parents": [
        "00df1b2c8b1f07e02a74e2d10b176f29395ce7d2"
      ],
      "author": {
        "name": "Roland Dreier",
        "email": "rolandd@cisco.com",
        "time": "Thu Feb 16 09:26:19 2006 -0800"
      },
      "committer": {
        "name": "Roland Dreier",
        "email": "rolandd@cisco.com",
        "time": "Mon Mar 20 10:08:16 2006 -0800"
      },
      "message": "IB/uverbs: Fix alignment of struct ib_uverbs_create_qp_resp\n\nThe size of struct ib_uverbs_create_qp_resp is not even multiple of 8\nbytes.  This causes problems for low-level drivers that add private\ndata after the structure: 32-bit userspace will look in the wrong\nplace for a response from a 64-bit kernel.  Fix this by adding a\nreserved field.  Also, bump the ABI version because this changes the\nsize of a structure.\n\nPointed out by Hoang-Nam Nguyen \u003cHNGUYEN@de.ibm.com\u003e.\n\nSigned-off-by: Roland Dreier \u003crolandd@cisco.com\u003e\n"
    },
    {
      "commit": "8bdb0e8632e0f5061bd18b6934346cb609490135",
      "tree": "baa94a9ad7c97f4c025452ffbba2b7f6d8cc0af2",
      "parents": [
        "7ccc9a24e01258a31ee2b964215e4ddddd2a02c4"
      ],
      "author": {
        "name": "Dotan Barak",
        "email": "dotanb@mellanox.co.il",
        "time": "Mon Feb 13 16:31:57 2006 -0800"
      },
      "committer": {
        "name": "Roland Dreier",
        "email": "rolandd@cisco.com",
        "time": "Mon Mar 20 10:08:14 2006 -0800"
      },
      "message": "IB/uverbs: Support for query SRQ from userspace\n\nAdd support to uverbs to handle querying userspace SRQs (shared\nreceive queues), including adding an ABI for marshalling requests and\nresponses.  The kernel midlayer already has the underlying\nib_query_srq() function.\n\nSigned-off-by: Dotan Barak \u003cdotanb@mellanox.co.il\u003e\nSigned-off-by: Roland Dreier \u003crolandd@cisco.com\u003e\n"
    },
    {
      "commit": "7ccc9a24e01258a31ee2b964215e4ddddd2a02c4",
      "tree": "486ab72c62f42952309ea764bc6bd30f56e87522",
      "parents": [
        "a74cd4af0bfa9578594acbb711a958104c93b772"
      ],
      "author": {
        "name": "Dotan Barak",
        "email": "dotanb@mellanox.co.il",
        "time": "Mon Feb 13 16:31:25 2006 -0800"
      },
      "committer": {
        "name": "Roland Dreier",
        "email": "rolandd@cisco.com",
        "time": "Mon Mar 20 10:08:14 2006 -0800"
      },
      "message": "IB/uverbs: Support for query QP from userspace\n\nAdd support to uverbs to handle querying userspace QPs (queue pairs),\nincluding adding an ABI for marshalling requests and responses.  The\nkernel midlayer already has the underlying ib_query_qp() function.\n\nSigned-off-by: Dotan Barak \u003cdotanb@mellanox.co.il\u003e\nSigned-off-by: Roland Dreier \u003crolandd@cisco.com\u003e\n"
    },
    {
      "commit": "a74cd4af0bfa9578594acbb711a958104c93b772",
      "tree": "070e951014aa396b472d3b17df81e6665bd5a4c5",
      "parents": [
        "d844183d9c7b103da1d7a1c753a1c171e9ce26b3"
      ],
      "author": {
        "name": "Roland Dreier",
        "email": "rolandd@cisco.com",
        "time": "Mon Feb 13 16:30:49 2006 -0800"
      },
      "committer": {
        "name": "Roland Dreier",
        "email": "rolandd@cisco.com",
        "time": "Mon Mar 20 10:08:13 2006 -0800"
      },
      "message": "IB: Whitespace cleanups\n\nRemove trailing whitespace and fix indentation that with spaces\ninstead of tabs.\n\nSigned-off-by: Roland Dreier \u003crolandd@cisco.com\u003e\n"
    },
    {
      "commit": "8a51866f08103ba04894ce0f65eef567ddc3ed40",
      "tree": "39af79ce5995900c14610acc768850a749961ee9",
      "parents": [
        "3fa1fa3e809dc009a080ca9f052cee2e17836c63"
      ],
      "author": {
        "name": "Roland Dreier",
        "email": "rolandd@cisco.com",
        "time": "Mon Feb 13 12:48:12 2006 -0800"
      },
      "committer": {
        "name": "Roland Dreier",
        "email": "rolandd@cisco.com",
        "time": "Mon Mar 20 10:08:12 2006 -0800"
      },
      "message": "IB: Add ib_modify_qp_is_ok() library function\n\nThe in-kernel mthca driver contains a table of which attributes are\nvalid for each queue pair state transition.  It turns out that both\nother IB drivers -- ipath and ehca -- which are being prepared for\nmerging have copied this table, errors and all.\n\nTo forestall this code duplication, move this table and the code to\ncheck parameters against it into a midlayer library function,\nib_modify_qp_is_ok().\n\nSigned-off-by: Roland Dreier \u003crolandd@cisco.com\u003e\n"
    },
    {
      "commit": "d36f34aadf184d8cc4c240de2b6319ccea8334bb",
      "tree": "20b7a77e03f3c75c9043a50ddd720a31048efa99",
      "parents": [
        "6dfc3901b04d1b79fa982d6de6d5af3b50c6cea8"
      ],
      "author": {
        "name": "Or Gerlitz",
        "email": "ogerlitz@voltaire.com",
        "time": "Thu Feb 02 10:43:45 2006 -0800"
      },
      "committer": {
        "name": "Roland Dreier",
        "email": "rolandd@cisco.com",
        "time": "Mon Mar 20 10:08:10 2006 -0800"
      },
      "message": "IB: Enable FMR pool user to set page size\n\nThis patch allows the consumer to set the page size of \"pages\" mapped\nby the pool FMRs, which is a feature already existing in the base\nverbs API.  On the cosmetic side it changes ib_fmr_attr.page_size field\nto be named page_shift.\n\nSigned-off-by: Or Gerlitz \u003cogerlitz@voltaire.com\u003e\nSigned-off-by: Roland Dreier \u003crolandd@cisco.com\u003e\n"
    },
    {
      "commit": "c5bcbbb9fe00128d500c2f473d5ddc8d8c2c53a7",
      "tree": "c4a6feac1bc1dfd9e2fbe88c8e6ad1db4a47a817",
      "parents": [
        "2fa5e2ebbe2d81f741ba7bed9e07dc38cc734625"
      ],
      "author": {
        "name": "Roland Dreier",
        "email": "rolandd@cisco.com",
        "time": "Thu Feb 02 09:47:14 2006 -0800"
      },
      "committer": {
        "name": "Roland Dreier",
        "email": "rolandd@cisco.com",
        "time": "Mon Mar 20 10:08:09 2006 -0800"
      },
      "message": "IB: Allow userspace to set node description\n\nExpose a writable \"node_desc\" sysfs attribute for InfiniBand devices.\nThis allows userspace to update the node description with information\nsuch as the node\u0027s hostname, so that IB network management software\ncan tie its view to the real world.\n\nSigned-off-by: Michael S. Tsirkin \u003cmst@mellanox.co.il\u003e\nSigned-off-by: Roland Dreier \u003crolandd@cisco.com\u003e\n"
    },
    {
      "commit": "33b9b3ee9709b19c4f02ab91571d53540d05c3d1",
      "tree": "2d1019e9b8bf63e4235d7c73fd78ab294b993de2",
      "parents": [
        "399d7921299fc4f146bd62bfa6312382a5429bcc"
      ],
      "author": {
        "name": "Roland Dreier",
        "email": "rolandd@cisco.com",
        "time": "Mon Jan 30 14:29:21 2006 -0800"
      },
      "committer": {
        "name": "Roland Dreier",
        "email": "rolandd@cisco.com",
        "time": "Mon Mar 20 10:08:07 2006 -0800"
      },
      "message": "IB: Add userspace support for resizing CQs\n\nAdd support to uverbs to handle resizing userspace CQs (completion\nqueues), including adding an ABI for marshalling requests and\nresponses.  The kernel midlayer already has ib_resize_cq().\n\nSigned-off-by: Roland Dreier \u003crolandd@cisco.com\u003e\n"
    }
  ],
  "next": "cf311cd49a78f1e431787068cc31d29d06a415e6"
}
