qemu-devel.nongnu.org archive mirror
 help / color / mirror / Atom feed
From: Richard Henderson <richard.henderson@linaro.org>
To: "Philippe Mathieu-Daudé" <philmd@linaro.org>, qemu-devel@nongnu.org
Cc: "Pierrick Bouvier" <pierrick.bouvier@linaro.org>,
	"Alex Bennée" <alex.bennee@linaro.org>
Subject: Re: [PULL 04/23] include/exec: Split out exec/cpu-interrupt.h
Date: Thu, 3 Apr 2025 06:43:43 -0700	[thread overview]
Message-ID: <3debe9d2-ca02-4a62-87a3-0b54f28c05b4@linaro.org> (raw)
In-Reply-To: <aae2c395-4649-4281-bf08-4104917aa3c6@linaro.org>

On 4/2/25 13:13, Philippe Mathieu-Daudé wrote:
> On 2/4/25 20:46, Richard Henderson wrote:
>> On 4/2/25 03:17, Philippe Mathieu-Daudé wrote:
>>> Hi Richard,
>>>
>>> On 8/3/25 23:58, Richard Henderson wrote:
>>>> Some of these bits are actually common to all cpus; while the
>>>> reset have common reservations for target-specific usage.
>>>> While generic code cannot know what the target-specific usage is,
>>>> common code can know what to do with the bits, e.g. single-step.
>>>>
>>>> Tested-by: Philippe Mathieu-Daudé <philmd@linaro.org>
>>>> Reviewed-by: Philippe Mathieu-Daudé <philmd@linaro.org>
>>>> Reviewed-by: Pierrick Bouvier <pierrick.bouvier@linaro.org>
>>>> Signed-off-by: Richard Henderson <richard.henderson@linaro.org>
>>>> ---
>>>>   include/exec/cpu-all.h       | 53 +--------------------------
>>>>   include/exec/cpu-interrupt.h | 70 ++++++++++++++++++++++++++++++++++++
>>>>   include/exec/poison.h        | 13 -------
>>>>   3 files changed, 71 insertions(+), 65 deletions(-)
>>>>   create mode 100644 include/exec/cpu-interrupt.h
>>>
>>>
>>>> diff --git a/include/exec/poison.h b/include/exec/poison.h
>>>> index 35721366d7..8ed04b3108 100644
>>>> --- a/include/exec/poison.h
>>>> +++ b/include/exec/poison.h
>>>> @@ -46,19 +46,6 @@
>>>>   #pragma GCC poison TARGET_PHYS_ADDR_SPACE_BITS
>>>> -#pragma GCC poison CPU_INTERRUPT_HARD
>>>> -#pragma GCC poison CPU_INTERRUPT_EXITTB
>>>> -#pragma GCC poison CPU_INTERRUPT_HALT
>>>> -#pragma GCC poison CPU_INTERRUPT_DEBUG
>>>> -#pragma GCC poison CPU_INTERRUPT_TGT_EXT_0
>>>> -#pragma GCC poison CPU_INTERRUPT_TGT_EXT_1
>>>> -#pragma GCC poison CPU_INTERRUPT_TGT_EXT_2
>>>> -#pragma GCC poison CPU_INTERRUPT_TGT_EXT_3
>>>> -#pragma GCC poison CPU_INTERRUPT_TGT_EXT_4
>>>> -#pragma GCC poison CPU_INTERRUPT_TGT_INT_0
>>>> -#pragma GCC poison CPU_INTERRUPT_TGT_INT_1
>>>> -#pragma GCC poison CPU_INTERRUPT_TGT_INT_2
>>>
>>> If I understood correctly yesterday's discussion, these
>>> definitions are internal to target/ and shouldn't be used
>>> by hw/ at all. If this is right, then we need to keep them
>>> poisoned for hw/ code.
>>
>> No.  They are used by generic code to mask CPU_INTERRUPT_TGT_EXT_* during single- 
>> stepping.  We don't know what they mean, but they're all external interrupts.
> 
> I'm wondering about CPU_INTERRUPT_HARD ... CPU_INTERRUPT_DEBUG.

HARD is probably akin to TGT_EXT_n, but EXITTB, HALT and DEBUG are completely generic.


