All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH] efi: add conditional include of asm/early_ioremap.h
@ 2016-01-10 20:04 Ard Biesheuvel
       [not found] ` <1452456249-2974-1-git-send-email-ard.biesheuvel-QSEj5FYQhm4dnm+yROfE0A@public.gmane.org>
  0 siblings, 1 reply; 16+ messages in thread
From: Ard Biesheuvel @ 2016-01-10 20:04 UTC (permalink / raw)
  To: linux-efi-u79uwXL29TY76Z2rM5mHXA,
	matt-mF/unelCI9GS6iBeEJttW/XRex20P6io,
	linux-0h96xk9xTtrk1uMJSBkQmQ
  Cc: Ard Biesheuvel, Will Deacon

The code in efi.c uses early_memremap(), but relies on a transitive
include rather than including asm/early_ioremap.h directly.
Unfortunately, this header does not exist on ia64, so it cannot be
included directly.

Commit f7d924894265 ("arm64/efi: refactor EFI init and runtime code
for reuse by 32-bit ARM") attempted to work around this by including
asm/efi.h, which transitively includes asm/early_ioremap.h on most
architectures. However, since asm/efi.h does not exist on ia64 either,
this is not much of an improvement.

So instead, just include asm/early_ioremap.h directly, unless CONFIG_IA64
is defined.

Fixes: f7d924894265 ("arm64/efi: refactor EFI init and runtime code for reuse by 32-bit ARM")
Cc: Will Deacon <will.deacon-5wv7dgnIgG8@public.gmane.org>
Reported-by: Guenter Roeck <linux-0h96xk9xTtrk1uMJSBkQmQ@public.gmane.org>
Signed-off-by: Ard Biesheuvel <ard.biesheuvel-QSEj5FYQhm4dnm+yROfE0A@public.gmane.org>
---
 drivers/firmware/efi/efi.c | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

diff --git a/drivers/firmware/efi/efi.c b/drivers/firmware/efi/efi.c
index cffa89b3317b..53f71177824f 100644
--- a/drivers/firmware/efi/efi.c
+++ b/drivers/firmware/efi/efi.c
@@ -25,7 +25,9 @@
 #include <linux/io.h>
 #include <linux/platform_device.h>
 
-#include <asm/efi.h>
+#ifndef CONFIG_IA64
+#include <asm/early_ioremap.h>
+#endif
 
 struct efi __read_mostly efi = {
 	.mps			= EFI_INVALID_TABLE_ADDR,
-- 
1.9.1

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

* Re: [PATCH] efi: add conditional include of asm/early_ioremap.h
       [not found] ` <1452456249-2974-1-git-send-email-ard.biesheuvel-QSEj5FYQhm4dnm+yROfE0A@public.gmane.org>
@ 2016-01-10 20:13   ` Guenter Roeck
  2016-01-11 14:40     ` Matt Fleming
  1 sibling, 0 replies; 16+ messages in thread
From: Guenter Roeck @ 2016-01-10 20:13 UTC (permalink / raw)
  To: Ard Biesheuvel, linux-efi-u79uwXL29TY76Z2rM5mHXA,
	matt-mF/unelCI9GS6iBeEJttW/XRex20P6io
  Cc: Will Deacon

