On Mon, Apr 29, 2019 at 10:15:00PM +0200, Andrea Parri wrote:
> This barrier only applies to the read-modify-write operations; in
> particular, it does not apply to the atomic64_set() primitive.
> 
> Replace the barrier with an smp_mb().
> 

> @@ -541,7 +541,7 @@ static inline void __ceph_dir_set_complete(struct 
> ceph_inode_info *ci,
>                                          long long release_count,
>                                          long long ordered_count)
>  {
> -     smp_mb__before_atomic();

same
        /*
         * XXX: the comment that explain this barrier goes here.
         */

> +     smp_mb();

>       atomic64_set(&ci->i_complete_seq[0], release_count);
>       atomic64_set(&ci->i_complete_seq[1], ordered_count);
>  }
> -- 
> 2.7.4
> 

Reply via email to