diff -up oprofile-0.9.9/doc/ophelp.xsd.ophelp oprofile-0.9.9/doc/ophelp.xsd --- oprofile-0.9.9/doc/ophelp.xsd.ophelp 2014-05-28 10:09:46.279270117 -0400 +++ oprofile-0.9.9/doc/ophelp.xsd 2014-05-28 10:08:59.416060557 -0400 @@ -0,0 +1,57 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + commit a339a069f4ceba748df44d2babd9f08ce06abd78 Author: Maynard Johnson Date: Thu Nov 7 08:24:05 2013 -0600 ophelp schema is not included in installed files A one-line change in doc/Makefile.am was needed in order for 'make install' to put ophelp.xsd in /share/doc/oprofile. Signed-off-by: Maynard Johnson diff --git a/doc/Makefile.am b/doc/Makefile.am index 45fbe92..258842f 100644 --- a/doc/Makefile.am +++ b/doc/Makefile.am @@ -26,7 +26,7 @@ man_MANS += operf.1 \ endif htmldir = $(prefix)/share/doc/oprofile -dist_html_DATA = oprofile.html internals.html opreport.xsd op-jit-devel.html +dist_html_DATA = oprofile.html internals.html opreport.xsd ophelp.xsd op-jit-devel.html if have_xsltproc commit ed40d8d444a17e7cf16a4653607b04a24f4c0513 Author: William Cohen Date: Tue Jan 28 11:05:46 2014 -0600 Print unit mask name where applicable in ophelp XML output Some Intel architectures have named unit masks and it would be useful to include the unit mask name in the XML output. This patch also updates the ophelp.xsd schema file to include the optional unit mask 'name' field. Signed-off-by: William Cohen diff --git a/doc/ophelp.xsd b/doc/ophelp.xsd index 9bd7f82..c07bdb4 100644 --- a/doc/ophelp.xsd +++ b/doc/ophelp.xsd @@ -49,6 +49,7 @@ + diff --git a/libop/op_xml_events.c b/libop/op_xml_events.c index 3b1af21..de107c2 100644 --- a/libop/op_xml_events.c +++ b/libop/op_xml_events.c @@ -95,6 +95,10 @@ void xml_help_for_event(struct op_event const * event) close_xml_element(NONE, 1, buffer, MAX_BUFFER); for (i = 0; i < event->unit->num; i++) { open_xml_element(HELP_UNIT_MASK, 1, buffer, MAX_BUFFER); + if (event->unit->um[i].name) + init_xml_str_attr(HELP_UNIT_MASK_NAME, + event->unit->um[i].name, + buffer, MAX_BUFFER); init_xml_int_attr(HELP_UNIT_MASK_VALUE, event->unit->um[i].value, buffer, MAX_BUFFER); diff --git a/libop/op_xml_out.c b/libop/op_xml_out.c index 0b3deea..ac3c97b 100644 --- a/libop/op_xml_out.c +++ b/libop/op_xml_out.c @@ -84,7 +84,8 @@ char const * xml_tag_map[] = { "unit_mask", "mask", "desc", - "extra" + "extra", + "name" }; #define MAX_BUF_LEN 2048 diff --git a/libop/op_xml_out.h b/libop/op_xml_out.h index 544bd51..6d5a468 100644 --- a/libop/op_xml_out.h +++ b/libop/op_xml_out.h @@ -59,6 +59,7 @@ typedef enum { HELP_UNIT_MASK_VALUE, HELP_UNIT_MASK_DESC, HELP_UNIT_EXTRA_VALUE, + HELP_UNIT_MASK_NAME, } tag_t; char const * xml_tag_name(tag_t tag); commit fd05dade355b482ee9286b7bf90b4b150f49f81c Author: Maynard Johnson Date: Mon Feb 3 08:47:30 2014 -0600 Remove 'extra' attribute from ophelp XML output; bump schema version As discussed on the oprofile mailing list on Sep 24, 2013, there is no value add in keeping the 'extra' attribute in ophelp's XML output. The previous commit added the 'name' field to the XML output, and that is actual valuable information that consumers of the XML output should use when coding event specifications to pass to operf or ocount. This patch removes the 'extra' attribute and also bumps the schema version (both in the ophelp.xsd and the XML instance documents). The schema bump is needed mostly due to removing the 'extra' attribute; but another reason for it is to draw attention to the new 'name' attribute, which consumers really must use (when present) in order to be sure they can properly specify the unitmask that the user requests. Signed-off-by: Maynard Johnson diff --git a/doc/ophelp.xsd b/doc/ophelp.xsd index c07bdb4..1270121 100644 --- a/doc/ophelp.xsd +++ b/doc/ophelp.xsd @@ -11,7 +11,7 @@ - + diff --git a/libop/op_xml_events.c b/libop/op_xml_events.c index de107c2..c301732 100644 --- a/libop/op_xml_events.c +++ b/libop/op_xml_events.c @@ -21,7 +21,7 @@ static char buffer[MAX_BUFFER]; void open_xml_events(char const * title, char const * doc, op_cpu the_cpu_type) { - char const * schema_version = "1.1"; + char const * schema_version = "2.0"; buffer[0] = '\0'; cpu_type = the_cpu_type; @@ -105,10 +105,6 @@ void xml_help_for_event(struct op_event const * event) init_xml_str_attr(HELP_UNIT_MASK_DESC, event->unit->um[i].desc, buffer, MAX_BUFFER); - if (event->unit->um[i].extra) - init_xml_int_attr(HELP_UNIT_EXTRA_VALUE, - event->unit->um[i].extra, - buffer, MAX_BUFFER); close_xml_element(NONE, 0, buffer, MAX_BUFFER); } close_xml_element(HELP_UNIT_MASKS, 0, buffer, MAX_BUFFER); diff --git a/libop/op_xml_out.c b/libop/op_xml_out.c index ac3c97b..63ee41c 100644 --- a/libop/op_xml_out.c +++ b/libop/op_xml_out.c @@ -84,7 +84,6 @@ char const * xml_tag_map[] = { "unit_mask", "mask", "desc", - "extra", "name" }; diff --git a/libop/op_xml_out.h b/libop/op_xml_out.h index 6d5a468..a829f66 100644 --- a/libop/op_xml_out.h +++ b/libop/op_xml_out.h @@ -58,7 +58,6 @@ typedef enum { HELP_UNIT_MASK, HELP_UNIT_MASK_VALUE, HELP_UNIT_MASK_DESC, - HELP_UNIT_EXTRA_VALUE, HELP_UNIT_MASK_NAME, } tag_t;