I won't apply this version, please send v3 with the changes below.
On Tue, 10 Nov 2026 14:46:23 +0300, Andrey Zhadchenko wrote:
> + if (qio && *qio) {
> + ret = submit_read_md_page(qcow2, qio, page_id);
> + if (unlikely(ret == -EEXIST))
> + goto again;
> + return ret;
> + }
Item 4 of the cover letter reply: answer Sashiko's remark on the
unbounded retry, or retry only once.
Why: Sashiko raised it on v1 and again on v2. With fail_function
injecting -EEXIST into qcow2_alloc_and_insert_md_page(), or NULL into
qcow2_md_page_find_or_postpone(), this loop never ends, and
cond_resched() cannot help under md_pages_lock. A real -EEXIST means
the page is in the tree, so one retry always finds it.
The code is otherwise fine, and the message and the Fixes tag are
right.
--
Konstantin Khorenko,
Virtuozzo Linux Kernel Team
_______________________________________________
Devel mailing list
[email protected]
https://lists.openvz.org/mailman/listinfo/devel