[PATCH v2 4/5] 9pfs: make V9fsPath usable via QArray API

2021-08-22 Thread Christian Schoenebeck
Signed-off-by: Christian Schoenebeck --- fsdev/file-op-9p.h | 2 ++ hw/9pfs/9p.c | 2 ++ 2 files changed, 4 insertions(+) diff --git a/fsdev/file-op-9p.h b/fsdev/file-op-9p.h index 42f677cf38..7630f0e538 100644 --- a/fsdev/file-op-9p.h +++ b/fsdev/file-op-9p.h @@ -18,6 +18,7 @@ #include

[PATCH v2 5/5] 9pfs: use QArray in v9fs_walk()

2021-08-22 Thread Christian Schoenebeck
Signed-off-by: Christian Schoenebeck --- hw/9pfs/9p.c | 17 + 1 file changed, 5 insertions(+), 12 deletions(-) diff --git a/hw/9pfs/9p.c b/hw/9pfs/9p.c index b59572fa79..91062ee4d6 100644 --- a/hw/9pfs/9p.c +++ b/hw/9pfs/9p.c @@ -1707,13 +1707,14 @@ static void coroutine_fn

[PATCH v2 3/5] 9pfs: make V9fsString usable via QArray API

2021-08-22 Thread Christian Schoenebeck
Signed-off-by: Christian Schoenebeck --- fsdev/9p-marshal.c | 2 ++ fsdev/9p-marshal.h | 3 +++ 2 files changed, 5 insertions(+) diff --git a/fsdev/9p-marshal.c b/fsdev/9p-marshal.c index a01bba6908..fbfc2a62cd 100644 --- a/fsdev/9p-marshal.c +++ b/fsdev/9p-marshal.c @@ -18,6 +18,8

[PATCH v2 1/5] qemu/qarray.h: introduce QArray

2021-08-22 Thread Christian Schoenebeck
Implements deep auto free of arrays while retaining common C-style squared bracket access. Signed-off-by: Christian Schoenebeck --- include/qemu/qarray.h | 150 ++ 1 file changed, 150 insertions(+) create mode 100644 include/qemu/qarray.h diff --git a

[PATCH v2 0/5] introduce QArray

2021-08-22 Thread Christian Schoenebeck
ing __builtin_types_compatible_p() instead of a weak check using sizeof() [patch 2]. Christian Schoenebeck (5): qemu/qarray.h: introduce QArray qemu/qarray.h: check scalar type in QARRAY_CREATE() 9pfs: make V9fsString usable via QArray API 9pfs: make V9fsPath usable via QArray API 9pfs: use QArray in v9fs_w

Re: [PATCH 1/5] qemu/qarray.h: introduce QArray

2021-08-22 Thread Christian Schoenebeck
On Samstag, 21. August 2021 22:18:18 CEST Christian Schoenebeck wrote: > Implements deep auto free of arrays while retaining common C-style > squared bracket access. > > Signed-off-by: Christian Schoenebeck > --- As I'm going to send a v2 anyway, I'll also just

Re: [PATCH 2/5] qemu/qarray.h: weak scalar type check in QARRAY_CREATE()

2021-08-22 Thread Christian Schoenebeck
On Sonntag, 22. August 2021 06:11:58 CEST Richard Henderson wrote: > On 8/21/21 1:30 PM, Christian Schoenebeck wrote: > > Unfortunately something like > > > >_Static_assert(typeof(a) == typeof(b), "type mismatch"); > > > > is currently not su

[PATCH 5/5] 9pfs: use QArray in v9fs_walk()

2021-08-21 Thread Christian Schoenebeck
Signed-off-by: Christian Schoenebeck --- hw/9pfs/9p.c | 17 + 1 file changed, 5 insertions(+), 12 deletions(-) diff --git a/hw/9pfs/9p.c b/hw/9pfs/9p.c index b59572fa79..91062ee4d6 100644 --- a/hw/9pfs/9p.c +++ b/hw/9pfs/9p.c @@ -1707,13 +1707,14 @@ static void coroutine_fn

[PATCH 4/5] 9pfs: make V9fsPath usable via QArray API

2021-08-21 Thread Christian Schoenebeck
Signed-off-by: Christian Schoenebeck --- fsdev/file-op-9p.h | 2 ++ hw/9pfs/9p.c | 2 ++ 2 files changed, 4 insertions(+) diff --git a/fsdev/file-op-9p.h b/fsdev/file-op-9p.h index 42f677cf38..7630f0e538 100644 --- a/fsdev/file-op-9p.h +++ b/fsdev/file-op-9p.h @@ -18,6 +18,7 @@ #include

[PATCH 3/5] 9pfs: make V9fsString usable via QArray API

2021-08-21 Thread Christian Schoenebeck
Signed-off-by: Christian Schoenebeck --- fsdev/9p-marshal.c | 2 ++ fsdev/9p-marshal.h | 3 +++ 2 files changed, 5 insertions(+) diff --git a/fsdev/9p-marshal.c b/fsdev/9p-marshal.c index a01bba6908..fbfc2a62cd 100644 --- a/fsdev/9p-marshal.c +++ b/fsdev/9p-marshal.c @@ -18,6 +18,8

[PATCH 2/5] qemu/qarray.h: weak scalar type check in QARRAY_CREATE()

2021-08-21 Thread Christian Schoenebeck
Unfortunately something like _Static_assert(typeof(a) == typeof(b), "type mismatch"); is currently not suported by C. So for the time being at least check that the size of the scalar types match at compile time. Signed-off-by: Christian Schoenebeck --- include/qemu/qarray.h | 6

[PATCH 0/5] introduce QArray

2021-08-21 Thread Christian Schoenebeck
patches: https://github.com/cschoenebeck/qemu/commit/7772715d43908235940f5b7dec68d0458b1ccdf4 https://github.com/cschoenebeck/qemu/commit/838b55e392ea7d52e714fdba1db777f658aee2cc Christian Schoenebeck (5): qemu/qarray.h: introduce QArray qemu/qarray.h: weak scalar type check in QARRAY_CREATE

[PATCH 1/5] qemu/qarray.h: introduce QArray

2021-08-21 Thread Christian Schoenebeck
Implements deep auto free of arrays while retaining common C-style squared bracket access. Signed-off-by: Christian Schoenebeck --- include/qemu/qarray.h | 148 ++ 1 file changed, 148 insertions(+) create mode 100644 include/qemu/qarray.h diff --git a

Re: [PATCH 0/2] 9pfs: v9fs_walk() cleanup

2021-08-20 Thread Christian Schoenebeck
On Dienstag, 17. August 2021 15:52:39 CEST Christian Schoenebeck wrote: > Few cleanup patches for function v9fs_walk() as discussed last month. > > In patch 2 array variables 'wnames' and 'pathes' are omitted because they > contain dynamically allocated memory pe

Re: [PATCH 2/2] hw/9pfs: use g_autofree in v9fs_walk() where possible

2021-08-20 Thread Christian Schoenebeck
On Freitag, 20. August 2021 14:34:11 CEST Greg Kurz wrote: > On Fri, 20 Aug 2021 14:23:26 +0200 > > Christian Schoenebeck wrote: > > On Freitag, 20. August 2021 12:40:31 CEST Greg Kurz wrote: > > > On Tue, 17 Aug 2021 15:46:50 +0200 > > > > > > Christia

Re: [PATCH 2/2] hw/9pfs: use g_autofree in v9fs_walk() where possible

2021-08-20 Thread Christian Schoenebeck
On Freitag, 20. August 2021 12:40:31 CEST Greg Kurz wrote: > On Tue, 17 Aug 2021 15:46:50 +0200 > > Christian Schoenebeck wrote: > > Suggested-by: Greg Kurz > > Signed-off-by: Christian Schoenebeck > > --- > > > > hw/9pfs/9p.c | 7 +++ > >

Re: [PATCH 1/2] hw/9pfs: avoid 'path' copy in v9fs_walk()

2021-08-20 Thread Christian Schoenebeck
On Freitag, 20. August 2021 12:35:49 CEST Greg Kurz wrote: > On Tue, 17 Aug 2021 14:38:24 +0200 > > Christian Schoenebeck wrote: > > The v9fs_walk() function resolves all client submitted path nodes to the > > local 'pathes' array. Using a separate string scalar

Re: [PATCH 1/3] MAINTAINERS: Split Audio backends VS frontends

2021-08-18 Thread Christian Schoenebeck
On Dienstag, 17. August 2021 19:57:21 CEST Philippe Mathieu-Daudé wrote: > On 8/17/21 6:12 PM, Christian Schoenebeck wrote: > > On Dienstag, 17. August 2021 14:41:27 CEST Gerd Hoffmann wrote: > >> Hi, > >> > >>>> +Overall Audio frontends >

Re: [PATCH 1/3] MAINTAINERS: Split Audio backends VS frontends

2021-08-17 Thread Christian Schoenebeck
> the emulated/virtual device as seen by the guest and "backend" being the > host-side wireup (i.e. -audiodev / -blockdev / -chardev / -netdev / ...) > > take care, > Gerd Yeah, I was seeing this (like usual) more from an external/new developer perspective where the semantic for "frontend"/"backend" is not that obvious here. But okay ... Acked-by: Christian Schoenebeck Best regards, Christian Schoenebeck

[PATCH 0/2] 9pfs: v9fs_walk() cleanup

2021-08-17 Thread Christian Schoenebeck
Few cleanup patches for function v9fs_walk() as discussed last month. In patch 2 array variables 'wnames' and 'pathes' are omitted because they contain dynamically allocated memory per array element which need to be freed individually before freeing the array. Christian S

[PATCH 2/2] hw/9pfs: use g_autofree in v9fs_walk() where possible

2021-08-17 Thread Christian Schoenebeck
Suggested-by: Greg Kurz Signed-off-by: Christian Schoenebeck --- hw/9pfs/9p.c | 7 +++ 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/hw/9pfs/9p.c b/hw/9pfs/9p.c index 4d642ab12a..c857b31321 100644 --- a/hw/9pfs/9p.c +++ b/hw/9pfs/9p.c @@ -1703,11 +1703,12 @@ static bool

[PATCH 1/2] hw/9pfs: avoid 'path' copy in v9fs_walk()

2021-08-17 Thread Christian Schoenebeck
r was that in case of an error the respective 'pathes' element would not be filled. Right now this is not an issue as the v9fs_walk() function returns as soon as any error occurs. Suggested-by: Greg Kurz Signed-off-by: Christian Schoenebeck --- hw/9pfs/9p.c | 8 1 file cha

Re: [PATCH 3/3] MAINTAINERS: Split Audio backends sections

2021-08-17 Thread Christian Schoenebeck
PulseAudio backend > +M: Gerd Hoffmann > +S: Odd Fixes > +F: audio/paaudio.c > + > +SDL Audio backend > +M: Gerd Hoffmann > +S: Odd Fixes > +F: audio/sdlaudio.c > + > Block layer core > M: Kevin Wolf > M: Hanna Reitz Reviewed-by: Christian Schoenebeck Best regards, Christian Schoenebeck

Re: [PATCH 2/3] MAINTAINERS: Remove SPICE from Audio backends section

