[Qemu-commits] [qemu/qemu] 861fca: gitlab-ci: Remove job building EDK2 firmware binaries

2024-05-26 Thread Paolo Bonzini via Qemu-commits
  Branch: refs/heads/staging-7.2
  Home:   https://github.com/qemu/qemu
  Commit: 861fca8ce0c0837a3244d29be2cb15565852bf86
  
https://github.com/qemu/qemu/commit/861fca8ce0c0837a3244d29be2cb15565852bf86
  Author: Philippe Mathieu-Daudé 
  Date:   2024-04-24 (Wed, 24 Apr 2024)

  Changed paths:
R .gitlab-ci.d/edk2.yml
R .gitlab-ci.d/edk2/Dockerfile
M .gitlab-ci.d/qemu-project.yml
M MAINTAINERS

  Log Message:
  ---
  gitlab-ci: Remove job building EDK2 firmware binaries

When we introduced this Gitlab-CI job in commit 71920809ce
("gitlab-ci.yml: Add jobs to build EDK2 firmware binaries"),
the naive plan was to have reproducible binaries by downloading
what this job would build, testing it and eventually committing
it. With retrospective, nothing happened 3 years later and this
job is just bitrotting:

  Step 1/3 : FROM ubuntu:18.04
  18.04: Pulling from library/ubuntu
  mediaType in manifest should be
  'application/vnd.docker.distribution.manifest.v2+json' not
  'application/vnd.oci.image.manifest.v1+json'

Remove this job to avoid wasting maintenance and CI ressources.

Reported-by: Palmer Dabbelt 
Signed-off-by: Philippe Mathieu-Daudé 
Message-Id: <20230310133247.39268-1-phi...@linaro.org>
Signed-off-by: Thomas Huth 
(cherry picked from commit 690ceb71936f9037f6e11580709e26b62d83c17c)
Signed-off-by: Michael Tokarev 


  Commit: 6ea6863f215c7f1f3cf7756dc5876a67ba2b90fc
  
https://github.com/qemu/qemu/commit/6ea6863f215c7f1f3cf7756dc5876a67ba2b90fc
  Author: Palmer Dabbelt 
  Date:   2024-04-24 (Wed, 24 Apr 2024)

  Changed paths:
M .gitlab-ci.d/opensbi.yml
M .gitlab-ci.d/opensbi/Dockerfile

  Log Message:
  ---
  gitlab/opensbi: Move to docker:stable

The OpenSBI build has been using docker:19.03.1, which appears to be old
enough that v2 of the manifest is no longer supported.  Something has
started serving us those manifests, resulting in errors along the lines
of

$ docker build --cache-from $IMAGE_TAG --tag 
$CI_REGISTRY_IMAGE:$CI_COMMIT_SHA --tag $IMAGE_TAG .gitlab-ci.d/opensbi
Step 1/7 : FROM ubuntu:18.04
18.04: Pulling from library/ubuntu
mediaType in manifest should be 
'application/vnd.docker.distribution.manifest.v2+json' not 
'application/vnd.oci.image.manifest.v1+json'

This moves to docker:stable, as was suggested by the template.  It also
adds the python3 package via apt, as OpenSBI requires that to build.

Reviewed-by: Bin Meng 
Message-ID: <20230303202448.11911-2-pal...@rivosinc.com>
Signed-off-by: Palmer Dabbelt 
(cherry picked from commit 7bc1286b81d4e8380b3083beed1771c67ce87af3)
Signed-off-by: Michael Tokarev 


  Commit: 51cc8762a0c2f8b08d1fc4957c0c309c73241812
  
https://github.com/qemu/qemu/commit/51cc8762a0c2f8b08d1fc4957c0c309c73241812
  Author: Michael Tokarev 
  Date:   2024-04-25 (Thu, 25 Apr 2024)

  Changed paths:
