Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > linux.kernel > #1217557 > unrolled thread

[PATCH V2 1/7] perf tools: Display build warning if x86 instruction decoder differs from kernel

Started byAdrian Hunter <adrian.hunter@intel.com>
First post2015-09-02 14:20 +0200
Last post2015-09-03 18:00 +0200
Articles 2 — 2 participants

Back to article view | Back to linux.kernel

This discussion starts older than the indexed window; earlier articles aren't shown. The article labeled Started by below is the oldest one visible, not the original post.


Contents

  [PATCH V2 1/7] perf tools: Display build warning if x86 instruction decoder differs from kernel Adrian Hunter <adrian.hunter@intel.com> - 2015-09-02 14:20 +0200
    RE: [PATCH V2 1/7] perf tools: Display build warning if x86  instruction decoder differs from kernel 平松雅巳 / HIRAMATU,MASAMI   <masami.hiramatsu.pt@hitachi.com> - 2015-09-03 18:00 +0200

#1217557 — [PATCH V2 1/7] perf tools: Display build warning if x86 instruction decoder differs from kernel

FromAdrian Hunter <adrian.hunter@intel.com>
Date2015-09-02 14:20 +0200
Subject[PATCH V2 1/7] perf tools: Display build warning if x86 instruction decoder differs from kernel
Message-ID<q4fbd-4Me-29@gated-at.bofh.it>
perf tools has a copy of the x86 instruction decoder used by the kernel.
The expectation is that the copy will be kept more-or-less in-synch
with the kernel version.  Consequently it is helpful to know if there are
differences.  This patch adds a check into the perf tools build so that
a diff is done on the sources, and a warning is printed if they are
different.  Note that the warning is not fatal and the build continues
as normal.

The check is done as part of building the instruction decoder, so, like a
compiler warning, it is not seen unless the instruction decoder has to be
re-compiled. e.g.

    $ make -C tools/perf >/dev/null
    $ echo "/* blah */" >> tools/perf/util/intel-pt-decoder/inat_types.h
    $ make -C tools/perf >/dev/null
    Warning: Intel PT: x86 instruction decoder differs from kernel
    $ make -C tools/perf >/dev/null
    $

Signed-off-by: Adrian Hunter <adrian.hunter@intel.com>
---
 tools/perf/util/intel-pt-decoder/Build | 13 ++++++++++++-
 1 file changed, 12 insertions(+), 1 deletion(-)

