Re: [PATCH v4 0/4] accel/tcg: Make sure that tb->size != 0 after translation

2021-04-16 Thread Ilya Leoshkevich
On Thu, 2021-04-15 at 17:39 +0200, Cornelia Huck wrote:
> On Thu, 15 Apr 2021 15:03:01 +0200
> Ilya Leoshkevich  wrote:
> 
> > If arch-specific code generates a translation block of size 0,
> > tb_gen_code() may generate a spurious exception.
> > 
> > Fix s390x (patch 1), ARM (patch 2) and xtensa (patch 3) and add an
> > assertion in order to catch such situations earlier (patch 4).
> > 
> > v1: 
> > https://lists.nongnu.org/archive/html/qemu-devel/2021-04/msg02037.html
> > v1 -> v2: Fix target/s390x instead of trying to tolerate tb->size
> > == 0
> >   in tb_gen_code().
> > 
> > v2: 
> > https://lists.nongnu.org/archive/html/qemu-devel/2021-04/msg02101.html
> > v2 -> v3: Split the common code change into a separate patch, add
> > the
> >   ARM patch in order to fix
> >   https://gitlab.com/cohuck/qemu/-/jobs/1178409450
> > 
> > v3: 
> > https://lists.nongnu.org/archive/html/qemu-devel/2021-04/msg02332.html
> > v3 -> v4: Add the xtensa patch in order to fix
> >   https://gitlab.com/cohuck/qemu/-/jobs/1178409540
> > 
> > Ilya Leoshkevich (4):
> >   target/s390x: Fix translation exception on illegal instruction
> >   target/arm: Make sure that commpage's tb->size != 0
> >   target/xtensa: Make sure that tb->size != 0
> >   accel/tcg: Assert that tb->size != 0 after translation
> > 
> >  accel/tcg/translate-all.c |  1 +
> >  target/arm/translate.c    |  1 +
> >  target/s390x/translate.c  | 16 +++-
> >  target/xtensa/translate.c |  3 +++
> >  4 files changed, 16 insertions(+), 5 deletions(-)
> > 
> 
> FWIW, this now has passed CI for me.
> 
> If all is good, who will merge it? I can merge through the s390x
> tree,
> if I get acks on the patches for the other architectures, or I can
> give
> my ack on the s390x patch, if somebody else is going to take it.

For me personally it would be totally fine if it goes through your
tree. We still need a review on the ARM patch though.




Re: [PATCH v4 0/4] accel/tcg: Make sure that tb->size != 0 after translation

2021-04-15 Thread Cornelia Huck
On Thu, 15 Apr 2021 15:03:01 +0200
Ilya Leoshkevich  wrote:

> If arch-specific code generates a translation block of size 0,
> tb_gen_code() may generate a spurious exception.
> 
> Fix s390x (patch 1), ARM (patch 2) and xtensa (patch 3) and add an
> assertion in order to catch such situations earlier (patch 4).
> 
> v1: https://lists.nongnu.org/archive/html/qemu-devel/2021-04/msg02037.html
> v1 -> v2: Fix target/s390x instead of trying to tolerate tb->size == 0
>   in tb_gen_code().
> 
> v2: https://lists.nongnu.org/archive/html/qemu-devel/2021-04/msg02101.html
> v2 -> v3: Split the common code change into a separate patch, add the
>   ARM patch in order to fix
>   https://gitlab.com/cohuck/qemu/-/jobs/1178409450
> 
> v3: https://lists.nongnu.org/archive/html/qemu-devel/2021-04/msg02332.html
> v3 -> v4: Add the xtensa patch in order to fix
>   https://gitlab.com/cohuck/qemu/-/jobs/1178409540
> 
> Ilya Leoshkevich (4):
>   target/s390x: Fix translation exception on illegal instruction
>   target/arm: Make sure that commpage's tb->size != 0
>   target/xtensa: Make sure that tb->size != 0
>   accel/tcg: Assert that tb->size != 0 after translation
> 
>  accel/tcg/translate-all.c |  1 +
>  target/arm/translate.c|  1 +
>  target/s390x/translate.c  | 16 +++-
>  target/xtensa/translate.c |  3 +++
>  4 files changed, 16 insertions(+), 5 deletions(-)
> 

FWIW, this now has passed CI for me.

If all is good, who will merge it? I can merge through the s390x tree,
if I get acks on the patches for the other architectures, or I can give
my ack on the s390x patch, if somebody else is going to take it.




[PATCH v4 0/4] accel/tcg: Make sure that tb->size != 0 after translation

2021-04-15 Thread Ilya Leoshkevich
If arch-specific code generates a translation block of size 0,
tb_gen_code() may generate a spurious exception.

Fix s390x (patch 1), ARM (patch 2) and xtensa (patch 3) and add an
assertion in order to catch such situations earlier (patch 4).

v1: https://lists.nongnu.org/archive/html/qemu-devel/2021-04/msg02037.html
v1 -> v2: Fix target/s390x instead of trying to tolerate tb->size == 0
  in tb_gen_code().

v2: https://lists.nongnu.org/archive/html/qemu-devel/2021-04/msg02101.html
v2 -> v3: Split the common code change into a separate patch, add the
  ARM patch in order to fix
  https://gitlab.com/cohuck/qemu/-/jobs/1178409450

v3: https://lists.nongnu.org/archive/html/qemu-devel/2021-04/msg02332.html
v3 -> v4: Add the xtensa patch in order to fix
  https://gitlab.com/cohuck/qemu/-/jobs/1178409540

Ilya Leoshkevich (4):
  target/s390x: Fix translation exception on illegal instruction
  target/arm: Make sure that commpage's tb->size != 0
  target/xtensa: Make sure that tb->size != 0
  accel/tcg: Assert that tb->size != 0 after translation

 accel/tcg/translate-all.c |  1 +
 target/arm/translate.c|  1 +
 target/s390x/translate.c  | 16 +++-
 target/xtensa/translate.c |  3 +++
 4 files changed, 16 insertions(+), 5 deletions(-)

-- 
2.29.2