1
0
mirror of git://sourceware.org/git/lvm2.git synced 2024-12-21 13:34:40 +03:00

thin: do not flush when quering for thin percent

Since we may easily get blocked when checking for percentage
of thin-pool - do not flush and just show current values.
This avoids holding VG locked when pool is overfilled.
This commit is contained in:
Zdenek Kabelac 2015-09-03 22:57:50 +02:00
parent df110bccbe
commit 872ea3b987
2 changed files with 6 additions and 0 deletions

View File

@ -1,5 +1,6 @@
Version 2.02.130 - Version 2.02.130 -
=================================== ===================================
Read thin-pool data and metadata percent without flush.
Detect blocked thin-pool and avoid scanning their thin volumes. Detect blocked thin-pool and avoid scanning their thin volumes.
Check if dm device is usable before checking its size (2.02.116). Check if dm device is usable before checking its size (2.02.116).
Extend parsing of cache_check version in configure. Extend parsing of cache_check version in configure.

View File

@ -1045,6 +1045,11 @@ static int _percent_run(struct dev_manager *dm, const char *name,
wait ? DM_DEVICE_WAITEVENT : DM_DEVICE_STATUS, 0, 0, 0))) wait ? DM_DEVICE_WAITEVENT : DM_DEVICE_STATUS, 0, 0, 0)))
return_0; return_0;
/* No freeze on overfilled thin-pool, read existing slightly outdated data */
if (lv && lv_is_thin_pool(lv) &&
!dm_task_no_flush(dmt))
log_warn("Can't set no_flush flag."); /* Non fatal */
if (!dm_task_run(dmt)) if (!dm_task_run(dmt))
goto_out; goto_out;