Re: [PATCH 27/27] mkvenv.py: experiment; use distlib to generate script entry points

2023-05-10 Thread Paolo Bonzini
On 5/11/23 05:54, John Snow wrote: This is an experiment: by using pip's internal vendored distlib, we can generate script entry points for Windows, Mac and Linux using distlib's mechanisms. This is the same mechanism used when running "pip install", so it will be consistent with the most common

Re: [PATCH 07/27] mkvenv: add diagnose() method for ensure() failures

2023-05-10 Thread Paolo Bonzini
On 5/11/23 05:54, John Snow wrote: This is a routine that is designed to print some usable info for human beings back out to the terminal if/when "mkvenv ensure" fails to locate or install a package during configure time, such as meson or sphinx. Since we are requiring that "meson" and "sphinx"

Re: [PATCH] docs/about/emulation: fix typo

2023-05-10 Thread Thomas Huth
On 11/05/2023 04.29, Sh4w wrote: Duplicated word "are". Signed-off-by: Sh4w Thanks for your contribution, but please sign patches with your real name, QEMU does not take patches that are signed with a pseudonym. Thanks, Thomas

Re: [PATCH v2 2/4] migration/calc-dirty-rate: detailed stats in sampling mode

2023-05-10 Thread Markus Armbruster
Andrei Gudkov via writes: > Collect number of dirty pages for progresseively increasing time > periods starting with 125ms up to number of seconds specified with > calc-dirty-rate. Report through qmp and hmp: 1) vector of dirty page > measurements, 2) page size, 3) total number of VM pages, 4) nu

[PATCH] docs/about/emulation: fix typo

2023-05-10 Thread Sh4w
Duplicated word "are". Signed-off-by: Sh4w --- docs/about/emulation.rst | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/about/emulation.rst b/docs/about/emulation.rst index b510a54418..0ad0b86f0d 100644 --- a/docs/about/emulation.rst +++ b/docs/about/emulation.rst @@ -99

Re: [PATCH v2 0/9] Hexagon (target/hexagon) New architecture support

2023-05-10 Thread Richard Henderson
On 5/10/23 21:58, Taylor Simpson wrote: Where can one find docs for this? The latest Hexagon SDK I can find is 3.5, which still ends at v67. I guess the folks at developer.qualcomm.com are behind in publishing specs. I'll work on getting these. Hi Richard, The documents have been posted on t

[PATCH 10/27] mkvenv: work around broken pip installations on Debian 10

2023-05-10 Thread John Snow
This is a workaround intended for Debian 10, where the debian-patched pip does not function correctly if accessed from within a virtual environment. We don't support Debian 10 as a build platform any longer, though we do still utilize it for our build-tricore-softmmu CI test. It's also possible th

[PATCH 09/27] mkvenv: create pip binary in virtual environment

2023-05-10 Thread John Snow
From: Paolo Bonzini While pip can be invoked as "python -m pip", it is more standard to have it as a binary in the virtual environment. Instead of using ensurepip, which is slow, use the console shim generation that was just added for "mkvenv ensure". Signed-off-by: John Snow Signed-off-by: Pa

[PATCH 02/27] python: update pylint configuration

2023-05-10 Thread John Snow
Pylint 2.17.x decided that SocketAddrT was a bad name for a Type Alias for some reason. Sure, fine, whatever. Signed-off-by: John Snow Reviewed-by: Daniel P. Berrangé --- python/setup.cfg | 1 + 1 file changed, 1 insertion(+) diff --git a/python/setup.cfg b/python/setup.cfg index 9e923d9762..3

[PATCH 20/27] configure: move --enable-docs and --disable-docs back to configure

2023-05-10 Thread John Snow
Move this option back from meson into configure for the purposes of using the configuration value to bootstrap Sphinx in different ways based on this value. Signed-off-by: John Snow --- configure | 6 ++ 1 file changed, 6 insertions(+) diff --git a/configure b/configure index 6e4499a68a..3e

[PATCH 24/27] configure: Add courtesy hint to Python version failure message

2023-05-10 Thread John Snow
If we begin requiring Python 3.7+, a few platforms are going to need to install an additional Python interpreter package. As a courtesy to the user, suggest the optional package they might need to install. This will hopefully minimize any downtime caused by the change in Python dependency. Signed

[PATCH 26/27] python: bump some of the dependencies

2023-05-10 Thread John Snow
From: Paolo Bonzini The version of pyflakes that is listed in python/tests/minreqs.txt breaks on Python 3.8 with the following message: AttributeError: 'FlakesChecker' object has no attribute 'CONSTANT' Now that we do not support EOL'd Python versions anymore, we can update to newer, fixed ve

[PATCH 07/27] mkvenv: add diagnose() method for ensure() failures

2023-05-10 Thread John Snow
This is a routine that is designed to print some usable info for human beings back out to the terminal if/when "mkvenv ensure" fails to locate or install a package during configure time, such as meson or sphinx. Since we are requiring that "meson" and "sphinx" are installed to the same Python envi

[PATCH 15/27] configure: create a python venv unconditionally

2023-05-10 Thread John Snow
This patch changes the configure script so that it always creates and uses a python virtual environment unconditionally. Meson bootstrapping is temporarily altered to force the use of meson from git or vendored source (as packaged in our source tarballs). A subsequent commit restores the use of di

