Patch "IB/hfi1: Allocate context data on memory node" has been added to the 4.9-stable tree
Subsystems (3)
This is a note to let you know that I've just added the patch titled
IB/hfi1: Allocate context data on memory node
to the 4.9-stable tree which can be found at:
http://www.kernel.org/git/?p=linux/kernel/git/stable/stable-queue.git;a=summary
The filename of the patch is:
ib-hfi1-allocate-context-data-on-memory-node.patch
and it can be found in the queue-4.9 subdirectory.
If you, or anyone else, feels it should not be added to the stable tree, please let <[email protected]> know about it.
Quoted 1 line
From foo@baz Thu Oct 19 15:04:02 CEST 2017
From: Sebastian Sanchez <[email protected]>
Date: Wed, 8 Feb 2017 05:26:37 -0800
Subject: IB/hfi1: Allocate context data on memory node
From: Sebastian Sanchez <[email protected]>
[ Upstream commit b448bf9a0df6093dbadac36979a55ce4e012a677 ]
There are some memory allocation calls in hfi1_create_ctxtdata() that do not use the numa function parameter. This
can cause cache lines to be filled over QPI.
--- drivers/infiniband/hw/hfi1/init.c | 17 +++++++++-------- 1 file changed, 9 insertions(+), 8 deletions(-)
drivers/infiniband/hw/hfi1/init.c +9 -8
@@ -297,14 +297,15 @@ struct hfi1_ctxtdata *hfi1_create_ctxtda* The resulting value will be rounded down to the closest * multiple of dd->rcv_entries.group_size. */ - rcd->egrbufs.buffers =kcalloc (rcd->egrbufs.count, -sizeof (*rcd->egrbufs.buffers), -GFP_KERNEL ); + rcd->egrbufs.buffers =kzalloc_node ( + rcd->egrbufs.count *sizeof (*rcd->egrbufs.buffers), +GFP_KERNEL , numa);if (!rcd->egrbufs.buffers) goto bail; - rcd->egrbufs.rcvtids =kcalloc (rcd->egrbufs.count, -sizeof (*rcd->egrbufs.rcvtids), -GFP_KERNEL ); + rcd->egrbufs.rcvtids =kzalloc_node ( + rcd->egrbufs.count * +sizeof (*rcd->egrbufs.rcvtids), +GFP_KERNEL , numa);if (!rcd->egrbufs.rcvtids) goto bail; rcd->egrbufs.size = eager_buffer_size;
@@ -322,8 +323,8 @@ struct hfi1_ctxtdata *hfi1_create_ctxtda rcd->egrbufs.rcvtid_size =HFI1_MAX_EAGER_BUFFER_SIZE ;if (ctxt < dd->first_user_ctxt) {/* N/A for PSM contexts */ - rcd->opstats =kzalloc (sizeof (*rcd->opstats), -GFP_KERNEL ); + rcd->opstats =kzalloc_node (sizeof (*rcd->opstats), +GFP_KERNEL , numa);if (!rcd->opstats) goto bail; }
Patches currently in stable-queue which might be from [email protected] are
queue-4.9/ib-hfi1-allocate-context-data-on-memory-node.patch