Julian Ganz <[email protected]> writes: > Some analysis greatly benefits, or depends on, information about > certain types of dicontinuities such as interrupts. For example, we may > need to handle the execution of a new translation block differently if > it is not the result of normal program flow but of an interrupt. > > Even with the existing interfaces, it is more or less possible to > discern these situations, e.g. as done by the cflow plugin. However, > this process poses a considerable overhead to the core analysis one may > intend to perform. > > These changes introduce a generic and easy-to-use interface for plugin > authors in the form of a callback for discontinuities. Patch 1 defines > an enumeration of some trap-related discontinuities including somewhat > narrow definitions of the discontinuity evetns and a callback type. > Patch 2 defines the callback registration function. Patch 3 adds some > hooks for triggering the callbacks. Patch 4 adds an example plugin > showcasing the new API. > > Patches 5 through 22 call the hooks for all architectures but hexagon, > mapping architecture specific events to the three categories defined in > patch 1. We don't plan to add hooks for hexagon since despite having > exceptions apparently doesn't have any discontinuities associated with > them. > > Patch 23 supplies a test plugin asserting some behavior of the plugin > API w.r.t. the PCs reported by the new API. Finally, patches 24 and 25 > add new tests for riscv which serve as test-cases for the test plugin. > > Sidenote: I'm likely doing something wrong for one architecture or > the other. These patches are untested for most of them. > > Since v4: > - Fixed a typo in the documentation of the > qemu_plugin_vcpu_discon_cb_t function type (pointed out by Pierrick > Bouvier) > - Fixed a reference in the documentation of the > qemu_plugin_vcpu_discon_cb_t function type > - Added hooks for SuperH and TriCore targets > - Fixed typos in commit messages (pointed out by Daniel Henrique > Barboza)
Hi Julian, Just checking what the status of these patches are. It looks like you have a number of comments to address but the number of reviewed patches is going up each revision. Do you think you will be able to spin a new revision and look to get this merged in the 10.2 cycle? -- Alex Bennée Virtualisation Tech Lead @ Linaro
