I came across a report of the subject message. What does it mean; what
type of bug should be look for?
https://bugzilla.redhat.com/show_bug.cgi?id=587178
>>>
firewire_ohci 0000:04:00.4: PCI INT C -> GSI 16 (level, low) -> IRQ 16
firewire_ohci 0000:04:00.4: setting latency timer to 64
firewire_ohci: Added fw-ohci device 0000:04:00.4, OHCI version 1.0
DRHD: handling fault status reg 2
DMAR:[DMA Read] Request device [04:00.0] fault addr fffff000
DMAR:[fault reason 02] Present bit in context entry is clear
DMAR:[DMA Read] Request device [04:00.0] fault addr fffff000
DMAR:[fault reason 02] Present bit in context entry is clear
DMAR:[DMA Read] Request device [04:00.0] fault addr fffff000
DMAR:[fault reason 02] Present bit in context entry is clear
<<<
The log sounds as if this happens during from-device DMA of 04:00.4 into
a consistent buffer, yet the fault is logged for device 04:00.0. The
log is from a Dell M4500. The devices are, according to a web search,
04:00.0 CardBus bridge [0607]: Ricoh Co Ltd Device [1180:e476] (rev 02)
04:00.4 FireWire (IEEE 1394) [0c00]: Ricoh Co Ltd Device [1180:e832]
(rev 03) (prog-if 10)
Thanks for any hint,
--
Stefan Richter
-=====-==-=- -=-= =-==-
http://arcgraph.de/sr/
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majo...@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
I would guess that the DMAR can't distinguish between the different
devices behind the Cardbus bridge. Adding Dave Woodhouse.
--
Matthew Wilcox Intel Open Source Technology Centre
"Bill, look, we understand that you're interested in selling us this
operating system, but compare it to ours. We can't possibly take such
a retrograde step."
Yeah, the DMAR looks at the source-id in the PCIe transactions, and it
sounds like those are all 04:00.0. But we've probably set up the DMAR to
allow the transactions from 04:00.4, and then it naturally faults when a
"different" device actually ends up doing the transaction.
If you make the pci_find_upstream_pcie_bridge() function do the
appropriate thing for this device, does it then work as expected?
Whether that's a _sane_ thing to do or not is possibly more of a Jesse
question...
--
David Woodhouse Open Source Technology Centre
David.W...@intel.com Intel Corporation
Well, if cardbus bridges tend to behave this way in general it would
make sense to simply use the cardbus bride id everywhere, rather than
the specific functions of the device. Cc'ing Dominik.
Jesse
Thanks to those who responded. Alas I cannot follow up on this myself
with tests since I don't have affected hardware.
--
Stefan Richter
-=====-==-=- -=-= ====-
http://arcgraph.de/sr/