• NeilBrown's avatar
    md/bitmap: improve handling of 'allclean'. · 2585f3ef
    NeilBrown authored
    The 'allclean' flag is used to cache the fact that there is nothing to
    do, so we can avoid waking up and scanning the bitmap regularly.
    
    The two sorts of pages that might need the attention of the bitmap
    daemon are BITMAP_PAGE_PENDING and BITMAP_PAGE_NEEDWRITE pages.
    
    So make sure allclean reflects exactly when there are none of those.
    So:
      set it before scanning all pages with either bit set.
      clear it whenever these bits are set
      clear it when we desire not to clear one of these bits.
      don't clear it any other time.
    Signed-off-by: default avatarNeilBrown <neilb@suse.de>
    2585f3ef
bitmap.c 55.8 KB