<feed xmlns='http://www.w3.org/2005/Atom'>
<title>bwlp/qemu.git/target/i386/Makefile.objs, branch spice_video_codecs</title>
<subtitle>Experimental fork of QEMU with video encoding patches</subtitle>
<id>https://git.openslx.org/bwlp/qemu.git/atom/target/i386/Makefile.objs?h=spice_video_codecs</id>
<link rel='self' href='https://git.openslx.org/bwlp/qemu.git/atom/target/i386/Makefile.objs?h=spice_video_codecs'/>
<link rel='alternate' type='text/html' href='https://git.openslx.org/bwlp/qemu.git/'/>
<updated>2020-08-21T10:30:35+00:00</updated>
<entry>
<title>meson: target</title>
<updated>2020-08-21T10:30:35+00:00</updated>
<author>
<name>Paolo Bonzini</name>
</author>
<published>2020-08-07T10:10:23+00:00</published>
<link rel='alternate' type='text/html' href='https://git.openslx.org/bwlp/qemu.git/commit/?id=abff1abfe8113a989215ed33c48839a827e531f1'/>
<id>urn:sha1:abff1abfe8113a989215ed33c48839a827e531f1</id>
<content type='text'>
Similar to hw_arch, each architecture defines two sourceset which are placed in
dictionaries target_arch and target_softmmu_arch.  These are then picked up
from there when building the per-emulator static_library.

Signed-off-by: Marc-André Lureau &lt;marcandre.lureau@redhat.com&gt;
Signed-off-by: Paolo Bonzini &lt;pbonzini@redhat.com&gt;
</content>
</entry>
<entry>
<title>target/i386: fix IEEE SSE floating-point exception raising</title>
<updated>2020-07-10T22:02:17+00:00</updated>
<author>
<name>Joseph Myers</name>
</author>
<published>2020-06-25T23:58:31+00:00</published>
<link rel='alternate' type='text/html' href='https://git.openslx.org/bwlp/qemu.git/commit/?id=418b0f93d12a1589d5031405de857844f32e9ccc'/>
<id>urn:sha1:418b0f93d12a1589d5031405de857844f32e9ccc</id>
<content type='text'>
The SSE instruction implementations all fail to raise the expected
IEEE floating-point exceptions because they do nothing to convert the
exception state from the softfloat machinery into the exception flags
in MXCSR.

Fix this by adding such conversions.  Unlike for x87, emulated SSE
floating-point operations might be optimized using hardware floating
point on the host, and so a different approach is taken that is
compatible with such optimizations.  The required invariant is that
all exceptions set in env-&gt;sse_status (other than "denormal operand",
for which the SSE semantics are different from those in the softfloat
code) are ones that are set in the MXCSR; the emulated MXCSR is
updated lazily when code reads MXCSR, while when code sets MXCSR, the
exceptions in env-&gt;sse_status are set accordingly.

A few instructions do not raise all the exceptions that would be
raised by the softfloat code, and those instructions are made to save
and restore the softfloat exception state accordingly.

Nothing is done about "denormal operand"; setting that (only for the
case when input denormals are *not* flushed to zero, the opposite of
the logic in the softfloat code for such an exception) will require
custom code for relevant instructions, or else architecture-specific
conditionals in the softfloat code for when to set such an exception
together with custom code for various SSE conversion and rounding
instructions that do not set that exception.

Nothing is done about trapping exceptions (for which there is minimal
and largely broken support in QEMU's emulation in the x87 case and no
support at all in the SSE case).

Signed-off-by: Joseph Myers &lt;joseph@codesourcery.com&gt;
Message-Id: &lt;alpine.DEB.2.21.2006252358000.3832@digraph.polyomino.org.uk&gt;
Signed-off-by: Paolo Bonzini &lt;pbonzini@redhat.com&gt;
</content>
</entry>
<entry>
<title>target-i386: add kvm stubs to user-mode emulators</title>
<updated>2019-03-11T15:33:49+00:00</updated>
<author>
<name>Paolo Bonzini</name>
</author>
<published>2019-02-28T09:23:18+00:00</published>
<link rel='alternate' type='text/html' href='https://git.openslx.org/bwlp/qemu.git/commit/?id=840159e48c365ca1405e513cc95099bf4f35ad9f'/>
<id>urn:sha1:840159e48c365ca1405e513cc95099bf4f35ad9f</id>
<content type='text'>
The CPUID code will call kvm_arch_get_supported_cpuid() and, even though
it is undef kvm_enabled() so it never runs for user-mode emulators,
sometimes clang will not optimize it out at -O0.

That could be considered a compiler bug, however at -O0 we give it
a pass and just add the stubs.

