linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH] arm64: kconfig: allow support for memory failure handling
@ 2017-02-01 21:38 Tyler Baicar
  2017-02-03 16:27 ` Punit Agrawal
  2017-03-23 14:33 ` James Morse
  0 siblings, 2 replies; 7+ messages in thread
From: Tyler Baicar @ 2017-02-01 21:38 UTC (permalink / raw)
  To: catalin.marinas, will.deacon, linux-arm-kernel, linux-kernel
  Cc: Jonathan (Zhixiong) Zhang, Tyler Baicar

From: "Jonathan (Zhixiong) Zhang" <zjzhang@codeaurora.org>

If ACPI_APEI and MEMORY_FAILURE is configured, select
ACPI_APEI_MEMORY_FAILURE. This enables memory failure recovery
when such memory failure is reported through ACPI APEI. APEI
(ACPI Platform Error Interfaces) provides a means for the
platform to convey error information to the kernel.

Declare ARCH_SUPPORTS_MEMORY_FAILURE, as arm64 does support
memory failure recovery attempt.

Signed-off-by: Jonathan (Zhixiong) Zhang <zjzhang@codeaurora.org>
Signed-off-by: Tyler Baicar <tbaicar@codeaurora.org>
---
 arch/arm64/Kconfig | 2 ++
 1 file changed, 2 insertions(+)

diff --git a/arch/arm64/Kconfig b/arch/arm64/Kconfig
index f92778d..4cd12a0 100644
--- a/arch/arm64/Kconfig
+++ b/arch/arm64/Kconfig
@@ -15,6 +15,8 @@ config ARM64
 	select ARCH_HAS_SG_CHAIN
 	select ARCH_HAS_TICK_BROADCAST if GENERIC_CLOCKEVENTS_BROADCAST
 	select ARCH_USE_CMPXCHG_LOCKREF
+	select ACPI_APEI_MEMORY_FAILURE if ACPI_APEI && MEMORY_FAILURE
+	select ARCH_SUPPORTS_MEMORY_FAILURE
 	select ARCH_SUPPORTS_ATOMIC_RMW
 	select ARCH_SUPPORTS_NUMA_BALANCING
 	select ARCH_WANT_COMPAT_IPC_PARSE_VERSION
-- 
Qualcomm Datacenter Technologies, Inc. as an affiliate of Qualcomm Technologies, Inc.
Qualcomm Technologies, Inc. is a member of the Code Aurora Forum,
a Linux Foundation Collaborative Project.

^ permalink raw reply related	[flat|nested] 7+ messages in thread

* Re: [PATCH] arm64: kconfig: allow support for memory failure handling
  2017-02-01 21:38 [PATCH] arm64: kconfig: allow support for memory failure handling Tyler Baicar
@ 2017-02-03 16:27 ` Punit Agrawal
  2017-02-06 22:26   ` Baicar, Tyler
  2017-03-23 14:33 ` James Morse
  1 sibling, 1 reply; 7+ messages in thread
From: Punit Agrawal @ 2017-02-03 16:27 UTC (permalink / raw)
  To: Tyler Baicar
  Cc: catalin.marinas, will.deacon, linux-arm-kernel, linux-kernel,
	Jonathan (Zhixiong) Zhang

Tyler Baicar <tbaicar@codeaurora.org> writes:

> From: "Jonathan (Zhixiong) Zhang" <zjzhang@codeaurora.org>
>
> If ACPI_APEI and MEMORY_FAILURE is configured, select
> ACPI_APEI_MEMORY_FAILURE. This enables memory failure recovery
> when such memory failure is reported through ACPI APEI. APEI
> (ACPI Platform Error Interfaces) provides a means for the
> platform to convey error information to the kernel.
>
> Declare ARCH_SUPPORTS_MEMORY_FAILURE, as arm64 does support
> memory failure recovery attempt.
>
> Signed-off-by: Jonathan (Zhixiong) Zhang <zjzhang@codeaurora.org>
> Signed-off-by: Tyler Baicar <tbaicar@codeaurora.org>
> ---
>  arch/arm64/Kconfig | 2 ++
>  1 file changed, 2 insertions(+)
>
> diff --git a/arch/arm64/Kconfig b/arch/arm64/Kconfig
> index f92778d..4cd12a0 100644
> --- a/arch/arm64/Kconfig
> +++ b/arch/arm64/Kconfig
> @@ -15,6 +15,8 @@ config ARM64
>  	select ARCH_HAS_SG_CHAIN
>  	select ARCH_HAS_TICK_BROADCAST if GENERIC_CLOCKEVENTS_BROADCAST
>  	select ARCH_USE_CMPXCHG_LOCKREF
> +	select ACPI_APEI_MEMORY_FAILURE if ACPI_APEI && MEMORY_FAILURE
> +	select ARCH_SUPPORTS_MEMORY_FAILURE

Although enabling support for memory failure handling makes sense in the
architecture config, it feels out of place to select
ACPI_APEI_MEMORY_FAILURE here.

Maybe key it off of CONFIG_APEI?

Thanks,
Punit

>  	select ARCH_SUPPORTS_ATOMIC_RMW
>  	select ARCH_SUPPORTS_NUMA_BALANCING
>  	select ARCH_WANT_COMPAT_IPC_PARSE_VERSION

^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: [PATCH] arm64: kconfig: allow support for memory failure handling
  2017-02-03 16:27 ` Punit Agrawal
