From: Baolu Lu <baolu.lu@linux.intel.com>
To: Jerry Snitselaar <jsnitsel@redhat.com>,
iommu@lists.linux.dev, Joerg Roedel <joro@8bytes.org>
Cc: baolu.lu@linux.intel.com
Subject: Re: Scalable mode and kdump kernels
Date: Sun, 3 Jul 2022 12:56:31 +0800 [thread overview]
Message-ID: <1fb81dd8-7fc5-ddce-6b78-2bb2b1c03fa3@linux.intel.com> (raw)
In-Reply-To: <20220702154956.x2dxqalzjuzjraxk@cantor>
On 2022/7/2 23:49, Jerry Snitselaar wrote:
> Apparently there is an issue on Sapphire Rapids if you have the following conditions:
>
> - kernel configured to default to passthrough dma domains, or set it on the command line
> - scalable mode enabled
>
> If you force a system crash, there will be a number of DMAR faults
> when booting the kdump kernel, with the result being it doesn't mount
> the disk and harvest the vmcore. The fault reason is 0x39, which is no
> present bit in the scalable mode root entry.
>
> Looking at the translation table copying code, it looks like what is
> there currently is based on the older 2.5 vt-d spec and the extended
> root/context entry formats, and doesn't handle the scalable mode
Yes. It is written for ECS mode, which has no real hardware
implementation in the market.
> formats. The pasid enabled bit has moved in the scalable mode context
> entry from bit 11 to bit 3, and the translation type mode in the root
> table address register is different as well. Poking around at it last
> night, adding code to deal with those just shifts to the problem to
> the present bit in the scalable mode pasid table entry (fault reason
> 0x59) which isn't copied.
The translation mode bits are in the pasid table entries, hence to make
that work, the pasid tables should also be copied.
>
> Beyond the translation table copy bits needing to work with scalable
> mode formats, should scalable mode force the default dma domain type
> to switch to one of the translation modes if the default is passthrough?
Agreed. The copy table code needs some extensions to support the
scalable mode.
Best regards,
baolu
next prev parent reply other threads:[~2022-07-03 4:56 UTC|newest]
Thread overview: 3+ messages / expand[flat|nested] mbox.gz Atom feed top
2022-07-02 15:49 Scalable mode and kdump kernels Jerry Snitselaar
2022-07-03 4:56 ` Baolu Lu [this message]
2022-08-08 3:56 ` Baolu Lu
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=1fb81dd8-7fc5-ddce-6b78-2bb2b1c03fa3@linux.intel.com \
--to=baolu.lu@linux.intel.com \
--cc=iommu@lists.linux.dev \
--cc=joro@8bytes.org \
--cc=jsnitsel@redhat.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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox