summaryrefslogtreecommitdiffstats
path: root/drivers/net/ethernet/qlogic/qed/qed_iwarp.h
diff options
context:
space:
mode:
authorMichal Kalderon <Michal.Kalderon@cavium.com>2017-10-09 12:37:54 +0300
committerDavid S. Miller <davem@davemloft.net>2017-10-09 10:21:27 -0700
commit1e28eaad07ea1e2d6537586529e87cbc1d698ffd (patch)
treee6ee0a50042ead73309e799a448d8daa8d2ab1b5 /drivers/net/ethernet/qlogic/qed/qed_iwarp.h
parentc7d1d839999476aac0d7e16732722285a9c30cce (diff)
downloadop-kernel-dev-1e28eaad07ea1e2d6537586529e87cbc1d698ffd.zip
op-kernel-dev-1e28eaad07ea1e2d6537586529e87cbc1d698ffd.tar.gz
qed: Add iWARP support for fpdu spanned over more than two tcp packets
We continue to maintain a maximum of three buffers per fpdu, to ensure that there are enough buffers for additional unaligned mpa packets. To support this, if a fpdu is split over more than two tcp packets, we use an intermediate buffer to copy the data to the previous buffer, then we can release 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 <Michal.Kalderon@cavium.com> Signed-off-by: Ariel Elior <Ariel.Elior@cavium.com> Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'drivers/net/ethernet/qlogic/qed/qed_iwarp.h')
-rw-r--r--drivers/net/ethernet/qlogic/qed/qed_iwarp.h1
1 files changed, 1 insertions, 0 deletions
diff --git a/drivers/net/ethernet/qlogic/qed/qed_iwarp.h b/drivers/net/ethernet/qlogic/qed/qed_iwarp.h
index c58793a..c1ecd74 100644
--- a/drivers/net/ethernet/qlogic/qed/qed_iwarp.h
+++ b/drivers/net/ethernet/qlogic/qed/qed_iwarp.h
@@ -107,6 +107,7 @@ struct qed_iwarp_info {
enum mpa_rtr_type rtr_type;
struct qed_iwarp_fpdu *partial_fpdus;
struct qed_iwarp_ll2_mpa_buf *mpa_bufs;
+ u8 *mpa_intermediate_buf;
u16 max_num_partial_fpdus;
};
OpenPOWER on IntegriCloud