@ 2017-02-06 22:26   ` Baicar, Tyler
  2017-02-07 12:03     ` Punit Agrawal
  0 siblings, 1 reply; 7+ messages in thread
From: Baicar, Tyler @ 2017-02-06 22:26 UTC (permalink / raw)
  To: Punit Agrawal
  Cc: catalin.marinas, will.deacon, linux-arm-kernel, linux-kernel,
	Jonathan (Zhixiong) Zhang

Hello Punit,


On 2/3/2017 9:27 AM, Punit Agrawal wrote:
> Tyler Baicar <tbaicar@codeaurora.org> writes:
>
>> From: "Jonathan (Zhixiong) Zhang" <zjzhang@codeaurora.org>
>>
>> If ACPI_APEI and MEMORY_FAILURE is configured, select
>> ACPI_APEI_MEMORY_FAILURE. This enables memory failure recovery
>> when such memory failure is reported through ACPI APEI. APEI
>> (ACPI Platform Error Interfaces) provides a means for the
>> platform to convey error information to the kernel.
>>
>> Declare ARCH_SUPPORTS_MEMORY_FAILURE, as arm64 does support
>> memory failure recovery attempt.
>>
>> Signed-off-by: Jonathan (Zhixiong) Zhang <zjzhang@codeaurora.org>
>> Signed-off-by: Tyler Baicar <tbaicar@codeaurora.org>
>> ---
>>   arch/arm64/Kconfig | 2 ++
>>   1 file changed, 2 insertions(+)
>>
>> diff --git a/arch/arm64/Kconfig b/arch/arm64/Kconfig
>> index f92778d..4cd12a0 100644
>> --- a/arch/arm64/Kconfig
>> +++ b/arch/arm64/Kconfig
>> @@ -15,6 +15,8 @@ config ARM64
>>   	select ARCH_HAS_SG_CHAIN
>>   	select ARCH_HAS_TICK_BROADCAST if GENERIC_CLOCKEVENTS_BROADCAST
>>   	select ARCH_USE_CMPXCHG_LOCKREF
>> +	select ACPI_APEI_MEMORY_FAILURE if ACPI_APEI && MEMORY_FAILURE
>> +	select ARCH_SUPPORTS_MEMORY_FAILURE
> Although enabling support for memory failure handling makes sense in the
> architecture config, it feels out of place to select
> ACPI_APEI_MEMORY_FAILURE here.
>
> Maybe key it off of CONFIG_APEI?
Yes, I can move it there.

config ACPI_APEI
         bool "ACPI Platform Error Interface (APEI)"
         select MISC_FILESYSTEMS
         select PSTORE
         select UEFI_CPER
+        select ACPI_APEI_MEMORY_FAILURE if MEMORY_FAILURE
         depends on HAVE_ACPI_APEI

The ARCH_SUPPORTS_MEMORY_FAILURE should remain in arch/arm64/Kconfig 
though, correct?

Thanks,
Tyler

-- 
Qualcomm Datacenter Technologies, Inc. as an affiliate of Qualcomm Technologies, Inc.
Qualcomm Technologies, Inc. is a member of the Code Aurora Forum,
a Linux Foundation Collaborative Project.

^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: [PATCH] arm64: kconfig: allow support for memory failure handling
  2017-02-06 22:26   ` Baicar, Tyler
@ 2017-02-07 12:03     ` Punit Agrawal
  0 siblings, 0 replies; 7+ messages in thread
