All of lore.kernel.org
 help / color / mirror / Atom feed
From: Hiroshi Shimamoto <h-shimamoto@ct.jp.nec.com>
To: Rui Sousa <rui.p.m.sousa@gmail.com>
Cc: Peter Zijlstra <a.p.zijlstra@chello.nl>,
	user-mode-linux-devel@lists.sourceforge.net,
	Jeff Dike <jdike@addtoit.com>,
	linux-kernel@vger.kernel.org, "H. Peter Anvin" <hpa@zytor.com>,
	Ingo Molnar <mingo@elte.hu>, Thomas Gleixner <tglx@linutronix.de>
Subject: Re: [uml-devel] [PATH] Fix compilation when CONFIG_TRACE_IRQFLAGS_SUPPORT is not set
Date: Thu, 04 Sep 2008 11:29:49 -0700	[thread overview]
Message-ID: <48C0291D.6060205@ct.jp.nec.com> (raw)
In-Reply-To: <200809041947.54339.rui.p.m.sousa@gmail.com>

Rui Sousa wrote:
> On Thursday 4 September 2008 19:14, Hiroshi Shimamoto wrote:
>> Ingo Molnar wrote:
>>> * Rui Sousa <rui.p.m.sousa@gmail.com> wrote:
>>>> Hi,
>>>>
>>>> This patch fixes compilation if CONFIG_TRACE_IRQFLAGS_SUPPORT is ever
>>>> disabled (which is currently not allowed by Kconfig). Alternatively we
>>>> could just remove the option altogether and the associated code paths.
>>>> Since the compilation error has been in the tree for at least two
>>>> years and no one noticed it, I guess we don't really have the need for
>>>> CONFIG_TRACE_IRQFLAGS_SUPPORT=n. Boot tested on x86 UP.
>>> applied to tip/core/locking - thanks Rui.
>>>
>>> since you fixed it i prefer the fix over the removal. We could still
>>> remove the !TRACE_IRQFLAGS_SUPPORT now (in a separate commit) and
>>> simpify this header a bit that way. Thus if someone needs the
>>> !TRACE_IRQFLAGS_SUPPORT mode of build for future work, it can be
>>> restored via a simple revert.
>> Hi, it seems that this patch breaks uml build.
> 
> Hi Hiroshi,
> 
>> kernel/printk.c: In function 'vprintk':
>> kernel/printk.c:674: error: implicit declaration of function
>> 'raw_local_irq_save' kernel/printk.c:772: error: implicit declaration of
>> function 'raw_local_irq_restore'
> 
> With the patch bellow it compiles (make ARCH=um with a x86 host), but I'm 
> really out of my league on this one...

Hi Rui,

with this patch, build and boot (on my x86_64 box) looks ok.

I CC-ed to uml people to check this.

thanks,
Hiroshi Shimamoto

> 
>> thanks,
>> Hiroshi Shimamoto
> 
> Thanks,
> Rui
> 
> ---
> diff --git a/include/asm-um/system-generic.h b/include/asm-um/system-generic.h
> index 5bcfa35..f1ea4da 100644
> --- a/include/asm-um/system-generic.h
> +++ b/include/asm-um/system-generic.h
> @@ -4,15 +4,15 @@
>  #include "asm/arch/system.h"
>  
>  #undef switch_to
> -#undef local_irq_save
> -#undef local_irq_restore
> -#undef local_irq_disable
> -#undef local_irq_enable
> -#undef local_save_flags
> -#undef local_irq_restore
> -#undef local_irq_enable
> -#undef local_irq_disable
> -#undef local_irq_save
> +#undef raw_local_irq_save
> +#undef raw_local_irq_restore
> +#undef raw_local_irq_disable
> +#undef raw_local_irq_enable
> +#undef raw_local_save_flags
> +#undef raw_local_irq_restore
> +#undef raw_local_irq_enable
> +#undef raw_local_irq_disable
> +#undef raw_local_irq_save
>  #undef irqs_disabled
>  
>  extern void *switch_to(void *prev, void *next, void *last);
> @@ -23,21 +23,21 @@ extern int get_signals(void);
>  extern void block_signals(void);
>  extern void unblock_signals(void);
>  
> -#define local_save_flags(flags) do { typecheck(unsigned long, flags); \
> +#define raw_local_save_flags(flags) do { typecheck(unsigned long, flags); \
>  				     (flags) = get_signals(); } while(0)
> -#define local_irq_restore(flags) do { typecheck(unsigned long, flags); \
> +#define raw_local_irq_restore(flags) do { typecheck(unsigned long, flags); \
>  				      set_signals(flags); } while(0)
>  
> -#define local_irq_save(flags) do { local_save_flags(flags); \
> -                                   local_irq_disable(); } while(0)
> +#define raw_local_irq_save(flags) do { raw_local_save_flags(flags); \
> +                                   raw_local_irq_disable(); } while(0)
>  
> -#define local_irq_enable() unblock_signals()
> -#define local_irq_disable() block_signals()
> +#define raw_local_irq_enable() unblock_signals()
> +#define raw_local_irq_disable() block_signals()
>  
>  #define irqs_disabled()                 \
>  ({                                      \
>          unsigned long flags;            \
> -        local_save_flags(flags);        \
> +        raw_local_save_flags(flags);        \
>          (flags == 0);                   \
>  })
>  
> --
> To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
> the body of a message to majordomo@vger.kernel.org
> More majordomo info at  http://vger.kernel.org/majordomo-info.html
> Please read the FAQ at  http://www.tux.org/lkml/
> 


