From: Ben Hutchings <bhutchings@solarflare.com>
To: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
Cc: davem@davemloft.net, Vasu Dev <vasu.dev@intel.com>,
netdev@vger.kernel.org, gospo@redhat.com
Subject: Re: [net-next 24/40] ixgbe: alloc DDP PCI pool and ixgbe queues as per NUMA nodes
Date: Tue, 07 Jun 2011 13:58:23 +0100 [thread overview]
Message-ID: <1307451503.2908.5.camel@bwh-desktop> (raw)
In-Reply-To: <1307449995-9458-25-git-send-email-jeffrey.t.kirsher@intel.com>
On Tue, 2011-06-07 at 05:32 -0700, Jeff Kirsher wrote:
> From: Vasu Dev <vasu.dev@intel.com>
>
> Have DDP PCI pools allocated from closest NUMA node to the CPU
> and have ixgbe queues allocs per NUMA node.
>
> Signed-off-by: Vasu Dev <vasu.dev@intel.com>
> Tested-by: Ross Brattain <ross.b.brattain@intel.com>
> Tested-by: Evan Swanson <evan.swanson@intel.com>
> Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
> ---
> drivers/net/ixgbe/ixgbe_fcoe.c | 8 ++++++--
> drivers/net/ixgbe/ixgbe_main.c | 12 +++++++++---
> 2 files changed, 15 insertions(+), 5 deletions(-)
>
> diff --git a/drivers/net/ixgbe/ixgbe_fcoe.c b/drivers/net/ixgbe/ixgbe_fcoe.c
> index aadff4f..71e8458 100644
> --- a/drivers/net/ixgbe/ixgbe_fcoe.c
> +++ b/drivers/net/ixgbe/ixgbe_fcoe.c
> @@ -615,7 +615,7 @@ static void ixgbe_fcoe_ddp_pools_free(struct ixgbe_fcoe *fcoe)
> static void ixgbe_fcoe_ddp_pools_alloc(struct ixgbe_adapter *adapter)
> {
> struct ixgbe_fcoe *fcoe = &adapter->fcoe;
> - unsigned int cpu;
> + unsigned int cpu, nid;
> struct pci_pool **pool;
> char pool_name[32];
>
> @@ -623,19 +623,23 @@ static void ixgbe_fcoe_ddp_pools_alloc(struct ixgbe_adapter *adapter)
> if (!fcoe->pool)
> return;
>
> + nid = dev_to_node(&adapter->pdev->dev);
> /* allocate pci pool for each cpu */
> for_each_possible_cpu(cpu) {
> snprintf(pool_name, 32, "ixgbe_fcoe_ddp_%d", cpu);
> pool = per_cpu_ptr(fcoe->pool, cpu);
> + set_dev_node(&adapter->pdev->dev, cpu_to_node(cpu));
> *pool = pci_pool_create(pool_name,
> adapter->pdev, IXGBE_FCPTR_MAX,
> IXGBE_FCPTR_ALIGN, PAGE_SIZE);
> if (!*pool) {
> e_err(drv, "failed to alloc DDP pool on cpu:%d\n", cpu);
> ixgbe_fcoe_ddp_pools_free(fcoe);
> - return;
> + break;
> }
> }
> + /* restore original node value */
> + set_dev_node(&adapter->pdev->dev, nid);
> }
[...]
This is a horrible hack. You should fix the API so that you can
override the node ID, rather than modifying the device.
Ben.
--
Ben Hutchings, Senior Software Engineer, Solarflare
Not speaking for my employer; that's the marketing department's job.
They asked us to note that Solarflare product names are trademarked.
next prev parent reply other threads:[~2011-06-07 12:58 UTC|newest]
Thread overview: 51+ messages / expand[flat|nested] mbox.gz Atom feed top
2011-06-07 12:32 [net-next 00/40][pull request] Intel Wired LAN Driver Update Jeff Kirsher
2011-06-07 12:32 ` [net-next 01/40] e1000e: disable far-end loopback mode on ESB2 Jeff Kirsher
2011-06-07 12:32 ` [net-next 02/40] e1000e: 82579 intermittently disabled during S0->Sx Jeff Kirsher
2011-06-07 12:32 ` [net-next 03/40] e1000e: log when swflag is cleared unexpectedly on ICH/PCH devices Jeff Kirsher
2011-06-07 12:32 ` [net-next 04/40] e1000e: do not schedule the Tx queue until ready Jeff Kirsher
2011-06-07 12:32 ` [net-next 05/40] e1000e: access multiple PHY registers on same page at the same time Jeff Kirsher
2011-06-07 12:32 ` [net-next 06/40] e1000e: Clear host wakeup bit on 82577/8 without touching PHY page 800 Jeff Kirsher
2011-06-07 12:32 ` [net-next 07/40] e1000e: remove redundant reverse dependency on CRC32 Jeff Kirsher
2011-06-07 12:32 ` [net-next 08/40] e1000e: update driver version Jeff Kirsher
2011-06-07 12:32 ` [net-next 09/40] igbvf: update version number Jeff Kirsher
2011-06-07 12:32 ` [net-next 10/40] igb: Change version to remove number after -k in kernel versions Jeff Kirsher
2011-06-07 12:32 ` [net-next 11/40] ixgbe: dcbnl reduce duplicated code and indentation Jeff Kirsher
2011-06-07 12:32 ` [net-next 12/40] ixgbe: consolidate packet buffer allocation Jeff Kirsher
2011-06-07 12:32 ` [net-next 13/40] ixgbe: consolidate MRQC and MTQC handling Jeff Kirsher
2011-06-07 12:32 ` [net-next 14/40] ixgbe: configure minimal packet buffers to support TC Jeff Kirsher
2011-06-07 12:32 ` [net-next 15/40] ixgbe: DCB use existing TX and RX queues Jeff Kirsher
2011-06-07 12:32 ` [net-next 16/40] ixgbe: DCB 82598 devices, tx_idx and rx_idx swapped Jeff Kirsher
2011-06-07 12:32 ` [net-next 17/40] ixgbe: setup redirection table for multiple packet buffers Jeff Kirsher
2011-06-07 12:32 ` [net-next 18/40] ixgbe: fix bit mask for DCB version Jeff Kirsher
2011-06-07 12:32 ` [net-next 19/40] ixgbe: DCB and perfect filters can coexist Jeff Kirsher
2011-06-07 12:32 ` [net-next 20/40] ixgbe: DCB, remove unneeded ixgbe_dcb_txq_to_tc() routine Jeff Kirsher
2011-06-07 12:32 ` [net-next 21/40] ixgbe: add support for Dell CEM Jeff Kirsher
2011-06-07 12:32 ` [net-next 22/40] ixgbe: setup per CPU PCI pool for FCoE DDP Jeff Kirsher
2011-06-07 12:32 ` [net-next 23/40] ixgbe: use per NUMA node lock " Jeff Kirsher
2011-06-07 12:32 ` [net-next 24/40] ixgbe: alloc DDP PCI pool and ixgbe queues as per NUMA nodes Jeff Kirsher
2011-06-07 12:58 ` Ben Hutchings [this message]
2011-06-14 0:14 ` Vasu Dev
2011-06-07 12:33 ` [net-next 25/40] ixgbe: remove ntuple filtering Jeff Kirsher
2011-06-07 12:33 ` [net-next 26/40] ixgbe: fix flags relating to perfect filters to support coexistence Jeff Kirsher
2011-06-07 12:33 ` [net-next 27/40] ixgbe: update perfect filter framework to support retaining filters Jeff Kirsher
2011-06-07 12:33 ` [net-next 28/40] ixgbe: add basic support for setting and getting nfc controls Jeff Kirsher
2011-06-07 12:33 ` [net-next 29/40] ixgbe: add support for displaying ntuple filters via the nfc interface Jeff Kirsher
2011-06-07 12:33 ` [net-next 30/40] ixgbe: add support for nfc addition and removal of filters Jeff Kirsher
2011-06-07 21:24 ` Ben Hutchings
2011-06-07 22:39 ` Alexander Duyck
2011-06-07 12:33 ` [net-next 31/40] ethtool: remove support for ETHTOOL_GRXNTUPLE Jeff Kirsher
2011-06-07 13:06 ` Ben Hutchings
2011-06-07 22:20 ` Alexander Duyck
2011-06-07 12:33 ` [net-next 32/40] ixgbe: add support for modifying UDP RSS flow hash options Jeff Kirsher
2011-06-07 12:33 ` [net-next 33/40] ixgbe: move setting RSC into a separate function Jeff Kirsher
2011-06-07 12:33 ` [net-next 34/40] ixgbe: move reset code " Jeff Kirsher
2011-06-07 12:33 ` [net-next 35/40] ixgbe: disable RSC when Rx checksum is off Jeff Kirsher
2011-06-07 12:33 ` [net-next 36/40] ixgbe: fix ring assignment issues for SR-IOV and drop cases Jeff Kirsher
2011-06-07 12:33 ` [net-next 37/40] rtnetlink: Compute and store minimum ifinfo dump size Jeff Kirsher
2011-06-08 6:09 ` Johannes Berg
2011-06-08 7:12 ` David Miller
2011-06-07 12:33 ` [net-next 38/40] ixgbe: Update feature flags so that LRO and Ntuple are restricted Jeff Kirsher
2011-06-07 13:15 ` Ben Hutchings
2011-06-07 22:32 ` Alexander Duyck
2011-06-07 12:33 ` [net-next 39/40] ixgbe: update driver version string Jeff Kirsher
2011-06-07 12:33 ` [net-next 40/40] ixgbevf: Update the driver string Jeff Kirsher
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=1307451503.2908.5.camel@bwh-desktop \
--to=bhutchings@solarflare.com \
--cc=davem@davemloft.net \
--cc=gospo@redhat.com \
--cc=jeffrey.t.kirsher@intel.com \
--cc=netdev@vger.kernel.org \
--cc=vasu.dev@intel.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.