lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Date:	Mon, 17 Mar 2008 08:55:55 -0700
From:	Randy Dunlap <randy.dunlap@...cle.com>
To:	Avi Kivity <avi@...ranet.com>
Cc:	lkml <linux-kernel@...r.kernel.org>, linux-next@...r.kernel.org,
	kvm-devel@...ts.sourceforge.net, tglx <tglx@...utronix.de>,
	mingo <mingo@...hat.com>, hpa <hpa@...or.com>
Subject: Re: [PATCH] x86: don't allow KVM_CLOCK without HAVE_KVM

On Sun, 16 Mar 2008 13:13:08 +0200 Avi Kivity wrote:

> Randy Dunlap wrote:
> > From: Randy Dunlap <randy.dunlap@...cle.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.

> HAVE_KVM is intended for the host, not the guest, btw.


---
~Randy
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