M linux-user/syscall.c

  Log Message:
  ---
  linux-user: do_setsockopt: fix SOL_ALG.ALG_SET_KEY

This setsockopt accepts zero-lengh optlen (current qemu implementation
does not allow this).  Also, there's no need to make a copy of the key,
it is enough to use lock_user() (which accepts zero length already).

Resolves: https://gitlab.com/qemu-project/qemu/-/issues/2197
Fixes: f312fc "linux-user: Add support for setsockopt() option SOL_ALG"
Signed-off-by: Michael Tokarev 
Message-Id: <20240331100737.2724186-2-...@tls.msk.ru>
Signed-off-by: Richard Henderson 
(cherry picked from commit 04f6fb897a5aeb3e356a7b889869c9962f9c16c7)
Signed-off-by: Michael Tokarev 


  Commit: a0823c276671b0253f77cf5a1550995c3d06050f
  
https://github.com/qemu/qemu/commit/a0823c276671b0253f77cf5a1550995c3d06050f
  Author: Zhu Yangyang 
  Date:   2024-04-28 (Sun, 28 Apr 2024)

  Changed paths:
M nbd/client.c
M nbd/common.c
M nbd/nbd-internal.h
M nbd/server.c

  Log Message:
  ---
  nbd/server: do not poll within a coroutine context

Coroutines are not supposed to block. Instead, they should yield.

The client performs TLS upgrade outside of an AIOContext, during
synchronous handshake; this still requires g_main_loop.  But the
server responds to TLS upgrade inside a coroutine, so a nested
g_main_loop is wrong.  Since the two callbacks no longer share more
than the setting of data.complete and data.error, it's just as easy to
use static helpers instead of trying to share a common code path.  It
is also possible to add assertions that no other code is interfering
with the eventual path to qio reaching the callback, whether or not it
required a yield or main loop.

Fixes: f95910f ("nbd: implement TLS support in the protocol negotiation")
Signed-off-by: Zhu Yangyang 
[eblake: move callbacks to their use point, add assertions]
Signed-off-by: Eric Blake 
Message-ID: <20240408160214.1200629-5-ebl...@redhat.com>
Reviewed-by: Vladimir Sementsov-Ogievskiy 
(cherry picked from commit ae6d91a7e9b77abb029ed3fa9fad461422286942)
Signed-off-by: Michael Tokarev 


  Commit: 

[Qemu-commits] [qemu/qemu] 24f681: target/i386: Add tcg/access.[ch]

2024-05-26 Thread Richard Henderson via Qemu-commits
Changed paths:
M linux-user/i386/signal.c
M tests/tcg/x86_64/Makefile.target
A tests/tcg/x86_64/test-1648.c

  Log Message:
  ---
  linux-user/i386: Fix allocation and alignment of fp state

For modern cpus, the kernel uses xsave to store all extra
cpu state across the signal handler.  For xsave/xrstor to
work, the pointer must be 64 byte aligned.  Moreover, the
regular part of the signal frame must be 16 byte aligned.

Attempt to mirror the kernel code as much as possible.
Use enum FPStateKind instead of use_xsave() and use_fxsr().

Resolves: https://gitlab.com/qemu-project/qemu/-/issues/1648
Reviewed-by: Paolo Bonzini 
Signed-off-by: Richard Henderson 


  Commit: 7973eb943e670ea66a19e04868e01803c7594246
  
https://github.com/qemu/qemu/commit/7973eb943e670ea66a19e04868e01803c7594246
  Author: Richard Henderson 
  Date:   2024-05-26 (Sun, 26 May 2024)

  Changed paths:
M linux-user/i386/signal.c

  Log Message:
  ---
  linux-user/i386: Honor xfeatures in xrstor_sigcontext

Signed-off-by: Richard Henderson 


  Commit: c6e6d1508ac309e39fec827c3719c86c10cd8975
  
