<feed xmlns='http://www.w3.org/2005/Atom'>
<title>qemu/qemu.git, branch stable-8.0</title>
<subtitle>QEMU main repository</subtitle>
<id>https://git.rulkc.org/pub/scm/virt/qemu/qemu.git/atom?h=stable-8.0</id>
<link rel='self' href='https://git.rulkc.org/pub/scm/virt/qemu/qemu.git/atom?h=stable-8.0'/>
<link rel='alternate' type='text/html' href='https://git.rulkc.org/pub/scm/virt/qemu/qemu.git/'/>
<updated>2023-09-21T16:23:20+00:00</updated>
<entry>
<title>Update version for 8.0.5 release</title>
<updated>2023-09-21T16:23:20+00:00</updated>
<author>
<name>Michael Tokarev</name>
<email>mjt@tls.msk.ru</email>
</author>
<published>2023-09-21T16:23:20+00:00</published>
<link rel='alternate' type='text/html' href='https://git.rulkc.org/pub/scm/virt/qemu/qemu.git/commit/?id=6bbce8b464206e6622216b62841cb3e953d56eb8'/>
<id>urn:sha1:6bbce8b464206e6622216b62841cb3e953d56eb8</id>
<content type='text'>
Signed-off-by: Michael Tokarev &lt;mjt@tls.msk.ru&gt;
</content>
</entry>
<entry>
<title>tpm: fix crash when FD &gt;= 1024 and unnecessary errors due to EINTR</title>
<updated>2023-09-20T07:18:14+00:00</updated>
<author>
<name>Marc-André Lureau</name>
<email>marcandre.lureau@redhat.com</email>
</author>
<published>2023-09-11T13:25:51+00:00</published>
<link rel='alternate' type='text/html' href='https://git.rulkc.org/pub/scm/virt/qemu/qemu.git/commit/?id=fcf58d6f20d29ee250f542ac8de968700c957134'/>
<id>urn:sha1:fcf58d6f20d29ee250f542ac8de968700c957134</id>
<content type='text'>
Replace select() with poll() to fix a crash when QEMU has a large number
of FDs. Also use RETRY_ON_EINTR to avoid unnecessary errors due to EINTR.

Cc: qemu-stable@nongnu.org
Fixes: https://bugzilla.redhat.com/show_bug.cgi?id=2020133
Fixes: 56a3c24ffc ("tpm: Probe for connected TPM 1.2 or TPM 2")
Signed-off-by: Marc-André Lureau &lt;marcandre.lureau@redhat.com&gt;
Reviewed-by: Michael Tokarev &lt;mjt@tls.msk.ru&gt;
Reviewed-by: Stefan Berger &lt;stefanb@linux.ibm.com&gt;
Signed-off-by: Stefan Berger &lt;stefanb@linux.ibm.com&gt;
(cherry picked from commit 8e32ddff69b6b4547cc00592ad816484e160817a)
Signed-off-by: Michael Tokarev &lt;mjt@tls.msk.ru&gt;
</content>
</entry>
<entry>
<title>s390x/ap: fix missing subsystem reset registration</title>
<updated>2023-09-20T07:18:14+00:00</updated>
<author>
<name>Janosch Frank</name>
<email>frankja@linux.ibm.com</email>
</author>
<published>2023-08-23T14:22:15+00:00</published>
<link rel='alternate' type='text/html' href='https://git.rulkc.org/pub/scm/virt/qemu/qemu.git/commit/?id=0ef930a29f432320d979e227a305f927bb15eb09'/>
<id>urn:sha1:0ef930a29f432320d979e227a305f927bb15eb09</id>
<content type='text'>
A subsystem reset contains a reset of AP resources which has been
missing.  Adding the AP bridge to the list of device types that need
reset fixes this issue.

