!iwarp_info->mpa_bufs)
> + if (!iwarp_info->mpa_bufs) {
> + rc = -ENOMEM;
> goto err;
> + }
>
> INIT_LIST_HEAD(&iwarp_info->mpa_buf_pending_list);
> INIT_LIST_HEAD(&iwarp_info->mpa_buf_list);
> --
> 2.9.5
Thanks,
Acked-by: Michal Kalderon
> From: Jason Gunthorpe
> Sent: Wednesday, September 9, 2020 10:15 PM
> On Wed, Sep 02, 2020 at 07:57:33PM +0300, Michal Kalderon wrote:
> > This set addresses several issues that were observed and reproduced on
> > different test and production configurations.
> >
&g
;
>
> /* DIF */
> diff --git a/include/linux/qed/qed_rdma_if.h
> b/include/linux/qed/qed_rdma_if.h index f464d85e88a410..aeb242cefebfa8
> 100644
> --- a/include/linux/qed/qed_rdma_if.h
> +++ b/include/linux/qed/qed_rdma_if.h
> @@ -242,10 +242,8 @@ struct qed_rdma_register_tid_in_params {
> bool pbl_two_level;
> u8 pbl_page_size_log;
> u8 page_size_log;
> - u32 fbo;
> u64 length;
> u64 vaddr;
> - bool zbva;
> bool phy_mr;
> bool dma_mr;
>
> --
> 2.28.0
Thanks,
Acked-by: Michal Kalderon
Alignment of parameters was off by one
Signed-off-by: Michal Kalderon
---
drivers/infiniband/hw/qedr/verbs.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/drivers/infiniband/hw/qedr/verbs.c
b/drivers/infiniband/hw/qedr/verbs.c
index 3b19afdf71b8..0227540838ee 100644
attributes
Fixes: 69ad0e7fe845 ("RDMA/qedr: Add support for iWARP in user space")
Signed-off-by: Michal Kalderon
---
drivers/infiniband/hw/qedr/verbs.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/drivers/infiniband/hw/qedr/verbs.c
b/drivers/infiniband/h
MTU change on ethtool is currently not supported for iWARP.
Notify qedr driver so that appropriate logging can take
place.
Signed-off-by: Michal Kalderon
---
drivers/net/ethernet/qlogic/qede/qede_ethtool.c | 4 +++-
drivers/net/ethernet/qlogic/qede/qede_rdma.c| 17
dev->attr.page_size_caps was used uninitialized
when setting device attributes
Fixes: ec72fce401c6 ("qedr: Add support for RoCE HW init")
Signed-off-by: Michal Kalderon
---
drivers/infiniband/hw/qedr/main.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/drive
Currently iWARP does not support mtu-change. Notify user when
MTU changes that reload of qedr is required for mtu to change.
Display the correct active mtu.
Fixes: f5b1b1775be6 ("RDMA/qedr: Add iWARP support in existing verbs")
Signed-off-by: Michal Kalderon
---
drivers/infiniba
Change the doorbell setting so that the maximum value between
the last and current value is set. This is to avoid doorbells
being lost.
Fixes: a7efd7773e31 ("qedr: Add support for PD,PKEY and CQ verbs")
Signed-off-by: Michal Kalderon
---
drivers/infiniband/hw/qedr/verbs.c | 2 +-
1 fi
0
[<c6948f76>] entry_SYSCALL_64_after_hwframe+0x44/0xa9
Fixes: 1212767e23bb ("qedr: Add wrapping generic structure for qpidr and
adjust idr routines")
Signed-off-by: Michal Kalderon
---
drivers/infiniband/hw/qedr/verbs.c | 2 ++
1 file changed, 2 insertions(+)
diff
this to rdma tree.
thanks,
Michal
Michal Kalderon (8):
RDMA/qedr: Fix qp structure memory leak
RDMA/qedr: Fix doorbell setting
RDMA/qedr: Fix use of uninitialized field
RDMA/qedr: Fix return code if accept is called on a destroyed qp
qede: Notify qedr when mtu has changed
RDMA/qedr: Fix
In iWARP, accept could be called after a QP is already destroyed.
In this case an error should be returned and not success.
Fixes: 82af6d19d8d9 ("RDMA/qedr: Fix synchronization methods and memory leaks
in qedr")
Signed-off-by: Michal Kalderon
---
drivers/infiniband/hw/qedr/qedr_i
after determining whether the libqedr is
using the updated version.
Fixes: f10939403352 ("qed: Add support for QP verbs")
Signed-off-by: Yuval Basson
Signed-off-by: Michal Kalderon
---
drivers/net/ethernet/qlogic/qed/qed_rdma.c | 1 +
drivers/net/ethernet/qlogic/qed/qed_rdma.h |
> From: Jason Gunthorpe
> Sent: Monday, July 29, 2019 5:05 PM
>
> External Email
>
> --
> On Mon, Jul 29, 2019 at 04:53:38PM +0300, Gal Pressman wrote:
> > On 29/07/2019 15:58, Michal Kalderon wrote:
> From: Gal Pressman
> Sent: Monday, July 29, 2019 4:54 PM
>
> On 29/07/2019 15:58, Michal Kalderon wrote:
> >> From: linux-rdma-ow...@vger.kernel.org >> ow...@vger.kernel.org> On Behalf Of Jason Gunthorpe
> >>
> >>> + xa_lock(&ucon
> From: linux-rdma-ow...@vger.kernel.org ow...@vger.kernel.org> On Behalf Of Jason Gunthorpe
>
> > + xa_lock(&ucontext->mmap_xa);
> > + if (check_add_overflow(ucontext->mmap_xa_page,
> > + (u32)(length >> PAGE_SHIFT),
> > + &next_mmap_page))
>
> From: linux-rdma-ow...@vger.kernel.org ow...@vger.kernel.org> On Behalf Of Jason Gunthorpe
>
> On Thu, Jul 25, 2019 at 07:34:15PM +0000, Michal Kalderon wrote:
> > > > + ibdev_dbg(ucontext->device,
> > > > + "mmap: obj[0x%p] key
> From: Jason Gunthorpe
> Sent: Thursday, July 25, 2019 9:02 PM
>
> External Email
>
> --
> On Tue, Jul 09, 2019 at 05:17:29PM +0300, Michal Kalderon wrote:
> > This patch series uses the doorbell
> From: Jason Gunthorpe
> Sent: Thursday, July 25, 2019 9:01 PM
>
> External Email
>
> --
> On Tue, Jul 09, 2019 at 05:17:34PM +0300, Michal Kalderon wrote:
>
> > +static int qedr_init_user
> From: linux-rdma-ow...@vger.kernel.org ow...@vger.kernel.org> On Behalf Of Jason Gunthorpe
>
> On Tue, Jul 09, 2019 at 05:17:30PM +0300, Michal Kalderon wrote:
> > Create some common API's for adding entries to a xa_mmap.
> > Searching for an entry and freeing one
The hw_ver field was initialized to zero. Return the chip revision.
This is relevant for rdma driver.
Signed-off-by: Michal Kalderon
---
drivers/net/ethernet/qlogic/qed/qed_rdma.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/drivers/net/ethernet/qlogic/qed/qed_rdma.c
b
> From: linux-rdma-ow...@vger.kernel.org ow...@vger.kernel.org> On Behalf Of Gal Pressman
>
> On 09/07/2019 17:17, Michal Kalderon wrote:
> > This patch series uses the doorbell overflow recovery mechanism
> > introduced in commit 36907cd5cd72 ("qed: Add doorbell ov
Remove all function related to mmap from qedr and use the common
API
Signed-off-by: Ariel Elior
Signed-off-by: Michal Kalderon
---
drivers/infiniband/hw/qedr/qedr.h | 13
drivers/infiniband/hw/qedr/verbs.c | 153 +
drivers/infiniband/hw/qedr/verbs.h
nto kernel space
- modify db_rec_delete to be void
- remove some cpu_to_le16 that were added to previous patch which are
correct but not related to the overflow recovery mechanism. Will be
submitted as part of a different patch
Michal Kalderon (6):
RDMA/core: Create mmap database and cookie he
This patch adds the iWARP specific doorbells to the doorbell
recovery mechanism
Signed-off-by: Ariel Elior
Signed-off-by: Michal Kalderon
---
drivers/infiniband/hw/qedr/qedr.h | 12 +++-
drivers/infiniband/hw/qedr/verbs.c | 37 -
2 files changed, 43
Use the doorbell recovery mechanism to register rdma related doorbells
that will be restored in case there is a doorbell overflow attention.
Signed-off-by: Ariel Elior
Signed-off-by: Michal Kalderon
---
drivers/infiniband/hw/qedr/main.c | 1 +
drivers/infiniband/hw/qedr/qedr.h | 7
Several casts were required around dpi_addr parameter in qed_rdma_if.h
This is an address on the doorbell bar and should therefore be marked
with __iomem.
Reported-by: Jason Gunthorpe
Signed-off-by: Ariel Elior
Signed-off-by: Michal Kalderon
---
drivers/infiniband/hw/qedr/main.c | 2
Remove the functions related to managing the mmap_xa database.
This code was copied to the ib_core. Use the common API's instead.
Signed-off-by: Ariel Elior
Signed-off-by: Michal Kalderon
---
drivers/infiniband/hw/efa/efa.h | 3 +-
drivers/infiniband/hw/efa/efa_main.c | 1 +
dr
Create some common API's for adding entries to a xa_mmap.
Searching for an entry and freeing one.
The code was copied from the efa driver almost as is, just renamed
function to be generic and not efa specific.
Signed-off-by: Ariel Elior
Signed-off-by: Michal Kalderon
---
drivers/infin
> From: Gal Pressman
> Sent: Tuesday, July 9, 2019 12:03 PM
>
> On 08/07/2019 12:14, Michal Kalderon wrote:
>
> Hi, a few nits:
Thanks for the review, will fix them.
>
> > Remove the functions related to managing the mmap_xa database.
> > This code was copi
> From: linux-rdma-ow...@vger.kernel.org ow...@vger.kernel.org> On Behalf Of Leon Romanovsky
>
> On Mon, Jul 08, 2019 at 12:14:58PM +0300, Michal Kalderon wrote:
> > Create some common API's for adding entries to a xa_mmap.
> > Searching for an entry and freeing one
> From: linux-rdma-ow...@vger.kernel.org ow...@vger.kernel.org> On Behalf Of Gal Pressman
>
> On 08/07/2019 12:14, Michal Kalderon wrote:
> > diff --git a/drivers/infiniband/core/device.c
> > b/drivers/infiniband/core/device.c
> > index 8a6ccb936dfe..a830c2c
Create some common API's for adding entries to a xa_mmap.
Searching for an entry and freeing one.
The code was copied from the efa driver almost as is, just renamed
function to be generic and not efa specific.
Signed-off-by: Michal Kalderon
---
drivers/infiniband/core/device.c
Remove all function related to mmap from qedr and use the common
API
Signed-off-by: Michal Kalderon
---
drivers/infiniband/hw/qedr/qedr.h | 13
drivers/infiniband/hw/qedr/verbs.c | 153 +
drivers/infiniband/hw/qedr/verbs.h | 2 +-
3 files changed, 52
Remove the functions related to managing the mmap_xa database.
This code was copied to the ib_core. Use the common API's instead.
Signed-off-by: Michal Kalderon
---
drivers/infiniband/hw/efa/efa.h | 3 +-
drivers/infiniband/hw/efa/efa_main.c | 1 +
drivers/infiniband/h
This patch adds the iWARP specific doorbells to the doorbell
recovery mechanism
Signed-off-by: Ariel Elior
Signed-off-by: Michal Kalderon
---
drivers/infiniband/hw/qedr/qedr.h | 12 +++-
drivers/infiniband/hw/qedr/verbs.c | 37 -
2 files changed, 43
lete to be void
- remove some cpu_to_le16 that were added to previous patch which are
correct but not related to the overflow recovery mechanism. Will be
submitted as part of a different patch
Michal Kalderon (6):
RDMA/core: Create mmap database and cookie helper functions
RDMA/efa: Use the
Use the doorbell recovery mechanism to register rdma related doorbells
that will be restored in case there is a doorbell overflow attention.
Signed-off-by: Ariel Elior
Signed-off-by: Michal Kalderon
---
drivers/infiniband/hw/qedr/main.c | 1 +
drivers/infiniband/hw/qedr/qedr.h | 7
Several casts were required around dpi_addr parameter in qed_rdma_if.h
This is an address on the doorbell bar and should therefore be marked
with __iomem.
Reported-by: Jason Gunthorpe
Signed-off-by: Michal Kalderon
---
drivers/infiniband/hw/qedr/main.c | 2 +-
drivers/infiniband/hw
> From: Jason Gunthorpe
> Sent: Friday, June 21, 2019 10:58 PM
>
> External Email
>
> --
> On Fri, Jun 21, 2019 at 07:49:39PM +, Michal Kalderon wrote:
> > > From: linux-rdma-ow...@vger.kernel.
space
- modify db_rec_delete to be void
- remove some cpu_to_le16 that were added to previous patch which are
correct but not related to the overflow recovery mechanism. Will be
submitted as part of a different patch
Michal Kalderon (3):
qed*: Change dpi_addr to be denoted with __iomem
RDMA/qed
Use the doorbell recovery mechanism to register rdma related doorbells
that will be restored in case there is a doorbell overflow attention.
Signed-off-by: Ariel Elior
Signed-off-by: Michal Kalderon
---
drivers/infiniband/hw/qedr/qedr.h | 13 +-
drivers/infiniband/hw/qedr/verbs.c | 351
This patch adds the iWARP specific doorbells to the doorbell
recovery mechanism
Signed-off-by: Ariel Elior
Signed-off-by: Michal Kalderon
---
drivers/infiniband/hw/qedr/qedr.h | 12 +++-
drivers/infiniband/hw/qedr/verbs.c | 37 -
2 files changed, 43
Several casts were required around dpi_addr parameter in qed_rdma_if.h
This is an address on the doorbell bar and should therefore be marked
with __iomem.
Reported-by: Jason Gunthorpe
Signed-off-by: Michal Kalderon
---
drivers/infiniband/hw/qedr/main.c | 2 +-
drivers/infiniband/hw
> From: linux-rdma-ow...@vger.kernel.org ow...@vger.kernel.org> On Behalf Of Doug Ledford
>
> On Thu, 2019-06-13 at 11:38 +0300, Michal Kalderon wrote:
> > This patch series used the doorbell overflow recovery mechanism
> > introduced in commit 36907cd5cd72 (&qu
This series contains a few small fixes related to iWARP.
Michal Kalderon (4):
qed: iWARP - Use READ_ONCE and smp_store_release to access ep->state
qed: iWARP - fix uninitialized callback
qed: iWARP - Fix tc for MPA ll2 connection
qed: iWARP - Fix default window size to be based on c
ned-off-by: Ariel Elior
Signed-off-by: Michal Kalderon
---
drivers/net/ethernet/qlogic/qed/qed_iwarp.c | 2 ++
1 file changed, 2 insertions(+)
diff --git a/drivers/net/ethernet/qlogic/qed/qed_iwarp.c
b/drivers/net/ethernet/qlogic/qed/qed_iwarp.c
index 099177c6aca2..431688c236ed 100644
--- a/d
Destroy QP waits for it's ep object state to be set to CLOSED
before proceeding. ep->state can be updated from a different
context. Add smp_store_release/READ_ONCE to synchronize.
Fixes: fc4c6065e661 ("qed: iWARP implement disconnect flows")
Signed-off-by: Ariel Elior
Sig
The default window size is calculated for best performance based
on internal hw buffer sizes. The size differs between the
different chips and modes.
Fixes: 67b40dccc45f ("qed: Implement iWARP initialization, teardown and qp
operations")
Signed-off-by: Ariel Elior
Signed-off-by: Micha
Fix uninitialized variable warning by static checker.
Fixes: ae3488ff37dc ("qed: Add ll2 connection for processing unaligned MPA
packets")
Signed-off-by: Ariel Elior
Signed-off-by: Michal Kalderon
---
drivers/net/ethernet/qlogic/qed/qed_iwarp.c | 1 +
1 file changed, 1 insertio
Several casts were required around dpi_addr parameter in qed_rdma_if.h
This is an address on the doorbell bar and should therefore be marked
with __iomem.
Reported-by: Jason Gunthorpe
Signed-off-by: Michal Kalderon
---
drivers/infiniband/hw/qedr/main.c | 2 +-
drivers/infiniband/hw
not related to the overflow recovery mechanism. Will be
submitted as part of a different patch
Michal Kalderon (3):
qed*: Change dpi_addr to be denoted with __iomem
RDMA/qedr: Add doorbell overflow recovery support
RDMA/qedr: Add iWARP doorbell recovery support
drivers/infiniband
This patch adds the iWARP specific doorbells to the doorbell
recovery mechanism
Signed-off-by: Ariel Elior
Signed-off-by: Michal Kalderon
---
drivers/infiniband/hw/qedr/qedr.h | 12 +++-
drivers/infiniband/hw/qedr/verbs.c | 38 +-
2 files changed
Use the doorbell recovery mechanism to register rdma related doorbells
that will be restored in case there is a doorbell overflow attention.
Signed-off-by: Ariel Elior
Signed-off-by: Michal Kalderon
---
drivers/infiniband/hw/qedr/qedr.h | 13 +-
drivers/infiniband/hw/qedr/verbs.c | 351
In some cases abs_ppfid could be printed without being initialized.
Fixes: 79284adeb99e ("qed: Add llh ppfid interface and 100g support for offload
protocols")
Reported-by: Dan Carpenter
Signed-off-by: Michal Kalderon
---
drivers/net/ethernet/qlogic/qed/qed_
rams;
> - struct qed_resc_alloc_in_params in_params;
> + struct qed_resc_alloc_out_params out_params = {0};
> + struct qed_resc_alloc_in_params in_params = {0};
> int rc;
>
> - memset(&in_params, 0, sizeof(in_params));
> in_params.cmd = DRV_MSG_SET_RESOURCE_VALUE_MSG;
> in_params.res_id = res_id;
> in_params.resc_max_val = resc_max_val;
> - memset(&out_params, 0, sizeof(out_params));
> rc = qed_mcp_resc_allocation_msg(p_hwfn, p_ptt, &in_params,
>&out_params);
> if (rc)
> @@ -3302,14 +3280,12 @@ qed_mcp_get_resc_info(struct qed_hwfn
> *p_hwfn,
> enum qed_resources res_id,
> u32 *p_mcp_resp, u32 *p_resc_num, u32 *p_resc_start)
> {
> - struct qed_resc_alloc_out_params out_params;
> - struct qed_resc_alloc_in_params in_params;
> + struct qed_resc_alloc_out_params out_params = {0};
> + struct qed_resc_alloc_in_params in_params = {0};
> int rc;
>
> - memset(&in_params, 0, sizeof(in_params));
> in_params.cmd = DRV_MSG_GET_RESOURCE_ALLOC_MSG;
> in_params.res_id = res_id;
> - memset(&out_params, 0, sizeof(out_params));
> rc = qed_mcp_resc_allocation_msg(p_hwfn, p_ptt, &in_params,
>&out_params);
> if (rc)
> --
> 2.20.1
Thanks,
Acked-by: Michal Kalderon
The assumption that the maximum size of a syn packet is 128 bytes
is wrong. Tunneling headers were not accounted for.
Allocate buffers large enough for mtu.
Signed-off-by: Ariel Elior
Signed-off-by: Michal Kalderon
---
drivers/net/ethernet/qlogic/qed/qed_iwarp.c | 12 ++--
drivers/net
The ll2 forwards all syn packets to the driver without validating the mac
address. Add validation check in the driver's iWARP listener flow and drop
the packet if it isn't intended for the device.
Signed-off-by: Ariel Elior
Signed-off-by: Michal Kalderon
---
drivers/net/ethernet/
This series fixes two bugs related to iWARP syn processing flow.
Michal Kalderon (2):
qed: Fix iWARP buffer size provided for syn packet processing.
qed: Fix iWARP syn packet mac address validation.
drivers/net/ethernet/qlogic/qed/qed_iwarp.c | 21 +++--
drivers/net
ff-by: Ariel Elior
Signed-off-by: Michal Kalderon
---
drivers/net/ethernet/qlogic/qede/qede.h | 3 +
drivers/net/ethernet/qlogic/qede/qede_main.c | 292 ++-
drivers/net/ethernet/qlogic/qede/qede_rdma.c | 63 --
include/linux/qed/qede_rdma.h
means for the protocol drivers to trigger a recovery
process on their decision.
Signed-off-by: Tomer Tayar
Signed-off-by: Ariel Elior
Signed-off-by: Michal Kalderon
---
drivers/net/ethernet/qlogic/qed/qed.h | 4 ++
drivers/net/ethernet/qlogic/qed/qed_dev.c | 41 +++
d
Parity errors might happen in the device's memories due to momentary bit
flips which are caused by radiation.
Errors that are not correctable initiate a process kill event, which blocks
the device access towards the host and the network, and a recovery process
is started in the management FW and in
indications just before enabling the internal master
enable.
Signed-off-by: Tomer Tayar
Signed-off-by: Ariel Elior
Signed-off-by: Michal Kalderon
---
drivers/net/ethernet/qlogic/qed/qed.h | 1 -
drivers/net/ethernet/qlogic/qed/qed_dev.c | 117 ++--
drivers/net
> From: David Miller
> Sent: Sunday, January 27, 2019 8:17 PM
>
> >> From: David Miller
> >> Sent: Wednesday, January 23, 2019 3:37 AM
> >>
> >> > Parity errors might happen in the device's memories due to
> >> > momentary bit flips which are caused by radiation.
> >> > Errors that are not corre
> From: David Miller
> Sent: Wednesday, January 23, 2019 3:37 AM
>
> > Parity errors might happen in the device's memories due to momentary
> > bit flips which are caused by radiation.
> > Errors that are not correctable initiate a process kill event, which
> > blocks the device access towards th
Parity errors might happen in the device's memories due to momentary bit
flips which are caused by radiation.
Errors that are not correctable initiate a process kill event, which blocks
the device access towards the host and the network, and a recovery process
is started in the management FW and in
means for the protocol drivers to trigger a recovery
process on their decision.
Signed-off-by: Tomer Tayar
Signed-off-by: Ariel Elior
Signed-off-by: Michal Kalderon
---
drivers/net/ethernet/qlogic/qed/qed.h | 4 ++
drivers/net/ethernet/qlogic/qed/qed_dev.c | 41 +++
d
ff-by: Ariel Elior
Signed-off-by: Michal Kalderon
---
drivers/net/ethernet/qlogic/qede/qede.h | 3 +
drivers/net/ethernet/qlogic/qede/qede_main.c | 300 ++-
drivers/net/ethernet/qlogic/qede/qede_rdma.c | 64 --
include/linux/qed/qede_rdma.h
indications just before enabling the internal master
enable.
Signed-off-by: Tomer Tayar
Signed-off-by: Ariel Elior
Signed-off-by: Michal Kalderon
---
drivers/net/ethernet/qlogic/qed/qed.h | 1 -
drivers/net/ethernet/qlogic/qed/qed_dev.c | 117 ++--
drivers/net
: 1d6cff4fca4366 ("qed: Add iSCSI out of order packet handling")
Signed-off-by: Ariel Elior
Signed-off-by: Michal Kalderon
---
drivers/net/ethernet/qlogic/qed/qed_ll2.c | 24 ++--
1 file changed, 14 insertions(+), 10 deletions(-)
diff --git a/drivers/net/ethernet/
The ll2 flows of flushing the txq/rxq need to be synchronized with the
regular fp processing. Caused list corruption during load/unload stress
tests.
Fixes: 0a7fb11c23c0f ("qed: Add Light L2 support")
Signed-off-by: Ariel Elior
Signed-off-by: Michal Kalderon
---
drivers/net/ethernet/
Driver should free all pending isles once it gets a FLUSH cqe from FW.
Part of iSCSI out of order flow.
Fixes: 1d6cff4fca4366 ("qed: Add iSCSI out of order packet handling")
Signed-off-by: Ariel Elior
Signed-off-by: Michal Kalderon
---
drivers/net/ethernet/qlogic/qed/qed_
This series fixes some issues in ll2 related to synchronization
and resource freeing
Signed-off-by: Ariel Elior
Signed-off-by: Michal Kalderon
Michal Kalderon (3):
qed: LL2 flush isles when connection is closed
qed: Fix possibility of list corruption during rmmod flows
qed: Fix LL2 race
;qede: Add qedr framework")
Signed-off-by: Ariel Elior
Signed-off-by: Michal Kalderon
---
drivers/net/ethernet/qlogic/qede/qede_main.c | 3 +--
1 file changed, 1 insertion(+), 2 deletions(-)
diff --git a/drivers/net/ethernet/qlogic/qede/qede_main.c
b/drivers/net/ethernet/qlogic/qede/qede_ma
A previous commit 4609adc27175 ("qede: Fix qedr link update")
added a flow that could allocate rdma event objects from an
interrupt path (link notification). Therefore the kzalloc call
should be done with GFP_ATOMIC.
fixes: 4609adc27175 ("qede: Fix qedr link update")
S
If qede driver was loaded on a device configured for iWARP
the l2 mutex wouldn't be allocated, and some l2 related
resources wouldn't be freed.
fixes: c851a9dc4359 ("qed: Introduce iWARP personality")
Signed-off-by: Michal Kalderon
Signed-off-by: Sudarsana Kalluru
---
This patch series include two fixes for bugs related to rdma.
The first has to do with loading the driver over an iWARP
device.
The second fixes a previous commit that added proper link
indication for iWARP / RoCE.
Signed-off-by: Michal Kalderon
Signed-off-by: Sudarsana Kalluru
Michal
Link updates were not reported to qedr correctly.
Leading to cases where a link could be down, but qedr
would see it as up.
In addition, once qede was loaded, link state would be up,
regardless of the actual link state.
Signed-off-by: Michal Kalderon
Signed-off-by: Ariel Elior
---
drivers/net
uot;)
Signed-off-by: Michal Kalderon
Signed-off-by: Ariel Elior
---
drivers/net/ethernet/qlogic/qed/qed_iwarp.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/drivers/net/ethernet/qlogic/qed/qed_iwarp.c
b/drivers/net/ethernet/qlogic/qed/qed_iwarp.c
index ca4a81d..fefe527 1006
FW workaround. The iWARP LL2 connection did not expect TCP packets
to arrive on it's connection. The fix drops any non-tcp packets
Fixes b5c29ca ("qed: iWARP CM - setup a ll2 connection for handling
SYN packets")
Signed-off-by: Michal Kalderon
Signed-off-by: Ariel Elior
-
This series contains two fixes related to iWARP flow.
Signed-off-by: Michal Kalderon
Signed-off-by: Ariel Elior
Michal Kalderon (2):
qed: Fix MPA unalign flow in case header is split across two packets.
qed: Fix non TCP packets should be dropped on iWARP ll2 connection
drivers/net
E both use the
ROCE protocol id, as opposed to the connection context.
Fixes: dbb799c39717 ("qed: Initialize hardware for new protocols")
Signed-off-by: Michal Kalderon
Signed-off-by: Ariel Elior
---
Difference from V2:
Fixed Broken parenthesis In comment
---
drivers/net/ethernet/
E both use the
ROCE protocol id, as opposed to the connection context.
Fixes: dbb799c39717 ("qed: Initialize hardware for new protocols")
Signed-off-by: Michal Kalderon
Signed-off-by: Ariel Elior
---
Difference from V1:
Fixes line was truncated
---
drivers/net/ethernet/qlogi
E both use the
ROCE protocol id, as opposed to the connection context.
Fixes: dbb799c39717e7b7
Signed-off-by: Michal Kalderon
Signed-off-by: Ariel Elior
---
drivers/net/ethernet/qlogic/qed/qed_cxt.c | 5 -
drivers/net/ethernet/qlogic/qed/qed_rdma.c | 1 +
2 files changed, 5 insertions(+),
This patch contains two small bug fixes related to RDMA.
Both related to resource reservations.
Signed-off-by: Michal Kalderon
Signed-off-by: Ariel Elior
Michal Kalderon (2):
qed: Remove reserveration of dpi for kernel
qed: Free reserved MR tid
drivers/net/ethernet/qlogic/qed/qed_rdma.c
A tid was allocated for reserved MR during initialization but
not freed. This lead to an annoying output message during
rdma unload flow.
Signed-off-by: Michal Kalderon
Signed-off-by: Ariel Elior
---
drivers/net/ethernet/qlogic/qed/qed_rdma.c | 28 +---
1 file changed
Double reservation for kernel dedicated dpi was performed.
Once in the core module and once in qedr.
Remove the reservation from core.
Signed-off-by: Michal Kalderon
Signed-off-by: Ariel Elior
---
drivers/net/ethernet/qlogic/qed/qed_rdma.c | 3 ---
1 file changed, 3 deletions(-)
diff --git a
iWARP out of order support")
Signed-off-by: Michal Kalderon
Signed-off-by: Manish Rangankar
Signed-off-by: Ariel Elior
---
drivers/infiniband/hw/qedr/Kconfig | 1 +
drivers/net/ethernet/qlogic/Kconfig | 3 +++
drivers/net/ethernet/qlogic/qed/Makefile| 3 ++-
d
unaligned mpa the value
will be determined in the iWARP code and sent on the pkt->vlan
field.
Signed-off-by: Michal Kalderon
Signed-off-by: Ariel Elior
---
drivers/net/ethernet/qlogic/qed/qed_ll2.c | 7 ++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/drivers/net/ethernet/qlogic/
, two fragments are used, one for the header
and one for the data.
Corner cases are not handled in the patch for clarity, and will be added
as a separate patch.
Signed-off-by: Michal Kalderon
Signed-off-by: Ariel Elior
---
drivers/net/ethernet/qlogic/qed/qed_iwarp.c
provided as a cookie. To avoid changing the ll2
interface to provide two cookies, we introduce a piggy buf pointer,
relevant for iWARP only, that holds a pointer to a second buffer that
needs to be released during tx completion.
Signed-off-by: Michal Kalderon
Signed-off-by: Ariel Elior
There is a special case where an MPA header is split over to tcp
packets, in this case we need to wait for the next packet to
get the fpdu length. We use the incomplete_bytes to mark this
fpdu as a "special" one which requires updating the length with
the next packet
Signed-off-
the data. We need an intermediate buffer as the initial
buffer partial packet could be located at the end of the packet, not
leaving room for additional data. This is a corner case, and will usually
not be the case.
Signed-off-by: Michal Kalderon
Signed-off-by: Ariel Elior
---
drivers/net
hold a free list.
Signed-off-by: Michal Kalderon
Signed-off-by: Ariel Elior
---
drivers/net/ethernet/qlogic/qed/qed_iwarp.c | 116
drivers/net/ethernet/qlogic/qed/qed_iwarp.h | 11 +++
2 files changed, 127 insertions(+)
diff --git a/drivers/net/ethernet/qlogic/qed/q
This patch adds only the establishment and termination of the
ll2 connection that handles unaligned MPA packets.
Signed-off-by: Michal Kalderon
Signed-off-by: Ariel Elior
---
drivers/net/ethernet/qlogic/qed/qed_iwarp.c | 65 +
drivers/net/ethernet/qlogic/qed
The option of sending a packet on the ll2 and dropping it exists in
hardware and was not used until now, thus not exposed.
The iWARP unaligned MPA flow requires this functionality for
flushing the tx queue.
Signed-off-by: Michal Kalderon
Signed-off-by: Ariel Elior
---
drivers/net/ethernet
For iWARP unaligned MPA flow, a slowpath event of flushing an
MPA connection that entered an unaligned state is required.
The flush ramrod is received on the ll2 queue, and a pre-registered
callback function is called to handle the flush event.
Signed-off-by: Michal Kalderon
Signed-off-by: Ariel
enable_ip_cksum, enable_l4_cksum, calc_ip_len were added in
commit stated below but not passed through to FW. This was OK
until now as it wasn't used, but is required for the iWARP
unaligned flow
Fixes:7c7973b2ae27 ("qed: LL2 to use packed information for tx")
Signed-off-by:
also contributed to decreasing the descriptor size.
Signed-off-by: Michal Kalderon
Signed-off-by: Ariel Elior
---
drivers/net/ethernet/qlogic/qed/qed_ll2.c | 29 +
drivers/net/ethernet/qlogic/qed/qed_ll2.h | 9 +++--
2 files changed, 24 insertions(+), 14
secondary queue.
Signed-off-by: Michal Kalderon
Signed-off-by: Ariel Elior
---
drivers/net/ethernet/qlogic/qed/qed_ll2.c | 7 ++-
drivers/net/ethernet/qlogic/qed/qed_ll2.h | 1 +
include/linux/qed/qed_ll2_if.h| 1 +
3 files changed, 8 insertions(+), 1 deletion(-)
diff --git a/drivers
1 - 100 of 177 matches
Mail list logo