Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

Build regression since v6.6-rc1

1 view
Skip to first unread message

Frank Scheiner

unread,
Sep 21, 2023, 6:20:03 AM9/21/23
to
Dear all,

since v6.6-rc1 (actually introduced with [1], specific commit on [2])
the kernel build for ia64 fails like that:

```
Making kernel...
time make -j24
LOCALVERSION="-0bb80ecc33a8fb5a682236443c1e740d5c917d1d-ia64" ARCH=ia64
CROSS_COMPILE=ia64-linux- all
Mon Sep 11 06:24:43 PM CEST 2023
[...]
LD [M] net/sunrpc/sunrpc.ko
ia64-linux-ld: drivers/acpi/acpi_processor.o: in function
`acpi_early_processor_osc':
/usr/src/linux-on-ramdisk/torvalds-linux/drivers/acpi/acpi_processor.c:596:
undefined reference to `acpi_proc_quirk_mwait_check'
ia64-linux-ld: drivers/acpi/processor_pdc.o: in function
`acpi_early_processor_set_pdc':
/usr/src/linux-on-ramdisk/torvalds-linux/drivers/acpi/processor_pdc.c:113:
undefined reference to `acpi_proc_quirk_mwait_check'
make[2]: *** [scripts/Makefile.vmlinux:36: vmlinux] Error 1
make[1]: *** [/usr/src/linux-on-ramdisk/torvalds-linux/Makefile:1165:
vmlinux] Error 2
make: *** [Makefile:234: __sub-make] Error 2

real 3m25.286s
user 69m26.895s
sys 6m37.619s
2
```

[1]:
https://github.com/torvalds/linux/commit/9bd0c413b90c6517b4a2fbedb74f50df3421b50c

[2]: https://github.com/torvalds/linux/commit/0a0e2ea642f6

In short, the change introduced a function call ([3]) in effect for ia64
without providing an implementation for that function for ia64. There's
a discussion thread on [4] that also includes a patch ([5]) to "fix" the
problem but that one unfortunately wasn't included in [1] or [2]:

```
---
drivers/acpi/internal.h | 14 ++++----------
1 file changed, 4 insertions(+), 10 deletions(-)

Index: linux-pm/drivers/acpi/internal.h
===================================================================
--- linux-pm.orig/drivers/acpi/internal.h
+++ linux-pm/drivers/acpi/internal.h
@@ -148,8 +148,11 @@ int acpi_wakeup_device_init(void);
#ifdef CONFIG_ARCH_MIGHT_HAVE_ACPI_PDC
void acpi_early_processor_control_setup(void);
void acpi_early_processor_set_pdc(void);
-
+#ifdef CONFIG_X86
void acpi_proc_quirk_mwait_check(void);
+#else
+static inline void acpi_proc_quirk_mwait_check(void) {}
+#endif
bool processor_physically_present(acpi_handle handle);
#else
static inline void acpi_early_processor_control_setup(void) {}

```

For me this patch solves the build problem for v6.6-rc1 and -rc2.
There's also another patch available for that specific problem by Ard
([6]) but I haven't seen this one included either up until 42dc814 and I
also haven't tested this one.

Could one ([5]) or the other ([6]) please be included in v6.6 (or
earlier) to "fix" the build problem for ia64?

Cheers,
Frank


[3]:
https://github.com/torvalds/linux/commit/0a0e2ea642f6#diff-80c82874cec85e9c2facf52535b929ec62284c001ab081bfd1c1d164bf2a1d66R179

[4]:
https://lore.kernel.org/lkml/c7a05a44-c0be-46c2...@roeck-us.net/T/#u

[5]:
https://lore.kernel.org/lkml/CAJZ5v0hnNK4O_HyinvTp01YxXR7V4vzpMhf85yW9M2=52-...@mail.gmail.com/

[6]:
https://git.kernel.org/pub/scm/linux/kernel/git/ardb/linux.git/commit/?id=a0334bf78b95532cec54f56b53e8ae1bfe7e1ca1

Frank Scheiner

unread,
Sep 21, 2023, 8:10:03 AM9/21/23
to
Hi Ard,

On 21.09.23 13:53, Ard Biesheuvel wrote:
> Hello Frank,
>
> On Thu, 21 Sept 2023 at 10:15, Frank Scheiner <frank.s...@web.de> wrote:
>>
>> Dear all,
>>
>> since v6.6-rc1 (actually introduced with [1], specific commit on [2])
>> the kernel build for ia64 fails like that:
>>
>> ```
> ...
>>
>> Could one ([5]) or the other ([6]) please be included in v6.6 (or
>> earlier) to "fix" the build problem for ia64?
>>
>
> Do you mean by "fix" that the proposed fixes are just workarounds and
> not proper fixes?

Not really, or maybe a little... :-)

> I don't think that is the case - the function in
> question does nothing except apply a quirk for one specific x86
> platform.

...look, as I assumed and as you also say, the function is to "apply a
quirk for one specific x86 platform". So wouldn't it be better to make
that call only on x86 and leave ia64 untouched instead of putting a NOP
there?

I already wondered why no other architecture with ACPI failed to build?

Cheers,
Frank

>
> ...
> Either Arnd, Rafael or myself should send a PR to Linus to merge [6]
> as a fix, as it is already queued up in -next for v6.7.
>
> Or perhaps Linus doesn't mind grabbing it from here:
>
> ------------8<--------------
>
> The following changes since commit 0bb80ecc33a8fb5a682236443c1e740d5c917d1d:
>
> Linux 6.6-rc1 (2023-09-10 16:28:41 -0700)
>
> are available in the Git repository at:
>
> git://git.kernel.org/pub/scm/linux/kernel/git/ardb/linux.git
> tags/fix-ia64-build-for-v6.6
>
> for you to fetch changes up to a0334bf78b95532cec54f56b53e8ae1bfe7e1ca1:
>
> acpi: Provide ia64 dummy implementation of
> acpi_proc_quirk_mwait_check() (2023-09-11 08:13:17 +0000)
>
> ----------------------------------------------------------------
> Build fix for Itanium/ia64:
>
> - provide dummy implementation of acpi_proc_quirk_mwait_check() which
> was moved out of generic code into arch/x86, breaking the ia64 build
>
> ----------------------------------------------------------------
> Ard Biesheuvel (1):
> acpi: Provide ia64 dummy implementation of acpi_proc_quirk_mwait_check()
>
> arch/ia64/kernel/acpi.c | 4 ++++
> 1 file changed, 4 insertions(+)

Ard Biesheuvel

unread,
Sep 21, 2023, 8:20:03 AM9/21/23
to
Hello Frank,

On Thu, 21 Sept 2023 at 10:15, Frank Scheiner <frank.s...@web.de> wrote:
>
> Dear all,
>
> since v6.6-rc1 (actually introduced with [1], specific commit on [2])
> the kernel build for ia64 fails like that:
>
> ```
...
>
> Could one ([5]) or the other ([6]) please be included in v6.6 (or
> earlier) to "fix" the build problem for ia64?
>

Do you mean by "fix" that the proposed fixes are just workarounds and
not proper fixes? I don't think that is the case - the function in
question does nothing except apply a quirk for one specific x86
platform.

...
0 new messages