OpenCloudOS-Kernel/drivers/leds
Simon Guinot 0c86ac2c50 leds: netxbig: fix oops at probe time
This patch fixes a NULL pointer dereference on led_dat->mode_val. Due to
this bug, a kernel oops can be observed at probe time on the LaCie 2Big
and 5Big v2 boards:

Unable to handle kernel NULL pointer dereference at virtual address 00000008
[...]
[<c03f244c>] (netxbig_led_probe) from [<c02c8c6c>] (platform_drv_probe+0x4c/0x9c)
[<c02c8c6c>] (platform_drv_probe) from [<c02c72d0>] (driver_probe_device+0x98/0x25c)
[<c02c72d0>] (driver_probe_device) from [<c02c7520>] (__driver_attach+0x8c/0x90)
[<c02c7520>] (__driver_attach) from [<c02c5c24>] (bus_for_each_dev+0x68/0x94)
[<c02c5c24>] (bus_for_each_dev) from [<c02c6408>] (bus_add_driver+0x124/0x1dc)
[<c02c6408>] (bus_add_driver) from [<c02c7ac0>] (driver_register+0x78/0xf8)
[<c02c7ac0>] (driver_register) from [<c000888c>] (do_one_initcall+0x80/0x1cc)
[<c000888c>] (do_one_initcall) from [<c0733618>] (kernel_init_freeable+0xe4/0x1b4)
[<c0733618>] (kernel_init_freeable) from [<c058db9c>] (kernel_init+0xc/0xec)
[<c058db9c>] (kernel_init) from [<c0009850>] (ret_from_fork+0x14/0x24)
[...]

This bug was introduced by commit 588a6a9928
("leds: netxbig: fix attribute-creation race").

