* stable-2.02 - cache: simplier signal handling
@ 2020-10-16 19:11 Zdenek Kabelac
0 siblings, 0 replies; only message in thread
From: Zdenek Kabelac @ 2020-10-16 19:11 UTC (permalink / raw)
To: lvm-devel
Gitweb: https://sourceware.org/git/?p=lvm2.git;a=commitdiff;h=0881ba9e9f32144d5a538b9920367c494513d23a
Commit: 0881ba9e9f32144d5a538b9920367c494513d23a
Parent: de17c273de8e3b139cd694d76f9bde9154cc3aa2
Author: Zdenek Kabelac <zkabelac@redhat.com>
AuthorDate: Sun Sep 13 11:33:39 2020 +0200
Committer: Zdenek Kabelac <zkabelac@redhat.com>
CommitterDate: Fri Oct 16 17:07:59 2020 +0200
cache: simplier signal handling
Use just single sigint_allow()/restore() within flushing loop
and void one extra signal manipulation.
---
lib/metadata/cache_manip.c | 12 +++++-------
1 file changed, 5 insertions(+), 7 deletions(-)
diff --git a/lib/metadata/cache_manip.c b/lib/metadata/cache_manip.c
index 8376bfbf0..05a6efdf1 100644
--- a/lib/metadata/cache_manip.c
+++ b/lib/metadata/cache_manip.c
@@ -425,7 +425,7 @@ int lv_cache_wait_for_clean(struct logical_volume *cache_lv, int *is_clean)
const struct logical_volume *lock_lv = lv_lock_holder(cache_lv);
struct lv_segment *cache_seg = first_seg(cache_lv);
struct lv_status_cache *status;
- int cleaner_policy, writeback;
+ int cleaner_policy = 0, writeback;
uint64_t dirty_blocks;
*is_clean = 0;
@@ -433,6 +433,9 @@ int lv_cache_wait_for_clean(struct logical_volume *cache_lv, int *is_clean)
//FIXME: use polling to do this...
for (;;) {
sigint_allow();
+ if (cleaner_policy)
+ /* TODO: Use centralized place */
+ usleep(500000);
sigint_restore();
if (sigint_caught()) {
sigint_clear();
@@ -468,13 +471,8 @@ int lv_cache_wait_for_clean(struct logical_volume *cache_lv, int *is_clean)
log_print_unless_silent("Flushing " FMTu64 " blocks for cache %s.",
dirty_blocks, display_lvname(cache_lv));
- if (cleaner_policy) {
- /* TODO: Use centralized place */
- sigint_allow();
- usleep(500000);
- sigint_restore();
+ if (cleaner_policy)
continue;
- }
if (!(cache_lv->status & LVM_WRITE)) {
log_warn("WARNING: Dirty blocks found on read-only cache volume %s.",
^ permalink raw reply related [flat|nested] only message in thread
only message in thread, other threads:[~2020-10-16 19:11 UTC | newest]
Thread overview: (only message) (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2020-10-16 19:11 stable-2.02 - cache: simplier signal handling Zdenek Kabelac
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.