)]}'
{
  "log": [
    {
      "commit": "1a6ab7f4c4aa048e8cf0c6cbed5935181f660bd8",
      "tree": "546f94ecb8adb3120c27e8ac2fbeb8b068f45c01",
      "parents": [
        "3b3973377f0dbccb11323b86e267308052cc4458"
      ],
      "author": {
        "name": "Doug Ledford",
        "email": "dledford@redhat.com",
        "time": "Tue Jan 17 14:42:53 2017 -0500"
      },
      "committer": {
        "name": "Doug Ledford",
        "email": "dledford@redhat.com",
        "time": "Tue Jan 17 14:42:53 2017 -0500"
      },
      "message": "Deprecate libibverbs git repo\n\nNow that all of the rdma components have been pulled into a single\nrepository on github, remove all of the contents of this repo and\nleave a pointer to the new location.\n\nSigned-off-by: Doug Ledford \u003cdledford@redhat.com\u003e\n"
    },
    {
      "commit": "3b3973377f0dbccb11323b86e267308052cc4458",
      "tree": "5508c62a770205757a66f7c59025011cee18bc1e",
      "parents": [
        "5094378e7e07231a82bc31296c3fe98c1cd80a58"
      ],
      "author": {
        "name": "Noa Osherovich",
        "email": "noaos@mellanox.com",
        "time": "Thu Sep 15 15:51:17 2016 +0300"
      },
      "committer": {
        "name": "Doug Ledford",
        "email": "dledford@redhat.com",
        "time": "Thu Sep 15 14:18:04 2016 -0400"
      },
      "message": "Add support for UD traffic on RoCE v2\n\nWhen creating an Address Handle from a Work Completion, source GID index must\nbe set. To enable RoCE v2, libibverbs should select the right GID index for\nit.\n\nRoCE v2 is using UDP/IP layers so a WC\u0027s GRH could be either an IB GRH, IPv4\nheader or an IPv6 header. Libibverbs should be able to differ between them in a\ndriver-agnostic way to avoid API changes.\n\nThis patch is using the fact that for RoCE v2, the GRH is either an IPv6 header\nor 20 garbled bytes followed by an IPv4 header, as defined in RoCE v2 annex.\nThe annex also specifies that for packets with IPv4 header, the version number\nis 4, for packets with IPv6 header it\u0027s 6 or the packet is silently dropped.\nThis fact is also taken into account when parsing the GRH.\n\nSigned-off-by: Noa Osherovich \u003cnoaos@mellanox.com\u003e\nReviewed-by: Yishai Hadas \u003cyishaih@mellanox.com\u003e\nSigned-off-by: Doug Ledford \u003cdledford@redhat.com\u003e\n"
    },
    {
      "commit": "5094378e7e07231a82bc31296c3fe98c1cd80a58",
      "tree": "00c90d84cc8cda7a370cffb5f81eade24bc79991",
      "parents": [
        "047ca9ea884060a0122e875c3305afcac00dd8a6"
      ],
      "author": {
        "name": "Noa Osherovich",
        "email": "noaos@mellanox.com",
        "time": "Thu Sep 15 15:51:16 2016 +0300"
      },
      "committer": {
        "name": "Doug Ledford",
        "email": "dledford@redhat.com",
        "time": "Thu Sep 15 14:18:04 2016 -0400"
      },
      "message": "Add ibv_query_gid_type to support RoCE v2 UD traffic\n\nCurrently, libibverbs does not support UD traffic for RoCE v2 since\nit can\u0027t differ between v1 and v2 GIDs (both have the same GID, only\nthe version is different). This means that GID index can\u0027t be\nselected correctly.\n\nThis patch introduces ibv_query_gid_type helper function to be used\nby libibverbs and its vendors to return GID type based on its GID\nindex by using the relevant sysfs.\n\nSigned-off-by: Noa Osherovich \u003cnoaos@mellanox.com\u003e\nReviewed-by: Yishai Hadas \u003cyishaih@mellanox.com\u003e\nSigned-off-by: Doug Ledford \u003cdledford@redhat.com\u003e\n"
    },
    {
      "commit": "047ca9ea884060a0122e875c3305afcac00dd8a6",
      "tree": "e1f748497b9170c8d77c3f89fb82eb5428ddbdde",
      "parents": [
        "30dd3cf63c4552f80a8b1764634ff216f9197c3c"
      ],
      "author": {
        "name": "Yishai Hadas",
        "email": "yishaih@mellanox.com",
        "time": "Thu Sep 15 15:48:11 2016 +0300"
      },
      "committer": {
        "name": "Doug Ledford",
        "email": "dledford@redhat.com",
        "time": "Thu Sep 15 14:16:49 2016 -0400"
      },
      "message": "Update man pages for RSS usage\n\nUpdate man pages for RSS usage, it includes:\n- Add man pages for the new related verbs.\n- Update  man/ibv_create_qp_ex and man/ibv_query_device_ex\n  to include the related RSS stuff.\n\nSigned-off-by: Yishai Hadas \u003cyishaih@mellanox.com\u003e\nSigned-off-by: Doug Ledford \u003cdledford@redhat.com\u003e\n"
    },
    {
      "commit": "30dd3cf63c4552f80a8b1764634ff216f9197c3c",
      "tree": "be83ee81c9158b0c0e5004f21414394dad54c26a",
      "parents": [
        "d0ac81c60e12276efb0c094761a82bb388bb134b"
      ],
      "author": {
        "name": "Yishai Hadas",
        "email": "yishaih@mellanox.com",
        "time": "Thu Sep 15 15:48:10 2016 +0300"
      },
      "committer": {
        "name": "Doug Ledford",
        "email": "dledford@redhat.com",
        "time": "Thu Sep 15 14:16:49 2016 -0400"
      },
      "message": "Expose RSS related capabilities\n\nExpose RSS related capabilities, it includes:\n\n- QP types that support RSS on the device.\n- Max number of receive work queue indirection tables that\n  could be opened on the device.\n- Max size of a receive work queue indirection table.\n- Max number of work queues of receive type that\n  could be opened on the device.\n\n- Bit mask of the supported types of hash functions.\n- Bit mask of the supported RX fields that can participate\n  in the RX hashing.\n\nSigned-off-by: Yishai Hadas \u003cyishaih@mellanox.com\u003e\nSigned-off-by: Doug Ledford \u003cdledford@redhat.com\u003e\n"
    },
    {
      "commit": "d0ac81c60e12276efb0c094761a82bb388bb134b",
      "tree": "300d695fe49d9669ffedaa4ce3547aff5d560f08",
      "parents": [
        "f70af0c4de0ad790471c0f2186d0a8b5782c4c44"
      ],
      "author": {
        "name": "Yishai Hadas",
        "email": "yishaih@mellanox.com",
        "time": "Thu Sep 15 15:48:09 2016 +0300"
      },
      "committer": {
        "name": "Doug Ledford",
        "email": "dledford@redhat.com",
        "time": "Thu Sep 15 14:16:49 2016 -0400"
      },
      "message": "Track asynchronous events on a work queue\n\nAdd support to track asynchronous events on a work queue object.\nFor now only IBV_EVENT_WQ_FATAL is applicable.\n\nSigned-off-by: Yishai Hadas \u003cyishaih@mellanox.com\u003e\nSigned-off-by: Doug Ledford \u003cdledford@redhat.com\u003e\n"
    },
    {
      "commit": "f70af0c4de0ad790471c0f2186d0a8b5782c4c44",
      "tree": "18f236ff974aa278852e2f9f10251750dbe48b5b",
      "parents": [
        "2ab51e84e49a30b8374dd508af080481c083b579"
      ],
      "author": {
        "name": "Yishai Hadas",
        "email": "yishaih@mellanox.com",
        "time": "Thu Sep 15 15:48:08 2016 +0300"
      },
      "committer": {
        "name": "Doug Ledford",
        "email": "dledford@redhat.com",
        "time": "Thu Sep 15 14:16:49 2016 -0400"
      },
      "message": "Extend create QP to get RX hash data\n\nExtend create QP to get RX hash data, this is needed\nto enable RSS based on some RX configuration.\n\nSigned-off-by: Yishai Hadas \u003cyishaih@mellanox.com\u003e\nSigned-off-by: Doug Ledford \u003cdledford@redhat.com\u003e\n"
    },
    {
      "commit": "2ab51e84e49a30b8374dd508af080481c083b579",
      "tree": "842652a6324b7bcf959fab36f56e7d8826831118",
      "parents": [
        "0672e793f09311c8d872bbf8db063270b5594de2"
      ],
      "author": {
        "name": "Yishai Hadas",
        "email": "yishaih@mellanox.com",
        "time": "Thu Sep 15 15:48:07 2016 +0300"
      },
      "committer": {
        "name": "Doug Ledford",
        "email": "dledford@redhat.com",
        "time": "Thu Sep 15 14:16:49 2016 -0400"
      },
      "message": "Extend create QP to get a Receive Work Queue indirection table\n\nExtend create QP to get a Receive Work Queue indirection table,\nthis is needed to enable RSS on some set of Receive Work Queues.\n\nSigned-off-by: Yishai Hadas \u003cyishaih@mellanox.com\u003e\nSigned-off-by: Doug Ledford \u003cdledford@redhat.com\u003e\n"
    },
    {
      "commit": "0672e793f09311c8d872bbf8db063270b5594de2",
      "tree": "aa07c9a4350c48673f09ddd6690ff684e5347fcf",
      "parents": [
        "2864904f82bf3f08f9c87225238d107a66ef31b2"
      ],
      "author": {
        "name": "Yishai Hadas",
        "email": "yishaih@mellanox.com",
        "time": "Thu Sep 15 15:48:06 2016 +0300"
      },
      "committer": {
        "name": "Doug Ledford",
        "email": "dledford@redhat.com",
        "time": "Thu Sep 15 14:16:49 2016 -0400"
      },
      "message": "Introduce Receive Work Queue indirection table and its verbs\n\nIntroduce Receive Work Queue (WQ) indirection table and its\ncreate/destroy verbs. This object can be used to spread incoming\ntraffic to different receive Work Queues.\n\nA Receive WQ indirection table points to variable size of WQs.  This\ntable is given to a QP in downstream patches.\n\nSigned-off-by: Yishai Hadas \u003cyishaih@mellanox.com\u003e\nSigned-off-by: Doug Ledford \u003cdledford@redhat.com\u003e\n"
    },
    {
      "commit": "2864904f82bf3f08f9c87225238d107a66ef31b2",
      "tree": "558e7d4f3def702ace9ff888fcd399a74f326777",
      "parents": [
        "3a338f6a11c93bc85e99b06cef3e0a5fadbde1e0"
      ],
      "author": {
        "name": "Yishai Hadas",
        "email": "yishaih@mellanox.com",
        "time": "Thu Sep 15 15:48:05 2016 +0300"
      },
      "committer": {
        "name": "Doug Ledford",
        "email": "dledford@redhat.com",
        "time": "Thu Sep 15 14:16:49 2016 -0400"
      },
      "message": "Introduce Work Queue object and its verbs\n\nIntroduce Work Queue object and its create/destroy/modify verbs.\n\nQP can be created without internal WQs \"packaged\" inside it,\nthis QP can be configured to use \"external\" WQ object as its\nreceive/send queue.\n\nWQ is a necessary component for RSS technology since RSS mechanism\nis supposed to distribute the traffic between multiple Receive Work\nQueues.\n\nWQ associated (many to one) with Completion Queue and it owns WQ\nproperties (PD, WQ size, etc.).\nWQ has a type, this patch introduces the IBV_WQT_RQ (i.e.receive\nqueue), it may be extend to others such as IBV_WQT_SQ. (send queue).\n\nWQ from type IBV_WQT_RQ contains receive work requests and as such\nexposes post receive function to be used to post a list of work\nrequests (WRs) to its receive queue.\n\nPD is an attribute of a work queue (i.e. send/receive queue), it\u0027s\nused by the hardware for security validation before scattering to a\nmemory region which is pointed by the WQ. For that, an external WQ\nobject\nneeds a PD, letting the hardware makes that validation.\n\nWhen accessing a memory region that is pointed by the WQ its PD\nis used and not the QP\u0027s PD, this behavior is similar to a SRQ and a QP.\n\nWQ context is subject to a well-defined state transitions done by\nthe modify_wq verb.\nWhen WQ is created its initial state becomes IBV_WQS_RESET.\n\u003eFrom IBV_WQS_RESET it can be modified to itself or to IBV_WQS_RDY.\n\u003eFrom IBV_WQS_RDY it can be modified to itself, to IBV_WQS_RESET\n      or to IBV_WQS_ERR.\n\u003eFrom IBV_WQS_ERR it can be modified to IBV_WQS_RESET.\n\nNote: transition to IBV_WQS_ERR might occur implicitly in case there\n      was some HW error.\n\nSigned-off-by: Yishai Hadas \u003cyishaih@mellanox.com\u003e\nSigned-off-by: Doug Ledford \u003cdledford@redhat.com\u003e\n"
    },
    {
      "commit": "3a338f6a11c93bc85e99b06cef3e0a5fadbde1e0",
      "tree": "bc1c737e346463649cd78911c2b09b83a2e7202a",
      "parents": [
        "4e03cc1693c38291b87b53a4f7b3a8a998a2dac4"
      ],
      "author": {
        "name": "Bodong Wang",
        "email": "bodong@mellanox.com",
        "time": "Sun Aug 21 19:48:01 2016 +0300"
      },
      "committer": {
        "name": "Doug Ledford",
        "email": "dledford@redhat.com",
        "time": "Thu Aug 25 10:42:40 2016 -0400"
      },
      "message": "Update man pages for TSO support\n\nUpdate relevant man pages for TSO:\n- Add max_tso_header as part of ibv_create_qp_ex man page.\n- Add IBV_WR_TSO opcode and update send operation support table for\n  RAW_PACKET QP as part of ibv_post_send man page.\n- Add TSO capabilities as part of ibv_query_device_ex man page.\n\nIn addition, fixed a typo as part of updating ibv_post_send related to\nibv_odp_caps.\n\nSigned-off-by: Bodong Wang \u003cbodong@mellanox.com\u003e\nReviewed-by: Yishai Hadas \u003cyishaih@mellanox.com\u003e\nSigned-off-by: Doug Ledford \u003cdledford@redhat.com\u003e\n"
    },
    {
      "commit": "4e03cc1693c38291b87b53a4f7b3a8a998a2dac4",
      "tree": "c0d0ef4f6128b3790292fdeb6cf9d8a60bf1a5f9",
      "parents": [
        "5982a88a19c4de633b05c2b9d24e4bcab94f17a6"
      ],
      "author": {
        "name": "Bodong Wang",
        "email": "bodong@mellanox.com",
        "time": "Sun Aug 21 19:48:00 2016 +0300"
      },
      "committer": {
        "name": "Doug Ledford",
        "email": "dledford@redhat.com",
        "time": "Thu Aug 25 10:41:47 2016 -0400"
      },
      "message": "Add support for TCP segmentation offload (TSO)\n\n1) Add a structure to define a TSO packet as part of struct ibv_send_wr.\n2) Add IBV_WR_TSO opcode to be used as part of post_send.\n3) Add IBV_WC_TSO to be used as part of poll_cq to report a TSO completion.\n4) Add IBV_QP_INIT_ATTR_MAX_TSO_HEADER to define the maximum TSO header size\n   when creating a QP. This is needed to let providers prepare their SQ buffer\n   to fit application\u0027s usage.\n5) Report TSO capabilities when querying a device.\n\nIn order to preserve the size of ibv_send_wr structure and prevents some\nperformance penalty, the TSO definition was added under a union with the\nmemory window stuff, those options are mutual exclusive.\n\nThe TSO definition should include:\n- A pointer to the packet header.\n- Header size.\n- The maximum segment size (mss) that the hardware should generate in\n  its TSO engine.\n\nSigned-off-by: Bodong Wang \u003cbodong@mellanox.com\u003e\nReviewed-by: Yishai Hadas \u003cyishaih@mellanox.com\u003e\nSigned-off-by: Doug Ledford \u003cdledford@redhat.com\u003e\n"
    },
    {
      "commit": "5982a88a19c4de633b05c2b9d24e4bcab94f17a6",
      "tree": "a7ed87d40ccbc5dfacc00b1f61f699e766ef87f3",
      "parents": [
        "0be978ea2bfaf203c35334b090bddb280de62611"
      ],
      "author": {
        "name": "Bodong Wang",
        "email": "bodong@mellanox.com",
        "time": "Sun Aug 21 19:47:59 2016 +0300"
      },
      "committer": {
        "name": "Doug Ledford",
        "email": "dledford@redhat.com",
        "time": "Thu Aug 25 10:41:47 2016 -0400"
      },
      "message": "Fix ibv_cmd_query_device_ex to return valid output\n\nMake sure to return valid output by memset the extended fields to zero.\nNo need to deal with specific fields any more.\n\nCurrently, extended fields will be assigned to some value or 0 depending\non response from the command. When adding a new extended field, relevant\nvariables must be cleared if no response got from the kernel.\n\nSigned-off-by: Bodong Wang \u003cbodong@mellanox.com\u003e\nReviewed-by: Yishai Hadas \u003cyishaih@mellanox.com\u003e\nSigned-off-by: Doug Ledford \u003cdledford@redhat.com\u003e\n"
    },
    {
      "commit": "0be978ea2bfaf203c35334b090bddb280de62611",
      "tree": "a177609c8161f95b4fff3974d88cce460c49ace2",
      "parents": [
        "7f272c00424b348c152c3f929162af12a5f4834d"
      ],
      "author": {
        "name": "Doug Ledford",
        "email": "dledford@redhat.com",
        "time": "Tue Jul 19 16:04:04 2016 -0400"
      },
      "committer": {
        "name": "Doug Ledford",
        "email": "dledford@redhat.com",
        "time": "Tue Jul 19 16:08:04 2016 -0400"
      },
      "message": "Roll 1.2.1 release\n\nSigned-off-by: Doug Ledford \u003cdledford@redhat.com\u003e\n"
    },
    {
      "commit": "7f272c00424b348c152c3f929162af12a5f4834d",
      "tree": "2020e8b320065942dc332c90155d03d7acba54a8",
      "parents": [
        "20e2daec4578c1df10d8b599bf3b525a9b3fc6c3"
      ],
      "author": {
        "name": "Doug Ledford",
        "email": "dledford@redhat.com",
        "time": "Thu Jun 23 11:00:26 2016 -0400"
      },
      "committer": {
        "name": "Doug Ledford",
        "email": "dledford@redhat.com",
        "time": "Thu Jun 23 11:00:26 2016 -0400"
      },
      "message": "Update .gitignore\n\nI store release tarballs in a subdirectory of my git repo, so I needed\nan update to my .gitignore file\n\nSigned-off-by: Doug Ledford \u003cdledford@redhat.com\u003e\n"
    },
    {
      "commit": "20e2daec4578c1df10d8b599bf3b525a9b3fc6c3",
      "tree": "00c219d28826a868c8fcd56e46cdff57765aa743",
      "parents": [
        "0de26fb8b62ddcb7cb8dd66e3d54042dd16f164f"
      ],
      "author": {
        "name": "Steve Wise",
        "email": "swise@opengridcomputing.com",
        "time": "Tue Jun 07 07:42:47 2016 -0700"
      },
      "committer": {
        "name": "Doug Ledford",
        "email": "dledford@redhat.com",
        "time": "Thu Jun 23 10:47:15 2016 -0400"
      },
      "message": "Fail compiles if no platform specific memory barriers exist\n\nCurrently there is a \"generic\" implementation for the memory barrier\nmacros in arch.h.  These turned out to be insuffient for ARM64 causing\nmemory corruption problems when doing RDMA operations.  So going forward,\nfail a compile on a platform w/o platform-specific memory barrier macros.\n\nSigned-off-by: Steve Wise \u003cswise@opengridcomputing.com\u003e\nSigned-off-by: Doug Ledford \u003cdledford@redhat.com\u003e\n"
    },
    {
      "commit": "0de26fb8b62ddcb7cb8dd66e3d54042dd16f164f",
      "tree": "fad343c3801a36b32f8b1bf4095e7ffca8dc0027",
      "parents": [
        "d0e4e455b96e48832cbc349723ddca1da728f59e"
      ],
      "author": {
        "name": "Steve Wise",
        "email": "swise@opengridcomputing.com",
        "time": "Tue Jun 07 07:42:43 2016 -0700"
      },
      "committer": {
        "name": "Doug Ledford",
        "email": "dledford@redhat.com",
        "time": "Thu Jun 23 10:47:15 2016 -0400"
      },
      "message": "libibverbs: add ARM64 memory barrier macros\n\nThe default generic barriers are not correct for ARM64. This results\nin data corruption.  The correct macros are based on the ARM Compiler\nToolchain Assembler Reference documenation.\n\nSigned-off-by: Steve Wise \u003cswise@opengridcomputing.com\u003e\nSigned-off-by: Doug Ledford \u003cdledford@redhat.com\u003e\n"
    },
    {
      "commit": "d0e4e455b96e48832cbc349723ddca1da728f59e",
      "tree": "de5e3f15307a9aa8d8b8324eeebe6b2f6e409bee",
      "parents": [
        "8f59a5c28654ac69e792d8944528b967a497fb76"
      ],
      "author": {
        "name": "Jarod Wilson",
        "email": "jarod@redhat.com",
        "time": "Tue May 24 16:35:05 2016 -0400"
      },
      "committer": {
        "name": "Doug Ledford",
        "email": "dledford@redhat.com",
        "time": "Mon Jun 06 19:12:38 2016 -0400"
      },
      "message": "Add basic man page entry for ibv_xsrq_pingpong\n\nWe have internal tools that complain about any binaries that are missing\ncorresponding man pages, and all the other examples have \u0027em.\n\nShamelessly ripped off from ibv_srq_pingpong\u0027s man page.\n\nCC: Roland Dreier \u003croland@purestorage.com\u003e\nSigned-off-by: Jarod Wilson \u003cjarod@redhat.com\u003e\nSigned-off-by: Doug Ledford \u003cdledford@redhat.com\u003e\n"
    },
    {
      "commit": "8f59a5c28654ac69e792d8944528b967a497fb76",
      "tree": "afb8589f7ddf9a9b78d3e9a60a4a8d26184acac6",
      "parents": [
        "2928832d0649ebcc04aa45099b8829cf4f17e0dc",
        "5852b93d3bcde67f70ae577f219cfad005f7e1cc"
      ],
      "author": {
        "name": "Doug Ledford",
        "email": "dledford@redhat.com",
        "time": "Sat Jun 04 23:06:46 2016 -0400"
      },
      "committer": {
        "name": "Doug Ledford",
        "email": "dledford@redhat.com",
        "time": "Sat Jun 04 23:06:46 2016 -0400"
      },
      "message": "Merge remote-tracking branch \u0027yishaih/fcs\u0027\n\nMultiple conflicts with timestamp support.  Hand resolved.\n\nSigned-off-by: Doug Ledford \u003cdledford@redhat.com\u003e\n"
    },
    {
      "commit": "2928832d0649ebcc04aa45099b8829cf4f17e0dc",
      "tree": "32e8639c54bf1a1ad9ac718f5e65d923f4fede40",
      "parents": [
        "f4e6a85248fa6bceafd08e237e75a900a257b802"
      ],
      "author": {
        "name": "Yishai Hadas",
        "email": "yishaih@mellanox.com",
        "time": "Wed Jun 01 16:05:40 2016 +0300"
      },
      "committer": {
        "name": "Doug Ledford",
        "email": "dledford@redhat.com",
        "time": "Sat Jun 04 22:30:19 2016 -0400"
      },
      "message": "Add timestamp support in rc_pingpong\n\nAdd timestamp support in rc_pingpong, it can serve as some example\nof using ibv_create_cq_ex verb and the new\nibv_wc_read_xxx accessors.\n\nSigned-off-by: Yishai Hadas \u003cyishaih@mellanox.com\u003e\nReviewed-by: Matan Barak \u003cmatanb@mellanox.com\u003e\nSigned-off-by: Doug Ledford \u003cdledford@redhat.com\u003e\n"
    },
    {
      "commit": "f4e6a85248fa6bceafd08e237e75a900a257b802",
      "tree": "7ccdccc043432a0fdbfcd5f284ca22641ac3703d",
      "parents": [
        "169a6efad9e5c50b87e2820740ecfda63878f7ca"
      ],
      "author": {
        "name": "Matan Barak",
        "email": "matanb@mellanox.com",
        "time": "Wed Jun 01 16:05:39 2016 +0300"
      },
      "committer": {
        "name": "Doug Ledford",
        "email": "dledford@redhat.com",
        "time": "Sat Jun 04 22:30:19 2016 -0400"
      },
      "message": "Add a verb that queries real time values from the HCA\n\nAdd ibv_query_rt_values_ex, an extension verb to query certain real\ntime values of a device. Currently, only IBV_VALUES_MASK_RAW_CLOCK is\nsupported, but this verb could support other flags like\nIBV_VALUES_MASK_TEMP_SENSOR, IBV_VALUES_MASK_CORE_FREQ, etc.\n\nThis extension verb only calls the provider.\nThe provider has to query this value somehow and mark the queried\nvalues in comp_mask.\n\nSigned-off-by: Matan Barak \u003cmatanb@mellanox.com\u003e\nReviewed-by: Yishai Hadas \u003cyishaih@mellanox.com\u003e\nSigned-off-by: Doug Ledford \u003cdledford@redhat.com\u003e\n"
    },
    {
      "commit": "169a6efad9e5c50b87e2820740ecfda63878f7ca",
      "tree": "9648d8df6bc8ad564dc088e7fe1ac997d892bc3d",
      "parents": [
        "c2e36f6797f4466b8cea1df53db11c5c23bd3b2a"
      ],
      "author": {
        "name": "Matan Barak",
        "email": "matanb@mellanox.com",
        "time": "Wed Jun 01 16:05:38 2016 +0300"
      },
      "committer": {
        "name": "Doug Ledford",
        "email": "dledford@redhat.com",
        "time": "Sat Jun 04 22:30:19 2016 -0400"
      },
      "message": "Create a single threaded CQ\n\nWhen a CQ is used only from one thread, there\u0027s no need to waste cycles\non locking. Since this series introduces a mechanism which allows the\nvendor to introduce different polling functions per CQ, it allows the\nvendor to implement both locking and lockless CQs and assign them\naccordingly.\n\nAdding a new creation flag for this.\n\nSigned-off-by: Matan Barak \u003cmatanb@mellanox.com\u003e\nReviewed-by: Yishai Hadas \u003cyishaih@mellanox.com\u003e\nSigned-off-by: Doug Ledford \u003cdledford@redhat.com\u003e\n"
    },
    {
      "commit": "c2e36f6797f4466b8cea1df53db11c5c23bd3b2a",
      "tree": "a93f8f44cc062b3d578a4a1e1d80cf4ab088219d",
      "parents": [
        "1c8a921d0227e03b0be1794bb57989434c1b3430"
      ],
      "author": {
        "name": "Matan Barak",
        "email": "matanb@mellanox.com",
        "time": "Wed Jun 01 16:05:37 2016 +0300"
      },
      "committer": {
        "name": "Doug Ledford",
        "email": "dledford@redhat.com",
        "time": "Sat Jun 04 22:30:19 2016 -0400"
      },
      "message": "Add completion timestamp to poll_cq\n\nIn order to report when a completion was created, we add a member\nfunction to the CQ which reads the completion timestamp from the\ncurrent CQ. The time is given in raw format.\n\nSigned-off-by: Matan Barak \u003cmatanb@mellanox.com\u003e\nReviewed-by: Yishai Hadas \u003cyishaih@mellanox.com\u003e\nSigned-off-by: Doug Ledford \u003cdledford@redhat.com\u003e\n"
    },
    {
      "commit": "1c8a921d0227e03b0be1794bb57989434c1b3430",
      "tree": "09bde17c51791552168cad0bb15b86a11f239040",
      "parents": [
        "10f97b68181ab8d934a03df8768805a4c0d7896e"
      ],
      "author": {
        "name": "Matan Barak",
        "email": "matanb@mellanox.com",
        "time": "Wed Jun 01 16:05:36 2016 +0300"
      },
      "committer": {
        "name": "Doug Ledford",
        "email": "dledford@redhat.com",
        "time": "Sat Jun 04 22:30:19 2016 -0400"
      },
      "message": "Add timestamp_mask and hca_core_clock to ibv_query_device_ex\n\nThe fields timestamp_mask and hca_core_clock were added\nto the extended version of ibv_query_device verb.\ntimestamp_mask represents the supported mask of the timestamp.\nUsers could infer the accuracy of the reported possible\ntimestamp.\nhca_core_clock represents the frequency of the HCA (in kHZ).\n\nSince timestamp is given in hardware cycles, knowing the frequency\nis mandatory in order to convert this number into seconds.\n\nSigned-off-by: Matan Barak \u003cmatanb@mellanox.com\u003e\nReviewed-by: Yishai Hadas \u003cyishaih@mellanox.com\u003e\nSigned-off-by: Doug Ledford \u003cdledford@redhat.com\u003e\n"
    },
    {
      "commit": "10f97b68181ab8d934a03df8768805a4c0d7896e",
      "tree": "6784850518c71fdcd3797e4cd617b8054dd7e3c4",
      "parents": [
        "4ace2118493b580f0f1d818685c6ea3a51aa213a"
      ],
      "author": {
        "name": "Matan Barak",
        "email": "matanb@mellanox.com",
        "time": "Wed Jun 01 16:05:35 2016 +0300"
      },
      "committer": {
        "name": "Doug Ledford",
        "email": "dledford@redhat.com",
        "time": "Sat Jun 04 22:30:19 2016 -0400"
      },
      "message": "Add member functions to poll an extended CQ\n\nCurrently, ibv_poll_cq is one stop shop for polling all the\ncompletion\u0027s attribute. The current implementation has a few\nimplications:\n1. The vendor\u0027s completion format is transformed to an agnostic IB\n   format (copying data which might has been used directly).\n2. Adding new completion attributes means wasting more time in copies.\n3. Extensible functions require wasting cycles on logic which\n   determines whether a function is known and implemented in the\n   provider.\n\nIn order to solve these problems, we introduce a new poll_cq mechanism\nfor extensible CQs. Polling is done in batches, where every batch\ncould contain more than one completion. A batch is started with\ncalling to start_poll function. This already fetches a completion\nthat the user can now query using the various query functions.\nAdvancing to the next completion is done using next_poll.\nAfter querying all completions (or when the user wants to stop\nfetching completions in the current batch), end_poll is called.\n\nAs \u0027wr_id\u0027 and \u0027status\u0027 are mostly used, they can be accessed directly\nand there is no function call for.\n\nSigned-off-by: Matan Barak \u003cmatanb@mellanox.com\u003e\nReviewed-by: Yishai Hadas \u003cyishaih@mellanox.com\u003e\nSigned-off-by: Doug Ledford \u003cdledford@redhat.com\u003e\n"
    },
    {
      "commit": "4ace2118493b580f0f1d818685c6ea3a51aa213a",
      "tree": "7903c7a0029e9fb13f2f987dbaff38dbd63964fd",
      "parents": [
        "700d098ed190bba395219f1fb8891f94693331ec"
      ],
      "author": {
        "name": "Matan Barak",
        "email": "matanb@mellanox.com",
        "time": "Wed Jun 01 16:05:34 2016 +0300"
      },
      "committer": {
        "name": "Doug Ledford",
        "email": "dledford@redhat.com",
        "time": "Sat Jun 04 22:30:19 2016 -0400"
      },
      "message": "Add support for extended creating CQ verb\n\nAdd ibv_create_cq_ex. This extended verb follows the extension verbs\nscheme and hence could be extendible in the future for more features.\nThe new command requires the user to declare which fields are going\nto be polled. This is mandatory in order to maintain compatibility\nbetween new applications and old libraries.\nThe user shall only read fields from the completion which he requested\nupon creating the CQ.\n\nSigned-off-by: Matan Barak \u003cmatanb@mellanox.com\u003e\nReviewed-by: Yishai Hadas \u003cyishaih@mellanox.com\u003e\nSigned-off-by: Doug Ledford \u003cdledford@redhat.com\u003e\n"
    },
    {
      "commit": "5852b93d3bcde67f70ae577f219cfad005f7e1cc",
      "tree": "79a8001d110f26d4259a9f7aa40b0f2506c05962",
      "parents": [
        "86d774420968c546b17c75f560bfd00a1158a6ba"
      ],
      "author": {
        "name": "Majd Dibbiny",
        "email": "majd@mellanox.com",
        "time": "Tue Mar 15 20:14:14 2016 +0200"
      },
      "committer": {
        "name": "Yishai Hadas",
        "email": "yishaih@mellanox.com",
        "time": "Thu May 19 11:43:33 2016 +0300"
      },
      "message": "Add SCATTER_FCS QP create flag\n\nRaw Packet QPs that were created with Scatter FCS will scatter\nthe FCS into the receive buffers.\n\nSigned-off-by: Majd Dibbiny \u003cmajd@mellanox.com\u003e\nReviewed-by: Yishai Hadas \u003cyishaih@mellanox.com\u003e\n"
    },
    {
      "commit": "86d774420968c546b17c75f560bfd00a1158a6ba",
      "tree": "c8e045e7a89e71008b0a9cb18874a7e680970599",
      "parents": [
        "215736f7cdb1e1374e2cf0df9e45186390ed0369"
      ],
      "author": {
        "name": "Majd Dibbiny",
        "email": "majd@mellanox.com",
        "time": "Tue Mar 15 19:20:24 2016 +0200"
      },
      "committer": {
        "name": "Yishai Hadas",
        "email": "yishaih@mellanox.com",
        "time": "Thu May 19 11:41:02 2016 +0300"
      },
      "message": "Add extended device capability flags\n\nSince the legacy device capability flags are occupied, add new\ndevice capability flags to the extended query device.\n\nSigned-off-by: Majd Dibbiny \u003cmajd@mellanox.com\u003e\nReviewed-by: Yishai Hadas \u003cyishaih@mellanox.com\u003e\n"
    },
    {
      "commit": "215736f7cdb1e1374e2cf0df9e45186390ed0369",
      "tree": "d1448479914e9674024e1e3d68092e972d294e07",
      "parents": [
        "102b4a1544d444d60b376f44eea71047f09244f1"
      ],
      "author": {
        "name": "Majd Dibbiny",
        "email": "majd@mellanox.com",
        "time": "Tue Mar 15 19:13:02 2016 +0200"
      },
      "committer": {
        "name": "Yishai Hadas",
        "email": "yishaih@mellanox.com",
        "time": "Thu May 19 11:29:23 2016 +0300"
      },
      "message": "Extend devinfo verbosity mode\n\nExtend verbosity mode to print device capability flags in text format.\n\nSigned-off-by: Majd Dibbiny \u003cmajd@mellanox.com\u003e\nReviewed-by: Yishai Hadas \u003cyishaih@mellanox.com\u003e\n"
    },
    {
      "commit": "102b4a1544d444d60b376f44eea71047f09244f1",
      "tree": "1c25a5ae51b1aaf28d042a8c8513e257f8b2ac36",
      "parents": [
        "d1a7856540467201b183cdc727542e3676126d44"
      ],
      "author": {
        "name": "Noa Osherovich",
        "email": "noaos@mellanox.com",
        "time": "Wed Mar 30 18:39:20 2016 +0300"
      },
      "committer": {
        "name": "Yishai Hadas",
        "email": "yishaih@mellanox.com",
        "time": "Tue May 17 16:40:17 2016 +0300"
      },
      "message": "Add GID support to ibv_xsrq_pingpong example\n\nAdd GID index parameter, it\u0027s needed for RoCE.\n\nSigned-off-by: Haggai Abramovsky \u003chagaya@mellanox.com\u003e\nSigned-off-by: Noa Osherovich \u003cnoaos@mellanox.com\u003e\nReviewed-by: Yishai Hadas \u003cyishaih@mellanox.com\u003e\nSigned-off-by: Doug Ledford \u003cdledford@redhat.com\u003e\n"
    },
    {
      "commit": "d1a7856540467201b183cdc727542e3676126d44",
      "tree": "353dc6300714308e58804fe942c640226387eeab",
      "parents": [
        "46cdea5373dea4ea5972189cba18347388f4811f"
      ],
      "author": {
        "name": "Noa Osherovich",
        "email": "noaos@mellanox.com",
        "time": "Wed Mar 30 18:39:19 2016 +0300"
      },
      "committer": {
        "name": "Yishai Hadas",
        "email": "yishaih@mellanox.com",
        "time": "Tue May 17 16:40:17 2016 +0300"
      },
      "message": "Fix exchange message size in ibv_xsrq_pinpong example\n\nSRQ number is 24 bits and not 16, fix to have sufficient\nsize for it.\n\nSigned-off-by: Noa Osherovich \u003cnoaos@mellanox.com\u003e\nReviewed-by: Yishai Hadas \u003cyishaih@mellanox.com\u003e\nSigned-off-by: Doug Ledford \u003cdledford@redhat.com\u003e\n"
    },
    {
      "commit": "46cdea5373dea4ea5972189cba18347388f4811f",
      "tree": "f859fe3fa6ae97068762442ff60827a29f742f7f",
      "parents": [
        "69042c660f0622b8804729169ea455e6738af124"
      ],
      "author": {
        "name": "Yishai Hadas",
        "email": "yishaih@mellanox.com",
        "time": "Wed Mar 30 18:39:18 2016 +0300"
      },
      "committer": {
        "name": "Yishai Hadas",
        "email": "yishaih@mellanox.com",
        "time": "Tue May 17 16:40:17 2016 +0300"
      },
      "message": "Add an example to ibv_create_flow man page\n\nAdd an example rule to show typical usage of\nthe API.\n\nSigned-off-by: Maor Gottlieb \u003cmaorg@mellanox.com\u003e\nSigned-off-by: Yishai Hadas \u003cyishaih@mellanox.com\u003e\nSigned-off-by: Doug Ledford \u003cdledford@redhat.com\u003e\n"
    },
    {
      "commit": "69042c660f0622b8804729169ea455e6738af124",
      "tree": "3d21754a3e3db2d425f9e861e70dbd4b2333d5a7",
      "parents": [
        "c6eebd5adae550c77dd3bb50f1d058f12dd24f6d"
      ],
      "author": {
        "name": "Matan Barak",
        "email": "matanb@mellanox.com",
        "time": "Tue Mar 15 19:03:56 2016 +0200"
      },
      "committer": {
        "name": "Yishai Hadas",
        "email": "yishaih@mellanox.com",
        "time": "Tue May 17 16:40:17 2016 +0300"
      },
      "message": "Add man page for flow steering verbs\n\nAdd man page for ibv_create_flow/ibv_destroy_flow verbs, it includes\nthe new dont_trap flag.\n\nSigned-off-by: Matan Barak \u003cmatanb@mellanox.com\u003e\nSigned-off-by: Marina Varshaver \u003cmarinav@mellanox.com\u003e\nReviewed-by: Yishai Hadas \u003cyishaih@mellanox.com\u003e\nSigned-off-by: Doug Ledford \u003cdledford@redhat.com\u003e\n"
    },
    {
      "commit": "c6eebd5adae550c77dd3bb50f1d058f12dd24f6d",
      "tree": "b14ca8dcd997c96a0cbeec22f1bb05130e411e6d",
      "parents": [
        "00b93fd20b28f55ef711a1b3be6d8c4836a01aef"
      ],
      "author": {
        "name": "Marina Varshaver",
        "email": "marinav@mellanox.com",
        "time": "Tue Mar 15 19:03:55 2016 +0200"
      },
      "committer": {
        "name": "Yishai Hadas",
        "email": "yishaih@mellanox.com",
        "time": "Tue May 17 16:40:16 2016 +0300"
      },
      "message": "Add support for don\u0027t trap steering rule\n\nAdd an option to create a normal flow steering rule that doesn\u0027t trap\nreceived packets, allowing them to match lower prioritized rules.\n\nWhen the don\u0027t trap rule exists and matches a packet, the underlying HCA\nshould pass the packet to the rule\u0027s assigned QP(s). However, the HCA\nwill continue looking for other matches at lower priority rules, which\nmay be assigned to other QPs. This will let them get the traffic as\nwell.\n\nSigned-off-by: Marina Varshaver \u003cmarinav@mellanox.com\u003e\nReviewed-by: Yishai Hadas \u003cyishaih@mellanox.com\u003e\nSigned-off-by: Doug Ledford \u003cdledford@redhat.com\u003e\n"
    },
    {
      "commit": "00b93fd20b28f55ef711a1b3be6d8c4836a01aef",
      "tree": "6d32d1679cccc9f8ee0c68213b8961b527aeed35",
      "parents": [
        "8d97353b78576d0cf9ed9c10f18d4298aa48e211"
      ],
      "author": {
        "name": "Yishai Hadas",
        "email": "yishaih@mellanox.com",
        "time": "Mon Mar 14 12:59:07 2016 +0200"
      },
      "committer": {
        "name": "Yishai Hadas",
        "email": "yishaih@mellanox.com",
        "time": "Tue May 17 16:40:16 2016 +0300"
      },
      "message": "Add MR re-registeration\n\nMemory re-registeration is a feature that enables one to change\nthe attributes of a memory region, including PD, translation\n(address and length) and access flags.\n\nSigned-off-by: Matan Barak \u003cmatanb@mellanox.com\u003e\nSigned-off-by: Yishai Hadas \u003cyishaih@mellanox.com\u003e\nSigned-off-by: Doug Ledford \u003cdledford@redhat.com\u003e\n"
    },
    {
      "commit": "8d97353b78576d0cf9ed9c10f18d4298aa48e211",
      "tree": "f442b098dd5e37b35295791819ff2887420096b6",
      "parents": [
        "85061a41fb58fd1ba3fb697a00b30b1a24bb60a9"
      ],
      "author": {
        "name": "Matan Barak",
        "email": "matanb@mellanox.com",
        "time": "Mon Mar 14 12:59:06 2016 +0200"
      },
      "committer": {
        "name": "Yishai Hadas",
        "email": "yishaih@mellanox.com",
        "time": "Tue May 17 16:40:15 2016 +0300"
      },
      "message": "Change rereg_mr API between libibverbs and the provider\u0027s library\n\nCurrently, MR re-registration isn\u0027t implemented in libibverbs.\nThe only part which does exist is an API call between libibverbs\nand the provider\u0027s library. Since there\u0027s no way for a user application\nto invoke this API call, it\u0027s safe to assume it\u0027s unused.\n\nSimilarly to other verbs (for example, ibv_modify_qp), a modification\nto the MR shouldn\u0027t change the user\u0027s handle. The current existing API is:\nstruct ibv_mr *         (*rereg_mr)(struct ibv_mr *mr,\n                                    int flags,\n                                    struct ibv_pd *pd, void *addr,\n                                    size_t length,\n                                    int access);\n\nAs a result, this API call returns the exact same pointer it gets.\nInstead, we propose retuning a status int, which is far more useful\nthan the current return value.\n\nSigned-off-by: Matan Barak \u003cmatanb@mellanox.com\u003e\nReviewed-by: Yishai Hadas \u003cyishaih@mellanox.com\u003e\nSigned-off-by: Doug Ledford \u003cdledford@redhat.com\u003e\n"
    },
    {
      "commit": "85061a41fb58fd1ba3fb697a00b30b1a24bb60a9",
      "tree": "4a46cd86bfef75118069a4eb86ae5fd609ee11fb",
      "parents": [
        "398abfded7eab0584e20dfedd2f0b47ea4b93bf5"
      ],
      "author": {
        "name": "Yishai Hadas",
        "email": "yishaih@mellanox.com",
        "time": "Mon Feb 08 14:43:22 2016 +0200"
      },
      "committer": {
        "name": "Yishai Hadas",
        "email": "yishaih@mellanox.com",
        "time": "Tue May 17 16:40:15 2016 +0300"
      },
      "message": "Extend man pages to describe Memory Window usage\n\nAdd and update man pages to describe the Memory Window usage.\n\nSigned-off-by: Yishai Hadas \u003cyishaih@mellanox.com\u003e\nSigned-off-by: Doug Ledford \u003cdledford@redhat.com\u003e\n"
    },
    {
      "commit": "398abfded7eab0584e20dfedd2f0b47ea4b93bf5",
      "tree": "4f72ca79fcd96f7bc732f017b6343cc06800d62e",
      "parents": [
        "568c67c878c2d8d9a085daf5a789ff8638f5d4a9"
      ],
      "author": {
        "name": "Yishai Hadas",
        "email": "yishaih@mellanox.com",
        "time": "Mon Feb 08 14:43:21 2016 +0200"
      },
      "committer": {
        "name": "Yishai Hadas",
        "email": "yishaih@mellanox.com",
        "time": "Tue May 17 16:40:14 2016 +0300"
      },
      "message": "Expose device capabilities for Memory Window type two\n\nAt that step Memory Window type two is ready to be used, exposing\nits device capabilities.\n\nSigned-off-by: Yishai Hadas \u003cyishaih@mellanox.com\u003e\nSigned-off-by: Doug Ledford \u003cdledford@redhat.com\u003e\n"
    },
    {
      "commit": "568c67c878c2d8d9a085daf5a789ff8638f5d4a9",
      "tree": "fbac53a1db1d472a0c89c2ae42081980b11f877e",
      "parents": [
        "6148efe68f5f3e5e767d309f2bb29149489c29b2"
      ],
      "author": {
        "name": "Yishai Hadas",
        "email": "yishaih@mellanox.com",
        "time": "Mon Feb 08 14:43:20 2016 +0200"
      },
      "committer": {
        "name": "Yishai Hadas",
        "email": "yishaih@mellanox.com",
        "time": "Tue May 17 16:40:14 2016 +0300"
      },
      "message": "Add bind/unbind support for Memory Window type two\n\nTo bind:\nApplication should directly post bind WR to the\nQP using ibv_post_send.\n\nTo unbind/invalidate there are 2 options, local and remote\ninvalidations.\n\nLocal invalidation:\nSend a work request where the immediate data contains the\nMW\u0027s R_key and the opcode is IBV_WR_LOCAL_INV.\n\nUpon success a completion with opcode of IBV_WC_LOCAL_INV is polled.\n\nRemote invalidation:\nSend with invalidate can be used to invalidate a remote memory\nkey.\n\nThe invalidation is done by posting a send work request, where the\nopcode is IBV_WR_SEND_WITH_INV and the immediate data\ncontains the R_key.\n\nUpon success, the responder\u0027s work completion will contain the\ninvalidated R_key in its immediate data.\n\nSigned-off-by: Yishai Hadas \u003cyishaih@mellanox.com\u003e\nSigned-off-by: Doug Ledford \u003cdledford@redhat.com\u003e\n"
    },
    {
      "commit": "6148efe68f5f3e5e767d309f2bb29149489c29b2",
      "tree": "a63a687170ee3c98f5e771b3815df949055e2b38",
      "parents": [
        "e437deed93c236fc241f806130b40087b9673fc4"
      ],
      "author": {
        "name": "Yishai Hadas",
        "email": "yishaih@mellanox.com",
        "time": "Mon Feb 08 14:43:19 2016 +0200"
      },
      "committer": {
        "name": "Yishai Hadas",
        "email": "yishaih@mellanox.com",
        "time": "Tue May 17 16:40:14 2016 +0300"
      },
      "message": "Expose device capability for Memory Window type one\n\nAt that step Memory Window type one is ready to be used, exposing\nits device capability.\n\nSigned-off-by: Yishai Hadas \u003cyishaih@mellanox.com\u003e\nSigned-off-by: Doug Ledford \u003cdledford@redhat.com\u003e\n"
    },
    {
      "commit": "e437deed93c236fc241f806130b40087b9673fc4",
      "tree": "d0138a9e8ff3064ea4b0661fca14102eb4b21e73",
      "parents": [
        "518fcbd42a29fb8d089883cdfef932068a9e783d"
      ],
      "author": {
        "name": "Yishai Hadas",
        "email": "yishaih@mellanox.com",
        "time": "Mon Feb 08 14:43:18 2016 +0200"
      },
      "committer": {
        "name": "Yishai Hadas",
        "email": "yishaih@mellanox.com",
        "time": "Tue May 17 16:40:13 2016 +0300"
      },
      "message": "Add bind/unbind support for Memory Window type one\n\nType one:\n- Bind through a verb.\n- The R_key is allocated by the verb.\n- To unbind, the bind verb should be used with size of 0.\n- Belongs to a PD (no QP association).\n\nAdd above functionality by:\n- Restructuring struct ibv_mw_bind.\n- Expose ibv_bind_mw verb.\n- Add an helper API to be used by drivers to increment the tag\n  part of the R_key.\n- Add IBV_ACCESS_ZERO_BASED to expose the zero based address option.\n\nSigned-off-by: Yishai Hadas \u003cyishaih@mellanox.com\u003e\nSigned-off-by: Doug Ledford \u003cdledford@redhat.com\u003e\n"
    },
    {
      "commit": "518fcbd42a29fb8d089883cdfef932068a9e783d",
      "tree": "c0610e8c3e2afbecc5e228eb7658e97ee73db22f",
      "parents": [
        "e29e171145b0d663e98f4f3117b4c1aaa59f8224"
      ],
      "author": {
        "name": "Yishai Hadas",
        "email": "yishaih@mellanox.com",
        "time": "Mon Feb 08 14:43:17 2016 +0200"
      },
      "committer": {
        "name": "Yishai Hadas",
        "email": "yishaih@mellanox.com",
        "time": "Tue May 17 16:40:13 2016 +0300"
      },
      "message": "Add alloc/dealloc Memory Window verbs\n\nAdd alloc/dealloc Memory Window verbs, those verbs\nare used by both MW types one and two.\n\nSigned-off-by: Yishai Hadas \u003cyishaih@mellanox.com\u003e\nSigned-off-by: Doug Ledford \u003cdledford@redhat.com\u003e\n"
    },
    {
      "commit": "e29e171145b0d663e98f4f3117b4c1aaa59f8224",
      "tree": "6a3e8f95608728a497d8e1b4c96c0c94ddbd2c51",
      "parents": [
        "5085d749c6bdf0c281216b5203732bd9549cc082"
      ],
      "author": {
        "name": "Yishai Hadas",
        "email": "yishaih@mellanox.com",
        "time": "Mon Feb 08 14:43:16 2016 +0200"
      },
      "committer": {
        "name": "Yishai Hadas",
        "email": "yishaih@mellanox.com",
        "time": "Tue May 17 16:40:13 2016 +0300"
      },
      "message": "Update ibv_post_send manual page\n\nUpdate man page to:\n- Align the ibv_send_wr structure according to the infiniband/verbs.h\n- Include IBV_QPT_XRC_SEND supported opcodes.\n\nSigned-off-by: Yishai Hadas \u003cyishaih@mellanox.com\u003e\nSigned-off-by: Doug Ledford \u003cdledford@redhat.com\u003e\n"
    },
    {
      "commit": "5085d749c6bdf0c281216b5203732bd9549cc082",
      "tree": "a8a0d379127699f56662769f15daef410ae605b0",
      "parents": [
        "b5eac7cbfb0a9060f24aef8a17579140ab8b18dc"
      ],
      "author": {
        "name": "Eran Ben Elisha",
        "email": "eranbe@mellanox.com",
        "time": "Thu Feb 11 15:54:09 2016 +0200"
      },
      "committer": {
        "name": "Yishai Hadas",
        "email": "yishaih@mellanox.com",
        "time": "Tue May 17 16:40:12 2016 +0300"
      },
      "message": "Add QP creation flags, support blocking self multicast loopback\n\nAdd QP creation flags, specifically add a flag to indicate that\nthe QP will not receive self multicast loopback traffic.\n\nTo pass the QP creation flags to the kernel need to add\nibv_cmd_create_qp_ex2 API which follows the extended scheme\nand uses the CREATE_QP_EX command.\nibv_cmd_create_qp_ex API doesn\u0027t follow the extended scheme,\nit uses the CREATE_QP command and can\u0027t be used.\n\nTo prevent code duplication common code of above 2\nfunctions was shared.\n\nSigned-off-by: Eran Ben Elisha \u003ceranbe@mellanox.com\u003e\nReviewed-by: Yishai Hadas \u003cyishaih@mellanox.com\u003e\nSigned-off-by: Doug Ledford \u003cdledford@redhat.com\u003e\n"
    },
    {
      "commit": "b5eac7cbfb0a9060f24aef8a17579140ab8b18dc",
      "tree": "874673565cc0c80d95c89692c255708e50946b7b",
      "parents": [
        "027dd68002ae081b71b2a36a4e1b0becab37f798"
      ],
      "author": {
        "name": "Leon Romanovsky",
        "email": "leonro@mellanox.com",
        "time": "Wed Feb 03 13:42:42 2016 +0200"
      },
      "committer": {
        "name": "Yishai Hadas",
        "email": "yishaih@mellanox.com",
        "time": "Tue May 17 16:40:12 2016 +0300"
      },
      "message": "Allow use of huge pages in multiple calls to ibv_fork_init\n\nSetting the environment variable RDMAV_HUGEPAGES_SAFE tells the library\nto check the underlying page size used by the kernel for memory regions.\nThis is required if an application uses huge pages either directly or\nindirectly via a library such as libhugetlbfs.\n\nThe check of this variable was performed at the first call to\nibv_fork_init. This caused to unpredicted behavior in complex\napplications with multiple underlying libraries.\n\nThe proposed change will allow support of huge pages without relying on\nibv_fork_init calls order.\n\nSigned-off-by: Leon Romanovsky \u003cleonro@mellanox.com\u003e\nSigned-off-by: Doug Ledford \u003cdledford@redhat.com\u003e\n"
    },
    {
      "commit": "027dd68002ae081b71b2a36a4e1b0becab37f798",
      "tree": "54797e0564264e7b4159ae4460a47e992fe4d4e7",
      "parents": [
        "515a067586e0b2fdd77e3ac745d3180e8c6356f4"
      ],
      "author": {
        "name": "Eran Ben Elisha",
        "email": "eranbe@mellanox.com",
        "time": "Mon Feb 22 16:45:04 2016 +0200"
      },
      "committer": {
        "name": "Yishai Hadas",
        "email": "yishaih@mellanox.com",
        "time": "Tue May 17 16:40:12 2016 +0300"
      },
      "message": "libibverbs: Modify ibv_asyncwatch to accept the monitored device\n\nThe current code always monitors the first device found. This patch\nallows to specify the monitored device by a command line argument.\n\nSigned-off-by: Eran Ben Elisha \u003ceranbe@mellanox.com\u003e\nReviewed-by: Moshe Lazer \u003cmoshel@mellanox.com\u003e\nSigned-off-by: Doug Ledford \u003cdledford@redhat.com\u003e\n"
    },
    {
      "commit": "515a067586e0b2fdd77e3ac745d3180e8c6356f4",
      "tree": "342a21fecd91bbabf09f411d9027411fc889dd6b",
      "parents": [
        "89cb59ef7fd9da359dbdb966eb08abdc0f855a38"
      ],
      "author": {
        "name": "Doug Ledford",
        "email": "dledford@redhat.com",
        "time": "Fri Feb 26 10:41:08 2016 -0500"
      },
      "committer": {
        "name": "Yishai Hadas",
        "email": "yishaih@mellanox.com",
        "time": "Tue May 17 16:40:11 2016 +0300"
      },
      "message": "Roll 1.2.0 release\n\nSigned-off-by: Doug Ledford \u003cdledford@redhat.com\u003e\n"
    },
    {
      "commit": "89cb59ef7fd9da359dbdb966eb08abdc0f855a38",
      "tree": "ae58274c9359f64fba30e0ba6d00d1f4f6a3da56",
      "parents": [
        "678f7fa7dde82b76609ac41355fe61f755d83a53"
      ],
      "author": {
        "name": "Doug Ledford",
        "email": "dledford@redhat.com",
        "time": "Fri Feb 26 10:40:06 2016 -0500"
      },
      "committer": {
        "name": "Yishai Hadas",
        "email": "yishaih@mellanox.com",
        "time": "Tue May 17 16:40:11 2016 +0300"
      },
      "message": "libibverbs.spec.in: Use config.h substitution\n\nEven though I need to manually update the changelog for each release,\nthere\u0027s no reason not to keep the version updated with the version\nin configure.ac.\n\nSigned-off-by: Doug Ledford \u003cdledford@redhat.com\u003e\n"
    },
    {
      "commit": "678f7fa7dde82b76609ac41355fe61f755d83a53",
      "tree": "f1041e15a06f7268d17572f26c392855f1c17387",
      "parents": [
        "70d200860584a0c452684566a15a23749269a979"
      ],
      "author": {
        "name": "Doug Ledford",
        "email": "dledford@redhat.com",
        "time": "Fri Feb 26 10:38:58 2016 -0500"
      },
      "committer": {
        "name": "Yishai Hadas",
        "email": "yishaih@mellanox.com",
        "time": "Tue May 17 16:40:10 2016 +0300"
      },
      "message": "Makefile.am: Don\u0027t allow strict aliasing by default\n\nOne of the example programs issues compiler warnings with strict\naliasing enabled in the gcc options, so disable it.\n\nSigned-off-by: Doug Ledford \u003cdledford@redhat.com\u003e\n"
    },
    {
      "commit": "70d200860584a0c452684566a15a23749269a979",
      "tree": "54600bb500ecf06574c95b02a99063467de4cb58",
      "parents": [
        "e9f49fb9a57b242327b844c3842ed88ce561348b"
      ],
      "author": {
        "name": "Alaa Hleihel",
        "email": "alaa@mellanox.com",
        "time": "Wed Oct 28 17:48:39 2015 +0200"
      },
      "committer": {
        "name": "Yishai Hadas",
        "email": "yishaih@mellanox.com",
        "time": "Tue May 17 16:40:10 2016 +0300"
      },
      "message": "Makefile.am: Fix \"make distcheck\"\n\nmake distcheck failed because it searched for headers\nin the src directory.\nAdded noinst_HEADERS to fix that.\n\nChange-Id: Ibc0949286a97ac8775156df6465e31fe301d27db\nSigned-off-by: Alaa Hleihel \u003calaa@mellanox.com\u003e\nSigned-off-by: Doug Ledford \u003cdledford@redhat.com\u003e\n"
    },
    {
      "commit": "700d098ed190bba395219f1fb8891f94693331ec",
      "tree": "1c25a5ae51b1aaf28d042a8c8513e257f8b2ac36",
      "parents": [
        "fa87a514d257e4cf62f719f5f13347ea96d0eb98"
      ],
      "author": {
        "name": "Noa Osherovich",
        "email": "noaos@mellanox.com",
        "time": "Wed Mar 30 18:39:20 2016 +0300"
      },
      "committer": {
        "name": "Doug Ledford",
        "email": "dledford@redhat.com",
        "time": "Fri May 13 15:59:56 2016 -0400"
      },
      "message": "Add GID support to ibv_xsrq_pingpong example\n\nAdd GID index parameter, it\u0027s needed for RoCE.\n\nSigned-off-by: Haggai Abramovsky \u003chagaya@mellanox.com\u003e\nSigned-off-by: Noa Osherovich \u003cnoaos@mellanox.com\u003e\nReviewed-by: Yishai Hadas \u003cyishaih@mellanox.com\u003e\nSigned-off-by: Doug Ledford \u003cdledford@redhat.com\u003e\n"
    },
    {
      "commit": "fa87a514d257e4cf62f719f5f13347ea96d0eb98",
      "tree": "353dc6300714308e58804fe942c640226387eeab",
      "parents": [
        "21b0a974ed7c62bf964aaffda0857001e1b55a2d"
      ],
      "author": {
        "name": "Noa Osherovich",
        "email": "noaos@mellanox.com",
        "time": "Wed Mar 30 18:39:19 2016 +0300"
      },
      "committer": {
        "name": "Doug Ledford",
        "email": "dledford@redhat.com",
        "time": "Fri May 13 15:59:55 2016 -0400"
      },
      "message": "Fix exchange message size in ibv_xsrq_pinpong example\n\nSRQ number is 24 bits and not 16, fix to have sufficient\nsize for it.\n\nSigned-off-by: Noa Osherovich \u003cnoaos@mellanox.com\u003e\nReviewed-by: Yishai Hadas \u003cyishaih@mellanox.com\u003e\nSigned-off-by: Doug Ledford \u003cdledford@redhat.com\u003e\n"
    },
    {
      "commit": "21b0a974ed7c62bf964aaffda0857001e1b55a2d",
      "tree": "f859fe3fa6ae97068762442ff60827a29f742f7f",
      "parents": [
        "1755d907c5235509ab6f02f1f8b0d1fa2192e330"
      ],
      "author": {
        "name": "Yishai Hadas",
        "email": "yishaih@mellanox.com",
        "time": "Wed Mar 30 18:39:18 2016 +0300"
      },
      "committer": {
        "name": "Doug Ledford",
        "email": "dledford@redhat.com",
        "time": "Fri May 13 15:59:55 2016 -0400"
      },
      "message": "Add an example to ibv_create_flow man page\n\nAdd an example rule to show typical usage of\nthe API.\n\nSigned-off-by: Maor Gottlieb \u003cmaorg@mellanox.com\u003e\nSigned-off-by: Yishai Hadas \u003cyishaih@mellanox.com\u003e\nSigned-off-by: Doug Ledford \u003cdledford@redhat.com\u003e\n"
    },
    {
      "commit": "1755d907c5235509ab6f02f1f8b0d1fa2192e330",
      "tree": "3d21754a3e3db2d425f9e861e70dbd4b2333d5a7",
      "parents": [
        "fa6574cfa3a22ab33da16ff906b5f032dc0df565"
      ],
      "author": {
        "name": "Matan Barak",
        "email": "matanb@mellanox.com",
        "time": "Tue Mar 15 19:03:56 2016 +0200"
      },
      "committer": {
        "name": "Doug Ledford",
        "email": "dledford@redhat.com",
        "time": "Thu Mar 17 09:48:11 2016 -0400"
      },
      "message": "Add man page for flow steering verbs\n\nAdd man page for ibv_create_flow/ibv_destroy_flow verbs, it includes\nthe new dont_trap flag.\n\nSigned-off-by: Matan Barak \u003cmatanb@mellanox.com\u003e\nSigned-off-by: Marina Varshaver \u003cmarinav@mellanox.com\u003e\nReviewed-by: Yishai Hadas \u003cyishaih@mellanox.com\u003e\nSigned-off-by: Doug Ledford \u003cdledford@redhat.com\u003e\n"
    },
    {
      "commit": "fa6574cfa3a22ab33da16ff906b5f032dc0df565",
      "tree": "b14ca8dcd997c96a0cbeec22f1bb05130e411e6d",
      "parents": [
        "ba9b4ae0a9a3c5fe2faa1bcd84dd768fde34892d"
      ],
      "author": {
        "name": "Marina Varshaver",
        "email": "marinav@mellanox.com",
        "time": "Tue Mar 15 19:03:55 2016 +0200"
      },
      "committer": {
        "name": "Doug Ledford",
        "email": "dledford@redhat.com",
        "time": "Thu Mar 17 09:48:11 2016 -0400"
      },
      "message": "Add support for don\u0027t trap steering rule\n\nAdd an option to create a normal flow steering rule that doesn\u0027t trap\nreceived packets, allowing them to match lower prioritized rules.\n\nWhen the don\u0027t trap rule exists and matches a packet, the underlying HCA\nshould pass the packet to the rule\u0027s assigned QP(s). However, the HCA\nwill continue looking for other matches at lower priority rules, which\nmay be assigned to other QPs. This will let them get the traffic as\nwell.\n\nSigned-off-by: Marina Varshaver \u003cmarinav@mellanox.com\u003e\nReviewed-by: Yishai Hadas \u003cyishaih@mellanox.com\u003e\nSigned-off-by: Doug Ledford \u003cdledford@redhat.com\u003e\n"
    },
    {
      "commit": "ba9b4ae0a9a3c5fe2faa1bcd84dd768fde34892d",
      "tree": "6d32d1679cccc9f8ee0c68213b8961b527aeed35",
      "parents": [
        "ffb784b9514ed55bb70136b04ff3ee42901f8136"
      ],
      "author": {
        "name": "Yishai Hadas",
        "email": "yishaih@mellanox.com",
        "time": "Mon Mar 14 12:59:07 2016 +0200"
      },
      "committer": {
        "name": "Doug Ledford",
        "email": "dledford@redhat.com",
        "time": "Thu Mar 17 09:48:03 2016 -0400"
      },
      "message": "Add MR re-registeration\n\nMemory re-registeration is a feature that enables one to change\nthe attributes of a memory region, including PD, translation\n(address and length) and access flags.\n\nSigned-off-by: Matan Barak \u003cmatanb@mellanox.com\u003e\nSigned-off-by: Yishai Hadas \u003cyishaih@mellanox.com\u003e\nSigned-off-by: Doug Ledford \u003cdledford@redhat.com\u003e\n"
    },
    {
      "commit": "ffb784b9514ed55bb70136b04ff3ee42901f8136",
      "tree": "f442b098dd5e37b35295791819ff2887420096b6",
      "parents": [
        "f224da05def54b46ef51ca6a21c6bf8ce72d2ebe"
      ],
      "author": {
        "name": "Matan Barak",
        "email": "matanb@mellanox.com",
        "time": "Mon Mar 14 12:59:06 2016 +0200"
      },
      "committer": {
        "name": "Doug Ledford",
        "email": "dledford@redhat.com",
        "time": "Thu Mar 17 09:48:03 2016 -0400"
      },
      "message": "Change rereg_mr API between libibverbs and the provider\u0027s library\n\nCurrently, MR re-registration isn\u0027t implemented in libibverbs.\nThe only part which does exist is an API call between libibverbs\nand the provider\u0027s library. Since there\u0027s no way for a user application\nto invoke this API call, it\u0027s safe to assume it\u0027s unused.\n\nSimilarly to other verbs (for example, ibv_modify_qp), a modification\nto the MR shouldn\u0027t change the user\u0027s handle. The current existing API is:\nstruct ibv_mr *         (*rereg_mr)(struct ibv_mr *mr,\n                                    int flags,\n                                    struct ibv_pd *pd, void *addr,\n                                    size_t length,\n                                    int access);\n\nAs a result, this API call returns the exact same pointer it gets.\nInstead, we propose retuning a status int, which is far more useful\nthan the current return value.\n\nSigned-off-by: Matan Barak \u003cmatanb@mellanox.com\u003e\nReviewed-by: Yishai Hadas \u003cyishaih@mellanox.com\u003e\nSigned-off-by: Doug Ledford \u003cdledford@redhat.com\u003e\n"
    },
    {
      "commit": "f224da05def54b46ef51ca6a21c6bf8ce72d2ebe",
      "tree": "4a46cd86bfef75118069a4eb86ae5fd609ee11fb",
      "parents": [
        "18f011121c706e4f11a3bb515a37e2767108f879"
      ],
      "author": {
        "name": "Yishai Hadas",
        "email": "yishaih@mellanox.com",
        "time": "Mon Feb 08 14:43:22 2016 +0200"
      },
      "committer": {
        "name": "Doug Ledford",
        "email": "dledford@redhat.com",
        "time": "Thu Mar 10 09:37:28 2016 -0500"
      },
      "message": "Extend man pages to describe Memory Window usage\n\nAdd and update man pages to describe the Memory Window usage.\n\nSigned-off-by: Yishai Hadas \u003cyishaih@mellanox.com\u003e\nSigned-off-by: Doug Ledford \u003cdledford@redhat.com\u003e\n"
    },
    {
      "commit": "18f011121c706e4f11a3bb515a37e2767108f879",
      "tree": "4f72ca79fcd96f7bc732f017b6343cc06800d62e",
      "parents": [
        "e45a827d01ec44b82d85df4767c4cd5f5bb7fbf9"
      ],
      "author": {
        "name": "Yishai Hadas",
        "email": "yishaih@mellanox.com",
        "time": "Mon Feb 08 14:43:21 2016 +0200"
      },
      "committer": {
        "name": "Doug Ledford",
        "email": "dledford@redhat.com",
        "time": "Thu Mar 10 09:37:28 2016 -0500"
      },
      "message": "Expose device capabilities for Memory Window type two\n\nAt that step Memory Window type two is ready to be used, exposing\nits device capabilities.\n\nSigned-off-by: Yishai Hadas \u003cyishaih@mellanox.com\u003e\nSigned-off-by: Doug Ledford \u003cdledford@redhat.com\u003e\n"
    },
    {
      "commit": "e45a827d01ec44b82d85df4767c4cd5f5bb7fbf9",
      "tree": "fbac53a1db1d472a0c89c2ae42081980b11f877e",
      "parents": [
        "1f8c7f3c1f9d3055927a969f5ecd8094449d760e"
      ],
      "author": {
        "name": "Yishai Hadas",
        "email": "yishaih@mellanox.com",
        "time": "Mon Feb 08 14:43:20 2016 +0200"
      },
      "committer": {
        "name": "Doug Ledford",
        "email": "dledford@redhat.com",
        "time": "Thu Mar 10 09:37:28 2016 -0500"
      },
      "message": "Add bind/unbind support for Memory Window type two\n\nTo bind:\nApplication should directly post bind WR to the\nQP using ibv_post_send.\n\nTo unbind/invalidate there are 2 options, local and remote\ninvalidations.\n\nLocal invalidation:\nSend a work request where the immediate data contains the\nMW\u0027s R_key and the opcode is IBV_WR_LOCAL_INV.\n\nUpon success a completion with opcode of IBV_WC_LOCAL_INV is polled.\n\nRemote invalidation:\nSend with invalidate can be used to invalidate a remote memory\nkey.\n\nThe invalidation is done by posting a send work request, where the\nopcode is IBV_WR_SEND_WITH_INV and the immediate data\ncontains the R_key.\n\nUpon success, the responder\u0027s work completion will contain the\ninvalidated R_key in its immediate data.\n\nSigned-off-by: Yishai Hadas \u003cyishaih@mellanox.com\u003e\nSigned-off-by: Doug Ledford \u003cdledford@redhat.com\u003e\n"
    },
    {
      "commit": "1f8c7f3c1f9d3055927a969f5ecd8094449d760e",
      "tree": "a63a687170ee3c98f5e771b3815df949055e2b38",
      "parents": [
        "6033c6986f12b64355f360e1572f166c17b32092"
      ],
      "author": {
        "name": "Yishai Hadas",
        "email": "yishaih@mellanox.com",
        "time": "Mon Feb 08 14:43:19 2016 +0200"
      },
      "committer": {
        "name": "Doug Ledford",
        "email": "dledford@redhat.com",
        "time": "Thu Mar 10 09:37:28 2016 -0500"
      },
      "message": "Expose device capability for Memory Window type one\n\nAt that step Memory Window type one is ready to be used, exposing\nits device capability.\n\nSigned-off-by: Yishai Hadas \u003cyishaih@mellanox.com\u003e\nSigned-off-by: Doug Ledford \u003cdledford@redhat.com\u003e\n"
    },
    {
      "commit": "6033c6986f12b64355f360e1572f166c17b32092",
      "tree": "d0138a9e8ff3064ea4b0661fca14102eb4b21e73",
      "parents": [
        "fbf5740a75fb658430f15bcedb5f892a549cb73c"
      ],
      "author": {
        "name": "Yishai Hadas",
        "email": "yishaih@mellanox.com",
        "time": "Mon Feb 08 14:43:18 2016 +0200"
      },
      "committer": {
        "name": "Doug Ledford",
        "email": "dledford@redhat.com",
        "time": "Thu Mar 10 09:37:28 2016 -0500"
      },
      "message": "Add bind/unbind support for Memory Window type one\n\nType one:\n- Bind through a verb.\n- The R_key is allocated by the verb.\n- To unbind, the bind verb should be used with size of 0.\n- Belongs to a PD (no QP association).\n\nAdd above functionality by:\n- Restructuring struct ibv_mw_bind.\n- Expose ibv_bind_mw verb.\n- Add an helper API to be used by drivers to increment the tag\n  part of the R_key.\n- Add IBV_ACCESS_ZERO_BASED to expose the zero based address option.\n\nSigned-off-by: Yishai Hadas \u003cyishaih@mellanox.com\u003e\nSigned-off-by: Doug Ledford \u003cdledford@redhat.com\u003e\n"
    },
    {
      "commit": "fbf5740a75fb658430f15bcedb5f892a549cb73c",
      "tree": "c0610e8c3e2afbecc5e228eb7658e97ee73db22f",
      "parents": [
        "f3e38c1d10c69f8a61a86232f310be23d8f4596d"
      ],
      "author": {
        "name": "Yishai Hadas",
        "email": "yishaih@mellanox.com",
        "time": "Mon Feb 08 14:43:17 2016 +0200"
      },
      "committer": {
        "name": "Doug Ledford",
        "email": "dledford@redhat.com",
        "time": "Thu Mar 10 09:37:28 2016 -0500"
      },
      "message": "Add alloc/dealloc Memory Window verbs\n\nAdd alloc/dealloc Memory Window verbs, those verbs\nare used by both MW types one and two.\n\nSigned-off-by: Yishai Hadas \u003cyishaih@mellanox.com\u003e\nSigned-off-by: Doug Ledford \u003cdledford@redhat.com\u003e\n"
    },
    {
      "commit": "f3e38c1d10c69f8a61a86232f310be23d8f4596d",
      "tree": "6a3e8f95608728a497d8e1b4c96c0c94ddbd2c51",
      "parents": [
        "0e60aab43bfb752ff18dd568cf9efc35c0b4855a"
      ],
      "author": {
        "name": "Yishai Hadas",
        "email": "yishaih@mellanox.com",
        "time": "Mon Feb 08 14:43:16 2016 +0200"
      },
      "committer": {
        "name": "Doug Ledford",
        "email": "dledford@redhat.com",
        "time": "Thu Mar 10 09:37:08 2016 -0500"
      },
      "message": "Update ibv_post_send manual page\n\nUpdate man page to:\n- Align the ibv_send_wr structure according to the infiniband/verbs.h\n- Include IBV_QPT_XRC_SEND supported opcodes.\n\nSigned-off-by: Yishai Hadas \u003cyishaih@mellanox.com\u003e\nSigned-off-by: Doug Ledford \u003cdledford@redhat.com\u003e\n"
    },
    {
      "commit": "0e60aab43bfb752ff18dd568cf9efc35c0b4855a",
      "tree": "a8a0d379127699f56662769f15daef410ae605b0",
      "parents": [
        "2f9f51529f0754398ca0eaec92898149306a4f04"
      ],
      "author": {
        "name": "Eran Ben Elisha",
        "email": "eranbe@mellanox.com",
        "time": "Thu Feb 11 15:54:09 2016 +0200"
      },
      "committer": {
        "name": "Doug Ledford",
        "email": "dledford@redhat.com",
        "time": "Thu Mar 10 09:13:20 2016 -0500"
      },
      "message": "Add QP creation flags, support blocking self multicast loopback\n\nAdd QP creation flags, specifically add a flag to indicate that\nthe QP will not receive self multicast loopback traffic.\n\nTo pass the QP creation flags to the kernel need to add\nibv_cmd_create_qp_ex2 API which follows the extended scheme\nand uses the CREATE_QP_EX command.\nibv_cmd_create_qp_ex API doesn\u0027t follow the extended scheme,\nit uses the CREATE_QP command and can\u0027t be used.\n\nTo prevent code duplication common code of above 2\nfunctions was shared.\n\nSigned-off-by: Eran Ben Elisha \u003ceranbe@mellanox.com\u003e\nReviewed-by: Yishai Hadas \u003cyishaih@mellanox.com\u003e\nSigned-off-by: Doug Ledford \u003cdledford@redhat.com\u003e\n"
    },
    {
      "commit": "2f9f51529f0754398ca0eaec92898149306a4f04",
      "tree": "874673565cc0c80d95c89692c255708e50946b7b",
      "parents": [
        "786f5edc841fb33f0a01a1cfeb56c1fe3d54b498"
      ],
      "author": {
        "name": "Leon Romanovsky",
        "email": "leonro@mellanox.com",
        "time": "Wed Feb 03 13:42:42 2016 +0200"
      },
      "committer": {
        "name": "Doug Ledford",
        "email": "dledford@redhat.com",
        "time": "Wed Mar 02 21:46:11 2016 -0500"
      },
      "message": "Allow use of huge pages in multiple calls to ibv_fork_init\n\nSetting the environment variable RDMAV_HUGEPAGES_SAFE tells the library\nto check the underlying page size used by the kernel for memory regions.\nThis is required if an application uses huge pages either directly or\nindirectly via a library such as libhugetlbfs.\n\nThe check of this variable was performed at the first call to\nibv_fork_init. This caused to unpredicted behavior in complex\napplications with multiple underlying libraries.\n\nThe proposed change will allow support of huge pages without relying on\nibv_fork_init calls order.\n\nSigned-off-by: Leon Romanovsky \u003cleonro@mellanox.com\u003e\nSigned-off-by: Doug Ledford \u003cdledford@redhat.com\u003e\n"
    },
    {
      "commit": "786f5edc841fb33f0a01a1cfeb56c1fe3d54b498",
      "tree": "54797e0564264e7b4159ae4460a47e992fe4d4e7",
      "parents": [
        "64b70a7060842e984a44546ce583e27ce8ec2bb9"
      ],
      "author": {
        "name": "Eran Ben Elisha",
        "email": "eranbe@mellanox.com",
        "time": "Mon Feb 22 16:45:04 2016 +0200"
      },
      "committer": {
        "name": "Doug Ledford",
        "email": "dledford@redhat.com",
        "time": "Mon Feb 29 20:42:48 2016 -0500"
      },
      "message": "libibverbs: Modify ibv_asyncwatch to accept the monitored device\n\nThe current code always monitors the first device found. This patch\nallows to specify the monitored device by a command line argument.\n\nSigned-off-by: Eran Ben Elisha \u003ceranbe@mellanox.com\u003e\nReviewed-by: Moshe Lazer \u003cmoshel@mellanox.com\u003e\nSigned-off-by: Doug Ledford \u003cdledford@redhat.com\u003e\n"
    },
    {
      "commit": "64b70a7060842e984a44546ce583e27ce8ec2bb9",
      "tree": "342a21fecd91bbabf09f411d9027411fc889dd6b",
      "parents": [
        "5c110f3b8fba3c94a671db1070a8afecb34194aa"
      ],
      "author": {
        "name": "Doug Ledford",
        "email": "dledford@redhat.com",
        "time": "Fri Feb 26 10:41:08 2016 -0500"
      },
      "committer": {
        "name": "Doug Ledford",
        "email": "dledford@redhat.com",
        "time": "Fri Feb 26 10:41:08 2016 -0500"
      },
      "message": "Roll 1.2.0 release\n\nSigned-off-by: Doug Ledford \u003cdledford@redhat.com\u003e\n"
    },
    {
      "commit": "5c110f3b8fba3c94a671db1070a8afecb34194aa",
      "tree": "ae58274c9359f64fba30e0ba6d00d1f4f6a3da56",
      "parents": [
        "9931bb162fbed438d4936fc9977a253bb6c74828"
      ],
      "author": {
        "name": "Doug Ledford",
        "email": "dledford@redhat.com",
        "time": "Fri Feb 26 10:40:06 2016 -0500"
      },
      "committer": {
        "name": "Doug Ledford",
        "email": "dledford@redhat.com",
        "time": "Fri Feb 26 10:40:06 2016 -0500"
      },
      "message": "libibverbs.spec.in: Use config.h substitution\n\nEven though I need to manually update the changelog for each release,\nthere\u0027s no reason not to keep the version updated with the version\nin configure.ac.\n\nSigned-off-by: Doug Ledford \u003cdledford@redhat.com\u003e\n"
    },
    {
      "commit": "9931bb162fbed438d4936fc9977a253bb6c74828",
      "tree": "f1041e15a06f7268d17572f26c392855f1c17387",
      "parents": [
        "a78f48cc93ad2ebb5ebbf79bba3ed724e0b54825"
      ],
      "author": {
        "name": "Doug Ledford",
        "email": "dledford@redhat.com",
        "time": "Fri Feb 26 10:38:58 2016 -0500"
      },
      "committer": {
        "name": "Doug Ledford",
        "email": "dledford@redhat.com",
        "time": "Fri Feb 26 10:38:58 2016 -0500"
      },
      "message": "Makefile.am: Don\u0027t allow strict aliasing by default\n\nOne of the example programs issues compiler warnings with strict\naliasing enabled in the gcc options, so disable it.\n\nSigned-off-by: Doug Ledford \u003cdledford@redhat.com\u003e\n"
    },
    {
      "commit": "a78f48cc93ad2ebb5ebbf79bba3ed724e0b54825",
      "tree": "54600bb500ecf06574c95b02a99063467de4cb58",
      "parents": [
        "e9f49fb9a57b242327b844c3842ed88ce561348b"
      ],
      "author": {
        "name": "Alaa Hleihel",
        "email": "alaa@mellanox.com",
        "time": "Wed Oct 28 17:48:39 2015 +0200"
      },
      "committer": {
        "name": "Doug Ledford",
        "email": "dledford@redhat.com",
        "time": "Wed Oct 28 11:57:43 2015 -0400"
      },
      "message": "Makefile.am: Fix \"make distcheck\"\n\nmake distcheck failed because it searched for headers\nin the src directory.\nAdded noinst_HEADERS to fix that.\n\nChange-Id: Ibc0949286a97ac8775156df6465e31fe301d27db\nSigned-off-by: Alaa Hleihel \u003calaa@mellanox.com\u003e\nSigned-off-by: Doug Ledford \u003cdledford@redhat.com\u003e\n"
    },
    {
      "commit": "e9f49fb9a57b242327b844c3842ed88ce561348b",
      "tree": "11b45505c34ff9d2059ca494fa336e55aaf03fae",
      "parents": [
        "0a6beaff4a1715a1546d3d04d1fda15d6e2f2a26"
      ],
      "author": {
        "name": "Doug Ledford",
        "email": "dledford@redhat.com",
        "time": "Wed Sep 23 12:41:13 2015 -0400"
      },
      "committer": {
        "name": "Doug Ledford",
        "email": "dledford@redhat.com",
        "time": "Wed Sep 23 12:46:47 2015 -0400"
      },
      "message": "Update release version to 1.2.0-rc1\n\nSigned-off-by: Doug Ledford \u003cdledford@redhat.com\u003e\n"
    },
    {
      "commit": "0a6beaff4a1715a1546d3d04d1fda15d6e2f2a26",
      "tree": "4a69d2495a1defa41afc072ce3c487c80da7a88b",
      "parents": [
        "a259f87fc0aa3d0e1d67216c479edee1296ffb5f"
      ],
      "author": {
        "name": "Bodong Wang",
        "email": "bodong@mellanox.com",
        "time": "Tue Sep 22 23:20:21 2015 +0300"
      },
      "committer": {
        "name": "Doug Ledford",
        "email": "dledford@redhat.com",
        "time": "Wed Sep 23 11:10:43 2015 -0400"
      },
      "message": "libibverbs: Report checksum offload capabilities\n\nAdd IBV_DEVICE_UD_IP_CSUM, IBV_DEVICE_RAW_IP_CSUM and IBV_DEVICE_RC_IP_CSUM to\ndevice capability enum field. These enum will denote IPv4 checksum offload\nsupport for UD, RAW and RC QPs.\n\nFlags IBV_SEND_IP_CSUM and IBV_WC_IP_CSUM_OK are added for utilizing this\ncapability for send and receive separately.\n\nSigned-off-by: Bodong Wang \u003cbodong@mellanox.com\u003e\nSigned-off-by: Doug Ledford \u003cdledford@redhat.com\u003e\n"
    },
    {
      "commit": "a259f87fc0aa3d0e1d67216c479edee1296ffb5f",
      "tree": "28074844d930c5a4f473a8469e5990f1d4a2a784",
      "parents": [
        "9e27fc2ec082de621d411cbebace78248eda1443"
      ],
      "author": {
        "name": "Doug Ledford",
        "email": "dledford@redhat.com",
        "time": "Fri Sep 04 18:56:21 2015 -0400"
      },
      "committer": {
        "name": "Doug Ledford",
        "email": "dledford@redhat.com",
        "time": "Fri Sep 04 18:56:21 2015 -0400"
      },
      "message": "Update to .gitignore\n\nSigned-off-by: Doug Ledford \u003cdledford@redhat.com\u003e\n"
    },
    {
      "commit": "9e27fc2ec082de621d411cbebace78248eda1443",
      "tree": "884605a75853d1c7fed2e038fb01a08c69df1b6a",
      "parents": [
        "e500adc7b1653ff53e96d825447a47bb8c4bfe92"
      ],
      "author": {
        "name": "Majd Dibbiny",
        "email": "majd@mellanox.com",
        "time": "Thu Sep 03 17:56:39 2015 +0300"
      },
      "committer": {
        "name": "Doug Ledford",
        "email": "dledford@redhat.com",
        "time": "Fri Sep 04 18:55:39 2015 -0400"
      },
      "message": "libibverbs/examples: Support odp in rc_pingpong\n\nSigned-off-by: Majd Dibbiny \u003cmajd@mellanox.com\u003e\nSigned-off-by: Haggai Eran \u003chaggaie@mellanox.com\u003e\nSigned-off-by: Doug Ledford \u003cdledford@redhat.com\u003e\n"
    },
    {
      "commit": "e500adc7b1653ff53e96d825447a47bb8c4bfe92",
      "tree": "d555a1bc3e2e429cc6f66261b59b8b551d7fd48c",
      "parents": [
        "f17e5950fb811df5c23d6d20ad5d927772b14d74"
      ],
      "author": {
        "name": "Haggai Eran",
        "email": "haggaie@mellanox.com",
        "time": "Thu Sep 03 17:56:38 2015 +0300"
      },
      "committer": {
        "name": "Doug Ledford",
        "email": "dledford@redhat.com",
        "time": "Fri Sep 04 18:55:39 2015 -0400"
      },
      "message": "Add on-demand paging support\n\nOn-demand paging feature allows registering memory regions without pinning\ntheir pages. Unfortunately the feature doesn\u0027t work together will all\ntransports and all operations. This patch adds the ability to report on-demand\npaging capabilities through the ibv_query_device_ex.\n\nThe patch also add the IBV_ACCESS_ON_DEMAND access flag to allow registration\nof on-demand paging enabled memory regions.\n\nSigned-off-by: Shachar Raindel \u003craindel@mellanox.com\u003e\nSigned-off-by: Majd Dibbiny \u003cmajd@mellanox.com\u003e\nSigned-off-by: Haggai Eran \u003chaggaie@mellanox.com\u003e\nSigned-off-by: Doug Ledford \u003cdledford@redhat.com\u003e\n"
    },
    {
      "commit": "f17e5950fb811df5c23d6d20ad5d927772b14d74",
      "tree": "9a6f4f40f0bb48e7c68365dd9e745001f709e42f",
      "parents": [
        "501b53b30752fe89b3f1c4c60c867f61bdcde013"
      ],
      "author": {
        "name": "Eli Cohen",
        "email": "eli@mellanox.com",
        "time": "Thu Sep 03 17:56:37 2015 +0300"
      },
      "committer": {
        "name": "Doug Ledford",
        "email": "dledford@redhat.com",
        "time": "Fri Sep 04 18:55:39 2015 -0400"
      },
      "message": "Add support for extended query device capabilities\n\nAdd the verb ibv_query_device_ex which is extensible and allows following\ncommits to add new features to define additional properties.\n\nCc: Moshe Lazer \u003cmoshel@mellanox.com\u003e\nSigned-off-by: Eli Cohen \u003celi@mellanox.com\u003e\nSigned-off-by: Haggai Eran \u003chaggaie@mellanox.com\u003e\nSigned-off-by: Doug Ledford \u003cdledford@redhat.com\u003e\n"
    },
    {
      "commit": "501b53b30752fe89b3f1c4c60c867f61bdcde013",
      "tree": "17541771dbe181eccf46202c2978bda04efd88c2",
      "parents": [
        "13de38c439943fe2a61a7787aa8ef925041fc4c3"
      ],
      "author": {
        "name": "Doug Ledford",
        "email": "dledford@redhat.com",
        "time": "Fri Sep 04 17:11:56 2015 -0400"
      },
      "committer": {
        "name": "Doug Ledford",
        "email": "dledford@redhat.com",
        "time": "Fri Sep 04 17:59:37 2015 -0400"
      },
      "message": "Fix create/destroy flow API\n\nWhen adding this API, there had been consensus that having separate\nlib_* and drv_* function pointers in the extended context struct\nwas not needed and should not be done.  However, that snuck in anyway.\nThis backs that out and takes us back to a single pointer for each\nfunction, but does so in a way as to preserve both back and forward\ncompatibility.\n\nFixes: 389de6a6ef4e (Add receive flow steering support)\nSigned-off-by: Doug Ledford \u003cdledford@redhat.com\u003e\n"
    },
    {
      "commit": "13de38c439943fe2a61a7787aa8ef925041fc4c3",
      "tree": "4bd2d2bb5d4b1185e374b8e91e8bb0783dfc6288",
      "parents": [
        "74cdf9aed7dca9e1a66fdab17b7c2a0c3472251d"
      ],
      "author": {
        "name": "Alexey Ishchuk",
        "email": "aishchuk@linux.vnet.ibm.com",
        "time": "Wed Nov 19 11:17:18 2014 +0100"
      },
      "committer": {
        "name": "Doug Ledford",
        "email": "dledford@redhat.com",
        "time": "Wed Jul 29 12:14:01 2015 -0400"
      },
      "message": "libibverbs: add support for the s390x platform\n\nThis patch adds the required platform specific code to allow execution of\nthe libibverbs functions on the s390x platform.\n\nSigned-off-by: Alexey Ishchuk \u003caishchuk@linux.vnet.ibm.com\u003e\nSigned-off-by: Doug Ledford \u003cdledford@redhat.com\u003e\n"
    },
    {
      "commit": "74cdf9aed7dca9e1a66fdab17b7c2a0c3472251d",
      "tree": "cab292846adc462ea7c781febadba886e17685a4",
      "parents": [
        "3c8bd1c517238bbba2d5e4259d588352ee80a493"
      ],
      "author": {
        "name": "Matan Barak",
        "email": "matanb@mellanox.com",
        "time": "Thu Sep 18 17:53:11 2014 +0300"
      },
      "committer": {
        "name": "Doug Ledford",
        "email": "dledford@redhat.com",
        "time": "Wed Jul 29 12:07:17 2015 -0400"
      },
      "message": "Use neighbour lookup for RoCE UD QPs Eth L2 resolution\n\nIn order to implement RoCE IP based addressing for UD QPs, without introducing\nuverbs changes, we need a way to resolve the L2 Ethernet addresses from user-space.\n\nThis is done with netlink through libnl, and in libibverbs such that multiple\nvendor provider libraries can use the code.\n\nThis is implemented as a helper function ibv_resolve_eth_l2_from_gid.\nIf the GID is IP based, the provider shall call this utility function,\nwhich resolves the IP to MAC and vlan.\n\nThe steps for resolution:\n\n1. get sgid\n\n2. from sgid, get the interface\n\n3. query route from interface to the destination\n\n4. query the neigh table, if the MAC for the destination is already known, done.\n\n5. if not, loop until timeout:\n    a. send a UDP packet to that IP targeted to the \"discard\" port\n    b. listen to events from the neigh table\n    c. query neigh table in order to know if the neigh has shown up between\n       query until we started monitoring it\n\n6. query vlan id from the interface\n\nThis solution depends on libnl-3 with backports to libnl-1.\n\nChange-Id: I5c36145f8eaa46ab3890cc06da00d04686d68a1e\nSigned-off-by: Matan Barak \u003cmatanb@mellanox.com\u003e\nSigned-off-by: Or Gerlitz \u003cogerlitz@mellanox.com\u003e\nSigned-off-by: Doug Ledford \u003cdledford@redhat.com\u003e\n"
    },
    {
      "commit": "3c8bd1c517238bbba2d5e4259d588352ee80a493",
      "tree": "5b4d89a87d55749f721ebfd57741dd8f6137907c",
      "parents": [
        "a7a73a8c1b39362f1701256bc772d82847832f9c"
      ],
      "author": {
        "name": "Matan Barak",
        "email": "matanb@mellanox.com",
        "time": "Thu Sep 18 17:53:10 2014 +0300"
      },
      "committer": {
        "name": "Doug Ledford",
        "email": "dledford@redhat.com",
        "time": "Wed Jul 29 12:07:10 2015 -0400"
      },
      "message": "Add ibv_port_cap_flags\n\nAdd an enum that describes ibv_port_cap_flags that complies\nwith the respective kernel enum.\n\nThis value could be fetched when using ibv_query_port in\nport_cap_flags.\n\nChange-Id: I499565f17d378f525796ee187ef0fac91fd48c21\nSigned-off-by: Matan Barak \u003cmatanb@mellanox.com\u003e\nSigned-off-by: Or Gerlitz \u003cogerlitz@mellanox.com\u003e\nSigned-off-by: Doug Ledford \u003cdledford@redhat.com\u003e\n"
    },
    {
      "commit": "a7a73a8c1b39362f1701256bc772d82847832f9c",
      "tree": "e45b3bad2e1e8c15f4f57d878e0ca76dbcb45164",
      "parents": [
        "54883e413d4c40508e25f447daf5430d2f00cb82"
      ],
      "author": {
        "name": "Doug Ledford",
        "email": "dledford@redhat.com",
        "time": "Wed Jul 29 11:58:57 2015 -0400"
      },
      "committer": {
        "name": "Doug Ledford",
        "email": "dledford@redhat.com",
        "time": "Wed Jul 29 11:58:57 2015 -0400"
      },
      "message": "sysfs_file_read: treat a truncate as a failure\n\nCoverity found issue.  When we read a sysfs file and the length of the\nread exactly matches our buffer and we don\u0027t have a newline to replace\nwith a null termination, we either have to truncate the result, or fail\nto null terminate.  Either way, we will not get the desired behavior, so\nin that case, fail the read entirely.\n\nSigned-off-by: Doug Ledford \u003cdledford@redhat.com\u003e\n"
    },
    {
      "commit": "54883e413d4c40508e25f447daf5430d2f00cb82",
      "tree": "f9d0e21be7611fefc98553015dda139fbe8511d1",
      "parents": [
        "252749ced9cacc991f116ebc99d4f5e4e15e55cc"
      ],
      "author": {
        "name": "Jeff Squyres",
        "email": "jsquyres@cisco.com",
        "time": "Tue May 12 07:14:28 2015 -0700"
      },
      "committer": {
        "name": "Doug Ledford",
        "email": "dledford@redhat.com",
        "time": "Wed Jul 29 11:56:01 2015 -0400"
      },
      "message": "libibverbs init.c: conditionally emit warning if no userspace driver found\n\nIt\u0027s not a warning or an error if libibverbs cannot find a userspace\ndriver for kernel devices.  Indeed, returning a num_devices of is\nsufficient -- the middleware shouldn\u0027t be unconditionally printing out\nstderr message; let the upper layer application do that (if it wants\nto).\n\nFor debugging purposes, if the environment variable IBV_SHOW_WARNINGS\nis set (to any value), warnings will be emitted to stderr if a\ncorresponding userspace driver cannot be found for a kernel device.\n\nSigned-off-by: Jeff Squyres \u003cjsquyres@cisco.com\u003e\nSigned-off-by: Doug Ledford \u003cdledford@redhat.com\u003e\n"
    },
    {
      "commit": "252749ced9cacc991f116ebc99d4f5e4e15e55cc",
      "tree": "03783887b43e0524db3b4ee2ad0dc35637079009",
      "parents": [
        "990ca025d0ad967b6f266bae700bf82a4ceaff1a"
      ],
      "author": {
        "name": "Doug Ledford",
        "email": "dledford@redhat.com",
        "time": "Mon Jun 08 09:36:00 2015 -0400"
      },
      "committer": {
        "name": "Doug Ledford",
        "email": "dledford@redhat.com",
        "time": "Mon Jun 08 09:36:00 2015 -0400"
      },
      "message": "example: fix argiment processing\n\nVarious arguments that should be unsigned were signed, giving rise to\nthe possiblity of people passing negative numbers when they intended to\npass large positive numbers (this was mainly seen in real world usage\nwith the size argument).  Switch the args that are never legitimately\nnegative to unsigned.\n\nSigned-off-by: Doug Ledford \u003cdledford@redhat.com\u003e\n"
    },
    {
      "commit": "990ca025d0ad967b6f266bae700bf82a4ceaff1a",
      "tree": "e95ac2ea22b04a210d34aa0e9bd9002c557b547a",
      "parents": [
        "389de6a6ef4ed90615629a9eed7f9f17bedf47e3"
      ],
      "author": {
        "name": "Roland Dreier",
        "email": "roland@purestorage.com",
        "time": "Mon May 05 10:11:46 2014 -0700"
      },
      "committer": {
        "name": "Roland Dreier",
        "email": "roland@purestorage.com",
        "time": "Mon May 05 11:16:39 2014 -0700"
      },
      "message": "Roll libibverbs 1.1.8 release\n\nSigned-off-by: Roland Dreier \u003croland@purestorage.com\u003e\n"
    },
    {
      "commit": "389de6a6ef4ed90615629a9eed7f9f17bedf47e3",
      "tree": "69c1a6c1b56f90f0ad4cc5d8aab970ea2bff4fe1",
      "parents": [
        "cbf2a35162afcc9e97870b7b18d6477133a8dfa2"
      ],
      "author": {
        "name": "Or Gerlitz",
        "email": "ogerlitz@mellanox.com",
        "time": "Sun May 04 16:34:33 2014 +0300"
      },
      "committer": {
        "name": "Roland Dreier",
        "email": "roland@purestorage.com",
        "time": "Mon May 05 09:49:39 2014 -0700"
      },
      "message": "Add receive flow steering support\n\nThe RDMA stack allows for applications to create IB_QPT_RAW_PACKET\nQPs, which receive plain Ethernet packets -- specifically packets that\ndon\u0027t carry any QPN to be matched by the receiving side.  Applications\nusing these QPs must be provided with a method to program some\nsteering rule into the HW so packets arriving at the local port can be\nrouted to them.\n\nIn a similar manner, when the device supports flow streeing, IB UD QPs\ncreated by IPoIB allow userspace applications to steer specific TCP/IP\nflows to their QPs.\n\nThis patch adds ibv_create_flow(), which allow providing a flow\nspecification for a QP.  When there\u0027s a match between the\nspecification and a received packet, the packet is forwarded to that\nQP, in a the same way one uses ibv_attach_mcast() for IB UD multicast\nhandling.\n\nFlow specifications are provided as instances of struct\nibv_flow_spec_yyy, which describes L2, L3 and L4 headers.  Currently\nspecs for Ethernet, IPv4, TCP and UDP are defined.  Flow specs are\nmade of values and masks.\n\nThe input to ib_create_flow() is a struct ib_flow_attr, which contains\na few mandatory control elements and optional flow specs.\n\n struct ibv_flow_attr {\n\tuint32_t comp_mask;\n\tenum ibv_flow_attr_type type;\n\tuint16_t size;\n\tuint16_t priority;\n\tuint8_t  num_of_specs;\n\tuint8_t  port;\n\tuint32_t flags;\n\t/* Following are the optional layers according to user request\n\t * struct ibv_flow_spec_xxx [L2]\n\t * struct ibv_flow_spec_yyy [L3/L4]\n\t */\n };\n\nThese flow specs are defined and used in a way which allows adding new\nspec types without kernel/user ABI change, just with a little API\nenhancement which defines the newly added spec.\n\nThe flow spec structures are defined with TLV (Type-Length-Value)\nentries, which allows calling ib_create_flow() with a list of variable\nlength of optional specs.\n\nFor the actual processing of ibv_flow_attr the kernel uses the number\nof specs and the size mandatory fields along with the TLV nature of\nthe specs.\n\nThe returned value from ibv_create_flow() is a struct ibv_flow, which\ncontains a handle provided by the kernel to be used when calling\nibv_destroy_flow().\n\nThe ib_flow_attr enum type supports usage of flow steering for\npromiscuous and sniffer purposes:\n\n    IBV_FLOW_ATTR_NORMAL - \"regular\" rule, steering according to rule\n        specification\n\n    IBV_FLOW_ATTR_ALL_DEFAULT - default unicast and multicast rule,\n        receive all Ethernet traffic which isn\u0027t steered to any QP\n\n    IBV_FLOW_ATTR_MC_DEFAULT - same as IB_FLOW_ATTR_ALL_DEFAULT but\n        only for multicast\n\nALL_DEFAULT and MC_DEFAULT rules options are valid only for Ethernet\nlink type.\n\nSigned-off-by: Hadar Hen Zion \u003chadarh@mellanox.com\u003e\nSigned-off-by: Or Gerlitz \u003cogerlitz@mellanox.com\u003e\nSigned-off-by: Matan Barak \u003cmatanb@mellanox.com\u003e\nSigned-off-by: Roland Dreier \u003croland@purestorage.com\u003e\n"
    },
    {
      "commit": "cbf2a35162afcc9e97870b7b18d6477133a8dfa2",
      "tree": "9c8d2728b1bafc863ed828d5a62423d15f53c58f",
      "parents": [
        "f57a9c67eabb9e7f19c624ac3c8c27b7be55796c"
      ],
      "author": {
        "name": "Matan Barak",
        "email": "matanb@mellanox.com",
        "time": "Thu Feb 06 14:20:32 2014 +0200"
      },
      "committer": {
        "name": "Roland Dreier",
        "email": "roland@purestorage.com",
        "time": "Tue Feb 11 09:25:52 2014 -0800"
      },
      "message": "Add general definitions to support uverbs extensions\n\nEach new verb using the verbs extensions approach includes an extended\nheader, containing:\n\n\t__u16 provider_in_words;\n\t__u16 provider_out_words;\n\t__u32 cmd_hdr_reserved;\n\t__u32 comp_mask;\n\nThe new macros IBV_INIT_CMD_EX() and IBV_INIT_CMD_RESP_EX() initialize\nthese fields.\n\nSigned-off-by: Matan Barak \u003cmatanb@mellanox.com\u003e\nSigned-off-by: Or Gerlitz \u003cogerlitz@mellanox.com\u003e\nSigned-off-by: Roland Dreier \u003croland@purestorage.com\u003e\n"
    },
    {
      "commit": "f57a9c67eabb9e7f19c624ac3c8c27b7be55796c",
      "tree": "9b2cd9aa26dfa601224ff7faf7818127d2960869",
      "parents": [
        "6e0810ef5b072c3722f8576d35d7bf4235484da1"
      ],
      "author": {
        "name": "Upinder Malhi \\(umalhi\\)",
        "email": "umalhi@cisco.com",
        "time": "Tue Jan 21 19:18:41 2014 -0800"
      },
      "committer": {
        "name": "Roland Dreier",
        "email": "roland@purestorage.com",
        "time": "Tue Feb 11 09:24:04 2014 -0800"
      },
      "message": "Add support for usNIC nodes and transports\n\nKernel commits 5db5765e255d (\"IB/core: Add support for RDMA_NODE_USNIC_UDP\")\nand 180771a3707a (\"IB/core: Add Cisco usNIC rdma node and transport types\")\nadd IB_NODE_USNIC[_UDP] and IB_TRANSPORT_USNIC[_UDP].  Add the corresponding\nsupport in libibverbs.\n\nSigned-off-by: Upinder Malhi \u003cumalhi@cisco.com\u003e\nSigned-off-by: Roland Dreier \u003croland@purestorage.com\u003e\n"
    },
    {
      "commit": "6e0810ef5b072c3722f8576d35d7bf4235484da1",
      "tree": "add9ba0e4913e344380d8fa949c39d9596f49bcf",
      "parents": [
        "850da777643eba60774cb4fb9183974594ec7fd3"
      ],
      "author": {
        "name": "Roland Dreier",
        "email": "roland@purestorage.com",
        "time": "Wed Jan 29 13:00:54 2014 -0800"
      },
      "committer": {
        "name": "Roland Dreier",
        "email": "roland@purestorage.com",
        "time": "Wed Jan 29 13:02:27 2014 -0800"
      },
      "message": "Update maintainer now that I\u0027m a DD\n\nSigned-off-by: Roland Dreier \u003croland@purestorage.com\u003e\n"
    },
    {
      "commit": "850da777643eba60774cb4fb9183974594ec7fd3",
      "tree": "82f6a74c0cca2214be7b221256f6c0046f647379",
      "parents": [
        "bc5556c0ce997a449c0d9839615d121db47b0fa4"
      ],
      "author": {
        "name": "Yishai Hadas",
        "email": "yishaih@mellanox.com",
        "time": "Wed Aug 21 15:48:57 2013 +0300"
      },
      "committer": {
        "name": "Roland Dreier",
        "email": "roland@purestorage.com",
        "time": "Mon Dec 16 11:14:01 2013 -0800"
      },
      "message": "Fix XRC sample application (ibv_xsrq_pingpong) issues\n\nFix sync issue when clients go down.  This prevents a case where the\nclient misses a response from the daemon and then waits forever.\n\nAlso fix a typo in error message.\n\nSigned-off-by: Yishai Hadas \u003cyishaih@mellanox.com\u003e\nSigned-off-by: Roland Dreier \u003croland@purestorage.com\u003e\n"
    },
    {
      "commit": "bc5556c0ce997a449c0d9839615d121db47b0fa4",
      "tree": "ec90487e31781f67b7f03700a0d776479ad8cb87",
      "parents": [
        "058c67977dadd151cc8da5e63fb940a0602f8495"
      ],
      "author": {
        "name": "Jay Sternberg",
        "email": "jay.e.sternberg@intel.com",
        "time": "Thu Aug 01 18:04:19 2013 +0300"
      },
      "committer": {
        "name": "Roland Dreier",
        "email": "roland@purestorage.com",
        "time": "Mon Dec 16 11:12:59 2013 -0800"
      },
      "message": "Add XRC sample application\n\nSigned-off-by: Jay Sternberg \u003cjay.e.sternberg@intel.com\u003e\nSigned-off-by: Sean Hefty \u003csean.hefty@intel.com\u003e\nSigned-off-by: Yishai Hadas \u003cyishaih@mellanox.com\u003e\nSigned-off-by: Roland Dreier \u003croland@purestorage.com\u003e\n"
    },
    {
      "commit": "058c67977dadd151cc8da5e63fb940a0602f8495",
      "tree": "d96593ad6b1bdba8313a0fe98229749a983d526c",
      "parents": [
        "5f5292bbc51fb67b8557b57de9ef7ae17b1df50b"
      ],
      "author": {
        "name": "Sean Hefty",
        "email": "sean.hefty@intel.com",
        "time": "Thu Aug 01 18:04:18 2013 +0300"
      },
      "committer": {
        "name": "Roland Dreier",
        "email": "roland@purestorage.com",
        "time": "Mon Dec 16 11:12:59 2013 -0800"
      },
      "message": "XRC man pages\n\nSigned-off-by: Sean Hefty \u003csean.hefty@intel.com\u003e\nSigned-off-by: Yishai Hadas \u003cyishaih@mellanox.com\u003e\nSigned-off-by: Roland Dreier \u003croland@purestorage.com\u003e\n"
    },
    {
      "commit": "5f5292bbc51fb67b8557b57de9ef7ae17b1df50b",
      "tree": "655423ad9c1e9d9fa50251d0a29c2b2a845f6d9e",
      "parents": [
        "c7e3e61052dd756c394d8fbccbc498aa4eebbd37"
      ],
      "author": {
        "name": "Sean Hefty",
        "email": "sean.hefty@intel.com",
        "time": "Thu Aug 01 18:04:17 2013 +0300"
      },
      "committer": {
        "name": "Roland Dreier",
        "email": "roland@purestorage.com",
        "time": "Mon Dec 16 11:12:59 2013 -0800"
      },
      "message": "Add ibv_open_qp() for XRC receive QPs\n\nXRC receive QPs are shareable across multiple processes.  Allow any\nprocess with access to the XRC domain to open an existing QP.  After\nopening the QP, the process will receive events related to the QP and\nbe able to modify the QP.\n\nSigned-off-by: Sean Hefty \u003csean.hefty@intel.com\u003e\nSigned-off-by: Yishai Hadas \u003cyishaih@mellanox.com\u003e\nSigned-off-by: Roland Dreier \u003croland@purestorage.com\u003e\n"
    },
    {
      "commit": "c7e3e61052dd756c394d8fbccbc498aa4eebbd37",
      "tree": "560960954f9500e04935c0d65e8c790430ce5296",
      "parents": [
        "40c1365b2198d916c9af952431d28568b3a62c2f"
      ],
      "author": {
        "name": "Sean Hefty",
        "email": "sean.hefty@intel.com",
        "time": "Thu Aug 01 18:04:16 2013 +0300"
      },
      "committer": {
        "name": "Roland Dreier",
        "email": "roland@purestorage.com",
        "time": "Mon Dec 16 11:12:59 2013 -0800"
      },
      "message": "Add support for XRC QPs\n\nXRC queue pairs: XRC defines two new types of QPs.  The initiator, or\nsend-side, XRC QP behaves similar to a send-only RC QP.  XRC send QPs\nare managed through the existing QP functions.  The send_wr structure\nis extended in a backwards compatible way to support posting sends on\na send XRC QP, which require specifying the remote XRC SRQ.\n\nThe target, or receive-side, XRC QP behaves differently than other\nimplemented QPs.  A recv XRC QP can be created, modified, and\ndestroyed like other QPs through the existing calls.  The\nqp_init_attr structure is extended for XRC QPs.\n\nBecause XRC recv QPs are bound to an XRCD, rather than a PD, they are\nintended to be used among multiple processes.  Any process with access\nto an XRCD may allocate and connect an XRC recv QP.  The actual XRC\nrecv QP is allocated and managed by the kernel.  If the owning process\nexplicitly destroys the XRC recv QP, it is destroyed.  However, if the\nXRC recv QP is left open when the user process exits or closes its\ndevice, then the lifetime of the XRC recv QP is tied to the lifetime\nof the XRCD.\n\nSigned-off-by: Sean Hefty \u003csean.hefty@intel.com\u003e\nSigned-off-by: Yishai Hadas \u003cyishaih@mellanox.com\u003e\nSigned-off-by: Roland Dreier \u003croland@purestorage.com\u003e\n"
    },
    {
      "commit": "40c1365b2198d916c9af952431d28568b3a62c2f",
      "tree": "90f2e930a1f7527c2b71616be2f3878520c58f93",
      "parents": [
        "9a2a8962da24ad3f232a4703ad00d89a1443648e"
      ],
      "author": {
        "name": "Sean Hefty",
        "email": "sean.hefty@intel.com",
        "time": "Thu Aug 01 18:04:15 2013 +0300"
      },
      "committer": {
        "name": "Roland Dreier",
        "email": "roland@purestorage.com",
        "time": "Mon Dec 16 11:12:56 2013 -0800"
      },
      "message": "Add support for XRC SRQs\n\nXRC support requires the use of a new type of SRQ: XRC shared receive\nqueues.  XRC SRQs are similar to normal SRQs, except that they are bound\nto an XRCD, rather than to a protection domain.  Based on the current\nspec and implementation, they are only usable with XRC QPs. To support\nXRC SRQs, we define a new srq_init_attr structure to include an SRQ type\nand other needed information.\n\nThe user-kernel ABI is also updated to allow creating extended SRQs.\n\nSigned-off-by: Sean Hefty \u003csean.hefty@intel.com\u003e\nSigned-off-by: Yishai Hadas \u003cyishaih@mellanox.com\u003e\nSigned-off-by: Roland Dreier \u003croland@purestorage.com\u003e\n"
    },
    {
      "commit": "9a2a8962da24ad3f232a4703ad00d89a1443648e",
      "tree": "39cb6e9687859f2ed788e910425d112c164b8eeb",
      "parents": [
        "6be16586e081728a28fc41ce2fcc41867b7375ec"
      ],
      "author": {
        "name": "Sean Hefty",
        "email": "sean.hefty@intel.com",
        "time": "Thu Aug 01 18:04:14 2013 +0300"
      },
      "committer": {
        "name": "Roland Dreier",
        "email": "roland@purestorage.com",
        "time": "Mon Dec 16 11:11:08 2013 -0800"
      },
      "message": "Introduce XRC domains (XRCDs)\n\nXRC introduces several new concepts and structures, one of which is\nthe XRC domain.\n\nXRC domains: XRCDs are a type of protection domain used to associate\nshared receive queues with XRC queue pairs.  Since XRCDs are meant to be\nshared among multiple processes, we introduce new APIs to open/close\nXRCDs.\n\nThe user-kernel ABI is extended to account for opening/closing XRCDs.\n\nSigned-off-by: Sean Hefty \u003csean.hefty@intel.com\u003e\nSigned-off-by: Yishai Hadas \u003cyishaih@mellanox.com\u003e\nSigned-off-by: Roland Dreier \u003croland@purestorage.com\u003e\n"
    },
    {
      "commit": "6be16586e081728a28fc41ce2fcc41867b7375ec",
      "tree": "82f0fe59ec28b57302b79c66a4d8ce0eb3d9edff",
      "parents": [
        "2ac84039e78caf346c8c6e169c30d5ec11adb536"
      ],
      "author": {
        "name": "Yishai Hadas",
        "email": "yishaih@mellanox.com",
        "time": "Thu Aug 01 18:04:13 2013 +0300"
      },
      "committer": {
        "name": "Roland Dreier",
        "email": "roland@purestorage.com",
        "time": "Mon Dec 16 11:06:50 2013 -0800"
      },
      "message": "Infrastructure to support verbs extensions\n\nAdd infrastructure to support extended verbs capabilities in a\nforward/backward manner.\n\nSupport for extensions is determined by the provider calling\nverbs_register_driver in place of ibv_register_driver.  When\nextensions are enabled, ibverbs sets the current alloc_context /\nfree_context device operations to NULL.  These are used to indicate\nthat the struct ibv_device may be cast to struct verbs_device.\n\nWith extensions, ibverbs allocates the ibv_context structure and calls\ninto the provider to initialize it.  The init call is part of the\nverbs_device struct.\n\nThe abi_compat field of struct ibv_context is used to determine\nsupport of verbs extensions.  As a result, support for ABI version \u003c 2\nis removed (corresponds to kernel releases 2.6.11-2.6.14 no longer\nbeing supported).  The lowest ABI now supported is 3 (really 4 since\n2.6.15 was ABI 4, I don\u0027t see that ABI 3 was in a release).\n\nAcked-by: Jason Gunthorpe \u003cjgunthorpe@obsidianresearch.com\u003e\nSigned-off-by: Yishai Hadas \u003cyishaih@mellanox.com\u003e\nSigned-off-by: Tzahi Oved \u003ctzahio@mellanox.com\u003e\nSigned-off-by: Sean Hefty \u003csean.hefty@intel.com\u003e\nSigned-off-by: Roland Dreier \u003croland@purestorage.com\u003e\n"
    },
    {
      "commit": "2ac84039e78caf346c8c6e169c30d5ec11adb536",
      "tree": "a54b9ab49e3c4c2c592233d5101563e9d581f3a2",
      "parents": [
        "4f571c48e136ebde6d4ca882dc65a35303f9269e"
      ],
      "author": {
        "name": "Jeff Squyres",
        "email": "jsquyres@cisco.com",
        "time": "Wed Jul 10 13:32:39 2013 -0700"
      },
      "committer": {
        "name": "Roland Dreier",
        "email": "roland@purestorage.com",
        "time": "Fri Aug 09 11:20:29 2013 -0700"
      },
      "message": "Use IBV_SEND_INLINE in example pingpong programs\n\nIf the send size is less than the cap.max_inline_data reported by the\nqp, use the IBV_SEND_INLINE flag.  This not gives an example of using\nibv_query_qp(), it also reduces the latency time shown by the pingpong\nprograms when the sends can be inlined.\n\nSigned-off-by: Jeff Squyres \u003cjsquyres@cisco.com\u003e\nSigned-off-by: Roland Dreier \u003croland@purestorage.com\u003e\n"
    },
    {
      "commit": "4f571c48e136ebde6d4ca882dc65a35303f9269e",
      "tree": "e4af88af05a8130f5d0c0c34f7bc9d726478fe29",
      "parents": [
        "cc41622fd44e5041984be7d1ba1963b10bd36bf2"
      ],
      "author": {
        "name": "Roland Dreier",
        "email": "roland@purestorage.com",
        "time": "Tue May 28 15:41:34 2013 -0700"
      },
      "committer": {
        "name": "Roland Dreier",
        "email": "roland@purestorage.com",
        "time": "Tue May 28 15:41:34 2013 -0700"
      },
      "message": "Roll libibverbs 1.1.7 release\n\nSigned-off-by: Roland Dreier \u003croland@purestorage.com\u003e\n"
    },
    {
      "commit": "cc41622fd44e5041984be7d1ba1963b10bd36bf2",
      "tree": "e38ca68a61e002d5e49eaba366962c4126d609b3",
      "parents": [
        "9bbd803684663fbb23b7a4a2ae92b6cb8254f057"
      ],
      "author": {
        "name": "Yann Droneaud",
        "email": "ydroneaud@opteya.com",
        "time": "Mon May 20 22:39:54 2013 +0000"
      },
      "committer": {
        "name": "Roland Dreier",
        "email": "roland@purestorage.com",
        "time": "Thu May 23 13:47:24 2013 -0700"
      },
      "message": "configure: Use automake\u0027s option \"subdir-objects\"\n\nFollowing advice in \"Autotool Mythbuster\" [1], option subdir-objects\ncan be used to have Makefiles create object files in the same\ndirectory than theirs source files.\n\nIt reduces clobbering in the build directory.\n\n[1] \"Autotool Mythbuster\", by Diego Elio \"Flameeyes\" Petten`o\nhttp://www.flameeyes.eu/autotools-mythbuster/automake/nonrecursive.html\n\nSigned-off-by: Yann Droneaud \u003cydroneaud@opteya.com\u003e\nSigned-off-by: Roland Dreier \u003croland@purestorage.com\u003e\n"
    }
  ],
  "next": "9bbd803684663fbb23b7a4a2ae92b6cb8254f057"
}
