All of lore.kernel.org
 help / color / mirror / Atom feed
From: Lu Baolu <baolu.lu@linux.intel.com>
To: Janusz Krzysztofik <janusz.krzysztofik@linux.intel.com>
Cc: baolu.lu@linux.intel.com, "David Woodhouse" <dwmw2@infradead.org>,
	"Joerg Roedel" <joro@8bytes.org>,
	iommu@lists.linux-foundation.org,
	intel-gfx@lists.freedesktop.org, linux-kernel@vger.kernel.org,
	"Michał Wajdeczko" <michal.wajdeczko@intel.com>
Subject: Re: [RFC PATCH] iommu/vt-d: Fix IOMMU field not populated on device hot re-plug
Date: Thu, 29 Aug 2019 09:43:31 +0800	[thread overview]
Message-ID: <0cf4e930-1132-1e7f-815b-57a08a1fe5de@linux.intel.com> (raw)
In-Reply-To: <3275480.HMaYE7B3nd@jkrzyszt-desk.ger.corp.intel.com>

Hi Janusz,

On 8/28/19 10:17 PM, Janusz Krzysztofik wrote:
>> We should avoid kernel panic when a intel_unmap() is called against
>> a non-existent domain.
> Does that mean you suggest to replace
> 	BUG_ON(!domain);
> with something like
> 	if (WARN_ON(!domain))
> 		return;
> and to not care of orphaned mappings left allocated?  Is there a way to inform
> users that their active DMA mappings are no longer valid and they shouldn't
> call dma_unmap_*()?
> 
>> But we shouldn't expect the IOMMU driver not
>> cleaning up the domain info when a device remove notification comes and
>> wait until all file descriptors being closed, right?
> Shouldn't then the IOMMU driver take care of cleaning up resources still
> allocated on device remove before it invalidates and forgets their pointers?
> 

You are right. We need to wait until all allocated resources (iova and
mappings) to be released.

How about registering a callback for BUS_NOTIFY_UNBOUND_DRIVER, and
removing the domain info when the driver detachment completes?

> Thanks,
> Janusz

Best regards,
Baolu

WARNING: multiple messages have this Message-ID (diff)
From: Lu Baolu <baolu.lu@linux.intel.com>
To: Janusz Krzysztofik <janusz.krzysztofik@linux.intel.com>
Cc: linux-kernel@vger.kernel.org, iommu@lists.linux-foundation.org,
	"Michał Wajdeczko" <michal.wajdeczko@intel.com>,
	"David Woodhouse" <dwmw2@infradead.org>,
	intel-gfx@lists.freedesktop.org
Subject: Re: [RFC PATCH] iommu/vt-d: Fix IOMMU field not populated on device hot re-plug
Date: Thu, 29 Aug 2019 09:43:31 +0800	[thread overview]
Message-ID: <0cf4e930-1132-1e7f-815b-57a08a1fe5de@linux.intel.com> (raw)
In-Reply-To: <3275480.HMaYE7B3nd@jkrzyszt-desk.ger.corp.intel.com>

Hi Janusz,

On 8/28/19 10:17 PM, Janusz Krzysztofik wrote:
>> We should avoid kernel panic when a intel_unmap() is called against
>> a non-existent domain.
> Does that mean you suggest to replace
> 	BUG_ON(!domain);
> with something like
> 	if (WARN_ON(!domain))
> 		return;
> and to not care of orphaned mappings left allocated?  Is there a way to inform
> users that their active DMA mappings are no longer valid and they shouldn't
> call dma_unmap_*()?
> 
>> But we shouldn't expect the IOMMU driver not
>> cleaning up the domain info when a device remove notification comes and
>> wait until all file descriptors being closed, right?
> Shouldn't then the IOMMU driver take care of cleaning up resources still
> allocated on device remove before it invalidates and forgets their pointers?
> 

You are right. We need to wait until all allocated resources (iova and
mappings) to be released.

How about registering a callback for BUS_NOTIFY_UNBOUND_DRIVER, and
removing the domain info when the driver detachment completes?

> Thanks,
> Janusz

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

WARNING: multiple messages have this Message-ID (diff)
From: Lu Baolu <baolu.lu@linux.intel.com>
To: Janusz Krzysztofik <janusz.krzysztofik@linux.intel.com>
Cc: Joerg Roedel <joro@8bytes.org>,
	linux-kernel@vger.kernel.org, iommu@lists.linux-foundation.org,
	David Woodhouse <dwmw2@infradead.org>,
	intel-gfx@lists.freedesktop.org, baolu.lu@linux.intel.com
