All of lore.kernel.org
 help / color / mirror / Atom feed
From: Daniel Lezcano <daniel.lezcano@linaro.org>
To: Andrew Lunn <andrew@lunn.ch>
Cc: khilman@deeprootsystems.com, linus.walleij@linaro.org,
	nsekhar@ti.com, josephl@nvidia.com, kgene.kim@samsung.com,
	patches@linaro.org, magnus.damm@gmail.com, tony@atomide.com,
	plagnioj@jcrosoft.com, linaro-kernel@lists.linaro.org,
	jason@lakedaemon.net, swarren@wwwdotorg.org,
	nicolas.ferre@atmel.com, rob.herring@calxeda.com, rjw@sisk.pl,
	horms@verge.net.au, linux@maxim.org.za,
	linux-arm-kernel@lists.infradead.org, deepthi@linux.vnet.ibm.com,
	jkosina@suse.cz, linux-pm@vger.kernel.org, lethal@linux-sh.org,
	santosh.shilimkar@ti.com, kernel@pengutronix.de
Subject: Re: [PATCH 05/18] cpuidle: make a single register function for all
Date: Wed, 10 Apr 2013 20:04:22 +0200	[thread overview]
Message-ID: <5165A9A6.70905@linaro.org> (raw)
In-Reply-To: <20130410165509.GK13524@lunn.ch>

On 04/10/2013 06:55 PM, Andrew Lunn wrote:
>> +/**
>> + * cpuidle_register: registers the driver and the cpu devices with the
>> + * coupled_cpus passed as parameter. This function is used for all common
>> + * initialization pattern there are in the arch specific drivers. The
>> + * devices is globally defined in this file.
>> + *
>> + * @drv         : a valid pointer to a struct cpuidle_driver
>> + * @coupled_cpus: a cpumask for the coupled states
>> + *
>> + * Returns 0 on success, < 0 otherwise
>> + */
>> +int cpuidle_register(struct cpuidle_driver *drv,
>> +		     const struct cpumask *const coupled_cpus)
>> +{
>> +	int ret, cpu;
>> +	struct cpuidle_device *device;
>> +
>> +	ret = cpuidle_register_driver(drv);
>> +	if (ret) {
>> +		printk(KERN_ERR "failed to register cpuidle driver\n");
> 
> pr_err()

Ok.

>> +		return ret;
>> +	}
>> +
>> +	for_each_possible_cpu(cpu) {
>> +		device = &per_cpu(cpuidle_dev, cpu);
>> +		device->cpu = cpu;
>> +#ifdef CONFIG_ARCH_NEEDS_CPU_IDLE_COUPLED
>> +		device->coupled_cpus = *coupled_cpus;
>> +#endif
>> +		ret = cpuidle_register_device(device);
>> +		if (!ret)
>> +			continue;
>> +
>> +		printk(KERN_ERR "Failed to register cpuidle "
>> +		       "device for cpu%d\n", cpu);
> 
> pr_err() and don't split the message over two lines, it makes it
> harder for somebody to find with
> 
> grep -r "Failed to register cpuidle device for cpu" *

Ok if the line length is under 80 chars.

>> +		cpuidle_unregister(drv);
>> +		break;
>> +	}
>> +
>> +	return 0;
> 
> You should return an error code, so that the caller can also return an
> error code. If you look at cpuidle-kirkwood and cpuidle-calxeda, and
> maybe others, if the registration fails, the probe function returns an
> error code, as it should. With your change, its always going to return
> 0, even if it fails.

Right, right :)

it should be 'return ret;'

Thanks for pointing this.

  -- Daniel


-- 
 <http://www.linaro.org/> Linaro.org │ Open source software for ARM SoCs

Follow Linaro:  <http://www.facebook.com/pages/Linaro> Facebook |
<http://twitter.com/#!/linaroorg> Twitter |
<http://www.linaro.org/linaro-blog/> Blog


_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel

WARNING: multiple messages have this Message-ID (diff)
From: daniel.lezcano@linaro.org (Daniel Lezcano)
To: linux-arm-kernel@lists.infradead.org
Subject: [PATCH 05/18] cpuidle: make a single register function for all
Date: Wed, 10 Apr 2013 20:04:22 +0200	[thread overview]
Message-ID: <5165A9A6.70905@linaro.org> (raw)
In-Reply-To: <20130410165509.GK13524@lunn.ch>