Signed-off-by: Simon Guinot <simon.guinot@sequanux.org>
Cc: <stable@vger.kernel.org> # 3.17+
Acked-by: Johan Hovold <johan@kernel.org>
Signed-off-by: Bryan Wu <cooloney@gmail.com>
2015-01-13 13:49:01 -08:00
..
trigger leds: Add support for setting brightness in a synchronous way 2014-11-14 14:29:35 -08:00
Kconfig leds: lp8860: Fix module dependency 2014-12-01 14:49:42 -08:00
Makefile leds: lp8860: Introduce TI lp8860 4 channel LED driver 2014-11-19 10:33:06 -08:00
dell-led.c dell-led: add mic mute led interface 2014-05-08 14:28:07 +08:00
led-class.c leds: Add support for setting brightness in a synchronous way 2014-11-14 14:29:35 -08:00
led-core.c leds: Add support for setting brightness in a synchronous way 2014-11-14 14:29:35 -08:00
led-triggers.c leds: implement sysfs interface locking mechanism 2014-11-14 14:29:35 -08:00
leds-88pm860x.c leds: drop owner assignment from platform_drivers 2014-10-20 16:20:43 +02:00
leds-adp5520.c leds: drop owner assignment from platform_drivers 2014-10-20 16:20:43 +02:00
leds-asic3.c leds: drop owner assignment from platform_drivers 2014-10-20 16:20:43 +02:00
leds-bd2802.c leds: Remove duplicated OOM message for individual driver 2014-05-08 14:28:08 +08:00
leds-blinkm.c leds: blinkm: remove unnecessary spaces 2014-02-27 10:19:57 -08:00
leds-clevo-mail.c leds: drop owner assignment from platform_drivers 2014-10-20 16:20:43 +02:00
leds-cobalt-qube.c leds: drop owner assignment from platform_drivers 2014-10-20 16:20:43 +02:00
leds-cobalt-raq.c leds: drop owner assignment from platform_drivers 2014-10-20 16:20:43 +02:00
leds-da903x.c leds: drop owner assignment from platform_drivers 2014-10-20 16:20:43 +02:00
leds-da9052.c leds: drop owner assignment from platform_drivers 2014-10-20 16:20:43 +02:00
leds-dac124s085.c leds: dac124s085: Remove redundant spi_set_drvdata 2013-10-22 10:57:34 -07:00
leds-fsg.c drivers/leds: delete non-required instances of include <linux/init.h> 2014-02-27 09:56:56 -08:00
leds-gpio-register.c led: gpio: Fix possible ZERO_SIZE_PTR pointer dereferencing error. 2014-09-29 10:21:01 -07:00
leds-gpio.c More ACPI and power management updates for 3.19-rc1 2014-12-18 20:28:33 -08:00
leds-hp6xx.c leds: drop owner assignment from platform_drivers 2014-10-20 16:20:43 +02:00
leds-ipaq-micro.c leds: ipaq-micro: fix sparse non static symbol warning 2014-07-29 10:57:20 -07:00
leds-lm355x.c leds: lm355x: fix attribute-creation race 2014-06-25 15:10:54 -07:00
leds-lm3530.c leds: lm3550: fix attribute-creation race 2014-06-25 15:00:55 -07:00
leds-lm3533.c leds: drop owner assignment from platform_drivers 2014-10-20 16:20:43 +02:00
leds-lm3642.c leds: lm3642: fix attribute-creation race 2014-06-25 15:13:08 -07:00
leds-locomo.c drivers/leds: Add module.h to files using it implicitly 2011-10-31 19:31:49 -04:00
leds-lp55xx-common.c leds: lp55xx-common: fix attribute-creation race 2014-06-27 13:44:05 -07:00
leds-lp55xx-common.h leds: lp55xx: add common macros for device attributes 2013-08-26 17:22:12 -07:00
leds-lp3944.c leds: lp3944: fix sparse warning 2014-09-11 16:55:27 -07:00
leds-lp5521.c drivers/leds: delete non-required instances of include <linux/init.h> 2014-02-27 09:56:56 -08:00
leds-lp5523.c leds: lp55xx: add DT bindings for LP55231 2014-05-08 14:28:08 +08:00
leds-lp5562.c leds: lp5562: remove unnecessary parentheses 2014-02-27 10:17:15 -08:00
leds-lp8501.c lp5523, lp8501: comment improvements 2014-01-10 11:44:44 +01:00
leds-lp8788.c leds: drop owner assignment from platform_drivers 2014-10-20 16:20:43 +02:00
leds-lp8860.c leds: lp8860: Introduce TI lp8860 4 channel LED driver 2014-11-19 10:33:06 -08:00
leds-lt3593.c leds: drop owner assignment from platform_drivers 2014-10-20 16:20:43 +02:00
leds-max8997.c leds: drop owner assignment from platform_drivers 2014-10-20 16:20:43 +02:00
leds-mc13783.c leds: drop owner assignment from platform_drivers 2014-10-20 16:20:43 +02:00
leds-menf21bmc.c leds: drop owner assignment from platform_drivers 2014-10-20 16:20:43 +02:00
leds-net48xx.c leds: drop owner assignment from platform_drivers 2014-10-20 16:20:43 +02:00
leds-netxbig.c leds: netxbig: fix oops at probe time 2015-01-13 13:49:01 -08:00
leds-ns2.c leds: drop owner assignment from platform_drivers 2014-10-20 16:20:43 +02:00
leds-ot200.c leds: drop owner assignment from platform_drivers 2014-10-20 16:20:43 +02:00
leds-pca955x.c leds: use dev_get_platdata() 2013-08-26 17:22:11 -07:00
leds-pca963x.c leds:pca963x: Always initialize MODE2 register 2014-07-03 11:55:56 -07:00
leds-pca9532.c driver:gpio remove all usage of gpio_remove retval in driver 2014-09-18 11:03:10 -07:00
leds-pwm.c leds: drop owner assignment from platform_drivers 2014-10-20 16:20:43 +02:00
leds-rb532.c leds: drop owner assignment from platform_drivers 2014-10-20 16:20:43 +02:00
leds-regulator.c Merge branch 'for-next' of git://git.kernel.org/pub/scm/linux/kernel/git/cooloney/linux-leds 2014-12-15 18:28:25 -08:00
leds-s3c24xx.c leds: drop owner assignment from platform_drivers 2014-10-20 16:20:43 +02:00
leds-ss4200.c leds: ss4200: fix attribute-creation race 2014-06-25 15:34:24 -07:00
leds-sunfire.c leds: drop owner assignment from platform_drivers 2014-10-20 16:20:43 +02:00
leds-syscon.c leds: syscon: handle multiple syscon instances 2014-11-14 14:29:35 -08:00
leds-tca6507.c driver:gpio remove all usage of gpio_remove retval in driver 2014-09-18 11:03:10 -07:00
leds-versatile.c ARM/leds: move ARM Versatile LED driver to leds subsystem 2014-03-28 10:54:15 +01:00
leds-wm831x-status.c leds: drop owner assignment from platform_drivers 2014-10-20 16:20:43 +02:00
leds-wm8350.c leds: drop owner assignment from platform_drivers 2014-10-20 16:20:43 +02:00
leds-wrap.c leds: drop owner assignment from platform_drivers 2014-10-20 16:20:43 +02:00
leds.h leds: Add support for setting brightness in a synchronous way 2014-11-14 14:29:35 -08:00