https://github.com/qemu/qemu/commit/c6e6d1508ac309e39fec827c3719c86c10cd8975
  Author: Richard Henderson 
  Date:   2024-05-26 (Sun, 26 May 2024)

  Changed paths:
M linux-user/i386/signal.c
M target/i386/tcg/fpu_helper.c

  Log Message:
  ---
  target/i386: Convert do_xsave to X86Access

Reviewed-by: Paolo Bonzini 
Signed-off-by: Richard Henderson 


  Commit: d5dc3a927ae7e64bc998d9aa29020426b4e97f8a
  
https://github.com/qemu/qemu/commit/d5dc3a927ae7e64bc998d9aa29020426b4e97f8a
  Author: Richard Henderson 
  Date:   2024-05-26 (Sun, 26 May 2024)

  Changed paths:
M target/i386/tcg/fpu_helper.c

  Log Message:
  ---
  target/i386: Convert do_xrstor to X86Access

Reviewed-by: Paolo Bonzini 
Signed-off-by: Richard Henderson 


  Commit: 76d8d0f85caf629b4df314e656d20ad6565bab9b
  
https://github.com/qemu/qemu/commit/76d8d0f85caf629b4df314e656d20ad6565bab9b
  Author: Richard Henderson 
  Date:   2024-05-26 (Sun, 26 May 2024)

  Changed paths:
M linux-user/i386/signal.c
M target/i386/cpu.h
M target/i386/tcg/fpu_helper.c

  Log Message:
  ---
  target/i386: Pass host pointer and size to cpu_x86_{fsave,frstor}

We have already validated the memory region in the course of
validating the signal frame.  No need to do it again within
the helper function.

Reviewed-by: Paolo Bonzini 
Signed-off-by: Richard Henderson 


  Commit: 9c2fb9e1d589fbda266d8db611b9d3a38ab96a3c
  
https://github.com/qemu/qemu/commit/9c2fb9e1d589fbda266d8db611b9d3a38ab96a3c
  Author: Richard Henderson 
  Date:   2024-05-26 (Sun, 26 May 2024)

  Changed paths:
M linux-user/i386/signal.c
M target/i386/cpu.h
M target/i386/tcg/fpu_helper.c

  Log Message:
  ---
  target/i386: Pass host pointer and size to cpu_x86_{fxsave,fxrstor}

We have already validated the memory region in the course of
validating the signal frame.  No need to do it again within
the helper function.

Reviewed-by: Paolo Bonzini 
Signed-off-by: Richard Henderson 


  Commit: 701890bdd09b289fd9cb852e714e91373088b0f3
  
https://github.com/qemu/qemu/commit/701890bdd09b289fd9cb852e714e91373088b0f3
  Author: Richard Henderson 
  Date:   2024-05-26 (Sun, 26 May 2024)

  Changed paths:
M linux-user/i386/signal.c
M target/i386/cpu.h
M target/i386/tcg/fpu_helper.c

  Log Message:
  ---
  target/i386: Pass host pointer and size to cpu_x86_{xsave,xrstor}

We have already validated the memory region in the course of
validating the signal frame.  No need to do it again within
the helper function.

In addition, return failure when the header contains invalid
xstate_bv.  The kernel handles this via exception handling
within XSTATE_OP within xrstor_from_user_sigframe.

Reviewed-by: Paolo Bonzini 
Signed-off-by: Richard Henderson 


  Commit: 60b54b67c63d8f076152e0f7dccf39854dfc6a77
  
https://github.com/qemu/qemu/commit/60b54b67c63d8f076152e0f7dccf39854dfc6a77
  Author: Richard Henderson 
  Date:   2024-05-26 (Sun, 26 May 2024)

  Changed paths:
M linux-user/i386/signal.c
M target/i386/cpu.h
A target/i386/tcg/access.c
A target/i386/tcg/access.h
M target/i386/tcg/fpu_helper.c
M target/i386/tcg/meson.build
M tests/tcg/x86_64/Makefile.target
A tests/tcg/x86_64/test-1648.c

  Log Message:
  ---
  Merge tag 'pull-lu-20240526' of https://gitlab.com/rth7680/qemu into staging

