lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <CABWYdi0sne=6reP5oZMFbYk9Nctws=FLoYkjdmnBwXu0bVFozA@mail.gmail.com>
Date:   Thu, 7 Jan 2021 09:42:25 -0800
From:   Ivan Babrou <ivan@...udflare.com>
To:     Thomas Renninger <trenn@...e.com>
Cc:     linux-pm@...r.kernel.org,
        linux-kernel <linux-kernel@...r.kernel.org>,
        kernel-team <kernel-team@...udflare.com>,
        Shuah Khan <shuah@...nel.org>
Subject: Re: [PATCH] cpupower: add Makefile dependencies for install targets

On Thu, Jan 7, 2021 at 2:07 AM Thomas Renninger <trenn@...e.com> wrote:
>
> Am Dienstag, 5. Januar 2021, 00:57:18 CET schrieb Ivan Babrou:
> > This allows building cpupower in parallel rather than serially.
>
> cpupower is built serially:
>
> [ make clean ]
>
> time make
> real    0m3,742s
> user    0m3,330s
> sys     0m1,105s
>
> [ make clean ]
>
> time make -j10
> real    0m1,045s
> user    0m3,153s
> sys     0m1,037s
>
> Only advantage I see is that you can call
> make install-xy
> targets without calling the corresponding build target
> make xy
> similar to the general install target:
> install: all install-lib ...
>
> Not sure anyone needs this and whether all targets
> successfully work this way.
> If you'd show a useful usecase example...

We build a bunch of kernel related tools (perf, cpupower, bpftool,
etc.) from our own top level Makefile, propagating parallelism
downwards like one should. Without this patch we have to remove
parallelism for cpupower, which doesn't seem like a very clean thing
to do, especially if you consider that it's 3x faster with parallelism
enabled in wall clock terms.

>        Thomas
>
> >
> > Signed-off-by: Ivan Babrou <ivan@...udflare.com>
> > ---
> >  tools/power/cpupower/Makefile       | 8 ++++----
> >  tools/power/cpupower/bench/Makefile | 2 +-
> >  2 files changed, 5 insertions(+), 5 deletions(-)
> >
> > diff --git a/tools/power/cpupower/Makefile b/tools/power/cpupower/Makefile
> > index c7bcddbd486d..3b1594447f29 100644
> > --- a/tools/power/cpupower/Makefile
> > +++ b/tools/power/cpupower/Makefile
> > @@ -270,14 +270,14 @@ clean:
> >       $(MAKE) -C bench O=$(OUTPUT) clean
> >
> >
> > -install-lib:
> > +install-lib: libcpupower
> >       $(INSTALL) -d $(DESTDIR)${libdir}
> >       $(CP) $(OUTPUT)libcpupower.so* $(DESTDIR)${libdir}/
> >       $(INSTALL) -d $(DESTDIR)${includedir}
> >       $(INSTALL_DATA) lib/cpufreq.h $(DESTDIR)${includedir}/cpufreq.h
> >       $(INSTALL_DATA) lib/cpuidle.h $(DESTDIR)${includedir}/cpuidle.h
> >
> > -install-tools:
> > +install-tools: $(OUTPUT)cpupower
> >       $(INSTALL) -d $(DESTDIR)${bindir}
> >       $(INSTALL_PROGRAM) $(OUTPUT)cpupower $(DESTDIR)${bindir}
> >       $(INSTALL) -d $(DESTDIR)${bash_completion_dir}
> > @@ -293,14 +293,14 @@ install-man:
> >       $(INSTALL_DATA) -D man/cpupower-info.1
> > $(DESTDIR)${mandir}/man1/cpupower-info.1 $(INSTALL_DATA) -D
> > man/cpupower-monitor.1 $(DESTDIR)${mandir}/man1/cpupower-monitor.1
> >
> > -install-gmo:
> > +install-gmo: create-gmo
> >       $(INSTALL) -d $(DESTDIR)${localedir}
> >       for HLANG in $(LANGUAGES); do \
> >               echo '$(INSTALL_DATA) -D $(OUTPUT)po/$$HLANG.gmo
> > $(DESTDIR)${localedir}/$$HLANG/LC_MESSAGES/cpupower.mo'; \ $(INSTALL_DATA)
> > -D $(OUTPUT)po/$$HLANG.gmo
> > $(DESTDIR)${localedir}/$$HLANG/LC_MESSAGES/cpupower.mo; \ done;
> >
> > -install-bench:
> > +install-bench: compile-bench
> >       @#DESTDIR must be set from outside to survive
> >       @sbindir=$(sbindir) bindir=$(bindir) docdir=$(docdir) confdir=$
> (confdir)
> > $(MAKE) -C bench O=$(OUTPUT) install
> >
> > diff --git a/tools/power/cpupower/bench/Makefile
> > b/tools/power/cpupower/bench/Makefile index f68b4bc55273..d9d9923af85c
> > 100644
> > --- a/tools/power/cpupower/bench/Makefile
> > +++ b/tools/power/cpupower/bench/Makefile
> > @@ -27,7 +27,7 @@ $(OUTPUT)cpufreq-bench: $(OBJS)
> >
> >  all: $(OUTPUT)cpufreq-bench
> >
> > -install:
> > +install: $(OUTPUT)cpufreq-bench
> >       mkdir -p $(DESTDIR)/$(sbindir)
> >       mkdir -p $(DESTDIR)/$(bindir)
> >       mkdir -p $(DESTDIR)/$(docdir)
>
>
>
>

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