All of lore.kernel.org
 help / color / mirror / Atom feed
From: Claudio Fontana <cfontana@suse.de>
To: "Richard Henderson" <richard.henderson@linaro.org>,
	"Paolo Bonzini" <pbonzini@redhat.com>,
	"Thomas Huth" <thuth@redhat.com>,
	"Stefano Stabellini" <sstabellini@kernel.org>,
	"Wenchao Wang" <wenchao.wang@intel.com>,
	"Roman Bolshakov" <r.bolshakov@yadro.com>,
	"Sunil Muthuswamy" <sunilmut@microsoft.com>,
	"Philippe Mathieu-Daudé" <philmd@redhat.com>
Cc: "Laurent Vivier" <lvivier@redhat.com>,
	"Peter Maydell" <peter.maydell@linaro.org>,
	"Eduardo Habkost" <ehabkost@redhat.com>,
	"Paul Durrant" <paul@xen.org>,
	"Alex Bennée" <alex.bennee@linaro.org>,
	"Jason Wang" <jasowang@redhat.com>,
	"Marcelo Tosatti" <mtosatti@redhat.com>,
	qemu-devel@nongnu.org, "Peter Xu" <peterx@redhat.com>,
	"Dario Faggioli" <dfaggioli@suse.com>,
	"Cameron Esfahani" <dirty@apple.com>,
	haxm-team@intel.com, "Colin Xu" <colin.xu@intel.com>,
	"Anthony Perard" <anthony.perard@citrix.com>,
	"Bruce Rogers" <brogers@suse.com>,
	"Olaf Hering" <ohering@suse.de>,
	"Emilio G . Cota" <cota@braap.org>
Subject: Re: [PATCH v11 18/25] cpu: Move synchronize_from_tb() to tcg_ops
Date: Fri, 11 Dec 2020 18:11:15 +0100	[thread overview]
Message-ID: <c827290b-ca3a-0fd8-67b3-6b0c53f911e3@suse.de> (raw)
In-Reply-To: <cca08e8d-9235-46da-3610-8acafbc2de14@suse.de>

