On Mon, Oct 09, 2017 at 12:38:19PM -0700, Dennis Dalessandro wrote: > From: Don Hiatt <don.hiatt@xxxxxxxxx> > > The PIO trailing buffer was being dynamically allocated > but the kcalloc return value was not being checked. Further, > the GFP_KERNEL was being used even though the send engine > might be called with interrupts disabled. > > Since the maximum size of the trailing buffer is only 12 > bytes (CRC = 4, LT = 1, Pad = 0 to 7 bytes) just statically > allocate the buffer, remove the alloc entirely and share it > with the SDMA engine by making it global. > > Reported-by: Leon Romanovsky <leon@xxxxxxxxxx> > Fixes: 566d53a82644 ("IB/hfi1: Enhance PIO/SDMA send for 16B") > Reviewed-by: Mike Marciniszyn <mike.marciniszyn@xxxxxxxxx> > Signed-off-by: Don Hiatt <don.hiatt@xxxxxxxxx> > Signed-off-by: Dennis Dalessandro <dennis.dalessandro@xxxxxxxxx> > --- > drivers/infiniband/hw/hfi1/common.h | 1 + > drivers/infiniband/hw/hfi1/verbs.c | 22 ++++++++-------------- > 2 files changed, 9 insertions(+), 14 deletions(-) > Thanks, Reviewed-by: Leon Romanovsky <leon@xxxxxxxxxx>
Attachment:
signature.asc
Description: PGP signature