2021-08-17 Thread Christian Schoenebeck
io.json > > Block layer core Reviewed-by: Christian Schoenebeck Best regards, Christian Schoenebeck

Re: [PATCH 1/3] MAINTAINERS: Split Audio backends VS frontends

2021-08-17 Thread Christian Schoenebeck
t; -F: tests/qtest/fuzz-sb16-test.c > > Block layer core > M: Kevin Wolf Likewise I would call this section "Shared/common QEMU audio library/ subsystem" or something like that instead of "Overall Audio backends". Best regards, Christian Schoenebeck

Re: [PATCH 3/7] MAINTAINERS: update audio entry.

2021-08-14 Thread Christian Schoenebeck
On Donnerstag, 12. August 2021 15:13:24 CEST Philippe Mathieu-Daudé wrote: > Hi all, > > On 8/12/21 2:24 PM, Christian Schoenebeck wrote: > > On Donnerstag, 12. August 2021 10:42:10 CEST Gerd Hoffmann wrote: > >> Hi, > >> > >>>> On Tue, Aug

Re: [PATCH 3/7] MAINTAINERS: update audio entry.

2021-08-12 Thread Christian Schoenebeck
m account (unless you already have > one of course) so you can help triage bugs + issues. You can also > easily run qemu CI then (just push a branch to a qemu repo fork). > > HTH & take care, > Gerd I will add myself as reviewer for audio to help out a bit at least. I won't be able to take over maintainership at this point though. I wait for your PR to be merged by Peter before sending my MAINTAINERS patch. Best regards, Christian Schoenebeck

Re: [PATCH v1 14/21] contrib/gitdm: add domain-map for Crudebyte

2021-07-14 Thread Christian Schoenebeck
On Mittwoch, 14. Juli 2021 11:36:31 CEST Alex Bennée wrote: > Let me know if you want to be moved to individual contributor or you > want to keep with the work domain mapping. > > Signed-off-by: Alex Bennée > Cc: Christian Schoenebeck > --- > contrib/gitdm/domain-map | 1 +

Re: [PULL 0/8] 9p queue 2021-07-05

2021-07-05 Thread Christian Schoenebeck
On Montag, 5. Juli 2021 15:57:41 CEST Peter Maydell wrote: > On Mon, 5 Jul 2021 at 12:24, Christian Schoenebeck > > wrote: > > The following changes since commit 711c0418c8c1ce3a24346f058b001c4c5a2f0f81: > > Merge remote-tracking branch 'remotes/philmd/tags/mips-20

[PULL 4/8] 9pfs: capture root stat

2021-07-05 Thread Christian Schoenebeck
ntical to the export root. Signed-off-by: Christian Schoenebeck Reviewed-by: Greg Kurz Message-Id: --- hw/9pfs/9p.c | 10 +- hw/9pfs/9p.h | 1 + 2 files changed, 10 insertions(+), 1 deletion(-) diff --git a/hw/9pfs/9p.c b/hw/9pfs/9p.c index e10a02f71d..eb15ec2082 100644 --- a/hw/9pf

[PULL 1/8] 9pfs: add link to 9p developer docs

2021-07-05 Thread Christian Schoenebeck
To lower the entry level for new developers, add a link to the 9p developer docs (i.e. qemu wiki) to MAINTAINERS and to the beginning of 9p source files, that is to: https://wiki.qemu.org/Documentation/9p Signed-off-by: Christian Schoenebeck Acked-by: Greg Kurz Message-Id: --- MAINTAINERS

[PULL 0/8] 9p queue 2021-07-05

2021-07-05 Thread Christian Schoenebeck
t supplied relative path is the export root. * Performance optimization of Twalk requests. * Code cleanup. ---- Christian Schoenebeck (8): 9pfs: add link to 9p developer docs 9pfs: simplify v9fs_walk() 9pfs: fix no

[PULL 7/8] 9pfs: drop root_qid

2021-07-05 Thread Christian Schoenebeck
There is no longer a user of root_qid, so drop it. Signed-off-by: Christian Schoenebeck Reviewed-by: Greg Kurz Message-Id: <6896dd161d3257db6b0513842a14f87ca191fdf6.1622821729.git.qemu_...@crudebyte.com> --- hw/9pfs/9p.c | 1 - hw/9pfs/9p.h | 1 - 2 files changed, 2 deletions(-) diff -

[PULL 2/8] 9pfs: simplify v9fs_walk()

2021-07-05 Thread Christian Schoenebeck
There is only one comparison between nwnames and P9_MAXWELEM required. Signed-off-by: Christian Schoenebeck Reviewed-by: Greg Kurz Message-Id: --- hw/9pfs/9p.c | 9 + 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/hw/9pfs/9p.c b/hw/9pfs/9p.c index 0fa776af09..89aa07db78

[PULL 6/8] 9pfs: replace not_same_qid() by same_stat_id()

2021-07-05 Thread Christian Schoenebeck
Signed-off-by: Christian Schoenebeck Reviewed-by: Greg Kurz Message-Id: <26aa465ff9cc9c07e053331554a02fdae3994417.1622821729.git.qemu_...@crudebyte.com> --- hw/9pfs/9p.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/hw/9pfs/9p.c b/hw/9pfs/9p.c index 0e3857798d..4

[PULL 8/8] 9pfs: reduce latency of Twalk

2021-07-05 Thread Christian Schoenebeck
s for Twalk handling to its theoritical minimum of exactly 2 thread hops: main thread -> fs worker thread -> main thread This is achieved by doing all the required fs driver tasks altogether in a single v9fs_co_run_in_worker({ ... }); code block. Signed-off-by: Christian Schoenebeck Review

[PULL 3/8] 9pfs: fix not_same_qid()

