[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <1560769988.5187.20.camel@intel.com>
Date: Mon, 17 Jun 2019 11:13:11 +0000
From: "Huang, Kai" <kai.huang@...el.com>
To: "kirill@...temov.name" <kirill@...temov.name>,
"peterz@...radead.org" <peterz@...radead.org>
CC: "kvm@...r.kernel.org" <kvm@...r.kernel.org>,
"kirill.shutemov@...ux.intel.com" <kirill.shutemov@...ux.intel.com>,
"keyrings@...r.kernel.org" <keyrings@...r.kernel.org>,
"keescook@...omium.org" <keescook@...omium.org>,
"linux-kernel@...r.kernel.org" <linux-kernel@...r.kernel.org>,
"tglx@...utronix.de" <tglx@...utronix.de>,
"linux-mm@...ck.org" <linux-mm@...ck.org>,
"dhowells@...hat.com" <dhowells@...hat.com>,
"jacob.jun.pan@...ux.intel.com" <jacob.jun.pan@...ux.intel.com>,
"x86@...nel.org" <x86@...nel.org>,
"akpm@...ux-foundation.org" <akpm@...ux-foundation.org>,
"hpa@...or.com" <hpa@...or.com>,
"mingo@...hat.com" <mingo@...hat.com>,
"bp@...en8.de" <bp@...en8.de>,
"Hansen, Dave" <dave.hansen@...el.com>,
"luto@...capital.net" <luto@...capital.net>,
"Schofield, Alison" <alison.schofield@...el.com>
Subject: Re: [PATCH, RFC 20/62] mm/page_ext: Export lookup_page_ext() symbol
On Mon, 2019-06-17 at 23:01 +1200, Kai Huang wrote:
> On Mon, 2019-06-17 at 11:30 +0200, Peter Zijlstra wrote:
> > On Sat, Jun 15, 2019 at 01:44:43AM +0300, Kirill A. Shutemov wrote:
> > > On Fri, Jun 14, 2019 at 01:12:59PM +0200, Peter Zijlstra wrote:
> > > > On Wed, May 08, 2019 at 05:43:40PM +0300, Kirill A. Shutemov wrote:
> > > > > page_keyid() is inline funcation that uses lookup_page_ext(). KVM is
> > > > > going to use page_keyid() and since KVM can be built as a module
> > > > > lookup_page_ext() has to be exported.
> > > >
> > > > I _really_ hate having to export world+dog for KVM. This one might not
> > > > be a real issue, but I itch every time I see an export for KVM these
> > > > days.
> > >
> > > Is there any better way? Do we need to invent EXPORT_SYMBOL_KVM()? :P
> >
> > Or disallow KVM (or parts thereof) from being a module anymore.
>
> For this particular symbol expose, I don't think its fair to blame KVM since the fundamental
> reason
> is because page_keyid() (which calls lookup_page_ext()) being implemented as static inline
> function
> in header file, so essentially having any other module who calls page_keyid() will trigger this
> problem -- in fact IOMMU driver calls page_keyid() too so even w/o KVM lookup_page_ext() needs to
> be
> exposed.
Oops it seems Intel IOMMU driver is not a module but buildin so yes KVM is the only module who calls
page_keyid() now. Sorry my bad. But if there's any other module calls page_keyid(), this patch is
required.
Thanks,
-Kai
>
> Thanks,
> -Kai
>
Powered by blists - more mailing lists