public inbox for linux-riscv@lists.infradead.org
 help / color / mirror / Atom feed
From: "Miquel Sabaté Solà" <mikisabate@gmail.com>
To: linux-riscv@lists.infradead.org
Cc: linux-kernel@vger.kernel.org,  pjw@kernel.org,
	 palmer@dabbelt.com, alex@ghiti.fr,  wangyuli@uniontech.com
Subject: Re: [PATCH] riscv: kgdb: Ensure that BUFMAX > NUMREGBYTES
Date: Mon, 29 Sep 2025 10:08:11 +0200	[thread overview]
Message-ID: <68da3e6d.050a0220.c13dc.0f9a@mx.google.com> (raw)
In-Reply-To: <20250915143252.154955-1-mikisabate@gmail.com> ("Miquel Sabaté	Solà"'s message of "Mon, 15 Sep 2025 16:32:52 +0200")


[-- Attachment #1.1: Type: text/plain, Size: 2060 bytes --]

Miquel Sabaté Solà @ 2025-09-15 16:32 +02:

> The current value of BUFMAX is similar as in other architectures, but as
> per documentation on KGDB (see
> 'Documentation/process/debugging/kgdb.rst'), BUFMAX has to be larger
> than NUMREGBYTES.
>
> Some NUMREGBYTES architectures (e.g. powerpc or hexagon) actually define
> BUFMAX in relation to NUMREGBYTES, and thus this condition is always
> guaranteed. Since 2048 is a value that is generally accepted on all
> architectures, and that is larger than the current value of NUMREGBYTES,
> we can keep this value in arch/riscv, but we can at least add an
> 'static_assert' as an extra measure just in case NUMREGBYTES changes in
> the future for some unforseen reason.
>
> Signed-off-by: Miquel Sabaté Solà <mikisabate@gmail.com>
> ---
>  arch/riscv/include/asm/kgdb.h | 9 +++++++--
>  1 file changed, 7 insertions(+), 2 deletions(-)
>
> diff --git a/arch/riscv/include/asm/kgdb.h b/arch/riscv/include/asm/kgdb.h
> index cc11c4544cff..66ff46e434fa 100644
> --- a/arch/riscv/include/asm/kgdb.h
> +++ b/arch/riscv/include/asm/kgdb.h
> @@ -3,14 +3,18 @@
>  #ifndef __ASM_KGDB_H_
>  #define __ASM_KGDB_H_
>
> +#include <linux/build_bug.h>
> +
>  #ifdef __KERNEL__
>
>  #define GDB_SIZEOF_REG sizeof(unsigned long)
>
> -#define DBG_MAX_REG_NUM (36)
> -#define NUMREGBYTES ((DBG_MAX_REG_NUM) * GDB_SIZEOF_REG)
> +#define DBG_MAX_REG_NUM 36
> +#define NUMREGBYTES (DBG_MAX_REG_NUM * GDB_SIZEOF_REG)
>  #define CACHE_FLUSH_IS_SAFE     1
>  #define BUFMAX                  2048
> +static_assert(BUFMAX > NUMREGBYTES,
> +	      "As per KGDB documentation, BUFMAX must be larger than NUMREGBYTES");
>  #ifdef CONFIG_RISCV_ISA_C
>  #define BREAK_INSTR_SIZE	2
>  #else
> @@ -97,6 +101,7 @@ extern unsigned long kgdb_compiled_break;
>  #define DBG_REG_STATUS_OFF 33
>  #define DBG_REG_BADADDR_OFF 34
>  #define DBG_REG_CAUSE_OFF 35
> +/* NOTE: increase DBG_MAX_REG_NUM if you add more values here. */
>
>  extern const char riscv_gdb_stub_feature[64];

Gentle ping :)

[-- Attachment #1.2: signature.asc --]
[-- Type: application/pgp-signature, Size: 901 bytes --]

[-- Attachment #2: Type: text/plain, Size: 161 bytes --]

_______________________________________________
linux-riscv mailing list
linux-riscv@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-riscv

  reply	other threads:[~2025-09-29  8:08 UTC|newest]

Thread overview: 3+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2025-09-15 14:32 [PATCH] riscv: kgdb: Ensure that BUFMAX > NUMREGBYTES Miquel Sabaté Solà
2025-09-29  8:08 ` Miquel Sabaté Solà [this message]
2025-10-08 17:28   ` Paul Walmsley

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=68da3e6d.050a0220.c13dc.0f9a@mx.google.com \
    --to=mikisabate@gmail.com \
    --cc=alex@ghiti.fr \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-riscv@lists.infradead.org \
    --cc=palmer@dabbelt.com \
    --cc=pjw@kernel.org \
    --cc=wangyuli@uniontech.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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox