mirror of https://lore.kernel.org/lkml/
 help / color / mirror / Atom feed
From: "Jan Beulich" <JBeulich@suse.com>
To: "Ingo Molnar" <mingo@kernel.org>
Cc: "Peter Zijlstra" <a.p.zijlstra@chello.nl>,
	"Steven Rostedt" <rostedt@goodmis.org>,
	<akpm@linux-foundation.org>, <mingo@redhat.com>,
	<linux-kernel@vger.kernel.org>
Subject: Re: [PATCH] irqflags: fix (at least latent) code generation issue
Date: Fri, 28 Nov 2014 17:10:31 +0000	[thread overview]
Message-ID: <5478BA97020000780004B83E@mail.emea.novell.com> (raw)
In-Reply-To: <20141110121349.GA21120@gmail.com>

>>> On 10.11.14 at 13:13, <mingo@kernel.org> wrote:
> * Jan Beulich <JBeulich@suse.com> wrote:
>> @@ -131,7 +131,7 @@
>>  	} while (0)
>>  
>>  
>> -#else /* !CONFIG_TRACE_IRQFLAGS_SUPPORT */
>> +#else /* !CONFIG_TRACE_IRQFLAGS */
>>  
>>  #define local_irq_enable()	do { raw_local_irq_enable(); } while (0)
>>  #define local_irq_disable()	do { raw_local_irq_disable(); } while (0)
>> @@ -145,6 +145,6 @@
>>  #define irqs_disabled_flags(flags) (raw_irqs_disabled_flags(flags))
>>  #define safe_halt()		do { raw_safe_halt(); } while (0)
>>  
>> -#endif /* CONFIG_TRACE_IRQFLAGS_SUPPORT */
>> +#endif /* CONFIG_TRACE_IRQFLAGS */
> 
> So this breaks a couple of non-x86 architectures, such as MIPS:
> 
> /home/mingo/tip/include/acpi/platform/aclinuxex.h: In function 
> 'acpi_os_allocate':
> /home/mingo/tip/include/acpi/platform/aclinuxex.h:86: error: implicit 
> declaration of function 'arch_irqs_disabled'

Now that I finally found time to look into this a little, I wonder what
you expect: Code in linux/irqflags.h ahead of the above conditional
uses arch_irqs_disable():

#define raw_irqs_disabled()		(arch_irqs_disabled())

so it would seem to me that architectures are required to have the
latter available. And in fact it would seem very logical to me if pieces
like the definition of irqs_disabled() would be pulled out of that
conditional, as their behavior shouldn't (for this one) or already
doesn't (for e.g. irqs_disabled_flags() and local_save_flags()) differ
between the two cases. Would, short of adding arch_irqs_disabled()
for all architectures currently lacking it, uniformly using the definition
from the #if portion of the conditional be an acceptable thing? If not,
do you have any other suggestion on how to resolve this?

Jan


      reply	other threads:[~2014-11-28 17:10 UTC|newest]

Thread overview: 3+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2014-11-04  8:23 Jan Beulich
2014-11-10 12:13 ` Ingo Molnar
2014-11-28 17:10   ` Jan Beulich [this message]

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=5478BA97020000780004B83E@mail.emea.novell.com \
    --to=jbeulich@suse.com \
    --cc=a.p.zijlstra@chello.nl \
    --cc=akpm@linux-foundation.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=mingo@kernel.org \
    --cc=mingo@redhat.com \
    --cc=rostedt@goodmis.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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox

Powered by JetHome