2021-07-05 Thread Christian Schoenebeck
version or type members. Signed-off-by: Christian Schoenebeck Reviewed-by: Greg Kurz Message-Id: --- hw/9pfs/9p.c | 5 + 1 file changed, 1 insertion(+), 4 deletions(-) diff --git a/hw/9pfs/9p.c b/hw/9pfs/9p.c index 89aa07db78..e10a02f71d 100644 --- a/hw/9pfs/9p.c +++ b/hw/9pfs/9p.c @

[PULL 5/8] 9pfs: drop fid_to_qid()

2021-07-05 Thread Christian Schoenebeck
There is only one user of fid_to_qid() which is v9fs_walk(). Let's open-code fid_to_qid() directly within v9fs_walk(), because fid_to_qid() hides the POSIX stat buffer which we are going to need in the subsequent patch. Signed-off-by: Christian Schoenebeck Reviewed-by: Greg Kurz Messa

Re: [PATCH v2 7/7] 9pfs: reduce latency of Twalk

2021-07-02 Thread Christian Schoenebeck
On Freitag, 2. Juli 2021 16:36:56 CEST Greg Kurz wrote: > On Fri, 4 Jun 2021 17:38:31 +0200 > > Christian Schoenebeck wrote: > > As with previous performance optimization on Treaddir handling; > > reduce the overall latency, i.e. overall time spent on processing > >

Re: [PATCH v2 0/7] 9pfs: Twalk optimization

2021-06-28 Thread Christian Schoenebeck
On Freitag, 4. Juni 2021 20:23:21 CEST Christian Schoenebeck wrote: > On Freitag, 4. Juni 2021 18:31:28 CEST Greg Kurz wrote: > > On Fri, 4 Jun 2021 17:48:49 +0200 > > > > Christian Schoenebeck wrote: > > > This patch set reduces latency of Twalk handling b

Re: [PATCH v2 0/7] 9pfs: Twalk optimization

2021-06-04 Thread Christian Schoenebeck
On Freitag, 4. Juni 2021 18:31:28 CEST Greg Kurz wrote: > On Fri, 4 Jun 2021 17:48:49 +0200 > > Christian Schoenebeck wrote: > > This patch set reduces latency of Twalk handling by reducing the amount of > > thread hops, similar to previous Treaddir optimization. > >

[PATCH v2 1/7] 9pfs: fix not_same_qid()

2021-06-04 Thread Christian Schoenebeck
version or type members. Signed-off-by: Christian Schoenebeck --- hw/9pfs/9p.c | 5 + 1 file changed, 1 insertion(+), 4 deletions(-) diff --git a/hw/9pfs/9p.c b/hw/9pfs/9p.c index 89aa07db78..e10a02f71d 100644 --- a/hw/9pfs/9p.c +++ b/hw/9pfs/9p.c @@ -1707,10 +1707,7 @@ static bool name_

[PATCH v2 0/7] 9pfs: Twalk optimization

2021-06-04 Thread Christian Schoenebeck
nto separate [PATCH 5]. * Split out dropping root_qid into separate [PATCH 6]. Christian Schoenebeck (7): 9pfs: fix not_same_qid() 9pfs: Twalk benchmark 9pfs: capture root stat 9pfs: drop fid_to_qid() 9pfs: replace not_same_qid() by same_stat_id() 9pfs: drop root_qid 9pfs: red

[PATCH v2 5/7] 9pfs: replace not_same_qid() by same_stat_id()

2021-06-04 Thread Christian Schoenebeck
Signed-off-by: Christian Schoenebeck --- hw/9pfs/9p.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/hw/9pfs/9p.c b/hw/9pfs/9p.c index 0e3857798d..47b000d3a9 100644 --- a/hw/9pfs/9p.c +++ b/hw/9pfs/9p.c @@ -1696,9 +1696,9 @@ static bool name_is_illegal(const char *name)

[PATCH v2 7/7] 9pfs: reduce latency of Twalk

2021-06-04 Thread Christian Schoenebeck
s for Twalk handling to its theoritical minimum of exactly 2 thread hops: main thread -> fs worker thread -> main thread This is achieved by doing all the required fs driver tasks altogether in a single v9fs_co_run_in_worker({ ... }); code block. Signed-off-by: Christian Schoenebeck --- h

[PATCH v2 4/7] 9pfs: drop fid_to_qid()

2021-06-04 Thread Christian Schoenebeck
There is only one user of fid_to_qid() which is v9fs_walk(). Let's open-code fid_to_qid() directly within v9fs_walk(), because fid_to_qid() hides the POSIX stat buffer which we are going to need in the subsequent patch. Signed-off-by: Christian Schoenebeck --- hw/9pfs/9p.c

[PATCH v2 6/7] 9pfs: drop root_qid

2021-06-04 Thread Christian Schoenebeck
There is no longer a user of root_qid, so drop it. Signed-off-by: Christian Schoenebeck --- hw/9pfs/9p.c | 1 - hw/9pfs/9p.h | 1 - 2 files changed, 2 deletions(-) diff --git a/hw/9pfs/9p.c b/hw/9pfs/9p.c index 47b000d3a9..7be07f2d68 100644 --- a/hw/9pfs/9p.c +++ b/hw/9pfs/9p.c @@ -1444,7

[PATCH v2 3/7] 9pfs: capture root stat

2021-06-04 Thread Christian Schoenebeck
ntical to the export root. Signed-off-by: Christian Schoenebeck --- hw/9pfs/9p.c | 10 +- hw/9pfs/9p.h | 1 + 2 files changed, 10 insertions(+), 1 deletion(-) diff --git a/hw/9pfs/9p.c b/hw/9pfs/9p.c index e10a02f71d..eb15ec2082 100644 --- a/hw/9pfs/9p.c +++ b/hw/9pfs/9p.c @@ -1400

