diff options
author | Christophe JAILLET <christophe.jaillet@wanadoo.fr> | 2023-02-02 23:23:24 +0300 |
---|---|---|
committer | Jason Gunthorpe <jgg@nvidia.com> | 2023-04-13 18:17:45 +0300 |
commit | a2e20b29cf9ce6d2070a6e36666e2239f7f9625b (patch) | |
tree | f23d3553688f1fafe3859748055aefa2c7d41ec8 /drivers/infiniband/hw/irdma | |
parent | 67a00d29c360f4d7b2ca7b1ccf24b145f60d14b8 (diff) | |
download | linux-a2e20b29cf9ce6d2070a6e36666e2239f7f9625b.tar.xz |
RDMA/irdma: Slightly optimize irdma_form_ah_cm_frame()
There is no need to zero 'pktsize' bytes of 'buf', only the header needs
to be cleared, to be safe.
All the other bytes are already written with some memcpy() at the end of
the function.
Doing so also gives the opportunity to the compiler to avoid the memset()
call. It can be inlined now that the length is known as compile time.
Link: https://lore.kernel.org/r/098e3c397be0436f1867899245ecfe656c472110.1675369386.git.christophe.jaillet@wanadoo.fr
Signed-off-by: Christophe JAILLET <christophe.jaillet@wanadoo.fr>
Reviewed-by: Shiraz Saleem <shiraz.saleem@intel.com>
Signed-off-by: Jason Gunthorpe <jgg@nvidia.com>
Diffstat (limited to 'drivers/infiniband/hw/irdma')
-rw-r--r-- | drivers/infiniband/hw/irdma/cm.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/drivers/infiniband/hw/irdma/cm.c b/drivers/infiniband/hw/irdma/cm.c index 195aa9ea18b6..48c2a303e9ec 100644 --- a/drivers/infiniband/hw/irdma/cm.c +++ b/drivers/infiniband/hw/irdma/cm.c @@ -337,7 +337,7 @@ static struct irdma_puda_buf *irdma_form_ah_cm_frame(struct irdma_cm_node *cm_no pktsize = sizeof(*tcph) + opts_len + hdr_len + pd_len; - memset(buf, 0, pktsize); + memset(buf, 0, sizeof(*tcph)); sqbuf->totallen = pktsize; sqbuf->tcphlen = sizeof(*tcph) + opts_len; |