diff --git a/tools/perf/util/intel-pt-decoder/Build b/tools/perf/util/intel-pt-decoder/Build
index 2386322ece4f..0611d619a42e 100644
--- a/tools/perf/util/intel-pt-decoder/Build
+++ b/tools/perf/util/intel-pt-decoder/Build
@@ -7,6 +7,17 @@ $(OUTPUT)util/intel-pt-decoder/inat-tables.c: $(inat_tables_script) $(inat_table
 	$(call rule_mkdir)
 	@$(call echo-cmd,gen)$(AWK) -f $(inat_tables_script) $(inat_tables_maps) > $@ || rm -f $@
 
-$(OUTPUT)util/intel-pt-decoder/intel-pt-insn-decoder.o: util/intel-pt-decoder/inat.c $(OUTPUT)util/intel-pt-decoder/inat-tables.c
+$(OUTPUT)util/intel-pt-decoder/intel-pt-insn-decoder.o: util/intel-pt-decoder/intel-pt-insn-decoder.c util/intel-pt-decoder/inat.c $(OUTPUT)util/intel-pt-decoder/inat-tables.c
+	@(test -d ../../kernel -a -d ../../tools -a -d ../perf && (( \
+	diff -B -I'^#include' util/intel-pt-decoder/insn.c ../../arch/x86/lib/insn.c >/dev/null && \
+	diff -B -I'^#include' util/intel-pt-decoder/inat.c ../../arch/x86/lib/inat.c >/dev/null && \
+	diff -B util/intel-pt-decoder/x86-opcode-map.txt ../../arch/x86/lib/x86-opcode-map.txt >/dev/null && \
+	diff -B util/intel-pt-decoder/gen-insn-attr-x86.awk ../../arch/x86/tools/gen-insn-attr-x86.awk >/dev/null && \
+	diff -B -I'^#include' util/intel-pt-decoder/insn.h ../../arch/x86/include/asm/insn.h >/dev/null && \
+	diff -B -I'^#include' util/intel-pt-decoder/inat.h ../../arch/x86/include/asm/inat.h >/dev/null && \
+	diff -B -I'^#include' util/intel-pt-decoder/inat_types.h ../../arch/x86/include/asm/inat_types.h >/dev/null) \
+	|| echo "Warning: Intel PT: x86 instruction decoder differs from kernel" >&2 )) || true
+	$(call rule_mkdir)
+	$(call if_changed_dep,cc_o_c)
 
 CFLAGS_intel-pt-insn-decoder.o += -I$(OUTPUT)util/intel-pt-decoder -Wno-override-init
-- 
1.9.1

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

[toc] | [next] | [standalone]


#1218398 — RE: [PATCH V2 1/7] perf tools: Display build warning if x86 instruction decoder differs from kernel

From平松雅巳 / HIRAMATU,MASAMI <masami.hiramatsu.pt@hitachi.com>
Date2015-09-03 18:00 +0200
SubjectRE: [PATCH V2 1/7] perf tools: Display build warning if x86 instruction decoder differs from kernel
Message-ID<q4F5F-83m-39@gated-at.bofh.it>
In reply to#1217557
PiBGcm9tOiBBZHJpYW4gSHVudGVyIFttYWlsdG86YWRyaWFuLmh1bnRlckBpbnRlbC5jb21dDQo+
IA0KPiBwZXJmIHRvb2xzIGhhcyBhIGNvcHkgb2YgdGhlIHg4NiBpbnN0cnVjdGlvbiBkZWNvZGVy
IHVzZWQgYnkgdGhlIGtlcm5lbC4NCj4gVGhlIGV4cGVjdGF0aW9uIGlzIHRoYXQgdGhlIGNvcHkg
d2lsbCBiZSBrZXB0IG1vcmUtb3ItbGVzcyBpbi1zeW5jaA0KPiB3aXRoIHRoZSBrZXJuZWwgdmVy
c2lvbi4gIENvbnNlcXVlbnRseSBpdCBpcyBoZWxwZnVsIHRvIGtub3cgaWYgdGhlcmUgYXJlDQo+
IGRpZmZlcmVuY2VzLiAgVGhpcyBwYXRjaCBhZGRzIGEgY2hlY2sgaW50byB0aGUgcGVyZiB0b29s
cyBidWlsZCBzbyB0aGF0DQo+IGEgZGlmZiBpcyBkb25lIG9uIHRoZSBzb3VyY2VzLCBhbmQgYSB3
YXJuaW5nIGlzIHByaW50ZWQgaWYgdGhleSBhcmUNCj4gZGlmZmVyZW50LiAgTm90ZSB0aGF0IHRo
ZSB3YXJuaW5nIGlzIG5vdCBmYXRhbCBhbmQgdGhlIGJ1aWxkIGNvbnRpbnVlcw0KPiBhcyBub3Jt
YWwuDQo+IA0KPiBUaGUgY2hlY2sgaXMgZG9uZSBhcyBwYXJ0IG9mIGJ1aWxkaW5nIHRoZSBpbnN0
cnVjdGlvbiBkZWNvZGVyLCBzbywgbGlrZSBhDQo+IGNvbXBpbGVyIHdhcm5pbmcsIGl0IGlzIG5v
dCBzZWVuIHVubGVzcyB0aGUgaW5zdHJ1Y3Rpb24gZGVjb2RlciBoYXMgdG8gYmUNCj4gcmUtY29t
cGlsZWQuIGUuZy4NCj4gDQo+ICAgICAkIG1ha2UgLUMgdG9vbHMvcGVyZiA+L2Rldi9udWxsDQo+
ICAgICAkIGVjaG8gIi8qIGJsYWggKi8iID4+IHRvb2xzL3BlcmYvdXRpbC9pbnRlbC1wdC1kZWNv
ZGVyL2luYXRfdHlwZXMuaA0KPiAgICAgJCBtYWtlIC1DIHRvb2xzL3BlcmYgPi9kZXYvbnVsbA0K
PiAgICAgV2FybmluZzogSW50ZWwgUFQ6IHg4NiBpbnN0cnVjdGlvbiBkZWNvZGVyIGRpZmZlcnMg
ZnJvbSBrZXJuZWwNCj4gICAgICQgbWFrZSAtQyB0b29scy9wZXJmID4vZGV2L251bGwNCj4gICAg
ICQNCg0KTG9va3MgZ29vZCB0byBtZSA6KQ0KDQpBY2tlZC1ieTogTWFzYW1pIEhpcmFtYXRzdSA8
bWFzYW1pLmhpcmFtYXRzdS5wdEBoaXRhY2hpLmNvbT4NCg0KVGhhbmtzIHlvdSENCg0KPiANCj4g
U2lnbmVkLW9mZi1ieTogQWRyaWFuIEh1bnRlciA8YWRyaWFuLmh1bnRlckBpbnRlbC5jb20+DQo+
IC0tLQ0KPiAgdG9vbHMvcGVyZi91dGlsL2ludGVsLXB0LWRlY29kZXIvQnVpbGQgfCAxMyArKysr
KysrKysrKystDQo+ICAxIGZpbGUgY2hhbmdlZCwgMTIgaW5zZXJ0aW9ucygrKSwgMSBkZWxldGlv
bigtKQ0KPiANCj4gZGlmZiAtLWdpdCBhL3Rvb2xzL3BlcmYvdXRpbC9pbnRlbC1wdC1kZWNvZGVy
L0J1aWxkIGIvdG9vbHMvcGVyZi91dGlsL2ludGVsLXB0LWRlY29kZXIvQnVpbGQNCj4gaW5kZXgg
MjM4NjMyMmVjZTRmLi4wNjExZDYxOWE0MmUgMTAwNjQ0DQo+IC0tLSBhL3Rvb2xzL3BlcmYvdXRp
bC9pbnRlbC1wdC1kZWNvZGVyL0J1aWxkDQo+ICsrKyBiL3Rvb2xzL3BlcmYvdXRpbC9pbnRlbC1w
dC1kZWNvZGVyL0J1aWxkDQo+IEBAIC03LDYgKzcsMTcgQEAgJChPVVRQVVQpdXRpbC9pbnRlbC1w
dC1kZWNvZGVyL2luYXQtdGFibGVzLmM6ICQoaW5hdF90YWJsZXNfc2NyaXB0KSAkKGluYXRfdGFi
bGUNCj4gIAkkKGNhbGwgcnVsZV9ta2RpcikNCj4gIAlAJChjYWxsIGVjaG8tY21kLGdlbikkKEFX
SykgLWYgJChpbmF0X3RhYmxlc19zY3JpcHQpICQoaW5hdF90YWJsZXNfbWFwcykgPiAkQCB8fCBy
bSAtZiAkQA0KPiANCj4gLSQoT1VUUFVUKXV0aWwvaW50ZWwtcHQtZGVjb2Rlci9pbnRlbC1wdC1p
bnNuLWRlY29kZXIubzogdXRpbC9pbnRlbC1wdC1kZWNvZGVyL2luYXQuYw0KPiAkKE9VVFBVVCl1
dGlsL2ludGVsLXB0LWRlY29kZXIvaW5hdC10YWJsZXMuYw0KPiArJChPVVRQVVQpdXRpbC9pbnRl
bC1wdC1kZWNvZGVyL2ludGVsLXB0LWluc24tZGVjb2Rlci5vOiB1dGlsL2ludGVsLXB0LWRlY29k
ZXIvaW50ZWwtcHQtaW5zbi1kZWNvZGVyLmMNCj4gdXRpbC9pbnRlbC1wdC1kZWNvZGVyL2luYXQu
YyAkKE9VVFBVVCl1dGlsL2ludGVsLXB0LWRlY29kZXIvaW5hdC10YWJsZXMuYw0KPiArCUAodGVz
dCAtZCAuLi8uLi9rZXJuZWwgLWEgLWQgLi4vLi4vdG9vbHMgLWEgLWQgLi4vcGVyZiAmJiAoKCBc
DQo+ICsJZGlmZiAtQiAtSSdeI2luY2x1ZGUnIHV0aWwvaW50ZWwtcHQtZGVjb2Rlci9pbnNuLmMg
Li4vLi4vYXJjaC94ODYvbGliL2luc24uYyA+L2Rldi9udWxsICYmIFwNCj4gKwlkaWZmIC1CIC1J
J14jaW5jbHVkZScgdXRpbC9pbnRlbC1wdC1kZWNvZGVyL2luYXQuYyAuLi8uLi9hcmNoL3g4Ni9s
aWIvaW5hdC5jID4vZGV2L251bGwgJiYgXA0KPiArCWRpZmYgLUIgdXRpbC9pbnRlbC1wdC1kZWNv
ZGVyL3g4Ni1vcGNvZGUtbWFwLnR4dCAuLi8uLi9hcmNoL3g4Ni9saWIveDg2LW9wY29kZS1tYXAu
dHh0ID4vZGV2L251bGwgJiYgXA0KPiArCWRpZmYgLUIgdXRpbC9pbnRlbC1wdC1kZWNvZGVyL2dl
bi1pbnNuLWF0dHIteDg2LmF3ayAuLi8uLi9hcmNoL3g4Ni90b29scy9nZW4taW5zbi1hdHRyLXg4
Ni5hd2sgPi9kZXYvbnVsbCAmJiBcDQo+ICsJZGlmZiAtQiAtSSdeI2luY2x1ZGUnIHV0aWwvaW50
ZWwtcHQtZGVjb2Rlci9pbnNuLmggLi4vLi4vYXJjaC94ODYvaW5jbHVkZS9hc20vaW5zbi5oID4v
ZGV2L251bGwgJiYgXA0KPiArCWRpZmYgLUIgLUknXiNpbmNsdWRlJyB1dGlsL2ludGVsLXB0LWRl
Y29kZXIvaW5hdC5oIC4uLy4uL2FyY2gveDg2L2luY2x1ZGUvYXNtL2luYXQuaCA+L2Rldi9udWxs
ICYmIFwNCj4gKwlkaWZmIC1CIC1JJ14jaW5jbHVkZScgdXRpbC9pbnRlbC1wdC1kZWNvZGVyL2lu
YXRfdHlwZXMuaCAuLi8uLi9hcmNoL3g4Ni9pbmNsdWRlL2FzbS9pbmF0X3R5cGVzLmggPi9kZXYv
bnVsbCkgXA0KPiArCXx8IGVjaG8gIldhcm5pbmc6IEludGVsIFBUOiB4ODYgaW5zdHJ1Y3Rpb24g
ZGVjb2RlciBkaWZmZXJzIGZyb20ga2VybmVsIiA+JjIgKSkgfHwgdHJ1ZQ0KPiArCSQoY2FsbCBy
dWxlX21rZGlyKQ0KPiArCSQoY2FsbCBpZl9jaGFuZ2VkX2RlcCxjY19vX2MpDQo+IA0KPiAgQ0ZM
QUdTX2ludGVsLXB0LWluc24tZGVjb2Rlci5vICs9IC1JJChPVVRQVVQpdXRpbC9pbnRlbC1wdC1k
ZWNvZGVyIC1Xbm8tb3ZlcnJpZGUtaW5pdA0KPiAtLQ0KPiAxLjkuMQ0KDQo=
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

[toc] | [prev] | [standalone]


Back to top | Article view | linux.kernel


csiph-web