[PATCH 13/16] ntb_hw_intel: numa aware memory allocation
From: Allen Hubbe
Date: Wed May 20 2015 - 16:44:16 EST
Allocate memory for the numa node of the ntb device.
Signed-off-by: Allen Hubbe <Allen.Hubbe@xxxxxxx>
---
drivers/ntb/hw/intel/ntb_hw_intel.c | 18 ++++++++++++------
1 file changed, 12 insertions(+), 6 deletions(-)
diff --git a/drivers/ntb/hw/intel/ntb_hw_intel.c b/drivers/ntb/hw/intel/ntb_hw_intel.c
index 7e19d46..aa0bffb 100644
--- a/drivers/ntb/hw/intel/ntb_hw_intel.c
+++ b/drivers/ntb/hw/intel/ntb_hw_intel.c
@@ -413,10 +413,12 @@ static int ndev_init_isr(struct intel_ntb_dev *ndev,
int msix_shift, int total_shift)
{
struct pci_dev *pdev;
- int rc, i, msix_count;
+ int rc, i, msix_count, node;
pdev = ndev_pdev(ndev);
+ node = dev_to_node(&pdev->dev);
+
/* Mask all doorbell interrupts */
ndev->db_mask = ndev->db_valid_mask;
ndev->reg->db_iowrite(ndev->db_mask,
@@ -425,11 +427,13 @@ static int ndev_init_isr(struct intel_ntb_dev *ndev,
/* Try to set up msix irq */
- ndev->vec = kcalloc(msix_max, sizeof(*ndev->vec), GFP_KERNEL);
+ ndev->vec = kzalloc_node(msix_max * sizeof(*ndev->vec),
+ GFP_KERNEL, node);
if (!ndev->vec)
goto err_msix_vec_alloc;
- ndev->msix = kcalloc(msix_max, sizeof(*ndev->msix), GFP_KERNEL);
+ ndev->msix = kzalloc_node(msix_max * sizeof(*ndev->msix),
+ GFP_KERNEL, node);
if (!ndev->msix)
goto err_msix_alloc;
@@ -1963,10 +1967,12 @@ static int intel_ntb_pci_probe(struct pci_dev *pdev,
const struct pci_device_id *id)
{
struct intel_ntb_dev *ndev;
- int rc;
+ int rc, node;
+
+ node = dev_to_node(&pdev->dev);
if (pdev_is_bwd(pdev)) {
- ndev = kmalloc(sizeof(*ndev), GFP_KERNEL);
+ ndev = kmalloc_node(sizeof(*ndev), GFP_KERNEL, node);
if (!ndev) {
rc = -ENOMEM;
goto err_ndev;
@@ -1983,7 +1989,7 @@ static int intel_ntb_pci_probe(struct pci_dev *pdev,
goto err_init_dev;
} else if (pdev_is_snb(pdev)) {
- ndev = kmalloc(sizeof(*ndev), GFP_KERNEL);
+ ndev = kmalloc_node(sizeof(*ndev), GFP_KERNEL, node);
if (!ndev) {
rc = -ENOMEM;
goto err_ndev;
--
2.4.0.rc0.43.gcf8a8c6
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/