Hello Everyone,
My name is Rebecca Mckeever, and I am a senior Computer Science student and an
Outreachy May 2022 applicant. I am interested in contributing to one of the
QEMU projects (Add zoned device support to QEMU's virtio-blk emulation or
Implement VIRTIO_F_IN_ORDER support for virtio dev
This bug is probably lurking there for so long, I cannot even git-blame
my way to the commit first introducing it.
Anyway, because n32 is also TARGET_MIPS64, the address space range
cannot be determined by looking at TARGET_MIPS64 alone. Fix this by only
declaring 48-bit address spaces for n64, or
> On Mar 7, 2022, at 5:24 AM, Stefan Hajnoczi wrote:
>
> On Thu, Feb 17, 2022 at 02:49:02AM -0500, Jagannathan Raman wrote:
>> Forward remote device's interrupts to the guest
>>
>> Signed-off-by: Elena Ufimtseva
>> Signed-off-by: John G Johnson
>> Signed-off-by: Jagannathan Raman
>> ---
>>
On 3/26/22 4:49 PM, Claudio Fontana wrote:
> On 3/25/22 12:29 PM, Daniel P. Berrangé wrote:
>> On Fri, Mar 18, 2022 at 02:34:29PM +0100, Claudio Fontana wrote:
>>> On 3/17/22 4:03 PM, Dr. David Alan Gilbert wrote:
* Claudio Fontana (cfont...@suse.de) wrote:
> On 3/17/22 2:41 PM, Claudio Fo
Now that igd_passthrough_isa_bridge_create() is implemented within the
xen context it may use Xen* data types directly and become
xen_igd_passthrough_isa_bridge_create(). This resolves an indirection.
Signed-off-by: Bernhard Beschow
---
hw/xen/xen_pt.c | 11 ---
hw/xen/xen_pt.h
This patch series changes the "igd-passthrough-isa-bridge" device only to be
provided if CONFIG_XEN_PCI_PASSTHROUGH is true. With it xen_pt gets decoupled
from i386/pc.
Bernhard Beschow (2):
hw/xen/xen_pt: Confine igd-passthrough-isa-bridge to XEN
hw/xen/xen_pt: Resolve igd_passthrough_isa_bri
igd-passthrough-isa-bridge is only requested in xen_pt but was
implemented in pc_piix.c. This caused xen_pt to dependend on i386/pc
which is hereby resolved.
Signed-off-by: Bernhard Beschow
---
hw/i386/pc_piix.c| 118 --
hw/xen/xen_pt.c | 1
On 3/25/22 12:29 PM, Daniel P. Berrangé wrote:
> On Fri, Mar 18, 2022 at 02:34:29PM +0100, Claudio Fontana wrote:
>> On 3/17/22 4:03 PM, Dr. David Alan Gilbert wrote:
>>> * Claudio Fontana (cfont...@suse.de) wrote:
On 3/17/22 2:41 PM, Claudio Fontana wrote:
> On 3/17/22 11:25 AM, Daniel P.
Hii John,
On Sat, Mar 26, 2022 at 1:34 AM John Snow wrote:
> aqmp-tui, the async QMP text user interface tool, is presently licensed
> as GPLv2+. I intend to include this tool as an add-on to an LGPLv2+
> library package hosted on PyPI.org. I've selected LGPLv2+ to maximize
> compatibility with
s/QemuLogFile/RCUCloseFILE/
s/qemu_logfile_free/rcu_close_file/
Emphasize that this is only a carrier for passing a pointer
to call_rcu for closing, and not the real logfile.
Reviewed-by: Philippe Mathieu-Daudé
Signed-off-by: Richard Henderson
---
util/log.c | 28 +---
Add a new log flag, tid, to turn this feature on.
Require the log filename to be set, and to contain %d.
Do not allow tid to be turned off once it is on, nor let
the filename be change thereafter. This avoids the need
for signalling each thread to re-open on a name change.
Signed-off-by: Richard
Rename to emphasize this covers the file-scope global variables.
Signed-off-by: Richard Henderson
---
util/log.c | 10 ++
1 file changed, 6 insertions(+), 4 deletions(-)
diff --git a/util/log.c b/util/log.c
index 425f0064b0..bb201664ac 100644
--- a/util/log.c
+++ b/util/log.c
@@ -34,9 +
On 3/26/22 06:50, Peter Maydell wrote:
On Fri, 25 Mar 2022 at 19:52, Richard Henderson
wrote:
Note that this advance *should* be done by the translator, as
that's the pc value that's supposed to be generated by hardware.
However, that's a much larger change across sysemu as well.
In the meant
Only call is_daemonized once.
We require the result on all paths after this point.
Reviewed-by: Philippe Mathieu-Daudé
Signed-off-by: Richard Henderson
---
util/log.c | 8 +---
1 file changed, 5 insertions(+), 3 deletions(-)
diff --git a/util/log.c b/util/log.c
index bb201664ac..631856e231
Perform all logfile setup in one step.
Signed-off-by: Richard Henderson
---
bsd-user/main.c | 18 +-
1 file changed, 9 insertions(+), 9 deletions(-)
diff --git a/bsd-user/main.c b/bsd-user/main.c
index ed26fc5acb..aa13eae7f3 100644
--- a/bsd-user/main.c
+++ b/bsd-user/main.c
@@
Perform all logfile setup in one step.
Signed-off-by: Richard Henderson
---
linux-user/main.c | 11 +--
1 file changed, 5 insertions(+), 6 deletions(-)
diff --git a/linux-user/main.c b/linux-user/main.c
index d263b2a669..0297ae8321 100644
--- a/linux-user/main.c
+++ b/linux-user/main.c
Rename to emphasize this is the file-scope global variable.
Reviewed-by: Philippe Mathieu-Daudé
Signed-off-by: Richard Henderson
---
util/log.c | 16
1 file changed, 8 insertions(+), 8 deletions(-)
diff --git a/util/log.c b/util/log.c
index b3f79deb6c..425f0064b0 100644
--- a/
Use qemu_log_trylock/unlock instead of the raw rcu_read.
Signed-off-by: Richard Henderson
---
include/exec/log.h | 13 -
1 file changed, 4 insertions(+), 9 deletions(-)
diff --git a/include/exec/log.h b/include/exec/log.h
index ad0a40cfeb..4a7375a45f 100644
--- a/include/exec/log.h
Perform all logfile setup at startup in one step.
Signed-off-by: Richard Henderson
---
softmmu/vl.c | 21 +
1 file changed, 9 insertions(+), 12 deletions(-)
diff --git a/softmmu/vl.c b/softmmu/vl.c
index a74d0a44a2..65c02963b6 100644
--- a/softmmu/vl.c
+++ b/softmmu/vl.c
@@
The only real use is in cpu_abort, where we have just
flushed the file via qemu_log_unlock, and are just about
to force-crash the application via abort. We do not
really need to close the FILE before the abort.
The two uses in test-logging.c can be handled with
qemu_set_log_filename_flags.
Signe
We have extra stuff to log at the same time.
Hoist the qemu_log_trylock/unlock to the caller and use fprintf.
Signed-off-by: Richard Henderson
---
bsd-user/main.c | 35 ++-
1 file changed, 22 insertions(+), 13 deletions(-)
diff --git a/bsd-user/main.c b/bsd-user/
The bug referenced in os-win32.h was fixed in mingw-w64 v6.
According to repology, version 5 used by ubuntu 18, which is
not yet out of support, so provide a meson link test for it.
Signed-off-by: Richard Henderson
---
meson.build | 12
include/sysemu/os-win32.h | 16
Provide a function to set both filename and flags at
the same time. This is the common case at startup.
Signed-off-by: Richard Henderson
---
v2: Return bool, per recommendations in qapi/error.h (phil).
---
include/qemu/log.h | 1 +
util/log.c | 122
Use qemu_log_lock/unlock instead of the raw rcu_read.
Signed-off-by: Richard Henderson
---
tests/unit/test-logging.c | 33 +++--
1 file changed, 15 insertions(+), 18 deletions(-)
diff --git a/tests/unit/test-logging.c b/tests/unit/test-logging.c
index 54d7e8e33b..dcb
The only user of this feature, tcg_dump_ops, has been
converted to use fprintf directly.
Signed-off-by: Richard Henderson
---
include/qemu/log-for-trace.h | 2 +-
util/log.c | 13 ++---
2 files changed, 3 insertions(+), 12 deletions(-)
diff --git a/include/qemu/log-fo
Move QemuLogFile, qemu_logfile, and all inline functions into qemu/log.c.
No need to expose these implementation details in the api.
Signed-off-by: Richard Henderson
---
include/qemu/log.h| 38 --
tests/unit/test-logging.c | 1 +
util/log.c
On 3/26/22 07:24, Richard Henderson wrote:
Note that this advance *should* be done by the translator, as
that's the pc value that's supposed to be generated by hardware.
However, that's a much larger change across sysemu as well.
In the meantime, produce the correct PC for any signals raised
by
Avoid using QemuLogFile and RCU directly.
Reviewed-by: Alex Bennée
Signed-off-by: Richard Henderson
---
util/log.c | 11 +--
1 file changed, 5 insertions(+), 6 deletions(-)
diff --git a/util/log.c b/util/log.c
index 6b7b358573..090bc3bc39 100644
--- a/util/log.c
+++ b/util/log.c
@@ -62
This is redundant with the logging done in cpu_common_reset.
Reviewed-by: Philippe Mathieu-Daudé
Signed-off-by: Richard Henderson
---
target/nios2/cpu.c | 5 -
1 file changed, 5 deletions(-)
diff --git a/target/nios2/cpu.c b/target/nios2/cpu.c
index 6975ae4bdb..b0877cb39e 100644
--- a/targ
All uses flush output immediately before or after qemu_log_unlock.
Instead of a separate call, move the flush into qemu_log_unlock.
Reviewed-by: Philippe Mathieu-Daudé
Signed-off-by: Richard Henderson
---
include/qemu/log.h| 2 --
accel/tcg/translate-all.c | 1 -
cpu.c
We have extra stuff to log at the same time.
Hoist the qemu_log_lock/unlock to the caller and use fprintf.
Signed-off-by: Richard Henderson
---
include/exec/log.h | 15 ---
linux-user/main.c | 43 +--
linux-user/mmap.c | 7 ++-
3 files c
Use FILE* for global_file. We can perform an rcu_read on that
just as easily as RCUCloseFILE*. This simplifies a couple of
places, where previously we required taking the rcu_read_lock
simply to avoid racing to dereference RCUCloseFile->fd.
Only allocate the RCUCloseFile prior to call_rcu.
Sign
Merge the close from the changed_name block with the close
from the !need_to_open_file block.
Signed-off-by: Richard Henderson
---
util/log.c | 11 +++
1 file changed, 3 insertions(+), 8 deletions(-)
diff --git a/util/log.c b/util/log.c
index 631856e231..21da961d8d 100644
--- a/util/log
Now that all uses have been updated, consider a missing
test of the result of qemu_log_trylock a bug and Werror.
Signed-off-by: Richard Henderson
---
include/qemu/log.h | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/include/qemu/log.h b/include/qemu/log.h
index 2d9455dc85..3
Inside qemu_log, we perform qemu_log_trylock/unlock, which need
not be done if we have already performed the lock beforehand.
Always check the result of qemu_log_trylock -- only checking
qemu_loglevel_mask races with the acquisition of the lock on
the logfile.
Signed-off-by: Richard Henderson
--
Now that the log buffer is flushed after every qemu_log_unlock,
which includes every call to qemu_log, we do not need to force
line buffering (or unbuffering for windows). Block buffer the
entire loggable unit.
Signed-off-by: Richard Henderson
---
util/log.c | 6 --
1 file changed, 6 deleti
We have already looked up and locked the filepointer.
Use fprintf instead of qemu_log directly for output
in and around tcg_dump_ops.
Signed-off-by: Richard Henderson
---
tcg/tcg.c | 109 ++
1 file changed, 52 insertions(+), 57 deletions(-)
di
Rename to emphasize this is the file-scope global variable.
Reviewed-by: Philippe Mathieu-Daudé
Signed-off-by: Richard Henderson
---
util/log.c | 13 ++---
1 file changed, 6 insertions(+), 7 deletions(-)
diff --git a/util/log.c b/util/log.c
index 491a8f97f9..b3f79deb6c 100644
--- a/uti
Now that signal handling has been fixed, re-enable tests.
Reviewed-by: Peter Maydell
Signed-off-by: Richard Henderson
---
tests/tcg/nios2/Makefile.target | 11 ---
1 file changed, 11 deletions(-)
delete mode 100644 tests/tcg/nios2/Makefile.target
diff --git a/tests/tcg/nios2/Makefile.
We have fetched and locked the logfile in translator_loop.
Pass the filepointer down to the disas_log hook so that it
need not be fetched and locked again.
Signed-off-by: Richard Henderson
---
include/exec/translator.h | 2 +-
accel/tcg/translator.c| 2 +-
target/alpha/translate.c
This function is no longer used.
Reviewed-by: Alex Bennée
Signed-off-by: Richard Henderson
---
include/qemu/log.h | 15 ---
1 file changed, 15 deletions(-)
diff --git a/include/qemu/log.h b/include/qemu/log.h
index d090faf22a..2d9455dc85 100644
--- a/include/qemu/log.h
+++ b/includ
Inside log_cpu_state, we perform qemu_log_trylock/unlock, which need
not be done if we have already performed the lock beforehand.
Signed-off-by: Richard Henderson
---
accel/tcg/cpu-exec.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/accel/tcg/cpu-exec.c b/accel/tcg/cpu-ex
This function can fail, which makes it more like ftrylockfile
or pthread_mutex_trylock than flockfile or pthread_mutex_lock,
so rename it.
To closer match the other trylock functions, release rcu_read_lock
along the failure path, so that qemu_log_unlock need not be called
on failure.
Signed-off-b
Drop the kernel-specific "pr2" code structure and use
the qemu-specific error return value.
Signed-off-by: Richard Henderson
---
linux-user/nios2/signal.c | 12
1 file changed, 4 insertions(+), 8 deletions(-)
diff --git a/linux-user/nios2/signal.c b/linux-user/nios2/signal.c
index
Do not replicate the individual logging statements.
Use qemu_log_trylock/unlock instead of qemu_log directly.
Reviewed-by: Alex Bennée
Signed-off-by: Richard Henderson
---
hw/xen/xen_pvdev.c | 44
1 file changed, 24 insertions(+), 20 deletions(-)
di
These functions are no longer used.
Signed-off-by: Richard Henderson
---
include/exec/log.h | 24
1 file changed, 24 deletions(-)
diff --git a/include/exec/log.h b/include/exec/log.h
index 648f4d2263..06ab9841ee 100644
--- a/include/exec/log.h
+++ b/include/exec/log.h
@
Honor QEMU_ESIGRETURN and QEMU_ERESTARTSYS.
Reviewed-by: Peter Maydell
Signed-off-by: Richard Henderson
---
linux-user/nios2/cpu_loop.c | 8
1 file changed, 8 insertions(+)
diff --git a/linux-user/nios2/cpu_loop.c b/linux-user/nios2/cpu_loop.c
index 969460df58..dffe48b8e8 100644
--- a
Reviewed-by: Alex Bennée
Reviewed-by: Philippe Mathieu-Daudé
Signed-off-by: Richard Henderson
---
include/qemu/log.h | 28 +++-
util/log.c | 23 +++
2 files changed, 26 insertions(+), 25 deletions(-)
diff --git a/include/qemu/log.h b/include/
There is no sigreturn syscall, only rt_sigreturn.
This function is unused.
Reviewed-by: Peter Maydell
Signed-off-by: Richard Henderson
---
linux-user/nios2/signal.c | 7 ---
1 file changed, 7 deletions(-)
diff --git a/linux-user/nios2/signal.c b/linux-user/nios2/signal.c
index 517cd39270..
Syscall 0 is __NR_io_setup for this target; there is nothing
to work around.
Reviewed-by: Peter Maydell
Fixes: a0a839b65b6 ("nios2: Add usermode binaries emulation")
Signed-off-by: Richard Henderson
---
linux-user/nios2/cpu_loop.c | 4
1 file changed, 4 deletions(-)
diff --git a/linux-use
Do not reference qemu_logfile directly;
use the predicate provided by qemu/log.h.
Reviewed-by: Alex Bennée
Reviewed-by: Philippe Mathieu-Daudé
Signed-off-by: Richard Henderson
---
os-posix.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/os-posix.c b/os-posix.c
index 24692
This code appears to be trying to make sure there is a logfile.
But that's already true -- the logfile will either be set by -D,
or will be stderr. In either case, not appropriate here.
Reviewed-by: Alex Bennée
Signed-off-by: Richard Henderson
---
target/hexagon/translate.c | 6 --
1 file
Do not force exit within qemu_set_log; return bool and pass
an Error value back up the stack as per usual.
Signed-off-by: Richard Henderson
---
v2: Return bool, per recommendations in qapi/error.h (phil).
---
include/qemu/log.h | 2 +-
bsd-user/main.c | 2
Follow the kernel assembly, which considers all negative
return values to be errors.
Signed-off-by: Richard Henderson
---
linux-user/nios2/cpu_loop.c | 9 +++--
1 file changed, 7 insertions(+), 2 deletions(-)
diff --git a/linux-user/nios2/cpu_loop.c b/linux-user/nios2/cpu_loop.c
index a2857
The child side of clone needs to set the secondary
syscall return value, r7, to indicate syscall success.
Reviewed-by: Peter Maydell
Signed-off-by: Richard Henderson
---
linux-user/nios2/target_cpu.h | 1 +
1 file changed, 1 insertion(+)
diff --git a/linux-user/nios2/target_cpu.h b/linux-user/
This buffering was introduced during the Paleozoic: 9fa3e853531.
There has never been an explanation as to why we may not allow
glibc to allocate the file buffer itself. We certainly have
many other uses of mmap and malloc during user-only startup,
so presumably whatever the issue was, it has bee
Per the recommendations in qapi/error.h, return false on failure.
Use the return value in the monitor, the only place we aren't
already passing error_fatal or error_abort.
Signed-off-by: Richard Henderson
---
include/qemu/log.h | 2 +-
monitor/misc.c | 3 +--
util/log.c | 5 +++--
3
Note that this advance *should* be done by the translator, as
that's the pc value that's supposed to be generated by hardware.
However, that's a much larger change across sysemu as well.
In the meantime, produce the correct PC for any signals raised
by the trap instruction.
Signed-off-by: Richard
Most of the changes here reduce the amount of locking involved
in logging, due to repeated qemu_log calls, each of which takes
and releases the rcu_read_lock.
This makes more use of qemu_log_lock/unlock around code blocks,
which both keeps the output together in the face of threads and
also plays
On 3/24/22 13:08, Leandro Lupori wrote:
To be able to finish the test and return an exit code to the
calling process, the Processor Attention instruction is used.
As its behavior is implementation dependent, in QEMU PowerNV
it just calls exit with GPR[3] value, truncated to an uint8_t.
I think
On 3/24/22 13:08, Leandro Lupori wrote:
+/* Processor Attention */
+POWERPC_EXCP_ATTN = 0x100,
+/*
+ * NOTE: POWERPC_EXCP_ATTN uses values from 0x100 to 0x1ff to return
+ * error codes.
+ */
As used below,
On Fri, 25 Mar 2022 at 19:53, Richard Henderson
wrote:
>
> Drop the kernel-specific "pr2" code structure and use
> the qemu-specific error return value.
>
> Signed-off-by: Richard Henderson
> ---
Reviewed-by: Peter Maydell
thanks
-- PMM
On Fri, 25 Mar 2022 at 19:52, Richard Henderson
wrote:
>
> Follow the kernel assembly, which considers all negative
> return values to be errors.
>
> Signed-off-by: Richard Henderson
> ---
> linux-user/nios2/cpu_loop.c | 9 +++--
Reviewed-by: Peter Maydell
thanks
-- PMM
On Fri, 25 Mar 2022 at 19:52, Richard Henderson
wrote:
>
> Note that this advance *should* be done by the translator, as
> that's the pc value that's supposed to be generated by hardware.
> However, that's a much larger change across sysemu as well.
>
> In the meantime, produce the correct PC for
On Fri, 25 Mar 2022 at 18:37, Philippe Mathieu-Daudé
wrote:
>
> From: Philippe Mathieu-Daudé
>
> Since commit 0439c5a462 ("block/block-backend.c: assertions for
> block-backend") QEMU crashes when using Cocoa on Darwin hosts.
>
> Example on macOS:
>
> $ qemu-system-i386
> Assertion failed: (q
Reviewed-by: Akihiko Odaki
On 2022/03/26 3:37, Philippe Mathieu-Daudé wrote:
From: Philippe Mathieu-Daudé
Since commit 0439c5a462 ("block/block-backend.c: assertions for
block-backend") QEMU crashes when using Cocoa on Darwin hosts.
Example on macOS:
$ qemu-system-i386
Assertion faile
On Fri, 25 Mar 2022 at 14:57, Peter Maydell wrote:
>
> Just two small bug fixes for the next rc.
>
> The following changes since commit f345abe36527a8b575482bb5a0616f43952bf1f4:
>
> Merge tag 'for-upstream' of https://gitlab.com/bonzini/qemu into staging
> (2022-03-25 10:14:47 +)
>
> are av
67 matches
Mail list logo