faddr2line fix and MAINTAINERS update
cover faddr2line fix and MAINTAINERS update
Linus, would you be willing to pick these up directly, or would you rather me route them through somebody else?
Patch 1 reverts faddr2line's default output to its original non-code-listing output, and makes the code listing an optional feature.
Patch 2 gives faddr2line a real maintainer, so get_maintainer.pl will actually CC me on future patches.
Josh Poimboeuf (1):
MAINTAINERS: add Josh Poimboeuf as faddr2line maintainer
Peter Zijlstra (Intel) (1):
scripts/faddr2line: make the new code listing format optional
MAINTAINERS | 5 +++++ scripts/faddr2line | 18 ++++++++++++++++-- 2 files changed, 21 insertions(+), 2 deletions(-)
Signature · 1 line
2.17.0
PATCH 1/2 scripts/faddr2line: make the new code listing format optional
From: "Peter Zijlstra (Intel)" <[email protected]>
Commit 6870c0165feaa5 ("scripts/faddr2line: show the code context") radically altered the output format of the faddr2line tool. And while the new list output format might have merit it broke my vim usage and was hard to read.
Make the new format optional; using a '--list' argument and attempt to make the output slightly easier to read by adding a little whitespace to separate the different files and explicitly mark the line in question.
--- scripts/faddr2line | 18 ++++++++++++++++-- 1 file changed, 16 insertions(+), 2 deletions(-)
scripts/faddr2line +16 -2
@@ -56,7 +56,7 @@ command -v ${SIZE} >/dev/null 2>&1 || die "size isn't installed" command -v ${NM} >/dev/null 2>&1 || die "nm isn't installed" usage() { - echo "usage: faddr2line <object file> <func+offset> <func+offset>..." >&2 + echo "usage: faddr2line [--list] <object file> <func+offset> <func+offset>..." >&2 exit 1 }
@@ -166,15 +166,25 @@ __faddr2line() { local file_lines=$(${ADDR2LINE} -fpie $objfile $addr | sed "s; $dir_prefix\(\./\)*; ;") [[ -z $file_lines ]] && return + if [[ $LIST = 0 ]]; then + echo "$file_lines" | while read -r line + do + echo $line + done + DONE=1; + return + fi + # show each line with context echo "$file_lines" | while read -r line do + echo echo $line n=$(echo $line | sed 's/.*:\([0-9]\+\).*/\1/g') n1=$[$n-5] n2=$[$n+5] f=$(echo $line | sed 's/.*at \(.\+\):.*/\1/g') - awk 'NR>=strtonum("'$n1'") && NR<=strtonum("'$n2'") {printf("%d\t%s\n", NR, $0)}' $f + awk 'NR>=strtonum("'$n1'") && NR<=strtonum("'$n2'") { if (NR=='$n') printf(">%d<", NR); else printf(" %d ", NR); printf("\t%s\n", $0)}' $f done DONE=1
@@ -185,6 +195,10 @@ __faddr2line() { [[ $# -lt 2 ]] && usage objfile=$1 + +LIST=0 +[[ "$objfile" == "--list" ]] && LIST=1 && shift && objfile=$1 + [[ ! -f $objfile ]] && die "can't find objfile $objfile" shift
Signature · 1 line
2.17.0
PATCH 2/2 MAINTAINERS: add Josh Poimboeuf as faddr2line maintainer
In reply to Josh Poimboeuf... so I finally get credit for my greatest accomplishment.
And, less importantly, so get_maintainer.pl will actually CC me on future patches.
--- MAINTAINERS | 5 +++++ 1 file changed, 5 insertions(+)
MAINTAINERS +5 -0
@@ -5413,6 +5413,11 @@ S: Maintained F: Documentation/hwmon/f71805f F: drivers/hwmon/f71805f.c +FADDR2LINE +M: Josh Poimboeuf <[email protected]> +S: Maintained +F: scripts/faddr2line + FANOTIFY M: Jan Kara <[email protected]> R: Amir Goldstein <[email protected]>
Signature · 1 line
2.17.0
Quoted 3 lines · Josh Poimboeuf
Linus, would you be willing to pick these up directly, or would you rather me route them through somebody else?
I took them directly.
That said, if you had a git tree, that would have fit my merge-window workflow better. I've been very good at getting people to send me patch-series as git trees, with mainly just Andrew as the stalwart patch user.
Single patches I obviously take as patches, but whenever I see even a small patch series like this I tend to go "Hmm, git is _so_ convenient".
Hint hint, for the future.
Linus