[PATCH v2 2/7] 9pfs: Twalk benchmark

2021-06-04 Thread Christian Schoenebeck
This patch is not intentended to be merged, it just acts as performance A/B comparison benchmark for the subsequent patches. Signed-off-by: Christian Schoenebeck --- tests/qtest/virtio-9p-test.c | 30 ++ 1 file changed, 30 insertions(+) diff --git a/tests/qtest

Re: [PATCH 2/3] 9pfs: capture root stat

2021-06-04 Thread Christian Schoenebeck
On Donnerstag, 27. Mai 2021 19:04:11 CEST Christian Schoenebeck wrote: > We already capture the QID of the exported 9p root path, i.e. to > prevent client access outside the defined, exported filesystem's tree. > This is currently checked by comparing the root QID with anoth

Re: [PATCH 3/3] 9pfs: reduce latency of Twalk

2021-06-04 Thread Christian Schoenebeck
On Donnerstag, 27. Mai 2021 20:24:23 CEST Christian Schoenebeck wrote: > On Donnerstag, 27. Mai 2021 19:05:43 CEST Christian Schoenebeck wrote: > > As on the previous performance optimization on Treaddir handling; > > reduce the overall latency, i.e. overall time spent on process

Re: [PATCH 3/3] 9pfs: reduce latency of Twalk

2021-05-27 Thread Christian Schoenebeck
On Donnerstag, 27. Mai 2021 19:05:43 CEST Christian Schoenebeck wrote: > As on the previous performance optimization on Treaddir handling; > reduce the overall latency, i.e. overall time spent on processing > a Twalk request by reducing the amount of thread hops between the > 9p s

[PATCH 0/3] 9pfs: Twalk optimization

2021-05-27 Thread Christian Schoenebeck
), there are some things about Twalk handling in general which I am yet unsure about. So I'll add some of my thoughts as reply to patch 3, and depending on that I might still cleanup / reduce some of the code. Christian Schoenebeck (3): 9pfs: Twalk benchmark 9pfs: capture root stat 9pfs: r

[PATCH 2/3] 9pfs: capture root stat

2021-05-27 Thread Christian Schoenebeck
ntical to the export root. Signed-off-by: Christian Schoenebeck --- hw/9pfs/9p.c | 10 +- hw/9pfs/9p.h | 1 + 2 files changed, 10 insertions(+), 1 deletion(-) diff --git a/hw/9pfs/9p.c b/hw/9pfs/9p.c index 89aa07db78..825de1561d 100644 --- a/hw/9pfs/9p.c +++ b/hw/9pfs/9p.c @@ -1400

[PATCH 1/3] 9pfs: Twalk benchmark

2021-05-27 Thread Christian Schoenebeck
This patch is not intentended to be merged, it just acts as performance A/B comparison benchmark for the subsequent patch. Signed-off-by: Christian Schoenebeck --- tests/qtest/virtio-9p-test.c | 30 ++ 1 file changed, 30 insertions(+) diff --git a/tests/qtest/virtio

[PATCH 3/3] 9pfs: reduce latency of Twalk

2021-05-27 Thread Christian Schoenebeck
9p server's root_qid member variable is no longer used, nor are functions fid_to_qid() and not_same_qid(), hence drop them. Signed-off-by: Christian Schoenebeck --- hw/9pfs/9p.c | 118 +-- hw/9pfs/9p.h | 1 - 2 files changed, 76 insertions(

Re: 9pfs: scope of rename_lock?

2021-05-26 Thread Christian Schoenebeck
On Dienstag, 25. Mai 2021 13:41:22 CEST Christian Schoenebeck wrote: > I started to work on a patch set on this. > > I try to get rid of that rename_lock entirely by letting the worker threads > only access temporary copies e.g. of the fid path instead of allowing the > worker th

Re: 9pfs: scope of rename_lock?

2021-05-25 Thread Christian Schoenebeck
On Freitag, 21. Mai 2021 13:59:47 CEST Greg Kurz wrote: > On Sun, 16 May 2021 19:06:44 +0200 > > Christian Schoenebeck wrote: > > Hi Greg, > > > > while reviewing the 9p code base for further optimizations, I stumbled > > over > > the 'rename_lock

Re: [PATCH] 9pfs: simplify v9fs_walk()

2021-05-17 Thread Christian Schoenebeck
On Montag, 17. Mai 2021 13:35:09 CEST Greg Kurz wrote: > On Sun, 16 May 2021 17:55:34 +0200 > > Christian Schoenebeck wrote: > > There is only one comparison between nwnames and P9_MAXWELEM required. > > > > Signed-off-by: Christian Schoenebeck > > --- >

[PATCH] 9pfs: simplify v9fs_walk()

2021-05-16 Thread Christian Schoenebeck
There is only one comparison between nwnames and P9_MAXWELEM required. Signed-off-by: Christian Schoenebeck --- hw/9pfs/9p.c | 9 + 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/hw/9pfs/9p.c b/hw/9pfs/9p.c index 0fa776af09..89aa07db78 100644 --- a/hw/9pfs/9p.c +++ b/hw

9pfs: scope of rename_lock?

2021-05-16 Thread Christian Schoenebeck
refore my question: rename_lock is currently a global lock. Wouldn't it make more sense to transform it from a global lock from struct V9fsState -> struct V9fsFidState and just let it protect that fidp->path variable locally there? Best regards, Christian Schoenebeck

Re: [PATCH] 9pfs: add link to 9p developer docs

