--- /dev/null
+#!/usr/bin/perl
+
+my $offset = shift @ARGV;
+
+while (<>) {
+ # next unless / \d\d bdev /;
+ my $rest = $_;
+ my @hit;
+ while ($rest =~ /([\da-f]+)[~\+]([\da-f]+)/) {
+ my ($o, $l) = $rest =~ /([\da-f]+)[~\+]([\da-f]+)/;
+ $rest = $';
+ if (hex($offset) >= hex($o) &&
+ hex($offset) < hex($o) + hex($l)) {
+ my $rel = hex($offset) - hex($o);
+ push(@hit, sprintf("%x",$rel));
+ }
+ }
+ print join(',',@hit) . "\t$_" if @hit;
+}