Thread (7 messages) 7 messages, 3 authors, 2013-11-18

Re: [PATCH] power: Change device_wakeup_enable() to check for null dev_name(dev)

From: Rafael J. Wysocki <hidden>
Date: 2013-11-16 00:19:41
Also in: lkml, stable

On Friday, November 15, 2013 05:16:31 PM Shuah Khan wrote:
On 11/15/2013 05:21 PM, Rafael J. Wysocki wrote:
quoted
On Friday, November 15, 2013 05:03:57 PM Shuah Khan wrote:
quoted
device_wakeup_enable() uses dev_name(dev) as the wakeup source name.
When it gets called with a device with its name not yet set, ws structure
with ws->name = NULL gets created.

When kernel is booted with wakeup_source_activate enabled, it will panic
when the trace point code tries to derefernces ws->name.

Change device_wakeup_enable() to check for dev_name(dev) null condition
and return -EINVAL to avoid panics when device_wakeup_enable() gets called
before device is fully initialized with its name.
  		return -EINVAL;
quoted
Can you please use WARN_ON(!dev_name(dev)) here?  While I agree that it is a
bad idea to crash the kernel because dev has no name, that indicates a driver
bug that shouldn't be too easy to ignore.

Thanks!
Right. ok I will re-cut the patch with WARN_ON and send it. fyi I did 
send fix for the driver (power_supply) as well.

http://www.kernelhub.org/?msg=362354&p=2
That's OK (thanks for taking care of this), but there may be more brilliant
stuff like that in the future and people should see right away that something's
wrong in those cases.

Rafael
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help