Lines Matching refs:osb

322 	 * Could protect more on osb as it's very short lived.
357 * Must hold local alloc i_rwsem and osb->osb_lock to change
488 static inline int ocfs2_sparse_alloc(struct ocfs2_super *osb)
490 if (osb->s_feature_incompat & OCFS2_FEATURE_INCOMPAT_SPARSE_ALLOC)
495 static inline int ocfs2_writes_unwritten_extents(struct ocfs2_super *osb)
500 if (!ocfs2_sparse_alloc(osb))
503 if (osb->s_feature_ro_compat & OCFS2_FEATURE_RO_COMPAT_UNWRITTEN)
508 static inline int ocfs2_supports_append_dio(struct ocfs2_super *osb)
510 if (osb->s_feature_incompat & OCFS2_FEATURE_INCOMPAT_APPEND_DIO)
516 static inline int ocfs2_supports_inline_data(struct ocfs2_super *osb)
518 if (osb->s_feature_incompat & OCFS2_FEATURE_INCOMPAT_INLINE_DATA)
523 static inline int ocfs2_supports_xattr(struct ocfs2_super *osb)
525 if (osb->s_feature_incompat & OCFS2_FEATURE_INCOMPAT_XATTR)
530 static inline int ocfs2_meta_ecc(struct ocfs2_super *osb)
532 if (osb->s_feature_incompat & OCFS2_FEATURE_INCOMPAT_META_ECC)
537 static inline int ocfs2_supports_indexed_dirs(struct ocfs2_super *osb)
539 if (osb->s_feature_incompat & OCFS2_FEATURE_INCOMPAT_INDEXED_DIRS)
544 static inline int ocfs2_supports_discontig_bg(struct ocfs2_super *osb)
546 if (osb->s_feature_incompat & OCFS2_FEATURE_INCOMPAT_DISCONTIG_BG)
551 static inline unsigned int ocfs2_link_max(struct ocfs2_super *osb)
553 if (ocfs2_supports_indexed_dirs(osb))
588 static inline int ocfs2_refcount_tree(struct ocfs2_super *osb)
590 if (osb->s_feature_incompat & OCFS2_FEATURE_INCOMPAT_REFCOUNT_TREE)
599 static inline void ocfs2_set_osb_flag(struct ocfs2_super *osb,
602 spin_lock(&osb->osb_lock);
603 osb->osb_flags |= flag;
604 spin_unlock(&osb->osb_lock);
607 static inline void ocfs2_set_ro_flag(struct ocfs2_super *osb,
610 spin_lock(&osb->osb_lock);
611 osb->osb_flags &= ~(OCFS2_OSB_SOFT_RO|OCFS2_OSB_HARD_RO);
613 osb->osb_flags |= OCFS2_OSB_HARD_RO;
615 osb->osb_flags |= OCFS2_OSB_SOFT_RO;
616 spin_unlock(&osb->osb_lock);
619 static inline int ocfs2_is_hard_readonly(struct ocfs2_super *osb)
623 spin_lock(&osb->osb_lock);
624 ret = osb->osb_flags & OCFS2_OSB_HARD_RO;
625 spin_unlock(&osb->osb_lock);
630 static inline int ocfs2_is_soft_readonly(struct ocfs2_super *osb)
634 spin_lock(&osb->osb_lock);
635 ret = osb->osb_flags & OCFS2_OSB_SOFT_RO;
636 spin_unlock(&osb->osb_lock);
641 static inline int ocfs2_clusterinfo_valid(struct ocfs2_super *osb)
643 return (osb->s_feature_incompat &
648 static inline int ocfs2_userspace_stack(struct ocfs2_super *osb)
650 if (ocfs2_clusterinfo_valid(osb) &&
651 memcmp(osb->osb_cluster_stack, OCFS2_CLASSIC_CLUSTER_STACK,
657 static inline int ocfs2_o2cb_stack(struct ocfs2_super *osb)
659 if (ocfs2_clusterinfo_valid(osb) &&
660 !memcmp(osb->osb_cluster_stack, OCFS2_CLASSIC_CLUSTER_STACK,
666 static inline int ocfs2_cluster_o2cb_global_heartbeat(struct ocfs2_super *osb)
668 return ocfs2_o2cb_stack(osb) &&
669 (osb->osb_stackflags & OCFS2_CLUSTER_O2CB_GLOBAL_HEARTBEAT);
672 static inline int ocfs2_mount_local(struct ocfs2_super *osb)
674 return (osb->s_feature_incompat & OCFS2_FEATURE_INCOMPAT_LOCAL_MOUNT);
677 static inline int ocfs2_uses_extended_slot_map(struct ocfs2_super *osb)
679 return (osb->s_feature_incompat &