From: Ian Rogers <irogers@google.com>
To: Peter Zijlstra <peterz@infradead.org>,
Ingo Molnar <mingo@redhat.com>,
Arnaldo Carvalho de Melo <acme@kernel.org>,
Namhyung Kim <namhyung@kernel.org>,
Mark Rutland <mark.rutland@arm.com>,
Alexander Shishkin <alexander.shishkin@linux.intel.com>,
Jiri Olsa <jolsa@kernel.org>, Ian Rogers <irogers@google.com>,
Adrian Hunter <adrian.hunter@intel.com>,
Kan Liang <kan.liang@linux.intel.com>,
John Garry <john.g.garry@oracle.com>,
Will Deacon <will@kernel.org>,
James Clark <james.clark@linaro.org>,
Mike Leach <mike.leach@linaro.org>, Leo Yan <leo.yan@linux.dev>,
Guo Ren <guoren@kernel.org>,
Paul Walmsley <paul.walmsley@sifive.com>,
Palmer Dabbelt <palmer@dabbelt.com>,
Albert Ou <aou@eecs.berkeley.edu>,
Nick Terrell <terrelln@fb.com>,
"Masami Hiramatsu (Google)" <mhiramat@kernel.org>,
Changbin Du <changbin.du@huawei.com>,
Guilherme Amadio <amadio@gentoo.org>,
Yang Jihong <yangjihong@bytedance.com>,
Aditya Gupta <adityag@linux.ibm.com>,
Athira Rajeev <atrajeev@linux.vnet.ibm.com>,
Masahiro Yamada <masahiroy@kernel.org>,
Bibo Mao <maobibo@loongson.cn>,
Huacai Chen <chenhuacai@kernel.org>,
Kajol Jain <kjain@linux.ibm.com>,
Atish Patra <atishp@rivosinc.com>,
Shenlin Liang <liangshenlin@eswincomputing.com>,
Anup Patel <anup@brainfault.org>,
Oliver Upton <oliver.upton@linux.dev>,
"Steinar H. Gunderson" <sesse@google.com>,
"Dr. David Alan Gilbert" <linux@treblig.org>,
Chen Pei <cp0613@linux.alibaba.com>,
Dima Kogan <dima@secretsauce.net>,
Przemek Kitszel <przemyslaw.kitszel@intel.com>,
"David S. Miller" <davem@davemloft.net>,
Alexander Lobakin <aleksander.lobakin@intel.com>,
linux-kernel@vger.kernel.org, linux-perf-users@vger.kernel.org,
linux-arm-kernel@lists.infradead.org,
linux-csky@vger.kernel.org, linux-riscv@lists.infradead.org
Subject: [PATCH v3 06/20] perf dwarf-regs: Pass ELF flags to get_dwarf_regstr
Date: Wed, 16 Oct 2024 17:25:06 -0700 [thread overview]
Message-ID: <20241017002520.59124-7-irogers@google.com> (raw)
In-Reply-To: <20241017002520.59124-1-irogers@google.com>
Pass a flags value as architectures like csky need the flags to
determine the ABI variant.
Signed-off-by: Ian Rogers <irogers@google.com>
---
tools/perf/util/dwarf-regs.c | 3 ++-
tools/perf/util/include/dwarf-regs.h | 11 ++++++-----
tools/perf/util/probe-finder.c | 13 +++++++------
tools/perf/util/probe-finder.h | 3 ++-
4 files changed, 17 insertions(+), 13 deletions(-)
diff --git a/tools/perf/util/dwarf-regs.c b/tools/perf/util/dwarf-regs.c
index 1321387f6948..86b3ef638fbb 100644
--- a/tools/perf/util/dwarf-regs.c
+++ b/tools/perf/util/dwarf-regs.c
@@ -29,7 +29,8 @@
#define __get_dwarf_regstr(tbl, n) (((n) < ARRAY_SIZE(tbl)) ? (tbl)[(n)] : NULL)
/* Return architecture dependent register string (for kprobe-tracer) */
-const char *get_dwarf_regstr(unsigned int n, unsigned int machine)
+const char *get_dwarf_regstr(unsigned int n, unsigned int machine,
+ unsigned int flags __maybe_unused)
{
switch (machine) {
case EM_NONE: /* Generic arch - use host arch */
diff --git a/tools/perf/util/include/dwarf-regs.h b/tools/perf/util/include/dwarf-regs.h
index ee0a734564c7..925525405e2d 100644
--- a/tools/perf/util/include/dwarf-regs.h
+++ b/tools/perf/util/include/dwarf-regs.h
@@ -80,12 +80,13 @@
#ifdef HAVE_LIBDW_SUPPORT
const char *get_arch_regstr(unsigned int n);
-/*
- * get_dwarf_regstr - Returns ftrace register string from DWARF regnum
- * n: DWARF register number
- * machine: ELF machine signature (EM_*)
+/**
+ * get_dwarf_regstr() - Returns ftrace register string from DWARF regnum.
+ * @n: DWARF register number.
+ * @machine: ELF machine signature (EM_*).
+ * @flags: ELF flags for things like ABI differences.
*/
-const char *get_dwarf_regstr(unsigned int n, unsigned int machine);
+const char *get_dwarf_regstr(unsigned int n, unsigned int machine, unsigned int flags);
int get_arch_regnum(const char *name);
/*
diff --git a/tools/perf/util/probe-finder.c b/tools/perf/util/probe-finder.c
index 8ea15a2a4397..8a932cc2f63d 100644
--- a/tools/perf/util/probe-finder.c
+++ b/tools/perf/util/probe-finder.c
@@ -56,7 +56,7 @@ static struct probe_trace_arg_ref *alloc_trace_arg_ref(long offs)
*/
static int convert_variable_location(Dwarf_Die *vr_die, Dwarf_Addr addr,
Dwarf_Op *fb_ops, Dwarf_Die *sp_die,
- unsigned int machine,
+ const struct probe_finder *pf,
struct probe_trace_arg *tvar)
{
Dwarf_Attribute attr;
@@ -166,7 +166,7 @@ static int convert_variable_location(Dwarf_Die *vr_die, Dwarf_Addr addr,
if (!tvar)
return ret2;
- regs = get_dwarf_regstr(regn, machine);
+ regs = get_dwarf_regstr(regn, pf->e_machine, pf->e_flags);
if (!regs) {
/* This should be a bug in DWARF or this tool */
pr_warning("Mapping for the register number %u "
@@ -451,7 +451,7 @@ static int convert_variable(Dwarf_Die *vr_die, struct probe_finder *pf)
dwarf_diename(vr_die));
ret = convert_variable_location(vr_die, pf->addr, pf->fb_ops,
- &pf->sp_die, pf->machine, pf->tvar);
+ &pf->sp_die, pf, pf->tvar);
if (ret == -ENOENT && pf->skip_empty_arg)
/* This can be found in other place. skip it */
return 0;
@@ -1134,7 +1134,8 @@ static int debuginfo__find_probes(struct debuginfo *dbg,
if (gelf_getehdr(elf, &ehdr) == NULL)
return -EINVAL;
- pf->machine = ehdr.e_machine;
+ pf->e_machine = ehdr.e_machine;
+ pf->e_flags = ehdr.e_flags;
do {
GElf_Shdr shdr;
@@ -1171,7 +1172,7 @@ static int copy_variables_cb(Dwarf_Die *die_mem, void *data)
(tag == DW_TAG_variable && vf->vars)) {
if (convert_variable_location(die_mem, vf->pf->addr,
vf->pf->fb_ops, &pf->sp_die,
- pf->machine, NULL) == 0) {
+ pf, /*tvar=*/NULL) == 0) {
vf->args[vf->nargs].var = (char *)dwarf_diename(die_mem);
if (vf->args[vf->nargs].var == NULL) {
vf->ret = -ENOMEM;
@@ -1402,7 +1403,7 @@ static int collect_variables_cb(Dwarf_Die *die_mem, void *data)
tag == DW_TAG_variable) {
ret = convert_variable_location(die_mem, af->pf.addr,
af->pf.fb_ops, &af->pf.sp_die,
- af->pf.machine, NULL);
+ &af->pf, /*tvar=*/NULL);
if (ret == 0 || ret == -ERANGE) {
int ret2;
bool externs = !af->child;
diff --git a/tools/perf/util/probe-finder.h b/tools/perf/util/probe-finder.h
index dfcf8cdd9e8d..be7b46ea2460 100644
--- a/tools/perf/util/probe-finder.h
+++ b/tools/perf/util/probe-finder.h
@@ -68,7 +68,8 @@ struct probe_finder {
/* Call Frame Information from .debug_frame. Not owned. */
Dwarf_CFI *cfi_dbg;
Dwarf_Op *fb_ops; /* Frame base attribute */
- unsigned int machine; /* Target machine arch */
+ unsigned int e_machine; /* ELF target machine arch */
+ unsigned int e_flags; /* ELF target machine flags */
struct perf_probe_arg *pvar; /* Current target variable */
struct probe_trace_arg *tvar; /* Current result variable */
bool skip_empty_arg; /* Skip non-exist args */
--
2.47.0.105.g07ac214952-goog
WARNING: multiple messages have this Message-ID (diff)
From: Ian Rogers <irogers@google.com>
To: Peter Zijlstra <peterz@infradead.org>,
Ingo Molnar <mingo@redhat.com>,
Arnaldo Carvalho de Melo <acme@kernel.org>,
Namhyung Kim <namhyung@kernel.org>,
Mark Rutland <mark.rutland@arm.com>,
Alexander Shishkin <alexander.shishkin@linux.intel.com>,
Jiri Olsa <jolsa@kernel.org>, Ian Rogers <irogers@google.com>,
Adrian Hunter <adrian.hunter@intel.com>,
Kan Liang <kan.liang@linux.intel.com>,
John Garry <john.g.garry@oracle.com>,
Will Deacon <will@kernel.org>,
James Clark <james.clark@linaro.org>,
Mike Leach <mike.leach@linaro.org>, Leo Yan <leo.yan@linux.dev>,
Guo Ren <guoren@kernel.org>,
Paul Walmsley <paul.walmsley@sifive.com>,
Palmer Dabbelt <palmer@dabbelt.com>,
Albert Ou <aou@eecs.berkeley.edu>,
Nick Terrell <terrelln@fb.com>,
"Masami Hiramatsu (Google)" <mhiramat@kernel.org>,
Changbin Du <changbin.du@huawei.com>,
Guilherme Amadio <amadio@gentoo.org>,
Yang Jihong <yangjihong@bytedance.com>,
Aditya Gupta <adityag@linux.ibm.com>,
Athira Rajeev <atrajeev@linux.vnet.ibm.com>,
Masahiro Yamada <masahiroy@kernel.org>,
Bibo Mao <maobibo@loongson.cn>,
Huacai Chen <chenhuacai@kernel.org>,
Kajol Jain <kjain@linux.ibm.com>,
Atish Patra <atishp@rivosinc.com>,
Shenlin Liang <liangshenlin@eswincomputing.com>,
Anup Patel <anup@brainfault.org>,
Oliver Upton <oliver.upton@linux.dev>,
"Steinar H. Gunderson" <sesse@google.com>,
"Dr. David Alan Gilbert" <linux@treblig.org>,
Chen Pei <cp0613@linux.alibaba.com>,
Dima Kogan <dima@secretsauce.net>,
Przemek Kitszel <przemyslaw.kitszel@intel.com>,
"David S. Miller" <davem@davemloft.net>,
Alexander Lobakin <aleksander.lobakin@intel.com>,
linux-kernel@vger.kernel.org, linux-perf-users@vger.kernel.org,
linux-arm-kernel@lists.infradead.org,
linux-csky@vger.kernel.org, linux-riscv@lists.infradead.org
Subject: [PATCH v3 06/20] perf dwarf-regs: Pass ELF flags to get_dwarf_regstr
Date: Wed, 16 Oct 2024 17:25:06 -0700 [thread overview]
Message-ID: <20241017002520.59124-7-irogers@google.com> (raw)
In-Reply-To: <20241017002520.59124-1-irogers@google.com>
Pass a flags value as architectures like csky need the flags to
determine the ABI variant.
Signed-off-by: Ian Rogers <irogers@google.com>
---
tools/perf/util/dwarf-regs.c | 3 ++-
tools/perf/util/include/dwarf-regs.h | 11 ++++++-----
tools/perf/util/probe-finder.c | 13 +++++++------
tools/perf/util/probe-finder.h | 3 ++-
4 files changed, 17 insertions(+), 13 deletions(-)
diff --git a/tools/perf/util/dwarf-regs.c b/tools/perf/util/dwarf-regs.c
index 1321387f6948..86b3ef638fbb 100644
--- a/tools/perf/util/dwarf-regs.c
+++ b/tools/perf/util/dwarf-regs.c
@@ -29,7 +29,8 @@
#define __get_dwarf_regstr(tbl, n) (((n) < ARRAY_SIZE(tbl)) ? (tbl)[(n)] : NULL)
/* Return architecture dependent register string (for kprobe-tracer) */
-const char *get_dwarf_regstr(unsigned int n, unsigned int machine)
+const char *get_dwarf_regstr(unsigned int n, unsigned int machine,
+ unsigned int flags __maybe_unused)
{
switch (machine) {
case EM_NONE: /* Generic arch - use host arch */
diff --git a/tools/perf/util/include/dwarf-regs.h b/tools/perf/util/include/dwarf-regs.h
index ee0a734564c7..925525405e2d 100644
--- a/tools/perf/util/include/dwarf-regs.h
+++ b/tools/perf/util/include/dwarf-regs.h
@@ -80,12 +80,13 @@
#ifdef HAVE_LIBDW_SUPPORT
const char *get_arch_regstr(unsigned int n);
-/*
- * get_dwarf_regstr - Returns ftrace register string from DWARF regnum
- * n: DWARF register number
- * machine: ELF machine signature (EM_*)
+/**
+ * get_dwarf_regstr() - Returns ftrace register string from DWARF regnum.
+ * @n: DWARF register number.
+ * @machine: ELF machine signature (EM_*).
+ * @flags: ELF flags for things like ABI differences.
*/
-const char *get_dwarf_regstr(unsigned int n, unsigned int machine);
+const char *get_dwarf_regstr(unsigned int n, unsigned int machine, unsigned int flags);
int get_arch_regnum(const char *name);
/*
diff --git a/tools/perf/util/probe-finder.c b/tools/perf/util/probe-finder.c
index 8ea15a2a4397..8a932cc2f63d 100644
--- a/tools/perf/util/probe-finder.c
+++ b/tools/perf/util/probe-finder.c
@@ -56,7 +56,7 @@ static struct probe_trace_arg_ref *alloc_trace_arg_ref(long offs)
*/
static int convert_variable_location(Dwarf_Die *vr_die, Dwarf_Addr addr,
Dwarf_Op *fb_ops, Dwarf_Die *sp_die,
- unsigned int machine,
+ const struct probe_finder *pf,
struct probe_trace_arg *tvar)
{
Dwarf_Attribute attr;
@@ -166,7 +166,7 @@ static int convert_variable_location(Dwarf_Die *vr_die, Dwarf_Addr addr,
if (!tvar)
return ret2;
- regs = get_dwarf_regstr(regn, machine);
+ regs = get_dwarf_regstr(regn, pf->e_machine, pf->e_flags);
if (!regs) {
/* This should be a bug in DWARF or this tool */
pr_warning("Mapping for the register number %u "
@@ -451,7 +451,7 @@ static int convert_variable(Dwarf_Die *vr_die, struct probe_finder *pf)
dwarf_diename(vr_die));
ret = convert_variable_location(vr_die, pf->addr, pf->fb_ops,
- &pf->sp_die, pf->machine, pf->tvar);
+ &pf->sp_die, pf, pf->tvar);
if (ret == -ENOENT && pf->skip_empty_arg)
/* This can be found in other place. skip it */
return 0;
@@ -1134,7 +1134,8 @@ static int debuginfo__find_probes(struct debuginfo *dbg,
if (gelf_getehdr(elf, &ehdr) == NULL)
return -EINVAL;
- pf->machine = ehdr.e_machine;
+ pf->e_machine = ehdr.e_machine;
+ pf->e_flags = ehdr.e_flags;
do {
GElf_Shdr shdr;
@@ -1171,7 +1172,7 @@ static int copy_variables_cb(Dwarf_Die *die_mem, void *data)
(tag == DW_TAG_variable && vf->vars)) {
if (convert_variable_location(die_mem, vf->pf->addr,
vf->pf->fb_ops, &pf->sp_die,
- pf->machine, NULL) == 0) {
+ pf, /*tvar=*/NULL) == 0) {
vf->args[vf->nargs].var = (char *)dwarf_diename(die_mem);
if (vf->args[vf->nargs].var == NULL) {
vf->ret = -ENOMEM;
@@ -1402,7 +1403,7 @@ static int collect_variables_cb(Dwarf_Die *die_mem, void *data)
tag == DW_TAG_variable) {
ret = convert_variable_location(die_mem, af->pf.addr,
af->pf.fb_ops, &af->pf.sp_die,
- af->pf.machine, NULL);
+ &af->pf, /*tvar=*/NULL);
if (ret == 0 || ret == -ERANGE) {
int ret2;
bool externs = !af->child;
diff --git a/tools/perf/util/probe-finder.h b/tools/perf/util/probe-finder.h
index dfcf8cdd9e8d..be7b46ea2460 100644
--- a/tools/perf/util/probe-finder.h
+++ b/tools/perf/util/probe-finder.h
@@ -68,7 +68,8 @@ struct probe_finder {
/* Call Frame Information from .debug_frame. Not owned. */
Dwarf_CFI *cfi_dbg;
Dwarf_Op *fb_ops; /* Frame base attribute */
- unsigned int machine; /* Target machine arch */
+ unsigned int e_machine; /* ELF target machine arch */
+ unsigned int e_flags; /* ELF target machine flags */
struct perf_probe_arg *pvar; /* Current target variable */
struct probe_trace_arg *tvar; /* Current result variable */
bool skip_empty_arg; /* Skip non-exist args */
--
2.47.0.105.g07ac214952-goog
_______________________________________________
linux-riscv mailing list
linux-riscv@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-riscv
next prev parent reply other threads:[~2024-10-17 0:25 UTC|newest]
Thread overview: 62+ messages / expand[flat|nested] mbox.gz Atom feed top
2024-10-17 0:25 [PATCH v3 00/20] Remove PERF_HAVE_DWARF_REGS Ian Rogers
2024-10-17 0:25 ` Ian Rogers
2024-10-17 0:25 ` [PATCH v3 01/20] perf bpf-prologue: Remove unused file Ian Rogers
2024-10-17 0:25 ` Ian Rogers
2024-10-17 0:25 ` [PATCH v3 02/20] perf dwarf-regs: Remove PERF_HAVE_ARCH_REGS_QUERY_REGISTER_OFFSET Ian Rogers
2024-10-17 0:25 ` Ian Rogers
2024-10-17 0:25 ` [PATCH v3 03/20] perf dwarf-regs: Add EM_HOST and EF_HOST defines Ian Rogers
2024-10-17 0:25 ` Ian Rogers
2024-10-17 0:25 ` [PATCH v3 04/20] perf disasm: Add e_machine/e_flags to struct arch Ian Rogers
2024-10-17 0:25 ` Ian Rogers
2024-11-08 17:33 ` Namhyung Kim
2024-11-08 17:33 ` Namhyung Kim
2024-11-08 18:19 ` Ian Rogers
2024-11-08 18:19 ` Ian Rogers
2024-11-08 18:38 ` Namhyung Kim
2024-11-08 18:38 ` Namhyung Kim
2024-11-08 18:45 ` Ian Rogers
2024-11-08 18:45 ` Ian Rogers
2024-10-17 0:25 ` [PATCH v3 05/20] perf dwarf-regs: Pass accurate disassembly machine to get_dwarf_regnum Ian Rogers
2024-10-17 0:25 ` Ian Rogers
2024-10-17 0:25 ` Ian Rogers [this message]
2024-10-17 0:25 ` [PATCH v3 06/20] perf dwarf-regs: Pass ELF flags to get_dwarf_regstr Ian Rogers
2024-10-17 0:25 ` [PATCH v3 07/20] perf dwarf-regs: Move x86 dwarf-regs out of arch Ian Rogers
2024-10-17 0:25 ` Ian Rogers
2024-10-17 0:25 ` [PATCH v3 08/20] perf arm64: Remove dwarf-regs.c Ian Rogers
2024-10-17 0:25 ` Ian Rogers
2024-10-17 0:25 ` [PATCH v3 09/20] perf arm: " Ian Rogers
2024-10-17 0:25 ` Ian Rogers
2024-10-17 0:25 ` [PATCH v3 10/20] perf dwarf-regs: Move csky dwarf-regs out of arch Ian Rogers
2024-10-17 0:25 ` Ian Rogers
2024-11-08 20:03 ` Namhyung Kim
2024-11-08 20:03 ` Namhyung Kim
2024-11-08 23:08 ` Ian Rogers
2024-11-08 23:08 ` Ian Rogers
2024-10-17 0:25 ` [PATCH v3 11/20] perf loongarch: Remove dwarf-regs.c Ian Rogers
2024-10-17 0:25 ` Ian Rogers
2024-10-17 0:25 ` [PATCH v3 12/20] perf mips: " Ian Rogers
2024-10-17 0:25 ` Ian Rogers
2024-10-17 0:25 ` [PATCH v3 13/20] perf dwarf-regs: Move powerpc dwarf-regs out of arch Ian Rogers
2024-10-17 0:25 ` Ian Rogers
2024-10-17 0:25 ` [PATCH v3 14/20] perf riscv: Remove dwarf-regs.c and add dwarf-regs-table.h Ian Rogers
2024-10-17 0:25 ` Ian Rogers
2024-10-18 19:39 ` Palmer Dabbelt
2024-10-18 19:39 ` Palmer Dabbelt
2024-10-17 0:25 ` [PATCH v3 15/20] perf s390: Remove dwarf-regs.c Ian Rogers
2024-10-17 0:25 ` Ian Rogers
2024-10-17 0:25 ` [PATCH v3 16/20] perf sh: " Ian Rogers
2024-10-17 0:25 ` Ian Rogers
2024-10-17 0:25 ` [PATCH v3 17/20] perf sparc: " Ian Rogers
2024-10-17 0:25 ` Ian Rogers
2024-10-17 0:25 ` [PATCH v3 18/20] perf xtensa: " Ian Rogers
2024-10-17 0:25 ` Ian Rogers
2024-10-17 0:25 ` [PATCH v3 19/20] perf dwarf-regs: Remove get_arch_regstr code Ian Rogers
2024-10-17 0:25 ` Ian Rogers
2024-10-17 0:25 ` [PATCH v3 20/20] perf build: Remove PERF_HAVE_DWARF_REGS Ian Rogers
2024-10-17 0:25 ` Ian Rogers
2024-11-07 19:29 ` [PATCH v3 00/20] " Namhyung Kim
2024-11-07 19:29 ` Namhyung Kim
2024-11-08 0:00 ` Masami Hiramatsu
2024-11-08 0:00 ` Masami Hiramatsu
2024-11-08 18:33 ` Namhyung Kim
2024-11-08 18:33 ` Namhyung Kim
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=20241017002520.59124-7-irogers@google.com \
--to=irogers@google.com \
--cc=acme@kernel.org \
--cc=adityag@linux.ibm.com \
--cc=adrian.hunter@intel.com \
--cc=aleksander.lobakin@intel.com \
--cc=alexander.shishkin@linux.intel.com \
--cc=amadio@gentoo.org \
--cc=anup@brainfault.org \
--cc=aou@eecs.berkeley.edu \
--cc=atishp@rivosinc.com \
--cc=atrajeev@linux.vnet.ibm.com \
--cc=changbin.du@huawei.com \
--cc=chenhuacai@kernel.org \
--cc=cp0613@linux.alibaba.com \
--cc=davem@davemloft.net \
--cc=dima@secretsauce.net \
--cc=guoren@kernel.org \
--cc=james.clark@linaro.org \
--cc=john.g.garry@oracle.com \
--cc=jolsa@kernel.org \
--cc=kan.liang@linux.intel.com \
--cc=kjain@linux.ibm.com \
--cc=leo.yan@linux.dev \
--cc=liangshenlin@eswincomputing.com \
--cc=linux-arm-kernel@lists.infradead.org \
--cc=linux-csky@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-perf-users@vger.kernel.org \
--cc=linux-riscv@lists.infradead.org \
--cc=linux@treblig.org \
--cc=maobibo@loongson.cn \
--cc=mark.rutland@arm.com \
--cc=masahiroy@kernel.org \
--cc=mhiramat@kernel.org \
--cc=mike.leach@linaro.org \
--cc=mingo@redhat.com \
--cc=namhyung@kernel.org \
--cc=oliver.upton@linux.dev \
--cc=palmer@dabbelt.com \
--cc=paul.walmsley@sifive.com \
--cc=peterz@infradead.org \
--cc=przemyslaw.kitszel@intel.com \
--cc=sesse@google.com \
--cc=terrelln@fb.com \
--cc=will@kernel.org \
--cc=yangjihong@bytedance.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.