All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH 1/1] x86/ioapic: Return suitable error code in mp_map_gsi_to_irq()
@ 2017-01-16 13:30 Andy Shevchenko
  2017-01-16 17:56 ` Andy Shevchenko
  0 siblings, 1 reply; 3+ messages in thread
From: Andy Shevchenko @ 2017-01-16 13:30 UTC (permalink / raw)
  To: Ingo Molnar, Thomas Gleixner, H . Peter Anvin, linux-kernel, x86
  Cc: Andy Shevchenko

mp_map_gsi_to_irq() in some cases might return legacy -1, which would be
wrongly interpreted as -EPERM.

Correct those cases to return proper error codes.

Signed-off-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com>
---
 arch/x86/kernel/apic/io_apic.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/arch/x86/kernel/apic/io_apic.c b/arch/x86/kernel/apic/io_apic.c
index 945e512a112a..99cee86b7d17 100644
--- a/arch/x86/kernel/apic/io_apic.c
+++ b/arch/x86/kernel/apic/io_apic.c
@@ -1107,12 +1107,12 @@ int mp_map_gsi_to_irq(u32 gsi, unsigned int flags, struct irq_alloc_info *info)
 
 	ioapic = mp_find_ioapic(gsi);
 	if (ioapic < 0)
-		return -1;
+		return -EINVAL;
 
 	pin = mp_find_ioapic_pin(ioapic, gsi);
 	idx = find_irq_entry(ioapic, pin, mp_INT);
 	if ((flags & IOAPIC_MAP_CHECK) && idx < 0)
-		return -1;
+		return -ENODEV;
 
 	return mp_map_pin_to_irq(gsi, idx, ioapic, pin, flags, info);
 }
-- 
2.11.0

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

* Re: [PATCH 1/1] x86/ioapic: Return suitable error code in mp_map_gsi_to_irq()
  2017-01-16 13:30 [PATCH 1/1] x86/ioapic: Return suitable error code in mp_map_gsi_to_irq() Andy Shevchenko
@ 2017-01-16 17:56 ` Andy Shevchenko
  2017-01-16 18:58   ` Thomas Gleixner
  0 siblings, 1 reply; 3+ messages in thread
From: Andy Shevchenko @ 2017-01-16 17:56 UTC (permalink / raw)
  To: Ingo Molnar, Thomas Gleixner, H . Peter Anvin, linux-kernel, x86

On Mon, 2017-01-16 at 15:30 +0200, Andy Shevchenko wrote:
> mp_map_gsi_to_irq() in some cases might return legacy -1, which would
> be
> wrongly interpreted as -EPERM.
> 
> Correct those cases to return proper error codes.
> 
> Signed-off-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com>
> ---
>  arch/x86/kernel/apic/io_apic.c | 4 ++--
>  1 file changed, 2 insertions(+), 2 deletions(-)
> 
> diff --git a/arch/x86/kernel/apic/io_apic.c
> b/arch/x86/kernel/apic/io_apic.c
> index 945e512a112a..99cee86b7d17 100644
> --- a/arch/x86/kernel/apic/io_apic.c
> +++ b/arch/x86/kernel/apic/io_apic.c
> @@ -1107,12 +1107,12 @@ int mp_map_gsi_to_irq(u32 gsi, unsigned int
> flags, struct irq_alloc_info *info)
>  
>  	ioapic = mp_find_ioapic(gsi);
>  	if (ioapic < 0)
> -		return -1;
> +		return -EINVAL;
>  
>  	pin = mp_find_ioapic_pin(ioapic, gsi);
>  	idx = find_irq_entry(ioapic, pin, mp_INT);
>  	if ((flags & IOAPIC_MAP_CHECK) && idx < 0)
> -		return -1;
> +		return -ENODEV;

Looking one more time...
Or should it be other way around: -ENODEV (ioapic < 0), -EINVAL (here)?

>  
>  	return mp_map_pin_to_irq(gsi, idx, ioapic, pin, flags, info);
>  }

-- 
Andy Shevchenko <andriy.shevchenko@linux.intel.com>
Intel Finland Oy

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

* Re: [PATCH 1/1] x86/ioapic: Return suitable error code in mp_map_gsi_to_irq()
  2017-01-16 17:56 ` Andy Shevchenko
@ 2017-01-16 18:58   ` Thomas Gleixner
  0 siblings, 0 replies; 3+ messages in thread
From: Thomas Gleixner @ 2017-01-16 18:58 UTC (permalink / raw)
  To: Andy Shevchenko; +Cc: Ingo Molnar, H . Peter Anvin, linux-kernel, x86

[-- Attachment #1: Type: text/plain, Size: 1230 bytes --]

On Mon, 16 Jan 2017, Andy Shevchenko wrote:

> On Mon, 2017-01-16 at 15:30 +0200, Andy Shevchenko wrote:
> > mp_map_gsi_to_irq() in some cases might return legacy -1, which would
> > be
> > wrongly interpreted as -EPERM.
> > 
> > Correct those cases to return proper error codes.
> > 
> > Signed-off-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com>
> > ---
> >  arch/x86/kernel/apic/io_apic.c | 4 ++--
> >  1 file changed, 2 insertions(+), 2 deletions(-)
> > 
> > diff --git a/arch/x86/kernel/apic/io_apic.c
> > b/arch/x86/kernel/apic/io_apic.c
> > index 945e512a112a..99cee86b7d17 100644
> > --- a/arch/x86/kernel/apic/io_apic.c
> > +++ b/arch/x86/kernel/apic/io_apic.c
> > @@ -1107,12 +1107,12 @@ int mp_map_gsi_to_irq(u32 gsi, unsigned int
> > flags, struct irq_alloc_info *info)
> >  
> >  	ioapic = mp_find_ioapic(gsi);
> >  	if (ioapic < 0)
> > -		return -1;
> > +		return -EINVAL;
> >  
> >  	pin = mp_find_ioapic_pin(ioapic, gsi);
> >  	idx = find_irq_entry(ioapic, pin, mp_INT);
> >  	if ((flags & IOAPIC_MAP_CHECK) && idx < 0)
> > -		return -1;
> > +		return -ENODEV;
> 
> Looking one more time...
> Or should it be other way around: -ENODEV (ioapic < 0), -EINVAL (here)?

ENODEV for both cases I think,

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

end of thread, other threads:[~2017-01-16 18:59 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2017-01-16 13:30 [PATCH 1/1] x86/ioapic: Return suitable error code in mp_map_gsi_to_irq() Andy Shevchenko
2017-01-16 17:56 ` Andy Shevchenko
2017-01-16 18:58   ` Thomas Gleixner

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.