From: Glauber de Oliveira Costa <gcosta@redhat.com>
To: Ingo Molnar <mingo@elte.hu>
Cc: linux-kernel@vger.kernel.org, akpm@linux-foundation.org,
glommer@gmail.com, tglx@linutronix.de, ehabkost@redhat.com,
jeremy@goop.org, avi@qumranet.com, anthony@codemonkey.ws,
virtualization@lists.linux-foundation.org, rusty@rustcorp.com.au,
ak@suse.de, chrisw@sous-sol.org, rostedt@goodmis.org,
hpa@zytor.com, zach@vmware.com, roland@redhat.com
Subject: Re: [PATCH 21/21] [PATCH] finish processor.h integration
Date: Tue, 18 Dec 2007 11:48:53 -0200 [thread overview]
Message-ID: <4767CFC5.3010703@redhat.com> (raw)
In-Reply-To: <20071218133818.GA9941@elte.hu>
Ingo Molnar wrote:
> * Ingo Molnar <mingo@elte.hu> wrote:
>
>>> What's left in processor_32.h and processor_64.h cannot be cleanly
>>> integrated. However, it's just a couple of definitions. They are
>>> moved to processor.h around ifdefs, and the original files are
>>> deleted. Note that there's much less headers included in the final
>>> version.
>> and this patch breaks the build on the attached config, with:
>>
>> CC arch/x86/mm/boot_ioremap_32.o
>> In file included from include/asm/fixmap_32.h:28,
>> from include/asm/fixmap.h:2,
>> from include/asm/pgtable_32.h:16,
>> from include/asm/pgtable.h:2,
>> from arch/x86/mm/boot_ioremap_32.c:21:
>> include/asm/acpi.h:159: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'acpi_fake_nodes'
>> make[1]: *** [arch/x86/mm/boot_ioremap_32.o] Error 1
>> make: *** [arch/x86/mm/boot_ioremap_32.o] Error 2
>
> really, please do _much_ more careful unification. We unified two full
> architectures in .24-rc1 and there was _not a single regression_ due to
> that unification. Not a single build failure, not a single boot or
> runtime failure.
IIRC, 24-rc1 was a different story. Most, if not all patches, had no
binary diff, etc. This is not the case here.
> here the problem is apparently caused by your patch, a careless
> 'unification' of include file sections. 32-bit had this:
Point is this patches do unification, but they are not just that, as you
can see. I am attempting to cleanup headers that appears not to be used,
I am effectivelly adding a new feature to x86_64, and so on. I am
testing everything, all I sent works in my configs, and your testing,
and point out the configs that breaks is really much appreciated.
> -#include <asm/vm86.h>
> -#include <asm/math_emu.h>
> -#include <asm/segment.h>
> -#include <asm/page.h>
> -#include <asm/types.h>
> -#include <asm/sigcontext.h>
> -#include <asm/cpufeature.h>
> -#include <asm/msr.h>
> -#include <asm/system.h>
> -#include <linux/threads.h>
> -#include <linux/init.h>
> -#include <asm/desc_defs.h>
>
> 64-bit had this:
>
> -#include <asm/segment.h>
> -#include <asm/page.h>
> -#include <asm/types.h>
> -#include <asm/sigcontext.h>
> -#include <asm/cpufeature.h>
> -#include <linux/threads.h>
> -#include <asm/msr.h>
> -#include <asm/current.h>
> -#include <asm/system.h>
> -#include <linux/personality.h>
> -#include <asm/desc_defs.h>
>
> and the 'unified' processor.h has:
>
> +#include <asm/desc_defs.h>
> +#include <asm/msr.h>
> #include <asm/page.h>
> #include <asm/percpu.h>
> #include <asm/system.h>
> #include <asm/percpu.h>
> #include <linux/cpumask.h>
> #include <linux/cache.h>
> +#include <linux/personality.h>
>
> Those are visible, _crutial_ differences totally unmentioned in the
> patch.
>
> yes, our include file dependencies are a jungle, the differences between
> 32-bit and 64-bit are arbitrary in 80% of the cases, but still there's
> no reason why this couldnt be done correctly. The patch below is a quick
> bandaid that adds the missing bits.
And that's because I'm trying to drop headers that are not used anymore.
Again, getting test for other people but me, helps making sure it's
correct. I am working on updating the series now, and will send an
updated version.
> Ingo
>
> ------------------>
> Subject: x86: fix include file mess
> From: Ingo Molnar <mingo@elte.hu>
>
> fix include file mess.
>
> Signed-off-by: Ingo Molnar <mingo@elte.hu>
> ---
> include/asm-x86/processor.h | 16 ++++++++++++++--
> 1 file changed, 14 insertions(+), 2 deletions(-)
>
> Index: linux-x86.q/include/asm-x86/processor.h
> ===================================================================
> --- linux-x86.q.orig/include/asm-x86/processor.h
> +++ linux-x86.q/include/asm-x86/processor.h
> @@ -6,15 +6,27 @@
> struct task_struct;
> struct mm_struct;
>
> +#ifdef CONFIG_X86_32
> +# include <asm/math_emu.h>
> +# include <asm/vm86.h>
> +#endif
> +
> +#include <asm/cpufeature.h>
> +#include <asm/current.h>
> #include <asm/desc_defs.h>
> #include <asm/msr.h>
> #include <asm/page.h>
> #include <asm/percpu.h>
> +#include <asm/segment.h>
> +#include <asm/sigcontext.h>
> #include <asm/system.h>
> -#include <asm/percpu.h>
> -#include <linux/cpumask.h>
> +#include <asm/types.h>
> +
> #include <linux/cache.h>
> +#include <linux/cpumask.h>
> +#include <linux/init.h>
> #include <linux/personality.h>
> +#include <linux/threads.h>
>
> /*
> * Default implementation of macro that returns current
next prev parent reply other threads:[~2007-12-18 13:50 UTC|newest]
Thread overview: 41+ messages / expand[flat|nested] mbox.gz Atom feed top
2007-12-17 22:52 [PATCH 0/21] Integrate processor.h Glauber de Oliveira Costa
2007-12-17 22:52 ` [PATCH 1/21] move tsc definitions to were they belong Glauber de Oliveira Costa
2007-12-17 22:52 ` [PATCH 2/21] [PATCH] get rid of _MASK flags Glauber de Oliveira Costa
2007-12-17 22:52 ` [PATCH 3/21] [PATCH] move desc_empty to where they belong Glauber de Oliveira Costa
2007-12-17 22:52 ` [PATCH 4/21] [PATCH] move load_cr3 to a common place Glauber de Oliveira Costa
2007-12-17 22:52 ` [PATCH 5/21] [PATCH] unify paravirt pieces of processor.h Glauber de Oliveira Costa
2007-12-17 22:52 ` [PATCH 6/21] [PATCH] move the definition of set_iopl_mask to common header Glauber de Oliveira Costa
2007-12-17 22:52 ` [PATCH 7/21] [PATCH] unify common parts of processor.h Glauber de Oliveira Costa
2007-12-17 22:52 ` [PATCH 8/21] [PATCH] unify current_text_addr Glauber de Oliveira Costa
2007-12-17 22:52 ` [PATCH 9/21] [PATCH] unify tss_struct Glauber de Oliveira Costa
2007-12-17 22:52 ` [PATCH 10/21] [PATCH] provide x86_64 with a load_sp0 function Glauber de Oliveira Costa
2007-12-17 22:52 ` [PATCH 11/21] [PATCH] unify thread struct Glauber de Oliveira Costa
2007-12-17 22:52 ` [PATCH 12/21] [PATCH] unify TASK_ALIGN definitions Glauber de Oliveira Costa
2007-12-17 22:52 ` [PATCH 13/21] [PATCH] change bitwise operations to get a void parameter Glauber de Oliveira Costa
2007-12-17 22:52 ` [PATCH 14/21] [PATCH] unify x86_cpuinfo struct Glauber de Oliveira Costa
2007-12-17 22:52 ` [PATCH 15/21] [PATCH] remove legacy stuff from processor_64.h Glauber de Oliveira Costa
2007-12-17 22:52 ` [PATCH 16/21] [PATCH] unify mm_segment_t definition Glauber de Oliveira Costa
2007-12-17 22:52 ` [PATCH 17/21] [PATCH] move definitions to processor.h Glauber de Oliveira Costa
2007-12-17 22:52 ` [PATCH 18/21] [PATCH] unify prefetch operations Glauber de Oliveira Costa
2007-12-17 22:52 ` [PATCH 19/21] [PATCH] unify asm nops Glauber de Oliveira Costa
2007-12-17 22:52 ` [PATCH 20/21] [PATCH] move i387 definitions to processor.h Glauber de Oliveira Costa
2007-12-17 22:52 ` [PATCH 21/21] [PATCH] finish processor.h integration Glauber de Oliveira Costa
2007-12-18 13:19 ` Ingo Molnar
2007-12-18 13:38 ` Ingo Molnar
2007-12-18 13:40 ` Ingo Molnar
2007-12-18 13:49 ` Glauber de Oliveira Costa
2007-12-18 15:44 ` Ingo Molnar
2007-12-18 13:48 ` Glauber de Oliveira Costa [this message]
2007-12-18 15:43 ` Ingo Molnar
2007-12-18 5:18 ` [PATCH 13/21] [PATCH] change bitwise operations to get a void parameter Rusty Russell
2007-12-18 5:38 ` H. Peter Anvin
2007-12-18 12:40 ` Glauber de Oliveira Costa
2007-12-18 17:26 ` H. Peter Anvin
2007-12-18 11:45 ` [PATCH 7/21] [PATCH] unify common parts of processor.h Ingo Molnar
2007-12-18 12:05 ` Glauber de Oliveira Costa
2007-12-18 14:00 ` Ingo Molnar
2007-12-18 5:14 ` [PATCH 3/21] [PATCH] move desc_empty to where they belong Rusty Russell
2007-12-18 5:35 ` Roland McGrath
2007-12-18 5:50 ` Roland McGrath
2007-12-18 5:59 ` [PATCH x86/mm] x86: TLS desc_struct cleanup Roland McGrath
2007-12-18 12:03 ` [PATCH 3/21] [PATCH] move desc_empty to where they belong Glauber de Oliveira Costa
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=4767CFC5.3010703@redhat.com \
--to=gcosta@redhat.com \
--cc=ak@suse.de \
--cc=akpm@linux-foundation.org \
--cc=anthony@codemonkey.ws \
--cc=avi@qumranet.com \
--cc=chrisw@sous-sol.org \
--cc=ehabkost@redhat.com \
--cc=glommer@gmail.com \
--cc=hpa@zytor.com \
--cc=jeremy@goop.org \
--cc=linux-kernel@vger.kernel.org \
--cc=mingo@elte.hu \
--cc=roland@redhat.com \
--cc=rostedt@goodmis.org \
--cc=rusty@rustcorp.com.au \
--cc=tglx@linutronix.de \
--cc=virtualization@lists.linux-foundation.org \
--cc=zach@vmware.com \
/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