4.20-stable review patch.  If anyone has any objections, please let me know.

------------------

From: Gao Xiang <gaoxian...@huawei.com>

commit 948bbdb1818b7ad6e539dad4fbd2dd4650793ea9 upstream.

Just like other generic locks, insert a full barrier
in case of memory reorder.

Reviewed-by: Chao Yu <yuch...@huawei.com>
Signed-off-by: Gao Xiang <gaoxian...@huawei.com>
Signed-off-by: Greg Kroah-Hartman <gre...@linuxfoundation.org>

---
 drivers/staging/erofs/internal.h |    5 +++++
 1 file changed, 5 insertions(+)

--- a/drivers/staging/erofs/internal.h
+++ b/drivers/staging/erofs/internal.h
@@ -209,6 +209,11 @@ static inline bool erofs_workgroup_try_t
 static inline void erofs_workgroup_unfreeze(struct erofs_workgroup *grp,
                                            int orig_val)
 {
+       /*
+        * other observers should notice all modifications
+        * in the freezing period.
+        */
+       smp_mb();
        atomic_set(&grp->refcount, orig_val);
        preempt_enable();
 }


Reply via email to