target/i386: Introduce X86Access and use for xsave and friends
linux-user/i386: Fix allocation and alignment of fp state in signal frame

# -BEGIN PGP SIGNATURE-
#
# iQFRBAABCgA7FiEEekgeeIaLTbaoWgXAZN846K9+IV8FAmZT2GwdHHJpY2hhcmQu
# aGVuZGVyc29uQGxpbmFyby5vcmcACgkQZN846K9+IV87pQf9F/cmrKQG1mVWKmJd
# MI7l63lbxejdgAADv1nmro+oapCsJSaQeUSrYp904ydqJjVfBJkaoXfknGsvxrNA
# oW7nEuYt0sBKdaBUKhYpMOJ3ivfw7lVVMJmjNv9ngZRhW+WOoJrBHoleUkVLiM7D
# rxkMLL+LQ7BR9i0Lv1unorOkqUPGNOnEd45qRn6k1g/Qnqi8SNM

[Qemu-commits] [qemu/qemu] 24f681: target/i386: Add tcg/access.[ch]

2024-05-26 Thread Richard Henderson via Qemu-commits
Changed paths:
M linux-user/i386/signal.c
M tests/tcg/x86_64/Makefile.target
A tests/tcg/x86_64/test-1648.c

  Log Message:
  ---
  linux-user/i386: Fix allocation and alignment of fp state

For modern cpus, the kernel uses xsave to store all extra
cpu state across the signal handler.  For xsave/xrstor to
work, the pointer must be 64 byte aligned.  Moreover, the
regular part of the signal frame must be 16 byte aligned.

Attempt to mirror the kernel code as much as possible.
Use enum FPStateKind instead of use_xsave() and use_fxsr().

Resolves: https://gitlab.com/qemu-project/qemu/-/issues/1648
Reviewed-by: Paolo Bonzini 
Signed-off-by: Richard Henderson 


  Commit: 7973eb943e670ea66a19e04868e01803c7594246
  
https://github.com/qemu/qemu/commit/7973eb943e670ea66a19e04868e01803c7594246
  Author: Richard Henderson 
  Date:   2024-05-26 (Sun, 26 May 2024)

  Changed paths:
M linux-user/i386/signal.c

  Log Message:
  ---
  linux-user/i386: Honor xfeatures in xrstor_sigcontext

Signed-off-by: Richard Henderson 


  Commit: c6e6d1508ac309e39fec827c3719c86c10cd8975
  
https://github.com/qemu/qemu/commit/c6e6d1508ac309e39fec827c3719c86c10cd8975
  Author: Richard Henderson 
  Date:   2024-05-26 (Sun, 26 May 2024)

  Changed paths:
M linux-user/i386/signal.c
M target/i386/tcg/fpu_helper.c

  Log Message:
  ---
  target/i386: Convert do_xsave to X86Access

Reviewed-by: Paolo Bonzini 
Signed-off-by: Richard Henderson 


  Commit: d5dc3a927ae7e64bc998d9aa29020426b4e97f8a
  
https://github.com/qemu/qemu/commit/d5dc3a927ae7e64bc998d9aa29020426b4e97f8a
  Author: Richard Henderson 
  Date:   2024-05-26 (Sun, 26 May 2024)

  Changed paths:
M target/i386/tcg/fpu_helper.c

  Log Message:
  ---
  target/i386: Convert do_xrstor to X86Access

Reviewed-by: Paolo Bonzini 
Signed-off-by: Richard Henderson 


  Commit: 76d8d0f85caf629b4df314e656d20ad6565bab9b
  
