On 1/24/25 23:36, Alexander Atanasov wrote:
@@ -946,6 +953,8 @@ static int ploop_prepare_bat_update(struct ploop *ploop, 
struct md_page *md,
        map_index_t *to;
        u8 level;
+ lockdep_assert_held(&ploop->bat_lock);
+
        piwb = kmalloc(sizeof(*piwb), GFP_NOIO);
        if (!piwb)
                return -ENOMEM;


I don't see bat_lock in this call stack:

  +-< ploop_prepare_bat_update
    +-< ploop_prepare_reloc_index_wb
    | +-< ploop_grow_update_header
    | | +-< ploop_process_resize_cmd

I guess we need to fix locking in ploop_process_resize_cmd, by moving ploop_grow_update_header under lock.

--
Best regards, Tikhomirov Pavel
Senior Software Developer, Virtuozzo.

_______________________________________________
Devel mailing list
Devel@openvz.org
https://lists.openvz.org/mailman/listinfo/devel

Reply via email to