Skip to content
  • Yan, Zheng's avatar
    ceph: fix queuing inode to mdsdir's snaprealm · 23078637
    Yan, Zheng authored
    
    
    During MDS failovers, MClientSnap message may cause kclient to move
    some inodes from root directory's snaprealm to mdsdir's snaprealm
    and queue snapshots for these inodes. For a FS has never created any
    snapshot, both root directory's snaprealm and mdsdir's snaprealm
    share the same snapshot contexts (both are ceph_empty_snapc). This
    confuses ceph_put_wrbuffer_cap_refs(), make it unable to distinguish
    snapshot buffers from head buffers.
    
    The fix is do not use ceph_empty_snapc as snaprealm's cached context.
    
    Signed-off-by: default avatarYan, Zheng <zyan@redhat.com>
    23078637