Ricardo Ribalda Delgado
11f33a6d15
gpiolib: Fix NULL pointer deference
...
Under some circumstances, a gpiochip might be half cleaned from the
gpio_device list.
This patch makes sure that the chip pointer is still valid, before
calling the match function.
[ 104.088296] BUG: unable to handle kernel NULL pointer dereference at
0000000000000090
[ 104.089772] IP: [<ffffffff813d2045>] of_gpiochip_find_and_xlate+0x15/0x80
[ 104.128273] Call Trace:
[ 104.129802] [<ffffffff813d2030>] ? of_parse_own_gpio+0x1f0/0x1f0
[ 104.131353] [<ffffffff813cd910>] gpiochip_find+0x60/0x90
[ 104.132868] [<ffffffff813d21ba>] of_get_named_gpiod_flags+0x9a/0x120
...
[ 104.141586] [<ffffffff8163d12b>] gpio_led_probe+0x11b/0x360
Cc: stable@vger.kernel.org
Signed-off-by: Ricardo Ribalda Delgado <ricardo.ribalda@gmail.com >
Signed-off-by: Linus Walleij <linus.walleij@linaro.org >
2016-06-08 10:38:03 +02:00
..
2016-02-25 10:04:25 +01:00
2016-03-31 10:25:51 +02:00
2016-02-23 20:19:42 +05:30
2016-06-08 10:08:12 +02:00
2016-05-02 09:32:04 -07:00
2016-05-02 09:32:04 -07:00
2016-02-23 20:19:46 +05:30
2016-02-23 20:34:06 +05:30
2016-02-23 20:34:24 +05:30
2016-01-27 10:50:22 +01:00
2016-02-16 00:19:52 +01:00
2016-03-30 10:38:51 +02:00
2016-02-23 20:34:29 +05:30
2016-02-25 15:20:43 +01:00
2016-03-31 12:01:15 +02:00
2016-04-15 10:09:48 +02:00
2016-01-05 11:21:03 +01:00
2016-02-23 20:35:27 +05:30
2016-02-23 20:35:27 +05:30
2016-02-23 20:35:28 +05:30
2016-02-23 20:35:29 +05:30
2016-02-23 20:35:29 +05:30
2016-02-22 13:47:49 +01:00
2016-02-23 20:35:30 +05:30
2016-05-11 11:32:39 +02:00
2016-01-05 11:21:05 +01:00
2016-02-23 20:35:30 +05:30
2016-01-05 11:21:00 +01:00
2016-04-18 13:32:20 +02:00
2016-02-23 20:35:31 +05:30
2016-01-05 11:21:00 +01:00
2016-02-16 00:19:53 +01:00
2016-01-05 11:21:05 +01:00
2016-02-23 20:35:32 +05:30
2016-03-31 11:59:43 +02:00
2016-02-23 20:35:33 +05:30
2016-02-23 20:35:34 +05:30
2016-02-19 00:20:30 +01:00
2016-04-09 20:14:35 +02:00
2016-01-05 11:21:20 +01:00
2016-03-09 22:00:27 +07:00
2016-01-05 11:21:06 +01:00
2016-05-30 09:42:03 +02:00
2016-02-23 20:35:35 +05:30
2016-01-05 11:21:07 +01:00
2016-01-05 11:21:07 +01:00
2015-11-30 09:31:00 +01:00
2015-10-28 10:30:17 +09:00
2016-03-31 15:00:28 +02:00
2016-03-31 15:02:09 +02:00
2016-01-05 11:21:07 +01:00
2016-03-31 10:41:50 +02:00
2016-05-17 17:39:42 -07:00
2016-01-05 11:21:08 +01:00
2016-01-13 10:21:06 +01:00
2016-04-29 16:14:32 +02:00
2016-03-31 15:03:13 +02:00
2016-03-09 10:44:13 +07:00
2016-02-16 00:20:03 +01:00
2016-01-05 11:21:09 +01:00
2016-03-31 15:05:44 +02:00
2016-02-23 20:35:37 +05:30
2016-01-05 11:21:00 +01:00
2016-03-30 10:38:51 +02:00
2016-04-26 15:56:47 +02:00
2016-04-05 17:02:36 +02:00
2016-05-17 17:39:42 -07:00
2016-02-23 20:35:39 +05:30
2016-01-05 15:46:34 +01:00
2016-02-25 15:20:46 +01:00
2016-04-28 14:36:37 +02:00
2016-04-08 10:10:08 +02:00
2016-04-05 17:02:35 +02:00
2016-05-17 17:39:42 -07:00
2016-02-23 20:35:41 +05:30
2016-01-05 11:21:20 +01:00
2016-02-16 00:19:53 +01:00
2016-02-23 20:35:41 +05:30
2016-05-11 13:46:49 +02:00
2016-02-23 20:35:42 +05:30
2016-03-31 15:07:40 +02:00
2016-05-11 13:48:03 +02:00
2016-02-23 20:35:43 +05:30
2016-04-14 14:03:26 +02:00
2016-02-23 20:35:44 +05:30
2016-02-23 20:35:44 +05:30
2016-04-05 17:02:35 +02:00
2016-04-30 13:15:10 +02:00
2016-05-11 13:49:11 +02:00
2016-03-31 15:14:37 +02:00
2016-04-05 17:02:37 +02:00
2016-03-16 08:50:33 +00:00
2016-04-14 14:03:25 +02:00
2016-04-05 17:02:37 +02:00
2016-03-09 22:02:52 +07:00
2016-02-25 15:20:44 +01:00
2016-02-23 20:35:49 +05:30
2016-01-05 11:21:16 +01:00
2016-02-23 20:35:50 +05:30
2016-01-05 11:21:16 +01:00
2016-01-05 11:21:16 +01:00
2016-02-23 20:35:50 +05:30
2016-01-05 11:21:17 +01:00
2016-02-23 20:35:51 +05:30
2016-01-05 11:21:20 +01:00
2016-04-14 14:03:28 +02:00
2016-04-14 14:03:28 +02:00
2016-02-23 20:35:52 +05:30
2016-04-14 14:03:29 +02:00
2016-05-02 09:32:04 -07:00
2016-03-31 10:22:53 +02:00
2016-05-17 17:39:42 -07:00
2016-01-07 10:06:56 +01:00
2016-05-27 15:26:11 -07:00
2016-01-05 11:21:20 +01:00
2016-05-11 13:50:01 +02:00
2016-03-31 15:10:25 +02:00
2016-06-08 10:36:29 +02:00
2016-04-30 13:51:59 +02:00
2015-10-16 22:46:46 +02:00
2016-05-10 13:43:48 +02:00
2016-02-25 16:08:45 +01:00
2016-06-08 10:38:03 +02:00
2016-04-26 10:51:36 +02:00
2016-05-20 21:26:15 -07:00
2016-04-29 16:14:32 +02:00