workaround cavium thunderx silicon erratum 27704
Bug #1590168 reported by
dann frazier
This bug affects 1 person
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
linux (Ubuntu) |
Fix Released
|
High
|
dann frazier | ||
Xenial |
Won't Fix
|
High
|
dann frazier |
Bug Description
The arm-smmu driver doesn't allow 2 different devices (SMMU 0/1) to share a namespace. So if 2 devices are connected to same SMMU, it may lead to memory corruption.
Changed in linux (Ubuntu Xenial): | |
status: | New → Incomplete |
status: | Incomplete → In Progress |
Changed in linux (Ubuntu): | |
status: | In Progress → Confirmed |
Changed in linux (Ubuntu Xenial): | |
importance: | Undecided → High |
assignee: | nobody → dann frazier (dannf) |
To post a comment you must log in.
Though this does impact the SMMU driver in v4.4, the upstream author of the workaround tells me that it isn't possible to trigger this corruption with our v4.4, since it doesn't include the new DMA API or VFIO support. I'll therefore mark this as "won't fix" for xenial. For reference, here's a pull request for a regression-tested backport of these changes to xenial, in case we decide to pull it in later:
The following changes since commit eaf0fb36e9b2862 41284cbc79cf9e7 772882b95e:
irqchip/ gicv3-its: numa: Enable workaround for Cavium thunderx erratum 23144 (2016-06-07 09:06:08 -0700)
are available in the git repository at:
git:/ /git.launchpad. net/~dannf/ ubuntu/ +source/ linux/+ git/xenial lp1590168
for you to fetch changes up to 132c0883486e69a 07a86e59db5746c fba2cb731c:
iommu/arm-smmu: Workaround for ThunderX erratum #27704 (2016-06-07 16:19:17 -0600)
------- ------- ------- ------- ------- ------- ------- ------- ------- - arm-smmu: Add support for 16 bit VMID arm-smmu: Workaround for ThunderX erratum #27704
Tirumalesh Chalamarla (2):
iommu/
iommu/
Documentation/ devicetree/ bindings/ iommu/arm, smmu.txt | 1 + iommu/arm- smmu.c | 60 +++++++ +++++++ +++++++ +++++++ +++++++ +++++-- ------- ------
drivers/
2 files changed, 45 insertions(+), 16 deletions(-)