All of lore.kernel.org
 help / color / mirror / Atom feed
From: ebiederm@xmission.com (Eric W. Biederman)
To: Dave Young <dyoung@redhat.com>
Cc: Mark Rutland <mark.rutland@arm.com>,
	Andrew Morton <akpm@linux-foundation.org>,
	Ard Biesheuvel <ard.biesheuvel@linaro.org>,
	Catalin Marinas <catalin.marinas@arm.com>,
	x86@kernel.org, Will Deacon <will.deacon@arm.com>,
	linux-kernel@vger.kernel.org, linux-mm@kvack.org,
	Ingo Molnar <mingo@redhat.com>,
	Thomas Gleixner <tglx@linutronix.de>,
	"H. Peter Anvin" <hpa@zytor.com>,
	Joonsoo Kim <iamjoonsoo.kim@lge.com>,
	Laura Abbott <labbott@redhat.com>,
	kexec@lists.infradead.org, linux-arm-kernel@lists.infradead.org,
	Marek Szyprowski <m.szyprowski@samsung.com>
Subject: Re: [PATCHv4 07/10] kexec: Switch to __pa_symbol
Date: Wed, 30 Nov 2016 21:13:24 -0600	[thread overview]
Message-ID: <87polc7357.fsf@xmission.com> (raw)
In-Reply-To: <20161201024103.GA32438@dhcp-128-65.nay.redhat.com> (Dave Young's message of "Thu, 1 Dec 2016 10:41:03 +0800")

Dave Young <dyoung@redhat.com> writes:

> Hi, Laura
> On 11/29/16 at 10:55am, Laura Abbott wrote:
>> 
>> __pa_symbol is the correct api to get the physical address of kernel
>> symbols. Switch to it to allow for better debug checking.
>> 
>
> I assume __pa_symbol is faster than __pa, but it still need some testing
> on all arches which support kexec.
>
> But seems long long ago there is a commit e3ebadd95cb in the commit log
> I see below from:
> "we should deprecate __pa_symbol(), and preferably __pa() too - and
>  just use "virt_to_phys()" instead, which is is more readable and has
>  nicer semantics."
>
> But maybe in modern code __pa_symbol is prefered I may miss background.
> virt_to_phys still sounds more readable now for me though.

There has been a lot of history with the various definitions.
__pa_symbol used to be x86 specific.

Now what we have is that __pa_symbol is just __pa(RELOC_HIDE(x));

Now arguably that whole reloc hide thing should happen by architectures
having a non-inline version of __pa as was done in the commit you
mention.  But at this point there appears to be nothing wrong with
changing a __pa to a __pa_symbol it might make things a tad more
reliable depending on the implementation of __pa.

Acked-by: "Eric W. Biederman" <ebiederm@xmission.com>


Eric

>> Signed-off-by: Laura Abbott <labbott@redhat.com>
>> ---
>> Found during review of the kernel. Untested.
>> ---
>>  kernel/kexec_core.c | 2 +-
>>  1 file changed, 1 insertion(+), 1 deletion(-)
>> 
>> diff --git a/kernel/kexec_core.c b/kernel/kexec_core.c
>> index 5616755..e1b625e 100644
>> --- a/kernel/kexec_core.c
>> +++ b/kernel/kexec_core.c
>> @@ -1397,7 +1397,7 @@ void __weak arch_crash_save_vmcoreinfo(void)
>>  
>>  phys_addr_t __weak paddr_vmcoreinfo_note(void)
>>  {
>> -	return __pa((unsigned long)(char *)&vmcoreinfo_note);
>> +	return __pa_symbol((unsigned long)(char *)&vmcoreinfo_note);
>>  }
>>  
>>  static int __init crash_save_vmcoreinfo_init(void)
>> -- 
>> 2.7.4
>> 
>> 
>> _______________________________________________
>> kexec mailing list
>> kexec@lists.infradead.org
>> http://lists.infradead.org/mailman/listinfo/kexec
>
> Thanks
> Dave

_______________________________________________
kexec mailing list
kexec@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/kexec

WARNING: multiple messages have this Message-ID (diff)
From: ebiederm@xmission.com (Eric W. Biederman)
To: linux-arm-kernel@lists.infradead.org
Subject: [PATCHv4 07/10] kexec: Switch to __pa_symbol
Date: Wed, 30 Nov 2016 21:13:24 -0600	[thread overview]
Message-ID: <87polc7357.fsf@xmission.com> (raw)
In-Reply-To: <20161201024103.GA32438@dhcp-128-65.nay.redhat.com> (Dave Young's message of "Thu, 1 Dec 2016 10:41:03 +0800")

Dave Young <dyoung@redhat.com> writes:

> Hi, Laura
> On 11/29/16 at 10:55am, Laura Abbott wrote:
>> 
>> __pa_symbol is the correct api to get the physical address of kernel
>> symbols. Switch to it to allow for better debug checking.
>> 
>
> I assume __pa_symbol is faster than __pa, but it still need some testing
> on all arches which support kexec.
>
> But seems long long ago there is a commit e3ebadd95cb in the commit log
> I see below from:
> "we should deprecate __pa_symbol(), and preferably __pa() too - and
>  just use "virt_to_phys()" instead, which is is more readable and has
>  nicer semantics."
>
> But maybe in modern code __pa_symbol is prefered I may miss background.
> virt_to_phys still sounds more readable now for me though.

There has been a lot of history with the various definitions.
__pa_symbol used to be x86 specific.

Now what we have is that __pa_symbol is just __pa(RELOC_HIDE(x));

Now arguably that whole reloc hide thing should happen by architectures
having a non-inline version of __pa as was done in the commit you
mention.  But at this point there appears to be nothing wrong with
changing a __pa to a __pa_symbol it might make things a tad more
reliable depending on the implementation of __pa.

Acked-by: "Eric W. Biederman" <ebiederm@xmission.com>


Eric

>> Signed-off-by: Laura Abbott <labbott@redhat.com>
>> ---
>> Found during review of the kernel. Untested.
>> ---
>>  kernel/kexec_core.c | 2 +-
>>  1 file changed, 1 insertion(+), 1 deletion(-)
>> 
>> diff --git a/kernel/kexec_core.c b/kernel/kexec_core.c
>> index 5616755..e1b625e 100644
>> --- a/kernel/kexec_core.c
>> +++ b/kernel/kexec_core.c
>> @@ -1397,7 +1397,7 @@ void __weak arch_crash_save_vmcoreinfo(void)
>>  
>>  phys_addr_t __weak paddr_vmcoreinfo_note(void)
>>  {
>> -	return __pa((unsigned long)(char *)&vmcoreinfo_note);
>> +	return __pa_symbol((unsigned long)(char *)&vmcoreinfo_note);
>>  }
>>  
>>  static int __init crash_save_vmcoreinfo_init(void)
>> -- 
>> 2.7.4
>> 
>> 
>> _______________________________________________
>> kexec mailing list
>> kexec at lists.infradead.org
>> http://lists.infradead.org/mailman/listinfo/kexec
>
> Thanks
> Dave

WARNING: multiple messages have this Message-ID (diff)
From: ebiederm@xmission.com (Eric W. Biederman)
To: Dave Young <dyoung@redhat.com>
Cc: Laura Abbott <labbott@redhat.com>,
	Mark Rutland <mark.rutland@arm.com>,
	Ard Biesheuvel <ard.biesheuvel@linaro.org>,
	Will Deacon <will.deacon@arm.com>,
	Catalin Marinas <catalin.marinas@arm.com>,
	x86@kernel.org, kexec@lists.infradead.org,
	linux-kernel@vger.kernel.org, linux-mm@kvack.org,
	Ingo Molnar <mingo@redhat.com>, "H. Peter Anvin" <hpa@zytor.com>,
	Joonsoo Kim <iamjoonsoo.kim@lge.com>,
	Thomas Gleixner <tglx@linutronix.de>,
	Andrew Morton <akpm@linux-foundation.org>,
	linux-arm-kernel@lists.infradead.org,
	Marek Szyprowski <m.szyprowski@samsung.com>
Subject: Re: [PATCHv4 07/10] kexec: Switch to __pa_symbol
Date: Wed, 30 Nov 2016 21:13:24 -0600	[thread overview]
Message-ID: <87polc7357.fsf@xmission.com> (raw)
In-Reply-To: <20161201024103.GA32438@dhcp-128-65.nay.redhat.com> (Dave Young's message of "Thu, 1 Dec 2016 10:41:03 +0800")

Dave Young <dyoung@redhat.com> writes:

> Hi, Laura
> On 11/29/16 at 10:55am, Laura Abbott wrote:
>> 
>> __pa_symbol is the correct api to get the physical address of kernel
>> symbols. Switch to it to allow for better debug checking.
>> 
>
> I assume __pa_symbol is faster than __pa, but it still need some testing
> on all arches which support kexec.
>
> But seems long long ago there is a commit e3ebadd95cb in the commit log
> I see below from:
> "we should deprecate __pa_symbol(), and preferably __pa() too - and
>  just use "virt_to_phys()" instead, which is is more readable and has
>  nicer semantics."
>
> But maybe in modern code __pa_symbol is prefered I may miss background.
> virt_to_phys still sounds more readable now for me though.

There has been a lot of history with the various definitions.
__pa_symbol used to be x86 specific.

Now what we have is that __pa_symbol is just __pa(RELOC_HIDE(x));

Now arguably that whole reloc hide thing should happen by architectures
having a non-inline version of __pa as was done in the commit you
mention.  But at this point there appears to be nothing wrong with
changing a __pa to a __pa_symbol it might make things a tad more
reliable depending on the implementation of __pa.

Acked-by: "Eric W. Biederman" <ebiederm@xmission.com>


Eric

>> Signed-off-by: Laura Abbott <labbott@redhat.com>
>> ---
>> Found during review of the kernel. Untested.
>> ---
>>  kernel/kexec_core.c | 2 +-
>>  1 file changed, 1 insertion(+), 1 deletion(-)
>> 
>> diff --git a/kernel/kexec_core.c b/kernel/kexec_core.c
>> index 5616755..e1b625e 100644
>> --- a/kernel/kexec_core.c
>> +++ b/kernel/kexec_core.c
>> @@ -1397,7 +1397,7 @@ void __weak arch_crash_save_vmcoreinfo(void)
>>  
>>  phys_addr_t __weak paddr_vmcoreinfo_note(void)
>>  {
>> -	return __pa((unsigned long)(char *)&vmcoreinfo_note);
>> +	return __pa_symbol((unsigned long)(char *)&vmcoreinfo_note);
>>  }
>>  
>>  static int __init crash_save_vmcoreinfo_init(void)
>> -- 
>> 2.7.4
>> 
>> 
>> _______________________________________________
>> kexec mailing list
>> kexec@lists.infradead.org
>> http://lists.infradead.org/mailman/listinfo/kexec
>
> Thanks
> Dave

--
To unsubscribe, send a message with 'unsubscribe linux-mm' in
the body to majordomo@kvack.org.  For more info on Linux MM,
see: http://www.linux-mm.org/ .
Don't email: <a href=mailto:"dont@kvack.org"> email@kvack.org </a>

WARNING: multiple messages have this Message-ID (diff)
From: ebiederm@xmission.com (Eric W. Biederman)
To: Dave Young <dyoung@redhat.com>
Cc: Laura Abbott <labbott@redhat.com>,
	Mark Rutland <mark.rutland@arm.com>,
	Ard Biesheuvel <ard.biesheuvel@linaro.org>,
	Will Deacon <will.deacon@arm.com>,
	Catalin Marinas <catalin.marinas@arm.com>,
	x86@kernel.org, kexec@lists.infradead.org,
	linux-kernel@vger.kernel.org, linux-mm@kvack.org,
	Ingo Molnar <mingo@redhat.com>, "H. Peter Anvin" <hpa@zytor.com>,
	Joonsoo Kim <iamjoonsoo.kim@lge.com>,
	Thomas Gleixner <tglx@linutronix.de>,
	Andrew Morton <akpm@linux-foundation.org>,
	linux-arm-kernel@lists.infradead.org,
	Marek Szyprowski <m.szyprowski@samsung.com>
Subject: Re: [PATCHv4 07/10] kexec: Switch to __pa_symbol
Date: Wed, 30 Nov 2016 21:13:24 -0600	[thread overview]
Message-ID: <87polc7357.fsf@xmission.com> (raw)
In-Reply-To: <20161201024103.GA32438@dhcp-128-65.nay.redhat.com> (Dave Young's message of "Thu, 1 Dec 2016 10:41:03 +0800")

Dave Young <dyoung@redhat.com> writes:

> Hi, Laura
> On 11/29/16 at 10:55am, Laura Abbott wrote:
>> 
>> __pa_symbol is the correct api to get the physical address of kernel
>> symbols. Switch to it to allow for better debug checking.
>> 
>
> I assume __pa_symbol is faster than __pa, but it still need some testing
> on all arches which support kexec.
>
> But seems long long ago there is a commit e3ebadd95cb in the commit log
> I see below from:
> "we should deprecate __pa_symbol(), and preferably __pa() too - and
>  just use "virt_to_phys()" instead, which is is more readable and has
>  nicer semantics."
>
> But maybe in modern code __pa_symbol is prefered I may miss background.
> virt_to_phys still sounds more readable now for me though.

There has been a lot of history with the various definitions.
__pa_symbol used to be x86 specific.

Now what we have is that __pa_symbol is just __pa(RELOC_HIDE(x));

Now arguably that whole reloc hide thing should happen by architectures
having a non-inline version of __pa as was done in the commit you
mention.  But at this point there appears to be nothing wrong with
changing a __pa to a __pa_symbol it might make things a tad more
reliable depending on the implementation of __pa.

Acked-by: "Eric W. Biederman" <ebiederm@xmission.com>


Eric

>> Signed-off-by: Laura Abbott <labbott@redhat.com>
>> ---
>> Found during review of the kernel. Untested.
>> ---
>>  kernel/kexec_core.c | 2 +-
>>  1 file changed, 1 insertion(+), 1 deletion(-)
>> 
>> diff --git a/kernel/kexec_core.c b/kernel/kexec_core.c
>> index 5616755..e1b625e 100644
>> --- a/kernel/kexec_core.c
>> +++ b/kernel/kexec_core.c
>> @@ -1397,7 +1397,7 @@ void __weak arch_crash_save_vmcoreinfo(void)
>>  
>>  phys_addr_t __weak paddr_vmcoreinfo_note(void)
>>  {
>> -	return __pa((unsigned long)(char *)&vmcoreinfo_note);
>> +	return __pa_symbol((unsigned long)(char *)&vmcoreinfo_note);
>>  }
>>  
>>  static int __init crash_save_vmcoreinfo_init(void)
>> -- 
>> 2.7.4
>> 
>> 
>> _______________________________________________
>> kexec mailing list
>> kexec@lists.infradead.org
>> http://lists.infradead.org/mailman/listinfo/kexec
>
> Thanks
> Dave

  reply	other threads:[~2016-12-01  3:13 UTC|newest]

Thread overview: 130+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2016-11-29 18:55 [PATCHv4 00/10] CONFIG_DEBUG_VIRTUAL for arm64 Laura Abbott
2016-11-29 18:55 ` Laura Abbott
2016-11-29 18:55 ` Laura Abbott
2016-11-29 18:55 ` Laura Abbott
2016-11-29 18:55 ` [PATCHv4 01/10] lib/Kconfig.debug: Add ARCH_HAS_DEBUG_VIRTUAL Laura Abbott
2016-11-29 18:55   ` Laura Abbott
2016-11-29 18:55   ` Laura Abbott
2016-11-29 18:55 ` [PATCHv4 02/10] mm/cma: Cleanup highmem check Laura Abbott
2016-11-29 18:55   ` Laura Abbott
2016-11-29 18:55   ` Laura Abbott
2016-11-29 18:55 ` [PATCHv4 03/10] arm64: Move some macros under #ifndef __ASSEMBLY__ Laura Abbott
2016-11-29 18:55   ` Laura Abbott
2016-11-29 18:55   ` Laura Abbott
2016-11-29 18:55 ` [PATCHv4 04/10] arm64: Add cast for virt_to_pfn Laura Abbott
2016-11-29 18:55   ` Laura Abbott
2016-11-29 18:55   ` Laura Abbott
2016-11-29 18:55 ` [PATCHv4 05/10] arm64: Use __pa_symbol for kernel symbols Laura Abbott
2016-11-29 18:55   ` Laura Abbott
2016-11-29 18:55   ` Laura Abbott
2016-11-30 17:17   ` Catalin Marinas
2016-11-30 17:17     ` Catalin Marinas
2016-11-30 17:17     ` Catalin Marinas
2016-12-01 12:04   ` James Morse
2016-12-01 12:04     ` James Morse
2016-12-01 12:04     ` James Morse
2016-12-06 16:08     ` Mark Rutland
2016-12-06 16:08       ` Mark Rutland
2016-12-06 16:08       ` Mark Rutland
2016-12-06  0:50   ` Florian Fainelli
2016-12-06  0:50     ` Florian Fainelli
2016-12-06  0:50     ` Florian Fainelli
2016-12-06 11:46     ` Catalin Marinas
2016-12-06 11:46       ` Catalin Marinas
2016-12-06 11:46       ` Catalin Marinas
2016-12-06 17:02   ` Mark Rutland
2016-12-06 17:02     ` Mark Rutland
2016-12-06 17:02     ` Mark Rutland
2016-12-06 19:12     ` Laura Abbott
2016-12-06 19:12       ` Laura Abbott
2016-12-06 19:12       ` Laura Abbott
2016-11-29 18:55 ` [PATCHv4 06/10] xen: Switch to using __pa_symbol Laura Abbott
2016-11-29 18:55 ` Laura Abbott
2016-11-29 18:55   ` Laura Abbott
2016-11-29 18:55   ` Laura Abbott
2016-11-29 22:26   ` Boris Ostrovsky
2016-11-29 22:26   ` Boris Ostrovsky
2016-11-29 22:26     ` Boris Ostrovsky
2016-11-29 22:26     ` Boris Ostrovsky
2016-11-29 22:42     ` Laura Abbott
2016-11-29 22:42       ` Laura Abbott
2016-11-29 22:42       ` Laura Abbott
2016-11-29 22:42     ` Laura Abbott
2016-11-29 18:55 ` [PATCHv4 07/10] kexec: Switch to __pa_symbol Laura Abbott
2016-11-29 18:55   ` Laura Abbott
2016-11-29 18:55   ` Laura Abbott
2016-11-29 18:55   ` Laura Abbott
2016-12-01  2:41   ` Dave Young
2016-12-01  2:41     ` Dave Young
2016-12-01  2:41     ` Dave Young
2016-12-01  2:41     ` Dave Young
2016-12-01  3:13     ` Eric W. Biederman [this message]
2016-12-01  3:13       ` Eric W. Biederman
2016-12-01  3:13       ` Eric W. Biederman
2016-12-01  3:13       ` Eric W. Biederman
2016-12-01  4:27       ` Dave Young
2016-12-01  4:27         ` Dave Young
2016-12-01  4:27         ` Dave Young
2016-12-01  4:27         ` Dave Young
2016-11-29 18:55 ` [PATCHv4 08/10] mm/kasan: Switch to using __pa_symbol and lm_alias Laura Abbott
2016-11-29 18:55   ` Laura Abbott
2016-11-29 18:55   ` Laura Abbott
2016-12-01 11:36   ` Andrey Ryabinin
2016-12-01 11:36     ` Andrey Ryabinin
2016-12-01 11:36     ` Andrey Ryabinin
2016-12-01 19:10     ` Laura Abbott
2016-12-01 19:10       ` Laura Abbott
2016-12-01 19:10       ` Laura Abbott
2016-12-06 17:25     ` Mark Rutland
2016-12-06 17:25       ` Mark Rutland
2016-12-06 17:25       ` Mark Rutland
2016-12-06 17:44   ` Mark Rutland
2016-12-06 17:44     ` Mark Rutland
2016-12-06 17:44     ` Mark Rutland
2016-12-06 19:18   ` Mark Rutland
2016-12-06 19:18     ` Mark Rutland
2016-12-06 19:18     ` Mark Rutland
2016-11-29 18:55 ` [PATCHv4 09/10] mm/usercopy: Switch to using lm_alias Laura Abbott
2016-11-29 18:55   ` Laura Abbott
2016-11-29 18:55   ` Laura Abbott
2016-11-29 19:39   ` Kees Cook
2016-11-29 19:39     ` Kees Cook
2016-11-29 19:39     ` Kees Cook
2016-12-06 18:18     ` Mark Rutland
2016-12-06 18:18       ` Mark Rutland
2016-12-06 18:18       ` Mark Rutland
2016-12-06 20:10       ` Kees Cook
2016-12-06 20:10         ` Kees Cook
2016-12-06 20:10         ` Kees Cook
2016-12-07 13:57         ` Mark Rutland
2016-12-07 13:57           ` Mark Rutland
2016-12-07 13:57           ` Mark Rutland
2016-12-06 18:20   ` Mark Rutland
2016-12-06 18:20     ` Mark Rutland
2016-12-06 18:20     ` Mark Rutland
2016-11-29 18:55 ` [PATCHv4 10/10] arm64: Add support for CONFIG_DEBUG_VIRTUAL Laura Abbott
2016-11-29 18:55   ` Laura Abbott
2016-11-29 18:55   ` Laura Abbott
2016-12-06 18:58   ` Mark Rutland
2016-12-06 18:58     ` Mark Rutland
2016-12-06 18:58     ` Mark Rutland
2016-12-06 19:53 ` [PATCH 0/3] ARM: " Florian Fainelli
2016-12-06 19:53   ` Florian Fainelli
2016-12-06 19:53   ` [PATCH 1/3] ARM: Define KERNEL_START and KERNEL_END Florian Fainelli
2016-12-06 19:53     ` Florian Fainelli
2016-12-06 22:43     ` Chris Brandt
2016-12-06 22:43       ` Chris Brandt
2016-12-06 22:47       ` Florian Fainelli
2016-12-06 22:47         ` Florian Fainelli
2016-12-07  6:11     ` kbuild test robot
2016-12-07  6:11       ` kbuild test robot
2016-12-06 19:53   ` [PATCH 2/3] ARM: Utilize __pa_symbol in lieu of __pa Florian Fainelli
2016-12-06 19:53     ` Florian Fainelli
2016-12-06 19:53   ` [PATCH 3/3] ARM: Add support for CONFIG_DEBUG_VIRTUAL Florian Fainelli
2016-12-06 19:53     ` Florian Fainelli
2016-12-06 20:42     ` Florian Fainelli
2016-12-06 20:42       ` Florian Fainelli
2016-12-07  2:00     ` Laura Abbott
2016-12-07  2:00       ` Laura Abbott
2016-12-07  2:24       ` Florian Fainelli
2016-12-07  2:24         ` Florian Fainelli

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=87polc7357.fsf@xmission.com \
    --to=ebiederm@xmission.com \
    --cc=akpm@linux-foundation.org \
    --cc=ard.biesheuvel@linaro.org \
    --cc=catalin.marinas@arm.com \
    --cc=dyoung@redhat.com \
    --cc=hpa@zytor.com \
    --cc=iamjoonsoo.kim@lge.com \
    --cc=kexec@lists.infradead.org \
    --cc=labbott@redhat.com \
    --cc=linux-arm-kernel@lists.infradead.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-mm@kvack.org \
    --cc=m.szyprowski@samsung.com \
    --cc=mark.rutland@arm.com \
    --cc=mingo@redhat.com \
    --cc=tglx@linutronix.de \
    --cc=will.deacon@arm.com \
    --cc=x86@kernel.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.