-------------------------------------------------------------------------
This SF.Net email is sponsored by the Moblin Your Move Developer's challenge
Build the coolest Linux based applications with Moblin SDK & win great prizes
Grand prize is a trip for two to an Open Source event anywhere in the world
http://moblin-contest.org/redirect.php?banner_id=100&url=/
_______________________________________________
User-mode-linux-devel mailing list
User-mode-linux-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/user-mode-linux-devel

WARNING: multiple messages have this Message-ID (diff)
From: Hiroshi Shimamoto <h-shimamoto@ct.jp.nec.com>
To: Rui Sousa <rui.p.m.sousa@gmail.com>
Cc: Ingo Molnar <mingo@elte.hu>,
	linux-kernel@vger.kernel.org,
	Peter Zijlstra <a.p.zijlstra@chello.nl>,
	Thomas Gleixner <tglx@linutronix.de>,
	"H. Peter Anvin" <hpa@zytor.com>,
	user-mode-linux-devel@lists.sourceforge.net,
	Jeff Dike <jdike@addtoit.com>
Subject: Re: [PATH] Fix compilation when CONFIG_TRACE_IRQFLAGS_SUPPORT is not set
Date: Thu, 04 Sep 2008 11:29:49 -0700	[thread overview]
Message-ID: <48C0291D.6060205@ct.jp.nec.com> (raw)
In-Reply-To: <200809041947.54339.rui.p.m.sousa@gmail.com>

Rui Sousa wrote:
> On Thursday 4 September 2008 19:14, Hiroshi Shimamoto wrote:
>> Ingo Molnar wrote:
>>> * Rui Sousa <rui.p.m.sousa@gmail.com> wrote:
>>>> Hi,
>>>>
>>>> This patch fixes compilation if CONFIG_TRACE_IRQFLAGS_SUPPORT is ever
>>>> disabled (which is currently not allowed by Kconfig). Alternatively we
>>>> could just remove the option altogether and the associated code paths.
>>>> Since the compilation error has been in the tree for at least two
>>>> years and no one noticed it, I guess we don't really have the need for
>>>> CONFIG_TRACE_IRQFLAGS_SUPPORT=n. Boot tested on x86 UP.
>>> applied to tip/core/locking - thanks Rui.
>>>
>>> since you fixed it i prefer the fix over the removal. We could still
>>> remove the !TRACE_IRQFLAGS_SUPPORT now (in a separate commit) and
>>> simpify this header a bit that way. Thus if someone needs the
>>> !TRACE_IRQFLAGS_SUPPORT mode of build for future work, it can be
>>> restored via a simple revert.
>> Hi, it seems that this patch breaks uml build.
> 
> Hi Hiroshi,
> 
>> kernel/printk.c: In function 'vprintk':
>> kernel/printk.c:674: error: implicit declaration of function
>> 'raw_local_irq_save' kernel/printk.c:772: error: implicit declaration of
>> function 'raw_local_irq_restore'
> 
> With the patch bellow it compiles (make ARCH=um with a x86 host), but I'm 
> really out of my league on this one...

