mirror of
git://sourceware.org/git/lvm2.git
synced 2024-12-21 13:34:40 +03:00
c32d7fed4f
When detaching a writecache, use the cleaner setting by default to writeback data prior to suspending the lv to detach the writecache. This avoids potentially blocking for a long period with the device suspended. Detaching a writecache first sets the cleaner option, waits for a short period of time (less than a second), and checks if the writecache has quickly become clean. If so, the writecache is detached immediately. This optimizes the case where little writeback is needed. If the writecache does not quickly become clean, then the detach command leaves the writecache attached with the cleaner option set. This leaves the LV in the same state as if the user had set the cleaner option directly with lvchange --cachesettings cleaner=1 LV. After leaving the LV with the cleaner option set, the detach command will wait and watch the writeback progress, and will finally detach the writecache when the writeback is finished. The detach command does not need to wait during the writeback phase, and can be canceled, in which case the LV will remain with the writecache attached and the cleaner option set. When the user runs the detach command again it will complete the detach. To detach a writecache directly, without using the cleaner step (which has been the approach previously), add the option --cachesettings cleaner=0 to the detach command. |
||
---|---|---|
.. | ||
writecache.c |