• NeilBrown's avatar
    ceph: remove warning when ceph_releasepage() is called on dirty page · e55f1a18
    NeilBrown authored
    If O_DIRECT writes are racing with buffered writes, then
    the call to invalidate_inode_pages2_range() can call ceph_releasepage()
    on dirty pages.
    
    Most filesystems hold inode_lock() across O_DIRECT writes so they do not
    suffer this race, but cephfs deliberately drops the lock, and opens a window
    for the race.
    
    This race can be triggered with the generic/036 test from the xfstests
    test suite.  It doesn't happen every time, but it does happen often.
    
    As the possibilty is expected, remove the warning, and instead include
    the PageDirty() status in the debug message.
    Signed-off-by: default avatarNeilBrown <neilb@suse.com>
    Reviewed-by: default avatarJeff Layton <jlayton@redhat.com>
    Reviewed-by: default avatarYan, Zheng <zyan@redhat.com>
    e55f1a18
addr.c 50.4 KB