We need update comp_bi_status before completion.
Otherwise, completion-waiter reads status before
we updated it.

https://jira.sw.ru/browse/PSBM-133509

Signed-off-by: Kirill Tkhai <[email protected]>
---
 drivers/md/dm-ploop-map.c |    2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/drivers/md/dm-ploop-map.c b/drivers/md/dm-ploop-map.c
index a3f63c238198..16c70ec6901c 100644
--- a/drivers/md/dm-ploop-map.c
+++ b/drivers/md/dm-ploop-map.c
@@ -853,9 +853,9 @@ static void put_piwb(struct ploop_index_wb *piwb)
                        ploop_advance_local_after_bat_wb(ploop, piwb, false);
 
                if (piwb->comp) {
-                       complete(piwb->comp);
                        if (piwb->comp_bi_status)
                                *piwb->comp_bi_status = piwb->bi_status;
+                       complete(piwb->comp);
                }
                free_piwb(piwb);
        }


_______________________________________________
Devel mailing list
[email protected]
https://lists.openvz.org/mailman/listinfo/devel

Reply via email to