qemu-devel.nongnu.org archive mirror
 help / color / mirror / Atom feed
From: Richard Henderson <richard.henderson@linaro.org>
To: "Bibo Mao" <maobibo@loongson.cn>,
	"Song Gao" <gaosong@loongson.cn>,
	"Philippe Mathieu-Daudé" <philmd@linaro.org>
Cc: Jiaxun Yang <jiaxun.yang@flygoat.com>, qemu-devel@nongnu.org
Subject: Re: [PATCH v3 01/12] target/loongarch: Use mmu idx bitmap method when flush TLB
Date: Wed, 3 Sep 2025 15:02:53 +0200	[thread overview]
Message-ID: <ad903d54-b4ee-47e6-bbc7-fe660409d374@linaro.org> (raw)
In-Reply-To: <20250903084827.3085911-2-maobibo@loongson.cn>

On 9/3/25 10:48, Bibo Mao wrote:
> With API tlb_flush_range_by_mmuidx(), bitmap of mmu idx should be used
> rather than itself. Also MMU_KERNEL_IDX and MMU_USER_IDX are used rather
> than current running mmu idx when flush TLB.
> 
> Signed-off-by: Bibo Mao <maobibo@loongson.cn>
> ---
>   target/loongarch/tcg/tlb_helper.c | 3 +--
>   1 file changed, 1 insertion(+), 2 deletions(-)
> 
> diff --git a/target/loongarch/tcg/tlb_helper.c b/target/loongarch/tcg/tlb_helper.c
> index 9365860c8c..d58f447555 100644
> --- a/target/loongarch/tcg/tlb_helper.c
> +++ b/target/loongarch/tcg/tlb_helper.c
> @@ -101,8 +101,7 @@ static void invalidate_tlb_entry(CPULoongArchState *env, int index)
>       target_ulong addr, mask, pagesize;
>       uint8_t tlb_ps;
>       LoongArchTLB *tlb = &env->tlb[index];
> -
> -    int mmu_idx = cpu_mmu_index(env_cpu(env), false);
> +    int mmu_idx = BIT(MMU_KERNEL_IDX) | BIT(MMU_USER_IDX);
>       uint8_t tlb_v0 = FIELD_EX64(tlb->tlb_entry0, TLBENTRY, V);
>       uint8_t tlb_v1 = FIELD_EX64(tlb->tlb_entry1, TLBENTRY, V);
>       uint64_t tlb_vppn = FIELD_EX64(tlb->tlb_misc, TLB_MISC, VPPN);

Better to rename the variable too, since this isn't an mmu_idx.
We have used "idxmap" elsewhere for this purpose.

Otherwise,
Reviewed-by: Richard Henderson <richard.henderson@linaro.org>


r~


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

Thread overview: 29+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2025-09-03  8:48 [PATCH v3 00/12] target/loongarch: Small enhancement about TLB flush Bibo Mao
2025-09-03  8:48 ` [PATCH v3 01/12] target/loongarch: Use mmu idx bitmap method when flush TLB Bibo Mao
2025-09-03 13:02   ` Richard Henderson [this message]
2025-09-04  7:23     ` Bibo Mao
2025-09-03  8:48 ` [PATCH v3 02/12] target/loongarch: Add parameter tlb pointer with fill_tlb_entry Bibo Mao
2025-09-03  8:48 ` [PATCH v3 03/12] target/loongarch: Reduce TLB flush with helper_tlbwr Bibo Mao
2025-09-03 13:07   ` Richard Henderson
2025-09-04  7:28     ` Bibo Mao
2025-09-03  8:48 ` [PATCH v3 04/12] target/loongarch: Update TLB index selection method Bibo Mao
2025-09-03 13:09   ` Richard Henderson
2025-09-03  8:48 ` [PATCH v3 05/12] target/loongarch: Fix page size set issue with CSR_STLBPS Bibo Mao
2025-09-03  8:48 ` [PATCH v3 06/12] target/loongarch: Add tlb search callback in loongarch_tlb_search() Bibo Mao
2025-09-03 13:14   ` Richard Henderson
2025-09-04  7:46     ` Bibo Mao
2025-09-03  8:48 ` [PATCH v3 07/12] target/loongarch: Add common API loongarch_tlb_search_cb() Bibo Mao
2025-09-03 13:16   ` Richard Henderson
2025-09-03  8:48 ` [PATCH v3 08/12] target/loongarch: Use loongarch_tlb_search_cb in helper_invtlb_page_asid_or_g Bibo Mao
2025-09-03 13:20   ` Richard Henderson
2025-09-04  9:17     ` Bibo Mao
2025-09-03  8:48 ` [PATCH v3 09/12] target/loongarch: Use loongarch_tlb_search_cb in helper_invtlb_page_asid Bibo Mao
2025-09-03 13:21   ` Richard Henderson
2025-09-04  9:52     ` Bibo Mao
2025-09-03  8:48 ` [PATCH v3 10/12] target/loongarch: Invalid tlb entry in invalidate_tlb() Bibo Mao
2025-09-03 13:00   ` Richard Henderson
2025-09-04 10:04     ` Bibo Mao
2025-09-03  8:53 ` [PATCH v3 11/12] target/loongarch: Only flush one TLB entry in helper_invtlb_page_asid_or_g() Bibo Mao
2025-09-03 12:56   ` Richard Henderson
2025-09-03  8:54 ` [PATCH v3 12/12] target/loongarch: Only flush one TLB entry in helper_invtlb_page_asid() Bibo Mao
2025-09-03 12:56   ` Richard Henderson

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=ad903d54-b4ee-47e6-bbc7-fe660409d374@linaro.org \
    --to=richard.henderson@linaro.org \
    --cc=gaosong@loongson.cn \
    --cc=jiaxun.yang@flygoat.com \
    --cc=maobibo@loongson.cn \
    --cc=philmd@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).