On 04/10/2013 06:55 PM, Andrew Lunn wrote:
>> +/**
>> + * cpuidle_register: registers the driver and the cpu devices with the
>> + * coupled_cpus passed as parameter. This function is used for all common
>> + * initialization pattern there are in the arch specific drivers. The
>> + * devices is globally defined in this file.
>> + *
>> + * @drv         : a valid pointer to a struct cpuidle_driver
>> + * @coupled_cpus: a cpumask for the coupled states
>> + *
>> + * Returns 0 on success, < 0 otherwise
>> + */
>> +int cpuidle_register(struct cpuidle_driver *drv,
>> +		     const struct cpumask *const coupled_cpus)
>> +{
>> +	int ret, cpu;
>> +	struct cpuidle_device *device;
>> +
>> +	ret = cpuidle_register_driver(drv);
>> +	if (ret) {
>> +		printk(KERN_ERR "failed to register cpuidle driver\n");
> 
> pr_err()

Ok.

>> +		return ret;
>> +	}
>> +
>> +	for_each_possible_cpu(cpu) {
>> +		device = &per_cpu(cpuidle_dev, cpu);
>> +		device->cpu = cpu;
>> +#ifdef CONFIG_ARCH_NEEDS_CPU_IDLE_COUPLED
>> +		device->coupled_cpus = *coupled_cpus;
>> +#endif
>> +		ret = cpuidle_register_device(device);
>> +		if (!ret)
>> +			continue;
>> +
>> +		printk(KERN_ERR "Failed to register cpuidle "
>> +		       "device for cpu%d\n", cpu);
> 
> pr_err() and don't split the message over two lines, it makes it
> harder for somebody to find with
> 
> grep -r "Failed to register cpuidle device for cpu" *

Ok if the line length is under 80 chars.

>> +		cpuidle_unregister(drv);
>> +		break;
>> +	}
>> +
>> +	return 0;
> 
> You should return an error code, so that the caller can also return an
> error code. If you look at cpuidle-kirkwood and cpuidle-calxeda, and
> maybe others, if the registration fails, the probe function returns an
> error code, as it should. With your change, its always going to return
> 0, even if it fails.

Right, right :)

it should be 'return ret;'

Thanks for pointing this.

  -- Daniel


-- 
 <http://www.linaro.org/> Linaro.org ? Open source software for ARM SoCs

Follow Linaro:  <http://www.facebook.com/pages/Linaro> Facebook |
<http://twitter.com/#!/linaroorg> Twitter |
<http://www.linaro.org/linaro-blog/> Blog

  reply	other threads:[~2013-04-10 18:04 UTC|newest]

