From: "Zhang, Rui" <rui.zhang@intel.com>
To: "rafael@kernel.org" <rafael@kernel.org>, "arnd@arndb.de" <arnd@arndb.de>
Cc: "lukasz.luba@arm.com" <lukasz.luba@arm.com>,
"linux-pm@vger.kernel.org" <linux-pm@vger.kernel.org>,
"arnd@kernel.org" <arnd@kernel.org>,
"linux-kernel@vger.kernel.org" <linux-kernel@vger.kernel.org>,
"sudeep.holla@arm.com" <sudeep.holla@arm.com>,
"cristian.marussi@arm.com" <cristian.marussi@arm.com>
Subject: Re: [PATCH] powercap: intel_rapl: fix CONFIG_IOSF_MBI dependency
Date: Tue, 6 Jun 2023 12:41:38 +0000 [thread overview]
Message-ID: <349dc09fb6875d5f16870ccbeb56e6fbc48af79b.camel@intel.com> (raw)
In-Reply-To: <CAJZ5v0iP+cmcoigiGwv58Hf8_3iM-+_5KZbAqiZyjqZxfBQR6A@mail.gmail.com>
Hi, Rafael,
On Fri, 2023-06-02 at 18:55 +0200, Rafael J. Wysocki wrote:
> On Fri, Jun 2, 2023 at 11:11 AM Arnd Bergmann <arnd@arndb.de> wrote:
> >
> > On Fri, Jun 2, 2023, at 10:04, Zhang, Rui wrote:
> > > On Thu, 2023-06-01 at 23:32 +0200, Arnd Bergmann wrote:
> > > > From: Arnd Bergmann <arnd@arndb.de>
> > > >
> > > > When the intel_rapl driver is built-in, but iosf_mbi is a
> > > > loadable
> > > > module,
> > > > the kernel fails to link:
> > > >
> > > > x86_64-linux-ld: vmlinux.o: in function `set_floor_freq_atom':
> > > > intel_rapl_common.c:(.text+0x2dac9b8): undefined reference to
> > > > `iosf_mbi_write'
> > > > x86_64-linux-ld: intel_rapl_common.c:(.text+0x2daca66):
> > > > undefined
> > > > reference to `iosf_mbi_read'
> > > >
> > >
> > > IMO, it is the intel_rapl_common.c that calls IOSF APIs without
> > > specifying the dependency. Thus it should be fixed by something
> > > like
> > > below,
> > >
> > > --- a/drivers/powercap/Kconfig
> > > +++ b/drivers/powercap/Kconfig
> > > @@ -18,10 +18,11 @@ if POWERCAP
> > > # Client driver configurations go here.
> > > config INTEL_RAPL_CORE
> > > tristate
> > > + select IOSF_MBI
> > >
> > > config INTEL_RAPL
> > > tristate "Intel RAPL Support via MSR Interface"
> > > - depends on X86 && IOSF_MBI
> > > + depends on X86
> > > select INTEL_RAPL_CORE
> > > help
> > > This enables support for the Intel Running Average Power
> > > Limit
> >
> > I think that has the logic slightly backwards from a usability
> > point
> > of view: The way I read the arch/x86/Kconfig description, IOSF_MBI
> > is a feature of specific Intel hardware implementations, which
> > gets enabled when any of these SoC platforms are enabled in
> > the build, and the INTEL_RAPL driver specifically only works
> > on those, while the new INTEL_RAPL_TPMI driver works on other
> > hardware.
> >
> > More generally speaking, I think it is a mistake for a device
> > driver in one subsystem to use 'select' to enforce a build
> > dependency on a driver in another subsystem when the other
> > symbol is user-visible.
>
> IOSF_MBI is already selected from multiple places and while you can
> argue that they are all mistakes, this particular new one would not
> be
> worse than any of them.
>
> IMO it would be better if IOSF_MBI were not user-visible (and
> interestingly enough, whoever selects it should also select PCI or
> depend on it - I'm not really sure if that dependency is taken care
> of
> in all cases).
Agreed.
Even the previous RAPL code does not select PCI or depend on it.
Let me refresh the patch and resend.
thanks,
rui
next prev parent reply other threads:[~2023-06-06 12:41 UTC|newest]
Thread overview: 10+ messages / expand[flat|nested] mbox.gz Atom feed top
2023-06-01 21:32 [PATCH] powercap: intel_rapl: fix CONFIG_IOSF_MBI dependency Arnd Bergmann
2023-06-02 8:04 ` Zhang, Rui
2023-06-02 9:11 ` Arnd Bergmann
2023-06-02 16:55 ` Rafael J. Wysocki
2023-06-06 12:41 ` Zhang, Rui [this message]
-- strict thread matches above, loose matches on Subject: below --
2023-06-06 14:00 [PATCH] powercap: intel_rapl: Fix " Zhang Rui
2023-06-06 15:45 ` kernel test robot
2023-06-07 2:22 ` Zhang, Rui
2023-06-12 17:50 ` Rafael J. Wysocki
2023-06-06 16:17 ` kernel test robot
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=349dc09fb6875d5f16870ccbeb56e6fbc48af79b.camel@intel.com \
--to=rui.zhang@intel.com \
--cc=arnd@arndb.de \
--cc=arnd@kernel.org \
--cc=cristian.marussi@arm.com \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-pm@vger.kernel.org \
--cc=lukasz.luba@arm.com \
--cc=rafael@kernel.org \
--cc=sudeep.holla@arm.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;
as well as URLs for NNTP newsgroup(s).