<feed xmlns='http://www.w3.org/2005/Atom'>
<title>litmus-rt.git/drivers/power, branch test</title>
<subtitle>The LITMUS^RT kernel.</subtitle>
<link rel='alternate' type='text/html' href='http://rtsrv.cs.unc.edu/cgit/cgit.cgi/litmus-rt.git/'/>
<entry>
<title>power_supply: Fix possible NULL pointer dereference on early uevent</title>
<updated>2015-07-21T17:10:03+00:00</updated>
<author>
<name>Krzysztof Kozlowski</name>
<email>k.kozlowski@samsung.com</email>
</author>
<published>2015-05-19T07:13:02+00:00</published>
<link rel='alternate' type='text/html' href='http://rtsrv.cs.unc.edu/cgit/cgit.cgi/litmus-rt.git/commit/?id=f6795f11a4dfb7fbbd4b34668271a553141c0aa7'/>
<id>f6795f11a4dfb7fbbd4b34668271a553141c0aa7</id>
<content type='text'>
commit 7f1a57fdd6cb6e7be2ed31878a34655df38e1861 upstream.

Don't call the power_supply_changed() from power_supply_register() when
parent is still probing because it may lead to accessing parent too
early.

In bq27x00_battery this caused NULL pointer exception because uevent of
power_supply_changed called back the the get_property() method provided
by the driver. The get_property() method accessed pointer which should
be returned by power_supply_register().

Starting from bq27x00_battery_probe():
  di-&gt;bat = power_supply_register()
    power_supply_changed()
      kobject_uevent()
        power_supply_uevent()
          power_supply_show_property()
            power_supply_get_property()
              bq27x00_battery_get_property()
                dereference of di-&gt;bat which is NULL here

The dereference of di-&gt;bat (value returned by power_supply_register())
is the currently visible problem. However calling back the methods
provided by driver before ending the probe may lead to accessing other
driver-related data which is not yet initialized.

The call to power_supply_changed() is postponed till probing ends -
mutex of parent device is released.

Reported-by: H. Nikolaus Schaller &lt;hns@goldelico.com&gt;
Signed-off-by: Krzysztof Kozlowski &lt;k.kozlowski@samsung.com&gt;
Fixes: 297d716f6260 ("power_supply: Change ownership from driver to core")
Tested-By: Dr. H. Nikolaus Schaller &lt;hns@goldelico.com&gt;
Signed-off-by: Sebastian Reichel &lt;sre@kernel.org&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;

</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
commit 7f1a57fdd6cb6e7be2ed31878a34655df38e1861 upstream.

Don't call the power_supply_changed() from power_supply_register() when
parent is still probing because it may lead to accessing parent too
early.

In bq27x00_battery this caused NULL pointer exception because uevent of
power_supply_changed called back the the get_property() method provided
by the driver. The get_property() method accessed pointer which should
be returned by power_supply_register().

Starting from bq27x00_battery_probe():
  di-&gt;bat = power_supply_register()
    power_supply_changed()
      kobject_uevent()
        power_supply_uevent()
          power_supply_show_property()
            power_supply_get_property()
              bq27x00_battery_get_property()
                dereference of di-&gt;bat which is NULL here

The dereference of di-&gt;bat (value returned by power_supply_register())
is the currently visible problem. However calling back the methods
provided by driver before ending the probe may lead to accessing other
driver-related data which is not yet initialized.

The call to power_supply_changed() is postponed till probing ends -
mutex of parent device is released.

Reported-by: H. Nikolaus Schaller &lt;hns@goldelico.com&gt;
Signed-off-by: Krzysztof Kozlowski &lt;k.kozlowski@samsung.com&gt;
Fixes: 297d716f6260 ("power_supply: Change ownership from driver to core")
Tested-By: Dr. H. Nikolaus Schaller &lt;hns@goldelico.com&gt;
Signed-off-by: Sebastian Reichel &lt;sre@kernel.org&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;

