net/smc: pre-fetch send buffer outside of send_lock
authorKarsten Graul <kgraul@linux.ibm.com>
Sat, 30 May 2020 14:42:37 +0000 (16:42 +0200)
committerDavid S. Miller <davem@davemloft.net>
Sun, 31 May 2020 01:12:25 +0000 (18:12 -0700)
commitb8ded9de8db34dd209a3dece94cf54fc414e78f7
tree3dbc406c8c0caec84fbc5763491d86ea13a9a20f
parentb86a372201153326bad2c7048aef1bd7accbcbbc
net/smc: pre-fetch send buffer outside of send_lock

Pre-fetch send buffer for the CDC validation message before entering the
send_lock. Without that the send call might fail with -EBUSY because
there are no free buffers and waiting for buffers is not possible under
send_lock.

Signed-off-by: Karsten Graul <kgraul@linux.ibm.com>
Reviewed-by: Ursula Braun <ubraun@linux.ibm.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
net/smc/smc_cdc.c
net/smc/smc_cdc.h
net/smc/smc_core.c