From: Arnaldo Carvalho de Melo <acme@kernel.org>
To: Andrii Nakryiko <andrii.nakryiko@gmail.com>
Cc: Arnaldo Carvalho de Melo <arnaldo.melo@gmail.com>,
Kui-Feng Lee <kuifeng@fb.com>,
dwarves@vger.kernel.org, Alexei Starovoitov <ast@kernel.org>,
Daniel Borkmann <daniel@iogearbox.net>,
Andrii Nakryiko <andrii@kernel.org>, bpf <bpf@vger.kernel.org>
Subject: Re: [PATCH dwarves v4 1/4] dwarf_loader: Receive per-thread data on worker threads.
Date: Wed, 9 Mar 2022 16:24:53 -0300 [thread overview]
Message-ID: <Yij/BSPgMl8/HEhg@kernel.org> (raw)
In-Reply-To: <CAEf4Bza8xB+yFb4qGPvM7YwvHCb1zQ8yosGbKj63vcRM7d9aLg@mail.gmail.com>
Em Tue, Mar 08, 2022 at 03:45:03PM -0800, Andrii Nakryiko escreveu:
> On Thu, Jan 27, 2022 at 11:22 AM Arnaldo Carvalho de Melo
> <arnaldo.melo@gmail.com> wrote:
> >
> > Em Wed, Jan 26, 2022 at 11:55:25AM -0800, Andrii Nakryiko escreveu:
> > > On Wed, Jan 26, 2022 at 11:20 AM Kui-Feng Lee <kuifeng@fb.com> wrote:
> > > >
> > > > Add arguments to steal and thread_exit callbacks of conf_load to
> > > > receive per-thread data.
> > > >
> > > > Signed-off-by: Kui-Feng Lee <kuifeng@fb.com>
> > > > ---
> > >
> > > Please carry over acks you got on previous revisions, unless you did
> > > some drastic changes to already acked patches.
> >
> > Yes, please do so.
> >
> > I'll collect them this time, no need to resend.
> >
>
> Hey, Arnaldo!
>
> Any idea when these patches will make it into master branch? I see
> they are in tmp.master right now.
I did some minor fixups to the cset comment and to the code in the
'pahole --compile' new feature at the head of it and pushed all up,
please check.
- Arnaldo
> > - Arnaldo
> >
> > > Acked-by: Andrii Nakryiko <andrii@kernel.org>
> > >
> > > > btf_loader.c | 2 +-
> > > > ctf_loader.c | 2 +-
> > > > dwarf_loader.c | 4 ++--
> > > > dwarves.h | 5 +++--
> > > > pahole.c | 3 ++-
> > > > pdwtags.c | 3 ++-
> > > > pfunct.c | 4 +++-
> > > > 7 files changed, 14 insertions(+), 9 deletions(-)
> > > >
> > > > diff --git a/btf_loader.c b/btf_loader.c
> > > > index 7a5b16ff393e..b61cadd55127 100644
> > > > --- a/btf_loader.c
> > > > +++ b/btf_loader.c
> > > > @@ -624,7 +624,7 @@ static int cus__load_btf(struct cus *cus, struct conf_load *conf, const char *fi
> > > > * The app stole this cu, possibly deleting it,
> > > > * so forget about it
> > > > */
> > > > - if (conf && conf->steal && conf->steal(cu, conf))
> > > > + if (conf && conf->steal && conf->steal(cu, conf, NULL))
> > > > return 0;
> > > >
> > > > cus__add(cus, cu);
> > > > diff --git a/ctf_loader.c b/ctf_loader.c
> > > > index 7c34739afdce..de6d4dbfce97 100644
> > > > --- a/ctf_loader.c
> > > > +++ b/ctf_loader.c
> > > > @@ -722,7 +722,7 @@ int ctf__load_file(struct cus *cus, struct conf_load *conf,
> > > > * The app stole this cu, possibly deleting it,
> > > > * so forget about it
> > > > */
> > > > - if (conf && conf->steal && conf->steal(cu, conf))
> > > > + if (conf && conf->steal && conf->steal(cu, conf, NULL))
> > > > return 0;
> > > >
> > > > cus__add(cus, cu);
> > > > diff --git a/dwarf_loader.c b/dwarf_loader.c
> > > > index e30b03c1c541..bf9ea3765419 100644
> > > > --- a/dwarf_loader.c
> > > > +++ b/dwarf_loader.c
> > > > @@ -2686,7 +2686,7 @@ static int cu__finalize(struct cu *cu, struct conf_load *conf)
> > > > {
> > > > cu__for_all_tags(cu, class_member__cache_byte_size, conf);
> > > > if (conf && conf->steal) {
> > > > - return conf->steal(cu, conf);
> > > > + return conf->steal(cu, conf, NULL);
> > > > }
> > > > return LSK__KEEPIT;
> > > > }
> > > > @@ -2930,7 +2930,7 @@ static void *dwarf_cus__process_cu_thread(void *arg)
> > > > goto out_abort;
> > > > }
> > > >
> > > > - if (dcus->conf->thread_exit && dcus->conf->thread_exit() != 0)
> > > > + if (dcus->conf->thread_exit && dcus->conf->thread_exit(dcus->conf, NULL) != 0)
> > > > goto out_abort;
> > > >
> > > > return (void *)DWARF_CB_OK;
> > > > diff --git a/dwarves.h b/dwarves.h
> > > > index 52d162d67456..9a8e4de8843a 100644
> > > > --- a/dwarves.h
> > > > +++ b/dwarves.h
> > > > @@ -48,8 +48,9 @@ struct conf_fprintf;
> > > > */
> > > > struct conf_load {
> > > > enum load_steal_kind (*steal)(struct cu *cu,
> > > > - struct conf_load *conf);
> > > > - int (*thread_exit)(void);
> > > > + struct conf_load *conf,
> > > > + void *thr_data);
> > > > + int (*thread_exit)(struct conf_load *conf, void *thr_data);
> > > > void *cookie;
> > > > char *format_path;
> > > > int nr_jobs;
> > > > diff --git a/pahole.c b/pahole.c
> > > > index f3a51cb2fe74..f3eeaaca4cdf 100644
> > > > --- a/pahole.c
> > > > +++ b/pahole.c
> > > > @@ -2799,7 +2799,8 @@ out:
> > > > static struct type_instance *header;
> > > >
> > > > static enum load_steal_kind pahole_stealer(struct cu *cu,
> > > > - struct conf_load *conf_load)
> > > > + struct conf_load *conf_load,
> > > > + void *thr_data)
> > > > {
> > > > int ret = LSK__DELETE;
> > > >
> > > > diff --git a/pdwtags.c b/pdwtags.c
> > > > index 2b5ba1bf6745..8b1d6f1c96cb 100644
> > > > --- a/pdwtags.c
> > > > +++ b/pdwtags.c
> > > > @@ -72,7 +72,8 @@ static int cu__emit_tags(struct cu *cu)
> > > > }
> > > >
> > > > static enum load_steal_kind pdwtags_stealer(struct cu *cu,
> > > > - struct conf_load *conf_load __maybe_unused)
> > > > + struct conf_load *conf_load __maybe_unused,
> > > > + void *thr_data __maybe_unused)
> > > > {
> > > > cu__emit_tags(cu);
> > > > return LSK__DELETE;
> > > > diff --git a/pfunct.c b/pfunct.c
> > > > index 5485622e639b..314915b774f4 100644
> > > > --- a/pfunct.c
> > > > +++ b/pfunct.c
> > > > @@ -489,7 +489,9 @@ int elf_symtabs__show(char *filenames[])
> > > > return EXIT_SUCCESS;
> > > > }
> > > >
> > > > -static enum load_steal_kind pfunct_stealer(struct cu *cu, struct conf_load *conf_load __maybe_unused)
> > > > +static enum load_steal_kind pfunct_stealer(struct cu *cu,
> > > > + struct conf_load *conf_load __maybe_unused,
> > > > + void *thr_data __maybe_unused)
> > > > {
> > > >
> > > > if (function_name) {
> > > > --
> > > > 2.30.2
> > > >
> >
> > --
> >
> > - Arnaldo
--
- Arnaldo
next prev parent reply other threads:[~2022-03-09 19:25 UTC|newest]
Thread overview: 25+ messages / expand[flat|nested] mbox.gz Atom feed top
2022-01-26 19:20 [PATCH dwarves v4 0/4] Parallelize BTF type info generating of pahole Kui-Feng Lee
2022-01-26 19:20 ` [PATCH dwarves v4 1/4] dwarf_loader: Receive per-thread data on worker threads Kui-Feng Lee
2022-01-26 19:55 ` Andrii Nakryiko
2022-01-26 20:14 ` Kui-Feng Lee
2022-01-27 10:05 ` Arnaldo Carvalho de Melo
2022-03-08 23:45 ` Andrii Nakryiko
2022-03-09 19:24 ` Arnaldo Carvalho de Melo [this message]
2022-03-10 0:14 ` Andrii Nakryiko
2022-03-10 0:18 ` Andrii Nakryiko
2022-03-21 19:06 ` Kui-Feng Lee
2022-03-21 21:08 ` Arnaldo Carvalho de Melo
2022-03-14 15:38 ` Arnaldo Carvalho de Melo
2022-03-14 15:43 ` Arnaldo Carvalho de Melo
2022-01-26 19:20 ` [PATCH dwarves v4 2/4] dwarf_loader: Prepare and pass per-thread data to " Kui-Feng Lee
2022-01-26 19:55 ` Andrii Nakryiko
2022-01-26 19:20 ` [PATCH dwarves v4 3/4] pahole: Use per-thread btf instances to avoid mutex locking Kui-Feng Lee
2022-01-26 19:58 ` Andrii Nakryiko
2022-01-26 20:57 ` Kui-Feng Lee
2022-01-27 10:05 ` Arnaldo Carvalho de Melo
2022-01-27 20:12 ` Arnaldo Carvalho de Melo
2022-01-28 19:50 ` Arnaldo Carvalho de Melo
2022-02-01 6:56 ` Andrii Nakryiko
2022-02-02 0:16 ` Arnaldo Carvalho de Melo
2022-01-26 19:20 ` [PATCH dwarves v4 4/4] libbpf: Update libbpf to a new revision Kui-Feng Lee
2022-01-26 19:59 ` Andrii Nakryiko
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=Yij/BSPgMl8/HEhg@kernel.org \
--to=acme@kernel.org \
--cc=andrii.nakryiko@gmail.com \
--cc=andrii@kernel.org \
--cc=arnaldo.melo@gmail.com \
--cc=ast@kernel.org \
--cc=bpf@vger.kernel.org \
--cc=daniel@iogearbox.net \
--cc=dwarves@vger.kernel.org \
--cc=kuifeng@fb.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.