[PATCH 11/27] tests/docker: add python3-venv dependency

2023-05-10 Thread John Snow
Several debian-based tests need the python3-venv dependency as a consequence of Debian debundling the "ensurepip" module normally included with Python. As mkvenv.py stands as of this commit, Debian requires EITHER: (A) setuptools and pip, or (B) ensurepip mkvenv is a few seconds faster if you ha

[PATCH 23/27] Python: Drop support for Python 3.6

2023-05-10 Thread John Snow
From: Paolo Bonzini Python 3.6 was EOL 2021-12-31. Newer versions of upstream libraries have begun dropping support for this version and it is becoming more cumbersome to support. Avocado-framework and qemu.qmp each have their own reasons for wanting to drop Python 3.6, but won't until QEMU does.

[PATCH 22/27] configure: add --enable-pypi and --disable-pypi

2023-05-10 Thread John Snow
In the event that there's no vendored source present and no sufficient version of $package can be found, we will attempt to connect to PyPI to install the package if '--disable-pypi' was not passed. This means that PyPI access is "enabled by default", but there are some subtleties that make this a

[PATCH 18/27] qemu.git: drop meson git submodule

2023-05-10 Thread John Snow
Now that meson is installed from a vendored wheel, we don't need the git submodule anymore. Drop it. Signed-off-by: John Snow --- .gitmodules | 3 --- meson | 1 - 2 files changed, 4 deletions(-) delete mode 16 meson diff --git a/.gitmodules b/.gitmodules index 6ce5bf49c5..2a3a12033c

[PATCH 19/27] tests: Use configure-provided pyvenv for tests

2023-05-10 Thread John Snow
This patch changes how the avocado tests are provided, ever so slightly. Instead of creating a new testing venv, use the configure-provided 'pyvenv' instead, and install optional packages into that. Signed-off-by: John Snow --- docs/devel/acpi-bits.rst | 6 +++--- docs

[PATCH 27/27] mkvenv.py: experiment; use distlib to generate script entry points

2023-05-10 Thread John Snow
This is an experiment: by using pip's internal vendored distlib, we can generate script entry points for Windows, Mac and Linux using distlib's mechanisms. This is the same mechanism used when running "pip install", so it will be consistent with the most common method of package installation on all

[PATCH 12/27] tests/vm: Configure netbsd to use Python 3.10

2023-05-10 Thread John Snow
NetBSD removes some packages from the Python stdlib, but only re-packages them for Python 3.10. Switch to using Python 3.10. Signed-off-by: John Snow Reviewed-by: Daniel P. Berrangé --- tests/vm/netbsd | 1 + 1 file changed, 1 insertion(+) diff --git a/tests/vm/netbsd b/tests/vm/netbsd index 0

[PATCH 01/27] python: shut up "pip install" during "make check-minreqs"

2023-05-10 Thread John Snow
From: Paolo Bonzini "make check-minreqs" runs pip without the --disable-pip-version-check option, which causes the obnoxious "A new release of pip available" message. Recent versions of pip also complain that some of the dependencies in our virtual environment rely on "setup.py install" instead

[PATCH 25/27] mkvenv: mark command as required

2023-05-10 Thread John Snow
From: Paolo Bonzini This is only available in Python 3.7+. Signed-off-by: Paolo Bonzini Signed-off-by: John Snow --- python/scripts/mkvenv.py | 1 + 1 file changed, 1 insertion(+) diff --git a/python/scripts/mkvenv.py b/python/scripts/mkvenv.py index 31193b3b22..8e097e4759 100644 --- a/pytho

[PATCH 14/27] python: add vendor.py utility

2023-05-10 Thread John Snow
This is a teeny-tiny script that just downloads any packages we want to vendor from PyPI and stores them in qemu.git/python/wheels/. If I'm hit by a meteor, it'll be easy to replicate what I have done in order to udpate the vendored source. We don't really care which python runs it; it exists as a

[PATCH 21/27] configure: bootstrap sphinx with mkvenv

2023-05-10 Thread John Snow
When docs are explicitly requested, require Sphinx>=1.6.0. When docs are explicitly disabled, don't bother to check for Sphinx at all. If docs are set to "auto", attempt to locate Sphinx, but continue onward if it wasn't located. Signed-off-by: Paolo Bonzini Signed-off-by: John Snow --- docs/co

[PATCH 05/27] mkvenv: add nested venv workaround

2023-05-10 Thread John Snow
Python virtual environments do not typically nest; they may inherit from the top-level system packages or not at all. For our purposes, it would be convenient to emulate "nested" virtual environments to allow callers of the configure script to install specific versions of python utilities in order

[PATCH 13/27] tests/vm: add py310-expat to NetBSD

2023-05-10 Thread John Snow
NetBSD cannot successfully run "ensurepip" without access to the pyexpat module, which NetBSD debundles. Like the Debian patch, it would be strictly faster long term to install pip/setuptools, and I recommend developers at their workstations take that approach instead. For the purposes of a throwa

[PATCH 17/27] configure: use 'mkvenv ensure meson' to bootstrap meson

