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

From: Joerg Roedel <[email-masked]>
Date: Mon, 2 Sep 2019 16:03:47 +0200

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()) {
>       |                                      ^~~~~~~~~~
>       |                                      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 <[email-masked]>
	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