Reviewed-by: Jason J. Herne &lt;jjherne@linux.ibm.com&gt;
Reviewed-by: Tony Krowiak &lt;akrowiak@linux.ibm.com&gt;
Signed-off-by: Janosch Frank &lt;frankja@linux.ibm.com&gt;
Fixes: a51b3153 ("s390x/ap: base Adjunct Processor (AP) object model")
Message-ID: &lt;20230823142219.1046522-2-seiden@linux.ibm.com&gt;
Signed-off-by: Thomas Huth &lt;thuth@redhat.com&gt;
(cherry picked from commit 297ec01f0b9864ea8209ca0ddc6643b4c0574bdb)
Signed-off-by: Michael Tokarev &lt;mjt@tls.msk.ru&gt;
</content>
</entry>
<entry>
<title>ui: fix crash when there are no active_console</title>
<updated>2023-09-20T07:18:14+00:00</updated>
<author>
<name>Marc-André Lureau</name>
<email>marcandre.lureau@redhat.com</email>
</author>
<published>2023-09-11T14:04:47+00:00</published>
<link rel='alternate' type='text/html' href='https://git.rulkc.org/pub/scm/virt/qemu/qemu.git/commit/?id=6c575436cd3e692079fc3e2fe4f54efe77211549'/>
<id>urn:sha1:6c575436cd3e692079fc3e2fe4f54efe77211549</id>
<content type='text'>
Thread 1 "qemu-system-x86" received signal SIGSEGV, Segmentation fault.
0x0000555555888630 in dpy_ui_info_supported (con=0x0) at ../ui/console.c:812
812	    return con-&gt;hw_ops-&gt;ui_info != NULL;
(gdb) bt
#0  0x0000555555888630 in dpy_ui_info_supported (con=0x0) at ../ui/console.c:812
#1  0x00005555558a44b1 in protocol_client_msg (vs=0x5555578c76c0, data=0x5555581e93f0 &lt;incomplete sequence \373&gt;, len=24) at ../ui/vnc.c:2585
#2  0x00005555558a19ac in vnc_client_read (vs=0x5555578c76c0) at ../ui/vnc.c:1607
#3  0x00005555558a1ac2 in vnc_client_io (ioc=0x5555581eb0e0, condition=G_IO_IN, opaque=0x5555578c76c0) at ../ui/vnc.c:1635

Fixes:
https://issues.redhat.com/browse/RHEL-2600

Signed-off-by: Marc-André Lureau &lt;marcandre.lureau@redhat.com&gt;
Reviewed-by: Albert Esteve &lt;aesteve@redhat.com&gt;
(cherry picked from commit 48a35e12faf90a896c5aa4755812201e00d60316)
Signed-off-by: Michael Tokarev &lt;mjt@tls.msk.ru&gt;
</content>
</entry>
<entry>
<title>hw/tpm: TIS on sysbus: Remove unsupport ppi command line option</title>
<updated>2023-09-20T07:18:14+00:00</updated>
<author>
<name>Stefan Berger</name>
<email>stefanb@linux.ibm.com</email>
</author>
<published>2023-07-13T17:19:55+00:00</published>
<link rel='alternate' type='text/html' href='https://git.rulkc.org/pub/scm/virt/qemu/qemu.git/commit/?id=36540b367eb80f1d6a646f691e6a2b75bf57ad61'/>
<id>urn:sha1:36540b367eb80f1d6a646f691e6a2b75bf57ad61</id>
<content type='text'>
The ppi command line option for the TIS device on sysbus never worked
and caused an immediate segfault. Remove support for it since it also
needs support in the firmware and needs testing inside the VM.

Reproducer with the ppi=on option passed:

qemu-system-aarch64 \
   -machine virt,gic-version=3 \
   -m 4G  \
   -nographic -no-acpi \
   -chardev socket,id=chrtpm,path=/tmp/mytpm1/swtpm-sock \
   -tpmdev emulator,id=tpm0,chardev=chrtpm \
   -device tpm-tis-device,tpmdev=tpm0,ppi=on
[...]
Segmentation fault (core dumped)

Signed-off-by: Stefan Berger &lt;stefanb@linux.ibm.com&gt;
Reviewed-by: Eric Auger &lt;eric.auger@redhat.com&gt;
Message-id: 20230713171955.149236-1-stefanb@linux.ibm.com
(cherry picked from commit 4c46fe2ed492f35f411632c8b5a8442f322bc3f0)
Signed-off-by: Michael Tokarev &lt;mjt@tls.msk.ru&gt;
</content>
</entry>
<entry>
<title>target/riscv/pmp.c: respect mseccfg.RLB for pmpaddrX changes</title>
<updated>2023-09-20T07:18:14+00:00</updated>
<author>
<name>Leon Schuermann</name>
<email>leons@opentitan.org</email>
</author>
<published>2023-08-29T21:50:46+00:00</published>
<link rel='alternate' type='text/html' href='https://git.rulkc.org/pub/scm/virt/qemu/qemu.git/commit/?id=70c97e75d709eadf80845259ea0a0409475102c3'/>
<id>urn:sha1:70c97e75d709eadf80845259ea0a0409475102c3</id>
<content type='text'>
When the rule-lock bypass (RLB) bit is set in the mseccfg CSR, the PMP
configuration lock bits must not apply. While this behavior is
implemented for the pmpcfgX CSRs, this bit is not respected for
changes to the pmpaddrX CSRs. This patch ensures that pmpaddrX CSR
writes work even on locked regions when the global rule-lock bypass is
enabled.