Reported-by: Kamil Rytarowski &lt;n54@gmx.com&gt;
Tested-by: Kamil Rytarowski &lt;n54@gmx.com&gt;
Signed-off-by: Paolo Bonzini &lt;pbonzini@redhat.com&gt;
</content>
</entry>
<entry>
<title>hax: Support for Linux hosts</title>
<updated>2019-01-11T12:57:24+00:00</updated>
<author>
<name>Alexandro Sanchez Bach</name>
</author>
<published>2018-11-15T01:33:30+00:00</published>
<link rel='alternate' type='text/html' href='https://git.openslx.org/bwlp/qemu.git/commit/?id=b65cc8dec07fec77dbda7bc5daf1defcb7c411d9'/>
<id>urn:sha1:b65cc8dec07fec77dbda7bc5daf1defcb7c411d9</id>
<content type='text'>
Intel HAXM supports now 32-bit and 64-bit Linux hosts. This patch includes
the corresponding userland changes.

Since the Darwin userland backend is POSIX-compliant, the hax-darwin.{c,h}
files have been renamed to hax-posix.{c,h}. This prefix is consistent with
the naming used in the rest of QEMU.

Signed-off-by: Alexandro Sanchez Bach &lt;asanchez@kryptoslogic.com&gt;
Message-Id: &lt;20181115013331.65820-1-asanchez@kryptoslogic.com&gt;
Signed-off-by: Paolo Bonzini &lt;pbonzini@redhat.com&gt;
</content>
</entry>
<entry>
<title>i386: add hyperv-stub for CONFIG_HYPERV=n</title>
<updated>2018-10-19T11:44:14+00:00</updated>
<author>
<name>Roman Kagan</name>
</author>
<published>2018-09-21T08:20:41+00:00</published>
<link rel='alternate' type='text/html' href='https://git.openslx.org/bwlp/qemu.git/commit/?id=8417442a34f78f1e1dda87aff27c8a42124f4d42'/>
<id>urn:sha1:8417442a34f78f1e1dda87aff27c8a42124f4d42</id>
<content type='text'>
This will allow to build slightly leaner QEMU that supports some HyperV
features of KVM (e.g. SynIC timers, PV spinlocks, APIC assists, etc.)
but nothing else on the QEMU side.

Signed-off-by: Roman Kagan &lt;rkagan@virtuozzo.com&gt;
Message-Id: &lt;20180921082041.29380-6-rkagan@virtuozzo.com&gt;
Signed-off-by: Paolo Bonzini &lt;pbonzini@redhat.com&gt;
</content>
</entry>
<entry>
<title>sev/i386: add command to initialize the memory encryption context</title>
<updated>2018-03-13T16:35:16+00:00</updated>
<author>
<name>Brijesh Singh</name>
</author>
<published>2018-03-08T12:48:44+00:00</published>
<link rel='alternate' type='text/html' href='https://git.openslx.org/bwlp/qemu.git/commit/?id=d8575c6c0242bb1457589111e879f46348704534'/>
<id>urn:sha1:d8575c6c0242bb1457589111e879f46348704534</id>
<content type='text'>
When memory encryption is enabled, KVM_SEV_INIT command is used to
initialize the platform. The command loads the SEV related persistent
data from non-volatile storage and initializes the platform context.
This command should be first issued before invoking any other guest
commands provided by the SEV firmware.

Cc: Paolo Bonzini &lt;pbonzini@redhat.com&gt;
Cc: Richard Henderson &lt;rth@twiddle.net&gt;
Cc: Eduardo Habkost &lt;ehabkost@redhat.com&gt;
Signed-off-by: Brijesh Singh &lt;brijesh.singh@amd.com&gt;
Signed-off-by: Paolo Bonzini &lt;pbonzini@redhat.com&gt;
</content>
</entry>
<entry>
<title>target/i386: add Secure Encrypted Virtualization (SEV) object</title>
<updated>2018-03-13T11:04:03+00:00</updated>
<author>
<name>Brijesh Singh</name>
</author>
<published>2018-03-08T12:48:41+00:00</published>
<link rel='alternate' type='text/html' href='https://git.openslx.org/bwlp/qemu.git/commit/?id=a9b4942f485856acb3a12c6e341b18ea352ecc50'/>
<id>urn:sha1:a9b4942f485856acb3a12c6e341b18ea352ecc50</id>
<content type='text'>
Add a new memory encryption object 'sev-guest'. The object will be used
to create encrypted VMs on AMD EPYC CPU. The object provides the properties
to pass guest owner's public Diffie-hellman key, guest policy and session
information required to create the memory encryption context within the
SEV firmware.

e.g to launch SEV guest
 # $QEMU \
    -object sev-guest,id=sev0 \
    -machine ....,memory-encryption=sev0

