lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-id: <5594CAE4.1070607@samsung.com>
Date:	Thu, 02 Jul 2015 14:23:48 +0900
From:	Krzysztof Kozlowski <k.kozlowski@...sung.com>
To:	Jisheng Zhang <jszhang@...vell.com>, catalin.marinas@....com,
	will.deacon@....com, lorenzo.pieralisi@....com
Cc:	linux-kernel@...r.kernel.org, linux-arm-kernel@...ts.infradead.org
Subject: Re: [PATCH v2] arm64: cpuidle: add __init section marker to
 arm_cpuidle_init

On 02.07.2015 13:58, Jisheng Zhang wrote:
> Dear Krzysztof,
> 
> On Thu, 2 Jul 2015 12:59:44 +0900
> Krzysztof Kozlowski <k.kozlowski@...sung.com> wrote:
> 
>> 2015-07-02 11:14 GMT+09:00 Jisheng Zhang <jszhang@...vell.com>:
>>> It is not needed after booting, this patch moves the arm_cpuidle_init()
>>> function to the __init section.
>>>
>>> Signed-off-by: Jisheng Zhang <jszhang@...vell.com>
>>> ---
>>>  arch/arm64/include/asm/cpuidle.h | 2 +-
>>>  arch/arm64/kernel/cpuidle.c      | 2 +-
>>>  2 files changed, 2 insertions(+), 2 deletions(-)
>>>
>>> diff --git a/arch/arm64/include/asm/cpuidle.h b/arch/arm64/include/asm/cpuidle.h
>>> index 0f74f05..5748d3b 100644
>>> --- a/arch/arm64/include/asm/cpuidle.h
>>> +++ b/arch/arm64/include/asm/cpuidle.h
>>> @@ -4,7 +4,7 @@
>>>  #include <asm/proc-fns.h>
>>>
>>>  #ifdef CONFIG_CPU_IDLE
>>> -extern int arm_cpuidle_init(unsigned int cpu);
>>> +extern int __init arm_cpuidle_init(unsigned int cpu);
>>
>> No, not here but...
>>
>>>  extern int arm_cpuidle_suspend(int index);
>>>  #else
>>>  static inline int arm_cpuidle_init(unsigned int cpu)
>>
>> ... here so the stub for !CONFIG_CPU_IDLE would be marked as well.
> 
> when !CONFIG_CPU_IDLE, arm_cpuidle_init() is inlined, and just return -EOPNOTSUPP;
> Per my understanding, it will be optimized out by compiler. I'm not sure whether
> there is any benefit to mark inlined function as __init. But Per my check, all
> other inlined functions in linux kernel have no __init. What do you think?

Yes, you're right, the inline is sufficient so this means that actually
the first patch was correct. The __init is not needed in extern
declaration. For both versions then:

Reviewed-by: Krzysztof Kozlowski <k.kozlowski@...sung.com>

Best regards,
Krzysztof

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