2021-05-12 Thread Christian Schoenebeck
On Mittwoch, 12. Mai 2021 14:39:06 CEST Greg Kurz wrote: > On Wed, 12 May 2021 12:25:56 +0200 > > Christian Schoenebeck wrote: > > On Dienstag, 11. Mai 2021 21:57:53 CEST Connor Kuehl wrote: > > > On 5/6/21 8:12 AM, Christian Schoenebeck wrote: > > > > To lowe

[Bug 1908832] Re: jack audio dev produces no sound

2021-05-12 Thread Christian Schoenebeck
Just for the records: the proposed patch was discussed on the QEMU mailing list, but there was no final consensus (yet) to accept the patch. Full discussion: https://www.mail-archive.com/qemu-devel@nongnu.org/msg78.html It's probably Ok to let this report expire for now. If there are more use

Re: [PATCH] 9pfs: add link to 9p developer docs

2021-05-12 Thread Christian Schoenebeck
On Dienstag, 11. Mai 2021 21:57:53 CEST Connor Kuehl wrote: > On 5/6/21 8:12 AM, Christian Schoenebeck wrote: > > To lower the entry level for new developers, add a link to the > > 9p developer docs (i.e. qemu wiki) at the beginning of 9p source > > files, that is to:

[PATCH] 9pfs: add link to 9p developer docs

2021-05-06 Thread Christian Schoenebeck
To lower the entry level for new developers, add a link to the 9p developer docs (i.e. qemu wiki) at the beginning of 9p source files, that is to: https://wiki.qemu.org/Documentation/9p Signed-off-by: Christian Schoenebeck --- hw/9pfs/9p-local.c | 5 + hw/9pfs/9p-posix-acl.c

[Bug 1785902] Re: local/9pfs: Too many levels of symbolic links

2021-05-02 Thread Christian Schoenebeck
Enrico, with security_model=mapped (a.k.a. security_model=mapped-xattr) 9p is not following symlinks on host. That's the expected behaviour. There are 2 distinct models: security_model=passthrough uses the ownership information, permissions and symlink info etc. directly from the host's file syst

Re: [PATCH 0/4] add in-tree 9pfs developers documentation

2021-04-07 Thread Christian Schoenebeck
On Mittwoch, 7. April 2021 09:32:30 CEST Greg Kurz wrote: > On Tue, 06 Apr 2021 14:27:41 +0200 > > Christian Schoenebeck wrote: > > On Dienstag, 23. März 2021 20:40:20 CEST Christian Schoenebeck wrote: > > > The original source for the QEMU 9p developers documen

Re: [PATCH 0/4] add in-tree 9pfs developers documentation

2021-04-06 Thread Christian Schoenebeck
On Dienstag, 23. März 2021 20:40:20 CEST Christian Schoenebeck wrote: > The original source for the QEMU 9p developers documentation is: > > https://wiki.qemu.org/Documentation/9p > > This patch set adds it as in-tree .rst file along with its pictures to the > QEMU source tre

[PATCH 4/4] MAINTAINERS: add responsibility for docs/devel/9p.rst

2021-03-23 Thread Christian Schoenebeck
Add recently added file docs/devel/9p.rst into responsibility of 9p maintainers. Signed-off-by: Christian Schoenebeck --- MAINTAINERS | 1 + 1 file changed, 1 insertion(+) diff --git a/MAINTAINERS b/MAINTAINERS index 9147e9a429..62b1928a38 100644 --- a/MAINTAINERS +++ b/MAINTAINERS @@ -1885,6

[PATCH 0/4] add in-tree 9pfs developers documentation

2021-03-23 Thread Christian Schoenebeck
I manually adjusted afterwards. Christian Schoenebeck (4): docs/devel: add 9p.rst docs/devel: add directory for pictures docs/devel/9p: fix references to pictures MAINTAINERS: add responsibility for docs/devel/9p.rst MAINTAINERS | 1 + docs/devel/9p.rst

[PATCH 3/4] docs/devel/9p: fix references to pictures

2021-03-23 Thread Christian Schoenebeck
ectory, so prefix references to those pictures with 'img/'. Also the auto conversion tool 'pandoc' did not replace the image references by a correct 'image' rst keyword, so correct that as well. Signed-off-by: Christian Schoenebeck --- docs/devel/9p.rst | 6 ++

[PATCH 2/4] docs/devel: add directory for pictures

2021-03-23 Thread Christian Schoenebeck
Add a new subdirectory 'img' and add the (currently) 3 pictures from https://wiki.qemu.org/Documentation/9p into that new directory. Signed-off-by: Christian Schoenebeck --- docs/devel/img/9pfs_control_flow.png | Bin 0 -> 156560 bytes docs/devel/img/9pfs_topology.png | B

[PATCH 1/4] docs/devel: add 9p.rst

2021-03-23 Thread Christian Schoenebeck
wiki -t rst foo.txt > docs/devel/9p.rst Unfortunately Mediawiki's API does not allow to grab the wiki source text automatically in an easy way (i.e. without having to use parse tools). Signed-off-by: Christian Schoenebeck --- docs/devel/9p.rst | 544

Re: [External] Re: [RFC PATCH 0/9] Support for Virtio-fs daemon crash reconnection

2021-03-23 Thread Christian Schoenebeck
using relative offsets, tweaking the stack, indirect jumps, as well as heap spraying. Plus side channels exist to gain access to direct addresses. The situation might improve significantly when shadow stacks (e.g. Intel CET) become widely used in future. But in the meantime I would be cautious if something is crashing too often in a certain time frame. Best regards, Christian Schoenebeck

Re: [External] Re: [RFC PATCH 0/9] Support for Virtio-fs daemon crash reconnection

