All of lore.kernel.org
 help / color / mirror / Atom feed
From: Sheng Yang <sheng@linux.intel.com>
To: kvm@vger.kernel.org
Cc: Avi Kivity <avi@redhat.com>
Subject: Re: Broken userspace module Makefile
Date: Mon, 20 Oct 2008 15:52:10 +0800	[thread overview]
Message-ID: <200810201552.10962.sheng@linux.intel.com> (raw)
In-Reply-To: <48FAFD17.9000302@redhat.com>

On Sunday 19 October 2008 17:25:43 Avi Kivity wrote:
> Sheng Yang wrote:
> > Hi, Avi
> >
> > After Xiantao's irq_common patches were checked in, we found that it's
> > impossible to compile with VT-d userspace now. Essentially the problem is
> > Makefile missed a $ since unifdef patch checked in half an years ago...
> >
> > But after I fix it, I found it's still impossible to get unifdef run
> > correctly...
> >
> > First, unifdef report error when processing include/linux/kvm.h, but I
> > can't find out what's wrong now.
> >
> > Second, seems at least my unifdef can't deal with
> >
> > #if defined(CONFIG_X86) || defined(CONFIG_IA64)
> >
> > My unifdef version is 1.0(20030701), the latest from debian testing. I
> > also tried one for fc9, same result.
>
> My unifdef manual says it can handle #if and defined(), but only if it
> knows about the defines.  Can you try adding -UCONFIG_IA64?
>
> > diff --git a/kernel/Makefile b/kernel/Makefile
> > index f2a71fa..e352f77 100644
> > --- a/kernel/Makefile
> > +++ b/kernel/Makefile
> > @@ -65,7 +65,7 @@ header-sync:
> >  	     "$(LINUX)"/arch/$(ARCH_DIR)/include/asm/./kvm*.h \
> >               $T/include/asm-$(ARCH_DIR)/
> >
> > -	set -e && for i in $(find $T -name '*.h'); do \
> > +	set -e && for i in $$(find $T -name '*.h'); do \
> >  		$(call unifdef,$$i); done
> >  	$(call hack, include/linux/kvm.h)
> >  	set -e && for i in $$(find $T -type f -printf '%P '); \
> > @@ -79,7 +79,7 @@ source-sync:
> >  	     "$(LINUX)"/virt/kvm/./*.[cSh] \
> >  	     $T/
> >
> > -	set -e && for i in $(find $T -name '*.c'); do \
> > +	set -e && for i in $$(find $T -name '*.c'); do \
> >  		$(call unifdef,$$i); done
> >
> >  	for i in $(hack-files); \
>
> Looks good, is this safe to apply given the current brokenness?

Yes, add -UCONFIG_IA64 make things fine. And I found the reason of exit is:

"EXIT STATUS
     The unifdef utility exits 0 if the output is an exact copy of the input, 
1 if not, and 2 if in trouble."

So, set -e is wrong too...

I will patch it later.

--
regards
Yang, Sheng

      reply	other threads:[~2008-10-20  7:53 UTC|newest]

Thread overview: 6+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2008-10-09 13:48 Broken userspace module Makefile Sheng Yang
2008-10-10  1:47 ` Zhang, Xiantao
2008-10-10  1:56   ` Sheng Yang
2008-10-10  2:03     ` Zhang, Xiantao
2008-10-19  9:25 ` Avi Kivity
2008-10-20  7:52   ` Sheng Yang [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=200810201552.10962.sheng@linux.intel.com \
    --to=sheng@linux.intel.com \
    --cc=avi@redhat.com \
    --cc=kvm@vger.kernel.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 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.