From: Ammar Faizi <[email protected]>
To: Borislav Petkov <[email protected]>
Cc: weidonghui <[email protected]>,
[email protected], [email protected],
[email protected], [email protected],
Ammar Faizi <[email protected]>,
Andrew Morton <[email protected]>,
Andy Lutomirski <[email protected]>,
Dave Hansen <[email protected]>,
"H. Peter Anvin" <[email protected]>, Ingo Molnar <[email protected]>,
Thomas Gleixner <[email protected]>
Subject: [PATCH] scripts/decodecode: Make objdump always use operand-size suffix
Date: Tue, 1 Mar 2022 11:11:19 +0700 [thread overview]
Message-ID: <[email protected]> (raw)
For better reading, always use operand-size suffix for the generated
AT&T syntax Assembly code.
$ echo "Code: 50 e0 49 8b 4e 08 48 8b 51 50 48 85 d2 75 03 48 8b 11 48 c7 c7 02 " \
"47 40 a1 48 89 c6 48 c7 c1 b6 38 3f a1 31 c0 e8 25 72 d5 df <0f> 0b 41 bc 01" \
"00 00 00 e9 da fb ff ff 48 8b 2b 48 8b 7d 08 e8 fc" | scripts/decodecode
Before this patch:
------------------
All code
========
0: 50 push %rax
1: e0 49 loopne 0x4c
3: 8b 4e 08 mov 0x8(%rsi),%ecx
6: 48 8b 51 50 mov 0x50(%rcx),%rdx
a: 48 85 d2 test %rdx,%rdx
d: 75 03 jne 0x12
f: 48 8b 11 mov (%rcx),%rdx
12: 48 c7 c7 02 47 40 a1 mov $0xffffffffa1404702,%rdi
19: 48 89 c6 mov %rax,%rsi
1c: 48 c7 c1 b6 38 3f a1 mov $0xffffffffa13f38b6,%rcx
23: 31 c0 xor %eax,%eax
25: e8 25 72 d5 df call 0xffffffffdfd5724f
2a:* 0f 0b ud2 <-- trapping instruction
2c: 41 bc 01 00 00 00 mov $0x1,%r12d
32: e9 da fb ff ff jmp 0xfffffffffffffc11
37: 48 8b 2b mov (%rbx),%rbp
3a: 48 8b 7d 08 mov 0x8(%rbp),%rdi
3e: e8 .byte 0xe8
3f: fc cld
Code starting with the faulting instruction
===========================================
0: 0f 0b ud2
2: 41 bc 01 00 00 00 mov $0x1,%r12d
8: e9 da fb ff ff jmp 0xfffffffffffffbe7
d: 48 8b 2b mov (%rbx),%rbp
10: 48 8b 7d 08 mov 0x8(%rbp),%rdi
14: e8 .byte 0xe8
15: fc cld
After this patch:
------------------
All code
========
0: 50 pushq %rax
1: e0 49 loopneq 0x4c
3: 8b 4e 08 movl 0x8(%rsi),%ecx
6: 48 8b 51 50 movq 0x50(%rcx),%rdx
a: 48 85 d2 testq %rdx,%rdx
d: 75 03 jne 0x12
f: 48 8b 11 movq (%rcx),%rdx
12: 48 c7 c7 02 47 40 a1 movq $0xffffffffa1404702,%rdi
19: 48 89 c6 movq %rax,%rsi
1c: 48 c7 c1 b6 38 3f a1 movq $0xffffffffa13f38b6,%rcx
23: 31 c0 xorl %eax,%eax
25: e8 25 72 d5 df callq 0xffffffffdfd5724f
2a:* 0f 0b ud2 <-- trapping instruction
2c: 41 bc 01 00 00 00 movl $0x1,%r12d
32: e9 da fb ff ff jmpq 0xfffffffffffffc11
37: 48 8b 2b movq (%rbx),%rbp
3a: 48 8b 7d 08 movq 0x8(%rbp),%rdi
3e: e8 .byte 0xe8
3f: fc cld
Code starting with the faulting instruction
===========================================
0: 0f 0b ud2
2: 41 bc 01 00 00 00 movl $0x1,%r12d
8: e9 da fb ff ff jmpq 0xfffffffffffffbe7
d: 48 8b 2b movq (%rbx),%rbp
10: 48 8b 7d 08 movq 0x8(%rbp),%rdi
14: e8 .byte 0xe8
15: fc cld
Cc: Andrew Morton <[email protected]>
Cc: Andy Lutomirski <[email protected]>
Cc: Borislav Petkov <[email protected]>
Cc: Dave Hansen <[email protected]>
Cc: "H. Peter Anvin" <[email protected]>
Cc: Ingo Molnar <[email protected]>
Cc: Thomas Gleixner <[email protected]>
Signed-off-by: Ammar Faizi <[email protected]>
---
scripts/decodecode | 2 ++
1 file changed, 2 insertions(+)
diff --git a/scripts/decodecode b/scripts/decodecode
index c711a196511c..ab400891610f 100755
--- a/scripts/decodecode
+++ b/scripts/decodecode
@@ -98,6 +98,8 @@ disas() {
fi
fi
+ OBJDUMPFLAGS="$OBJDUMPFLAGS -M suffix"
+
${CROSS_COMPILE}objdump $OBJDUMPFLAGS -S $t.o | \
grep -v "/tmp\|Disassembly\|\.text\|^$" > $t.dis 2>&1
}
base-commit: 7e57714cd0ad2d5bb90e50b5096a0e671dec1ef3
--
2.32.0
next reply other threads:[~2022-03-01 4:11 UTC|newest]
Thread overview: 4+ messages / expand[flat|nested] mbox.gz Atom feed top
2022-03-01 4:11 Ammar Faizi [this message]
2022-03-01 8:41 ` [PATCH] scripts/decodecode: Make objdump always use operand-size suffix Borislav Petkov
2022-03-01 9:16 ` Ammar Faizi
2022-03-01 10:44 ` Borislav Petkov
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
[email protected] \
[email protected] \
[email protected] \
[email protected] \
[email protected] \
[email protected] \
[email protected] \
[email protected] \
[email protected] \
[email protected] \
[email protected] \
[email protected] \
[email protected] \
[email protected] \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox