sbutz / l4trace

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

l4trace

Extract the fiasco trace buffer running on a target machine using a PCIe screamer device.

Equipment

Patching Fiasco

The screamer access the tracebuffer memory via Busmastering DMA. You need to set:

CONFIG_IOMMU_PASSTHROUGH=y
CONFIG JDB=y
CONFIG JDB LOGGING=y

To enable Busmastering DMA and place the tracebuffer address at a well-known location, add the provided module (./jdb_scream.cpp) to your kernel.

Building l4trace

Clone submodules

git submodule update --init --recursive

Install dependencies

sudo apt install libusb-1.0-0-dev babeltrace2 libbabeltrace2-dev

Build LeechCore

make all

Optional: Build Babeltrace for development

Optional: Add udev rules to use device as group member of dialout

sudo cp udev.rules /etc/udev/rules.d/99-screamerM2.rules
sudo udevadm control --reload-rules

Run

./l4trace.sh

About


Languages

Language:C 51.3%Language:C++ 45.8%Language:Makefile 2.0%Language:Shell 0.9%