https://github.com/qemu/qemu/commit/76d8d0f85caf629b4df314e656d20ad6565bab9b
  Author: Richard Henderson 
  Date:   2024-05-26 (Sun, 26 May 2024)

  Changed paths:
M linux-user/i386/signal.c
M target/i386/cpu.h
M target/i386/tcg/fpu_helper.c

  Log Message:
  ---
  target/i386: Pass host pointer and size to cpu_x86_{fsave,frstor}

We have already validated the memory region in the course of
validating the signal frame.  No need to do it again within
the helper function.

Reviewed-by: Paolo Bonzini 
Signed-off-by: Richard Henderson 


  Commit: 9c2fb9e1d589fbda266d8db611b9d3a38ab96a3c
  
https://github.com/qemu/qemu/commit/9c2fb9e1d589fbda266d8db611b9d3a38ab96a3c
  Author: Richard Henderson 
  Date:   2024-05-26 (Sun, 26 May 2024)

  Changed paths:
M linux-user/i386/signal.c
M target/i386/cpu.h
M target/i386/tcg/fpu_helper.c

  Log Message:
  ---
  target/i386: Pass host pointer and size to cpu_x86_{fxsave,fxrstor}

We have already validated the memory region in the course of
validating the signal frame.  No need to do it again within
the helper function.

Reviewed-by: Paolo Bonzini 
Signed-off-by: Richard Henderson 


  Commit: 701890bdd09b289fd9cb852e714e91373088b0f3
  
https://github.com/qemu/qemu/commit/701890bdd09b289fd9cb852e714e91373088b0f3
  Author: Richard Henderson 
  Date:   2024-05-26 (Sun, 26 May 2024)

  Changed paths:
M linux-user/i386/signal.c
M target/i386/cpu.h
M target/i386/tcg/fpu_helper.c

  Log Message:
  ---
  target/i386: Pass host pointer and size to cpu_x86_{xsave,xrstor}

We have already validated the memory region in the course of
validating the signal frame.  No need to do it again within
the helper function.

In addition, return failure when the header contains invalid
xstate_bv.  The kernel handles this via exception handling
within XSTATE_OP within xrstor_from_user_sigframe.

Reviewed-by: Paolo Bonzini 
Signed-off-by: Richard Henderson 


  Commit: 60b54b67c63d8f076152e0f7dccf39854dfc6a77
  
https://github.com/qemu/qemu/commit/60b54b67c63d8f076152e0f7dccf39854dfc6a77
  Author: Richard Henderson 
  Date:   2024-05-26 (Sun, 26 May 2024)

  Changed paths:
M linux-user/i386/signal.c
M target/i386/cpu.h
A target/i386/tcg/access.c
A target/i386/tcg/access.h
M target/i386/tcg/fpu_helper.c
M target/i386/tcg/meson.build
M tests/tcg/x86_64/Makefile.target
A tests/tcg/x86_64/test-1648.c

  Log Message:
  ---
  Merge tag 'pull-lu-20240526' of https://gitlab.com/rth7680/qemu into staging

target/i386: Introduce X86Access and use for xsave and friends
linux-user/i386: Fix allocation and alignment of fp state in signal frame

# -BEGIN PGP SIGNATURE-
#
# iQFRBAABCgA7FiEEekgeeIaLTbaoWgXAZN846K9+IV8FAmZT2GwdHHJpY2hhcmQu
# aGVuZGVyc29uQGxpbmFyby5vcmcACgkQZN846K9+IV87pQf9F/cmrKQG1mVWKmJd
# MI7l63lbxejdgAADv1nmro+oapCsJSaQeUSrYp904ydqJjVfBJkaoXfknGsvxrNA
# oW7nEuYt0sBKdaBUKhYpMOJ3ivfw7lVVMJmjNv9ngZRhW+WOoJrBHoleUkVLiM7D
# rxkMLL+LQ7BR9i0Lv1unorOkqUPGNOnEd45qRn6k1g/Qnqi8SNM