2023-05-10 Thread John Snow
This commit changes how we detect and install meson. It notably removes '--meson='. Currently, configure creates a lightweight Python virtual environment unconditionally using the user's configured $python that inherits system packages. Temporarily, we forced the use of meson source present via gi

[PATCH 06/27] mkvenv: add ensure subcommand

2023-05-10 Thread John Snow
This command is to be used to add various packages (or ensure they're already present) into the configure-provided venv in a modular fashion. Examples: mkvenv ensure --online --dir "${source_dir}/python/wheels/" "meson>=0.61.5" mkvenv ensure --online "sphinx>=1.6.0" mkvenv ensure "qemu.qmp==0.0.2

[PATCH 00/27] configure: create a python venv and ensure meson, sphinx

2023-05-10 Thread John Snow
This patch series creates a mandatory python virtual environment ("venv") during configure time and uses it to ensure the availability of meson and sphinx. See https://www.qemu.org/2023/03/24/python/ for motivations. The summary is that the goal of this series is to ensure that the `python` used t

[PATCH 08/27] mkvenv: add console script entry point generation

2023-05-10 Thread John Snow
When creating a virtual environment that inherits system packages, script entry points (like "meson", "sphinx-build", etc) are not re-generated with the correct shebang. When you are *inside* of the venv, this is not a problem, but if you are *outside* of it, you will not have a script that engages

[PATCH 04/27] mkvenv: add better error message for missing pyexpat module

2023-05-10 Thread John Snow
NetBSD debundles pyexpat from python, but ensurepip needs pyexpat. Try our best to offer a helpful error message instead of just failing catastrophically. Signed-off-by: John Snow --- python/scripts/mkvenv.py | 18 +- 1 file changed, 17 insertions(+), 1 deletion(-) diff --git a/

[PATCH 03/27] python: add mkvenv.py

2023-05-10 Thread John Snow
This script will be responsible for building a lightweight Python virtual environment at configure time. It works with Python 3.6 or newer. It has been designed to: - work *offline*, no PyPI required. - work *quickly*, The fast path is only ~65ms on my machine. - work *robustly*, with multiple fal

Re: css_clear_io_interrupt() error handling

2023-05-10 Thread Halil Pasic
On Wed, 10 May 2023 08:32:12 +0200 Markus Armbruster wrote: > Halil Pasic writes: > > > On Mon, 08 May 2023 11:01:55 +0200 > > Cornelia Huck wrote: > > > >> On Mon, May 08 2023, Markus Armbruster wrote: [..] > > and we do check for availability and cover that via -ENOSYS. > > Yes, kvm_s3

Re: [PATCH 1/1] e1000e: Fix tx/rx counters

2023-05-10 Thread Jason Wang
On Thu, May 11, 2023 at 2:54 AM Michael Tokarev wrote: > > 10.04.2023 18:27, timothee.coca...@gmail.com wrote: > > The bytes and packets counter registers are cleared on read. > > > > Copying the "total counter" registers to the "good counter" registers has > > side effects. > > If the "total" reg

[PATCH 1/2] linux-user/s390x: Fix single-stepping SVC

2023-05-10 Thread Ilya Leoshkevich
Currently single-stepping SVC executes two instructions. The reason is that EXCP_DEBUG for the SVC instruction itself is masked by EXCP_SVC. Fix by re-raising EXCP_DEBUG. Signed-off-by: Ilya Leoshkevich --- linux-user/s390x/cpu_loop.c | 9 + 1 file changed, 9 insertions(+) diff --git a/

[PATCH 0/2] linux-user/s390x: Fix single-stepping SVC

2023-05-10 Thread Ilya Leoshkevich
Hi, I noticed that single-stepping SVC runs two instructions instead of one. The reason is that EXCP_SVC masks EXCP_DEBUG. Patch 1 fixes this problem, patch 2 adds a test. Btw, there is at least one more problem in that area, namely single-stepping instructions that cause e.g. SIGILL. Using the e

[PATCH 2/2] tests/tcg/s390x: Test single-stepping SVC

2023-05-10 Thread Ilya Leoshkevich
Add a small test to prevent regressions. Signed-off-by: Ilya Leoshkevich --- tests/tcg/s390x/Makefile.target | 11 - tests/tcg/s390x/gdbstub/test-svc.py | 64 + tests/tcg/s390x/hello-s390x-asm.S | 20 + 3 files changed, 94 insertions(+), 1 deletion(-

Re: [PATCH v4 0/9] PC cleanups

2023-05-10 Thread Bernhard Beschow
Am 10. Mai 2023 19:20:59 UTC schrieb "Michael S. Tsirkin" : >On Wed, May 10, 2023 at 06:26:54PM +, Bernhard Beschow wrote: >> >> >> Am 5. März 2023 07:45:55 UTC schrieb Bernhard Beschow : >> > >> > >> >Am 13. Februar 2023 16:45:05 UTC schrieb Bernhard Beschow >> >: >> >> >> >> >> >>Am 13.

RE: [PATCH v2 0/9] Hexagon (target/hexagon) New architecture support

2023-05-10 Thread Taylor Simpson
> -Original Message- > From: Taylor Simpson > Sent: Saturday, April 29, 2023 2:57 PM > To: Richard Henderson ; qemu- > de...@nongnu.org > Cc: phi...@linaro.org; a...@rev.ng; a...@rev.ng; Brian Cain > ; Matheus Bernardino (QUIC) > > Subject: RE: [PATCH v2 0/9] Hexagon (target/hexagon) New

[PATCH 4/8] qemu-img: Take graph lock more selectively

2023-05-10 Thread Kevin Wolf
If we take a reader lock, we can't call any functions that take a writer lock internally without causing deadlocks once the reader lock is actually enforced in the main thread, too. Take the reader lock only where it is actually needed. Signed-off-by: Kevin Wolf --- qemu-img.c | 5 +++-- 1 file

[PATCH 8/8] graph-lock: Honour read locks even in the main thread

2023-05-10 Thread Kevin Wolf
There are some conditions under which we don't actually need to do anything for taking a reader lock: Writing the graph is only possible from the main context while holding the BQL. So if a reader is running in the main context under the BQL and knows that it won't be interrupted until the next wri

[PATCH 5/8] test-bdrv-drain: Take graph lock more selectively

2023-05-10 Thread Kevin Wolf
If we take a reader lock, we can't call any functions that take a writer lock internally without causing deadlocks once the reader lock is actually enforced in the main thread, too. Take the reader lock only where it is actually needed. Signed-off-by: Kevin Wolf --- tests/unit/test-bdrv-drain.c

[PATCH 7/8] blockjob: Adhere to rate limit even when reentered early

2023-05-10 Thread Kevin Wolf
When jobs are sleeping, for example to enforce a given rate limit, they can be reentered early, in particular in order to get paused, to update the rate limit or to get cancelled. Before this patch, they behave in this case as if they had fully completed their rate limiting delay. This means that

[PATCH 6/8] test-bdrv-drain: Call bdrv_co_unref() in coroutine context

2023-05-10 Thread Kevin Wolf
bdrv_unref() is a no_coroutine_fn, so calling it from coroutine context is invalid. Use bdrv_co_unref() instead. Signed-off-by: Kevin Wolf --- tests/unit/test-bdrv-drain.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tests/unit/test-bdrv-drain.c b/tests/unit/test-bdrv-drai

[PATCH 2/8] block/export: Fix null pointer dereference in error path

2023-05-10 Thread Kevin Wolf
There are some error paths in blk_exp_add() that jump to 'fail:' before 'exp' is even created. So we can't just unconditionally access exp->blk. Add a NULL check, and switch from exp->blk to blk, which is available earlier, just to be extra sure that we really cover all cases where BlockDevOps cou

[PATCH 1/8] block: Call .bdrv_co_create(_opts) unlocked

2023-05-10 Thread Kevin Wolf
These are functions that modify the graph, so they must be able to take a writer lock. This is impossible if they already hold the reader lock. If they need a reader lock for some of their operations, they should take it internally. Many of them go through blk_*(), which will always take the lock

[PATCH 0/8] block: Honour graph read lock even in the main thread

2023-05-10 Thread Kevin Wolf
Fiona asked why it's correct that bdrv_graph_co_rd_lock/unlock() do nothing if qemu_in_main_thread() returns true. As far as I can tell, it's not correct. The coroutine can yield while it believes to have the lock, and then the main loop can call some code that takes a write lock without waiting fo

[PATCH 3/8] qcow2: Unlock the graph in qcow2_do_open() where necessary

2023-05-10 Thread Kevin Wolf
qcow2_do_open() calls a few no_co_wrappers that wrap functions taking the graph lock internally as a writer. Therefore, it can't hold the reader lock across these calls, it causes deadlocks. Drop the lock temporarily around the calls. Signed-off-by: Kevin Wolf --- block/qcow2.c | 6 ++ 1 fil

[PATCH RESEND 4/6] gdbstub: Add support for info proc mappings

2023-05-10 Thread Ilya Leoshkevich
Currently the GDB's generate-core-file command doesn't work well with qemu-user: the resulting dumps are huge [1] and at the same time incomplete (argv and envp are missing). The reason is that GDB has no access to proc mappings and therefore has to fall back to using heuristics for discovering the

[PATCH RESEND 1/6] linux-user: Expose do_guest_openat() and do_guest_readlink()

2023-05-10 Thread Ilya Leoshkevich
These functions will be required by the GDB stub in order to provide the guest view of /proc to GDB. Signed-off-by: Ilya Leoshkevich --- linux-user/qemu.h| 3 +++ linux-user/syscall.c | 54 2 files changed, 38 insertions(+), 19 deletions(-) diff

[PATCH RESEND 5/6] docs: Document security implications of debugging

2023-05-10 Thread Ilya Leoshkevich
Now that the GDB stub implements reading host files, concerns may arise that it undermines security. Document the status quo, which is that the users are already responsible for securing the GDB connection themselves. Signed-off-by: Ilya Leoshkevich --- docs/system/gdb.rst | 15 +++

[PATCH RESEND 6/6] tests/tcg: Add a test for info proc mappings

2023-05-10 Thread Ilya Leoshkevich
Add a small test to prevent regressions. Since there are issues with how GDB interprets QEMU's target.xml, enable the test only on aarch64 and s390x for now. Signed-off-by: Ilya Leoshkevich --- tests/tcg/aarch64/Makefile.target | 3 +- tests/tcg/multiarch/Makefile.target |

[PATCH RESEND 3/6] gdbstub: Report the actual qemu-user pid

2023-05-10 Thread Ilya Leoshkevich
Currently qemu-user reports pid 1 to GDB. Resolve the TODO and report the actual PID. Using getpid() relies on the assumption that there is only one GDBProcess. Add an assertion to make sure that future changes don't break it. Signed-off-by: Ilya Leoshkevich --- gdbstub/gdbstub.c | 25 ++

[PATCH RESEND 0/6] gdbstub: Add support for info proc mappings

2023-05-10 Thread Ilya Leoshkevich
[Apologies to people in To: and Cc:, who will get this the second time - I forgot to Cc: the mailing list initially.] Hi, this series partially implements the Host I/O feature of the GDB Remote Serial Protocol in order to make generate-core-file work with qemu-user. It borrows heavily from the ab

[PATCH RESEND 2/6] gdbstub: Expose gdb_get_process() and gdb_get_first_cpu_in_process()

2023-05-10 Thread Ilya Leoshkevich
These functions will be needed by user-target.c in order to retrieve the name of the executable. Signed-off-by: Ilya Leoshkevich --- gdbstub/gdbstub.c | 16 gdbstub/internals.h | 2 ++ 2 files changed, 10 insertions(+), 8 deletions(-) diff --git a/gdbstub/gdbstub.c b/gdbstub

[PATCH] migration: Add documentation for backwards compatiblity

2023-05-10 Thread Juan Quintela
State what are the requeriments to get migration working between qemu versions. And once there explain how one is supposed to implement a new feature/default value and not break migration. Signed-off-by: Juan Quintela --- Hi I will really appreciate reviews: - I don't speak natively .rst for

Re: [PATCH v4 0/9] PC cleanups

2023-05-10 Thread Michael S. Tsirkin
On Wed, May 10, 2023 at 06:26:54PM +, Bernhard Beschow wrote: > > > Am 5. März 2023 07:45:55 UTC schrieb Bernhard Beschow : > > > > > >Am 13. Februar 2023 16:45:05 UTC schrieb Bernhard Beschow > >: > >> > >> > >>Am 13. Februar 2023 16:19:55 UTC schrieb Bernhard Beschow > >>: > >>>This serie

Re: [PATCH v8 00/23] Consolidate PIIX south bridges

2023-05-10 Thread Michael S. Tsirkin
On Wed, May 10, 2023 at 06:39:49PM +, Bernhard Beschow wrote: > > > Am 21. April 2023 16:40:47 UTC schrieb Bernhard Beschow : > > > > > >Am 21. April 2023 07:15:18 UTC schrieb "Michael S. Tsirkin" > >: > >>On Thu, Mar 02, 2023 at 10:21:38PM +0100, Bernhard Beschow wrote: > >>> This series co

Re: [PATCH v2 00/12] simpletrace: refactor and general improvements

2023-05-10 Thread John Snow
On Mon, May 8, 2023 at 11:16 AM Stefan Hajnoczi wrote: > > On Mon, May 08, 2023 at 03:28:04PM +0200, Mads Ynddal wrote: > > > > > A question for you: do you think it's possible to move simpletrace into > > > qemu/python/utils? This requires cleaning up the code to some fairly > > > pedantic stan

Re: [PATCH 1/1] e1000e: Fix tx/rx counters

2023-05-10 Thread Michael Tokarev
10.04.2023 18:27, timothee.coca...@gmail.com wrote: The bytes and packets counter registers are cleared on read. Copying the "total counter" registers to the "good counter" registers has side effects. If the "total" register is never read by the OS, it only gets incremented. This leads to expone

Re: [PATCH] disas: Fix tabs and braces in disas.c

2023-05-10 Thread Peter Maydell
On Wed, 10 May 2023 at 18:09, Richard Henderson wrote: > > Fix these before moving the file, for checkpatch.pl. > > Signed-off-by: Richard Henderson > --- > disas.c | 11 ++- Reviewed-by: Peter Maydell thanks -- PMM

Re: [PATCH v2 0/2] SDL2 usability fixes

2023-05-10 Thread Bernhard Beschow
Am 17. April 2023 19:21:37 UTC schrieb Bernhard Beschow : >I'm trying to use QEMU on Windows hosts for fun and for profit. While the GTK > >GUI doesn't seem to support OpenGL under Windows the SDL2 GUI does. Hence I > >used the SDL2 GUI where I ran into several issues of which two are fixed in >

Re: [PATCH v2 1/1] ui/sdl2: disable SDL_HINT_GRAB_KEYBOARD on Windows

2023-05-10 Thread Bernhard Beschow
Am 24. April 2023 03:33:05 UTC schrieb Stefan Weil : >Am 18.04.23 um 08:56 schrieb Volker Rümelin: > >> Windows sends an extra left control key up/down input event for >> every right alt key up/down input event for keyboards with >> international layout. Since commit 830473455f ("ui/sdl2: fix >>

Re: [PATCH v8 00/23] Consolidate PIIX south bridges

2023-05-10 Thread Bernhard Beschow
Am 21. April 2023 16:40:47 UTC schrieb Bernhard Beschow : > > >Am 21. April 2023 07:15:18 UTC schrieb "Michael S. Tsirkin" : >>On Thu, Mar 02, 2023 at 10:21:38PM +0100, Bernhard Beschow wrote: >>> This series consolidates the implementations of the PIIX3 and PIIX4 south >>> bridges and is an ext

Re: [PATCH v4 0/9] PC cleanups

2023-05-10 Thread Bernhard Beschow
Am 5. März 2023 07:45:55 UTC schrieb Bernhard Beschow : > > >Am 13. Februar 2023 16:45:05 UTC schrieb Bernhard Beschow : >> >> >>Am 13. Februar 2023 16:19:55 UTC schrieb Bernhard Beschow : >>>This series contains some cleanups I came across when working on the PC >>> >>>machines. It consists of

Re: [PATCH] ui/cursor: incomplete check for integer overflow in cursor_alloc

2023-05-10 Thread Michael Tokarev
08.05.2023 17:18, Mauro Matteo Cascella wrote: The cursor_alloc function still accepts a signed integer for both the cursor width and height. A specially crafted negative width/height could make datasize wrap around and cause the next allocation to be 0, potentially leading to a heap buffer overf

Re: [PATCH] target/i386: fix avx2 instructions vzeroall and vpermdq

2023-05-10 Thread Michael Tokarev
10.05.2023 17:52, lixinyu...@ict.ac.cn wrote: From: Xinyu Li vzeroall: xmm_regs should be used instead of xmm_t0 vpermdq: bit 3 and 7 of imm should be considered -stable material, it looks like? Thanks, /mjt

[PULL 10/10] migration: block incoming colo when capability is disabled

2023-05-10 Thread Juan Quintela
From: Vladimir Sementsov-Ogievskiy We generally require same set of capabilities on source and target. Let's require x-colo capability to use COLO on target. Signed-off-by: Vladimir Sementsov-Ogievskiy Reviewed-by: Juan Quintela Reviewed-by: Peter Xu Reviewed-by: Lukas Straub Reviewed-by: Zh

[PULL 02/10] ram: Let colo_flush_ram_cache take the bitmap_mutex

2023-05-10 Thread Juan Quintela
From: Lukas Straub This is not required, colo_flush_ram_cache does not run concurrently with the multifd threads since the cache is only flushed after everything has been received. But it makes me more comfortable. This will be used in the next commits to add colo support to multifd. Signed-off

[PULL 07/10] migration: drop colo_incoming_thread from MigrationIncomingState

2023-05-10 Thread Juan Quintela
From: Vladimir Sementsov-Ogievskiy have_colo_incoming_thread variable is unused. colo_incoming_thread can be local. Signed-off-by: Vladimir Sementsov-Ogievskiy Reviewed-by: Juan Quintela Reviewed-by: Peter Xu Reviewed-by: Zhang Chen Message-Id: <20230428194928.1426370-6-vsement...@yandex-tea

[PULL 06/10] build: move COLO under CONFIG_REPLICATION

2023-05-10 Thread Juan Quintela
From: Vladimir Sementsov-Ogievskiy We don't allow to use x-colo capability when replication is not configured. So, no reason to build COLO when replication is disabled, it's unusable in this case. Note also that the check in migrate_caps_check() is not the only restriction: some functions in mig

[PULL 04/10] block/meson.build: prefer positive condition for replication

2023-05-10 Thread Juan Quintela
From: Vladimir Sementsov-Ogievskiy Signed-off-by: Vladimir Sementsov-Ogievskiy Reviewed-by: Juan Quintela Reviewed-by: Philippe Mathieu-Daudé Reviewed-by: Lukas Straub Reviewed-by: Zhang Chen Message-Id: <20230428194928.1426370-2-vsement...@yandex-team.ru> Signed-off-by: Juan Quintela ---

[PULL 03/10] multifd: Add the ramblock to MultiFDRecvParams

2023-05-10 Thread Juan Quintela
From: Lukas Straub This will be used in the next commits to add colo support to multifd. Signed-off-by: Lukas Straub Reviewed-by: Juan Quintela Message-Id: <88135197411df1a71d7832962b39abf60faf0021.1683572883.git.lukasstra...@web.de> Signed-off-by: Juan Quintela --- migration/multifd.h | 2

[PULL 05/10] colo: make colo_checkpoint_notify static and provide simpler API

2023-05-10 Thread Juan Quintela
From: Vladimir Sementsov-Ogievskiy colo_checkpoint_notify() is mostly used in colo.c. Outside we use it once when x-checkpoint-delay migration parameter is set. So, let's simplify the external API to only that function - notify COLO that parameter was set. This make external API more robust and h

[PULL 09/10] migration: disallow change capabilities in COLO state

2023-05-10 Thread Juan Quintela
From: Vladimir Sementsov-Ogievskiy COLO is not listed as running state in migrate_is_running(), so, it's theoretically possible to disable colo capability in COLO state and the unexpected error in migration_iteration_finish() is reachable. Let's disallow that in qmp_migrate_set_capabilities. Tha

[PULL 08/10] migration: process_incoming_migration_co: simplify code flow around ret

2023-05-10 Thread Juan Quintela
From: Vladimir Sementsov-Ogievskiy Signed-off-by: Vladimir Sementsov-Ogievskiy Reviewed-by: Juan Quintela Reviewed-by: Peter Xu Reviewed-by: Zhang Chen Message-Id: <20230428194928.1426370-7-vsement...@yandex-team.ru> Signed-off-by: Juan Quintela --- migration/migration.c | 11 ++- 1

[PULL 00/10] Migration 20230509 patches

2023-05-10 Thread Juan Quintela
The following changes since commit caa9cbd566877b34e9abcc04d936116fc5e0ab28: Merge tag 'for-upstream' of https://repo.or.cz/qemu/kevin into staging (2023-05-10 14:52:03 +0100) are available in the Git repository at: https://gitlab.com/juan.quintela/qemu.git tags/migration-20230509-pull-requ

[PULL 01/10] ram: Add public helper to set colo bitmap

2023-05-10 Thread Juan Quintela
From: Lukas Straub The overhead of the mutex in non-multifd mode is negligible, because in that case its just the single thread taking the mutex. This will be used in the next commits to add colo support to multifd. Signed-off-by: Lukas Straub Reviewed-by: Juan Quintela Message-Id: <22d83cb4

Re: [PATCH v2 4/4] migration/calc-dirty-rate: tool to predict migration time

2023-05-10 Thread Juan Quintela
Andrei Gudkov wrote: > Signed-off-by: Andrei Gudkov my python is very rusty, so I will let someone else to comment here. Later, Juan.

Re: [PATCH v2 3/4] migration/calc-dirty-rate: added n-zero-pages metric

2023-05-10 Thread Juan Quintela
Andrei Gudkov wrote: > In sampling mode, a new metric is collected and reported: > number of pages entirely filled with zeroes. Good idea. > @@ -331,11 +336,20 @@ static uint32_t compute_page_hash(void *ptr) > v2 = QEMU_XXHASH_SEED + XXH_PRIME64_2; > v3 = QEMU_XXHASH_SEED + 0; > v

Re: [PATCH v2 3/5] hw/display/virtio-gpu-virgl: define callbacks in realize function

2023-05-10 Thread Bernhard Beschow
Am 10. Mai 2023 07:56:15 UTC schrieb "Philippe Mathieu-Daudé" : >On 30/4/23 23:48, Bernhard Beschow wrote: >> >> >> Am 28. April 2023 16:48:21 UTC schrieb Gurchetan Singh >> : >>> From: Gurchetan Singh >>> >>> This reduces the amount of renderer backend specific needed to >>> be exposed to

Re: [PATCH v2 2/4] migration/calc-dirty-rate: detailed stats in sampling mode

2023-05-10 Thread Juan Quintela
Andrei Gudkov wrote: > Collect number of dirty pages for progresseively increasing time > periods starting with 125ms up to number of seconds specified with > calc-dirty-rate. Report through qmp and hmp: 1) vector of dirty page > measurements, 2) page size, 3) total number of VM pages, 4) number >

