Wang Shilong
bca1a29003
Btrfs: add a reschedule point in btrfs_find_all_roots()
...
I can easily trigger the following warnings when enabling quota
in my virtual machine(running Opensuse), Steps are firstly creating
a subvolume full of fragment extents, and then create many snapshots
(500 in my test case).
[ 2362.808459] BUG: soft lockup - CPU#0 stuck for 22s! [btrfs-qgroup-re:1970]
[ 2362.809023] task: e4af8450 ti: e371c000 task.ti: e371c000
[ 2362.809026] EIP: 0060:[<fa38f4ae>] EFLAGS: 00000246 CPU: 0
[ 2362.809049] EIP is at __merge_refs+0x5e/0x100 [btrfs]
[ 2362.809051] EAX: 00000000 EBX: cfadbcf0 ECX: 00000000 EDX: cfadbcb0
[ 2362.809052] ESI: dd8d3370 EDI: e371dde0 EBP: e371dd6c ESP: e371dd5c
[ 2362.809054] DS: 007b ES: 007b FS: 00d8 GS: 00e0 SS: 0068
[ 2362.809055] CR0: 80050033 CR2: ac454d50 CR3: 009a9000 CR4: 001407d0
[ 2362.809099] Stack:
[ 2362.809100] 00000001 e371dde0 dfcc6890 f29f8000 e371de28 fa39016d 00000011 00000001
[ 2362.809105] 99bfc000 00000000 93928000 00000000 00000001 00000050 e371dda8 00000001
[ 2362.809109] f3a31000 f3413000 00000001 e371ddb8 000040a8 00000202 00000000 00000023
[ 2362.809113] Call Trace:
[ 2362.809136] [<fa39016d>] find_parent_nodes+0x34d/0x1280 [btrfs]
[ 2362.809156] [<fa391172>] btrfs_find_all_roots+0xb2/0x110 [btrfs]
[ 2362.809174] [<fa3934a8>] btrfs_qgroup_rescan_worker+0x358/0x7a0 [btrfs]
[ 2362.809180] [<c024d0ce>] ? lock_timer_base.isra.39+0x1e/0x40
[ 2362.809199] [<fa3648df>] worker_loop+0xff/0x470 [btrfs]
[ 2362.809204] [<c027a88a>] ? __wake_up_locked+0x1a/0x20
[ 2362.809221] [<fa3647e0>] ? btrfs_queue_worker+0x2b0/0x2b0 [btrfs]
[ 2362.809225] [<c025ebbc>] kthread+0x9c/0xb0
[ 2362.809229] [<c06b487b>] ret_from_kernel_thread+0x1b/0x30
[ 2362.809233] [<c025eb20>] ? kthread_create_on_node+0x110/0x110
By adding a reschedule point at the end of btrfs_find_all_roots(), i no longer
hit these warnings.
Cc: Josef Bacik <jbacik@fb.com>
Signed-off-by: Wang Shilong <wangsl.fnst@cn.fujitsu.com>
Reviewed-by: David Sterba <dsterba@suse.cz>
Signed-off-by: Josef Bacik <jbacik@fb.com>
Signed-off-by: Chris Mason <clm@fb.com>
2014-01-29 07:06:25 -08:00
..
2013-11-15 22:04:17 -05:00
2013-10-24 23:43:27 -04:00
2013-11-27 20:34:32 -08:00
2013-10-28 19:36:46 -04:00
2013-10-24 23:43:27 -04:00
2013-10-24 23:34:50 -04:00
2013-09-12 15:38:02 -07:00
2014-01-29 07:06:25 -08:00
2013-11-13 15:34:18 +09:00
2013-12-13 09:11:38 -08:00
2013-12-27 15:14:45 -06:00
2013-11-09 00:16:21 -05:00
2013-11-21 16:42:27 -08:00
2013-11-13 12:09:12 +09:00
2013-11-13 12:09:24 +09:00
2013-11-13 12:09:36 +09:00
2013-11-19 16:39:05 -05:00
2013-11-22 10:58:14 -08:00
2013-11-15 22:04:17 -05:00
2013-08-24 12:10:22 -04:00
2013-09-12 15:38:02 -07:00
2013-11-09 00:16:38 -05:00
2013-12-04 12:26:51 +01:00
2013-11-13 15:25:47 +09:00
2014-01-06 14:00:23 -05:00
2013-11-11 09:36:32 +09:00
2013-10-24 23:43:28 -04:00
2013-06-29 12:56:53 +04:00
2013-11-14 12:08:14 +09:00
2013-11-13 15:34:18 +09:00
2014-01-02 12:18:04 +00:00
2013-11-13 12:09:32 +09:00
2013-11-24 16:33:41 -07:00
2013-11-15 22:04:17 -05:00
2013-11-09 00:16:44 -05:00
2013-07-03 16:07:41 -07:00
2013-08-24 12:10:17 -04:00
2013-10-24 23:34:59 -04:00
2013-10-31 20:37:15 +01:00
2013-12-08 21:14:59 -05:00
2013-10-27 16:27:07 -07:00
2013-10-22 09:01:11 +01:00
2013-08-05 15:03:46 -04:00
2013-11-24 16:33:41 -07:00
2013-09-16 18:20:25 -07:00
2013-10-24 23:43:28 -04:00
2013-12-05 13:05:48 -08:00
2013-12-10 20:34:44 -05:00
2014-01-15 14:19:42 +07:00
2013-07-09 10:33:20 -07:00
2013-11-09 00:16:31 -05:00
2013-11-15 09:32:21 +09:00
2013-09-12 15:38:02 -07:00
2013-06-29 12:56:32 +04:00
2013-12-12 18:19:26 -08:00
2013-12-20 13:12:01 -08:00
2013-11-09 00:16:32 -05:00
2013-06-29 12:56:39 +04:00
2013-11-19 16:39:06 -05:00
2013-09-11 15:59:37 -07:00
2013-09-24 11:24:21 +02:00
2013-06-29 12:56:29 +04:00
2013-11-24 01:02:50 +00:00
2013-12-07 21:22:00 -08:00
2013-09-29 22:02:02 -04:00
2013-11-13 15:34:18 +09:00
2013-10-18 22:39:07 +02:00
2013-09-12 15:38:02 -07:00
2014-01-10 12:39:38 -06:00
2013-12-22 11:03:49 -08:00
2013-11-09 00:16:28 -05:00
2013-11-09 00:16:44 -05:00
2013-06-29 12:57:04 +04:00
2013-11-09 00:16:26 -05:00
2013-11-09 00:16:30 -05:00
2013-11-09 00:16:30 -05:00
2013-10-24 23:34:54 -04:00
2013-04-29 15:40:23 -04:00
2013-04-30 17:04:03 -07:00
2013-09-22 15:00:11 -07:00
2013-11-18 12:31:27 -07:00
2013-09-13 23:06:40 -04:00
2013-10-16 21:35:53 -07:00
2013-11-14 12:08:14 +09:00
2013-10-24 23:34:54 -04:00
2013-06-29 12:57:05 +04:00
2013-11-15 22:04:09 -05:00
2014-01-17 17:29:36 -08:00
2013-03-03 23:00:23 -05:00
2013-09-09 10:47:42 -07:00
2013-09-10 18:56:31 -04:00
2014-01-02 14:40:30 -08:00
2013-11-21 19:18:14 -08:00
2013-10-24 23:34:54 -04:00
2013-11-13 15:34:18 +09:00
2013-05-01 17:31:42 -04:00
2013-03-03 19:36:31 -08:00
2013-11-06 12:40:26 +01:00
2013-12-14 04:21:26 +08:00
2013-11-09 00:16:44 -05:00
2013-11-09 00:16:20 -05:00
2013-10-24 23:34:54 -04:00
2013-04-17 13:25:09 +01:00
2013-04-30 17:04:04 -07:00
2013-11-15 22:04:17 -05:00
2013-11-13 07:30:53 -05:00
2013-05-01 17:51:54 -07:00
2013-09-10 18:56:31 -04:00
2013-11-09 00:16:19 -05:00
2013-12-12 10:39:01 -08:00
2013-11-26 20:54:52 -08:00
2013-11-09 00:16:44 -05:00
2013-12-02 09:44:51 -08:00
2013-10-24 23:35:00 -04:00
2013-08-26 18:42:15 -07:00
2013-10-24 23:34:59 -04:00
2013-10-24 23:34:54 -04:00
2013-10-24 23:34:54 -04:00
2013-11-13 15:34:18 +09:00
2013-11-18 19:07:53 -08:00
2013-03-03 22:58:46 -05:00
2013-10-24 23:34:54 -04:00
2013-11-09 00:16:31 -05:00
2013-10-12 13:12:31 -07:00
2013-11-09 00:16:20 -05:00
2013-11-13 15:45:43 +09:00
2013-05-29 12:57:34 -07:00
2013-11-09 00:16:44 -05:00