On Wed, Mar 27, 2019 at 02:24:11PM +0200, Nikolay Borisov wrote: > btrfs_device structs are freed from RCU context since device iteration > is protected by RCU. Currently this is achieved by using call_rcu since > no blocking functions are called within btrfs_free_device. Future > refactoring of pending/pinned chunks will require calling sleeping > functions. This patch is in preparation for these changes by simply > switching from RCU callbacks to explicit calls of synchronize_rcu and > calling btrfs_free_device directly.
A paragraph why this transition is correct would be good. It looks correct to me, so this is a matter of documentation.