Re: [PULL 86/89] target/riscv: Restore the predicate() NULL check behavior

2023-05-10 Thread Michael Tokarev
08.05.2023 01:21, Alistair Francis wrote: On Fri, May 5, 2023 at 11:08 AM Alistair Francis wrote: From: Bin Meng When reading a non-existent CSR QEMU should raise illegal instruction exception, but currently it just exits due to the g_assert() check. This actually reverts commit 0ee342256af

Re: [PULL 19/89] target/riscv: Fix itrigger when icount is used

2023-05-10 Thread Michael Tokarev
08.05.2023 01:22, Alistair Francis wrote: On Fri, May 5, 2023 at 11:04 AM Alistair Francis wrote: From: LIU Zhiwei When I boot a ubuntu image, QEMU output a "Bad icount read" message and exit. The reason is that when execute helper_mret or helper_sret, it will cause a call to icount_get_raw_

Re: [PULL 0/8] testing and misc (docker, docs, ci scripts, gitlab, avocado, Kconfig)

2023-05-10 Thread Richard Henderson
On 5/10/23 16:06, Alex Bennée wrote: The following changes since commit 568992e3440f11897e209bf676aa5b93251385fa: Merge tag 'pull-qapi-2023-05-09-v2' of https://repo.or.cz/qemu/armbru into staging (2023-05-10 13:11:29 +0100) are available in the Git repository at: https://gitlab.com/sts

