Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > linux.kernel > #1312439

Crash introduced by commit b8b2c7d845d5 ("base/platform: assert that dev_pm_domain callbacks are called unconditionally")

From Alan Stern <stern@rowland.harvard.edu>
Newsgroups linux.kernel
Subject Crash introduced by commit b8b2c7d845d5 ("base/platform: assert that dev_pm_domain callbacks are called unconditionally")
Date 2016-01-19 19:30 +0100
Message-ID <qSJcu-3ak-29@gated-at.bofh.it> (permalink)
Organization linux.* mail to news gateway

Show all headers | View raw


Uwe:

Your commit causes my ASUS laptop to crash during early boot.  The 
problem occurs in platform_drv_probe(), affecting both the alarmtimer 
and the asus_laptop platform drivers (I can't tell which is the 
critical one).

The old code would not call platform_drv_probe() at all, and probing
would always succeed immediately because these drivers have no probe
routine.  But with the new code, platform_drv_probe() does run.  The
call to of_clk_set_defaults() returns -ENODEV, as does the call to
dev_pm_domain_attach().  The call to drv->probe() gets skipped, of 
course.  The final return value is -ENODEV, and so probing fails.  This 
causes the kernel to crash: blank screen, NumLock LED blinking.

The patch below fixes the problem, but I'm not sure that it's the best 
solution.  What is your advice?

Alan Stern



Index: usb-4.4/drivers/base/platform.c
===================================================================
--- usb-4.4.orig/drivers/base/platform.c
+++ usb-4.4/drivers/base/platform.c
@@ -524,6 +524,8 @@ static int platform_drv_probe(struct dev
 		ret = -ENXIO;
 	}
 
+	if (!drv->probe)
+		ret = 0;
 	return ret;
 }
 

Back to linux.kernel | Previous | NextNext in thread | Find similar | Unroll thread


Thread

Crash introduced by commit b8b2c7d845d5 ("base/platform: assert that  dev_pm_domain callbacks are called unconditionally") Alan Stern <stern@rowland.harvard.edu> - 2016-01-19 19:30 +0100
  Re: Crash introduced by commit b8b2c7d845d5 ("base/platform: assert  that dev_pm_domain callbacks are called unconditionally") Uwe Kleine-König   <u.kleine-koenig@pengutronix.de> - 2016-01-19 20:10 +0100
    Re: Crash introduced by commit b8b2c7d845d5 ("base/platform: assert  that dev_pm_domain callbacks are called unconditionally") Greg Kroah-Hartman <gregkh@linuxfoundation.org> - 2016-01-19 21:00 +0100
    Re: Crash introduced by commit b8b2c7d845d5 ("base/platform: assert  that dev_pm_domain callbacks are called unconditionally") Alan Stern <stern@rowland.harvard.edu> - 2016-01-19 21:10 +0100

csiph-web