ACK/Cmnt: [SRU][JAMMY][MANTIC][UNSTABLE][PATCH] UBUNTU: [Packaging] Statically link libcpupower into cpupower tool

Dimitri John Ledkov dimitri.ledkov at canonical.com
Wed Dec 6 11:38:58 UTC 2023


On Wed, 6 Dec 2023 at 10:33, Manuel Diewald
<manuel.diewald at canonical.com> wrote:
>
> On Wed, Dec 06, 2023 at 12:00:24AM +0000, Dimitri John Ledkov wrote:
> > BugLink: https://bugs.launchpad.net/bugs/2035971
> >
> > Currently we ship tools for every kernel flavour and backport, and
> > each one of them may have new features in cpupower &
> > libcpupower. Statically link those in, such that there are no
> > installation conflicts. This resolves all current file conflicts
> > between multiple kernel flavours in the Ubuntu Archive.
> >
> > Separately, a public libcpupower1 & libcpupower-dev for non-kernel /
> > non-linux-tools use cases will be provided separately, under a stable
> > soname (not flavour or kernel version specific).
> >
> > Signed-off-by: Dimitri John Ledkov <dimitri.ledkov at canonical.com>
> > ---
> >  debian/rules.d/2-binary-arch.mk | 10 ++--------
> >  1 file changed, 2 insertions(+), 8 deletions(-)
> >
> > diff --git a/debian/rules.d/2-binary-arch.mk b/debian/rules.d/2-binary-arch.mk
> > index cbd5e1f065..c7f6d47057 100644
> > --- a/debian/rules.d/2-binary-arch.mk
> > +++ b/debian/rules.d/2-binary-arch.mk
> > @@ -676,13 +676,11 @@ ifeq ($(do_tools_acpidbg),true)
> >       cd $(builddirpa)/tools/power/acpi && make clean && make CFLAGS="-g -O2 -static -I$(builddirpa)/include" CROSS_COMPILE=$(CROSS_COMPILE) acpidbg
> >  endif
> >  ifeq ($(do_tools_cpupower),true)
> > -     # Allow for multiple installed versions of cpupower and libcpupower.so:
> > -     # Override LIB_MIN in order to to generate a versioned .so named
> > -     # libcpupower.so.$(abi_release) and link cpupower with that.
> >       make -C $(builddirpa)/tools/power/cpupower \
> >               CROSS_COMPILE=$(CROSS_COMPILE) \
> >               CROSS=$(CROSS_COMPILE) \
> > -             LIB_MIN=$(abi_release) CPUFREQ_BENCH=false
> > +             STATIC=true \
> > +             CPUFREQ_BENCH=false
> >  endif
> >  ifeq ($(do_tools_perf),true)
> >       cd $(builddirpa) && $(kmake) $(defconfig)
> > @@ -732,10 +730,6 @@ endif
> >  ifeq ($(do_tools_cpupower),true)
> >       install -m755 $(builddirpa)/tools/power/cpupower/cpupower \
> >               $(toolspkgdir)/usr/lib/$(src_pkg_name)-tools-$(abi_release)
> > -     # Install only the full versioned libcpupower.so.$(abi_release), not
> > -     # the usual symlinks to it.
> > -     install -m644 $(builddirpa)/tools/power/cpupower/libcpupower.so.$(abi_release) \
> > -             $(toolspkgdir)/usr/lib/
> >  endif
> >  ifeq ($(do_tools_perf),true)
> >       install -m755 $(builddirpa)/tools/perf/perf $(toolspkgdir)/usr/lib/$(src_pkg_name)-tools-$(abi_release)
> > --
> > 2.34.1
>
> Should we target focal as well?
>

Possibly, but I didn't check if this patch applies cleanly there. but
even without taking this back to focal, things will be mostly resolved
in focal as well. As all the hwe kernels will get it via backports
from jammy. And the remaining conflicting flavours in focal will
remain those that are not default. So like two -lts-ga cloud kernels,
and there is little reason to ever install both of them. So like
number of affected users on focal, after sruing this change to jammy
with backports is very small.

> Acked-by: Manuel Diewald <manuel.diewald at canonical.com>
>

-- 
Dimitri

Sent from Ubuntu Pro
https://ubuntu.com/pro



More information about the kernel-team mailing list