[PATCH] disas: Fix tabs and braces in disas.c

2023-05-10 Thread Richard Henderson
Fix these before moving the file, for checkpatch.pl. Signed-off-by: Richard Henderson --- disas.c | 11 ++- 1 file changed, 6 insertions(+), 5 deletions(-) diff --git a/disas.c b/disas.c index b087c12c47..d46f638a72 100644 --- a/disas.c +++ b/disas.c @@ -226,11 +226,12 @@ void target_di

Re: [PATCH v2 1/4] migration/calc-dirty-rate: replaced CRC32 with xxHash

2023-05-10 Thread Juan Quintela
Andrei Gudkov wrote: > This significantly reduces overhead of dirty page > rate calculation in sampling mode. > Tested using 32GiB VM on E5-2690 CPU. > > With CRC32: > total_pages=8388608 sampled_pages=16384 millis=71 > > With xxHash: > total_pages=8388608 sampled_pages=16384 millis=14 > > Signed-

Re: [PATCH] tcg: round-robin: do not use mb_read for rr_current_cpu

2023-05-10 Thread Richard Henderson
On 5/10/23 17:04, Paolo Bonzini wrote: Note that qatomic_mb_set can remain, similar to how Linux has smp_store_mb (an optimized version of following a store with a full memory barrier). Signed-off-by: Paolo Bonzini --- accel/tcg/tcg-accel-ops-rr.c | 11 +++ 1 file changed, 7 insertion