On 01/10/2016 12:04 PM, Ard Biesheuvel wrote:
> The code in efi.c uses early_memremap(), but relies on a transitive
> include rather than including asm/early_ioremap.h directly.
> Unfortunately, this header does not exist on ia64, so it cannot be
> included directly.
>
> Commit f7d924894265 ("arm64/efi: refactor EFI init and runtime code
> for reuse by 32-bit ARM") attempted to work around this by including
> asm/efi.h, which transitively includes asm/early_ioremap.h on most
> architectures. However, since asm/efi.h does not exist on ia64 either,
> this is not much of an improvement.
>
> So instead, just include asm/early_ioremap.h directly, unless CONFIG_IA64
> is defined.
>
> Fixes: f7d924894265 ("arm64/efi: refactor EFI init and runtime code for reuse by 32-bit ARM")
> Cc: Will Deacon <will.deacon-5wv7dgnIgG8@public.gmane.org>
> Reported-by: Guenter Roeck <linux-0h96xk9xTtrk1uMJSBkQmQ@public.gmane.org>

Tested-by: Guenter Roeck <linux-0h96xk9xTtrk1uMJSBkQmQ@public.gmane.org>

> Signed-off-by: Ard Biesheuvel <ard.biesheuvel-QSEj5FYQhm4dnm+yROfE0A@public.gmane.org>
> ---
>   drivers/firmware/efi/efi.c | 4 +++-
>   1 file changed, 3 insertions(+), 1 deletion(-)
>
> diff --git a/drivers/firmware/efi/efi.c b/drivers/firmware/efi/efi.c
> index cffa89b3317b..53f71177824f 100644
> --- a/drivers/firmware/efi/efi.c
> +++ b/drivers/firmware/efi/efi.c
> @@ -25,7 +25,9 @@
>   #include <linux/io.h>
>   #include <linux/platform_device.h>
>
> -#include <asm/efi.h>
> +#ifndef CONFIG_IA64
> +#include <asm/early_ioremap.h>
> +#endif
>
>   struct efi __read_mostly efi = {
>   	.mps			= EFI_INVALID_TABLE_ADDR,
>

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

* Re: [PATCH] efi: add conditional include of asm/early_ioremap.h
       [not found] ` <1452456249-2974-1-git-send-email-ard.biesheuvel-QSEj5FYQhm4dnm+yROfE0A@public.gmane.org>
@ 2016-01-11 14:40     ` Matt Fleming
  2016-01-11 14:40     ` Matt Fleming
  1 sibling, 0 replies; 16+ messages in thread
From: Matt Fleming @ 2016-01-11 14:40 UTC (permalink / raw)
  To: Ard Biesheuvel
  Cc: linux-efi-u79uwXL29TY76Z2rM5mHXA, linux-0h96xk9xTtrk1uMJSBkQmQ,
	Will Deacon, Fenghua Yu, Tony Luck,
	linux-ia64-u79uwXL29TY76Z2rM5mHXA

(Cc'ing ia64 maintainers)

On Sun, 10 Jan, at 09:04:09PM, Ard Biesheuvel wrote:
> The code in efi.c uses early_memremap(), but relies on a transitive
> include rather than including asm/early_ioremap.h directly.
> Unfortunately, this header does not exist on ia64, so it cannot be
> included directly.
> 
> Commit f7d924894265 ("arm64/efi: refactor EFI init and runtime code
> for reuse by 32-bit ARM") attempted to work around this by including
> asm/efi.h, which transitively includes asm/early_ioremap.h on most
> architectures. However, since asm/efi.h does not exist on ia64 either,
> this is not much of an improvement.
> 
> So instead, just include asm/early_ioremap.h directly, unless CONFIG_IA64
> is defined.
> 
> Fixes: f7d924894265 ("arm64/efi: refactor EFI init and runtime code for reuse by 32-bit ARM")
> Cc: Will Deacon <will.deacon-5wv7dgnIgG8@public.gmane.org>
> Reported-by: Guenter Roeck <linux-0h96xk9xTtrk1uMJSBkQmQ@public.gmane.org>
> Signed-off-by: Ard Biesheuvel <ard.biesheuvel-QSEj5FYQhm4dnm+yROfE0A@public.gmane.org>
> ---
>  drivers/firmware/efi/efi.c | 4 +++-
>  1 file changed, 3 insertions(+), 1 deletion(-)
> 
> diff --git a/drivers/firmware/efi/efi.c b/drivers/firmware/efi/efi.c
> index cffa89b3317b..53f71177824f 100644
> --- a/drivers/firmware/efi/efi.c
> +++ b/drivers/firmware/efi/efi.c
> @@ -25,7 +25,9 @@
>  #include <linux/io.h>
>  #include <linux/platform_device.h>
>  
> -#include <asm/efi.h>
> +#ifndef CONFIG_IA64
> +#include <asm/early_ioremap.h>
> +#endif
>  
>  struct efi __read_mostly efi = {
>  	.mps			= EFI_INVALID_TABLE_ADDR,

I certainly can't think of a better way to fix this right now. Tony,
Fenghua do you guys have any suggestions?

Reviewed-by: Matt Fleming <matt-mF/unelCI9GS6iBeEJttW/XRex20P6io@public.gmane.org>

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

* Re: [PATCH] efi: add conditional include of asm/early_ioremap.h
@ 2016-01-11 14:40     ` Matt Fleming
  0 siblings, 0 replies; 16+ messages in thread
From: Matt Fleming @ 2016-01-11 14:40 UTC (permalink / raw)
  To: Ard Biesheuvel
  Cc: linux-efi-u79uwXL29TY76Z2rM5mHXA, linux-0h96xk9xTtrk1uMJSBkQmQ,
	Will Deacon, Fenghua Yu, Tony Luck,
	linux-ia64-u79uwXL29TY76Z2rM5mHXA

(Cc'ing ia64 maintainers)

On Sun, 10 Jan, at 09:04:09PM, Ard Biesheuvel wrote:
> The code in efi.c uses early_memremap(), but relies on a transitive
> include rather than including asm/early_ioremap.h directly.
> Unfortunately, this header does not exist on ia64, so it cannot be
> included directly.
> 
> Commit f7d924894265 ("arm64/efi: refactor EFI init and runtime code
> for reuse by 32-bit ARM") attempted to work around this by including
> asm/efi.h, which transitively includes asm/early_ioremap.h on most
> architectures. However, since asm/efi.h does not exist on ia64 either,
> this is not much of an improvement.
> 
> So instead, just include asm/early_ioremap.h directly, unless CONFIG_IA64
> is defined.
> 
> Fixes: f7d924894265 ("arm64/efi: refactor EFI init and runtime code for reuse by 32-bit ARM")
> Cc: Will Deacon <will.deacon@arm.com>
> Reported-by: Guenter Roeck <linux@roeck-us.net>
> Signed-off-by: Ard Biesheuvel <ard.biesheuvel@linaro.org>
> ---
>  drivers/firmware/efi/efi.c | 4 +++-
>  1 file changed, 3 insertions(+), 1 deletion(-)
> 
> diff --git a/drivers/firmware/efi/efi.c b/drivers/firmware/efi/efi.c
> index cffa89b3317b..53f71177824f 100644
> --- a/drivers/firmware/efi/efi.c
> +++ b/drivers/firmware/efi/efi.c
> @@ -25,7 +25,9 @@
>  #include <linux/io.h>
>  #include <linux/platform_device.h>
>  
> -#include <asm/efi.h>
> +#ifndef CONFIG_IA64
> +#include <asm/early_ioremap.h>
> +#endif
>  
>  struct efi __read_mostly efi = {
>  	.mps			= EFI_INVALID_TABLE_ADDR,

I certainly can't think of a better way to fix this right now. Tony,
Fenghua do you guys have any suggestions?

Reviewed-by: Matt Fleming <matt@codeblueprint.co.uk>

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

* Re: [PATCH] efi: add conditional include of asm/early_ioremap.h
  2016-01-11 14:40     ` Matt Fleming
@ 2016-01-11 16:15       ` Guenter Roeck
  -1 siblings, 0 replies; 16+ messages in thread
From: Guenter Roeck @ 2016-01-11 16:15 UTC (permalink / raw)
  To: Matt Fleming, Ard Biesheuvel
  Cc: linux-efi, Will Deacon, Fenghua Yu, Tony Luck, linux-ia64

On 01/11/2016 06:40 AM, Matt Fleming wrote:
> (Cc'ing ia64 maintainers)
>
> On Sun, 10 Jan, at 09:04:09PM, Ard Biesheuvel wrote:
>> The code in efi.c uses early_memremap(), but relies on a transitive
>> include rather than including asm/early_ioremap.h directly.
>> Unfortunately, this header does not exist on ia64, so it cannot be
>> included directly.
>>
>> Commit f7d924894265 ("arm64/efi: refactor EFI init and runtime code
>> for reuse by 32-bit ARM") attempted to work around this by including
>> asm/efi.h, which transitively includes asm/early_ioremap.h on most
>> architectures. However, since asm/efi.h does not exist on ia64 either,
>> this is not much of an improvement.
>>
>> So instead, just include asm/early_ioremap.h directly, unless CONFIG_IA64
>> is defined.
>>
>> Fixes: f7d924894265 ("arm64/efi: refactor EFI init and runtime code for reuse by 32-bit ARM")
>> Cc: Will Deacon <will.deacon@arm.com>
>> Reported-by: Guenter Roeck <linux@roeck-us.net>
>> Signed-off-by: Ard Biesheuvel <ard.biesheuvel@linaro.org>
>> ---
>>   drivers/firmware/efi/efi.c | 4 +++-
>>   1 file changed, 3 insertions(+), 1 deletion(-)
>>
>> diff --git a/drivers/firmware/efi/efi.c b/drivers/firmware/efi/efi.c
>> index cffa89b3317b..53f71177824f 100644
>> --- a/drivers/firmware/efi/efi.c
>> +++ b/drivers/firmware/efi/efi.c
>> @@ -25,7 +25,9 @@
>>   #include <linux/io.h>
>>   #include <linux/platform_device.h>
>>
>> -#include <asm/efi.h>
>> +#ifndef CONFIG_IA64
>> +#include <asm/early_ioremap.h>
>> +#endif
>>
>>   struct efi __read_mostly efi = {
>>   	.mps			= EFI_INVALID_TABLE_ADDR,
>
> I certainly can't think of a better way to fix this right now. Tony,
> Fenghua do you guys have any suggestions?
>

How about including asm/early_ioremap.h from arch/arm/include/asm/io.h,
as it is done by arm64 and x86 ?

Guenter


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

* Re: [PATCH] efi: add conditional include of asm/early_ioremap.h
@ 2016-01-11 16:15       ` Guenter Roeck
  0 siblings, 0 replies; 16+ messages in thread
From: Guenter Roeck @ 2016-01-11 16:15 UTC (permalink / raw)
  To: Matt Fleming, Ard Biesheuvel
  Cc: linux-efi, Will Deacon, Fenghua Yu, Tony Luck, linux-ia64

On 01/11/2016 06:40 AM, Matt Fleming wrote:
> (Cc'ing ia64 maintainers)
>
> On Sun, 10 Jan, at 09:04:09PM, Ard Biesheuvel wrote:
>> The code in efi.c uses early_memremap(), but relies on a transitive
>> include rather than including asm/early_ioremap.h directly.
>> Unfortunately, this header does not exist on ia64, so it cannot be
>> included directly.
>>
>> Commit f7d924894265 ("arm64/efi: refactor EFI init and runtime code
>> for reuse by 32-bit ARM") attempted to work around this by including
>> asm/efi.h, which transitively includes asm/early_ioremap.h on most
>> architectures. However, since asm/efi.h does not exist on ia64 either,
>> this is not much of an improvement.
>>
>> So instead, just include asm/early_ioremap.h directly, unless CONFIG_IA64
>> is defined.
>>
>> Fixes: f7d924894265 ("arm64/efi: refactor EFI init and runtime code for reuse by 32-bit ARM")
>> Cc: Will Deacon <will.deacon@arm.com>
>> Reported-by: Guenter Roeck <linux@roeck-us.net>
>> Signed-off-by: Ard Biesheuvel <ard.biesheuvel@linaro.org>
>> ---
>>   drivers/firmware/efi/efi.c | 4 +++-
>>   1 file changed, 3 insertions(+), 1 deletion(-)
>>
>> diff --git a/drivers/firmware/efi/efi.c b/drivers/firmware/efi/efi.c
>> index cffa89b3317b..53f71177824f 100644
>> --- a/drivers/firmware/efi/efi.c
>> +++ b/drivers/firmware/efi/efi.c
>> @@ -25,7 +25,9 @@
>>   #include <linux/io.h>
>>   #include <linux/platform_device.h>
>>
>> -#include <asm/efi.h>
>> +#ifndef CONFIG_IA64
>> +#include <asm/early_ioremap.h>
>> +#endif
>>
>>   struct efi __read_mostly efi = {
>>   	.mps			= EFI_INVALID_TABLE_ADDR,
>
> I certainly can't think of a better way to fix this right now. Tony,
> Fenghua do you guys have any suggestions?
>

How about including asm/early_ioremap.h from arch/arm/include/asm/io.h,
as it is done by arm64 and x86 ?

Guenter


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

* Re: [PATCH] efi: add conditional include of asm/early_ioremap.h
       [not found]       ` <5693D52E.9090407-0h96xk9xTtrk1uMJSBkQmQ@public.gmane.org>
@ 2016-01-11 17:35           ` Ard Biesheuvel
  0 siblings, 0 replies; 16+ messages in thread
From: Ard Biesheuvel @ 2016-01-11 17:35 UTC (permalink / raw)
  To: Guenter Roeck, Williams, Dan J
  Cc: Matt Fleming, linux-efi-u79uwXL29TY76Z2rM5mHXA, Will Deacon,
	Fenghua Yu, Tony Luck, linux-ia64-u79uwXL29TY76Z2rM5mHXA

(+ Dan)

On 11 January 2016 at 17:15, Guenter Roeck <linux-0h96xk9xTtrk1uMJSBkQmQ@public.gmane.org> wrote:
> On 01/11/2016 06:40 AM, Matt Fleming wrote:
>>
>> (Cc'ing ia64 maintainers)
>>
>> On Sun, 10 Jan, at 09:04:09PM, Ard Biesheuvel wrote:
>>>
>>> The code in efi.c uses early_memremap(), but relies on a transitive
>>> include rather than including asm/early_ioremap.h directly.
>>> Unfortunately, this header does not exist on ia64, so it cannot be
>>> included directly.
>>>
>>> Commit f7d924894265 ("arm64/efi: refactor EFI init and runtime code
>>> for reuse by 32-bit ARM") attempted to work around this by including
>>> asm/efi.h, which transitively includes asm/early_ioremap.h on most
>>> architectures. However, since asm/efi.h does not exist on ia64 either,
>>> this is not much of an improvement.
>>>
>>> So instead, just include asm/early_ioremap.h directly, unless CONFIG_IA64
>>> is defined.
>>>
>>> Fixes: f7d924894265 ("arm64/efi: refactor EFI init and runtime code for
>>> reuse by 32-bit ARM")
>>> Cc: Will Deacon <will.deacon-5wv7dgnIgG8@public.gmane.org>
>>> Reported-by: Guenter Roeck <linux-0h96xk9xTtrk1uMJSBkQmQ@public.gmane.org>
>>> Signed-off-by: Ard Biesheuvel <ard.biesheuvel-QSEj5FYQhm4dnm+yROfE0A@public.gmane.org>
>>> ---
>>>   drivers/firmware/efi/efi.c | 4 +++-
>>>   1 file changed, 3 insertions(+), 1 deletion(-)
>>>
>>> diff --git a/drivers/firmware/efi/efi.c b/drivers/firmware/efi/efi.c
>>> index cffa89b3317b..53f71177824f 100644
>>> --- a/drivers/firmware/efi/efi.c
>>> +++ b/drivers/firmware/efi/efi.c
>>> @@ -25,7 +25,9 @@
>>>   #include <linux/io.h>
>>>   #include <linux/platform_device.h>
>>>
>>> -#include <asm/efi.h>
>>> +#ifndef CONFIG_IA64
>>> +#include <asm/early_ioremap.h>
>>> +#endif
>>>
>>>   struct efi __read_mostly efi = {
>>>         .mps                    = EFI_INVALID_TABLE_ADDR,
>>
>>
>> I certainly can't think of a better way to fix this right now. Tony,
>> Fenghua do you guys have any suggestions?
>>
>
> How about including asm/early_ioremap.h from arch/arm/include/asm/io.h,
> as it is done by arm64 and x86 ?
>

That would work as well, but it does not address how early_memremap()
is so poorly defined. I think the correct way would be to add the
include unconditionally, and move ia64's definition to a new ia64
version of early_ioremap.h

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

* Re: [PATCH] efi: add conditional include of asm/early_ioremap.h
@ 2016-01-11 17:35           ` Ard Biesheuvel
  0 siblings, 0 replies; 16+ messages in thread
From: Ard Biesheuvel @ 2016-01-11 17:35 UTC (permalink / raw)
  To: Guenter Roeck, Williams, Dan J
  Cc: Matt Fleming, linux-efi-u79uwXL29TY76Z2rM5mHXA, Will Deacon,
	Fenghua Yu, Tony Luck, linux-ia64-u79uwXL29TY76Z2rM5mHXA

(+ Dan)

On 11 January 2016 at 17:15, Guenter Roeck <linux@roeck-us.net> wrote:
> On 01/11/2016 06:40 AM, Matt Fleming wrote:
>>
>> (Cc'ing ia64 maintainers)
>>
>> On Sun, 10 Jan, at 09:04:09PM, Ard Biesheuvel wrote:
>>>
>>> The code in efi.c uses early_memremap(), but relies on a transitive
>>> include rather than including asm/early_ioremap.h directly.
>>> Unfortunately, this header does not exist on ia64, so it cannot be
>>> included directly.
>>>
>>> Commit f7d924894265 ("arm64/efi: refactor EFI init and runtime code
>>> for reuse by 32-bit ARM") attempted to work around this by including
>>> asm/efi.h, which transitively includes asm/early_ioremap.h on most
>>> architectures. However, since asm/efi.h does not exist on ia64 either,
>>> this is not much of an improvement.
>>>
>>> So instead, just include asm/early_ioremap.h directly, unless CONFIG_IA64
>>> is defined.
>>>
>>> Fixes: f7d924894265 ("arm64/efi: refactor EFI init and runtime code for
>>> reuse by 32-bit ARM")
>>> Cc: Will Deacon <will.deacon@arm.com>
>>> Reported-by: Guenter Roeck <linux@roeck-us.net>
>>> Signed-off-by: Ard Biesheuvel <ard.biesheuvel@linaro.org>
>>> ---
>>>   drivers/firmware/efi/efi.c | 4 +++-
>>>   1 file changed, 3 insertions(+), 1 deletion(-)
>>>
>>> diff --git a/drivers/firmware/efi/efi.c b/drivers/firmware/efi/efi.c
>>> index cffa89b3317b..53f71177824f 100644
>>> --- a/drivers/firmware/efi/efi.c
>>> +++ b/drivers/firmware/efi/efi.c
>>> @@ -25,7 +25,9 @@
>>>   #include <linux/io.h>
>>>   #include <linux/platform_device.h>
>>>
>>> -#include <asm/efi.h>
>>> +#ifndef CONFIG_IA64
>>> +#include <asm/early_ioremap.h>
>>> +#endif
>>>
>>>   struct efi __read_mostly efi = {
>>>         .mps                    = EFI_INVALID_TABLE_ADDR,
>>
>>
>> I certainly can't think of a better way to fix this right now. Tony,
>> Fenghua do you guys have any suggestions?
>>
>
> How about including asm/early_ioremap.h from arch/arm/include/asm/io.h,
> as it is done by arm64 and x86 ?
>

That would work as well, but it does not address how early_memremap()
is so poorly defined. I think the correct way would be to add the
include unconditionally, and move ia64's definition to a new ia64
version of early_ioremap.h

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

* Re: [PATCH] efi: add conditional include of asm/early_ioremap.h
       [not found]           ` <CAKv+Gu9=yVNAVOLfuv135tu6anzNxGO8i7cdsLQ6PxUigNVU4g-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
@ 2016-01-11 18:47               ` Guenter Roeck
  0 siblings, 0 replies; 16+ messages in thread
From: Guenter Roeck @ 2016-01-11 18:47 UTC (permalink / raw)
  To: Ard Biesheuvel
  Cc: Williams, Dan J, Matt Fleming, linux-efi-u79uwXL29TY76Z2rM5mHXA,
	Will Deacon, Fenghua Yu, Tony Luck,
	linux-ia64-u79uwXL29TY76Z2rM5mHXA

On Mon, Jan 11, 2016 at 06:35:44PM +0100, Ard Biesheuvel wrote:
[ ... ]

> >>
> >>
> >> I certainly can't think of a better way to fix this right now. Tony,
> >> Fenghua do you guys have any suggestions?
> >>
> >
> > How about including asm/early_ioremap.h from arch/arm/include/asm/io.h,
> > as it is done by arm64 and x86 ?
> >
> 
> That would work as well, but it does not address how early_memremap()
> is so poorly defined. I think the correct way would be to add the
> include unconditionally, and move ia64's definition to a new ia64
> version of early_ioremap.h

Depends on the definition of "poorly". Is the API exported through
asm/early_ioremap.h, or through asm/io.h ?

Guenter

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

* Re: [PATCH] efi: add conditional include of asm/early_ioremap.h
@ 2016-01-11 18:47               ` Guenter Roeck
  0 siblings, 0 replies; 16+ messages in thread
From: Guenter Roeck @ 2016-01-11 18:47 UTC (permalink / raw)
  To: Ard Biesheuvel
  Cc: Williams, Dan J, Matt Fleming, linux-efi-u79uwXL29TY76Z2rM5mHXA,
	Will Deacon, Fenghua Yu, Tony Luck,
	linux-ia64-u79uwXL29TY76Z2rM5mHXA

On Mon, Jan 11, 2016 at 06:35:44PM +0100, Ard Biesheuvel wrote:
[ ... ]

> >>
> >>
> >> I certainly can't think of a better way to fix this right now. Tony,
> >> Fenghua do you guys have any suggestions?
> >>
> >
> > How about including asm/early_ioremap.h from arch/arm/include/asm/io.h,
> > as it is done by arm64 and x86 ?
> >
> 
> That would work as well, but it does not address how early_memremap()
> is so poorly defined. I think the correct way would be to add the
> include unconditionally, and move ia64's definition to a new ia64
> version of early_ioremap.h

Depends on the definition of "poorly". Is the API exported through
asm/early_ioremap.h, or through asm/io.h ?

Guenter

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

* RE: [PATCH] efi: add conditional include of asm/early_ioremap.h
       [not found]     ` <20160111144004.GD2644-mF/unelCI9GS6iBeEJttW/XRex20P6io@public.gmane.org>
@ 2016-01-11 19:54         ` Luck, Tony
  0 siblings, 0 replies; 16+ messages in thread
From: Luck, Tony @ 2016-01-11 19:54 UTC (permalink / raw)
  To: Matt Fleming, Ard Biesheuvel
  Cc: linux-efi-u79uwXL29TY76Z2rM5mHXA, linux-0h96xk9xTtrk1uMJSBkQmQ,
	Will Deacon, Yu, Fenghua, linux-ia64-u79uwXL29TY76Z2rM5mHXA

On Sun, 10 Jan, at 09:04:09PM, Ard Biesheuvel wrote:
> The code in efi.c uses early_memremap(), but relies on a transitive
> include rather than including asm/early_ioremap.h directly.
> Unfortunately, this header does not exist on ia64, so it cannot be
> included directly.

I wouldn't be adverse to you making an asm/early_ioremap.h file
for ia64

-Tony

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

* RE: [PATCH] efi: add conditional include of asm/early_ioremap.h
@ 2016-01-11 19:54         ` Luck, Tony
  0 siblings, 0 replies; 16+ messages in thread
From: Luck, Tony @ 2016-01-11 19:54 UTC (permalink / raw)
  To: Matt Fleming, Ard Biesheuvel
  Cc: linux-efi-u79uwXL29TY76Z2rM5mHXA, linux-0h96xk9xTtrk1uMJSBkQmQ,
	Will Deacon, Yu, Fenghua, linux-ia64-u79uwXL29TY76Z2rM5mHXA

On Sun, 10 Jan, at 09:04:09PM, Ard Biesheuvel wrote:
> The code in efi.c uses early_memremap(), but relies on a transitive
> include rather than including asm/early_ioremap.h directly.
> Unfortunately, this header does not exist on ia64, so it cannot be
> included directly.

I wouldn't be adverse to you making an asm/early_ioremap.h file
for ia64

-Tony

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

* Re: [PATCH] efi: add conditional include of asm/early_ioremap.h
       [not found]         ` <3908561D78D1C84285E8C5FCA982C28F39FA9F4B-8oqHQFITsIE64kNsxIetb7fspsVTdybXVpNB7YpNyf8@public.gmane.org>
@ 2016-01-11 20:15             ` Ard Biesheuvel
  0 siblings, 0 replies; 16+ messages in thread
From: Ard Biesheuvel @ 2016-01-11 20:15 UTC (permalink / raw)
  To: Luck, Tony
  Cc: Matt Fleming, linux-efi-u79uwXL29TY76Z2rM5mHXA,
	linux-0h96xk9xTtrk1uMJSBkQmQ, Will Deacon, Yu, Fenghua,
	linux-ia64-u79uwXL29TY76Z2rM5mHXA

On 11 January 2016 at 20:54, Luck, Tony <tony.luck-ral2JQCrhuEAvxtiuMwx3w@public.gmane.org> wrote:
> On Sun, 10 Jan, at 09:04:09PM, Ard Biesheuvel wrote:
>> The code in efi.c uses early_memremap(), but relies on a transitive
>> include rather than including asm/early_ioremap.h directly.
>> Unfortunately, this header does not exist on ia64, so it cannot be
>> included directly.
>
> I wouldn't be adverse to you making an asm/early_ioremap.h file
> for ia64
>

How about an asm/efi.h? A lot of the EFI source files include both
linux/efi.h and asm/efi.h, so it would make sense to have one on ia64
as well

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

* Re: [PATCH] efi: add conditional include of asm/early_ioremap.h
@ 2016-01-11 20:15             ` Ard Biesheuvel
  0 siblings, 0 replies; 16+ messages in thread
From: Ard Biesheuvel @ 2016-01-11 20:15 UTC (permalink / raw)
  To: Luck, Tony
  Cc: Matt Fleming, linux-efi-u79uwXL29TY76Z2rM5mHXA,
	linux-0h96xk9xTtrk1uMJSBkQmQ, Will Deacon, Yu, Fenghua,
	linux-ia64-u79uwXL29TY76Z2rM5mHXA

On 11 January 2016 at 20:54, Luck, Tony <tony.luck@intel.com> wrote:
> On Sun, 10 Jan, at 09:04:09PM, Ard Biesheuvel wrote:
>> The code in efi.c uses early_memremap(), but relies on a transitive
>> include rather than including asm/early_ioremap.h directly.
>> Unfortunately, this header does not exist on ia64, so it cannot be
>> included directly.
>
> I wouldn't be adverse to you making an asm/early_ioremap.h file
> for ia64
>

How about an asm/efi.h? A lot of the EFI source files include both
linux/efi.h and asm/efi.h, so it would make sense to have one on ia64
as well

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

* RE: [PATCH] efi: add conditional include of asm/early_ioremap.h
  2016-01-11 20:15             ` Ard Biesheuvel
@ 2016-01-11 21:46               ` Luck, Tony
  -1 siblings, 0 replies; 16+ messages in thread
From: Luck, Tony @ 2016-01-11 21:46 UTC (permalink / raw)
  To: Ard Biesheuvel
  Cc: Matt Fleming, linux-efi, linux, Will Deacon, Yu, Fenghua, linux-ia64

>> I wouldn't be adverse to you making an asm/early_ioremap.h file
>> for ia64
>>
>
> How about an asm/efi.h? A lot of the EFI source files include both
> linux/efi.h and asm/efi.h, so it would make sense to have one on ia64
> as well

Perhaps.  If I just end up with an empty <asm/something.h> file just
so it can be included without making an error that's less desirable than
having something relevant in the file.

-Tony

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

* RE: [PATCH] efi: add conditional include of asm/early_ioremap.h
@ 2016-01-11 21:46               ` Luck, Tony
  0 siblings, 0 replies; 16+ messages in thread
From: Luck, Tony @ 2016-01-11 21:46 UTC (permalink / raw)
  To: Ard Biesheuvel
  Cc: Matt Fleming, linux-efi, linux, Will Deacon, Yu, Fenghua, linux-ia64

Pj4gSSB3b3VsZG4ndCBiZSBhZHZlcnNlIHRvIHlvdSBtYWtpbmcgYW4gYXNtL2Vhcmx5X2lvcmVt
YXAuaCBmaWxlDQo+PiBmb3IgaWE2NA0KPj4NCj4NCj4gSG93IGFib3V0IGFuIGFzbS9lZmkuaD8g
QSBsb3Qgb2YgdGhlIEVGSSBzb3VyY2UgZmlsZXMgaW5jbHVkZSBib3RoDQo+IGxpbnV4L2VmaS5o
IGFuZCBhc20vZWZpLmgsIHNvIGl0IHdvdWxkIG1ha2Ugc2Vuc2UgdG8gaGF2ZSBvbmUgb24gaWE2
NA0KPiBhcyB3ZWxsDQoNClBlcmhhcHMuICBJZiBJIGp1c3QgZW5kIHVwIHdpdGggYW4gZW1wdHkg
PGFzbS9zb21ldGhpbmcuaD4gZmlsZSBqdXN0DQpzbyBpdCBjYW4gYmUgaW5jbHVkZWQgd2l0aG91
dCBtYWtpbmcgYW4gZXJyb3IgdGhhdCdzIGxlc3MgZGVzaXJhYmxlIHRoYW4NCmhhdmluZyBzb21l
dGhpbmcgcmVsZXZhbnQgaW4gdGhlIGZpbGUuDQoNCi1Ub255DQo

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

end of thread, other threads:[~2016-01-11 21:46 UTC | newest]

Thread overview: 16+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2016-01-10 20:04 [PATCH] efi: add conditional include of asm/early_ioremap.h Ard Biesheuvel
     [not found] ` <1452456249-2974-1-git-send-email-ard.biesheuvel-QSEj5FYQhm4dnm+yROfE0A@public.gmane.org>
2016-01-10 20:13   ` Guenter Roeck
2016-01-11 14:40   ` Matt Fleming
2016-01-11 14:40     ` Matt Fleming
2016-01-11 16:15     ` Guenter Roeck
2016-01-11 16:15       ` Guenter Roeck
     [not found]       ` <5693D52E.9090407-0h96xk9xTtrk1uMJSBkQmQ@public.gmane.org>
2016-01-11 17:35         ` Ard Biesheuvel
2016-01-11 17:35           ` Ard Biesheuvel
     [not found]           ` <CAKv+Gu9=yVNAVOLfuv135tu6anzNxGO8i7cdsLQ6PxUigNVU4g-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2016-01-11 18:47             ` Guenter Roeck
2016-01-11 18:47               ` Guenter Roeck
     [not found]     ` <20160111144004.GD2644-mF/unelCI9GS6iBeEJttW/XRex20P6io@public.gmane.org>
2016-01-11 19:54       ` Luck, Tony
2016-01-11 19:54         ` Luck, Tony
     [not found]         ` <3908561D78D1C84285E8C5FCA982C28F39FA9F4B-8oqHQFITsIE64kNsxIetb7fspsVTdybXVpNB7YpNyf8@public.gmane.org>
2016-01-11 20:15           ` Ard Biesheuvel
2016-01-11 20:15             ` Ard Biesheuvel
2016-01-11 21:46             ` Luck, Tony
2016-01-11 21:46               ` Luck, Tony

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.