From: Punit Agrawal @ 2017-02-07 12:03 UTC (permalink / raw)
  To: Baicar, Tyler
  Cc: catalin.marinas, will.deacon, linux-arm-kernel, linux-kernel,
	Jonathan (Zhixiong) Zhang

"Baicar, Tyler" <tbaicar@codeaurora.org> writes:

> Hello Punit,
>
>
> On 2/3/2017 9:27 AM, Punit Agrawal wrote:
>> Tyler Baicar <tbaicar@codeaurora.org> writes:
>>
>>> From: "Jonathan (Zhixiong) Zhang" <zjzhang@codeaurora.org>
>>>
>>> If ACPI_APEI and MEMORY_FAILURE is configured, select
>>> ACPI_APEI_MEMORY_FAILURE. This enables memory failure recovery
>>> when such memory failure is reported through ACPI APEI. APEI
>>> (ACPI Platform Error Interfaces) provides a means for the
>>> platform to convey error information to the kernel.
>>>
>>> Declare ARCH_SUPPORTS_MEMORY_FAILURE, as arm64 does support
>>> memory failure recovery attempt.
>>>
>>> Signed-off-by: Jonathan (Zhixiong) Zhang <zjzhang@codeaurora.org>
>>> Signed-off-by: Tyler Baicar <tbaicar@codeaurora.org>
>>> ---
>>>   arch/arm64/Kconfig | 2 ++
>>>   1 file changed, 2 insertions(+)
>>>
>>> diff --git a/arch/arm64/Kconfig b/arch/arm64/Kconfig
>>> index f92778d..4cd12a0 100644
>>> --- a/arch/arm64/Kconfig
>>> +++ b/arch/arm64/Kconfig
>>> @@ -15,6 +15,8 @@ config ARM64
>>>   	select ARCH_HAS_SG_CHAIN
>>>   	select ARCH_HAS_TICK_BROADCAST if GENERIC_CLOCKEVENTS_BROADCAST
>>>   	select ARCH_USE_CMPXCHG_LOCKREF
>>> +	select ACPI_APEI_MEMORY_FAILURE if ACPI_APEI && MEMORY_FAILURE
>>> +	select ARCH_SUPPORTS_MEMORY_FAILURE
>> Although enabling support for memory failure handling makes sense in the
>> architecture config, it feels out of place to select
>> ACPI_APEI_MEMORY_FAILURE here.
>>
>> Maybe key it off of CONFIG_APEI?
> Yes, I can move it there.
>
> config ACPI_APEI
>         bool "ACPI Platform Error Interface (APEI)"
>         select MISC_FILESYSTEMS
>         select PSTORE
>         select UEFI_CPER
> +        select ACPI_APEI_MEMORY_FAILURE if MEMORY_FAILURE
>         depends on HAVE_ACPI_APEI
>

That's what I was suggesting - we'll see what the ACPI maintainers think
of the change.

> The ARCH_SUPPORTS_MEMORY_FAILURE should remain in arch/arm64/Kconfig
> though, correct?

Yes, that's right - as that's a feature the architecture is advertising
support for, it should stay in the arm64 Kconfig,

>
> Thanks,
> Tyler

^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: [PATCH] arm64: kconfig: allow support for memory failure handling
  2017-02-01 21:38 [PATCH] arm64: kconfig: allow support for memory failure handling Tyler Baicar
  2017-02-03 16:27 ` Punit Agrawal
@ 2017-03-23 14:33 ` James Morse
  2017-03-23 16:12   ` Punit Agrawal
  1 sibling, 1 reply; 7+ messages in thread
From: James Morse @ 2017-03-23 14:33 UTC (permalink / raw)
  To: Punit Agrawal
  Cc: Tyler Baicar, catalin.marinas, will.deacon, linux-arm-kernel,
	linux-kernel, Jonathan (Zhixiong) Zhang

Hi Punit,

On 01/02/17 21:38, Tyler Baicar wrote:
> From: "Jonathan (Zhixiong) Zhang" <zjzhang@codeaurora.org>
> 
> If ACPI_APEI and MEMORY_FAILURE is configured, select
> ACPI_APEI_MEMORY_FAILURE. This enables memory failure recovery
> when such memory failure is reported through ACPI APEI. APEI
> (ACPI Platform Error Interfaces) provides a means for the
> platform to convey error information to the kernel.
> 
> Declare ARCH_SUPPORTS_MEMORY_FAILURE, as arm64 does support
> memory failure recovery attempt.

Am I right in thinking we should wait for the hugepage issue you found with
hwpoison [0] to be fixed before arm64 can have ARCH_SUPPORTS_MEMORY_FAILURE?

(If so, can this patch become part of that series to they are obviously related!)

Thanks,

James

[0] https://www.spinics.net/lists/arm-kernel/msg568995.html




> diff --git a/arch/arm64/Kconfig b/arch/arm64/Kconfig
> index f92778d..4cd12a0 100644
> --- a/arch/arm64/Kconfig
> +++ b/arch/arm64/Kconfig
> @@ -15,6 +15,8 @@ config ARM64
>  	select ARCH_HAS_SG_CHAIN
>  	select ARCH_HAS_TICK_BROADCAST if GENERIC_CLOCKEVENTS_BROADCAST
>  	select ARCH_USE_CMPXCHG_LOCKREF
> +	select ACPI_APEI_MEMORY_FAILURE if ACPI_APEI && MEMORY_FAILURE
> +	select ARCH_SUPPORTS_MEMORY_FAILURE
>  	select ARCH_SUPPORTS_ATOMIC_RMW
>  	select ARCH_SUPPORTS_NUMA_BALANCING
>  	select ARCH_WANT_COMPAT_IPC_PARSE_VERSION
> 

^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: [PATCH] arm64: kconfig: allow support for memory failure handling
  2017-03-23 14:33 ` James Morse
