Loading fs/ceph/caps.c +7 −3 Original line number Diff line number Diff line Loading @@ -1351,11 +1351,15 @@ int __ceph_mark_dirty_caps(struct ceph_inode_info *ci, int mask) if (!ci->i_head_snapc) ci->i_head_snapc = ceph_get_snap_context( ci->i_snap_realm->cached_context); dout(" inode %p now dirty snapc %p\n", &ci->vfs_inode, ci->i_head_snapc); dout(" inode %p now dirty snapc %p auth cap %p\n", &ci->vfs_inode, ci->i_head_snapc, ci->i_auth_cap); BUG_ON(!list_empty(&ci->i_dirty_item)); spin_lock(&mdsc->cap_dirty_lock); if (ci->i_auth_cap) list_add(&ci->i_dirty_item, &mdsc->cap_dirty); else list_add(&ci->i_dirty_item, &mdsc->cap_dirty_migrating); spin_unlock(&mdsc->cap_dirty_lock); if (ci->i_flushing_caps == 0) { ihold(inode); Loading Loading
fs/ceph/caps.c +7 −3 Original line number Diff line number Diff line Loading @@ -1351,11 +1351,15 @@ int __ceph_mark_dirty_caps(struct ceph_inode_info *ci, int mask) if (!ci->i_head_snapc) ci->i_head_snapc = ceph_get_snap_context( ci->i_snap_realm->cached_context); dout(" inode %p now dirty snapc %p\n", &ci->vfs_inode, ci->i_head_snapc); dout(" inode %p now dirty snapc %p auth cap %p\n", &ci->vfs_inode, ci->i_head_snapc, ci->i_auth_cap); BUG_ON(!list_empty(&ci->i_dirty_item)); spin_lock(&mdsc->cap_dirty_lock); if (ci->i_auth_cap) list_add(&ci->i_dirty_item, &mdsc->cap_dirty); else list_add(&ci->i_dirty_item, &mdsc->cap_dirty_migrating); spin_unlock(&mdsc->cap_dirty_lock); if (ci->i_flushing_caps == 0) { ihold(inode); Loading