Skip dereferences inside bpf_probe_reads calls (#1824)
* Skip all dereferences inside bpf_probe_read calls
If the user decides to rely on a manual call to bpf_probe_read, we
don't try to rewrite its last argument. This is needed as the
rewriter starts to recognize and rewrite more and more dereferences.
* tools: fix dereferences following 1a765a17
diff --git a/tools/biosnoop.py b/tools/biosnoop.py
index 32d83e5..7f61180 100755
--- a/tools/biosnoop.py
+++ b/tools/biosnoop.py
@@ -94,8 +94,9 @@
data.len = req->__data_len;
data.sector = req->__sector;
bpf_probe_read(&data.name, sizeof(data.name), valp->name);
+ struct gendisk *rq_disk = req->rq_disk;
bpf_probe_read(&data.disk_name, sizeof(data.disk_name),
- req->rq_disk->disk_name);
+ rq_disk->disk_name);
}
/*