Re: [PATCH v1 1/1] hw/pci: Disable PCI_ERR_UNCOR_MASK register for machine type < 8.0

2023-05-10 Thread Juan Quintela
Michael Tokarev wrote: > 03.05.2023 03:27, Leonardo Bras пишет: >> Since it's implementation on v8.0.0-rc0, having the PCI_ERR_UNCOR_MASK >> set for machine types < 8.0 will cause migration to fail if the target >> QEMU version is < 8.0.0 : >> qemu-system-x86_64: get_pci_config_device: Bad config

Re: [PATCH 0/8] migration: Add precopy initial data capability and VFIO precopy support

2023-05-10 Thread Juan Quintela
Avihai Horon wrote: >> You have a point here. >> But I will approach this case in a different way: >> >> Destination QEMU needs to be older, because it don't have the feature. >> So we need to NOT being able to do the switchover for older machine >> types. >> And have something like this is qemu/

[PATCH] tests/tcg/i386: correct mask for VPERM2F128/VPERM2I128

2023-05-10 Thread Paolo Bonzini
The instructions also use bits 3 and 7 of their 8-byte immediate. Signed-off-by: Paolo Bonzini --- tests/tcg/i386/test-avx.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tests/tcg/i386/test-avx.py b/tests/tcg/i386/test-avx.py index d9ca00a49e6c..641a2ef69ebc 100755 --- a/