</pre>
</div>
</content>
</entry>
<entry>
<title>power_supply: Fix NULL pointer dereference during bq27x00_battery probe</title>
<updated>2015-07-21T17:10:03+00:00</updated>
<author>
<name>Krzysztof Kozlowski</name>
<email>k.kozlowski@samsung.com</email>
</author>
<published>2015-05-19T07:13:01+00:00</published>
<link rel='alternate' type='text/html' href='http://rtsrv.cs.unc.edu/cgit/cgit.cgi/litmus-rt.git/commit/?id=9f8e1f603600b300906e695d106a0e5cc39dcf82'/>
<id>9f8e1f603600b300906e695d106a0e5cc39dcf82</id>
<content type='text'>
commit 8e59c7f23410d5ca6b350a178b861a3d68c49edf upstream.

Power supply is often registered during probe of a driver. The
power_supply_register() returns pointer to newly allocated structure as
return value. However before returning the power_supply_register()
calls back the get_property() method provided by the driver through
uevent.

In that time the driver probe is still in progress and driver did not
assigned pointer to power supply to its local variables. This leads to
NULL pointer dereference from get_property() function.
Starting from bq27x00_battery_probe():
  di-&gt;bat = power_supply_register()
    device_add()
      kobject_uevent()
        power_supply_uevent()
          power_supply_show_property()
            power_supply_get_property()
              bq27x00_battery_get_property()
                dereference of (di-&gt;bat) which is NULL here

The first uevent of power supply (the one coming from device creation)
should not call back to the driver. To prevent that from happening,
increment the atomic use counter at the end of power_supply_register().
This means that power_supply_get_property() will return -ENODEV.

IMPORTANT:
The patch has impact on this first uevent sent from power supply because
it will not contain properties from power supply.

The uevent with properties will be sent later after indicating that
power supply has changed. This also has a race now, but will be fixed in
other patches.

Reported-by: H. Nikolaus Schaller &lt;hns@goldelico.com&gt;
Signed-off-by: Krzysztof Kozlowski &lt;k.kozlowski@samsung.com&gt;
Fixes: 297d716f6260 ("power_supply: Change ownership from driver to core")
Tested-By: Dr. H. Nikolaus Schaller &lt;hns@goldelico.com&gt;
Signed-off-by: Sebastian Reichel &lt;sre@kernel.org&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;

</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
commit 8e59c7f23410d5ca6b350a178b861a3d68c49edf upstream.

Power supply is often registered during probe of a driver. The
power_supply_register() returns pointer to newly allocated structure as
return value. However before returning the power_supply_register()
calls back the get_property() method provided by the driver through
uevent.

In that time the driver probe is still in progress and driver did not
assigned pointer to power supply to its local variables. This leads to
NULL pointer dereference from get_property() function.
Starting from bq27x00_battery_probe():
  di-&gt;bat = power_supply_register()
    device_add()
      kobject_uevent()
        power_supply_uevent()
          power_supply_show_property()
            power_supply_get_property()
              bq27x00_battery_get_property()
                dereference of (di-&gt;bat) which is NULL here

The first uevent of power supply (the one coming from device creation)
should not call back to the driver. To prevent that from happening,
increment the atomic use counter at the end of power_supply_register().
This means that power_supply_get_property() will return -ENODEV.

IMPORTANT:
The patch has impact on this first uevent sent from power supply because
it will not contain properties from power supply.

The uevent with properties will be sent later after indicating that
power supply has changed. This also has a race now, but will be fixed in
other patches.

Reported-by: H. Nikolaus Schaller &lt;hns@goldelico.com&gt;
Signed-off-by: Krzysztof Kozlowski &lt;k.kozlowski@samsung.com&gt;
Fixes: 297d716f6260 ("power_supply: Change ownership from driver to core")
Tested-By: Dr. H. Nikolaus Schaller &lt;hns@goldelico.com&gt;
Signed-off-by: Sebastian Reichel &lt;sre@kernel.org&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;

