From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([208.118.235.92]:60356) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1Swemp-0004Y7-Lt for qemu-devel@nongnu.org; Wed, 01 Aug 2012 15:40:54 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1Swemo-00036v-Fu for qemu-devel@nongnu.org; Wed, 01 Aug 2012 15:40:51 -0400 Received: from mx1.redhat.com ([209.132.183.28]:61089) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1Swemo-00036j-7Y for qemu-devel@nongnu.org; Wed, 01 Aug 2012 15:40:50 -0400 Message-ID: <1343850047.6698.42.camel@bling.home> From: Alex Williamson Date: Wed, 01 Aug 2012 13:40:47 -0600 In-Reply-To: <1343844888.6698.8.camel@bling.home> References: <20120801050241.22163.78549.stgit@bling.home> <20120801051821.22163.64385.stgit@bling.home> <5018D78A.4040704@web.de> <1343844888.6698.8.camel@bling.home> Content-Type: text/plain; charset="UTF-8" Mime-Version: 1.0 Content-Transfer-Encoding: 7bit Subject: Re: [Qemu-devel] [PATCH 3/3] vfio: Enable vfio-pci and mark supported List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: Jan Kiszka Cc: aik@ozlabs.ru, aliguori@us.ibm.com, qemu-devel@nongnu.org, kvm@vger.kernel.org On Wed, 2012-08-01 at 12:14 -0600, Alex Williamson wrote: > On Wed, 2012-08-01 at 09:15 +0200, Jan Kiszka wrote: > > On 2012-08-01 07:18, Alex Williamson wrote: > > > Signed-off-by: Alex Williamson > > > --- > > > > > > MAINTAINERS | 5 +++++ > > > configure | 12 ++++++++++++ > > > hw/i386/Makefile.objs | 1 + > > > 3 files changed, 18 insertions(+) > > > > > > diff --git a/MAINTAINERS b/MAINTAINERS > > > index 2d219d2..9680d69 100644 > > > --- a/MAINTAINERS > > > +++ b/MAINTAINERS > > > @@ -460,6 +460,11 @@ M: Gerd Hoffmann > > > S: Maintained > > > F: hw/usb* > > > > > > +VFIO > > > +M: Alex Williamson > > > +S: Supported > > > +F: hw/vfio* > > > + > > > vhost > > > M: Michael S. Tsirkin > > > S: Supported > > > diff --git a/configure b/configure > > > index c65b5f6..81108dc 100755 > > > --- a/configure > > > +++ b/configure > > > @@ -143,6 +143,7 @@ attr="" > > > libattr="" > > > xfs="" > > > > > > +vfio_pci="no" > > > vhost_net="no" > > > kvm="no" > > > gprof="no" > > > @@ -489,6 +490,7 @@ Haiku) > > > usb="linux" > > > kvm="yes" > > > vhost_net="yes" > > > + vfio_pci="yes" > > > if [ "$cpu" = "i386" -o "$cpu" = "x86_64" ] ; then > > > audio_possible_drivers="$audio_possible_drivers fmod" > > > fi > > > @@ -824,6 +826,10 @@ for opt do > > > ;; > > > --disable-guest-agent) guest_agent="no" > > > ;; > > > + --disable-vfio-pci) vfio_pci="no" > > > + ;; > > > + --enable-vfio-pci) vfio_pci="yes" > > > + ;; > > > > Do we need this level of control? Open question I'm just wondering every > > time a new feature gets added together with --disable/--enable switches. > > Well, I could certainly understand if some downstream wanted to ship a > qemu that didn't enable device assignment. I'm sure they'd rather have > a config option to do that instead of needing to modify code. I > generally find --enable useful to force an error and tell me what I'm > missing when I specifically want a feature rather than having it > silently disabled. > > > > *) echo "ERROR: unknown option $opt"; show_help="yes" > > > ;; > > > esac > > > @@ -1112,6 +1118,8 @@ echo " --disable-guest-agent disable building of the QEMU Guest Agent" > > > echo " --enable-guest-agent enable building of the QEMU Guest Agent" > > > echo " --with-coroutine=BACKEND coroutine backend. Supported options:" > > > echo " gthread, ucontext, sigaltstack, windows" > > > +echo " --disable-vfio-pci disable vfio pci device assignement support" > > > +echo " --enable-vfio-pci enable vfio pci device assignment support" > > > echo "" > > > echo "NOTE: The object files are built at the place where configure is launched" > > > exit 1 > > > @@ -3072,6 +3080,7 @@ echo "OpenGL support $opengl" > > > echo "libiscsi support $libiscsi" > > > echo "build guest agent $guest_agent" > > > echo "coroutine backend $coroutine_backend" > > > +echo "VFIO PCI support $vfio_pci" > > > > > > if test "$sdl_too_old" = "yes"; then > > > echo "-> Your SDL version is too old - please upgrade to have SDL support" > > > @@ -3754,6 +3763,9 @@ case "$target_arch2" in > > > *) > > > echo "CONFIG_NO_XEN=y" >> $config_target_mak > > > esac > > > +if test "$vfio_pci" = "yes" -a "$target_softmmu" = "yes" ; then > > > + echo "CONFIG_VFIO_PCI=y" >> $config_target_mak > > > +fi > > > > Does this already somehow depend on host == Linux? If not, you may break > > the others. > > Hmm, probably missing that, I'll look where to add it. Thanks, Or I'm just forgetful. This is handled by the vfio_pci="yes" in the second chunk of configure above. Thanks, Alex