Subject: Re: [RFC PATCH] iommu/vt-d: Fix IOMMU field not populated on device hot re-plug
Date: Thu, 29 Aug 2019 09:43:31 +0800	[thread overview]
Message-ID: <0cf4e930-1132-1e7f-815b-57a08a1fe5de@linux.intel.com> (raw)
In-Reply-To: <3275480.HMaYE7B3nd@jkrzyszt-desk.ger.corp.intel.com>

Hi Janusz,

On 8/28/19 10:17 PM, Janusz Krzysztofik wrote:
>> We should avoid kernel panic when a intel_unmap() is called against
>> a non-existent domain.
> Does that mean you suggest to replace
> 	BUG_ON(!domain);
> with something like
> 	if (WARN_ON(!domain))
> 		return;
> and to not care of orphaned mappings left allocated?  Is there a way to inform
> users that their active DMA mappings are no longer valid and they shouldn't
> call dma_unmap_*()?
> 
>> But we shouldn't expect the IOMMU driver not
>> cleaning up the domain info when a device remove notification comes and
>> wait until all file descriptors being closed, right?
> Shouldn't then the IOMMU driver take care of cleaning up resources still
> allocated on device remove before it invalidates and forgets their pointers?
> 

You are right. We need to wait until all allocated resources (iova and
mappings) to be released.

How about registering a callback for BUS_NOTIFY_UNBOUND_DRIVER, and
removing the domain info when the driver detachment completes?

> Thanks,
> Janusz

Best regards,
Baolu
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx

  reply	other threads:[~2019-08-29  1:44 UTC|newest]

Thread overview: 42+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2019-08-22 14:29 [RFC PATCH] iommu/vt-d: Fix IOMMU field not populated on device hot re-plug Janusz Krzysztofik
2019-08-22 14:29 ` Janusz Krzysztofik
2019-08-22 15:34 ` ✓ Fi.CI.BAT: success for " Patchwork
2019-08-23  1:51 ` [RFC PATCH] " Lu Baolu
2019-08-23  1:51   ` Lu Baolu
2019-08-26  8:15   ` Janusz Krzysztofik
2019-08-26  8:15     ` Janusz Krzysztofik
2019-08-26  8:29     ` Lu Baolu
2019-08-26  8:29       ` Lu Baolu
2019-08-27  9:35       ` Janusz Krzysztofik
2019-08-27  9:35         ` Janusz Krzysztofik
2019-08-27  9:35         ` Janusz Krzysztofik
2019-08-28  0:56         ` Lu Baolu
2019-08-28  0:56           ` Lu Baolu
2019-08-28 14:17           ` Janusz Krzysztofik
2019-08-28 14:17             ` Janusz Krzysztofik
2019-08-29  1:43             ` Lu Baolu [this message]
2019-08-29  1:43               ` Lu Baolu
2019-08-29  1:43               ` Lu Baolu
2019-08-29  7:58               ` Janusz Krzysztofik
2019-08-29  7:58                 ` Janusz Krzysztofik
2019-08-29  7:58                 ` Janusz Krzysztofik
2019-08-29  9:08                 ` Lu Baolu
2019-08-29  9:08                   ` Lu Baolu
2019-09-02  8:37                   ` Janusz Krzysztofik
2019-09-02  8:37                     ` Janusz Krzysztofik
2019-09-03  1:29                     ` Lu Baolu
2019-09-03  1:29                       ` Lu Baolu
2019-09-03  7:41                       ` Janusz Krzysztofik
2019-09-03  7:41                         ` Janusz Krzysztofik
2019-10-01 15:01                         ` Janusz Krzysztofik
2019-10-01 15:01                           ` Janusz Krzysztofik
2019-10-08  2:27                           ` Lu Baolu
2019-10-08  2:27                             ` Lu Baolu
2019-10-08  2:27                             ` Lu Baolu
2019-10-11  6:54                         ` Lu Baolu
2019-10-11  6:54                           ` Lu Baolu
2019-10-11  6:54                           ` Lu Baolu
2019-10-11 10:27                           ` Janusz Krzysztofik
2019-10-11 10:27                             ` Janusz Krzysztofik
2019-10-11 10:27                             ` Janusz Krzysztofik
2019-08-23  8:47 ` ✓ Fi.CI.IGT: success for " Patchwork

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=0cf4e930-1132-1e7f-815b-57a08a1fe5de@linux.intel.com \
    --to=baolu.lu@linux.intel.com \
    --cc=dwmw2@infradead.org \
    --cc=intel-gfx@lists.freedesktop.org \
    --cc=iommu@lists.linux-foundation.org \
    --cc=janusz.krzysztofik@linux.intel.com \
    --cc=joro@8bytes.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=michal.wajdeczko@intel.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.