Re: libblkid: Idea to force given cached entry to be invalidated?

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Wed, Apr 16, 2014 at 08:53:27AM +0800, Qu Wenruo wrote:
> >So the problem is not that btrfs is fast enough ;-)
> According to your explaination, it seems that if there is any modification
> to the block device, libblkid will rescan it and not
> to use the old cache, do I understand it right?

Yes, blkid_verify():

	if (now >= dev->bid_time &&
#ifdef HAVE_STRUCT_STAT_ST_MTIM_TV_NSEC
	    (st.st_mtime < dev->bid_time ||
	        (st.st_mtime == dev->bid_time &&
		 st.st_mtim.tv_nsec / 1000 <= dev->bid_utime)) &&
#else
	    st.st_mtime <= dev->bid_time &&
#endif
	    (diff < BLKID_PROBE_MIN ||
		(dev->bid_flags & BLKID_BID_FL_VERIFIED &&
		 diff < BLKID_PROBE_INTERVAL)))
		return dev;


It checks two basic things:

 a) compare device st_mtime with cache entry time (bid_time and bid_utime), 
    the valid cache entry has not to be older than device mtime.

 b) valid cache entry has not to be older than BLKID_PROBE_MIN (2 sec)
    and previous blkid_verify() validation remaining in memory has not 
    to be older than BLKID_PROBE_INTERVAL (200s). 

> >BTW, it would be nice to have --verbose option for btrfs-scan, now it
> >seems like black box.
> I'd like to add it, but as you know, 'btrfs dev scan' just calls a btrfs
> ioctl, so even '--verbose' is added,
> nothing useful will be printed out. :(

Well, I mean at least info about for what devices it calls the ioctls.

    Karel

-- 
 Karel Zak  <kzak@xxxxxxxxxx>
 http://karelzak.blogspot.com
--
To unsubscribe from this list: send the line "unsubscribe util-linux" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html




[Index of Archives]     [Netdev]     [Ethernet Bridging]     [Linux Wireless]     [Kernel Newbies]     [Security]     [Linux for Hams]     [Netfilter]     [Bugtraq]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux RAID]     [Linux Admin]     [Samba]

  Powered by Linux