Cc: Paolo Bonzini &lt;pbonzini@redhat.com&gt;
Cc: Richard Henderson &lt;rth@twiddle.net&gt;
Cc: Eduardo Habkost &lt;ehabkost@redhat.com&gt;
Signed-off-by: Brijesh Singh &lt;brijesh.singh@amd.com&gt;
Signed-off-by: Paolo Bonzini &lt;pbonzini@redhat.com&gt;
</content>
</entry>
<entry>
<title>Introduce the WHPX impl</title>
<updated>2018-02-07T13:09:26+00:00</updated>
<author>
<name>Justin Terry (VM)</name>
</author>
<published>2018-01-22T21:07:48+00:00</published>
<link rel='alternate' type='text/html' href='https://git.openslx.org/bwlp/qemu.git/commit/?id=812d49f2a3eed1f53d5a922461e81ea7e3581dd5'/>
<id>urn:sha1:812d49f2a3eed1f53d5a922461e81ea7e3581dd5</id>
<content type='text'>
Implements the Windows Hypervisor Platform accelerator (WHPX) target. Which
acts as a hypervisor accelerator for QEMU on the Windows platform. This enables
QEMU much greater speed over the emulated x86_64 path's that are taken on
Windows today.

1. Adds support for vPartition management.
2. Adds support for vCPU management.
3. Adds support for MMIO/PortIO.
4. Registers the WHPX ACCEL_CLASS.

Signed-off-by: Justin Terry (VM) &lt;juterry@microsoft.com&gt;
Message-Id: &lt;1516655269-1785-4-git-send-email-juterry@microsoft.com&gt;
Signed-off-by: Paolo Bonzini &lt;pbonzini@redhat.com&gt;
</content>
</entry>
<entry>
<title>i386: hvf: move all hvf files in the same directory</title>
<updated>2017-12-22T14:02:05+00:00</updated>
<author>
<name>Paolo Bonzini</name>
</author>
<published>2017-10-03T13:33:29+00:00</published>
<link rel='alternate' type='text/html' href='https://git.openslx.org/bwlp/qemu.git/commit/?id=69e0a03c3f28f5bd35f54a47cd4996cc14e135ba'/>
<id>urn:sha1:69e0a03c3f28f5bd35f54a47cd4996cc14e135ba</id>
<content type='text'>
Just call it hvf/, no need for the "utils" suffix.

Signed-off-by: Paolo Bonzini &lt;pbonzini@redhat.com&gt;
</content>
</entry>
<entry>
<title>i386: hvf: add code base from Google's QEMU repository</title>
<updated>2017-12-22T14:01:20+00:00</updated>
<author>
<name>Sergio Andres Gomez Del Real</name>
</author>
<published>2017-09-13T09:05:09+00:00</published>
<link rel='alternate' type='text/html' href='https://git.openslx.org/bwlp/qemu.git/commit/?id=c97d6d2cdf97edb4aebe832fdba65d701ad7bcb6'/>
<id>urn:sha1:c97d6d2cdf97edb4aebe832fdba65d701ad7bcb6</id>
<content type='text'>
This file begins tracking the files that will be the code base for HVF
support in QEMU. This code base is part of Google's QEMU version of
their Android emulator, and can be found at
https://android.googlesource.com/platform/external/qemu/+/emu-master-dev

This code is based on Veertu Inc's vdhh (Veertu Desktop Hosted
Hypervisor), found at https://github.com/veertuinc/vdhh. Everything is
appropriately licensed under GPL v2-or-later, except for the code inside
x86_task.c and x86_task.h, which, deriving from KVM (the Linux kernel),
is licensed GPL v2-only.

This code base already implements a very great deal of functionality,
although Google's version removed from Vertuu's the support for APIC
page and hyperv-related stuff. According to the Android Emulator Release
Notes, Revision 26.1.3 (August 2017), "Hypervisor.framework is now
enabled by default on macOS for 32-bit x86 images to improve performance
and macOS compatibility", although we better use with caution for, as the
same Revision warns us, "If you experience issues with it specifically,
please file a bug report...". The code hasn't seen much update in the
last 5 months, so I think that we can further develop the code with
occasional visiting Google's repository to see if there has been any
update.

On top of Google's code, the following changes were made:

- add code to the configure script to support the --enable-hvf argument.
If the OS is Darwin, it checks for presence of HVF in the system. The
patch also adds strings related to HVF in the file qemu-options.hx.
QEMU will only support the modern syntax style '-M accel=hvf' no enable
hvf; the legacy '-enable-hvf' will not be supported.

- fix styling issues

- add glue code to cpus.c

- move HVFX86EmulatorState field to CPUX86State, changing the
the emulation functions to have a parameter with signature 'CPUX86State *'
instead of 'CPUState *' so we don't have to get the 'env'.

Signed-off-by: Sergio Andres Gomez Del Real &lt;Sergio.G.DelReal@gmail.com&gt;
Message-Id: &lt;20170913090522.4022-2-Sergio.G.DelReal@gmail.com&gt;
Message-Id: &lt;20170913090522.4022-3-Sergio.G.DelReal@gmail.com&gt;
Message-Id: &lt;20170913090522.4022-5-Sergio.G.DelReal@gmail.com&gt;
Message-Id: &lt;20170913090522.4022-6-Sergio.G.DelReal@gmail.com&gt;
Message-Id: &lt;20170905035457.3753-7-Sergio.G.DelReal@gmail.com&gt;
Signed-off-by: Paolo Bonzini &lt;pbonzini@redhat.com&gt;
</content>
</entry>
</feed>
