• Joe Thornber's avatar
    dm bufio: evict buffers that are past the max age but retain some buffers · 33096a78
    Joe Thornber authored
    These changes help keep metadata backed by dm-bufio in-core longer which
    fixes reports of metadata churn in the face of heavy random IO workloads.
    
    Before, bufio evicted all buffers older than DM_BUFIO_DEFAULT_AGE_SECS.
    Having a device (e.g. dm-thinp or dm-cache) lose all metadata just
    because associated buffers had been idle for some time is unfriendly.
    
    Now, the user may now configure the number of bytes that bufio retains
    using the 'retain_bytes' module parameter.  The default is 256K.
    
    Also, the DM_BUFIO_WORK_TIMER_SECS and DM_BUFIO_DEFAULT_AGE_SECS
    defaults were quite low so increase them (to 30 and 300 respectively).
    Signed-off-by: default avatarJoe Thornber <ejt@redhat.com>
    Signed-off-by: default avatarMike Snitzer <snitzer@redhat.com>
    33096a78
dm-bufio.c 45.7 KB