Thread overview: 90+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2013-04-10 14:22 [PATCH 00/18] cpuidle: code consolidation Daniel Lezcano
2013-04-10 14:22 ` Daniel Lezcano
2013-04-10 14:22 ` [PATCH 01/18] ARM: OMAP3: remove cpuidle_wrap_enter Daniel Lezcano
2013-04-10 14:22   ` Daniel Lezcano
2013-04-10 14:22 ` [PATCH 02/18] cpuidle: remove en_core_tk_irqen flag Daniel Lezcano
2013-04-10 14:22   ` Daniel Lezcano
2013-04-10 14:22 ` [PATCH 03/18] ARM: ux500: cpuidle: replace for_each_online_cpu by for_each_possible_cpu Daniel Lezcano
2013-04-10 14:22   ` Daniel Lezcano
2013-04-10 14:22 ` [PATCH 04/18] ARM: imx: cpuidle: create separate drivers for imx5/imx6 Daniel Lezcano
2013-04-10 14:22   ` Daniel Lezcano
2013-04-12  6:05   ` Shawn Guo
2013-04-12  6:05     ` Shawn Guo
2013-04-12  6:58     ` Daniel Lezcano
2013-04-12  6:58       ` Daniel Lezcano
2013-04-12  7:11       ` Shawn Guo
2013-04-12  7:11         ` Shawn Guo
2013-04-12  7:12         ` Daniel Lezcano
2013-04-12  7:12           ` Daniel Lezcano
2013-04-10 14:22 ` [PATCH 05/18] cpuidle: make a single register function for all Daniel Lezcano
2013-04-10 14:22   ` Daniel Lezcano
2013-04-10 14:59   ` Rob Herring
2013-04-10 14:59     ` Rob Herring
2013-04-10 15:05     ` Daniel Lezcano
2013-04-10 15:05       ` Daniel Lezcano
2013-04-22  6:57     ` Daniel Lezcano
2013-04-22  6:57       ` Daniel Lezcano
2013-04-10 16:55   ` Andrew Lunn
2013-04-10 16:55     ` Andrew Lunn
2013-04-10 18:04     ` Daniel Lezcano [this message]
2013-04-10 18:04       ` Daniel Lezcano
2013-04-10 18:18       ` Andrew Lunn
2013-04-10 18:18         ` Andrew Lunn
2013-04-10 22:07         ` Daniel Lezcano
2013-04-10 22:07           ` Daniel Lezcano
2013-04-10 17:04   ` Andrew Lunn
2013-04-10 17:04     ` Andrew Lunn
2013-04-10 18:02     ` Daniel Lezcano
2013-04-10 18:02       ` Daniel Lezcano
2013-04-10 18:23       ` Andrew Lunn
2013-04-10 18:23         ` Andrew Lunn
2013-04-10 19:59         ` Daniel Lezcano
2013-04-10 19:59           ` Daniel Lezcano
2013-04-10 18:22   ` Colin Cross
2013-04-10 18:22     ` Colin Cross
2013-04-10 19:59     ` Daniel Lezcano
2013-04-10 19:59       ` Daniel Lezcano
2013-04-10 14:22 ` [PATCH 06/18] ARM: ux500: cpuidle: use init/exit common routine Daniel Lezcano
2013-04-10 14:22   ` Daniel Lezcano
2013-04-10 14:22 ` [PATCH 07/18] ARM: at91: " Daniel Lezcano
2013-04-10 14:22   ` Daniel Lezcano
2013-04-10 14:39   ` Nicolas Ferre
2013-04-10 14:39     ` Nicolas Ferre
2013-04-10 14:22 ` [PATCH 08/18] ARM: OMAP3: " Daniel Lezcano
2013-04-10 14:22   ` Daniel Lezcano
2013-04-10 14:22 ` [PATCH 09/18] ARM: s3c64xx: " Daniel Lezcano
2013-04-10 14:22   ` Daniel Lezcano
2013-04-10 14:22 ` [PATCH 10/18] ARM: tegra1: " Daniel Lezcano
2013-04-10 14:22   ` Daniel Lezcano
2013-04-10 17:29   ` Stephen Warren
2013-04-10 17:29     ` Stephen Warren
2013-04-10 18:05     ` Daniel Lezcano
2013-04-10 18:05       ` Daniel Lezcano
2013-04-10 14:22 ` [PATCH 11/18] ARM: shmobile: " Daniel Lezcano
2013-04-10 14:22   ` Daniel Lezcano
2013-04-11  2:46   ` Simon Horman
2013-04-11  2:46     ` Simon Horman
2013-04-10 14:22 ` [PATCH 12/18] ARM: OMAP4: " Daniel Lezcano
2013-04-10 14:22   ` Daniel Lezcano
2013-04-10 14:22 ` [PATCH 13/18] ARM: tegra2: " Daniel Lezcano
2013-04-10 14:22   ` Daniel Lezcano
2013-04-11  1:01   ` Joseph Lo
2013-04-11  1:01     ` Joseph Lo
2013-04-11  5:58     ` Daniel Lezcano
2013-04-11  5:58       ` Daniel Lezcano
2013-04-10 14:22 ` [PATCH 14/18] ARM: tegra3: " Daniel Lezcano
2013-04-10 14:22   ` Daniel Lezcano
2013-04-10 14:22 ` [PATCH 15/18] ARM: calxeda: " Daniel Lezcano
2013-04-10 14:22   ` Daniel Lezcano
2013-04-10 14:31   ` Rob Herring
2013-04-10 14:31     ` Rob Herring
2013-04-10 14:22 ` [PATCH 16/18] ARM: kirkwood: " Daniel Lezcano
2013-04-10 14:22   ` Daniel Lezcano
2013-04-10 14:22 ` [PATCH 17/18] ARM: davinci: " Daniel Lezcano
2013-04-10 14:22   ` Daniel Lezcano
2013-04-10 14:22 ` [PATCH 18/18] ARM: imx: " Daniel Lezcano
2013-04-10 14:22   ` Daniel Lezcano
2013-04-10 19:12 ` [PATCH 00/18] cpuidle: code consolidation Rafael J. Wysocki
2013-04-10 19:12   ` Rafael J. Wysocki
2013-04-10 20:01   ` Daniel Lezcano
2013-04-10 20:01     ` Daniel Lezcano

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=5165A9A6.70905@linaro.org \
    --to=daniel.lezcano@linaro.org \
    --cc=andrew@lunn.ch \
    --cc=deepthi@linux.vnet.ibm.com \
    --cc=horms@verge.net.au \
    --cc=jason@lakedaemon.net \
    --cc=jkosina@suse.cz \
    --cc=josephl@nvidia.com \
    --cc=kernel@pengutronix.de \
    --cc=kgene.kim@samsung.com \
    --cc=khilman@deeprootsystems.com \
    --cc=lethal@linux-sh.org \
    --cc=linaro-kernel@lists.linaro.org \
    --cc=linus.walleij@linaro.org \
    --cc=linux-arm-kernel@lists.infradead.org \
    --cc=linux-pm@vger.kernel.org \
    --cc=linux@maxim.org.za \
    --cc=magnus.damm@gmail.com \
    --cc=nicolas.ferre@atmel.com \
    --cc=nsekhar@ti.com \
    --cc=patches@linaro.org \
    --cc=plagnioj@jcrosoft.com \
    --cc=rjw@sisk.pl \
    --cc=rob.herring@calxeda.com \
    --cc=santosh.shilimkar@ti.com \
    --cc=swarren@wwwdotorg.org \
    --cc=tony@atomide.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.