Signed-off-by: Leon Schuermann &lt;leons@opentitan.org&gt;
Reviewed-by: Mayuresh Chitale &lt;mchitale@ventanamicro.com&gt;
Reviewed-by: Alistair Francis &lt;alistair.francis@wdc.com&gt;
Message-ID: &lt;20230829215046.1430463-1-leon@is.currently.online&gt;
Signed-off-by: Alistair Francis &lt;alistair.francis@wdc.com&gt;
(cherry picked from commit 4e3adce1244e1ca30ec05874c3eca14911dc0825)
Signed-off-by: Michael Tokarev &lt;mjt@tls.msk.ru&gt;
</content>
</entry>
<entry>
<title>target/riscv: fix satp_mode_finalize() when satp_mode.supported = 0</title>
<updated>2023-09-20T07:18:14+00:00</updated>
<author>
<name>Daniel Henrique Barboza</name>
<email>dbarboza@ventanamicro.com</email>
</author>
<published>2023-08-17T15:29:03+00:00</published>
<link rel='alternate' type='text/html' href='https://git.rulkc.org/pub/scm/virt/qemu/qemu.git/commit/?id=1805e05db3c6d92c750427b1c1371f44fa8e4893'/>
<id>urn:sha1:1805e05db3c6d92c750427b1c1371f44fa8e4893</id>
<content type='text'>
In the same emulated RISC-V host, the 'host' KVM CPU takes 4 times
longer to boot than the 'rv64' KVM CPU.

The reason is an unintended behavior of riscv_cpu_satp_mode_finalize()
when satp_mode.supported = 0, i.e. when cpu_init() does not set
satp_mode_max_supported(). satp_mode_max_from_map(map) does:

31 - __builtin_clz(map)

This means that, if satp_mode.supported = 0, satp_mode_supported_max
wil be '31 - 32'. But this is C, so satp_mode_supported_max will gladly
set it to UINT_MAX (4294967295). After that, if the user didn't set a
satp_mode, set_satp_mode_default_map(cpu) will make

cfg.satp_mode.map = cfg.satp_mode.supported

So satp_mode.map = 0. And then satp_mode_map_max will be set to
satp_mode_max_from_map(cpu-&gt;cfg.satp_mode.map), i.e. also UINT_MAX. The
guard "satp_mode_map_max &gt; satp_mode_supported_max" doesn't protect us
here since both are UINT_MAX.

