• Suresh Jayaraman's avatar
    cifs: add attribute cache timeout (actimeo) tunable · 6d20e840
    Suresh Jayaraman authored
    Currently, the attribute cache timeout for CIFS is hardcoded to 1 second. This
    means that the client might have to issue a QPATHINFO/QFILEINFO call every 1
    second to verify if something has changes, which seems too expensive. On the
    other hand, if the timeout is hardcoded to a higher value, workloads that
    expect strict cache coherency might see unexpected results.
    
    Making attribute cache timeout as a tunable will allow us to make a tradeoff
    between performance and cache metadata correctness depending on the
    application/workload needs.
    
    Add 'actimeo' tunable that can be used to tune the attribute cache timeout.
    The default timeout is set to 1 second. Also, display actimeo option value in
    /proc/mounts.
    
    It appears to me that 'actimeo' and the proposed (but not yet merged)
    'strictcache' option cannot coexist, so care must be taken that we reset the
    other option if one of them is set.
    
    Changes since last post:
       - fix option parsing and handle possible values correcly
    Reviewed-by: default avatarJeff Layton <jlayton@redhat.com>
    Signed-off-by: default avatarSuresh Jayaraman <sjayaraman@suse.de>
    Signed-off-by: default avatarSteve French <sfrench@us.ibm.com>
    6d20e840
README 38.8 KB