From: Alex Williamson <alex.williamson@redhat.com>
To: Michael Ellerman <mpe@ellerman.id.au>
Cc: Paolo Bonzini <pbonzini@redhat.com>,
kvm@vger.kernel.org, linux-kernel@vger.kernel.org,
linuxppc-dev@ozlabs.org, aik@ozlabs.ru,
gwshan@linux.vnet.ibm.com
Subject: Re: [PATCH] vfio: Fix build break when SPAPR_TCE_IOMMU=n
Date: Mon, 7 Nov 2016 17:07:23 -0700 [thread overview]
Message-ID: <20161107170723.66608632@t450s.home> (raw)
In-Reply-To: <87wpgeluk0.fsf@concordia.ellerman.id.au>
On Tue, 08 Nov 2016 10:49:35 +1100
Michael Ellerman <mpe@ellerman.id.au> wrote:
> Alex Williamson <alex.williamson@redhat.com> writes:
> > On Mon, 07 Nov 2016 19:34:42 +1100
> > Michael Ellerman <mpe@ellerman.id.au> wrote:
> >> Paolo Bonzini <pbonzini@redhat.com> writes:
> >> > On 04/11/2016 06:48, Michael Ellerman wrote:
> >> >> diff --git a/drivers/vfio/Kconfig b/drivers/vfio/Kconfig
> >> >> index da6e2ce77495..6b51a4ebed8a 100644
> >> >> --- a/drivers/vfio/Kconfig
> >> >> +++ b/drivers/vfio/Kconfig
> >> >> @@ -6,12 +6,12 @@ config VFIO_IOMMU_TYPE1
> >> >> config VFIO_IOMMU_SPAPR_TCE
> >> >> tristate
> >> >> depends on VFIO && SPAPR_TCE_IOMMU
> >> >> - default n
> >> >> + default VFIO
> >> >
> >> > No need to depend on VFIO since you already have it in "default".
> >
> > depends and defaults are different beasts though, if VFIO is not
> > enabled and we're not on a powerpc system with SPAPR,
> > VFIO_IOMMU_SPAPR_TCE should not be selectable, not just default to 'n'.
>
> Right. But dropping VFIO from the depends won't change that. In fact it
> has no effect because the entire directory is not built if VFIO=n.
>
> See drivers/Makefile:
>
> obj-$(CONFIG_VFIO) += vfio/
>
>
> So we don't need the depends on VFIO there.
>
> >> > A shorthand is
> >> >
> >> > def_tristate VFIO && SPAPR_TCE_IOMMU
> >>
> >> Yep. My experience though is that a lot of folks don't really know what
> >> that means. So I prefer to spell it out with an explicit type, depends
> >> and default.
> >>
> >> But I'll respin it that way if Alex prefers the shorter style.
> >
> > Perhaps I'm one of those people. Non-powerpc archs should not have an
> > option to select this, which is why the depends is there, AIUI. So
> > long as we don't start exposing options that aren't relevant to a
> > platform, I'm flexible on what shorthands we use, but you may need to
> > teach me about them first. Thanks,
>
> Using the def_tristate trick won't expose the option to users, because
> it has no description it's not user selectable. But it does make the
> symbol exist on an x86 build, and it appears in the .config.
>
> eg, using def_tristate you get:
>
> # CONFIG_VFIO_IOMMU_SPAPR_TCE is not set
> # CONFIG_VFIO is not set
>
> Whereas using depends all you get is:
>
> # CONFIG_VFIO is not set
>
>
> So using def_tristate in this case is not entirely equivalent.
I get a surprising number of users trying to manually hack on
their .config file, so I'd prefer it not appear in the .config unless
CONFIG_VFIO is y/m _and_ the user is actually building to a config
where SPAPR is relevant. I'm sure it will save me at least a few
questions in the future. Thanks,
Alex
next prev parent reply other threads:[~2016-11-08 0:07 UTC|newest]
Thread overview: 9+ messages / expand[flat|nested] mbox.gz Atom feed top
2016-11-04 5:48 [PATCH] vfio: Fix build break when SPAPR_TCE_IOMMU=n Michael Ellerman
2016-11-04 10:01 ` Paolo Bonzini
2016-11-07 8:34 ` Michael Ellerman
2016-11-07 16:25 ` Alex Williamson
2016-11-07 16:30 ` Paolo Bonzini
2016-11-07 23:49 ` Michael Ellerman
2016-11-08 0:07 ` Alex Williamson [this message]
2017-02-02 9:50 ` Michael Ellerman
2017-02-02 17:08 ` Alex Williamson
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=20161107170723.66608632@t450s.home \
--to=alex.williamson@redhat.com \
--cc=aik@ozlabs.ru \
--cc=gwshan@linux.vnet.ibm.com \
--cc=kvm@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linuxppc-dev@ozlabs.org \
--cc=mpe@ellerman.id.au \
--cc=pbonzini@redhat.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