And finally we have 2 loops:

        for (int i = satp_mode_map_max - 1; i &gt;= 0; --i) {

Which are, in fact, 2 loops from UINT_MAX -1 to -1. This is where the
extra delay when booting the 'host' CPU is coming from.

Commit 43d1de32f8 already set a precedence for satp_mode.supported = 0
in a different manner. We're doing the same here. If supported == 0,
interpret as 'the CPU wants the OS to handle satp mode alone' and skip
satp_mode_finalize().

We'll also put a guard in satp_mode_max_from_map() to assert out if map
is 0 since the function is not ready to deal with it.

Cc: Alexandre Ghiti &lt;alexghiti@rivosinc.com&gt;
Fixes: 6f23aaeb9b ("riscv: Allow user to set the satp mode")
Signed-off-by: Daniel Henrique Barboza &lt;dbarboza@ventanamicro.com&gt;
Reviewed-by: Andrew Jones &lt;ajones@ventanamicro.com&gt;
Message-ID: &lt;20230817152903.694926-1-dbarboza@ventanamicro.com&gt;
Signed-off-by: Alistair Francis &lt;alistair.francis@wdc.com&gt;
(cherry picked from commit 3a2fc23563885c219c73c8f24318921daf02f3f2)
Signed-off-by: Michael Tokarev &lt;mjt@tls.msk.ru&gt;
</content>
</entry>
<entry>
<title>hw/riscv: virt: Fix riscv,pmu DT node path</title>
<updated>2023-09-20T07:18:14+00:00</updated>
<author>
<name>Conor Dooley</name>
<email>conor.dooley@microchip.com</email>
</author>
<published>2023-07-27T14:24:17+00:00</published>
<link rel='alternate' type='text/html' href='https://git.rulkc.org/pub/scm/virt/qemu/qemu.git/commit/?id=e94ea3c6dbd48d70edca6de0079d5690a82ec35b'/>
<id>urn:sha1:e94ea3c6dbd48d70edca6de0079d5690a82ec35b</id>
<content type='text'>
On a dtb dumped from the virt machine, dt-validate complains:
soc: pmu: {'riscv,event-to-mhpmcounters': [[1, 1, 524281], [2, 2, 524284], [65561, 65561, 524280], [65563, 65563, 524280], [65569, 65569, 524280]], 'compatible': ['riscv,pmu']} should not be valid under {'type': 'object'}
        from schema $id: http://devicetree.org/schemas/simple-bus.yaml#
That's pretty cryptic, but running the dtb back through dtc produces
something a lot more reasonable:
Warning (simple_bus_reg): /soc/pmu: missing or empty reg/ranges property

Moving the riscv,pmu node out of the soc bus solves the problem.

Signed-off-by: Conor Dooley &lt;conor.dooley@microchip.com&gt;
Acked-by: Alistair Francis &lt;alistair.francis@wdc.com&gt;
Reviewed-by: Daniel Henrique Barboza &lt;dbarboza@ventanamicro.com&gt;
Message-ID: &lt;20230727-groom-decline-2c57ce42841c@spud&gt;
Signed-off-by: Alistair Francis &lt;alistair.francis@wdc.com&gt;
(cherry picked from commit 9ff31406312500053ecb5f92df01dd9ce52e635d)
Signed-off-by: Michael Tokarev &lt;mjt@tls.msk.ru&gt;
</content>
</entry>
<entry>
<title>linux-user/riscv: Use abi type for target_ucontext</title>
<updated>2023-09-20T07:18:14+00:00</updated>
<author>
<name>LIU Zhiwei</name>
<email>zhiwei_liu@linux.alibaba.com</email>
</author>
<published>2023-08-11T05:54:38+00:00</published>
<link rel='alternate' type='text/html' href='https://git.rulkc.org/pub/scm/virt/qemu/qemu.git/commit/?id=9bac2bcf10e25506cc1fc7b69b027399afeb3768'/>
<id>urn:sha1:9bac2bcf10e25506cc1fc7b69b027399afeb3768</id>
<content type='text'>
We should not use types dependend on host arch for target_ucontext.
This bug is found when run rv32 applications.

Signed-off-by: LIU Zhiwei &lt;zhiwei_liu@linux.alibaba.com&gt;
Reviewed-by: Richard Henderson &lt;richard.henderson@linaro.org&gt;
Reviewed-by: Daniel Henrique Barboza &lt;dbarboza@ventanamicro.com&gt;
Reviewed-by: Philippe Mathieu-Daudé &lt;philmd@linaro.org&gt;
Message-ID: &lt;20230811055438.1945-1-zhiwei_liu@linux.alibaba.com&gt;
Signed-off-by: Alistair Francis &lt;alistair.francis@wdc.com&gt;
(cherry picked from commit ae7d4d625cab49657b9fc2be09d895afb9bcdaf0)
Signed-off-by: Michael Tokarev &lt;mjt@tls.msk.ru&gt;
</content>
</entry>
<entry>
<title>hw/intc: Make rtc variable names consistent</title>
<updated>2023-09-20T07:18:14+00:00</updated>
<author>
<name>Jason Chien</name>
<email>jason.chien@sifive.com</email>
</author>
<published>2023-07-28T08:24:39+00:00</published>
<link rel='alternate' type='text/html' href='https://git.rulkc.org/pub/scm/virt/qemu/qemu.git/commit/?id=c00a9ec0613ca428abaedaf8b7be7b1cbb97d37f'/>
<id>urn:sha1:c00a9ec0613ca428abaedaf8b7be7b1cbb97d37f</id>
<content type='text'>
The variables whose values are given by cpu_riscv_read_rtc() should be named
"rtc". The variables whose value are given by cpu_riscv_read_rtc_raw()
should be named "rtc_r".

Signed-off-by: Jason Chien &lt;jason.chien@sifive.com&gt;
Reviewed-by: Alistair Francis &lt;alistair.francis@wdc.com&gt;
Message-ID: &lt;20230728082502.26439-2-jason.chien@sifive.com&gt;
Signed-off-by: Alistair Francis &lt;alistair.francis@wdc.com&gt;
(cherry picked from commit 9382a9eafccad8dc6a487ea3a8d2bed03dc35db9)
Signed-off-by: Michael Tokarev &lt;mjt@tls.msk.ru&gt;
</content>
</entry>
</feed>