Re: [PATCH] target/i386: fix avx2 instructions vzeroall and vpermdq

2023-05-10 Thread Paolo Bonzini
Queued, thanks. Paolo

Re: [PATCH v1 1/1] hw/pci: Disable PCI_ERR_UNCOR_MASK register for machine type < 8.0

2023-05-10 Thread Michael S. Tsirkin
On Wed, May 10, 2023 at 07:29:40PM +0300, Michael Tokarev wrote: > 03.05.2023 03:27, Leonardo Bras пишет: > > Since it's implementation on v8.0.0-rc0, having the PCI_ERR_UNCOR_MASK > > set for machine types < 8.0 will cause migration to fail if the target > > QEMU version is < 8.0.0 : > > > > qemu

Re: [PATCH v1 1/1] hw/pci: Disable PCI_ERR_UNCOR_MASK register for machine type < 8.0

2023-05-10 Thread Michael Tokarev
03.05.2023 03:27, Leonardo Bras пишет: Since it's implementation on v8.0.0-rc0, having the PCI_ERR_UNCOR_MASK set for machine types < 8.0 will cause migration to fail if the target QEMU version is < 8.0.0 : qemu-system-x86_64: get_pci_config_device: Bad config data: i=0x10a read: 40 device: 0 c

Re: [PATCH v3 0/3] ACPI: i386: bump MADT to revision 5