2021-03-18 Thread Christian Schoenebeck
On Mittwoch, 17. März 2021 13:57:47 CET Jiachen Zhang wrote: > On Wed, Mar 17, 2021 at 7:50 PM Christian Schoenebeck < > > qemu_...@crudebyte.com> wrote: > > On Mittwoch, 17. März 2021 11:05:32 CET Stefan Hajnoczi wrote: > > > On Fri, Dec 18, 2020 at 05:39:3

Re: [External] Re: [RFC PATCH 0/9] Support for Virtio-fs daemon crash reconnection

2021-03-17 Thread Christian Schoenebeck
nt for an automatic reconnection feature after a crash to prevent this being exploited by ROP brute force attacks? E.g. adding some (maybe continuously increasing) delay and/or limiting the amount of reconnects within a certain time frame would come to my mind. Best regards, Christian Schoenebeck

[PULL 1/1] hw/9pfs/9p-synth: Replaced qemu_mutex_lock with QEMU_LOCK_GUARD

2021-03-16 Thread Christian Schoenebeck
Kurz Reviewed-by: Christian Schoenebeck Message-Id: <20210311031538.5325-9-ma.mando...@gmail.com> Signed-off-by: Christian Schoenebeck --- hw/9pfs/9p-synth.c | 12 1 file changed, 4 insertions(+), 8 deletions(-) diff --git a/hw/9pfs/9p-synth.c b/hw/9pfs/9p-synth.c index 7eb2

[PULL 0/1] 9p queue 2021-03-16

2021-03-16 Thread Christian Schoenebeck
The following changes since commit 2615a5e433aeb812c300d3a48e1a88e1303e2339: Merge remote-tracking branch 'remotes/stefanha-gitlab/tags/block-pull-request' into staging (2021-03-15 19:23:00 +) are available in the Git repository at: https://github.com/cschoenebeck/qemu.git tags/pull-9p

Re: [PATCH 8/9] hw/9pfs/9p-synth: Replaced qemu_mutex_lock with QEMU_LOCK_GUARD

2021-03-15 Thread Christian Schoenebeck
tomorrow, so will one submaintainer handle this series all together or should each submaintainer handle only their specific patches? > > On Thu, Mar 11, 2021 at 1:59 PM Christian Schoenebeck < > > > > qemu_...@crudebyte.com> wrote: > > >

Re: [PATCH 8/9] hw/9pfs/9p-synth: Replaced qemu_mutex_lock with QEMU_LOCK_GUARD

2021-03-11 Thread Christian Schoenebeck
On Donnerstag, 11. März 2021 12:52:45 CET Greg Kurz wrote: > On Thu, 11 Mar 2021 11:49:06 +0100 > > Christian Schoenebeck wrote: > > On Donnerstag, 11. März 2021 04:15:37 CET Mahmoud Mandour wrote: > > > Replaced a call to qemu_mutex_lock and its respective call to >

Re: [PATCH 8/9] hw/9pfs/9p-synth: Replaced qemu_mutex_lock with QEMU_LOCK_GUARD