Hi Rui,

with this patch, build and boot (on my x86_64 box) looks ok.

I CC-ed to uml people to check this.

thanks,
Hiroshi Shimamoto

> 
>> thanks,
>> Hiroshi Shimamoto
> 
> Thanks,
> Rui
> 
> ---
> diff --git a/include/asm-um/system-generic.h b/include/asm-um/system-generic.h
> index 5bcfa35..f1ea4da 100644
> --- a/include/asm-um/system-generic.h
> +++ b/include/asm-um/system-generic.h
> @@ -4,15 +4,15 @@
>  #include "asm/arch/system.h"
>  
>  #undef switch_to
> -#undef local_irq_save
> -#undef local_irq_restore
> -#undef local_irq_disable
> -#undef local_irq_enable
> -#undef local_save_flags
> -#undef local_irq_restore
> -#undef local_irq_enable
> -#undef local_irq_disable
> -#undef local_irq_save
> +#undef raw_local_irq_save
> +#undef raw_local_irq_restore
> +#undef raw_local_irq_disable
> +#undef raw_local_irq_enable
> +#undef raw_local_save_flags
> +#undef raw_local_irq_restore
> +#undef raw_local_irq_enable
> +#undef raw_local_irq_disable
> +#undef raw_local_irq_save
>  #undef irqs_disabled
>  
>  extern void *switch_to(void *prev, void *next, void *last);
> @@ -23,21 +23,21 @@ extern int get_signals(void);
>  extern void block_signals(void);
>  extern void unblock_signals(void);
>  
> -#define local_save_flags(flags) do { typecheck(unsigned long, flags); \
> +#define raw_local_save_flags(flags) do { typecheck(unsigned long, flags); \
>  				     (flags) = get_signals(); } while(0)
> -#define local_irq_restore(flags) do { typecheck(unsigned long, flags); \
> +#define raw_local_irq_restore(flags) do { typecheck(unsigned long, flags); \
>  				      set_signals(flags); } while(0)
>  
> -#define local_irq_save(flags) do { local_save_flags(flags); \
> -                                   local_irq_disable(); } while(0)
> +#define raw_local_irq_save(flags) do { raw_local_save_flags(flags); \
> +                                   raw_local_irq_disable(); } while(0)
>  
> -#define local_irq_enable() unblock_signals()
> -#define local_irq_disable() block_signals()
> +#define raw_local_irq_enable() unblock_signals()
> +#define raw_local_irq_disable() block_signals()
>  
>  #define irqs_disabled()                 \
>  ({                                      \
>          unsigned long flags;            \
> -        local_save_flags(flags);        \
> +        raw_local_save_flags(flags);        \
>          (flags == 0);                   \
>  })
>  
> --
> To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
> the body of a message to majordomo@vger.kernel.org
> More majordomo info at  http://vger.kernel.org/majordomo-info.html
> Please read the FAQ at  http://www.tux.org/lkml/
> 


  reply	other threads:[~2008-09-04 18:29 UTC|newest]

Thread overview: 8+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2008-09-03 15:53 [PATH] Fix compilation when CONFIG_TRACE_IRQFLAGS_SUPPORT is not set Rui Sousa
2008-09-04 14:39 ` Ingo Molnar
2008-09-04 17:14   ` Hiroshi Shimamoto
2008-09-04 17:47     ` Rui Sousa
2008-09-04 18:29       ` Hiroshi Shimamoto [this message]
2008-09-04 18:29         ` Hiroshi Shimamoto
2008-09-05 10:57         ` [uml-devel] " Ingo Molnar
2008-09-05 10:57           ` Ingo Molnar

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=48C0291D.6060205@ct.jp.nec.com \
    --to=h-shimamoto@ct.jp.nec.com \
    --cc=a.p.zijlstra@chello.nl \
    --cc=hpa@zytor.com \
    --cc=jdike@addtoit.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=mingo@elte.hu \
    --cc=rui.p.m.sousa@gmail.com \
    --cc=tglx@linutronix.de \
    --cc=user-mode-linux-devel@lists.sourceforge.net \
    /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.