public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
From: Avi Kivity <avi@qumranet.com>
To: Randy Dunlap <randy.dunlap@oracle.com>
Cc: kvm-devel@lists.sourceforge.net,
	lkml <linux-kernel@vger.kernel.org>,
	linux-next@vger.kernel.org, hpa <hpa@zytor.com>,
	mingo <mingo@redhat.com>
Subject: Re: [kvm-devel] [PATCH] x86: don't allow KVM_CLOCK without HAVE_KVM
Date: Mon, 17 Mar 2008 19:01:53 +0200	[thread overview]
Message-ID: <47DEA401.7080407@qumranet.com> (raw)
In-Reply-To: <20080317085555.b5168b6f.randy.dunlap@oracle.com>

Randy Dunlap wrote:
> On Sun, 16 Mar 2008 13:13:08 +0200 Avi Kivity wrote:
>
>   
>> Randy Dunlap wrote:
>>     
>>> From: Randy Dunlap <randy.dunlap@oracle.com>
>>>
>>> Make KVM_CLOCK depend on HAVE_KVM.  Otherwise a Voyager build can
>>> fail with:
>>>
>>>   CC      arch/x86/kernel/asm-offsets.s
>>> In file included from include2/asm/irqflags.h:59,
>>>                  from /local/linsrc/next-20080314/include/linux/irqflags.h:46,
>>>                  from include2/asm/system.h:11,
>>>                  from include2/asm/processor.h:21,
>>>                  from include2/asm/atomic_32.h:5,
>>>                  from include2/asm/atomic.h:2,
>>>                  from /local/linsrc/next-20080314/include/linux/crypto.h:20,
>>>                  from /local/linsrc/next-20080314/arch/x86/kernel/asm-offsets_32.c:7,
>>>                  from /local/linsrc/next-20080314/arch/x86/kernel/asm-offsets.c:2:
>>> include2/asm/paravirt.h: In function 'startup_ipi_hook':
>>> include2/asm/paravirt.h:856: error: 'struct pv_apic_ops' has no member named 'startup_ipi_hook'
>>> include2/asm/paravirt.h:856: error: 'struct pv_apic_ops' has no member named 'startup_ipi_hook'
>>> include2/asm/paravirt.h:856: error: memory input 4 is not directly addressable
>>> make[2]: *** [arch/x86/kernel/asm-offsets.s] Error 1
>>> make[1]: *** [prepare0] Error 2
>>> make: *** [sub-make] Error 2
>>>
>>>   
>>>       
>> Looks like it's a general paravirt vs voyager issue, nothing kvmclock 
>> specific about it.  Wouldn't it be better to have voyager and paravirt 
>> mutually exclude each other, rather than every paravirt user?
>>     
>
> They do generally mutually exclude each other.  I think that the problem
> is just that dirty old "select PARAVIRT" in config KVM_CLOCK.
> PARAVIRT depends on !(X86_VISWS || X86_VOYAGER), but "select" doesn't
> care^W honor that.  As Documentation/kbuild/kconfig-language.txt says:
>
> 	"In general use select only for
> 	non-visible symbols (no prompts anywhere) and for symbols with
> 	no dependencies. That will limit the usefulness but on the
> 	other hand avoid the illegal configurations all over. kconfig
> 	should one day warn about such things."
>
> so changing the select to depends on would fix it, but that's the
> only fix that I know of.
>   

A depends is horrible from the user point of view as it hides the 
feature completely if paravirt is not enabled.  So your original 
workaround is probably best.

Or maybe
   depends on PARAVIRT_CAPABLE
   selects PARAVIRT

Where PARAVIRT_CAPABLE is a synonym for !(X86_REMOVE_ME || 
X86_TOTAL_SILLYNESS), so we don't have to repeat it everywhere.

-- 
error compiling committee.c: too many arguments to function


  reply	other threads:[~2008-03-17 17:02 UTC|newest]

Thread overview: 6+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2008-03-14 17:44 [PATCH] x86: don't allow KVM_CLOCK without HAVE_KVM Randy Dunlap
2008-03-16 11:13 ` Avi Kivity
2008-03-17 15:55   ` Randy Dunlap
2008-03-17 17:01     ` Avi Kivity [this message]
2008-03-25 23:08 ` [PATCH v2] x86: don't allow KVM_CLOCK on Voyager or Visual WS Randy Dunlap
2008-03-27  8:25   ` [kvm-devel] " Avi Kivity

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=47DEA401.7080407@qumranet.com \
    --to=avi@qumranet.com \
    --cc=hpa@zytor.com \
    --cc=kvm-devel@lists.sourceforge.net \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-next@vger.kernel.org \
    --cc=mingo@redhat.com \
    --cc=randy.dunlap@oracle.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