2023-05-10 Thread Eric DeVolder
On 5/10/23 10:45, Igor Mammedov wrote: On Wed, 10 May 2023 10:08:50 -0500 Eric DeVolder wrote: On 5/10/23 03:14, Igor Mammedov wrote: On Fri, 5 May 2023 16:53:22 -0500 Eric DeVolder wrote: Thoughts? I still don't think we need to bump x86 to rev 5 in QEMU. Linux v6.3 has the fix

Re: [PATCH] make: clean after distclean deletes source files

2023-05-10 Thread Paolo Bonzini
Queued, thanks. Paolo

Re: [PATCH v2 3/3] target/openrisc: Setup FPU for detecting tininess before rounding

2023-05-10 Thread Richard Henderson
On 5/10/23 16:32, Stafford Horne wrote: OpenRISC defines tininess to be detected before rounding. Setup qemu to obey this. Signed-off-by: Stafford Horne --- Since v1: - Remove setting default NaN behavior. I discussed with the FPU developers and they mentioned the OpenRISC hardware sho

Re: [PULL 00/28] Block layer patches

2023-05-10 Thread Richard Henderson
On 5/10/23 13:20, Kevin Wolf wrote: The following changes since commit b2896c1b09878fd1c4b485b3662f8beecbe0fef4: Merge tag 'vfio-updates-20230509.0' of https://gitlab.com/alex.williamson/qemu into staging (2023-05-10 11:20:35 +0100) are available in the Git repository at: https://repo.o

Re: [PATCH v9 0/6] block: refactor blockdev transactions

2023-05-10 Thread Denis V. Lunev
On 5/10/23 17:21, Vladimir Sementsov-Ogievskiy wrote: Interesting, I see two 5/6 letters, equal body, but a bit different headers (the second has empty "Sender").. for me all is OK

  1   2   3   4   >