IOMMU Archive on lore.kernel.org
 help / color / Atom feed
* [PATCH next] iommu: intel: don't dereference iommu_device if IOMMU_API is not built
@ 2020-10-13  7:30 Bartosz Golaszewski
  2020-10-13  9:16 ` David Woodhouse
                   ` (2 more replies)
  0 siblings, 3 replies; 8+ messages in thread
From: Bartosz Golaszewski @ 2020-10-13  7:30 UTC (permalink / raw)
  To: David Woodhouse, Lu Baolu, Joerg Roedel
  Cc: Bartosz Golaszewski, iommu, linux-kernel

From: Bartosz Golaszewski <bgolaszewski@baylibre.com>

Since commit c40aaaac1018 ("iommu/vt-d: Gracefully handle DMAR units
with no supported address widths") dmar.c needs struct iommu_device to
be selected. We can drop this dependency by not dereferencing struct
iommu_device if IOMMU_API is not selected and by reusing the information
stored in iommu->drhd->ignored instead.

This fixes the following build error when IOMMU_API is not selected:

drivers/iommu/intel/dmar.c: In function ‘free_iommu’:
drivers/iommu/intel/dmar.c:1139:41: error: ‘struct iommu_device’ has no member named ‘ops’
 1139 |  if (intel_iommu_enabled && iommu->iommu.ops) {
                                                ^

Fixes: c40aaaac1018 ("iommu/vt-d: Gracefully handle DMAR units with no supported address widths")
Signed-off-by: Bartosz Golaszewski <bgolaszewski@baylibre.com>
---
 drivers/iommu/intel/dmar.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/drivers/iommu/intel/dmar.c b/drivers/iommu/intel/dmar.c
index 2d70d56d8e0d..404b40af31cb 100644
--- a/drivers/iommu/intel/dmar.c
+++ b/drivers/iommu/intel/dmar.c
@@ -1136,7 +1136,7 @@ static int alloc_iommu(struct dmar_drhd_unit *drhd)
 
 static void free_iommu(struct intel_iommu *iommu)
 {
-	if (intel_iommu_enabled && iommu->iommu.ops) {
+	if (intel_iommu_enabled && !iommu->drhd->ignored) {
 		iommu_device_unregister(&iommu->iommu);
 		iommu_device_sysfs_remove(&iommu->iommu);
 	}
-- 
2.28.0

_______________________________________________
iommu mailing list
iommu@lists.linux-foundation.org
https://lists.linuxfoundation.org/mailman/listinfo/iommu

^ permalink raw reply	[flat|nested] 8+ messages in thread

* Re: [PATCH next] iommu: intel: don't dereference iommu_device if IOMMU_API is not built
  2020-10-13  7:30 [PATCH next] iommu: intel: don't dereference iommu_device if IOMMU_API is not built Bartosz Golaszewski
@ 2020-10-13  9:16 ` David Woodhouse
  2020-10-14  0:42 ` Lu Baolu
  2020-10-19 12:07 ` Joerg Roedel
  2 siblings, 0 replies; 8+ messages in thread
From: David Woodhouse @ 2020-10-13  9:16 UTC (permalink / raw)
  To: Bartosz Golaszewski, Lu Baolu, Joerg Roedel
  Cc: Bartosz Golaszewski, iommu, linux-kernel

[-- Attachment #1.1: Type: text/plain, Size: 1091 bytes --]

On Tue, 2020-10-13 at 09:30 +0200, Bartosz Golaszewski wrote:
> From: Bartosz Golaszewski <bgolaszewski@baylibre.com>
> 
> Since commit c40aaaac1018 ("iommu/vt-d: Gracefully handle DMAR units
> with no supported address widths") dmar.c needs struct iommu_device to
> be selected. We can drop this dependency by not dereferencing struct
> iommu_device if IOMMU_API is not selected and by reusing the information
> stored in iommu->drhd->ignored instead.
> 
> This fixes the following build error when IOMMU_API is not selected:
> 
> drivers/iommu/intel/dmar.c: In function ‘free_iommu’:
> drivers/iommu/intel/dmar.c:1139:41: error: ‘struct iommu_device’ has no member named ‘ops’
>  1139 |  if (intel_iommu_enabled && iommu->iommu.ops) {
>                                                 ^
> 
> Fixes: c40aaaac1018 ("iommu/vt-d: Gracefully handle DMAR units with no supported address widths")
> Signed-off-by: Bartosz Golaszewski <bgolaszewski@baylibre.com>

Oops, apologies for that. Thanks for fixing it.

Acked-by: David Woodhouse <dwmw@amazon.co.uk>



[-- Attachment #1.2: smime.p7s --]
[-- Type: application/x-pkcs7-signature, Size: 5174 bytes --]

[-- Attachment #2: Type: text/plain, Size: 156 bytes --]

_______________________________________________
iommu mailing list
iommu@lists.linux-foundation.org
https://lists.linuxfoundation.org/mailman/listinfo/iommu

^ permalink raw reply	[flat|nested] 8+ messages in thread

* Re: [PATCH next] iommu: intel: don't dereference iommu_device if IOMMU_API is not built
  2020-10-13  7:30 [PATCH next] iommu: intel: don't dereference iommu_device if IOMMU_API is not built Bartosz Golaszewski
  2020-10-13  9:16 ` David Woodhouse
@ 2020-10-14  0:42 ` Lu Baolu
  2020-10-14  7:18   ` Bartosz Golaszewski
  2020-10-19 12:07 ` Joerg Roedel
  2 siblings, 1 reply; 8+ messages in thread
From: Lu Baolu @ 2020-10-14  0:42 UTC (permalink / raw)
  To: Bartosz Golaszewski, David Woodhouse, Joerg Roedel
  Cc: Bartosz Golaszewski, iommu, linux-kernel

On 10/13/20 3:30 PM, Bartosz Golaszewski wrote:
> From: Bartosz Golaszewski <bgolaszewski@baylibre.com>
> 
> Since commit c40aaaac1018 ("iommu/vt-d: Gracefully handle DMAR units
> with no supported address widths") dmar.c needs struct iommu_device to
> be selected. We can drop this dependency by not dereferencing struct
> iommu_device if IOMMU_API is not selected and by reusing the information
> stored in iommu->drhd->ignored instead.
> 
> This fixes the following build error when IOMMU_API is not selected:
> 
> drivers/iommu/intel/dmar.c: In function ‘free_iommu’:
> drivers/iommu/intel/dmar.c:1139:41: error: ‘struct iommu_device’ has no member named ‘ops’
>   1139 |  if (intel_iommu_enabled && iommu->iommu.ops) {
>                                                  ^
> 
> Fixes: c40aaaac1018 ("iommu/vt-d: Gracefully handle DMAR units with no supported address widths")
> Signed-off-by: Bartosz Golaszewski <bgolaszewski@baylibre.com>

With commit title adjusted to "iommu/vt-d: Don't dereference
iommu_device if IOMMU_API is not built",

Acked-by: Lu Baolu <baolu.lu@linux.intel.com>

Best regards,
baolu

> ---
>   drivers/iommu/intel/dmar.c | 2 +-
>   1 file changed, 1 insertion(+), 1 deletion(-)
> 
> diff --git a/drivers/iommu/intel/dmar.c b/drivers/iommu/intel/dmar.c
> index 2d70d56d8e0d..404b40af31cb 100644
> --- a/drivers/iommu/intel/dmar.c
> +++ b/drivers/iommu/intel/dmar.c
> @@ -1136,7 +1136,7 @@ static int alloc_iommu(struct dmar_drhd_unit *drhd)
>   
>   static void free_iommu(struct intel_iommu *iommu)
>   {
> -	if (intel_iommu_enabled && iommu->iommu.ops) {
> +	if (intel_iommu_enabled && !iommu->drhd->ignored) {
>   		iommu_device_unregister(&iommu->iommu);
>   		iommu_device_sysfs_remove(&iommu->iommu);
>   	}
> 
_______________________________________________
iommu mailing list
iommu@lists.linux-foundation.org
https://lists.linuxfoundation.org/mailman/listinfo/iommu

^ permalink raw reply	[flat|nested] 8+ messages in thread

* Re: [PATCH next] iommu: intel: don't dereference iommu_device if IOMMU_API is not built
  2020-10-14  0:42 ` Lu Baolu
@ 2020-10-14  7:18   ` Bartosz Golaszewski
  2020-10-14  7:25     ` Lu Baolu
  0 siblings, 1 reply; 8+ messages in thread
From: Bartosz Golaszewski @ 2020-10-14  7:18 UTC (permalink / raw)
  To: Lu Baolu
  Cc: Bartosz Golaszewski, David Woodhouse, iommu, Linux Kernel Mailing List

On Wed, Oct 14, 2020 at 2:49 AM Lu Baolu <baolu.lu@linux.intel.com> wrote:
>
> On 10/13/20 3:30 PM, Bartosz Golaszewski wrote:
> > From: Bartosz Golaszewski <bgolaszewski@baylibre.com>
> >
> > Since commit c40aaaac1018 ("iommu/vt-d: Gracefully handle DMAR units
> > with no supported address widths") dmar.c needs struct iommu_device to
> > be selected. We can drop this dependency by not dereferencing struct
> > iommu_device if IOMMU_API is not selected and by reusing the information
> > stored in iommu->drhd->ignored instead.
> >
> > This fixes the following build error when IOMMU_API is not selected:
> >
> > drivers/iommu/intel/dmar.c: In function ‘free_iommu’:
> > drivers/iommu/intel/dmar.c:1139:41: error: ‘struct iommu_device’ has no member named ‘ops’
> >   1139 |  if (intel_iommu_enabled && iommu->iommu.ops) {
> >                                                  ^
> >
> > Fixes: c40aaaac1018 ("iommu/vt-d: Gracefully handle DMAR units with no supported address widths")
> > Signed-off-by: Bartosz Golaszewski <bgolaszewski@baylibre.com>
>
> With commit title adjusted to "iommu/vt-d: Don't dereference
> iommu_device if IOMMU_API is not built",
>
> Acked-by: Lu Baolu <baolu.lu@linux.intel.com>
>

Do you want me to resend it again with a changed title or can you fix
it up when applying? Or should someone else pick it up?

Bartosz
_______________________________________________
iommu mailing list
iommu@lists.linux-foundation.org
https://lists.linuxfoundation.org/mailman/listinfo/iommu

^ permalink raw reply	[flat|nested] 8+ messages in thread

* Re: [PATCH next] iommu: intel: don't dereference iommu_device if IOMMU_API is not built
  2020-10-14  7:18   ` Bartosz Golaszewski
@ 2020-10-14  7:25     ` Lu Baolu
  2020-10-14 12:57       ` Joerg Roedel
  0 siblings, 1 reply; 8+ messages in thread
From: Lu Baolu @ 2020-10-14  7:25 UTC (permalink / raw)
  To: Bartosz Golaszewski
  Cc: Linux Kernel Mailing List, Bartosz Golaszewski, iommu, David Woodhouse

Hi Bartosz,

On 10/14/20 3:18 PM, Bartosz Golaszewski wrote:
> On Wed, Oct 14, 2020 at 2:49 AM Lu Baolu <baolu.lu@linux.intel.com> wrote:
>>
>> On 10/13/20 3:30 PM, Bartosz Golaszewski wrote:
>>> From: Bartosz Golaszewski <bgolaszewski@baylibre.com>
>>>
>>> Since commit c40aaaac1018 ("iommu/vt-d: Gracefully handle DMAR units
>>> with no supported address widths") dmar.c needs struct iommu_device to
>>> be selected. We can drop this dependency by not dereferencing struct
>>> iommu_device if IOMMU_API is not selected and by reusing the information
>>> stored in iommu->drhd->ignored instead.
>>>
>>> This fixes the following build error when IOMMU_API is not selected:
>>>
>>> drivers/iommu/intel/dmar.c: In function ‘free_iommu’:
>>> drivers/iommu/intel/dmar.c:1139:41: error: ‘struct iommu_device’ has no member named ‘ops’
>>>    1139 |  if (intel_iommu_enabled && iommu->iommu.ops) {
>>>                                                   ^
>>>
>>> Fixes: c40aaaac1018 ("iommu/vt-d: Gracefully handle DMAR units with no supported address widths")
>>> Signed-off-by: Bartosz Golaszewski <bgolaszewski@baylibre.com>
>>
>> With commit title adjusted to "iommu/vt-d: Don't dereference
>> iommu_device if IOMMU_API is not built",
>>
>> Acked-by: Lu Baolu <baolu.lu@linux.intel.com>
>>
> 
> Do you want me to resend it again with a changed title or can you fix
> it up when applying? Or should someone else pick it up?

I suppose Joerg will pick this up. I guess you don't need to resend it
unless Joerg asks you to do.

Best regards,
baolu
_______________________________________________
iommu mailing list
iommu@lists.linux-foundation.org
https://lists.linuxfoundation.org/mailman/listinfo/iommu

^ permalink raw reply	[flat|nested] 8+ messages in thread

* Re: [PATCH next] iommu: intel: don't dereference iommu_device if IOMMU_API is not built
  2020-10-14  7:25     ` Lu Baolu
@ 2020-10-14 12:57       ` Joerg Roedel
  2020-10-17 10:27         ` David Woodhouse
  0 siblings, 1 reply; 8+ messages in thread
From: Joerg Roedel @ 2020-10-14 12:57 UTC (permalink / raw)
  To: Lu Baolu
  Cc: Bartosz Golaszewski, Bartosz Golaszewski, David Woodhouse, iommu,
	Linux Kernel Mailing List

On Wed, Oct 14, 2020 at 03:25:08PM +0800, Lu Baolu wrote:
> I suppose Joerg will pick this up. I guess you don't need to resend it
> unless Joerg asks you to do.

Yes, will pick this up soon, no need to re-send.

Thanks,

	Joerg
_______________________________________________
iommu mailing list
iommu@lists.linux-foundation.org
https://lists.linuxfoundation.org/mailman/listinfo/iommu

^ permalink raw reply	[flat|nested] 8+ messages in thread

* Re: [PATCH next] iommu: intel: don't dereference iommu_device if IOMMU_API is not built
  2020-10-14 12:57       ` Joerg Roedel
@ 2020-10-17 10:27         ` David Woodhouse
  0 siblings, 0 replies; 8+ messages in thread
From: David Woodhouse @ 2020-10-17 10:27 UTC (permalink / raw)
  To: Joerg Roedel, Lu Baolu
  Cc: Bartosz Golaszewski, Bartosz Golaszewski, iommu,
	Linux Kernel Mailing List

[-- Attachment #1.1: Type: text/plain, Size: 347 bytes --]

On Wed, 2020-10-14 at 14:57 +0200, Joerg Roedel wrote:
> On Wed, Oct 14, 2020 at 03:25:08PM +0800, Lu Baolu wrote:
> > I suppose Joerg will pick this up. I guess you don't need to resend it
> > unless Joerg asks you to do.
> 
> Yes, will pick this up soon, no need to re-send.

Please could it, and the commit it fixes, both go to stable@

[-- Attachment #1.2: smime.p7s --]
[-- Type: application/x-pkcs7-signature, Size: 5174 bytes --]

[-- Attachment #2: Type: text/plain, Size: 156 bytes --]

_______________________________________________
iommu mailing list
iommu@lists.linux-foundation.org
https://lists.linuxfoundation.org/mailman/listinfo/iommu

^ permalink raw reply	[flat|nested] 8+ messages in thread

* Re: [PATCH next] iommu: intel: don't dereference iommu_device if IOMMU_API is not built
  2020-10-13  7:30 [PATCH next] iommu: intel: don't dereference iommu_device if IOMMU_API is not built Bartosz Golaszewski
  2020-10-13  9:16 ` David Woodhouse
  2020-10-14  0:42 ` Lu Baolu
@ 2020-10-19 12:07 ` Joerg Roedel
  2 siblings, 0 replies; 8+ messages in thread
From: Joerg Roedel @ 2020-10-19 12:07 UTC (permalink / raw)
  To: Bartosz Golaszewski
  Cc: Bartosz Golaszewski, iommu, David Woodhouse, linux-kernel

On Tue, Oct 13, 2020 at 09:30:55AM +0200, Bartosz Golaszewski wrote:
> From: Bartosz Golaszewski <bgolaszewski@baylibre.com>
> 
> Since commit c40aaaac1018 ("iommu/vt-d: Gracefully handle DMAR units
> with no supported address widths") dmar.c needs struct iommu_device to
> be selected. We can drop this dependency by not dereferencing struct
> iommu_device if IOMMU_API is not selected and by reusing the information
> stored in iommu->drhd->ignored instead.
> 
> This fixes the following build error when IOMMU_API is not selected:
> 
> drivers/iommu/intel/dmar.c: In function ‘free_iommu’:
> drivers/iommu/intel/dmar.c:1139:41: error: ‘struct iommu_device’ has no member named ‘ops’
>  1139 |  if (intel_iommu_enabled && iommu->iommu.ops) {
>                                                 ^
> 
> Fixes: c40aaaac1018 ("iommu/vt-d: Gracefully handle DMAR units with no supported address widths")
> Signed-off-by: Bartosz Golaszewski <bgolaszewski@baylibre.com>
> ---
>  drivers/iommu/intel/dmar.c | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)

Applied, thanks.

_______________________________________________
iommu mailing list
iommu@lists.linux-foundation.org
https://lists.linuxfoundation.org/mailman/listinfo/iommu

^ permalink raw reply	[flat|nested] 8+ messages in thread

end of thread, back to index

Thread overview: 8+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2020-10-13  7:30 [PATCH next] iommu: intel: don't dereference iommu_device if IOMMU_API is not built Bartosz Golaszewski
2020-10-13  9:16 ` David Woodhouse
2020-10-14  0:42 ` Lu Baolu
2020-10-14  7:18   ` Bartosz Golaszewski
2020-10-14  7:25     ` Lu Baolu
2020-10-14 12:57       ` Joerg Roedel
2020-10-17 10:27         ` David Woodhouse
2020-10-19 12:07 ` Joerg Roedel

IOMMU Archive on lore.kernel.org

Archives are clonable:
	git clone --mirror https://lore.kernel.org/linux-iommu/0 linux-iommu/git/0.git

	# If you have public-inbox 1.1+ installed, you may
	# initialize and index your mirror using the following commands:
	public-inbox-init -V2 linux-iommu linux-iommu/ https://lore.kernel.org/linux-iommu \
		iommu@lists.linux-foundation.org
	public-inbox-index linux-iommu

Example config snippet for mirrors

Newsgroup available over NNTP:
	nntp://nntp.lore.kernel.org/org.linux-foundation.lists.iommu


AGPL code for this site: git clone https://public-inbox.org/public-inbox.git