[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <b21160de-8f12-4796-8df1-2188b5fc93e0@t-8ch.de>
Date: Sat, 23 Nov 2024 15:57:20 +0100
From: Thomas Weißschuh <thomas@...ch.de>
To: Mirsad Todorovac <mtodorovac69@...il.com>
Cc: Linux Kernel Build System <linux-kbuild@...r.kernel.org>,
Masahiro Yamada <masahiroy@...nel.org>, Linux Kernel Mailing List <linux-kernel@...r.kernel.org>,
Bagas Sanjaya <bagasdotme@...il.com>
Subject: Re: [PROBLEM] make bindeb-pkg: When just one source line in a single
driver is changed, all driver are rebuilt?
Hi Mirsad,
On 2024-11-23 02:53:09+0100, Mirsad Todorovac wrote:
> Hi, Mr. Weißschuh,
Call me Thomas, please :-)
> On 11/21/24 22:43, Thomas Weißschuh wrote:
>
> > On 2024-11-21 22:18:58+0100, Mirsad Todorovac wrote:
> >> I am perplexed now at 6.12 stable vanilla tree, and I've noticed that after changing just one
> >> line in ./drivers/gpu/drm/xe/tests/xe_migrate.c:226:5-11, all unrelated drivers are being BTF'd, SIGNED,
> >> and INSTALL-ed:
> >>
> >> SIGN debian/linux-image-6.12.0-dirty/lib/modules/6.12.0-dirty/kernel/drivers/hwmon/aht10.ko
> >> INSTALL debian/linux-image-6.12.0-dirty/lib/modules/6.12.0-dirty/kernel/drivers/hwmon/coretemp.ko
> >> STRIP debian/linux-image-6.12.0-dirty/lib/modules/6.12.0-dirty/kernel/drivers/hwmon/atxp1.ko
> >> INSTALL debian/linux-image-6.12.0-dirty/lib/modules/6.12.0-dirty/kernel/drivers/hwmon/corsair-cpro.ko
> >> SIGN debian/linux-image-6.12.0-dirty/lib/modules/6.12.0-dirty/kernel/drivers/hwmon/adt7475.ko
> >> STRIP debian/linux-image-6.12.0-dirty/lib/modules/6.12.0-dirty/kernel/drivers/hwmon/axi-fan-control.ko
> >> SIGN debian/linux-image-6.12.0-dirty/lib/modules/6.12.0-dirty/kernel/drivers/hwmon/as370-hwmon.ko
> >> STRIP debian/linux-image-6.12.0-dirty/lib/modules/6.12.0-dirty/kernel/drivers/hwmon/chipcap2.ko
> >> SIGN debian/linux-image-6.12.0-dirty/lib/modules/6.12.0-dirty/kernel/drivers/hwmon/aquacomputer_d5next.ko
> >> STRIP debian/linux-image-6.12.0-dirty/lib/modules/6.12.0-dirty/kernel/drivers/hwmon/coretemp.ko
> >> SIGN debian/linux-image-6.12.0-dirty/lib/modules/6.12.0-dirty/kernel/drivers/hwmon/applesmc.ko
> >> INSTALL debian/linux-image-6.12.0-dirty/lib/modules/6.12.0-dirty/kernel/drivers/hwmon/corsair-psu.ko
> >> STRIP debian/linux-image-6.12.0-dirty/lib/modules/6.12.0-dirty/kernel/drivers/hwmon/corsair-cpro.ko
> >> SIGN debian/linux-image-6.12.0-dirty/lib/modules/6.12.0-dirty/kernel/drivers/hwmon/asus_rog_ryujin.ko
> >> INSTALL debian/linux-image-6.12.0-dirty/lib/modules/6.12.0-dirty/kernel/drivers/hwmon/cros_ec_hwmon.ko
> >> SIGN debian/linux-image-6.12.0-dirty/lib/modules/6.12.0-dirty/kernel/drivers/hwmon/asc7621.ko
> >> INSTALL debian/linux-image-6.12.0-dirty/lib/modules/6.12.0-dirty/kernel/drivers/hwmon/da9052-hwmon.ko
> >> SIGN debian/linux-image-6.12.0-dirty/lib/modules/6.12.0-dirty/kernel/drivers/hwmon/atxp1.ko
> >> SIGN debian/linux-image-6.12.0-dirty/lib/modules/6.12.0-dirty/kernel/drivers/hwmon/axi-fan-control.ko
> >> STRIP debian/linux-image-6.12.0-dirty/lib/modules/6.12.0-dirty/kernel/drivers/hwmon/corsair-psu.ko
> >> INSTALL debian/linux-image-6.12.0-dirty/lib/modules/6.12.0-dirty/kernel/drivers/hwmon/da9055-hwmon.ko
> >> SIGN debian/linux-image-6.12.0-dirty/lib/modules/6.12.0-dirty/kernel/drivers/hwmon/chipcap2.ko
> >> STRIP debian/linux-image-6.12.0-dirty/lib/modules/6.12.0-dirty/kernel/drivers/hwmon/cros_ec_hwmon.ko
> >> STRIP debian/linux-image-6.12.0-dirty/lib/modules/6.12.0-dirty/kernel/drivers/hwmon/da9052-hwmon.ko
> >> SIGN debian/linux-image-6.12.0-dirty/lib/modules/6.12.0-dirty/kernel/drivers/hwmon/coretemp.ko
> >> SIGN debian/linux-image-6.12.0-dirty/lib/modules/6.12.0-dirty/kernel/drivers/hwmon/corsair-cpro.ko
> >> INSTALL debian/linux-image-6.12.0-dirty/lib/modules/6.12.0-dirty/kernel/drivers/hwmon/dell-smm-hwmon.ko
> > This happens when the vermagic is changed. The vermagic is linked into
> > each module. And after relinking all the other steps also need to be
> > done.
> > Building the Debian package increases the build number which ends up in
> > the vermagic and therefore all modules.
> > Also there is CONFIG_LOCALVERSION_AUTO which may be involved.
>
> Yes, I use CONFIG_LOCALVERSION_AUTO because it saves a lot of trouble in bisecting.
>
> This vermagic manipulation is beyond my grasp. I understand that
> modules must match kernel version, for internal ABI often changes. But
> not between builds of the same source? Am I thinking right?
The ABI doesn't change between builds of the same source tree which is
why there are no actual rebuilds ("CC") of all modules.
But your usage of bindeb-pkg bumps the version string
(also without CONFIG_LOCALVERSION_AUTO) and this needs to end up in each
module file which explains the LD/BTF/SIGN/INSTALL steps.
[..]
Powered by blists - more mailing lists