On Fri, Feb 16, 2018 at 01:16:17PM +, Dr. David Alan Gilbert (git) wrote:
> From: "Dr. David Alan Gilbert"
>
> Register a waker function in vhost-user code to be notified when
> pages arrive or requests to previously mapped pages get requested.
>
> Signed-off-by: Dr.
On Fri, Feb 16, 2018 at 01:16:16PM +, Dr. David Alan Gilbert (git) wrote:
> From: "Dr. David Alan Gilbert"
>
> Add a hook to allow a client userfaultfd to be 'woken'
> when a page arrives, and a walker that calls that
> hook for relevant clients given a RAMBlock and
On Fri, Feb 16, 2018 at 01:16:15PM +, Dr. David Alan Gilbert (git) wrote:
> From: "Dr. David Alan Gilbert"
>
> Send a 'wake' request on a userfaultfd for a shared process.
> The address in the clients address space is specified together
> with the RAMBlock it was
The patch is In this mail attachments, which is patch for version 2.11.1
target/i386/translate.c.
The patch is created by diff.
my English is so poor to explain how the error come, but you can see the patch
result to get it.
At 2018-02-25 17:41:15, "Thomas Huth"
On Fri, Feb 16, 2018 at 01:16:14PM +, Dr. David Alan Gilbert (git) wrote:
> From: "Dr. David Alan Gilbert"
>
> Resolve fault addresses read off the clients UFD into RAMBlock
> and offset, and call back to the postcopy code to ask for the page.
>
> Signed-off-by: Dr.
On 2018年03月02日 11:46, Jason Baron wrote:
Although linkspeed and duplex can be set in a linux guest via 'ethtool -s',
this requires custom ethtool commands for virtio-net by default.
Introduce a new feature flag, VIRTIO_NET_F_SPEED_DUPLEX, which allows
the hypervisor to export a linkspeed and
> From: Alex Williamson
> Sent: Thursday, March 1, 2018 4:15 AM
>
> A vfio ioeventfd will perform the pre-specified device write on
> triggering of an eventfd. When coupled with KVM ioeventfds, this
> feature allows a VM to trap a device page for virtualization, while
> also registering targeted
On 2018年02月22日 17:58, Thomas Huth wrote:
Headers like "hw/loader.h" and "qemu/sockets.h" are not needed in
the hw/net/*.c files. And Some other headers are included via other
headers already, so we can drop them, too.
Signed-off-by: Thomas Huth
---
hw/net/e1000.c | 1
On Thu, Mar 01, 2018 at 04:07:06PM +, Daniel P. Berrangé wrote:
> On Thu, Mar 01, 2018 at 04:44:23PM +0800, Peter Xu wrote:
> > This is another preparation work for monitor OOB seires.
> >
> > V1: http://lists.nongnu.org/archive/html/qemu-devel/2018-02/msg06972.html
> >
> > V2 rewrote the
On Thu, Mar 01, 2018 at 06:37:47PM +0100, Paolo Bonzini wrote:
> On 01/03/2018 09:44, Peter Xu wrote:
> > +static bool tcp_chr_machine_done;
> > +
> > static void tcp_chr_reconn_timer_cancel(SocketChardev *s)
> > {
> > if (s->reconnect_timer) {
> > @@ -719,6 +721,11 @@ static void
Hi,
This series seems to have some coding style problems. See output below for
more information:
Type: series
Message-id: 20180302060350.24330-1-da...@gibson.dropbear.id.au
Subject: [Qemu-devel] [PULL 00/24] ppc-for-2.12 queue 20180302
=== TEST SCRIPT BEGIN ===
#!/bin/bash
BASE=base
n=1
On Thu, Mar 01, 2018 at 04:03:04PM +, Daniel P. Berrangé wrote:
> On Thu, Mar 01, 2018 at 04:44:38PM +0800, Peter Xu wrote:
> > TLS handshake may create background GSource tasks, while we won't know
> > the correct GMainContext until the whole chardev (including frontend)
> > inited. Let's
On 2018年02月06日 20:53, Jay Zhou wrote:
If netdev_add tap,id=net0,...,vhost=on failed in net_init_tap_one(),
the followed up device_add virtio-net-pci,netdev=net0 will fail
too, prints:
TUNSETOFFLOAD ioctl() failed: Bad file descriptor TUNSETOFFLOAD
ioctl() failed: Bad file descriptor
On Thu, Mar 1, 2018 at 10:33 PM, Farhan Ali wrote:
> Hi,
>
> I have been noticing some segfaults for QEMU on s390x, and I have been
> hitting this issue quite reliably (at least once in 10 runs of a test case).
> The qemu version is 2.11.50, and I have systemd created
On Thu, Mar 01, 2018 at 04:01:38PM +, Daniel P. Berrangé wrote:
> On Thu, Mar 01, 2018 at 04:44:37PM +0800, Peter Xu wrote:
> > This patch allows the socket chardev async connection be setup with
> > non-default gcontext. We do it by postponing the setup to machine done,
> > since until then
On Thu, Mar 01, 2018 at 06:22:40PM +0100, Paolo Bonzini wrote:
> On 01/03/2018 09:44, Peter Xu wrote:
> > +/**
> > + * qio_channel_tls_handshake_full:
> > + * @ioc: the TLS channel object
> > + * @func: the callback to invoke when completed
> > + * @opaque: opaque data to pass to @func
> > + *
From: Suraj Jitindar Singh
The sxxm (speculative execution exploit mitigation) machine type is a
variant of the 2.12 machine type with workarounds for speculative
execution vulnerabilities enabled by default.
Signed-off-by: Suraj Jitindar Singh
On Thu, Mar 01, 2018 at 03:50:01PM +, Daniel P. Berrangé wrote:
> On Thu, Mar 01, 2018 at 04:44:34PM +0800, Peter Xu wrote:
> > qio_channel_tls_handshake_full() is introduced to allow the TLS to be
> > run on a non-default context. Still, no functional change.
> >
> > Signed-off-by: Peter Xu
From: Suraj Jitindar Singh
There are currently 2 implemented types of spapr-caps, boolean and
tristate. However there may be a need for caps which don't fit either of
these options. Add a custom capability type for which a list of custom
valid strings can be specified
From: Mark Cave-Ayland
Also switch macio_newworld_realize() over to use it rather than using the
pic_mem
memory region directly.
Now that both Old World and New World macio devices no longer make use of the
pic_mem memory region directly, we can remove it.
From: Suraj Jitindar Singh
Convert cap-sbbc (speculation barrier bounds checking) to a custom
spapr-cap type.
Signed-off-by: Suraj Jitindar Singh
[dwg: Removed trailing whitespace]
[dwg: Don't explicitly list "?"/help option, trust
From: Suraj Jitindar Singh
Convert cap-ibs (indirect branch speculation) to a custom spapr-cap
type.
All tristate caps have now been converted to custom spapr-caps, so
remove the remaining support for them.
Signed-off-by: Suraj Jitindar Singh
From: BALATON Zoltan
Add emulation of aCube Sam460ex board based on AMCC 460EX embedded SoC.
This is not a complete implementation yet with a lot of components
still missing but enough for the U-Boot firmware to start and to boot
a Linux kernel or AROS.
Signed-off-by:
From: Mark Cave-Ayland
Move the remaining comment into macio.c for reference, then remove the
macio_init() function and instantiate the macio devices for both Old World
and New World machines via qdev_init_nofail() directly.
Signed-off-by: Mark Cave-Ayland
From: Nikunj A Dadhania
Linux kernel commit 2a9d832cc9aae21ea827520fef635b6c49a06c6d
(of: Add bindings for chosen node, stdout-path) deprecated chosen property
"linux,stdout-path" and "stdout".
Introduce the new property "stdout-path" and continue supporting the older
From: Mark Cave-Ayland
This is to faciliate access to OpenPICState when wiring up the PIC to the macio
controller.
Signed-off-by: Mark Cave-Ayland
Reviewed-by: David Gibson
Signed-off-by: David Gibson
From: BALATON Zoltan
This is the PCIX controller found in newer 440 core SoCs e.g. the
AMMC 460EX. The device tree refers to this as plb-pcix compared to
the plb-pci controller in older 440 SoCs.
Signed-off-by: BALATON Zoltan
[dwg: Remove hwaddr from
From: Mark Cave-Ayland
Now that the ESCC device is instantiated directly via qdev, move it to within
the macio device and wire up the IRQs and memory regions using the sysbus API.
This enables to remove the now-obsolete escc_mem parameter to the macio_init()
From: Mark Cave-Ayland
Signed-off-by: Mark Cave-Ayland
Reviewed-by: David Gibson
Reviewed-by: Philippe Mathieu-Daudé
Signed-off-by: David Gibson
---
From: Mark Cave-Ayland
Signed-off-by: Mark Cave-Ayland
Signed-off-by: David Gibson
---
hw/intc/heathrow_pic.c | 126 +++--
include/hw/intc/heathrow_pic.h |
From: Suraj Jitindar Singh
Check the character and character_mask field when setting
cap_ppc_safe_indirect_branch based on the hypervisor response
to KVM_PPC_GET_CPU_CHAR. Previously the mask field wasn't checked
which was incorrect.
Fixes: 8acc2ae5 (target/ppc/kvm:
From: Greg Kurz
VSMT must be set in order to compute VCPU ids. This means that the
following functions must not be called before spapr_set_vsmt_mode()
was called:
- spapr_vcpu_id()
- spapr_is_thread0_in_vcore()
- xics_max_server_number()
We had a recent regression where the
From: Mark Cave-Ayland
Also switch macio_oldworld_realize() over to use it rather than using the
pic_mem
memory region directly.
Signed-off-by: Mark Cave-Ayland
Reviewed-by: David Gibson
Signed-off-by:
From: Suraj Jitindar Singh
Convert cap-cfpc (cache flush on privilege change) to a custom spapr-cap
type.
Signed-off-by: Suraj Jitindar Singh
[dwg: Don't explicitly list "?"/help option, trusting convention]
[dwg: Strip no-longer-necessary
From: Mark Cave-Ayland
This removes the last of the functionality from macio_init() in preparation
for its subsequent removal.
Signed-off-by: Mark Cave-Ayland
Reviewed-by: David Gibson
Signed-off-by:
From: Mark Cave-Ayland
Signed-off-by: Mark Cave-Ayland
Signed-off-by: David Gibson
---
hw/intc/heathrow_pic.c | 32 +++-
hw/intc/trace-events | 5 +
2 files changed,
From: Mark Cave-Ayland
This enables the device to be made available during the setup of the Old World
machine. In order to pass back the previous set of IRQs we temporarily introduce
a new pic_irqs parameter until it can be removed.
An additional benefit of this
From: Mark Cave-Ayland
This is needed before the next patch because the target-dependent kvm stub
uses the existing kvm_openpic_connect_vcpu() declaration, making it impossible
to move the device-specific declarations into the same file without breaking
From: Mark Cave-Ayland
The current recommendation is to embed subdevices directly within their
container
device, so do this for the DBDMA device.
Signed-off-by: Mark Cave-Ayland
Signed-off-by: David Gibson
From: Greg Kurz
Some older machine types create more ICPs than needed. We hence
need to register up to xics_max_server_number() dummy ICPs to
accomodate the migration of these machine types.
Recent VSMT rework changed xics_max_server_number() to return
DIV_ROUND_UP(max_cpus
The following changes since commit 0dc8ae5e8e693737dfe65ba02d0c6eccb58a9c67:
Merge remote-tracking branch 'remotes/cohuck/tags/s390x-20180301-v2' into
staging (2018-03-01 17:08:16 +)
are available in the Git repository at:
git://github.com/dgibson/qemu.git tags/ppc-for-2.12-20180302
From: Greg Kurz
Commit 5d0fb1508e2d "spapr: consolidate the VCPU id numbering logic
in a single place" introduced a helper to detect thread0 of a virtual
core based on its VCPU id. This is used to create CPU core nodes in
the DT, but it is broken in TCG.
$ qemu-system-ppc64
On Thu, Mar 01, 2018 at 03:48:44PM +, Daniel P. Berrangé wrote:
> On Thu, Mar 01, 2018 at 04:44:33PM +0800, Peter Xu wrote:
> > We have worked on qio_task_run_in_thread() already. Further, let
> > qio_channel_socket_connect_async() pass that context to it.
> >
> > Signed-off-by: Peter Xu
On Thu, Mar 01, 2018 at 06:12:57PM +0100, Paolo Bonzini wrote:
> On 01/03/2018 09:44, Peter Xu wrote:
> > Originally we were storing the GSources tag IDs. That'll be not enough
> > if we are going to support non-default gcontext for QIO code. Switch to
> > GSources without changing anything
On Thu, Mar 01, 2018 at 06:16:53PM +0100, Paolo Bonzini wrote:
> On 01/03/2018 16:46, Daniel P. Berrangé wrote:
> > On Thu, Mar 01, 2018 at 04:44:31PM +0800, Peter Xu wrote:
> >> It was originally created by qio_channel_add_watch() so it's always
> >> assigning the task to main context. Now we
On Thu, Mar 1, 2018 at 4:20 PM, Alistair Francis
wrote:
> The cortex A53 TRM specifices that bits 24 and 25 of the L2CTLR register
> specify the number of cores present and not the number of processors. We
> have correctly been reporting the number of cores, so just
On Thu, Mar 01, 2018 at 03:43:31PM +, Daniel P. Berrangé wrote:
> On Thu, Mar 01, 2018 at 04:44:30PM +0800, Peter Xu wrote:
> > TCP chardevs can be using QIO network listeners working in the
> > background when in listening mode. However the network listeners are
> > always running in main
On Thu, Mar 01, 2018 at 06:12:57PM +0100, Paolo Bonzini wrote:
> On 01/03/2018 09:44, Peter Xu wrote:
> > Originally we were storing the GSources tag IDs. That'll be not enough
> > if we are going to support non-default gcontext for QIO code. Switch to
> > GSources without changing anything
On Fri, Mar 02, 2018 at 12:09:39AM +1100, Alexey Kardashevskiy wrote:
> There is already 'device-list-properties' which does most of the job,
> however it does not handle everything returned by qom-list-types such
> as machines as they inherit directly from TYPE_OBJECT and not TYPE_DEVICE.
> It
On Fri, Mar 02, 2018 at 11:58:52AM +0800, Peter Xu wrote:
> On Thu, Mar 01, 2018 at 10:47:17AM +, Daniel P. Berrangé wrote:
> > On Thu, Mar 01, 2018 at 04:44:28PM +0800, Peter Xu wrote:
> > > Three functions are abstracted from the old code:
> > >
> > > - qio_net_listener_source_add(): create
On Thu, Mar 01, 2018 at 10:47:17AM +, Daniel P. Berrangé wrote:
> On Thu, Mar 01, 2018 at 04:44:28PM +0800, Peter Xu wrote:
> > Three functions are abstracted from the old code:
> >
> > - qio_net_listener_source_add(): create one source for listener
> > - qio_net_listener_sources_clear():
Hi,
This series failed docker-build@min-glib build test. Please find the testing
commands and
their output below. If you have Docker installed, you can probably reproduce it
locally.
Type: series
Message-id: cover.1519961667.git.jba...@akamai.com
Subject: [Qemu-devel] [PATCH 0/4] virtio-net:
Hi,
This series failed docker-quick@centos6 build test. Please find the testing
commands and
their output below. If you have Docker installed, you can probably reproduce it
locally.
Type: series
Message-id: cover.1519961667.git.jba...@akamai.com
Subject: [Qemu-devel] [PATCH 0/4] virtio-net:
Hi,
This series failed docker-mingw@fedora build test. Please find the testing
commands and
their output below. If you have Docker installed, you can probably reproduce it
locally.
Type: series
Message-id: cover.1519961667.git.jba...@akamai.com
Subject: [Qemu-devel] [PATCH 0/4] virtio-net:
On Thu, Mar 01, 2018 at 04:03:44PM +, Daniel P. Berrangé wrote:
> On Thu, Mar 01, 2018 at 04:44:27PM +0800, Peter Xu wrote:
> > The old incoming migration is running in main thread and default
> > gcontext. With the new qio_channel_add_watch_full() we can now let it
> > run in the thread's
On Thu, Mar 01, 2018 at 06:13:06PM +0100, Paolo Bonzini wrote:
> On 01/03/2018 09:44, Peter Xu wrote:
> > + * qio_channel_add_watch_source:
> > + * @ioc: the channel object
> > + * @condition: the I/O condition to monitor
> > + * @func: callback to invoke when the source becomes ready
> > + *
In prepartion for using some of the high order feature bits, make sure that
virtio-net uses 64-bit values everywhere.
Signed-off-by: Jason Baron
Cc: "Michael S. Tsirkin"
Cc: Jason Wang
Cc: virtio-...@lists.oasis-open.org
---
Although linkspeed and duplex can be set in a linux guest via 'ethtool -s',
this requires custom ethtool commands for virtio-net by default.
Introduce a new feature flag, VIRTIO_NET_F_SPEED_DUPLEX, which allows
the hypervisor to export a linkspeed and duplex setting. The user can
subsequently
Make use of duplex definitions from net/eth.h.
Signed-off-by: Jason Baron
Cc: "Michael S. Tsirkin"
Cc: Jason Wang
Cc: Jiri Pirko
Cc: virtio-...@lists.oasis-open.org
---
hw/net/rocker/rocker_fp.c | 6 +-
1 file
On Thu, Mar 01, 2018 at 06:39:34PM +0100, Paolo Bonzini wrote:
> On 01/03/2018 09:44, Peter Xu wrote:
> > Need to free TCPChardevTelnetInit when session established.
> >
> > Since at it, switch to use G_SOURCE_* macros.
> >
> > Reviewed-by: Daniel P. Berrange
> >
Pull in definitions for SPEED_UNKNOWN, DUPLEX_UNKNOWN, DUPLEX_HALF,
and DUPLEX_FULL.
Signed-off-by: Jason Baron
Cc: "Michael S. Tsirkin"
Cc: Jason Wang
Cc: virtio-...@lists.oasis-open.org
---
include/net/eth.h | 7 +++
1 file
Hi,
Linux can now read linkspeed and duplex settings as set by the
hypervisor:
faa9b39 virtio_net: propagate linkspeed/duplex settings from the hypervisor
This series thus adds qemu support. Michael Tsirkin requested that we pull
in the linkspeed/duplex defines from include/linux/ethtool.h. I
On Thu, Mar 01, 2018 at 03:32:19PM +, Dr. David Alan Gilbert wrote:
> * Peter Xu (pet...@redhat.com) wrote:
> > On Wed, Feb 28, 2018 at 04:49:37PM +, Dr. David Alan Gilbert (git)
> > wrote:
> > > From: "Dr. David Alan Gilbert"
> > >
> > > This fixes a couple of
> -Original Message-
> From: Michael S. Tsirkin [mailto:m...@redhat.com]
> Sent: Friday, March 02, 2018 12:17 AM
> To: Zhoujian (jay)
> Cc: qemu-devel@nongnu.org; imamm...@redhat.com; Huangweidong (C)
> ; wangxin (U)
On Thu, Feb 15, 2018 at 10:36:00AM +0100, David Engraf wrote:
> This patch fixes an incorrect behavior when the -kernel argument has been
> specified without -bios. In this case the kernel was loaded twice. At address
> 32M as a raw image and afterwards by load_elf/load_uimage at the
>
On 03/01/2018 10:27 AM, Alberto Garcia wrote:
'qemu-img check' cannot detect if a snapshot's L1 table is corrupted.
This patch checks the table's offset and size and reports corruption
if the values are not valid.
This patch doesn't add code to fix that corruption yet, only to detect
and report
On Fri, Mar 02, 2018 at 12:09:38AM +1100, Alexey Kardashevskiy wrote:
> ObjectPropertyInfo is more generic and only missing @description.
> This adds a description to ObjectPropertyInfo and removes
> DevicePropertyInfo so the resulting ObjectPropertyInfo can be used
> elsewhere.
>
>
On 03/01/2018 10:27 AM, Alberto Garcia wrote:
This function copies a snapshot's L1 table into the active one without
validating it first.
We now have a function to take care of this, so let's use it.
Signed-off-by: Alberto Garcia
---
block/qcow2-snapshot.c | 6 ++
On 03/01/2018 10:27 AM, Alberto Garcia wrote:
This function deletes a snapshot from disk, removing its entry from
the snapshot table, freeing its L1 table and decreasing the refcounts
of all clusters.
The L1 table offset and size are however not validated. If we use
invalid values in this
On Thu, Mar 01, 2018 at 11:35:50AM +0530, Nikunj A Dadhania wrote:
> Linux kernel commit 2a9d832cc9aae21ea827520fef635b6c49a06c6d
> (of: Add bindings for chosen node, stdout-path) deprecated chosen property
> "linux,stdout-path" and "stdout".
>
> Introduce the new property "stdout-path" and
On 03/01/2018 10:36 AM, Paolo Bonzini wrote:
They will be used to avoid recursively taking s->lock during
bdrv_open or bdrv_check.
Signed-off-by: Paolo Bonzini
Message-Id: <1516279431-30424-7-git-send-email-pbonz...@redhat.com>
Signed-off-by: Paolo Bonzini
From: Markus Armbruster
Our qapi-schema.json is composed of modules connected by include
directives, but the generated code is monolithic all the same: one
qapi-types.h with all the types, one qapi-visit.h with all the
visitors, and so forth. These monolithic headers get
From: Markus Armbruster
In my "build everything" tree, a change to the types in
qapi-schema.json triggers a recompile of about 4800 out of 5100
objects.
The previous commit split up qmp-commands.h, qmp-event.h, qmp-visit.h,
qapi-types.h. Each of these headers still includes
Commit f0df84c6 added watchdog-set-action in the main qapi-schema.json,
but it belongs better in qapi/run-state.json alongside the definition
of WatchdogAction. The command was written prior to commit 0e201d34
creating the latter file, even though it was merged after.
Signed-off-by: Eric Blake
The following changes since commit 0dc8ae5e8e693737dfe65ba02d0c6eccb58a9c67:
Merge remote-tracking branch 'remotes/cohuck/tags/s390x-20180301-v2' into
staging (2018-03-01 17:08:16 +)
are available in the Git repository at:
git://repo.or.cz/qemu/ericb.git tags/pull-qapi-2018-03-01-v2
On 03/01/2018 10:27 AM, Alberto Garcia wrote:
The inactive-l2 overlap check iterates uses the L1 tables from all
snapshots, but it does not validate them first.
We now have a function to take care of this, so let's use it.
Signed-off-by: Alberto Garcia
---
Hi,
This series failed docker-quick@centos6 build test. Please find the testing
commands and
their output below. If you have Docker installed, you can probably reproduce it
locally.
Type: series
Message-id: 1519922735-29054-1-git-send-email-...@redhat.com
Subject: [Qemu-devel] [PULL 00/13]
On Thu, 03/01 14:54, Stefan Hajnoczi wrote:
> On Thu, Mar 01, 2018 at 09:15:17AM +0800, Fam Zheng wrote:
> > On Wed, 02/28 18:19, Stefan Hajnoczi wrote:
> > > v2:
> > > * Tackle the .ioeventfd_stop() vs vq handler race by removing the
> > > ioeventfd
> > >from a BH in the IOThread [Fam]
> >
On Thu, Mar 1, 2018 at 10:45 PM, Peter Maydell wrote:
> On 1 March 2018 at 13:00, wrote:
>> Hi,
>>
>> This series seems to have some coding style problems. See output below for
>> more information:
>>
>> Type: series
>> Message-id:
Hi,
This series seems to have some coding style problems. See output below for
more information:
Type: series
Message-id: 20180228203243.1413-1-mark.cave-ayl...@ilande.co.uk
Subject: [Qemu-devel] [PATCHv3 00/12] macio: remove legacy macio_init() function
=== TEST SCRIPT BEGIN ===
#!/bin/bash
The cortex A53 TRM specifices that bits 24 and 25 of the L2CTLR register
specify the number of cores present and not the number of processors. We
have correctly been reporting the number of cores, so just fix the
comment to match the TRM.
Signed-off-by: Alistair Francis
On 03/01/2018 10:27 AM, Alberto Garcia wrote:
This function iterates over all snapshots of a qcow2 file in order to
expand all zero clusters, but it does not validate the snapshots' L1
tables first.
We now have a function to take care of this, so let's use it.
We can also take the opportunity
On 03/01/2018 10:27 AM, Alberto Garcia wrote:
This function checks that the size of a snapshot's L1 table is not too
large, but it doesn't validate the offset.
We now have a function to take care of this, so let's use it.
Signed-off-by: Alberto Garcia
---
On 03/01/2018 10:36 AM, Paolo Bonzini wrote:
From: Stefan Hajnoczi
qcow2_create2() calls qemu_co_mutex_lock(). Only a coroutine_fn may
call another coroutine_fn. In fact, qcow2_create2 is always called from
coroutine context.
Rename the function to add the "co" moniker
The only non-trivial modification is the use of DISAS_TOO_MANY
in the same way is used by the generic translation loop.
Reviewed-by: David Hildenbrand
Reviewed-by: Richard Henderson
Cc: David Hildenbrand
Cc: Cornelia Huck
Notes:
- Did not convert {num,max}_insns and is_jmp, since the corresponding
code will go away in the next patch.
- Avoided a checkpatch error in use_exit_tb.
- As suggested by David, (1) Drop ctx.pc and use
ctx.base.pc_next instead, and (2) Rename ctx.next_pc to
ctx.pc_tmp and add a
Note: I looked into dropping dc->do_debug. However, I don't see
an easy way to do it given that TOO_MANY is also valid
when we just translate more than max_insns. Thus, the check
for do_debug in "case DISAS_PC_CC_UPDATED" would still need
additional state to know whether or not we came from
Notes:
- Changed the num_insns test in insn_start to check for
dc->base.num_insns > 1, since when tb_start is first
called in a TB, base.num_insns is already set to 1.
- Removed DISAS_NEXT from the switch in tb_stop; use
DISAS_TOO_MANY instead.
- Added an assert_not_reached on tb_stop for
Notes:
- DISAS_TOO_MANY replaces the former "break" in the translation loop.
However, care must be taken not to overwrite a previous condition
in is_jmp; that's why in translate_insn we first check is_jmp and
return if it's != DISAS_NEXT.
- Added an assert in translate_insn, before exiting
While at it, use int for both num_insns and max_insns to make
sure we have same-type comparisons.
Reviewed-by: Richard Henderson
Signed-off-by: Emilio G. Cota
---
include/exec/translator.h | 8
accel/tcg/translator.c | 21
Notes:
- pc and npc are left unmodified, since they can point to out-of-TB
jump targets.
- Got rid of last_pc in gen_intermediate_code(), using base.pc_next
instead. Only update pc_next (1) on a breakpoint (so that tb->size
includes the insn), and (2) after reading the current instruction
Cc: Aurelien Jarno
Cc: Yongbok Kim
Signed-off-by: Emilio G. Cota
---
target/mips/translate.c | 346
1 file changed, 175 insertions(+), 171 deletions(-)
diff --git
This was fairly straightforward since it had already been converted
to DisasContextBase; just had to add TARGET_TOO_MANY to the switch
in tb_stop.
Reviewed-by: Richard Henderson
Cc: Aurelien Jarno
Signed-off-by: Emilio G. Cota
Cc: Aurelien Jarno
Cc: Yongbok Kim
Signed-off-by: Emilio G. Cota
---
target/mips/translate.c | 186 +++-
1 file changed, 91 insertions(+), 95 deletions(-)
diff --git
Notes:
- Moved the cross-page check from the end of translate_insn to
init_disas_context.
Cc: Mark Cave-Ayland
Cc: Artyom Tarasenko
Signed-off-by: Emilio G. Cota
---
target/sparc/translate.c | 174
While at it, set is_jmp to DISAS_NORETURN when generating
an exception.
Cc: Stafford Horne
Signed-off-by: Emilio G. Cota
---
target/openrisc/translate.c | 93 ++---
1 file changed, 46 insertions(+), 47 deletions(-)
diff
No changes to the logic here; this is just to make the diff
that follows easier to read.
While at it, remove the unnecessary 'struct' in
'struct TranslationBlock'.
Note that checkpatch complains with a false positive:
ERROR: space prohibited after that '&' (ctx:WxW)
#75: FILE:
[ What is this all about? See this message:
http://lists.gnu.org/archive/html/qemu-devel/2018-02/msg04785.html ]
Merged the separate patchsets I sent in the last couple of weeks into
one set. This will be easier to merge since it will avoid potential
merge conflicts due to adding max_insns to
Reviewed-by: Richard Henderson
Cc: Mark Cave-Ayland
Cc: Artyom Tarasenko
Signed-off-by: Emilio G. Cota
---
target/sparc/translate.c | 27 +++
1 file changed, 15
From: Vladimir Sementsov-Ogievskiy
1. NBD_REP_ERR_INVALID is not only about length, so, make message more
general
2. hex format is not very good: it's hard to read something like
"option a (set meta context)", so switch to dec.
Signed-off-by: Vladimir
1 - 100 of 527 matches
Mail list logo