Updating hypervisor event trace descriptions (optional)

The QNX Momentics IDE System Profiler includes text descriptions of qvm events, so you don't need to do anything special to show these events.

Copy an event-descriptions file into your IDE project

If you don't have the qvm event descriptions for the IDE System Profiler, or if you need to update the qvm event descriptions to newer versions, you can create an event-descriptions file and copy it into your IDE project. To do this:

  1. Get or create an events description file (e.g., qvm_events.xml), and save it to a convenient location.
  2. Copy this file into the root directory of the IDE project in which you will use the IDE's System Profiler.

See Example of a descriptions file below for an example of a qvm events descriptions file.

Load the event-descriptions file

After you have the qvm_events.xml in your project's root directory, you need to load the file into the IDE:

  1. Start the QNX Momentics IDE.
  2. In the System Profiler perspective, select the Project Explorer tab.
  3. Right-click the target system for your QNX hypervisor target, then select Import.
  4. In the Import wizard, select General > File System, then click Next.
  5. Next to the From directory field, click Browse to open the file selector.
  6. Browse to the directory containing your qvm_events.xml file, select this file, then click Finish.
  7. Select Window > Preferences in the menu area at the top, then QNX > System Profiler > User Event Data in the resulting dialog box.
  8. Select Browse... and in the file selector that opens, select your qvm_events.xml file, then click OK.
  9. Exit the QNX Momentics IDE, then restart the IDE and connect to the target board running your QNX hypervisor system.
  10. Load any *.kev file into the System Profiler. You should see the qvm process trace events, including the Class 10 events (see Hypervisor trace events).

    For more information about this IDE tool, see the System Profiler section in the IDE User's Guide.

Note: You need to do this for only one project on your development seat. When you have done this once, the System Profiler will be able to use the qvm_events.xml file and its descriptions for all other projects.

Example of a descriptions file

Below, for reference, is a copy of the content of an XML event-descriptions file (qvm_events.xml):

<eventdefinitions>
	<!–– Guest Entry ––>
	<datakey format="%8u1x guest_ip">
		<event class="10" id="0" />
	</datakey>
	<!–– Guest Exit ––>
	<datakey format="%4u1x status %4u1x reason %8u1x 
		cc_offset %8u1x guest_ip %8u1x payload">
		<event class="10" id="1" />
	</datakey>
	<!–– vCPU create ––>
	<datakey format="%4u1x vcpu_id">
		<event class="10" id="2" />
	</datakey>
	<!–– Raise interrupt ––>
	<datakey format="%4u1x vcpu_id %4u1x interrupt">
		<event class="10" id="3" />
	</datakey>
	<!–– Lower interrupt ––>
	<datakey format="%4u1x vcpu_id %4u1x interrupt">
		<event class="10" id="4" />
	</datakey>
	<!–– Create timer ––>
	<datakey format="%4u1x timer_id %4u1x cpu_id">
		<event class="10" id="5" />
	</datakey>
	<!–– Timer fire ––>
	<datakey format="%4u1x timer_id">
		<event class="10" id="6" />
	</datakey>
	<!–– Guest entry and exit ––>
	<datakey format="%8u1x at_entry %8u1x at_exit">
		<event class="10" id="7" />
	</datakey>
</eventdefinitions>