Anders Roxell
db16eb5539
writeback: don't decrement wb->refcnt if !wb->bdi
...
[ Upstream commit 347a28b586 ]
This happened while running in qemu-system-aarch64, the AMBA PL011 UART
driver when enabling CONFIG_DEBUG_TEST_DRIVER_REMOVE.
arch_initcall(pl011_init) came before subsys_initcall(default_bdi_init),
devtmpfs' handle_remove() crashes because the reference count is a NULL
pointer only because wb->bdi hasn't been initialized yet.
Rework so that wb_put have an extra check if wb->bdi before decrement
wb->refcnt and also add a WARN_ON_ONCE to get a warning if it happens again
in other drivers.
Fixes: 52ebea749a ("writeback: make backing_dev_info host cgroup-specific bdi_writebacks")
Co-developed-by: Arnd Bergmann <arnd@arndb.de >
Signed-off-by: Arnd Bergmann <arnd@arndb.de >
Signed-off-by: Anders Roxell <anders.roxell@linaro.org >
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org >
Signed-off-by: Sasha Levin <sashal@kernel.org >
2019-01-26 09:38:32 +01:00
..
2016-10-12 11:01:37 -07:00
2016-10-05 10:11:24 -07:00
2018-12-01 09:44:19 +01:00
2018-12-08 13:05:10 +01:00
2018-08-24 13:12:40 +02:00
2016-10-11 15:06:33 -07:00
2018-11-10 07:42:55 -08:00
2016-10-17 16:26:29 +01:00
2017-03-15 10:02:46 +08:00
2016-10-07 08:35:35 -07:00
2018-04-13 19:48:19 +02:00
2018-09-26 08:36:30 +02:00
2018-08-03 07:55:22 +02:00
2018-05-01 15:13:07 -07:00
2018-11-27 16:09:39 +01:00
2018-10-13 09:18:58 +02:00
2016-10-03 19:43:08 -07:00
2016-11-05 13:45:02 +05:30
2018-10-03 17:01:52 -07:00
2017-01-19 20:18:07 +01:00
2016-10-22 17:08:07 -04:00
2016-10-07 09:45:43 -07:00
2018-03-22 09:17:44 +01:00
2016-09-30 09:14:10 -07:00
2019-01-16 22:12:33 +01:00
2018-05-25 16:13:04 +02:00
2017-12-20 10:07:26 +01:00
2018-10-03 17:01:54 -07:00
2017-10-08 10:26:06 +02:00
2016-10-11 15:06:31 -07:00
2016-10-11 15:06:31 -07:00
2019-01-26 09:38:32 +01:00
2018-04-24 09:34:18 +02:00
2016-10-07 18:46:26 -07:00
2016-10-14 12:18:50 -07:00
2016-10-09 17:32:20 -07:00
2018-07-03 11:23:18 +02:00
2016-10-07 18:46:28 -07:00
2018-12-08 13:05:10 +01:00
2018-01-31 12:55:57 +01:00
2017-12-09 22:01:54 +01:00
2018-01-31 12:55:51 +01:00
2017-01-06 10:40:13 +01:00
2017-09-27 14:39:20 +02:00
2018-03-31 18:11:33 +02:00
2017-06-14 15:06:00 +02:00
2016-10-17 15:27:27 -07:00
2016-10-07 18:46:29 -07:00
2018-12-21 14:11:29 +01:00
2018-08-15 18:14:42 +02:00
2018-07-22 14:27:35 +02:00
2018-07-03 11:23:07 +02:00
2016-11-11 08:12:37 -08:00
2017-07-05 14:40:26 +02:00
2018-08-15 18:14:53 +02:00
2016-10-20 16:35:50 +02:00
2018-01-02 20:35:17 +01:00
2018-05-30 07:50:26 +02:00
2017-10-12 11:51:25 +02:00
2018-01-10 09:29:52 +01:00
2018-09-26 08:36:37 +02:00
2016-10-11 15:06:30 -07:00
2018-02-28 10:18:33 +01:00
2018-05-30 07:50:16 +02:00
2017-03-22 12:43:33 +01:00
2017-03-15 10:02:44 +08:00
2017-03-12 06:41:44 +01:00
2017-07-15 12:16:11 +02:00
2018-08-03 07:55:22 +02:00
2017-12-14 09:28:11 +01:00
2018-05-22 16:57:58 +02:00
2018-11-10 07:42:48 -08:00
2016-10-14 14:26:58 -07:00
2016-10-06 09:07:44 -04:00
2017-05-14 14:00:22 +02:00
2016-10-03 09:11:14 -07:00
2017-07-12 15:01:02 +02:00
2018-02-13 12:36:00 +01:00
2017-12-09 22:01:56 +01:00
2018-01-17 09:38:58 +01:00
2016-11-11 08:12:37 -08:00
2018-12-01 09:44:25 +01:00
2017-06-17 06:41:52 +02:00
2018-01-10 09:29:52 +01:00
2017-03-31 10:31:46 +02:00
2018-03-28 18:39:23 +02:00
2016-10-07 18:46:26 -07:00
2017-08-06 18:59:43 -07:00
2016-10-06 11:48:41 -07:00
2017-12-14 09:28:22 +01:00
2017-05-14 14:00:22 +02:00
2017-05-25 15:44:41 +02:00
2018-04-24 09:34:12 +02:00
2018-10-20 09:51:31 +02:00
2018-11-21 09:26:03 +01:00
2017-10-27 10:38:08 +02:00
2018-11-21 09:26:01 +01:00
2016-10-07 23:50:39 -04:00
2018-04-29 11:32:01 +02:00
2018-04-08 12:12:52 +02:00
2018-12-01 09:44:26 +01:00
2018-09-09 20:01:24 +02:00
2016-10-26 15:45:38 +10:00
2016-10-20 15:51:28 +11:00
2018-01-02 20:35:11 +01:00
2017-02-09 08:08:31 +01:00
2018-02-22 15:43:48 +01:00
2018-10-10 08:53:18 +02:00
2017-01-19 20:17:59 +01:00
2016-10-03 13:22:39 -07:00
2018-02-22 15:43:55 +01:00
2016-10-16 11:02:31 +02:00
2018-11-23 08:20:35 +01:00
2016-10-27 18:43:43 -07:00
2018-05-30 07:50:26 +02:00
2016-10-09 12:23:38 -07:00
2018-02-28 10:18:34 +01:00
2016-10-11 15:06:33 -07:00
2017-10-27 10:38:11 +02:00
2016-10-11 15:06:33 -07:00
2017-05-25 15:44:47 +02:00
2016-10-11 15:06:33 -07:00
2016-10-05 10:11:24 -07:00
2018-05-30 07:50:30 +02:00
2018-07-17 11:37:52 +02:00
2017-03-15 10:02:47 +08:00
2017-07-21 07:42:21 +02:00
2018-04-08 12:12:50 +02:00
2017-06-17 06:41:51 +02:00
2017-10-27 10:38:08 +02:00
2017-08-24 17:12:19 -07:00
2017-04-08 09:30:35 +02:00
2017-02-09 08:08:28 +01:00
2017-06-17 06:41:54 +02:00
2017-01-19 20:17:59 +01:00
2018-09-19 22:47:17 +02:00
2018-11-21 09:26:03 +01:00
2017-12-20 10:07:29 +01:00
2017-12-14 09:28:16 +01:00
2018-01-31 12:55:53 +01:00
2018-11-23 08:20:35 +01:00
2017-03-15 10:02:44 +08:00
2019-01-09 16:16:43 +01:00
2016-10-07 09:20:53 -07:00
2018-10-18 09:13:22 +02:00
2017-02-01 08:33:08 +01:00
2017-08-11 08:49:28 -07:00
2017-06-17 06:41:57 +02:00
2018-05-22 16:58:02 +02:00
2016-10-19 11:36:22 -06:00
2016-10-03 23:38:11 +02:00
2016-11-29 23:17:02 -05:00
2018-12-01 09:44:21 +01:00
2017-12-14 09:28:16 +01:00
2016-10-07 18:46:28 -07:00
2016-10-07 18:46:27 -07:00
2016-10-07 18:46:27 -07:00
2018-03-22 09:17:44 +01:00
2018-09-15 09:42:56 +02:00
2018-02-25 11:05:51 +01:00
2018-09-09 20:01:20 +02:00
2018-01-05 15:46:35 +01:00
2017-02-09 08:08:28 +01:00
2017-12-09 22:01:52 +01:00
2018-12-01 09:44:25 +01:00
2018-01-17 09:38:53 +01:00
2017-08-24 17:12:21 -07:00
2016-10-05 18:24:00 -04:00
2016-10-14 11:36:59 -07:00
2017-01-06 10:40:15 +01:00
2016-10-08 11:06:08 -04:00
2018-03-24 11:00:09 +01:00
2018-11-10 07:43:01 -08:00
2018-10-03 17:01:43 -07:00
2017-11-15 15:53:17 +01:00
2016-10-09 12:23:38 -07:00
2018-05-30 07:50:21 +02:00
2018-04-20 08:21:05 +02:00
2017-08-06 18:59:43 -07:00
2019-01-09 16:16:42 +01:00
2017-06-14 15:05:54 +02:00
2016-10-11 15:06:30 -07:00
2017-04-12 12:41:15 +02:00
2017-12-16 16:25:45 +01:00
2017-01-26 08:24:37 +01:00
2016-10-29 12:14:39 -06:00
2016-10-11 15:06:32 -07:00
2016-10-02 22:50:21 -07:00
2018-12-08 13:05:09 +01:00
2018-10-18 09:13:25 +02:00
2018-08-09 12:17:59 +02:00
2018-09-19 22:47:17 +02:00
2018-05-22 16:58:01 +02:00
2016-10-11 15:06:33 -07:00
2016-10-07 18:46:30 -07:00
2018-08-03 07:55:25 +02:00
2018-01-17 09:38:53 +01:00
2018-05-22 16:57:57 +02:00
2017-08-30 10:21:40 +02:00
2018-10-18 09:13:26 +02:00
2017-08-11 08:49:36 -07:00
2018-10-03 17:01:50 -07:00
2016-10-05 18:23:36 -04:00
2018-07-22 14:27:42 +02:00
2018-05-30 07:50:24 +02:00
2017-01-19 20:17:59 +01:00
2018-08-15 18:14:45 +02:00
2017-01-26 08:24:44 +01:00
2016-10-17 09:50:56 -07:00
2018-08-15 18:14:43 +02:00
2018-09-05 09:20:10 +02:00
2018-11-13 11:17:02 -08:00
2018-06-06 16:44:34 +02:00
2018-08-09 12:18:00 +02:00
2017-06-29 13:00:30 +02:00
2018-01-02 20:35:17 +01:00
2017-10-12 11:51:21 +02:00
2017-09-27 14:39:19 +02:00
2018-05-01 15:13:05 -07:00
2018-11-27 16:09:41 +01:00
2017-04-21 09:31:21 +02:00
2018-12-13 09:20:27 +01:00
2017-03-18 19:14:29 +08:00
2018-09-09 20:01:23 +02:00
2018-01-31 12:55:52 +01:00
2017-07-27 15:08:03 -07:00
2017-02-04 09:47:09 +01:00
2017-12-25 14:23:37 +01:00
2018-05-01 15:13:05 -07:00
2018-09-19 22:47:17 +02:00
2018-09-19 22:47:17 +02:00
2016-10-08 10:27:10 +02:00
2018-12-05 19:42:42 +01:00
2016-10-07 18:46:27 -07:00
2016-10-07 21:48:36 -04:00