Re: linux-next: build failure after merge of the iommu tree

From: Lendacky, Thomas
Date: Mon Sep 02 2019 - 10:26:47 EST


On 9/2/19 9:03 AM, Joerg Roedel wrote:
> Hi,
>
> tl;dr: And IOMMU commit introduces a new user for sme_active() in
> generic code, and commit
>
> 284e21fab2cf x86, s390/mm: Move sme_active() and sme_me_mask to x86-specific header
>
> breaks the build of drivers/iommu/ for all architectures not
> implementing sme_active().
>
> On Mon, Sep 02, 2019 at 04:39:51PM +1000, Stephen Rothwell wrote:
>> drivers/iommu/iommu.c: In function 'iommu_subsys_init':
>> drivers/iommu/iommu.c:123:38: error: implicit declaration of function 'sme_active'; did you mean 'cpu_active'? [-Werror=implicit-function-declaration]
>> 123 | if (iommu_default_passthrough() && sme_active()) {

Maybe we should make this mem_encrypt_active(), since this will probably
be needed if/when an IOMMU device is eventually added to a guest, and the
referenced commit below doesn't remove that call.

Thanks,
Tom

>> | ^~~~~~~~~~
>> | cpu_active
>>
>> Caused by commit
>>
>> 2cc13bb4f59f ("iommu: Disable passthrough mode when SME is active")
>
>
> Actually it is caused by:
>
> commit 284e21fab2cfcf90dacce565e0b12f29e5df00c1
> Author: Thiago Jung Bauermann <bauerman@xxxxxxxxxxxxx>
> Date: Tue Aug 6 01:49:17 2019 -0300
>
> x86, s390/mm: Move sme_active() and sme_me_mask to x86-specific header
>
> which removes the sme_active prototype from the generic headers. The
> iommu commit is in next already for a couple of days and didn't cause
> problems before.
>
>> sme_active() seems to be only relevant to X86.
>
> It has an implementation on x86 and s390.
>
>> I have reverted that commit for today.
>
> Thanks, but I suggest reverting above commit instead.
>
>
> Regards,
>
> Joerg
>