- 18 Aug, 2017 4 commits
-
-
Kalderon, Michal authored
iWARP supports read with invalidate. There is an assumption that read with invalidate will only be called on an iWARP device Signed-off-by:
Michal Kalderon <Michal.Kalderon@cavium.com> Signed-off-by:
Ram Amrani <Ram.Amrani@cavium.com> Signed-off-by:
Ariel Elior <Ariel.Elior@cavium.com> Signed-off-by:
Doug Ledford <dledford@redhat.com>
-
Kalderon, Michal authored
Make slight modifications to common RoCE/iWARP code. Add additional doorbell for iWARP post_send. iWARP QP pbl is allocated in qed and not in qedr. Signed-off-by:
Michal Kalderon <Michal.Kalderon@cavium.com> Signed-off-by:
Ram Amrani <Ram.Amrani@cavium.com> Signed-off-by:
Ariel Elior <Ariel.Elior@cavium.com> Signed-off-by:
Doug Ledford <dledford@redhat.com>
-
Kalderon, Michal authored
There are slight differences between iWARP and RoCE in the ibdev registration. This patch handles the changes. Signed-off-by:
Michal Kalderon <Michal.Kalderon@cavium.com> Signed-off-by:
Ram Amrani <Ram.Amrani@cavium.com> Signed-off-by:
Ariel Elior <Ariel.Elior@cavium.com> Signed-off-by:
Doug Ledford <dledford@redhat.com>
-
Kalderon, Michal authored
The main differences between iWARP and RoCE lay in the communication management functions. These will be placed in separate files. Signed-off-by:
Michal Kalderon <Michal.Kalderon@cavium.com> Signed-off-by:
Ram Amrani <Ram.Amrani@cavium.com> Signed-off-by:
Ariel Elior <Ariel.Elior@cavium.com> Signed-off-by:
Doug Ledford <dledford@redhat.com>
-
- 20 Jul, 2017 1 commit
-
-
Amrani, Ram authored
Wrap ib_copy_to_udata with a function that ensures that the data being copied over to user space isn't longer than the allowed. Fixes: cecbcddf ("qedr: Add support for QP verbs") Fixes: a7efd777 ("qedr: Add support for PD,PKEY and CQ verbs") Fixes: ac1b36e5 ("qedr: Add support for user context verbs") Signed-off-by:
Ram Amrani <Ram.Amrani@cavium.com> Signed-off-by:
Doug Ledford <dledford@redhat.com>
-
- 20 Jun, 2017 1 commit
-
-
Mintz, Yuval authored
iWARP would require the chains to allocate/free their PBL memory independently, so add the infrastructure to provide it externally. Signed-off-by:
Yuval Mintz <Yuval.Mintz@cavium.com> Signed-off-by:
David S. Miller <davem@davemloft.net>
-
- 14 Jun, 2017 2 commits
-
-
Ram Amrani authored
Add 64KB PAGE_SIZE support to user-space CQ, SQ and RQ queues. De-facto it means that code was added to translate 64KB pages to smaller 4KB pages that the FW can handle. Otherwise, the FW would wrap (or jump to the next page) when reaching 4KB while the user space library will continue on the same large page. Note that MR code remains as is since the FW supports larger pages for MRs. Signed-off-by:
Ram Amrani <Ram.Amrani@cavium.com> Signed-off-by:
Michal Kalderon <Michal.Kalderon@cavium.com> Signed-off-by:
Doug Ledford <dledford@redhat.com>
-
Michal Kalderon authored
Initialize byte_len in work completion of RDMA_READ and RDMA_SEND. Exposed by uDAPL application. Signed-off-by:
Michal Kalderon <Michal.Kalderon@cavium.com> Signed-off-by:
Doug Ledford <dledford@redhat.com>
-
- 01 May, 2017 3 commits
-
-
Dasaratharaman Chandramouli authored
rdma_ah_attr can now be either ib or roce allowing core components to use one type or the other and also to define attributes unique to a specific type. struct ib_ah is also initialized with the type when its first created. This ensures that calls such as modify_ah dont modify the type of the address handle attribute. Reviewed-by:
Ira Weiny <ira.weiny@intel.com> Reviewed-by:
Don Hiatt <don.hiatt@intel.com> Reviewed-by:
Sean Hefty <sean.hefty@intel.com> Reviewed-by:
Niranjana Vishwanathapura <niranjana.vishwanathapura@intel.com> Signed-off-by:
Dasaratharaman Chandramouli <dasaratharaman.chandramouli@intel.com> Signed-off-by:
Doug Ledford <dledford@redhat.com>
-
Dasaratharaman Chandramouli authored
Modify core and driver components to use accessor functions introduced to access individual fields of rdma_ah_attr Reviewed-by:
Ira Weiny <ira.weiny@intel.com> Reviewed-by:
Don Hiatt <don.hiatt@intel.com> Reviewed-by:
Sean Hefty <sean.hefty@intel.com> Reviewed-by:
Niranjana Vishwanathapura <niranjana.vishwanathapura@intel.com> Signed-off-by:
Dasaratharaman Chandramouli <dasaratharaman.chandramouli@intel.com> Signed-off-by:
Doug Ledford <dledford@redhat.com>
-
Dasaratharaman Chandramouli authored
This patch simply renames struct ib_ah_attr to rdma_ah_attr as these fields specify attributes that are not necessarily specific to IB. Reviewed-by:
Ira Weiny <ira.weiny@intel.com> Reviewed-by:
Don Hiatt <don.hiatt@intel.com> Reviewed-by:
Niranjana Vishwanathapura <niranjana.vishwanathapura@intel.com> Reviewed-by:
Sean Hefty <sean.hefty@intel.com> Signed-off-by:
Dasaratharaman Chandramouli <dasaratharaman.chandramouli@intel.com> Signed-off-by:
Doug Ledford <dledford@redhat.com>
-
- 28 Apr, 2017 4 commits
-
-
Amrani, Ram authored
Split the poll responder CQ into two functions. Add support for send+invalidate in poll CQ. Signed-off-by:
Ram Amrani <Ram.Amrani@cavium.com> Signed-off-by:
Doug Ledford <dledford@redhat.com>
-
Amrani, Ram authored
Wait for all relevant CNQ interrupts before freeing the CQ. Don't invoke completion handlers for a destroyed CQ. Signed-off-by:
Ram Amrani <Ram.Amrani@cavium.com> Signed-off-by:
Doug Ledford <dledford@redhat.com>
-
Amrani, Ram authored
Avoid attempting to release irrelevant (and unused) resources for GSI QP. Signed-off-by:
Ram Amrani <Ram.Amrani@cavium.com> Signed-off-by:
Doug Ledford <dledford@redhat.com>
-
Amrani, Ram authored
Signed-off-by:
Ram Amrani <Ram.Amrani@cavium.com> Signed-off-by:
Doug Ledford <dledford@redhat.com>
-
- 25 Apr, 2017 1 commit
-
-
Artemy Kovalyov authored
Size of pages are held by struct ib_umem in page_size field. It is better to store it as an exponent, because page size by nature is always power-of-two and used as a factor, divisor or ilog2's argument. The conversion of page_size to be page_shift allows to have portable code and avoid following error while compiling on ARM: ERROR: "__aeabi_uldivmod" [drivers/infiniband/core/ib_core.ko] undefined! CC: Selvin Xavier <selvin.xavier@broadcom.com> CC: Steve Wise <swise@chelsio.com> CC: Lijun Ou <oulijun@huawei.com> CC: Shiraz Saleem <shiraz.saleem@intel.com> CC: Adit Ranadive <aditr@vmware.com> CC: Dennis Dalessandro <dennis.dalessandro@intel.com> CC: Ram Amrani <Ram.Amrani@Cavium.com> Signed-off-by:
Artemy Kovalyov <artemyko@mellanox.com> Signed-off-by:
Leon Romanovsky <leon@kernel.org> Acked-by:
Ram Amrani <Ram.Amrani@cavium.com> Acked-by:
Shiraz Saleem <shiraz.saleem@intel.com> Acked-by:
Selvin Xavier <selvin.xavier@broadcom.com> Acked-by:
Selvin Xavier <selvin.xavier@broadcom.com> Acked-by:
Adit Ranadive <aditr@vmware.com> Signed-off-by:
Doug Ledford <dledford@redhat.com>
-
- 13 Mar, 2017 1 commit
-
-
Mintz, Yuval authored
This patch advances the qed* drivers into using the newer firmware - This solves several firmware bugs, mostly related [but not limited to] various init/deinit issues in various offloaded protocols. It also introduces a major 4-Cached SGE change in firmware, which can be seen in the storage drivers' changes. In addition, this firmware is required for supporting the new QL41xxx series of adapters; While this patch doesn't add the actual support, the firmware contains the necessary initialization & firmware logic to operate such adapters [actual support would be added later on]. Changes from Previous versions: ------------------------------- - V2 - fix kbuild-test robot warnings Signed-off-by:
Tomer Tayar <Tomer.Tayar@cavium.com> Signed-off-by:
Ram Amrani <Ram.Amrani@cavium.com> Signed-off-by:
Manish Rangankar <Manish.Rangankar@cavium.com> Signed-off-by:
Chad Dupuis <Chad.Dupuis@cavium.com> Signed-off-by:
Yuval Mintz <Yuval.Mintz@cavium.com> Signed-off-by:
David S. Miller <davem@davemloft.net>
-
- 19 Feb, 2017 1 commit
-
-
Christophe Jaillet authored
'qedr_alloc_pbl_tbl()' can not return NULL. In qedr_init_user_queue(): - simplify the test for the return value, no need to test for NULL - propagate the error pointer if needed, otherwise 0 (success) is returned. This is spurious. In init_mr_info(): - test the return value with IS_ERR - propagate the error pointer if needed instead of an exlictit -ENOMEM. This is a no-op as the only error pointer that we can have here is already -ENOMEM Signed-off-by:
Christophe JAILLET <christophe.jaillet@wanadoo.fr> Acked-by:
Ram Amrani <Ram.Amrani@cavium.com> Signed-off-by:
Doug Ledford <dledford@redhat.com>
-
- 14 Feb, 2017 1 commit
-
-
Or Gerlitz authored
Change the drivers to call ib_query_port in their get port immutable handler instead of their own query port handler. Doing this required to set the core cap flags of this device before the ib_query_port call is made, since the IB core might need these caps to serve the port query. Drivers are ensured by the IB core that the port attributes passed to the port query verb implementation are zero, and hence we removed the zeroing from the drivers. This patch doesn't add any new functionality. Signed-off-by:
Or Gerlitz <ogerlitz@mellanox.com> Reviewed-by:
Matan Barak <matanb@mellanox.com> Signed-off-by:
Leon Romanovsky <leon@kernel.org> Reviewed-by:
Steve Wise <swise@opengridcomputing.com> Acked-by:
Adit Ranadive <aditr@vmware.com> Signed-off-by:
Doug Ledford <dledford@redhat.com>
-
- 24 Jan, 2017 8 commits
-
-
Ram Amrani authored
Free the PD if no internal resources were available. Move userspace code under the relevant 'if'. Signed-off-by:
Ram Amrani <Ram.Amrani@cavium.com> Signed-off-by:
Ariel Elior <Ariel.Elior@cavium.com> Signed-off-by:
Doug Ledford <dledford@redhat.com>
-
Ram Amrani authored
Remove standalone ';'. List function's parameters in a single line. Signed-off-by:
Ram Amrani <Ram.Amrani@cavium.com> Signed-off-by:
Ariel Elior <Ariel.Elior@cavium.com> Reviewed-by:
Leon Romanovsky <leonro@mellanox.com> Signed-off-by:
Doug Ledford <dledford@redhat.com>
-
Ram Amrani authored
mark qedr_get_state_from_ibqp(), __qedr_alloc_mr() and __qedr_post_send() as static since they are only used in the same file. Signed-off-by:
Ram Amrani <Ram.Amrani@cavium.com> Signed-off-by:
Ariel Elior <Ariel.Elior@cavium.com> Signed-off-by:
Doug Ledford <dledford@redhat.com>
-
Ram Amrani authored
Fail QP state transition from error to reset if SQ/RQ are not empty and still in the process of flushing out the queued work entries. Signed-off-by:
Ram Amrani <Ram.Amrani@cavium.com> Signed-off-by:
Michal Kalderon <Michal.Kalderon@cavium.com> Signed-off-by:
Doug Ledford <dledford@redhat.com>
-
Ram Amrani authored
It is normal to flush CQEs if the QP is in error state. Hence there's no use in printing a message per CQE to dmesg. Signed-off-by:
Ram Amrani <Ram.Amrani@cavium.com> Signed-off-by:
Michal Kalderon <Michal.Kalderon@cavium.com> Signed-off-by:
Doug Ledford <dledford@redhat.com>
-
Ram Amrani authored
Return the maximum supported amount of inline data, not the qp's current configured inline data size, when filling out the results of a query qp call. Signed-off-by:
Ram Amrani <Ram.Amrani@cavium.com> Signed-off-by:
Michal Kalderon <Michal.Kalderon@cavium.com> Signed-off-by:
Doug Ledford <dledford@redhat.com>
-
Ram Amrani authored
If the user is requesting us to change the QP state to the same state that it is already in, return success instead of failure. Signed-off-by:
Ram Amrani <Ram.Amrani@cavium.com> Signed-off-by:
Michal Kalderon <Michal.Kalderon@cavium.com> Signed-off-by:
Doug Ledford <dledford@redhat.com>
-
Amrani, Ram authored
MTU value returned from QP query should include overhead. Signed-off-by:
Ram Amrani <Ram.Amrani@cavium.com> Signed-off-by:
Doug Ledford <dledford@redhat.com>
-
- 12 Jan, 2017 1 commit
-
-
Amrani, Ram authored
Simplify function and sub-function flow of QP creation and destruction. This also serves as a preparation for SRQ and iWARP support. Signed-off-by:
Ram Amrani <Ram.Amrani@cavium.com> Reviewed-by:
Michal Kalderon <Michal.Kalderon@cavium.com> Signed-off-by:
Doug Ledford <dledford@redhat.com>
-
- 22 Dec, 2016 8 commits
-
-
Amrani, Ram authored
Signed-off-by:
Ram Amrani <Ram.Amrani@cavium.com> Reviewed-by:
Michal Kalderon <Michal.Kalderon@cavium.com> Signed-off-by:
Doug Ledford <dledford@redhat.com>
-
Amrani, Ram authored
We clear the vendor error field in the work completion so that if a work completion is erroneous the field won't confuse the caller. Signed-off-by:
Ram Amrani <Ram.Amrani@cavium.com> Reviewed-by:
Michal Kalderon <Michal.Kalderon@cavium.com> Signed-off-by:
Doug Ledford <dledford@redhat.com>
-
Amrani, Ram authored
Enable posting to SQ only in RTS, ERR and SQD QP state. Enable posting to RQ in ERR QP state. Signed-off-by:
Ram Amrani <Ram.Amrani@cavium.com> Reviewed-by:
Michal Kalderon <Michal.Kalderon@cavium.com> Signed-off-by:
Doug Ledford <dledford@redhat.com>
-
Amrani, Ram authored
In the current implementation a read verb with IB_SEND_INLINE may be illegally configured. In this fix we ignore the inline bit in the case of a read verb. Signed-off-by:
Ram Amrani <Ram.Amrani@cavium.com> Reviewed-by:
Michal Kalderon <Michal.Kalderon@cavium.com> Signed-off-by:
Doug Ledford <dledford@redhat.com>
-
Amrani, Ram authored
Current code didn't modify the QP state to error because it queried the QP state as a bitmap while it isn't. So the code never got executed. This patch fixes this and queries for each QP state respectively and not at once via a bitmask. Signed-off-by:
Ram Amrani <Ram.Amrani@cavium.com> Reviewed-by:
Michal Kalderon <Michal.Kalderon@cavium.com> Signed-off-by:
Doug Ledford <dledford@redhat.com>
-
Amrani, Ram authored
Signed-off-by:
Ram Amrani <Ram.Amrani@cavium.com> Reviewed-by:
Michal Kalderon <Michal.Kalderon@cavium.com> Signed-off-by:
Doug Ledford <dledford@redhat.com>
-
Amrani, Ram authored
Signed-off-by:
Ram Amrani <Ram.Amrani@cavium.com> Reviewed-by:
Michal Kalderon <Michal.Kalderon@cavium.com> Signed-off-by:
Doug Ledford <dledford@redhat.com>
-
Amrani, Ram authored
Configure ibcq->cqe when a CQ is created. Signed-off-by:
Ram Amrani <Ram.Amrani@cavium.com> Reviewed-by:
Michal Kalderon <Michal.Kalderon@cavium.com> Signed-off-by:
Doug Ledford <dledford@redhat.com>
-
- 14 Dec, 2016 4 commits
-
-
Wei Yongjun authored
Remove pointless NULL check for 'wr' in qedr_post_send(). Signed-off-by:
Wei Yongjun <weiyongjun1@huawei.com> Acked-by:
Ram Amrani <Ram.Amrani@cavium.com> Signed-off-by:
Doug Ledford <dledford@redhat.com>
-
Wei Yongjun authored
Using list_move_tail() instead of list_del() + list_add_tail(). Signed-off-by:
Wei Yongjun <weiyongjun1@huawei.com> Reviewed-by:
Leon Romanovsky <leonro@mellanox.com> Acked-by:
Ram Amrani <Ram.Amrani@cavium.com> Signed-off-by:
Doug Ledford <dledford@redhat.com>
-
Wei Yongjun authored
'qp' is malloced in qedr_create_qp() and should be freed before leaving from the error handling cases, otherwise it will cause memory leak. Signed-off-by:
Wei Yongjun <weiyongjun1@huawei.com> Acked-by:
Ram Amrani <Ram.Amrani@cavium.com> Signed-off-by:
Doug Ledford <dledford@redhat.com>
-
Colin Ian King authored
Currently, if pd is null then we hit a null pointer derference on accessing pd->pd_id. Instead of just printing an error message we should also return -EINVAL immediately. Signed-off-by:
Colin Ian King <colin.king@canonical.com> Signed-off-by:
Doug Ledford <dledford@redhat.com>
-