diff mbox

rtc: rtc-pcf8563: fix irq request

Message ID 1406215064-11296-2-git-send-email-vdonnefort@gmail.com
State Accepted
Headers show

Commit Message

Vincent Donnefort July 24, 2014, 3:17 p.m. UTC
This patch fixes the irq request which was bypassed regardless of the
device_register function return.

Signed-off-by: Vincent Donnefort <vdonnefort@gmail.com>

Comments

Andrew Morton July 24, 2014, 11:04 p.m. UTC | #1
On Thu, 24 Jul 2014 17:17:44 +0200 Vincent Donnefort <vdonnefort@gmail.com> wrote:

> This patch fixes the irq request which was bypassed regardless of the
> device_register function return.

hm, I think I'll rewrite that to

"pcf8563_probe() failed to check the devm_rtc_device_register() return value"

So what are the runtime effects of this fix?  Did Dan's kernel
malfunction?  From code inspection?  Is the patch an urgent fix?  I
suspect not, but I don't like to guess.
Dan Carpenter July 25, 2014, 8:18 a.m. UTC | #2
On Thu, Jul 24, 2014 at 04:04:14PM -0700, Andrew Morton wrote:
> On Thu, 24 Jul 2014 17:17:44 +0200 Vincent Donnefort <vdonnefort@gmail.com> wrote:
> 
> > This patch fixes the irq request which was bypassed regardless of the
> > device_register function return.
> 
> hm, I think I'll rewrite that to
> 
> "pcf8563_probe() failed to check the devm_rtc_device_register() return value"
> 
> So what are the runtime effects of this fix?  Did Dan's kernel
> malfunction?  From code inspection?

It's a static checker warning about unreachable code on linux-next.

> Is the patch an urgent fix?  I suspect not, but I don't like to guess.

The buggy patch is only 2 days old in linux-next.

Fixes: 80ee1fc9625d ('drivers/rtc/rtc-pcf8563.c: add alarm support')

regards,
dan carpenter
diff mbox

Patch

diff --git a/drivers/rtc/rtc-pcf8563.c b/drivers/rtc/rtc-pcf8563.c
index 98b35d2..5a197d9 100644
--- a/drivers/rtc/rtc-pcf8563.c
+++ b/drivers/rtc/rtc-pcf8563.c
@@ -419,7 +419,8 @@  static int pcf8563_probe(struct i2c_client *client,
 				pcf8563_driver.driver.name,
 				&pcf8563_rtc_ops, THIS_MODULE);
 
-	return PTR_ERR_OR_ZERO(pcf8563->rtc);
+	if (IS_ERR(pcf8563->rtc))
+		return PTR_ERR(pcf8563->rtc);
 
 	if (client->irq > 0) {
 		err = devm_request_threaded_irq(&client->dev, client->irq,