2021-03-11 Thread Christian Schoenebeck
goto err_out; > +return ret; > } > } > /* Add file type and remove write bits */ > @@ -136,8 +134,6 @@ int qemu_v9fs_synth_add_file(V9fsSynthNode *parent, int > mode, pstrcpy(node->name, sizeof(node->name), name); > QLIST_INSERT_HEAD_RCU(&

Re: [PATCH] ui/gtk: fix NULL pointer dereference

2021-03-08 Thread Christian Schoenebeck
On Montag, 8. März 2021 15:30:23 CET Philippe Mathieu-Daudé wrote: > On 3/8/21 3:17 PM, Akihiko Odaki wrote: > > 2021年3月8日(月) 23:03 Christian Schoenebeck : > >> BTW, there is __nonnull supported by clang, e.g.: > >> > >&g

Re: [PATCH] ui/gtk: fix NULL pointer dereference

2021-03-08 Thread Christian Schoenebeck
On Montag, 8. März 2021 14:37:44 CET Peter Maydell wrote: > On Mon, 8 Mar 2021 at 13:32, Christian Schoenebeck > > wrote: > > On Montag, 8. März 2021 12:31:33 CET Akihiko Odaki wrote: > > > 2021年3月8日(月) 19:39 Christian Schoenebeck : > > > > This was just abo

Re: [PATCH] ui/gtk: fix NULL pointer dereference

2021-03-08 Thread Christian Schoenebeck
On Montag, 8. März 2021 12:31:33 CET Akihiko Odaki wrote: > 2021年3月8日(月) 19:39 Christian Schoenebeck : > > This was just about silencing the mentioned automated Coverity defects > > report. If you have a better solution, then just ignore this patch. > > > > Best regards

Re: [PATCH] ui/gtk: fix NULL pointer dereference

2021-03-08 Thread Christian Schoenebeck
On Montag, 8. März 2021 04:45:24 CET Akihiko Odaki wrote: > 2021年3月8日(月) 4:57 Christian Schoenebeck : > > DisplaySurface pointer passed to gd_switch() can be NULL, so check this > > before trying to dereference it. > > > > Fixes: c821a58ee7 ("ui/console: Pas

[PATCH] ui/gtk: fix NULL pointer dereference

2021-03-07 Thread Christian Schoenebeck
DisplaySurface pointer passed to gd_switch() can be NULL, so check this before trying to dereference it. Fixes: c821a58ee7 ("ui/console: Pass placeholder surface to display") Reported-by: Coverity (CID 1448421) Signed-off-by: Christian Schoenebeck --- ui/gtk.c | 4 ++-- 1 file

Re: Can not set high msize with virtio-9p (Was: Re: virtiofs vs 9p performance)

2021-03-05 Thread Christian Schoenebeck
On Mittwoch, 3. März 2021 15:50:37 CET Dominique Martinet wrote: > Christian Schoenebeck wrote on Wed, Mar 03, 2021 at 03:04:21PM +0100: > > > We can definitely increase the default, for all transports in my > > > opinion. > > > As a first step, 64 or 128k? >

Re: [PATCH v2] Autoconnect jack ports by default

2021-03-04 Thread Christian Schoenebeck
Gerd Geoffrey, any chance to make you happy as well? E.g. either reserving "none" as special value for "connect-ports" or an additional CL argument "no-connect-ports" to make it appear less hackish? Best regards, Christian Schoenebeck

Re: Can not set high msize with virtio-9p (Was: Re: virtiofs vs 9p performance)

2021-03-03 Thread Christian Schoenebeck
On Samstag, 27. Februar 2021 01:03:40 CET Dominique Martinet wrote: > Christian Schoenebeck wrote on Fri, Feb 26, 2021 at 02:49:12PM +0100: > > Right now the client uses a hard coded amount of 128 elements. So what > > about replacing VIRTQUEUE_NUM by a variable which is ini

Re: Can not set high msize with virtio-9p (Was: Re: virtiofs vs 9p performance)

2021-02-26 Thread Christian Schoenebeck
On Mittwoch, 24. Februar 2021 16:43:57 CET Dominique Martinet wrote: > Christian Schoenebeck wrote on Wed, Feb 24, 2021 at 04:16:52PM +0100: > > Misapprehension + typo(s) in my previous message, sorry Michael. That's > > 500k of course (not 5k), yes. > > > > Let me

Re: [PATCH v2] Autoconnect jack ports by default

2021-02-26 Thread Christian Schoenebeck
On Donnerstag, 25. Februar 2021 09:48:55 CET Gerd Hoffmann wrote: > On Wed, Feb 24, 2021 at 11:33:14PM +0100, Christian Schoenebeck wrote: > > On Mittwoch, 24. Februar 2021 23:04:47 CET Geoffrey McRae wrote: > > > This goes against how all standard jack clients work, a new jack c

Re: 9pfs developers docs

2021-02-25 Thread Christian Schoenebeck
;t send emails on further changes to that wiki page. > If you want to be auto notified then just add yourself to the watch list > there. Ok, I think I'm done with this page: https://wiki.qemu.org/Documentation/9p At least I think I've described everything I wanted to from my side regarding current 9p status. Best regards, Christian Schoenebeck

Re: [PATCH v2] Autoconnect jack ports by default

2021-02-24 Thread Christian Schoenebeck
bies" approach in this case, but I leave that up to you and Gerd to decide. :) Best regards, Christian Schoenebeck

Re: [PATCH v2] Autoconnect jack ports by default

2021-02-24 Thread Christian Schoenebeck
ts > + : "system:capture_.*", > +NULL, JackPortIsOutput); > +} > > if (!ports) { > return; Looks fine to me now. Reviewed-by: Christian Schoenebeck Thanks José! Best regards, Christian Schoenebeck

Re: [PATCH] Autoconnect jack ports by default

2021-02-24 Thread Christian Schoenebeck
On Mittwoch, 24. Februar 2021 17:47:03 CET José Ramón Muñoz Pekkarinen wrote: > On Wed, 24 Feb 2021 at 18:40, Christian Schoenebeck > wrote: > > On Mittwoch, 24. Februar 2021 17:16:58 CET José Ramón Muñoz Pekkarinen > > > > wrote: > > > On Wed, 24 F

Re: [PATCH] Autoconnect jack ports by default

2021-02-24 Thread Christian Schoenebeck
; > > +} else { > > +ports = jack_get_ports(c->client, > > +c->opt->connect_ports ? "system:playback_.*" > > +: c->opt->connect_ports, Same here: c->opt->connect_ports ? c->opt->connect_ports : "system:playback_.*" right? > > +NULL, JackPortIsOutput); > > +} > > > > if (!ports) { > > > > return; > > > > -- > > 2.26.2 Best regards Christian Schoenebeck

Re: Can not set high msize with virtio-9p (Was: Re: virtiofs vs 9p performance)

2021-02-24 Thread Christian Schoenebeck
ernel's 9p client already has a dynamic runtime option 'msize' and that hard coded enforced limit (500k) is a performance bottleneck like I said. Best regards, Christian Schoenebeck

[Bug 1908832] Re: jack audio dev produces no sound

2021-02-24 Thread Christian Schoenebeck
c->opt->connect_ports is an optional user supplied configuration argument which allows the user to specify a regular expression pattern which is used by QEMU's JACK audio driver to automatically connect its JACK ports to. From qapi/audio.json: ## # @AudiodevJackPerDirectionOptions: # # Options of

Re: Can not set high msize with virtio-9p (Was: Re: virtiofs vs 9p performance)

2021-02-23 Thread Christian Schoenebeck
On Montag, 22. Februar 2021 18:11:59 CET Greg Kurz wrote: > On Mon, 22 Feb 2021 16:08:04 +0100 > Christian Schoenebeck wrote: > > [...] > > > I did not ever have a kernel crash when I boot a Linux guest with a 9pfs > > root fs and 100 MiB msize. > > Interestin

Re: who's using the ozlabs patchwork install for QEMU patches ?

2021-02-23 Thread Christian Schoenebeck
standing is that users must be "maintainer" to edit other's > > > > patches. Only three 'maintainers' are currently listed at ozlabs for > > > > QEMU: > > > > > > > > https://patchwork.ozlabs.org/api/1.0/projects/14/ > >

<    3   4   5   6   7   8   9   10   11   12   >