</pre>
</div>
</content>
</entry>
<entry>
<title>power: bq27x00_battery: Add missing MODULE_ALIAS</title>
<updated>2015-05-01T21:01:48+00:00</updated>
<author>
<name>Marek Belisko</name>
<email>marek@goldelico.com</email>
</author>
<published>2015-04-30T20:05:58+00:00</published>
<link rel='alternate' type='text/html' href='http://rtsrv.cs.unc.edu/cgit/cgit.cgi/litmus-rt.git/commit/?id=8ebb7e9c1a502cfc300618c19c3c6f06fc76d237'/>
<id>8ebb7e9c1a502cfc300618c19c3c6f06fc76d237</id>
<content type='text'>
Without MODULE_ALIAS bq27x00_battery module won't get loaded automatically.

Signed-off-by: Marek Belisko &lt;marek@goldelico.com&gt;
Signed-off-by: Sebastian Reichel &lt;sre@kernel.org&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Without MODULE_ALIAS bq27x00_battery module won't get loaded automatically.

Signed-off-by: Marek Belisko &lt;marek@goldelico.com&gt;
Signed-off-by: Sebastian Reichel &lt;sre@kernel.org&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>power: reset: Add MFD_SYSCON depends for brcmstb</title>
<updated>2015-05-01T20:48:28+00:00</updated>
<author>
<name>Florian Fainelli</name>
<email>f.fainelli@gmail.com</email>
</author>
<published>2015-04-30T19:55:02+00:00</published>
<link rel='alternate' type='text/html' href='http://rtsrv.cs.unc.edu/cgit/cgit.cgi/litmus-rt.git/commit/?id=0a73125d308c1453dada1e2998f1c7f68094c45f'/>
<id>0a73125d308c1453dada1e2998f1c7f68094c45f</id>
<content type='text'>
The Broadcom STB reboot driver depends on MFD_SYSCON, it uses
syscon_regmap_lookup_by_phandle() which will not lookup syscon phandles
if MFD_SYSCON is disabled, and instead will return -ENOSYS since it is
turned into an inline stub.

Fixes: 030494e75064c ("power: reset: Add reboot driver for brcmstb")
Signed-off-by: Florian Fainelli &lt;f.fainelli@gmail.com&gt;
Signed-off-by: Sebastian Reichel &lt;sre@kernel.org&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
The Broadcom STB reboot driver depends on MFD_SYSCON, it uses
syscon_regmap_lookup_by_phandle() which will not lookup syscon phandles
if MFD_SYSCON is disabled, and instead will return -ENOSYS since it is
turned into an inline stub.

Fixes: 030494e75064c ("power: reset: Add reboot driver for brcmstb")
Signed-off-by: Florian Fainelli &lt;f.fainelli@gmail.com&gt;
Signed-off-by: Sebastian Reichel &lt;sre@kernel.org&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>power: reset: ltc2952: Remove bogus hrtimer_start() return value checks</title>
<updated>2015-04-30T15:47:17+00:00</updated>
<author>
<name>Thomas Gleixner</name>
<email>tglx@linutronix.de</email>
</author>
<published>2015-04-14T21:09:20+00:00</published>
<link rel='alternate' type='text/html' href='http://rtsrv.cs.unc.edu/cgit/cgit.cgi/litmus-rt.git/commit/?id=d8818257d3befce6ce7da4c09112654914c3fd58'/>
<id>d8818257d3befce6ce7da4c09112654914c3fd58</id>
<content type='text'>
The return value of hrtimer_start() tells whether the timer was
inactive or active already when hrtimer_start() was called.

The code emits a bogus warning if the timer was active already
claiming that the timer could not be started.

Remove it.

