ieu.desnoy...@efficios.com>, Frederic Weisbecker <frede...@kernel.org>, Len 
Brown <l...@kernel.org>, linux-xte...@linux-xtensa.org, Sascha Hauer 
<ker...@pengutronix.de>, Vasily Gorbik <g...@linux.ibm.com>, linux-arm-msm 
<linux-arm-...@vger.kernel.org>, linux-al...@vger.kernel.org, linux-m68k 
<linux-m...@lists.linux-m68k.org>, Stafford Horne <sho...@gmail.com>, Linux ARM 
<linux-arm-ker...@lists.infradead.org>, Chris Zankel <ch...@zankel.net>, 
Stephen Boyd <sb...@kernel.org>, dingu...@kernel.org, Daniel Bristot de 
Oliveira <bris...@redhat.com>, Alexander Shishkin 
<alexander.shish...@linux.intel.com>, Lorenzo Pieralisi 
<lpieral...@kernel.org>, Rasmus Villemoes <li...@rasmusvillemoes.dk>, Joel 
Fernandes <j...@joelfernandes.org>, Will Deacon <w...@kernel.org>, Boris 
Ostrovsky <boris.ostrov...@oracle.com>, Kevin Hilman <khil...@kernel.org>, 
linux-c...@vger.kernel.org, pv-driv...@vmware.com, 
linux-snps-...@lists.infradead.org, Mel Gorman <mgor...@suse.de>, Jacob Pan 
<jacob.jun....@linux.inte
 l.com>, Arnd Bergmann <a...@arndb.de>, ulli.kr...@googlemail.com, 
vgu...@kernel.org, linux-clk <linux-...@vger.kernel.org>, Josh Triplett 
<j...@joshtriplett.org>, Steven Rostedt <rost...@goodmis.org>, 
r...@vger.kernel.org, Borislav Petkov <b...@alien8.de>, bc...@quicinc.com, 
Thomas Bogendoerfer <tsbog...@alpha.franken.de>, Parisc List 
<linux-par...@vger.kernel.org>, Sudeep Holla <sudeep.ho...@arm.com>, Shawn Guo 
<shawn...@kernel.org>, David Miller <da...@davemloft.net>, Rich Felker 
<dal...@libc.org>, Tony Lindgren <t...@atomide.com>, amakha...@vmware.com, 
Bjorn Andersson <bjorn.anders...@linaro.org>, "H. Peter Anvin" 
<h...@zytor.com>, sparcli...@vger.kernel.org, linux-hexa...@vger.kernel.org, 
linux-riscv <linux-ri...@lists.infradead.org>, anton.iva...@cambridgegreys.com, 
jo...@southpole.se, Yury Norov <yury.no...@gmail.com>, Richard Weinberger 
<rich...@nod.at>, the arch/x86 maintainers <x...@kernel.org>, Russell King - 
ARM Linux <li...@armlinux.org.uk>, Ingo Molnar <mi...@redhat.com>, Al
 bert Ou <a...@eecs.berkeley.edu>, "Paul E. McKenney" <
paul...@kernel.org>, Heiko Carstens <h...@linux.ibm.com>, 
stefan.kristians...@saunalahti.fi, openr...@lists.librecores.org, Paul Walmsley 
<paul.walms...@sifive.com>, linux-tegra <linux-te...@vger.kernel.org>, 
namhy...@kernel.org, Andy Shevchenko <andriy.shevche...@linux.intel.com>, 
jpoim...@kernel.org, Juergen Gross <jgr...@suse.com>, Michal Simek 
<mon...@monstr.eu>, "open list:BROADCOM NVRAM DRIVER" 
<linux-m...@vger.kernel.org>, Palmer Dabbelt <pal...@dabbelt.com>, Anup Patel 
<a...@brainfault.org>, i...@jurassic.park.msu.ru, Johannes Berg 
<johan...@sipsolutions.net>, linuxppc-dev <linuxppc-dev@lists.ozlabs.org>
Errors-To: linuxppc-dev-bounces+archive=mail-archive....@lists.ozlabs.org
Sender: "Linuxppc-dev" 
<linuxppc-dev-bounces+archive=mail-archive....@lists.ozlabs.org>

On Wed, Jun 8, 2022 at 4:47 PM Peter Zijlstra <pet...@infradead.org> wrote:
>
> vmlinux.o: warning: objtool: io_idle+0xc: call to __inb.isra.0() leaves 
> .noinstr.text section
> vmlinux.o: warning: objtool: acpi_idle_enter+0xfe: call to num_online_cpus() 
> leaves .noinstr.text section
> vmlinux.o: warning: objtool: acpi_idle_enter+0x115: call to 
> acpi_idle_fallback_to_c1.isra.0() leaves .noinstr.text section
>
> Signed-off-by: Peter Zijlstra (Intel) <pet...@infradead.org>

Acked-by: Rafael J. Wysocki <rafael.j.wyso...@intel.com>

> ---
>  arch/x86/include/asm/shared/io.h |    4 ++--
>  drivers/acpi/processor_idle.c    |    2 +-
>  include/linux/cpumask.h          |    4 ++--
>  3 files changed, 5 insertions(+), 5 deletions(-)
>
> --- a/arch/x86/include/asm/shared/io.h
> +++ b/arch/x86/include/asm/shared/io.h
> @@ -5,13 +5,13 @@
>  #include <linux/types.h>
>
>  #define BUILDIO(bwl, bw, type)                                         \
> -static inline void __out##bwl(type value, u16 port)                    \
> +static __always_inline void __out##bwl(type value, u16 port)           \
>  {                                                                      \
>         asm volatile("out" #bwl " %" #bw "0, %w1"                       \
>                      : : "a"(value), "Nd"(port));                       \
>  }                                                                      \
>                                                                         \
> -static inline type __in##bwl(u16 port)                                 \
> +static __always_inline type __in##bwl(u16 port)                              
>   \
>  {                                                                      \
>         type value;                                                     \
>         asm volatile("in" #bwl " %w1, %" #bw "0"                        \
> --- a/drivers/acpi/processor_idle.c
> +++ b/drivers/acpi/processor_idle.c
> @@ -593,7 +593,7 @@ static int acpi_idle_play_dead(struct cp
>         return 0;
>  }
>
> -static bool acpi_idle_fallback_to_c1(struct acpi_processor *pr)
> +static __always_inline bool acpi_idle_fallback_to_c1(struct acpi_processor 
> *pr)
>  {
>         return IS_ENABLED(CONFIG_HOTPLUG_CPU) && !pr->flags.has_cst &&
>                 !(acpi_gbl_FADT.flags & ACPI_FADT_C2_MP_SUPPORTED);
> --- a/include/linux/cpumask.h
> +++ b/include/linux/cpumask.h
> @@ -908,9 +908,9 @@ static inline const struct cpumask *get_
>   * concurrent CPU hotplug operations unless invoked from a cpuhp_lock held
>   * region.
>   */
> -static inline unsigned int num_online_cpus(void)
> +static __always_inline unsigned int num_online_cpus(void)
>  {
> -       return atomic_read(&__num_online_cpus);
> +       return arch_atomic_read(&__num_online_cpus);
>  }
>  #define num_possible_cpus()    cpumask_weight(cpu_possible_mask)
>  #define num_present_cpus()     cpumask_weight(cpu_present_mask)
>
>

Reply via email to