@ 2017-03-23 16:12   ` Punit Agrawal
  2017-03-24 16:36     ` Baicar, Tyler
  0 siblings, 1 reply; 7+ messages in thread
From: Punit Agrawal @ 2017-03-23 16:12 UTC (permalink / raw)
  To: James Morse
  Cc: Tyler Baicar, catalin.marinas, will.deacon, linux-arm-kernel,
	linux-kernel, Jonathan (Zhixiong) Zhang



On 23/03/17 14:33, James Morse wrote:
> Hi Punit,
>
> On 01/02/17 21:38, Tyler Baicar wrote:
>> From: "Jonathan (Zhixiong) Zhang" <zjzhang@codeaurora.org>
>>
>> If ACPI_APEI and MEMORY_FAILURE is configured, select
>> ACPI_APEI_MEMORY_FAILURE. This enables memory failure recovery
>> when such memory failure is reported through ACPI APEI. APEI
>> (ACPI Platform Error Interfaces) provides a means for the
>> platform to convey error information to the kernel.
>>
>> Declare ARCH_SUPPORTS_MEMORY_FAILURE, as arm64 does support
>> memory failure recovery attempt.
>
> Am I right in thinking we should wait for the hugepage issue you found with
> hwpoison [0] to be fixed before arm64 can have ARCH_SUPPORTS_MEMORY_FAILURE?

We should at the least fix the huge_pte_offset() issue discovered in [0]
before we enable memory failure handling. Earlier today I posted a
RFC[1] fix for it based on Catalin's suggestion.

>
> (If so, can this patch become part of that series to they are obviously related!)

Good point - I can include the patches enabling memory failure handling
on ARM64 if Tyler's fine with it.

Thanks,
Punit

[1] https://lkml.org/lkml/2017/3/23/293

>
> Thanks,
>
> James
>
> [0] https://www.spinics.net/lists/arm-kernel/msg568995.html
>
>
>
>
>> diff --git a/arch/arm64/Kconfig b/arch/arm64/Kconfig
>> index f92778d..4cd12a0 100644
>> --- a/arch/arm64/Kconfig
>> +++ b/arch/arm64/Kconfig
>> @@ -15,6 +15,8 @@ config ARM64
>>      select ARCH_HAS_SG_CHAIN
>>      select ARCH_HAS_TICK_BROADCAST if GENERIC_CLOCKEVENTS_BROADCAST
>>      select ARCH_USE_CMPXCHG_LOCKREF
>> +    select ACPI_APEI_MEMORY_FAILURE if ACPI_APEI && MEMORY_FAILURE
>> +    select ARCH_SUPPORTS_MEMORY_FAILURE
>>      select ARCH_SUPPORTS_ATOMIC_RMW
>>      select ARCH_SUPPORTS_NUMA_BALANCING
>>      select ARCH_WANT_COMPAT_IPC_PARSE_VERSION
>>
>
>
>
IMPORTANT NOTICE: The contents of this email and any attachments are confidential and may also be privileged. If you are not the intended recipient, please notify the sender immediately and do not disclose the contents to any other person, use it for any purpose, or store or copy the information in any medium. Thank you.