r~


  reply	other threads:[~2025-04-03 13:45 UTC|newest]

Thread overview: 32+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2025-03-08 22:58 [PULL 00/23] tcg patch queue Richard Henderson
2025-03-08 22:58 ` [PULL 01/23] linux-user/main: Allow setting tb-size Richard Henderson
2025-03-08 22:58 ` [PATCH v2] linux-user/riscv: Fix handling of cpu mask in riscv_hwprobe syscall Richard Henderson
2025-03-10 23:05   ` Alistair Francis
2025-03-10 23:10   ` Alistair Francis
2025-03-08 22:58 ` [PULL 02/23] accel/tcg: Restrict CPU_TLB_DYN_*_BITS definitions to accel/tcg/ Richard Henderson
2025-03-08 22:58 ` [PULL 03/23] include/exec: Move TARGET_PAGE_{SIZE, MASK, BITS} to target_page.h Richard Henderson
2025-03-08 22:58 ` [PULL 04/23] include/exec: Split out exec/cpu-interrupt.h Richard Henderson
2025-04-02 10:17   ` Philippe Mathieu-Daudé
2025-04-02 18:46     ` Richard Henderson
2025-04-02 20:13       ` Philippe Mathieu-Daudé
2025-04-03 13:43         ` Richard Henderson [this message]
2025-03-08 22:58 ` [PULL 05/23] accel/tcg: Compile watchpoint.c once Richard Henderson
2025-03-08 22:58 ` [PULL 06/23] exec: Declare tlb_reset_dirty*() in 'exec/cputlb.h' Richard Henderson
2025-03-08 22:58 ` [PULL 07/23] exec: Declare tlb_set_page_full() " Richard Henderson
2025-03-08 22:58 ` [PULL 08/23] exec: Declare tlb_set_page_with_attrs() " Richard Henderson
2025-03-08 22:58 ` [PULL 09/23] exec: Declare tlb_set_page() " Richard Henderson
2025-03-08 22:58 ` [PULL 10/23] exec: Declare tlb_hit*() " Richard Henderson
2025-03-08 22:58 ` [PULL 11/23] exec: Declare tlb_flush*() " Richard Henderson
2025-03-08 22:58 ` [PULL 12/23] system: Build watchpoint.c once Richard Henderson
2025-03-08 22:58 ` [PULL 13/23] accel/tcg: Build tcg-accel-ops.c once Richard Henderson
2025-03-08 22:58 ` [PULL 14/23] accel/tcg: Build tcg-accel-ops-icount.c once Richard Henderson
2025-03-08 22:58 ` [PULL 15/23] accel/tcg: Build tcg-accel-ops-rr.c once Richard Henderson
2025-03-08 22:58 ` [PULL 16/23] accel/tcg: Build tcg-accel-ops-mttcg.c once Richard Henderson
2025-03-08 22:58 ` [PULL 17/23] accel/tcg: Restrict GETPC_ADJ to 'tb-internal.h' Richard Henderson
2025-03-08 22:58 ` [PULL 18/23] accel/tcg: Split out getpc.h Richard Henderson
2025-03-08 22:58 ` [PULL 19/23] qemu/atomic: Rename atomic128-cas.h headers using .h.inc suffix Richard Henderson
2025-03-08 22:58 ` [PULL 20/23] qemu/atomic: Rename atomic128-ldst.h " Richard Henderson
2025-03-08 22:59 ` [PULL 21/23] qemu/atomic128: Include missing 'qemu/atomic.h' header Richard Henderson
2025-03-08 22:59 ` [PULL 22/23] accel/tcg: Build tcg-runtime.c once Richard Henderson
2025-03-08 22:59 ` [PULL 23/23] accel/tcg: Build tcg-runtime-gvec.c once Richard Henderson
2025-03-09 10:25 ` [PULL 00/23] tcg patch queue Stefan Hajnoczi

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=3debe9d2-ca02-4a62-87a3-0b54f28c05b4@linaro.org \
    --to=richard.henderson@linaro.org \
    --cc=alex.bennee@linaro.org \
    --cc=philmd@linaro.org \
    --cc=pierrick.bouvier@linaro.org \
    --cc=qemu-devel@nongnu.org \
    /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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).