btrfs: switch seed device to list api
authorNikolay Borisov <nborisov@suse.com>
Thu, 16 Jul 2020 07:25:33 +0000 (10:25 +0300)
committerDavid Sterba <dsterba@suse.com>
Wed, 7 Oct 2020 10:06:58 +0000 (12:06 +0200)
commit944d3f9fac61e24e13a056b25974df3831994f29
tree4c0d57b0ee08af868fa53ef46977a4d24919e2fe
parentc4989c2fd0eba6e164e9a29c4a865e57dd644451
btrfs: switch seed device to list api

While this patch touches a bunch of files the conversion is
straighforward. Instead of using the implicit linked list anchored at
btrfs_fs_devices::seed the code is switched to using
list_for_each_entry.

Previous patches in the series already factored out code that processed
both main and seed devices so in those cases the factored out functions
are called on the main fs_devices and then on every seed dev inside
list_for_each_entry.

Using list api also allows to simplify deletion from the seed dev list
performed in btrfs_rm_device and btrfs_rm_dev_replace_free_srcdev by
substituting a while() loop with a simple list_del_init.

Reviewed-by: Josef Bacik <josef@toxicpanda.com>
Reviewed-by: Anand Jain <anand.jain@oracle.com>
Signed-off-by: Nikolay Borisov <nborisov@suse.com>
Signed-off-by: David Sterba <dsterba@suse.com>
fs/btrfs/disk-io.c
fs/btrfs/reada.c
fs/btrfs/volumes.c
fs/btrfs/volumes.h