Signed-off-by: Thomas Gleixner &lt;tglx@linutronix.de&gt;
Cc: Sebastian Reichel &lt;sre@kernel.org&gt;
Cc: Dmitry Eremin-Solenikov &lt;dbaryshkov@gmail.com&gt;
Cc: David Woodhouse &lt;dwmw2@infradead.org&gt;
Cc: Frans Klaver &lt;frans.klaver@xsens.com&gt;
Cc: "René Moll" &lt;linux@r-moll.nl&gt;
Cc: Wolfram Sang &lt;wsa@the-dreams.de&gt;
Cc: linux-pm@vger.kernel.org
Acked-by: Frans Klaver &lt;frans.klaver@xsens.com&gt;
Signed-off-by: Sebastian Reichel &lt;sre@kernel.org&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
The return value of hrtimer_start() tells whether the timer was
inactive or active already when hrtimer_start() was called.

The code emits a bogus warning if the timer was active already
claiming that the timer could not be started.

Remove it.

Signed-off-by: Thomas Gleixner &lt;tglx@linutronix.de&gt;
Cc: Sebastian Reichel &lt;sre@kernel.org&gt;
Cc: Dmitry Eremin-Solenikov &lt;dbaryshkov@gmail.com&gt;
Cc: David Woodhouse &lt;dwmw2@infradead.org&gt;
Cc: Frans Klaver &lt;frans.klaver@xsens.com&gt;
Cc: "René Moll" &lt;linux@r-moll.nl&gt;
Cc: Wolfram Sang &lt;wsa@the-dreams.de&gt;
Cc: linux-pm@vger.kernel.org
Acked-by: Frans Klaver &lt;frans.klaver@xsens.com&gt;
Signed-off-by: Sebastian Reichel &lt;sre@kernel.org&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>power_supply: fix oops in collie_battery driver</title>
<updated>2015-04-30T15:39:40+00:00</updated>
<author>
<name>Dmitry Eremin-Solenikov</name>
<email>dbaryshkov@gmail.com</email>
</author>
<published>2015-04-27T17:15:43+00:00</published>
<link rel='alternate' type='text/html' href='http://rtsrv.cs.unc.edu/cgit/cgit.cgi/litmus-rt.git/commit/?id=ce992369cf29a8762b46338756ef5aba35774981'/>
<id>ce992369cf29a8762b46338756ef5aba35774981</id>
<content type='text'>
Fix an oops happening due to typo in 297d716f6260cc9421d971b124ca196b957ee
[power_supply: Change ownership from driver to core].

