Nikita Shubin
33afcf723a
rtc: ep93xx: Fix NULL pointer dereference in ep93xx_rtc_read_time
...
commit 00c33482bb6110bce8110daa351f9b3baf4df7dc upstream.
Mismatch in probe platform_set_drvdata set's and method's that call
dev_get_platdata will result in "Unable to handle kernel NULL pointer
dereference", let's use according method for getting driver data after
platform_set_drvdata.
8<--- cut here ---
Unable to handle kernel NULL pointer dereference at virtual address 00000000
pgd = (ptrval)
[00000000] *pgd=00000000
Internal error: Oops: 5 [#1 ] ARM
Modules linked in:
CPU: 0 PID: 1 Comm: swapper Not tainted 5.9.10-00003-g723e101e0037-dirty #4
Hardware name: Technologic Systems TS-72xx SBC
PC is at ep93xx_rtc_read_time+0xc/0x2c
LR is at __rtc_read_time+0x4c/0x8c
[...]
[<c02b01c8>] (ep93xx_rtc_read_time) from [<c02ac38c>] (__rtc_read_time+0x4c/0x8c)
[<c02ac38c>] (__rtc_read_time) from [<c02ac3f8>] (rtc_read_time+0x2c/0x4c)
[<c02ac3f8>] (rtc_read_time) from [<c02acc54>] (__rtc_read_alarm+0x28/0x358)
[<c02acc54>] (__rtc_read_alarm) from [<c02abd80>] (__rtc_register_device+0x124/0x2ec)
[<c02abd80>] (__rtc_register_device) from [<c02b028c>] (ep93xx_rtc_probe+0xa4/0xac)
[<c02b028c>] (ep93xx_rtc_probe) from [<c026424c>] (platform_drv_probe+0x24/0x5c)
[<c026424c>] (platform_drv_probe) from [<c0262918>] (really_probe+0x218/0x374)
[<c0262918>] (really_probe) from [<c0262da0>] (device_driver_attach+0x44/0x60)
[<c0262da0>] (device_driver_attach) from [<c0262e70>] (__driver_attach+0xb4/0xc0)
[<c0262e70>] (__driver_attach) from [<c0260d44>] (bus_for_each_dev+0x68/0xac)
[<c0260d44>] (bus_for_each_dev) from [<c026223c>] (driver_attach+0x18/0x24)
[<c026223c>] (driver_attach) from [<c0261dd8>] (bus_add_driver+0x150/0x1b4)
[<c0261dd8>] (bus_add_driver) from [<c026342c>] (driver_register+0xb0/0xf4)
[<c026342c>] (driver_register) from [<c0264210>] (__platform_driver_register+0x30/0x48)
[<c0264210>] (__platform_driver_register) from [<c04cb9ac>] (ep93xx_rtc_driver_init+0x10/0x1c)
[<c04cb9ac>] (ep93xx_rtc_driver_init) from [<c000973c>] (do_one_initcall+0x7c/0x1c0)
[<c000973c>] (do_one_initcall) from [<c04b9ecc>] (kernel_init_freeable+0x168/0x1ac)
[<c04b9ecc>] (kernel_init_freeable) from [<c03b2228>] (kernel_init+0x8/0xf4)
[<c03b2228>] (kernel_init) from [<c00082c0>] (ret_from_fork+0x14/0x34)
Exception stack(0xc441dfb0 to 0xc441dff8)
dfa0: 00000000 00000000 00000000 00000000
dfc0: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
dfe0: 00000000 00000000 00000000 00000000 00000013 00000000
Code: e12fff1e e92d4010 e590303c e1a02001 (e5933000)
---[ end trace c914d6030eaa95c8 ]---
Fixes: b809d192eb98 ("rtc: ep93xx: stop setting platform_data")
Signed-off-by: Nikita Shubin <nikita.shubin@maquefel.me>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
Cc: stable@vger.kernel.org
Link: https://lore.kernel.org/r/20201201095507.10317-1-nikita.shubin@maquefel.me
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2020-12-30 11:51:47 +01:00
..
2019-08-20 21:44:45 +02:00
2019-04-04 10:07:08 +02:00
2019-04-04 10:07:08 +02:00
2019-12-17 19:56:52 +01:00
2020-03-25 08:25:56 +01:00
2019-04-06 15:05:31 +02:00
2019-08-23 16:20:50 +02:00
2019-04-04 10:07:08 +02:00
2019-04-04 10:07:08 +02:00
2019-08-21 09:57:23 +02:00
2020-04-23 10:36:31 +02:00
2019-04-11 16:42:55 +02:00
2019-05-30 11:29:22 -07:00
2019-04-04 10:07:08 +02:00
2019-08-21 09:57:23 +02:00
2019-03-18 03:36:01 +01:00
2019-08-21 09:57:23 +02:00
2019-08-21 09:57:23 +02:00
2019-05-30 11:26:37 -07:00
2019-08-13 10:53:10 +02:00
2019-08-21 09:57:23 +02:00
2019-08-13 10:53:10 +02:00
2019-05-30 11:26:32 -07:00
2019-08-13 10:53:10 +02:00
2018-03-02 10:09:58 +01:00
2020-01-26 10:01:06 +01:00
2019-06-19 17:09:55 +02:00
2019-05-21 10:50:45 +02:00
2020-01-17 19:49:03 +01:00
2019-08-21 09:57:23 +02:00
2020-02-14 16:34:12 -05:00
2019-04-08 14:40:12 +02:00
2018-09-28 14:20:59 +02:00
2019-05-30 11:26:41 -07:00
2019-09-02 11:33:42 +01:00
2019-05-30 11:26:32 -07:00
2019-05-30 11:26:32 -07:00
2019-05-09 14:46:33 -07:00
2019-08-13 10:53:10 +02:00
2019-05-08 22:14:31 +02:00
2019-04-04 10:07:09 +02:00
2019-05-21 10:50:45 +02:00
2019-05-30 11:26:32 -07:00
2019-06-05 17:37:10 +02:00
2019-08-21 09:57:23 +02:00
2019-07-17 10:03:50 -07:00
2019-06-19 17:09:55 +02:00
2019-06-19 17:09:55 +02:00
2020-10-01 13:17:43 +02:00
2019-06-19 17:09:55 +02:00
2019-06-19 17:09:55 +02:00
2019-06-19 17:09:55 +02:00
2019-08-21 09:57:23 +02:00
2019-06-19 17:09:55 +02:00
2019-06-19 17:09:55 +02:00
2019-05-23 17:42:25 +02:00
2019-05-30 11:26:32 -07:00
2019-05-30 11:26:32 -07:00
2019-06-19 17:09:55 +02:00
2020-12-30 11:51:47 +01:00
2019-07-17 10:03:50 -07:00
2019-08-23 16:20:50 +02:00
2019-05-30 11:26:37 -07:00
2019-05-21 10:50:45 +02:00
2020-08-26 10:40:54 +02:00
2019-06-05 17:37:06 +02:00
2020-02-14 16:34:12 -05:00
2019-08-21 09:57:23 +02:00
2019-07-22 22:16:14 +02:00
2019-05-30 11:26:32 -07:00
2019-06-19 17:09:55 +02:00
2019-07-22 22:30:19 +02:00
2019-08-21 09:57:23 +02:00
2019-06-19 17:09:55 +02:00
2019-05-30 11:26:32 -07:00
2019-04-12 12:23:20 +02:00
2019-05-30 11:26:32 -07:00
2019-07-17 10:03:50 -07:00
2019-06-19 17:09:55 +02:00
2019-06-19 17:09:55 +02:00
2019-05-30 11:26:32 -07:00
2019-06-19 17:09:55 +02:00
2019-06-19 17:09:55 +02:00
2018-03-17 14:20:46 +01:00
2019-06-19 17:09:55 +02:00
2019-06-19 17:09:55 +02:00
2019-06-19 17:09:55 +02:00
2019-06-19 17:09:55 +02:00
2018-11-22 18:11:35 +01:00
2018-08-14 23:38:45 +02:00
2019-09-01 09:18:35 +02:00
2020-06-24 17:50:12 +02:00
2019-05-21 10:50:45 +02:00
2019-06-19 17:09:55 +02:00
2019-09-10 16:14:15 +02:00
2019-02-17 21:28:39 +01:00
2019-06-19 17:09:55 +02:00
2019-06-05 17:37:17 +02:00
2020-01-17 19:49:03 +01:00
2020-01-17 19:48:16 +01:00
2019-08-13 10:53:10 +02:00
2019-04-04 10:06:54 +02:00
2019-07-22 22:16:12 +02:00
2019-08-12 23:04:25 +02:00
2019-05-16 09:19:14 -07:00
2019-05-24 17:39:01 +02:00
2019-05-08 22:14:36 +02:00
2019-08-20 21:42:19 +02:00
2020-12-30 11:51:02 +01:00
2019-06-19 17:09:55 +02:00
2019-09-01 10:57:47 +02:00
2019-06-19 17:09:55 +02:00
2019-05-30 11:26:32 -07:00
2019-04-04 10:07:11 +02:00
2019-09-01 08:48:28 +02:00
2019-08-13 10:53:10 +02:00
2019-06-19 17:09:55 +02:00
2019-05-30 11:26:32 -07:00
2019-08-13 10:53:10 +02:00
2019-04-04 10:07:10 +02:00
2019-08-21 09:57:23 +02:00
2019-08-13 10:53:10 +02:00
2019-05-21 10:50:45 +02:00
2019-06-19 17:09:55 +02:00
2019-05-30 11:29:52 -07:00
2019-08-13 10:53:10 +02:00
2019-05-21 10:50:45 +02:00
2019-06-19 17:09:55 +02:00
2019-06-19 17:09:55 +02:00
2020-06-24 17:50:36 +02:00
2019-08-21 09:57:23 +02:00
2019-08-21 09:57:23 +02:00
2019-06-19 17:09:55 +02:00
2019-04-29 15:53:42 +02:00
2020-11-05 11:43:33 +01:00
2019-07-17 10:03:50 -07:00
2019-06-19 17:09:55 +02:00
2019-08-13 10:53:10 +02:00
2019-06-19 17:09:55 +02:00
2019-07-23 20:34:31 +02:00
2019-09-01 09:18:35 +02:00
2020-10-01 13:17:43 +02:00
2019-09-10 16:14:13 +02:00
2019-08-21 09:57:23 +02:00
2019-05-09 14:46:33 -07:00
2019-05-21 11:28:40 +02:00
2019-09-01 08:48:23 +02:00
2019-08-13 10:53:10 +02:00
2019-07-17 10:03:50 -07:00
2018-03-01 10:49:41 +01:00
2019-06-19 17:09:55 +02:00
2019-08-13 10:53:10 +02:00
2019-04-11 16:42:55 +02:00
2019-04-04 10:07:10 +02:00
2020-01-14 20:08:21 +01:00
2019-08-21 09:57:23 +02:00
2019-08-21 09:57:23 +02:00
2019-05-23 17:44:52 +02:00
2019-08-21 09:57:23 +02:00
2019-08-21 09:57:23 +02:00
2019-05-30 11:26:32 -07:00
2019-04-29 15:53:43 +02:00
2019-06-19 17:09:55 +02:00
2019-05-30 11:26:35 -07:00
2019-08-13 10:53:10 +02:00
2019-04-15 16:07:42 +02:00
2019-07-13 21:39:51 +02:00
2019-05-30 11:26:32 -07:00
2019-06-19 17:09:55 +02:00
2019-08-13 10:53:10 +02:00
2019-08-13 10:53:10 +02:00
2019-04-04 10:07:08 +02:00
2019-05-08 22:14:36 +02:00