- 19 2月, 2015 3 次提交
-
-
由 Selvin Xavier 提交于
If the SQ and RQ of the QP in error state uses separate CQs, traverse the list of QPs using each CQs and invoke the buddy CQ handler for both SQ and RQ. Signed-off-by: NSelvin Xavier <selvin.xavier@emulex.com> Signed-off-by: NDevesh Sharma <devesh.sharma@emulex.com> Signed-off-by: NMitesh Ahuja <mitesh.ahuja@emulex.com> Signed-off-by: NRoland Dreier <roland@purestorage.com>
-
由 Selvin Xavier 提交于
1. Add statistics counters for error cqes. 2. Add file ("reset_stats") to reset rdma stats in Debugfs. Signed-off-by: NSelvin Xavier <selvin.xavier@emulex.com> Signed-off-by: NMitesh Ahuja <mitesh.ahuja@emulex.com> Signed-off-by: NDevesh Sharma <devesh.sharma@emulex.com> Signed-off-by: NRoland Dreier <roland@purestorage.com>
-
由 Mitesh Ahuja 提交于
Move PD allocation and deallocation from firmware to driver. At driver load time all the PDs will be requested from firmware and their management will be handled by driver to reduce mailbox commands overhead at runtime. Signed-off-by: NMitesh Ahuja <mitesh.ahuja@emulex.com> Signed-off-by: NDevesh Sharma <devesh.sharma@emulex.com> Signed-off-by: NSelvin Xavier <selvin.xavier@emulex.com> Signed-off-by: NRoland Dreier <roland@purestorage.com>
-
- 11 10月, 2014 3 次提交
-
-
由 Jes Sorensen 提交于
No need to re-invent the wheel here Signed-off-by: NJes Sorensen <Jes.Sorensen@redhat.com> Signed-off-by: NRoland Dreier <roland@purestorage.com>
-
由 Jes Sorensen 提交于
Get rid of obfuscating ocrdma_alloc_mqe() kzalloc() wrapper as all it did was to make it less visible that the structure was already cleared on allocation. Signed-off-by: NJes Sorensen <Jes.Sorensen@redhat.com> Signed-off-by: NRoland Dreier <roland@purestorage.com>
-
由 Selvin Xavier 提交于
After IP-based GID changes, VLAN id can be obtained from qp_attr->vlan_id. Signed-off-by: NDevesh Sharma <devesh.sharma@emulex.com> Signed-off-by: NSelvin Xavier <selvin.xavier@emulex.com> Signed-off-by: NRoland Dreier <roland@purestorage.com>
-
- 13 8月, 2014 2 次提交
-
-
由 Devesh Sharma 提交于
Update the sli specific mailbox command request/response data sturcures to fix endianness issues. Signed-off-by: NDevesh Sharma <devesh.sharma@emulex.com> Signed-off-by: NRoland Dreier <roland@purestorage.com>
-
由 Devesh Sharma 提交于
Currently, driver obtains service level value from ah_attr->sl field. However, this field is set to zero all the times from rdma-cm. This patch allows create_ah to obtain service level from dev->sl. Signed-off-by: NDevesh Sharma <devesh.sharma@emulex.com> Signed-off-by: NRoland Dreier <roland@purestorage.com>
-
- 02 8月, 2014 6 次提交
-
-
由 Selvin Xavier 提交于
Fix the warning about the usage of plain integer as NULL pointer. Signed-off-by: NSelvin Xavier <selvin.xavier@emulex.com> Signed-off-by: NRoland Dreier <roland@purestorage.com>
-
由 Mitesh Ahuja 提交于
Update the max_mr_size with proper value. Corrected the response structure of query config mailbox command. Signed-off-by: NMitesh Ahuja <mitesh.ahuja@emulex.Com> Signed-off-by: NSelvin Xavier <selvin.xavier@emulex.com> Signed-off-by: NRoland Dreier <roland@purestorage.com>
-
由 Mitesh Ahuja 提交于
If any mailbox command reports timeout, save the state in the driver, to prevent issuing any more commands to the HW. Do proper cleanup even if FW is in error state. Signed-off-by: NMitesh Ahuja <mitesh.ahuja@emulex.Com> Signed-off-by: NSelvin Xavier <selvin.xavier@emulex.com> Signed-off-by: NRoland Dreier <roland@purestorage.com>
-
由 Devesh Sharma 提交于
Cleanup the AH table in error path, if HW initialization fails after AH table creation. Signed-off-by: NDevesh Sharma <devesh.sharma@emulex.com> Signed-off-by: NSelvin Xavier <selvin.xavier@emulex.com> Signed-off-by: NRoland Dreier <roland@purestorage.com>
-
由 Selvin Xavier 提交于
This patch implements routine to query the PFC priority from the adapter port. Following are the changes implemented: * A new FW command is implemented to query the operational/admin DCBX configuration from the FW and obtain active priority(service level). * Adds support for the async event reported by FW when the PFC priority changes. Service level is re-initialized during modify_qp or create_ah, based on this event. * Maintain SL value in ocrdma_dev structure and refer that as and when needed. Signed-off-by: NDevesh Sharma <devesh.sharma@emulex.com> Signed-off-by: NSelvin Xavier <selvin.xavier@emulex.com> Signed-off-by: NRoland Dreier <roland@purestorage.com>
-
由 Devesh Sharma 提交于
Rollback the patch which allows DPP posting of RDMA READ since this path is not yet stable in FW. Signed-off-by: NDevesh Sharma <devesh.sharma@emulex.com> Signed-off-by: NSelvin Xavier <selvin.xavier@emulex.com> Signed-off-by: NRoland Dreier <roland@purestorage.com>
-
- 03 4月, 2014 8 次提交
-
-
由 Devesh Sharma 提交于
Clean up code. Also modifying GSI QP to error during ocrdma_close is fixed. Signed-off-by: NDevesh Sharma <devesh.sharma@emulex.com> Signed-off-by: NSelvin Xavier <selvin.xavier@emulex.com> Signed-off-by: NRoland Dreier <roland@purestorage.com>
-
由 Selvin Xavier 提交于
Issue mailbox commands to query ocrdma controller information and phy information and print them while adding ocrdma device. Signed-off-by: NSelvin Xavier <selvin.xavier@emulex.com> Signed-off-by: NDevesh Sharma <devesh.sharma@emulex.com> Signed-off-by: NRoland Dreier <roland@purestorage.com>
-
由 Selvin Xavier 提交于
Added a routine to issue non-embedded mailbox commands for handling large mailbox request/response data. Signed-off-by: NSelvin Xavier <selvin.xavier@emulex.com> Signed-off-by: NDevesh Sharma <devesh.sharma@emulex.com> Signed-off-by: NRoland Dreier <roland@purestorage.com>
-
由 Selvin Xavier 提交于
Signed-off-by: NSelvin Xavier <selvin.xavier@emulex.com> Signed-off-by: NDevesh Sharma <devesh.sharma@emulex.com> Signed-off-by: NRoland Dreier <roland@purestorage.com>
-
由 Selvin Xavier 提交于
Signed-off-by: NSelvin Xavier <selvin.xavier@emulex.com> Signed-off-by: NDevesh Sharma <devesh.sharma@emulex.com> Signed-off-by: NRoland Dreier <roland@purestorage.com>
-
由 Devesh Sharma 提交于
Allow creating DPP QP even if inline-data is not requested. This is an optimization to lower latency. Signed-off-by: NDevesh Sharma <devesh.sharma@emulex.com> Signed-off-by: NSelvin Xavier <selvin.xavier@emulex.com> Signed-off-by: NRoland Dreier <roland@purestorage.com>
-
由 Devesh Sharma 提交于
ocrdma driver selects execution path based on sli_family and asic generation number. This introduces code to read the asic gen number from pci register instead of obtaining it from the Emulex NIC driver. Signed-off-by: NDevesh Sharma <devesh.sharma@emulex.com> Signed-off-by: NSelvin Xavier <selvin.xavier@emulex.com> Signed-off-by: NRoland Dreier <roland@purestorage.com>
-
由 Devesh Sharma 提交于
Stale entries in the CQ being destroyed causes hardware to generate EQEs indefinitely for a given CQ. Thus causing uncontrolled execution of irq_handler. This patch fixes this using following sementics: * irq_handler will ring EQ doorbell atleast once and implement budgeting scheme. * cq_destroy will count number of valid entires during destroy and ring cq-db so that hardware does not generate uncontrolled EQE. * cq_destroy will synchronize with last running irq_handler instance. * arm_cq will always defer arming CQ till poll_cq, except for the first arm_cq call. * poll_cq will always ring cq-db with arm=SET if arm_cq was called prior to enter poll_cq. * poll_cq will always ring cq-db with arm=UNSET if arm_cq was not called prior to enter poll_cq. Signed-off-by: NDevesh Sharma <devesh.sharma@emulex.com> Signed-off-by: NSelvin Xavier <selvin.xavier@emulex.com> Signed-off-by: NRoland Dreier <roland@purestorage.com>
-
- 18 3月, 2014 1 次提交
-
-
由 Prarit Bhargava 提交于
drivers/infiniband/hw/ocrdma/ocrdma_verbs.c: In function ‘_ocrdma_modify_qp’: drivers/infiniband/hw/ocrdma/ocrdma_verbs.c:1299:31: error: ‘old_qps’ may be used uninitialized in this function [-Werror=maybe-uninitialized] status = ocrdma_mbx_modify_qp(dev, qp, attr, attr_mask, old_qps); ocrdma_mbx_modify_qp() (and subsequent calls) doesn't appear to use old_qps so it doesn't need to be passed on. Removing the variable results in the warning going away. Signed-off-by: NPrarit Bhargava <prarit@redhat.com> Acked-by: Devesh Sharma (Devesh.sharma@emulex.com) Signed-off-by: NRoland Dreier <roland@purestorage.com>
-
- 20 1月, 2014 1 次提交
-
-
由 Moni Shoua 提交于
This patch is similar in spirit to the "IB/mlx4: Handle Ethernet L2 parameters for IP based GID addressing". It handles the fact that IP based RoCE gids don't store Ethernet L2 parameters, MAC and VLAN. When building an address handle, instead of parsing the dgid to get the MAC and VLAN, take them from the address handle attributes. Cc: Naresh Gottumukkala <bgottumukkala@emulex.com> Signed-off-by: NMoni Shoua <monis@mellanox.com> Signed-off-by: NOr Gerlitz <ogerlitz@mellanox.com> Signed-off-by: NRoland Dreier <roland@purestorage.com>
-
- 09 11月, 2013 1 次提交
-
-
由 Dan Carpenter 提交于
We recently added a cap on "max_wqe_allocated" in 43a6b402 ('RDMA/ocrdma: Create IRD queue fix'). My static checker complains that the cap has a problem because it casts large values to negative. "attrs->cap.max_send_wr" is a u32. It comes from the user, but it's capped in ocrdma_check_qp_params() so it can't wrap here. Signed-off-by: NDan Carpenter <dan.carpenter@oracle.com> Signed-off-by: NRoland Dreier <roland@purestorage.com>
-
- 15 10月, 2013 1 次提交
-
-
由 Joe Perches 提交于
These aren't necessary after switch blocks. Signed-off-by: NJoe Perches <joe@perches.com> Signed-off-by: NRoland Dreier <roland@purestorage.com>
-
- 03 9月, 2013 11 次提交
-
-
由 Naresh Gottumukkala 提交于
Fix passing wrong opcode to ocrdma_modify_srq and query SRQ. Signed-off-by: NNaresh Gottumukkala <bgottumukkala@emulex.com> Signed-off-by: NRoland Dreier <roland@purestorage.com>
-
由 Naresh Gottumukkala 提交于
In UMC case, driver needs to fill PVID in the address vector template for UD traffic. Signed-off-by: NNaresh Gottumukkala <bgottumukkala@emulex.com> Signed-off-by: NRoland Dreier <roland@purestorage.com>
-
由 Naresh Gottumukkala 提交于
Signed-off-by: NNaresh Gottumukkala <bgottumukkala@emulex.com> Signed-off-by: NRoland Dreier <roland@purestorage.com>
-
由 Naresh Gottumukkala 提交于
1) Increase STAG Array size. 2) Max inline data size should be set to the same value used during QP creation 3) Set max_sge_rd to zero since we dont support RD transport in our adapters. 4) Max cqes reported in ibv_devinfo should be from QUERY_CONFIG. Signed-off-by: NNaresh Gottumukkala <bgottumukkala@emulex.com> Signed-off-by: NRoland Dreier <roland@purestorage.com>
-
由 Naresh Gottumukkala 提交于
Create_CQ verb doesn't provide a PD pointer. So, until now we are creating all (both userspace and kernel) CQ DB regions from PD0. This will result in mmapping PD0 to applications. A rogue userspace application can mess things up. Also more serious issues is even the be2net NIC uses PD0. This patch addresses this problem by: 1) Create a PD page for every userspace application when the alloc_ucontext is called. This will be destroyed in dealloc_ucontext. 2) All CQs for that context will use the PD allocated in ucontext. 3) The first create_PD call from application will result in returning the PD address from its ucontext (no new PD will be created). 4) For subsecquent create_pd calls from application, we create new PDs for the application. Signed-off-by: NNaresh Gottumukkala <bgottumukkala@emulex.com> Signed-off-by: NRoland Dreier <roland@purestorage.com>
-
由 Naresh Gottumukkala 提交于
1) Fixed setting FR_MR bit for FRWR stag allocation 2) Access rights are passsed during FRWR stage and not during STAT allocation stage 3) FRWR WQE structure cleanup 4) Add QP level signaled bit. Signed-off-by: NNaresh Gottumukkala <bgottumukkala@emulex.com> Signed-off-by: NRoland Dreier <roland@purestorage.com>
-
由 Naresh Gottumukkala 提交于
1) All RQ doorbells are handled by ERX2 and doorbell->num_posted offset is constant to bit offset 24 for ERX2 irrspective of Q id. 2) Fixed RESET to INIT state change (from ERR->RST->INIT->RTR case). Signed-off-by: NNaresh Gottumukkala <bgottumukkala@emulex.com> Signed-off-by: NRoland Dreier <roland@purestorage.com>
-
由 Naresh Gottumukkala 提交于
There are cases like SRIOV where can get only one MSI-X vector allocated for RoCE. In that case we need to use the vector for both data plane and control plane. We need to use EQ create version V2. Signed-off-by: NNaresh Gottumukkala <bgottumukkala@emulex.com> Signed-off-by: NRoland Dreier <roland@purestorage.com>
-
由 Naresh Gottumukkala 提交于
Also increase MAX AH to 512. Signed-off-by: NNaresh Gottumukkala <bgottumukkala@emulex.com> Signed-off-by: NRoland Dreier <roland@purestorage.com>
-
由 Naresh Gottumukkala 提交于
Also get the max_srq value from query_config mailbox response. Signed-off-by: NNaresh Gottumukkala <bgottumukkala@emulex.com> Signed-off-by: NRoland Dreier <roland@purestorage.com>
-
由 Naresh Gottumukkala 提交于
1) Fix ocrdma_get_num_posted_shift for upto 128 QPs. 2) Create for min of dev->max_wqe and requested wqe in create_qp. 3) As part of creating ird queue, populate with basic header templates. 4) Make sure all the DB memory allocated to userspace are page aligned. 5) Fix issue in checking the mmap local cache. 6) Some code cleanup. Signed-off-by: NNaresh Gottumukkala <bgottumukkala@emulex.com> Signed-off-by: NRoland Dreier <roland@purestorage.com>
-
- 13 8月, 2013 3 次提交
-
-
由 Naresh Gottumukkala 提交于
1) In post recv, don't ring the DB doorbell if the QP is in RTR state. Cache the DB calls, until the QP is moved to RTS state. 2) Add max_rd_sge support to dev->attr. 3) Code cleanup in alloc_pd path. Signed-off-by: NNaresh Gottumukkala <bgottumukkala@emulex.com> Signed-off-by: NRoland Dreier <roland@purestorage.com>
-
由 Naresh Gottumukkala 提交于
Remove QP state machine in ocrdma low-level driver and use on the core IB stack's instead. Signed-off-by: NNaresh Gottumukkala <bgottumukkala@emulex.com> Signed-off-by: NRoland Dreier <roland@purestorage.com>
-
由 Naresh Gottumukkala 提交于
Signed-off-by: NNaresh Gottumukkala <bgottumukkala@emulex.com> Signed-off-by: NRoland Dreier <roland@purestorage.com>
-