Unable to handle kernel NULL pointer dereference at virtual address 00000050
pgd = c0004000
[00000050] *pgd=00000000
Internal error: Oops: 17 [#1] ARM
Modules linked in:
CPU: 0 PID: 1 Comm: swapper Not tainted 4.1.0-rc1+ #35
Hardware name: Sharp-Collie
task: c381a720 ti: c381e000 task.ti: c381e000
PC is at collie_bat_get_property+0x10/0x258
LR is at collie_bat_get_property+0x10/0x258
pc : [&lt;c0235d28&gt;]    lr : [&lt;c0235d28&gt;]    psr: 20000013
sp : c381fd60  ip : 00000001  fp : 00000000
r10: c37b84c0  r9 : c068c9b8  r8 : c37b84a0
r7 : c37b84c0  r6 : c381fd84  r5 : 00000000  r4 : 00000000
r3 : c0369380  r2 : c381fd84  r1 : 00000000  r0 : 00000000
Flags: nzCv  IRQs on  FIQs on  Mode SVC_32  ISA ARM  Segment kernel
Control: 0000717f  Table: c3784000  DAC: 00000017
Process swapper (pid: 1, stack limit = 0xc381e190)
Stack: (0xc381fd60 to 0xc3820000)
fd60: c0369380 00000000 c37c0000 c068c9b8 c37b84c0 c0234380 00000000 c0234bc0
fd80: c042fcec c37b84a0 c0357c64 00000000 c37b84c0 c37c0000 c37b84a0 c0234e98
fda0: c37be020 00000000 ff0a0004 c37b84c8 c37be020 c37b84c0 c042fcec c383dbc0
fdc0: c0364060 00000000 00000000 c01be6a8 00000000 c015b220 c37b84c8 c381fdf0
fde0: c37b84c8 c37b84c8 c37b84c8 c37be020 c041e278 c015b478 c04a45b4 c0045290
fe00: c381a720 c0345d50 00000001 c37bf020 c0e511d8 c00453c0 c0688058 c37b84c8
fe20: 00000000 c37b84c0 c37780c0 c0e511d8 c38e2f60 c0e52d24 c04a45b4 c01be134
fe40: c37b8550 c37b8550 00000000 c0347a8c c37b84a0 00000000 c37b84c0 c0369380
fe60: c37780c0 00000001 00000061 c02347a0 00000001 c0e52e6c c068d144 c37b77a0
fe80: 00000000 c068d164 00000000 c0235b3c 00000000 c067fbb4 00000000 c068d1e4
fea0: 00000000 00000000 00000000 00000000 00000000 00000000 c37b77a0 c068d144
fec0: c3778020 c06953c0 c049de68 c01d5f54 c0688800 c3778020 c068d144 c0688700
fee0: c06953c0 c01d6000 c0675b80 c0675b80 c37b77a0 c0009624 c381a720 c000d8dc
ff00: 00000001 c381ff54 c048a500 c00453c0 c00095a0 20000153 ffffffff c000d8dc
ff20: c049cbd0 00000001 c04aa064 00000007 c04a9fb0 00000006 c06953c0 c06953c0
ff40: c048a590 c04a45c0 c04a9ffc 00000006 c06953c0 c06953c0 c048a590 c04a45c0
ff60: 00000061 c048adf8 00000006 00000006 c048a590 c0036450 00000001 00000000
ff80: c00363ec 00000000 c033ee7c 00000000 00000000 00000000 00000000 00000000
ffa0: 00000000 c033ee84 00000000 c000a3c8 00000000 00000000 00000000 00000000
ffc0: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
ffe0: 00000000 00000000 00000000 00000000 00000013 00000000 00000000 00000000
[&lt;c0235d28&gt;] (collie_bat_get_property) from [&lt;c0234380&gt;] (power_supply_get_property+0x1c/0x28)
[&lt;c0234380&gt;] (power_supply_get_property) from [&lt;c0234bc0&gt;] (power_supply_show_property+0x50/0x1dc)
[&lt;c0234bc0&gt;] (power_supply_show_property) from [&lt;c0234e98&gt;] (power_supply_uevent+0x9c/0x1cc)
[&lt;c0234e98&gt;] (power_supply_uevent) from [&lt;c01be6a8&gt;] (dev_uevent+0xb4/0x1d0)
[&lt;c01be6a8&gt;] (dev_uevent) from [&lt;c015b478&gt;] (kobject_uevent_env+0x1cc/0x4f8)
[&lt;c015b478&gt;] (kobject_uevent_env) from [&lt;c01be134&gt;] (device_add+0x374/0x524)
[&lt;c01be134&gt;] (device_add) from [&lt;c02347a0&gt;] (__power_supply_register+0x120/0x180)
[&lt;c02347a0&gt;] (__power_supply_register) from [&lt;c0235b3c&gt;] (collie_bat_probe+0xe8/0x1b4)
[&lt;c0235b3c&gt;] (collie_bat_probe) from [&lt;c01d5f54&gt;] (ucb1x00_add_dev+0x30/0x88)
[&lt;c01d5f54&gt;] (ucb1x00_add_dev) from [&lt;c01d6000&gt;] (ucb1x00_register_driver+0x54/0x78)
[&lt;c01d6000&gt;] (ucb1x00_register_driver) from [&lt;c0009624&gt;] (do_one_initcall+0x84/0x1f4)
[&lt;c0009624&gt;] (do_one_initcall) from [&lt;c048adf8&gt;] (kernel_init_freeable+0xf8/0x1b4)
[&lt;c048adf8&gt;] (kernel_init_freeable) from [&lt;c033ee84&gt;] (kernel_init+0x8/0xec)
[&lt;c033ee84&gt;] (kernel_init) from [&lt;c000a3c8&gt;] (ret_from_fork+0x14/0x2c)
Code: e92d40f8 e1a05001 e1a06002 ebfff9bc (e5903050)
---[ end trace 447ee06b251d66b2 ]---

Fixes: 297d716f6260 ("power_supply: Change ownership from driver to core")
Signed-off-by: Dmitry Eremin-Solenikov &lt;dbaryshkov@gmail.com&gt;
Signed-off-by: Sebastian Reichel &lt;sre@kernel.org&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Fix an oops happening due to typo in 297d716f6260cc9421d971b124ca196b957ee
[power_supply: Change ownership from driver to core].

Unable to handle kernel NULL pointer dereference at virtual address 00000050
pgd = c0004000
[00000050] *pgd=00000000
Internal error: Oops: 17 [#1] ARM
Modules linked in:
CPU: 0 PID: 1 Comm: swapper Not tainted 4.1.0-rc1+ #35
Hardware name: Sharp-Collie
task: c381a720 ti: c381e000 task.ti: c381e000
PC is at collie_bat_get_property+0x10/0x258
LR is at collie_bat_get_property+0x10/0x258
pc : [&lt;c0235d28&gt;]    lr : [&lt;c0235d28&gt;]    psr: 20000013
sp : c381fd60  ip : 00000001  fp : 00000000
r10: c37b84c0  r9 : c068c9b8  r8 : c37b84a0
r7 : c37b84c0  r6 : c381fd84  r5 : 00000000  r4 : 00000000
r3 : c0369380  r2 : c381fd84  r1 : 00000000  r0 : 00000000
Flags: nzCv  IRQs on  FIQs on  Mode SVC_32  ISA ARM  Segment kernel
Control: 0000717f  Table: c3784000  DAC: 00000017
Process swapper (pid: 1, stack limit = 0xc381e190)
Stack: (0xc381fd60 to 0xc3820000)
fd60: c0369380 00000000 c37c0000 c068c9b8 c37b84c0 c0234380 00000000 c0234bc0
fd80: c042fcec c37b84a0 c0357c64 00000000 c37b84c0 c37c0000 c37b84a0 c0234e98
fda0: c37be020 00000000 ff0a0004 c37b84c8 c37be020 c37b84c0 c042fcec c383dbc0
fdc0: c0364060 00000000 00000000 c01be6a8 00000000 c015b220 c37b84c8 c381fdf0
fde0: c37b84c8 c37b84c8 c37b84c8 c37be020 c041e278 c015b478 c04a45b4 c0045290
fe00: c381a720 c0345d50 00000001 c37bf020 c0e511d8 c00453c0 c0688058 c37b84c8
fe20: 00000000 c37b84c0 c37780c0 c0e511d8 c38e2f60 c0e52d24 c04a45b4 c01be134
fe40: c37b8550 c37b8550 00000000 c0347a8c c37b84a0 00000000 c37b84c0 c0369380
fe60: c37780c0 00000001 00000061 c02347a0 00000001 c0e52e6c c068d144 c37b77a0
fe80: 00000000 c068d164 00000000 c0235b3c 00000000 c067fbb4 00000000 c068d1e4
fea0: 00000000 00000000 00000000 00000000 00000000 00000000 c37b77a0 c068d144
fec0: c3778020 c06953c0 c049de68 c01d5f54 c0688800 c3778020 c068d144 c0688700
fee0: c06953c0 c01d6000 c0675b80 c0675b80 c37b77a0 c0009624 c381a720 c000d8dc
ff00: 00000001 c381ff54 c048a500 c00453c0 c00095a0 20000153 ffffffff c000d8dc
ff20: c049cbd0 00000001 c04aa064 00000007 c04a9fb0 00000006 c06953c0 c06953c0
ff40: c048a590 c04a45c0 c04a9ffc 00000006 c06953c0 c06953c0 c048a590 c04a45c0
ff60: 00000061 c048adf8 00000006 00000006 c048a590 c0036450 00000001 00000000
ff80: c00363ec 00000000 c033ee7c 00000000 00000000 00000000 00000000 00000000
ffa0: 00000000 c033ee84 00000000 c000a3c8 00000000 00000000 00000000 00000000
ffc0: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
ffe0: 00000000 00000000 00000000 00000000 00000013 00000000 00000000 00000000
[&lt;c0235d28&gt;] (collie_bat_get_property) from [&lt;c0234380&gt;] (power_supply_get_property+0x1c/0x28)
[&lt;c0234380&gt;] (power_supply_get_property) from [&lt;c0234bc0&gt;] (power_supply_show_property+0x50/0x1dc)
[&lt;c0234bc0&gt;] (power_supply_show_property) from [&lt;c0234e98&gt;] (power_supply_uevent+0x9c/0x1cc)
[&lt;c0234e98&gt;] (power_supply_uevent) from [&lt;c01be6a8&gt;] (dev_uevent+0xb4/0x1d0)
[&lt;c01be6a8&gt;] (dev_uevent) from [&lt;c015b478&gt;] (kobject_uevent_env+0x1cc/0x4f8)
[&lt;c015b478&gt;] (kobject_uevent_env) from [&lt;c01be134&gt;] (device_add+0x374/0x524)
[&lt;c01be134&gt;] (device_add) from [&lt;c02347a0&gt;] (__power_supply_register+0x120/0x180)
[&lt;c02347a0&gt;] (__power_supply_register) from [&lt;c0235b3c&gt;] (collie_bat_probe+0xe8/0x1b4)
[&lt;c0235b3c&gt;] (collie_bat_probe) from [&lt;c01d5f54&gt;] (ucb1x00_add_dev+0x30/0x88)
[&lt;c01d5f54&gt;] (ucb1x00_add_dev) from [&lt;c01d6000&gt;] (ucb1x00_register_driver+0x54/0x78)
[&lt;c01d6000&gt;] (ucb1x00_register_driver) from [&lt;c0009624&gt;] (do_one_initcall+0x84/0x1f4)
[&lt;c0009624&gt;] (do_one_initcall) from [&lt;c048adf8&gt;] (kernel_init_freeable+0xf8/0x1b4)
[&lt;c048adf8&gt;] (kernel_init_freeable) from [&lt;c033ee84&gt;] (kernel_init+0x8/0xec)
[&lt;c033ee84&gt;] (kernel_init) from [&lt;c000a3c8&gt;] (ret_from_fork+0x14/0x2c)
Code: e92d40f8 e1a05001 e1a06002 ebfff9bc (e5903050)
---[ end trace 447ee06b251d66b2 ]---

Fixes: 297d716f6260 ("power_supply: Change ownership from driver to core")
Signed-off-by: Dmitry Eremin-Solenikov &lt;dbaryshkov@gmail.com&gt;
Signed-off-by: Sebastian Reichel &lt;sre@kernel.org&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>power/reset: at91: fix return value check in at91_reset_platform_probe()</title>
<updated>2015-04-30T15:33:52+00:00</updated>
<author>
<name>Wei Yongjun</name>
<email>yongjun_wei@trendmicro.com.cn</email>
</author>
<published>2015-04-16T12:19:43+00:00</published>
<link rel='alternate' type='text/html' href='http://rtsrv.cs.unc.edu/cgit/cgit.cgi/litmus-rt.git/commit/?id=932df43005389300a3336421e4aedb25390ae144'/>
<id>932df43005389300a3336421e4aedb25390ae144</id>
<content type='text'>
In case of error, the function devm_ioremap() returns NULL
not ERR_PTR(). The IS_ERR() test in the return value check
should be replaced with NULL test.

Fixes: ecfe64d8c55f ("power: reset: Add AT91 reset driver")
Signed-off-by: Wei Yongjun &lt;yongjun_wei@trendmicro.com.cn&gt;
Signed-off-by: Sebastian Reichel &lt;sre@kernel.org&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
In case of error, the function devm_ioremap() returns NULL
not ERR_PTR(). The IS_ERR() test in the return value check
should be replaced with NULL test.

Fixes: ecfe64d8c55f ("power: reset: Add AT91 reset driver")
Signed-off-by: Wei Yongjun &lt;yongjun_wei@trendmicro.com.cn&gt;
Signed-off-by: Sebastian Reichel &lt;sre@kernel.org&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>axp288_fuel_gauge: Add original author details</title>
<updated>2015-04-30T15:19:55+00:00</updated>
<author>
<name>Ramakrishna Pallala</name>
<email>ramakrishna.pallala@intel.com</email>
</author>
<published>2015-03-13T16:19:09+00:00</published>
<link rel='alternate' type='text/html' href='http://rtsrv.cs.unc.edu/cgit/cgit.cgi/litmus-rt.git/commit/?id=409e718e09885de78cebcb57f0f908eaed5304df'/>
<id>409e718e09885de78cebcb57f0f908eaed5304df</id>
<content type='text'>
Add the original author details of the axp288_fuel_gauge driver.

Signed-off-by: Ramakrishna Pallala &lt;ramakrishna.pallala@intel.com&gt;
Acked-by: Todd Brandt &lt;todd.e.brandt@linux.intel.com&gt;
Signed-off-by: Sebastian Reichel &lt;sre@kernel.org&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Add the original author details of the axp288_fuel_gauge driver.

Signed-off-by: Ramakrishna Pallala &lt;ramakrishna.pallala@intel.com&gt;
Acked-by: Todd Brandt &lt;todd.e.brandt@linux.intel.com&gt;
Signed-off-by: Sebastian Reichel &lt;sre@kernel.org&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>power: twl4030_madc_battery: Add missing MODULE_ALIAS</title>
<updated>2015-04-06T17:39:57+00:00</updated>
<author>
<name>Marek Belisko</name>
<email>marek@goldelico.com</email>
</author>
<published>2015-03-10T21:27:27+00:00</published>
<link rel='alternate' type='text/html' href='http://rtsrv.cs.unc.edu/cgit/cgit.cgi/litmus-rt.git/commit/?id=5939d9dfe4406a49d8688eb827d88abcaf233c42'/>
<id>5939d9dfe4406a49d8688eb827d88abcaf233c42</id>
<content type='text'>
Without MODULE_ALIAS twl4030_madc_battery won't get loaded automatically.

Signed-off-by: Marek Belisko &lt;marek@goldelico.com&gt;
Signed-off-by: Sebastian Reichel &lt;sre@kernel.org&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Without MODULE_ALIAS twl4030_madc_battery won't get loaded automatically.

Signed-off-by: Marek Belisko &lt;marek@goldelico.com&gt;
Signed-off-by: Sebastian Reichel &lt;sre@kernel.org&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>power: twl4030-madc-battery: Convert to iio consumer.</title>
<updated>2015-04-06T17:18:43+00:00</updated>
<author>
<name>Marek Belisko</name>
<email>marek@goldelico.com</email>
</author>
<published>2015-03-10T21:27:22+00:00</published>
<link rel='alternate' type='text/html' href='http://rtsrv.cs.unc.edu/cgit/cgit.cgi/litmus-rt.git/commit/?id=7e5e43893d24b44507f8239a07064596401820d8'/>
<id>7e5e43893d24b44507f8239a07064596401820d8</id>
<content type='text'>
Because of added iio error handling private data allocation was converted
to managed to simplify code.

Signed-off-by: Marek Belisko &lt;marek@goldelico.com&gt;
Reviewed-By: Sebastian Reichel &lt;sre@debian.org&gt;
Signed-off-by: Sebastian Reichel &lt;sre@kernel.org&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Because of added iio error handling private data allocation was converted
to managed to simplify code.

Signed-off-by: Marek Belisko &lt;marek@goldelico.com&gt;
Reviewed-By: Sebastian Reichel &lt;sre@debian.org&gt;
Signed-off-by: Sebastian Reichel &lt;sre@kernel.org&gt;
</pre>
</div>
</content>
</entry>
</feed>
