qemu with hax to log dma reads & writes
jcs.org/2018/11/12/vfio
1#! /bin/sh
2# Writes a target device config file to stdout, from a default and from
3# include directives therein. Also emits Makefile dependencies.
4#
5# Usage: make_device_config.sh SRC DEPFILE-NAME DEPFILE-TARGET > DEST
6
7src=$1
8dep=$2
9target=$3
10src_dir=$(dirname $src)
11all_includes=
12
13process_includes () {
14 cat $1 | grep '^include' | \
15 while read include file ; do
16 all_includes="$all_includes $src_dir/$file"
17 process_includes $src_dir/$file
18 done
19}
20
21f=$src
22while [ -n "$f" ] ; do
23 f=$(cat $f | tr -d '\r' | awk '/^include / {printf "'$src_dir'/%s ", $2}')
24 [ $? = 0 ] || exit 1
25 all_includes="$all_includes $f"
26done
27process_includes $src
28
29cat $src $all_includes | grep -v '^include'
30echo "$target: $all_includes" > $dep