From: Rafael J. Wysocki <[email protected]>
Commit 0a0e2ea642f6 ("ACPI: processor: Move MWAIT quirk out of
acpi_processor.c") added acpi_proc_quirk_mwait_check() that is
only defined for x86 and is unlikely to be defined for any other
architectures, so put it under #ifdef CONFIG_X86 and provide
an empty stub implementation of it for the other cases.
Link: https://lore.kernel.org/lkml/[email protected]
Link: https://git.kernel.org/pub/scm/linux/kernel/git/ardb/linux.git/commit/?h=remove-ia64&id=a0334bf78b95532cec54f56b53e8ae1bfe7e1ca1
Fixes: 0a0e2ea642f6 ("ACPI: processor: Move MWAIT quirk out of acpi_processor.c")
Reported-by: Guenter Roeck <[email protected]>
Reported-by: Frank Scheiner <[email protected]>
Signed-off-by: Rafael J. Wysocki <[email protected]>
---
This is kind of orthogonal to
https://git.kernel.org/pub/scm/linux/kernel/git/ardb/linux.git/commit/?h=remove-ia64&id=a0334bf78b95532cec54f56b53e8ae1bfe7e1ca1
because if any architectures other than x86 and ia64 decide to use the
processor _OSC, they will see the reported build error.
---
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) {}
On Thursday, September 21, 2023 3:09:04 PM CEST Ard Biesheuvel wrote:
> On Thu, 21 Sept 2023 at 13:04, Rafael J. Wysocki <[email protected]> wrote:
> >
> > From: Rafael J. Wysocki <[email protected]>
> >
> > Commit 0a0e2ea642f6 ("ACPI: processor: Move MWAIT quirk out of
> > acpi_processor.c") added acpi_proc_quirk_mwait_check() that is
> > only defined for x86 and is unlikely to be defined for any other
> > architectures, so put it under #ifdef CONFIG_X86 and provide
> > an empty stub implementation of it for the other cases.
> >
> > Link: https://lore.kernel.org/lkml/[email protected]
> > Link: https://git.kernel.org/pub/scm/linux/kernel/git/ardb/linux.git/commit/?h=remove-ia64&id=a0334bf78b95532cec54f56b53e8ae1bfe7e1ca1
> > Fixes: 0a0e2ea642f6 ("ACPI: processor: Move MWAIT quirk out of acpi_processor.c")
> > Reported-by: Guenter Roeck <[email protected]>
> > Reported-by: Frank Scheiner <[email protected]>
> > Signed-off-by: Rafael J. Wysocki <[email protected]>
> > ---
> >
> > This is kind of orthogonal to
> >
> > https://git.kernel.org/pub/scm/linux/kernel/git/ardb/linux.git/commit/?h=remove-ia64&id=a0334bf78b95532cec54f56b53e8ae1bfe7e1ca1
> >
> > because if any architectures other than x86 and ia64 decide to use the
> > processor _OSC, they will see the reported build error.
> >
>
> You mean when other arches #define CONFIG_ARCH_MIGHT_HAVE_ACPI_PDC too, right?
>
> In any case, this is going to conflict with my change, which is
> already in linux-next (you were cc'ed on the PR to asm-generic). What
> do you propose here?
IIUC, the conflict is that the empty stub will be defined twice if this is
applied before removing ia64.
But if it is applied on top of the ia64 removal, all should be fine, so that's
what I would do (and tell the -stable people to ignore it).
> > ---
> > 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) {}
> >
> >
> >
>
On Thu, 21 Sept 2023 at 13:04, Rafael J. Wysocki <[email protected]> wrote:
>
> From: Rafael J. Wysocki <[email protected]>
>
> Commit 0a0e2ea642f6 ("ACPI: processor: Move MWAIT quirk out of
> acpi_processor.c") added acpi_proc_quirk_mwait_check() that is
> only defined for x86 and is unlikely to be defined for any other
> architectures, so put it under #ifdef CONFIG_X86 and provide
> an empty stub implementation of it for the other cases.
>
> Link: https://lore.kernel.org/lkml/[email protected]
> Link: https://git.kernel.org/pub/scm/linux/kernel/git/ardb/linux.git/commit/?h=remove-ia64&id=a0334bf78b95532cec54f56b53e8ae1bfe7e1ca1
> Fixes: 0a0e2ea642f6 ("ACPI: processor: Move MWAIT quirk out of acpi_processor.c")
> Reported-by: Guenter Roeck <[email protected]>
> Reported-by: Frank Scheiner <[email protected]>
> Signed-off-by: Rafael J. Wysocki <[email protected]>
> ---
>
> This is kind of orthogonal to
>
> https://git.kernel.org/pub/scm/linux/kernel/git/ardb/linux.git/commit/?h=remove-ia64&id=a0334bf78b95532cec54f56b53e8ae1bfe7e1ca1
>
> because if any architectures other than x86 and ia64 decide to use the
> processor _OSC, they will see the reported build error.
>
You mean when other arches #define CONFIG_ARCH_MIGHT_HAVE_ACPI_PDC too, right?
In any case, this is going to conflict with my change, which is
already in linux-next (you were cc'ed on the PR to asm-generic). What
do you propose here?
> ---
> 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) {}
>
>
>
On Thu, Sep 21, 2023 at 4:00 PM Rafael J. Wysocki <[email protected]> wrote:
>
> On Thursday, September 21, 2023 3:09:04 PM CEST Ard Biesheuvel wrote:
> > On Thu, 21 Sept 2023 at 13:04, Rafael J. Wysocki <[email protected]> wrote:
> > >
> > > From: Rafael J. Wysocki <[email protected]>
> > >
> > > Commit 0a0e2ea642f6 ("ACPI: processor: Move MWAIT quirk out of
> > > acpi_processor.c") added acpi_proc_quirk_mwait_check() that is
> > > only defined for x86 and is unlikely to be defined for any other
> > > architectures, so put it under #ifdef CONFIG_X86 and provide
> > > an empty stub implementation of it for the other cases.
> > >
> > > Link: https://lore.kernel.org/lkml/[email protected]
> > > Link: https://git.kernel.org/pub/scm/linux/kernel/git/ardb/linux.git/commit/?h=remove-ia64&id=a0334bf78b95532cec54f56b53e8ae1bfe7e1ca1
> > > Fixes: 0a0e2ea642f6 ("ACPI: processor: Move MWAIT quirk out of acpi_processor.c")
> > > Reported-by: Guenter Roeck <[email protected]>
> > > Reported-by: Frank Scheiner <[email protected]>
> > > Signed-off-by: Rafael J. Wysocki <[email protected]>
> > > ---
> > >
> > > This is kind of orthogonal to
> > >
> > > https://git.kernel.org/pub/scm/linux/kernel/git/ardb/linux.git/commit/?h=remove-ia64&id=a0334bf78b95532cec54f56b53e8ae1bfe7e1ca1
> > >
> > > because if any architectures other than x86 and ia64 decide to use the
> > > processor _OSC, they will see the reported build error.
> > >
> >
> > You mean when other arches #define CONFIG_ARCH_MIGHT_HAVE_ACPI_PDC too, right?
> >
> > In any case, this is going to conflict with my change, which is
> > already in linux-next (you were cc'ed on the PR to asm-generic). What
> > do you propose here?
>
> IIUC, the conflict is that the empty stub will be defined twice if this is
> applied before removing ia64.
>
> But if it is applied on top of the ia64 removal, all should be fine, so that's
> what I would do (and tell the -stable people to ignore it).
And ia64 is gone now, so applied.
On Wed, 22 Nov 2023 at 20:39, Rafael J. Wysocki <[email protected]> wrote:
>
> On Thu, Sep 21, 2023 at 4:00 PM Rafael J. Wysocki <[email protected]> wrote:
> >
> > On Thursday, September 21, 2023 3:09:04 PM CEST Ard Biesheuvel wrote:
> > > On Thu, 21 Sept 2023 at 13:04, Rafael J. Wysocki <[email protected]> wrote:
> > > >
> > > > From: Rafael J. Wysocki <[email protected]>
> > > >
> > > > Commit 0a0e2ea642f6 ("ACPI: processor: Move MWAIT quirk out of
> > > > acpi_processor.c") added acpi_proc_quirk_mwait_check() that is
> > > > only defined for x86 and is unlikely to be defined for any other
> > > > architectures, so put it under #ifdef CONFIG_X86 and provide
> > > > an empty stub implementation of it for the other cases.
> > > >
> > > > Link: https://lore.kernel.org/lkml/[email protected]
> > > > Link: https://git.kernel.org/pub/scm/linux/kernel/git/ardb/linux.git/commit/?h=remove-ia64&id=a0334bf78b95532cec54f56b53e8ae1bfe7e1ca1
> > > > Fixes: 0a0e2ea642f6 ("ACPI: processor: Move MWAIT quirk out of acpi_processor.c")
> > > > Reported-by: Guenter Roeck <[email protected]>
> > > > Reported-by: Frank Scheiner <[email protected]>
> > > > Signed-off-by: Rafael J. Wysocki <[email protected]>
> > > > ---
> > > >
> > > > This is kind of orthogonal to
> > > >
> > > > https://git.kernel.org/pub/scm/linux/kernel/git/ardb/linux.git/commit/?h=remove-ia64&id=a0334bf78b95532cec54f56b53e8ae1bfe7e1ca1
> > > >
> > > > because if any architectures other than x86 and ia64 decide to use the
> > > > processor _OSC, they will see the reported build error.
> > > >
> > >
> > > You mean when other arches #define CONFIG_ARCH_MIGHT_HAVE_ACPI_PDC too, right?
> > >
> > > In any case, this is going to conflict with my change, which is
> > > already in linux-next (you were cc'ed on the PR to asm-generic). What
> > > do you propose here?
> >
> > IIUC, the conflict is that the empty stub will be defined twice if this is
> > applied before removing ia64.
> >
> > But if it is applied on top of the ia64 removal, all should be fine, so that's
> > what I would do (and tell the -stable people to ignore it).
>
> And ia64 is gone now, so applied.
Excellent.