On 2022-04-05 13:29, Takashi Iwai wrote:
On Tue, 05 Apr 2022 14:13:33 +0200,
Robin Murphy wrote:

iommu_get_domain_for_dev() is already perfectly happy to return NULL
if the given device has no IOMMU. Drop the unnecessary check.

Signed-off-by: Robin Murphy <[email protected]>

This will change the code behavior.  The current code does nothing if
no IOMMU is found, but after your removal of the check, the code
reaches to emu->iommu_workaround = true incorrectly.

Ah, right you are - I should have looked more closely at the second check, where of course "domain &&" wants tweaking to "!domain ||" as well. I'll send a v2 in a bit...

Thanks,
Robin.



thanks,

Takashi

---
  sound/pci/emu10k1/emu10k1_main.c | 3 ---
  1 file changed, 3 deletions(-)

diff --git a/sound/pci/emu10k1/emu10k1_main.c b/sound/pci/emu10k1/emu10k1_main.c
index 86cc1ca025e4..5ffab343b89c 100644
--- a/sound/pci/emu10k1/emu10k1_main.c
+++ b/sound/pci/emu10k1/emu10k1_main.c
@@ -1751,9 +1751,6 @@ static void snd_emu10k1_detect_iommu(struct snd_emu10k1 
*emu)
emu->iommu_workaround = false; - if (!iommu_present(emu->card->dev->bus))
-               return;
-
        domain = iommu_get_domain_for_dev(emu->card->dev);
        if (domain && domain->type == IOMMU_DOMAIN_IDENTITY)
                return;
--
2.28.0.dirty

_______________________________________________
iommu mailing list
[email protected]
https://lists.linuxfoundation.org/mailman/listinfo/iommu

Reply via email to