^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: [PATCH] arm64: kconfig: allow support for memory failure handling
  2017-03-23 16:12   ` Punit Agrawal
@ 2017-03-24 16:36     ` Baicar, Tyler
  0 siblings, 0 replies; 7+ messages in thread
From: Baicar, Tyler @ 2017-03-24 16:36 UTC (permalink / raw)
  To: Punit Agrawal, James Morse
  Cc: catalin.marinas, will.deacon, linux-arm-kernel, linux-kernel,
	Jonathan (Zhixiong) Zhang

On 3/23/2017 10:12 AM, Punit Agrawal wrote:
>
>
> On 23/03/17 14:33, James Morse wrote:
>> Hi Punit,
>>
>> On 01/02/17 21:38, Tyler Baicar wrote:
>>> From: "Jonathan (Zhixiong) Zhang" <zjzhang@codeaurora.org>
>>>
>>> If ACPI_APEI and MEMORY_FAILURE is configured, select
>>> ACPI_APEI_MEMORY_FAILURE. This enables memory failure recovery
>>> when such memory failure is reported through ACPI APEI. APEI
>>> (ACPI Platform Error Interfaces) provides a means for the
>>> platform to convey error information to the kernel.
>>>
>>> Declare ARCH_SUPPORTS_MEMORY_FAILURE, as arm64 does support
>>> memory failure recovery attempt.
>>
>> Am I right in thinking we should wait for the hugepage issue you 
>> found with
>> hwpoison [0] to be fixed before arm64 can have 
>> ARCH_SUPPORTS_MEMORY_FAILURE?
>
> We should at the least fix the huge_pte_offset() issue discovered in [0]
> before we enable memory failure handling. Earlier today I posted a
> RFC[1] fix for it based on Catalin's suggestion.
>
>>
>> (If so, can this patch become part of that series to they are 
>> obviously related!)
>
> Good point - I can include the patches enabling memory failure handling
> on ARM64 if Tyler's fine with it.
That's fine with me!

Thanks,
Tyler
>
> Thanks,
> Punit
>
> [1] https://lkml.org/lkml/2017/3/23/293
>
>>
>> Thanks,
>>
>> James
>>
>> [0] https://www.spinics.net/lists/arm-kernel/msg568995.html
>>
>>
>>
>>
>>> diff --git a/arch/arm64/Kconfig b/arch/arm64/Kconfig
>>> index f92778d..4cd12a0 100644
>>> --- a/arch/arm64/Kconfig
>>> +++ b/arch/arm64/Kconfig
>>> @@ -15,6 +15,8 @@ config ARM64
>>>      select ARCH_HAS_SG_CHAIN
>>>      select ARCH_HAS_TICK_BROADCAST if GENERIC_CLOCKEVENTS_BROADCAST
>>>      select ARCH_USE_CMPXCHG_LOCKREF
>>> +    select ACPI_APEI_MEMORY_FAILURE if ACPI_APEI && MEMORY_FAILURE
>>> +    select ARCH_SUPPORTS_MEMORY_FAILURE
>>>      select ARCH_SUPPORTS_ATOMIC_RMW
>>>      select ARCH_SUPPORTS_NUMA_BALANCING
>>>      select ARCH_WANT_COMPAT_IPC_PARSE_VERSION
>>>
>>
>>
>>
> IMPORTANT NOTICE: The contents of this email and any attachments are 
> confidential and may also be privileged. If you are not the intended 
> recipient, please notify the sender immediately and do not disclose 
> the contents to any other person, use it for any purpose, or store or 
> copy the information in any medium. Thank you.

-- 
Qualcomm Datacenter Technologies, Inc. as an affiliate of Qualcomm Technologies, Inc.
Qualcomm Technologies, Inc. is a member of the Code Aurora Forum,
a Linux Foundation Collaborative Project.

^ permalink raw reply	[flat|nested] 7+ messages in thread

end of thread, other threads:[~2017-03-24 16:36 UTC | newest]

Thread overview: 7+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2017-02-01 21:38 [PATCH] arm64: kconfig: allow support for memory failure handling Tyler Baicar
2017-02-03 16:27 ` Punit Agrawal
2017-02-06 22:26   ` Baicar, Tyler
2017-02-07 12:03     ` Punit Agrawal
2017-03-23 14:33 ` James Morse
2017-03-23 16:12   ` Punit Agrawal
2017-03-24 16:36     ` Baicar, Tyler

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).