On 12/11/20 6:10 PM, Claudio Fontana wrote:
> On 12/11/20 6:05 PM, Richard Henderson wrote:
>> On 12/11/20 2:31 AM, Claudio Fontana wrote:
>>> From: Eduardo Habkost <ehabkost@redhat.com>
>>>
>>> Signed-off-by: Eduardo Habkost <ehabkost@redhat.com>
>>> [claudio: wrapped in CONFIG_TCG]
>>> Signed-off-by: Claudio Fontana <cfontana@suse.de>
>>> Reviewed-by: Philippe Mathieu-Daudé <philmd@redhat.com>
>>> Reviewed-by: Alex Bennée <alex.bennee@linaro.org>
>>> ---
>>>  include/hw/core/cpu.h         |  8 --------
>>>  include/hw/core/tcg-cpu-ops.h | 12 ++++++++++++
>>>  accel/tcg/cpu-exec.c          |  4 ++--
>>>  target/arm/cpu.c              |  4 +++-
>>>  target/avr/cpu.c              |  2 +-
>>>  target/hppa/cpu.c             |  2 +-
>>>  target/i386/tcg/tcg-cpu.c     |  2 +-
>>>  target/microblaze/cpu.c       |  2 +-
>>>  target/mips/cpu.c             |  4 +++-
>>>  target/riscv/cpu.c            |  2 +-
>>>  target/rx/cpu.c               |  2 +-
>>>  target/sh4/cpu.c              |  2 +-
>>>  target/sparc/cpu.c            |  2 +-
>>>  target/tricore/cpu.c          |  2 +-
>>>  14 files changed, 29 insertions(+), 21 deletions(-)
>>>
>>> diff --git a/include/hw/core/cpu.h b/include/hw/core/cpu.h
>>> index ea648d52ad..83007d262c 100644
>>> --- a/include/hw/core/cpu.h
>>> +++ b/include/hw/core/cpu.h
>>> @@ -110,13 +110,6 @@ struct TranslationBlock;
>>>   *       If the target behaviour here is anything other than "set
>>>   *       the PC register to the value passed in" then the target must
>>>   *       also implement the synchronize_from_tb hook.
>>> - * @synchronize_from_tb: Callback for synchronizing state from a TCG
>>> - *       #TranslationBlock. This is called when we abandon execution
>>> - *       of a TB before starting it, and must set all parts of the CPU
>>> - *       state which the previous TB in the chain may not have updated.
>>> - *       This always includes at least the program counter; some targets
>>> - *       will need to do more. If this hook is not implemented then the
>>> - *       default is to call @set_pc(tb->pc).
>>>   * @tlb_fill: Callback for handling a softmmu tlb miss or user-only
>>>   *       address fault.  For system mode, if the access is valid, call
>>>   *       tlb_set_page and return true; if the access is invalid, and
>>> @@ -193,7 +186,6 @@ struct CPUClass {
>>>      void (*get_memory_mapping)(CPUState *cpu, MemoryMappingList *list,
>>>                                 Error **errp);
>>>      void (*set_pc)(CPUState *cpu, vaddr value);
>>> -    void (*synchronize_from_tb)(CPUState *cpu, struct TranslationBlock *tb);
>>>      bool (*tlb_fill)(CPUState *cpu, vaddr address, int size,
>>>                       MMUAccessType access_type, int mmu_idx,
>>>                       bool probe, uintptr_t retaddr);
>>> diff --git a/include/hw/core/tcg-cpu-ops.h b/include/hw/core/tcg-cpu-ops.h
>>> index 4475ef0996..e1d50b3c8b 100644
>>> --- a/include/hw/core/tcg-cpu-ops.h
>>> +++ b/include/hw/core/tcg-cpu-ops.h
>>> @@ -10,6 +10,8 @@
>>>  #ifndef TCG_CPU_OPS_H
>>>  #define TCG_CPU_OPS_H
>>>  
>>> +#include "hw/core/cpu.h"
>>
>> This include is circular.
> 
> Yes, it's protected though, it was asked that way.

I mean, during the review. I personally would have preferred to avoid these as only cpu.h is including this for now.
> 
>>
>> Are you sure that splitting out hw/core/tcg-cpu-ops.h from hw/core/cpu.h in
>> patch 15 is even useful?
> 
> it avoids a huge #ifdef CONFIG_TCG
> 
> 
>>
>> Otherwise the actual code change looks ok.
>>
>>
>> r~
>>
> 



  reply	other threads:[~2020-12-11 17:31 UTC|newest]

Thread overview: 69+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2020-12-11  8:31 [PATCH v11 00/25] i386 cleanup PART 1 Claudio Fontana
2020-12-11  8:31 ` [PATCH v11 01/25] accel/tcg: split CpusAccel into three TCG variants Claudio Fontana
2020-12-11  8:31 ` [PATCH v11 02/25] accel/tcg: split tcg_start_vcpu_thread Claudio Fontana
2020-12-11  8:31 ` [PATCH v11 03/25] accel/tcg: rename tcg-cpus functions to match module name Claudio Fontana
2020-12-11  8:31 ` [PATCH v11 04/25] i386: move kvm accel files into kvm/ Claudio Fontana
2020-12-11 16:08   ` Richard Henderson
2020-12-11  8:31 ` [PATCH v11 05/25] i386: move whpx accel files into whpx/ Claudio Fontana
2020-12-11 16:09   ` Richard Henderson
2020-12-11 20:41   ` Eduardo Habkost
2020-12-12  9:24     ` Claudio Fontana
2020-12-11  8:31 ` [PATCH v11 06/25] i386: move hax accel files into hax/ Claudio Fontana
2020-12-11 16:10   ` Richard Henderson
2020-12-11  8:31 ` [PATCH v11 07/25] i386: hvf: remove stale MAINTAINERS entry for old hvf stubs Claudio Fontana
2020-12-11  8:31 ` [PATCH v11 08/25] i386: move TCG accel files into tcg/ Claudio Fontana
2020-12-11 16:10   ` Richard Henderson
2020-12-11  8:31 ` [PATCH v11 09/25] i386: move cpu dump out of helper.c into cpu-dump.c Claudio Fontana
2020-12-11 16:13   ` Richard Henderson
2020-12-11 17:21     ` Claudio Fontana
2020-12-11  8:31 ` [PATCH v11 10/25] i386: move TCG cpu class initialization out of helper.c Claudio Fontana
2020-12-11 16:44   ` Richard Henderson
2020-12-11 17:31     ` Claudio Fontana
2020-12-11  8:31 ` [PATCH v11 11/25] tcg: cpu_exec_{enter,exit} helpers Claudio Fontana
2020-12-11 16:45   ` Richard Henderson
2020-12-11  8:31 ` [PATCH v11 12/25] tcg: make CPUClass.cpu_exec_* optional Claudio Fontana
2020-12-11  8:31 ` [PATCH v11 13/25] tcg: Make CPUClass.debug_excp_handler optional Claudio Fontana
2020-12-11  8:31 ` [PATCH v11 14/25] cpu: Remove unnecessary noop methods Claudio Fontana
2020-12-11 11:05   ` Philippe Mathieu-Daudé
2020-12-11  8:31 ` [PATCH v11 15/25] cpu: Introduce TCGCpuOperations struct Claudio Fontana
2020-12-11 16:55   ` Richard Henderson
2020-12-11 16:57     ` Richard Henderson
2020-12-11  8:31 ` [PATCH v11 16/25] target/riscv: remove CONFIG_TCG, as it is always TCG Claudio Fontana
2020-12-11 16:56   ` Richard Henderson
2020-12-11 17:19     ` Claudio Fontana
2020-12-11  8:31 ` [PATCH v11 17/25] accel/tcg: split TCG-only code from cpu_exec_realizefn Claudio Fontana
2020-12-11 16:58   ` Richard Henderson
2020-12-11  8:31 ` [PATCH v11 18/25] cpu: Move synchronize_from_tb() to tcg_ops Claudio Fontana
2020-12-11 17:05   ` Richard Henderson
2020-12-11 17:10     ` Claudio Fontana
2020-12-11 17:11       ` Claudio Fontana [this message]
2020-12-11 17:28       ` Richard Henderson
2020-12-11 17:47         ` Claudio Fontana
2020-12-11 18:04           ` Richard Henderson
2020-12-11 18:15           ` Claudio Fontana
2020-12-11 18:22             ` Richard Henderson
2020-12-11 18:26               ` Philippe Mathieu-Daudé
2020-12-11 18:51                 ` Claudio Fontana
2020-12-11 18:54                   ` Philippe Mathieu-Daudé
2020-12-11 20:02                   ` Eduardo Habkost
2020-12-12 10:00                     ` Claudio Fontana
2020-12-12 11:41                       ` Claudio Fontana
2020-12-14 21:04                       ` Eduardo Habkost
2020-12-11  8:31 ` [PATCH v11 19/25] cpu: Move cpu_exec_* " Claudio Fontana
2020-12-11 17:30   ` Richard Henderson
2020-12-11  8:31 ` [PATCH v11 20/25] cpu: Move tlb_fill " Claudio Fontana
2020-12-11 17:42   ` Richard Henderson
2020-12-11  8:31 ` [PATCH v11 21/25] cpu: Move debug_excp_handler " Claudio Fontana
2020-12-11 17:44   ` Richard Henderson
2020-12-11  8:31 ` [PATCH v11 22/25] target/arm: do not use cc->do_interrupt for KVM directly Claudio Fontana
2020-12-11 17:44   ` Richard Henderson
2020-12-11  8:31 ` [PATCH v11 23/25] cpu: move cc->do_interrupt to tcg_ops Claudio Fontana
2020-12-11 17:46   ` Richard Henderson
2020-12-11  8:31 ` [PATCH v11 24/25] cpu: move cc->transaction_failed " Claudio Fontana
2020-12-11 11:00   ` Philippe Mathieu-Daudé
2020-12-11 17:50   ` Richard Henderson
2020-12-11  8:31 ` [PATCH v11 25/25] cpu: move do_unaligned_access " Claudio Fontana
2020-12-11 11:01   ` Philippe Mathieu-Daudé
2020-12-11 17:58   ` Richard Henderson
2020-12-11  8:57 ` [PATCH v11 00/25] i386 cleanup PART 1 no-reply
2020-12-11 11:07 ` Philippe Mathieu-Daudé

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=c827290b-ca3a-0fd8-67b3-6b0c53f911e3@suse.de \
    --to=cfontana@suse.de \
    --cc=alex.bennee@linaro.org \
    --cc=anthony.perard@citrix.com \
    --cc=brogers@suse.com \
    --cc=colin.xu@intel.com \
    --cc=cota@braap.org \
    --cc=dfaggioli@suse.com \
    --cc=dirty@apple.com \
    --cc=ehabkost@redhat.com \
    --cc=haxm-team@intel.com \
    --cc=jasowang@redhat.com \
    --cc=lvivier@redhat.com \
    --cc=mtosatti@redhat.com \
    --cc=ohering@suse.de \
    --cc=paul@xen.org \
    --cc=pbonzini@redhat.com \
    --cc=peter.maydell@linaro.org \
    --cc=peterx@redhat.com \
    --cc=philmd@redhat.com \
    --cc=qemu-devel@nongnu.org \
    --cc=r.bolshakov@yadro.com \
    --cc=richard.henderson@linaro.org \
    --cc=sstabellini@kernel.org \
    --cc=sunilmut@microsoft.com \
    --cc=thuth@redhat.com \
    --cc=wenchao.wang@intel.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.