Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]
Groups > linux.kernel > #1492229
| From | Baoquan He <bhe@redhat.com> |
|---|---|
| Newsgroups | linux.kernel |
| Subject | Re: [PATCH v5 5/8] iommu/amd: copy old trans table from old kernel |
| Date | 2016-09-28 03:40 +0200 |
| Message-ID | <smc0N-en-1@gated-at.bofh.it> (permalink) |
| References | <shGsx-ar-11@gated-at.bofh.it> <shGsy-ar-43@gated-at.bofh.it> <sjsEO-31h-25@gated-at.bofh.it> |
| Organization | linux.* mail to news gateway |
Hi Joerg,
On 09/20/16 at 02:40pm, Joerg Roedel wrote:
> > + if ( !is_pre_enabled) {
> > + for_each_iommu(iommu)
> > + early_enable_iommu(iommu);
> > + } else {
> > + if (copy_dev_tables()) {
> > + pr_err("Failed to copy DEV table from previous kernel.\n");
> > + /*
> > + * If failed to copy dev tables from old kernel, continue to proceed
> > + * as it does in normal kernel.
> > + */
> > + for_each_iommu(iommu) {
> > + clear_translation_pre_enabled(iommu);
> > + early_enable_iommu(iommu);
> > + }
> > + } else {
> > + pr_info("Copied DEV table from previous kernel.\n");
> > + for_each_iommu(iommu) {
> > + iommu_feature_disable(iommu, CONTROL_CMDBUF_EN);
> > + iommu_feature_disable(iommu, CONTROL_EVT_LOG_EN);
>
> Could you move that into new helpers (iommu_disable_command_buffer...)?
Did you mean wraping iommu_feature_disable(iommu, CONTROL_CMDBUF_EN) into a
helper function like iommu_disable_command_buffer(), and wraping
iommu_feature_disable(iommu, CONTROL_EVT_LOG_EN) into
iommu_disable_event_buffer()?
I retest with not disabling command buffer and event log here, it works
on amd iommu v1 and v2 systems. So if I understand your comment
correctly, there's no need to add "iommu_feature_disable(iommu,
CONTROL_CMDBUF_EN)" and "iommu_feature_disable(iommu,
CONTROL_EVT_LOG_EN)" here. I remember I added them here because more
IO_PAGE_FAULT messages are printed without them. But now it seems not to
related to them. So I will remove above two lines of code.
>
> > + iommu_enable_command_buffer(iommu);
> > + iommu_enable_event_buffer(iommu);
> > + iommu_set_device_table(iommu);
> > + iommu_flush_all_caches(iommu);
> > + }
> > + }
> > + }
> > }
> >
> > static void enable_iommus_v2(void)
> > --
> > 2.5.5
> >
Back to linux.kernel | Previous | Next — Next in thread | Find similar | Unroll thread
Re: [PATCH v5 5/8] iommu/amd: copy old trans table from old kernel Baoquan He <bhe@redhat.com> - 2016-09-28 03:40 +0200 Re: [PATCH v5 5/8] iommu/amd: copy old trans table from old kernel Baoquan He <bhe@redhat.com> - 2016-09-28 15:10 +0200
csiph-web