linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Christoph Lameter <cl@linux.com>
To: Tejun Heo <tj@kernel.org>
Cc: akpm@linuxfoundation.org, rostedt@goodmis.org,
	linux-kernel@vger.kernel.org, Ingo Molnar <mingo@kernel.org>,
	Peter Zijlstra <peterz@infradead.org>,
	Thomas Gleixner <tglx@linutronix.de>,
	Chris Metcalf <cmetcalf@tilera.com>
Subject: [PATCH 09/31] drivers/net/ethernet/tile: Replace __get_cpu_var uses for address calculation
Date: Fri, 20 Jun 2014 14:31:24 -0500	[thread overview]
Message-ID: <20140620193125.907252541@linux.com> (raw)
In-Reply-To: 20140620193115.547427118@linux.com

[-- Attachment #1: this_driver_net_ethernet_tile --]
[-- Type: text/plain, Size: 4295 bytes --]

Replace with this_cpu_ptr.

Acked-by: Chris Metcalf <cmetcalf@tilera.com>
Signed-off-by: Christoph Lameter <cl@linux.com>

Index: linux/drivers/net/ethernet/tile/tilegx.c
===================================================================
--- linux.orig/drivers/net/ethernet/tile/tilegx.c	2014-06-16 09:40:53.465756338 -0500
+++ linux/drivers/net/ethernet/tile/tilegx.c	2014-06-16 09:40:53.457756494 -0500
@@ -423,7 +423,7 @@
 /* Provide linux buffers to mPIPE. */
 static void tile_net_provide_needed_buffers(void)
 {
-	struct tile_net_info *info = &__get_cpu_var(per_cpu_info);
+	struct tile_net_info *info = this_cpu_ptr(&per_cpu_info);
 	int instance, kind;
 	for (instance = 0; instance < NR_MPIPE_MAX &&
 		     info->mpipe[instance].has_iqueue; instance++)	{
@@ -585,7 +585,7 @@
 /* Handle a packet.  Return true if "processed", false if "filtered". */
 static bool tile_net_handle_packet(int instance, gxio_mpipe_idesc_t *idesc)
 {
-	struct tile_net_info *info = &__get_cpu_var(per_cpu_info);
+	struct tile_net_info *info = this_cpu_ptr(&per_cpu_info);
 	struct mpipe_data *md = &mpipe_data[instance];
 	struct net_device *dev = md->tile_net_devs_for_channel[idesc->channel];
 	uint8_t l2_offset;
@@ -651,7 +651,7 @@
  */
 static int tile_net_poll(struct napi_struct *napi, int budget)
 {
-	struct tile_net_info *info = &__get_cpu_var(per_cpu_info);
+	struct tile_net_info *info = this_cpu_ptr(&per_cpu_info);
 	unsigned int work = 0;
 	gxio_mpipe_idesc_t *idesc;
 	int instance, i, n;
@@ -700,7 +700,7 @@
 /* Handle an ingress interrupt from an instance on the current cpu. */
 static irqreturn_t tile_net_handle_ingress_irq(int irq, void *id)
 {
-	struct tile_net_info *info = &__get_cpu_var(per_cpu_info);
+	struct tile_net_info *info = this_cpu_ptr(&per_cpu_info);
 	napi_schedule(&info->mpipe[(uint64_t)id].napi);
 	return IRQ_HANDLED;
 }
@@ -763,7 +763,7 @@
 /* Make sure the egress timer is scheduled. */
 static void tile_net_schedule_egress_timer(void)
 {
-	struct tile_net_info *info = &__get_cpu_var(per_cpu_info);
+	struct tile_net_info *info = this_cpu_ptr(&per_cpu_info);
 
 	if (!info->egress_timer_scheduled) {
 		hrtimer_start(&info->egress_timer,
@@ -780,7 +780,7 @@
  */
 static enum hrtimer_restart tile_net_handle_egress_timer(struct hrtimer *t)
 {
-	struct tile_net_info *info = &__get_cpu_var(per_cpu_info);
+	struct tile_net_info *info = this_cpu_ptr(&per_cpu_info);
 	unsigned long irqflags;
 	bool pending = false;
 	int i, instance;
@@ -1996,7 +1996,7 @@
 /* Help the kernel transmit a packet. */
 static int tile_net_tx(struct sk_buff *skb, struct net_device *dev)
 {
-	struct tile_net_info *info = &__get_cpu_var(per_cpu_info);
+	struct tile_net_info *info = this_cpu_ptr(&per_cpu_info);
 	struct tile_net_priv *priv = netdev_priv(dev);
 	int instance = priv->instance;
 	struct mpipe_data *md = &mpipe_data[instance];
@@ -2138,7 +2138,7 @@
 static void tile_net_netpoll(struct net_device *dev)
 {
 	int instance = mpipe_instance(dev);
-	struct tile_net_info *info = &__get_cpu_var(per_cpu_info);
+	struct tile_net_info *info = this_cpu_ptr(&per_cpu_info);
 	struct mpipe_data *md = &mpipe_data[instance];
 
 	disable_percpu_irq(md->ingress_irq);
@@ -2238,7 +2238,7 @@
 /* Per-cpu module initialization. */
 static void tile_net_init_module_percpu(void *unused)
 {
-	struct tile_net_info *info = &__get_cpu_var(per_cpu_info);
+	struct tile_net_info *info = this_cpu_ptr(&per_cpu_info);
 	int my_cpu = smp_processor_id();
 	int instance;
 
Index: linux/drivers/net/ethernet/tile/tilepro.c
===================================================================
--- linux.orig/drivers/net/ethernet/tile/tilepro.c	2014-06-16 09:40:53.465756338 -0500
+++ linux/drivers/net/ethernet/tile/tilepro.c	2014-06-16 09:40:53.461756416 -0500
@@ -996,13 +996,13 @@
 	PDEBUG("tile_net_register(queue_id %d)\n", queue_id);
 
 	if (!strcmp(dev->name, "xgbe0"))
-		info = &__get_cpu_var(hv_xgbe0);
+		info = this_cpu_ptr(&hv_xgbe0);
 	else if (!strcmp(dev->name, "xgbe1"))
-		info = &__get_cpu_var(hv_xgbe1);
+		info = this_cpu_ptr(&hv_xgbe1);
 	else if (!strcmp(dev->name, "gbe0"))
-		info = &__get_cpu_var(hv_gbe0);
+		info = this_cpu_ptr(&hv_gbe0);
 	else if (!strcmp(dev->name, "gbe1"))
-		info = &__get_cpu_var(hv_gbe1);
+		info = this_cpu_ptr(&hv_gbe1);
 	else
 		BUG();
 


  parent reply	other threads:[~2014-06-20 19:31 UTC|newest]

Thread overview: 60+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2014-06-20 19:31 [PATCH 00/31] percpu: Consistent per cpu operations V5 Christoph Lameter
2014-06-20 19:31 ` [PATCH 01/31] kernel misc: Replace __get_cpu_var uses Christoph Lameter
2014-07-18 23:26   ` Tejun Heo
2014-06-20 19:31 ` [PATCH 02/31] time: " Christoph Lameter
2014-06-20 19:31 ` [PATCH 03/31] scheduler: Replace __get_cpu_var with this_cpu_ptr Christoph Lameter
2014-07-18 23:27   ` Tejun Heo
2014-06-20 19:31 ` [PATCH 04/31] block: Replace __this_cpu_ptr with raw_cpu_ptr Christoph Lameter
2014-07-18 23:28   ` Tejun Heo
2014-06-20 19:31 ` [PATCH 05/31] drivers/char/random: Replace __get_cpu_var uses Christoph Lameter
2014-07-18 23:28   ` Tejun Heo
2014-06-20 19:31 ` [PATCH 06/31] drivers/cpuidle: Replace __get_cpu_var uses for address calculation Christoph Lameter
2014-07-18 23:28   ` Tejun Heo
2014-06-20 19:31 ` [PATCH 07/31] drivers/oprofile: " Christoph Lameter
2014-07-18 23:28   ` Tejun Heo
2014-07-19 11:54     ` Robert Richter
2014-06-20 19:31 ` [PATCH 08/31] drivers/clocksource: Replace __get_cpu_var used " Christoph Lameter
2014-07-18 23:29   ` Tejun Heo
2014-06-20 19:31 ` Christoph Lameter [this message]
2014-07-18 23:29   ` [PATCH 09/31] drivers/net/ethernet/tile: Replace __get_cpu_var uses " Tejun Heo
2014-06-20 19:31 ` [PATCH 10/31] watchdog: Replace __raw_get_cpu_var uses Christoph Lameter
2014-07-18 23:29   ` Tejun Heo
2014-06-20 19:31 ` [PATCH 11/31] net: Replace get_cpu_var through this_cpu_ptr Christoph Lameter
2014-07-18 23:29   ` Tejun Heo
2014-06-20 19:31 ` [PATCH 12/31] md: Replace __this_cpu_ptr with raw_cpu_ptr Christoph Lameter
2014-07-18 23:29   ` Tejun Heo
2014-06-20 19:31 ` [PATCH 13/31] metag: Replace __get_cpu_var uses for address calculation Christoph Lameter
2014-07-18 23:30   ` Tejun Heo
2014-06-20 19:31 ` [PATCH 14/31] drivers/net/ethernet/tile: __get_cpu_var call introduced in 3.14 Christoph Lameter
2014-07-18 23:30   ` Tejun Heo
2014-06-20 19:31 ` [PATCH 15/31] irqchips: Replace __this_cpu_ptr uses Christoph Lameter
2014-07-18 23:30   ` Tejun Heo
2014-06-20 19:31 ` [PATCH 16/31] x86: Replace __get_cpu_var uses Christoph Lameter
2014-06-20 19:31 ` [PATCH 17/31] uv: Replace __get_cpu_var Christoph Lameter
2014-07-18 23:30   ` Tejun Heo
2014-06-20 19:31 ` [PATCH 18/31] arm: Replace __this_cpu_ptr with raw_cpu_ptr Christoph Lameter
2014-07-18 23:31   ` Tejun Heo
2014-06-20 19:31 ` [PATCH 19/31] MIPS: Replace __get_cpu_var uses in FPU emulator Christoph Lameter
2014-06-20 20:07   ` David Daney
2014-07-18 23:31   ` Tejun Heo
2014-06-20 19:31 ` [PATCH 20/31] mips: Replace __get_cpu_var uses Christoph Lameter
2014-07-18 23:31   ` Tejun Heo
2014-06-20 19:31 ` [PATCH 21/31] s390: " Christoph Lameter
2014-07-18 23:32   ` Tejun Heo
2014-06-20 19:31 ` [PATCH 22/31] s390: cio driver &__get_cpu_var replacements Christoph Lameter
2014-07-18 23:32   ` Tejun Heo
2014-06-20 19:31 ` [PATCH 23/31] ia64: Replace __get_cpu_var uses Christoph Lameter
2014-07-18 23:32   ` Tejun Heo
2014-06-20 19:31 ` [PATCH 24/31] alpha: Replace __get_cpu_var Christoph Lameter
2014-07-18 23:32   ` Tejun Heo
2014-06-20 19:31 ` [PATCH 25/31] powerpc: Replace __get_cpu_var uses Christoph Lameter
2014-06-20 19:31 ` [PATCH 26/31] tile: " Christoph Lameter
2014-07-18 23:33   ` Tejun Heo
2014-06-20 19:31 ` [PATCH 27/31] tile: Use this_cpu_ptr() for hardware counters Christoph Lameter
2014-07-18 23:33   ` Tejun Heo
2014-06-20 19:31 ` [PATCH 28/31] blackfin: Replace __get_cpu_var uses Christoph Lameter
2014-07-18 23:33   ` Tejun Heo
2014-06-20 19:31 ` [PATCH 29/31] avr32: Replace __get_cpu_var with __this_cpu_write Christoph Lameter
2014-07-18 23:33   ` Tejun Heo
2014-06-20 19:31 ` [PATCH 30/31] Remove __get_cpu_var and __raw_get_cpu_var macros [only in 3.17] Christoph Lameter
2014-06-20 19:31 ` [PATCH 31/31] percpu: Remove __this_cpu_ptr Christoph Lameter

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=20140620193125.907252541@linux.com \
    --to=cl@linux.com \
    --cc=akpm@linuxfoundation.org \
    --cc=cmetcalf@tilera.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=mingo@kernel.org \
    --cc=peterz@infradead.org \
    --cc=rostedt@goodmis.org \
    --cc=tglx@linutronix.de \
    --cc=tj@kernel.org \
    /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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).