From: Christian Schoenebeck <qemu_oss@crudebyte.com>
To: qemu-devel@nongnu.org
Cc: Christian Schoenebeck <qemu_oss@crudebyte.com>,
Greg Kurz <groug@kaod.org>
Subject: Re: 9p: requests efficiency
Date: Sat, 23 Nov 2019 20:26:57 +0100 [thread overview]
Message-ID: <2263612.oZDIEGKQVF@silver> (raw)
In-Reply-To: <2782774.O0duVuAc2B@silver>
On Donnerstag, 21. November 2019 00:37:36 CET Christian Schoenebeck wrote:
> If so, I haven't understood how precisely v9fs_co_run_in_worker() works. I
> mean I understand now how QEMU coroutines are working, and the idea of
> v9fs_co_run_in_worker() is dispatching the passed code block to the worker
> thread, but immediately returning back to main thread and continueing there
> on main thread with other coroutines while the worker thread's dispatched
> coroutine finished. But how that happens there precisely in
> v9fs_co_run_in_worker() is not yet clear to me.
>
> Also where are the worker threads spawned actually?
Never mind about these questions; I figured them out by myself in the
meantime.
Another question though: I see that you introduced those readdir mutex locks
with commit 7cde47d4a89. Do you remember the scenario where this concurrency
issue happened?
V9fsDir exists per file ID. So I think concurrency should only happen there if
the same file ID (of a directory) was shared and used concurrently on guest
side. Because otherwise if the file ID was used by only one thread on guest
side, then all 9p requests on that fid should end up being completely
serialized end to end.
Best regards,
Christian Schoenebeck
prev parent reply other threads:[~2019-11-23 19:28 UTC|newest]
Thread overview: 4+ messages / expand[flat|nested] mbox.gz Atom feed top
2019-11-15 1:10 9p: requests efficiency Christian Schoenebeck
2019-11-15 13:26 ` Greg Kurz
2019-11-20 23:37 ` Christian Schoenebeck
2019-11-23 19:26 ` Christian Schoenebeck [this message]
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=2263612.oZDIEGKQVF@silver \
--to=qemu_oss@crudebyte.com \
--cc=groug@kaod.org \
--cc=qemu-devel@nongnu.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).