Lines Matching refs:ci

152 	struct ceph_inode_info *ci;  member
526 struct ceph_inode_info *ci = ceph_inode(inode); in ceph_ino_compare() local
527 return ci->i_vino.ino == pvino->ino && in ceph_ino_compare()
528 ci->i_vino.snap == pvino->snap; in ceph_ino_compare()
599 static inline void ceph_set_error_write(struct ceph_inode_info *ci) in ceph_set_error_write() argument
601 if (!(READ_ONCE(ci->i_ceph_flags) & CEPH_I_ERROR_WRITE)) { in ceph_set_error_write()
602 spin_lock(&ci->i_ceph_lock); in ceph_set_error_write()
603 ci->i_ceph_flags |= CEPH_I_ERROR_WRITE; in ceph_set_error_write()
604 spin_unlock(&ci->i_ceph_lock); in ceph_set_error_write()
608 static inline void ceph_clear_error_write(struct ceph_inode_info *ci) in ceph_clear_error_write() argument
610 if (READ_ONCE(ci->i_ceph_flags) & CEPH_I_ERROR_WRITE) { in ceph_clear_error_write()
611 spin_lock(&ci->i_ceph_lock); in ceph_clear_error_write()
612 ci->i_ceph_flags &= ~CEPH_I_ERROR_WRITE; in ceph_clear_error_write()
613 spin_unlock(&ci->i_ceph_lock); in ceph_clear_error_write()
617 static inline void __ceph_dir_set_complete(struct ceph_inode_info *ci, in __ceph_dir_set_complete() argument
627 atomic64_set(&ci->i_complete_seq[0], release_count); in __ceph_dir_set_complete()
628 atomic64_set(&ci->i_complete_seq[1], ordered_count); in __ceph_dir_set_complete()
631 static inline void __ceph_dir_clear_complete(struct ceph_inode_info *ci) in __ceph_dir_clear_complete() argument
633 atomic64_inc(&ci->i_release_count); in __ceph_dir_clear_complete()
636 static inline void __ceph_dir_clear_ordered(struct ceph_inode_info *ci) in __ceph_dir_clear_ordered() argument
638 atomic64_inc(&ci->i_ordered_count); in __ceph_dir_clear_ordered()
641 static inline bool __ceph_dir_is_complete(struct ceph_inode_info *ci) in __ceph_dir_is_complete() argument
643 return atomic64_read(&ci->i_complete_seq[0]) == in __ceph_dir_is_complete()
644 atomic64_read(&ci->i_release_count); in __ceph_dir_is_complete()
647 static inline bool __ceph_dir_is_complete_ordered(struct ceph_inode_info *ci) in __ceph_dir_is_complete_ordered() argument
649 return atomic64_read(&ci->i_complete_seq[0]) == in __ceph_dir_is_complete_ordered()
650 atomic64_read(&ci->i_release_count) && in __ceph_dir_is_complete_ordered()
651 atomic64_read(&ci->i_complete_seq[1]) == in __ceph_dir_is_complete_ordered()
652 atomic64_read(&ci->i_ordered_count); in __ceph_dir_is_complete_ordered()
673 extern struct ceph_inode_frag *__ceph_find_frag(struct ceph_inode_info *ci,
680 extern u32 ceph_choose_frag(struct ceph_inode_info *ci, u32 v,
692 static inline bool __ceph_is_any_real_caps(struct ceph_inode_info *ci) in __ceph_is_any_real_caps() argument
694 return !RB_EMPTY_ROOT(&ci->i_caps); in __ceph_is_any_real_caps()
697 extern int __ceph_caps_issued(struct ceph_inode_info *ci, int *implemented);
698 extern int __ceph_caps_issued_mask(struct ceph_inode_info *ci, int mask, int t);
699 extern int __ceph_caps_issued_mask_metric(struct ceph_inode_info *ci, int mask,
701 extern int __ceph_caps_issued_other(struct ceph_inode_info *ci,
704 static inline int ceph_caps_issued(struct ceph_inode_info *ci) in ceph_caps_issued() argument
707 spin_lock(&ci->i_ceph_lock); in ceph_caps_issued()
708 issued = __ceph_caps_issued(ci, NULL); in ceph_caps_issued()
709 spin_unlock(&ci->i_ceph_lock); in ceph_caps_issued()
713 static inline int ceph_caps_issued_mask_metric(struct ceph_inode_info *ci, in ceph_caps_issued_mask_metric() argument
717 spin_lock(&ci->i_ceph_lock); in ceph_caps_issued_mask_metric()
718 r = __ceph_caps_issued_mask_metric(ci, mask, touch); in ceph_caps_issued_mask_metric()
719 spin_unlock(&ci->i_ceph_lock); in ceph_caps_issued_mask_metric()
723 static inline int __ceph_caps_dirty(struct ceph_inode_info *ci) in __ceph_caps_dirty() argument
725 return ci->i_dirty_caps | ci->i_flushing_caps; in __ceph_caps_dirty()
729 extern int __ceph_mark_dirty_caps(struct ceph_inode_info *ci, int mask,
732 extern int __ceph_caps_revoking_other(struct ceph_inode_info *ci,
734 extern int ceph_caps_revoking(struct ceph_inode_info *ci, int mask);
735 extern int __ceph_caps_used(struct ceph_inode_info *ci);
737 static inline bool __ceph_is_file_opened(struct ceph_inode_info *ci) in __ceph_is_file_opened() argument
739 return ci->i_nr_by_mode[0]; in __ceph_is_file_opened()
741 extern int __ceph_caps_file_wanted(struct ceph_inode_info *ci);
742 extern int __ceph_caps_wanted(struct ceph_inode_info *ci);
745 extern int __ceph_caps_mds_wanted(struct ceph_inode_info *ci, bool check);
930 extern void ceph_queue_cap_snap(struct ceph_inode_info *ci);
931 extern int __ceph_finish_cap_snap(struct ceph_inode_info *ci,
947 static inline bool __ceph_have_pending_cap_snap(struct ceph_inode_info *ci) in __ceph_have_pending_cap_snap() argument
949 return !list_empty(&ci->i_cap_snaps) && in __ceph_have_pending_cap_snap()
950 list_last_entry(&ci->i_cap_snaps, struct ceph_cap_snap, in __ceph_have_pending_cap_snap()
1008 extern struct ceph_buffer *__ceph_build_xattrs_blob(struct ceph_inode_info *ci);
1009 extern void __ceph_destroy_xattrs(struct ceph_inode_info *ci);
1110 extern void __ceph_remove_caps(struct ceph_inode_info *ci);
1123 struct ceph_inode_info *ci);
1124 extern struct ceph_cap *ceph_get_cap_for_mds(struct ceph_inode_info *ci,
1126 extern void ceph_take_cap_refs(struct ceph_inode_info *ci, int caps,
1128 extern void ceph_get_cap_refs(struct ceph_inode_info *ci, int caps);
1129 extern void ceph_put_cap_refs(struct ceph_inode_info *ci, int had);
1130 extern void ceph_put_cap_refs_no_check_caps(struct ceph_inode_info *ci,
1132 extern void ceph_put_wrbuffer_cap_refs(struct ceph_inode_info *ci, int nr,
1140 extern void ceph_flush_snaps(struct ceph_inode_info *ci,
1142 extern bool __ceph_should_report_size(struct ceph_inode_info *ci);
1143 extern void ceph_check_caps(struct ceph_inode_info *ci, int flags,
1160 extern void ceph_get_fmode(struct ceph_inode_info *ci, int mode, int count);
1161 extern void ceph_put_fmode(struct ceph_inode_info *ci, int mode, int count);
1162 extern void __ceph_touch_fmode(struct ceph_inode_info *ci,
1229 static inline bool __ceph_has_any_quota(struct ceph_inode_info *ci) in __ceph_has_any_quota() argument
1231 return ci->i_max_files || ci->i_max_bytes; in __ceph_has_any_quota()
1236 static inline void __ceph_update_quota(struct ceph_inode_info *ci, in __ceph_update_quota() argument
1240 had_quota = __ceph_has_any_quota(ci); in __ceph_update_quota()
1241 ci->i_max_bytes = max_bytes; in __ceph_update_quota()
1242 ci->i_max_files = max_files; in __ceph_update_quota()
1243 has_quota = __ceph_has_any_quota(ci); in __ceph_update_quota()
1246 ceph_adjust_quota_realms_count(&ci->vfs_inode, has_quota); in __ceph_update_quota()