Free Console
Investigate Linux evidence. Compare captured state.
- Linux metadata & reported fault checks
- PCIe config decode & error flags
- Before / after snapshot comparisons
- CSV named fields & report exports
- Snapshots saved in this browser
HEADER7F / PCIe CONSOLE FREE BROWSER PREVIEW
Linux evidence workflow · Free previewPCIe addressing and DMA stalls on Linux.
Connect device context with reported faults, find the gaps, and choose your next check.
01 / LINUX INVESTIGATION
Card absent, link below expectation or DMA stalled? Import the Linux evidence you have and see the next check, with its limits.
Run the metadata collector for one device, review its JSON, then import it here. Add relevant log lines if you have them. Analysis stays in this browser.
One selected device · JSON up to 1 MiB · schema header7f.linux-evidence.v1. Editing JSON keeps your separately pasted logs; review or clear those logs when changing devices.
Up to 256 KiB (262,144 UTF-8 bytes). Review before pasting: logs can contain private information. A reported fault is associated only with the selected device address. Upstream counters are shown separately. Empty logs do not prove that DMA works.
Current preview: evidence checks run locally using defined rules. “Copy for ChatGPT” copies a reviewable investigation to your clipboard; it does not connect an AI account or send data.
02 / INSPECT
Start with the answer. Keep every byte within reach.
Switch captures to see the values move. This is captured data, never live monitoring.
03 / COMPARE
A working baseline beside the capture you’re investigating.
04 / NAMED FIELDS
Apply your CSV field map to the capture from Inspect. Offsets refer to PCI config space, not BAR memory.
05 / SAVED SNAPSHOTS
Keep up to 20 captures on this browser. Give them names that tell their story.
LINUX PCIE. A REPRODUCIBLE START.
Collector v0.2 captures device identity, host resources, current and maximum link values, AER counters and upstream context. If the target is absent, it still exports the captured PCI inventory.
Download collectorUse your inventory or lspci -D. If the card is absent, use its expected or previous BDF and compare the returned tree with platform documentation. An old BDF may change.
python3 header7f-linux-capture.py 0000:01:00.0 > capture.jsonReplace the address with your device. Python 3 is required. No installation or extra packages are needed. Default capture reads sysfs metadata, makes no network calls and does not require sudo; inaccessible fields remain unknown.
If an absent card’s port is known, supply it explicitly:
python3 header7f-linux-capture.py 0000:01:00.0 --upstream 0000:00:01.0 > capture.jsonThe supplied port is labeled as user-provided, not a verified endpoint connection.
Review capture.json, import it above, and optionally paste time-bounded PCIe AER, IOMMU or driver messages. Compare both link partners and a known-good capture before calling a lower current link value a failure.
Download the local CLI bundle and instructions. Unzip the modules together. Node.js 22 or newer is required; no account or network connection is used.
node header7f-investigate.mjs linux capture.json --json investigation.json --markdown investigation.mdExit 1 means a modeled attention condition; 2 means incomplete evidence without that condition; 3 rejects invalid input. A zero exit is limited to selected checks and never proves hardware health or DMA completion. Existing output files are protected unless you explicitly choose to replace them.
After checking that configuration reads are suitable for the device, add --include-config to request up to 4,096 PCI configuration bytes. Permissions can limit coverage; partial captures remain partial. The Console decodes only the bytes actually read. No BAR/MMIO memory is read.
python3 header7f-linux-capture.py 0000:01:00.0 --include-config > capture.jsonBounded sysfs identity, driver/IOMMU links, resources, interrupt assignments, current/maximum link attributes, AER counters and a PCI inventory. Upstream/bridge-candidate captures contain identity, link and AER context. PCI config bytes are read only with the explicit option above. The collector does not read BAR memory, RAM payloads or kernel logs, change settings, execute shell commands or run transfer tests. Redirecting output creates the JSON file you choose.
Resource allocation does not establish address accessibility. An IOMMU group does not establish a DMA mapping; interrupt assignments do not establish delivery. AER counters are cumulative observations at their reporting device. Completion traces and buffer contents require additional instrumentation.
Method references: Linux PCI resources · DMA address spaces · PCIe AER
FROM THE BENCH TO AN ANSWER
Use the supporting capture tools to inspect standard PCI fields and compare a working state with a changed one.
Find its address with lspci -D, then capture the config space for that device:
sudo lspci -D -s 0000:01:00.0 -xxxxReplace the address with your device’s address. The shown -xxxx requests up to 4 KiB so extended capabilities such as AER can be decoded when present and readable. A 256-byte -xxx dump cannot include them. Some devices react poorly to config reads; use an existing dump or check your device documentation first. See the lspci manual .
Paste the hex rows for one device. Missing bytes remain unknown. To investigate a change, compare a known-good capture with one taken after the problem appears. Compare the same device and capture method.
Export a Markdown report or JSON for your issue tracker. Reports include observed values, offsets and limitations. A capture cannot establish root cause, prove DMA performance or reveal a vendor-specific LTSSM state.
Linux device metadata import, selected-device reported IOMMU faults, resource allocation context and evidence-gap guidance; plus PCI config decoding, comparisons, CSV config-space maps and local config snapshots. The downloadable metadata collector runs separately. The same saved-file checks are available through the local CLI. No live connection, AI account connection, hardware writes or subscription billing is included. The separate Projects preview supports explicit private QDMA bundle saves.
THE PROBLEM WORTH PAYING TO SOLVE
When a DMA transfer stalls, the team needs a reproducible account of the device, its address setup and the reported faults. Saved board context, repeatable checks and evidence shared across firmware and driver teams are the paid workflow we’re building toward.
Keep the working state next to the board and firmware version that produced it.
Compare the next build against an agreed baseline, with expected differences separated from surprises.
Give the firmware engineer, driver team or supplier one clear report to investigate.
START FREE. SHAPE WHAT COMES NEXT.
The browser preview is free. Pro is a proposed service; team engineering is quoted after scope. One pricing page describes the current offer. No payment is collected.
Investigate Linux evidence. Compare captured state.
Turn an investigation into a repeatable check.
Keep the team on the same working state.
BUILD IT AROUND YOUR BENCH
Tell us about the recurring addressing or DMA failure. We’ll respond about fit and scope. Early access is an enquiry, with no payment or purchase commitment.