[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: [Xen-devel] [PATCH v3 09/23] xsplice: Add support for bug frames. (v4)
. snip.. > There is a neater way of doing this, which doesn't involve having "if ( > regular ) else if ( xsplice )" logic chains through the code. s/chains/chain/ There is only one that uses the 'xsplice' name in it:-) The other two are wrapped with the 'is_patch'. > > Given a > > struct virtual_region > { > struct list_head list; > unsigned long start, size; > > struct bug_frame *foo; > struct exception_table_entry *bar; > }; > > The init code can construct one for the base hypervisor, and xsplice can > add or remove entries from the list. Then, the trap routines search the > virtual region list for [start, size) and follow the appropriate pointers. You are suggesting that on bootup we parse the the __stop_bug_frames_[0-3] (different on ARM), and create an linked list to contain those. Then xSplice can call in this API to add their own - and on unload it can unlink them and free them. If m understanding is correct - while it is certainly much nicer, it has drawbacks: - Increases the code to now handle the linked list and all the code around it (And correspondingly we may have now some extra bugs to track). - Bigger memory consumption - we now to have to consume memory for this list - even for the built-in ones. - More code to do for v1 of this patchset. Can we perhaps we can make this a lesser priority and keep it the existing if ( .. ) else if (xsplice_find_bug()..) code construct for Xen 4.7? Thanks. _______________________________________________ Xen-devel mailing list Xen-devel@xxxxxxxxxxxxx http://lists.xen.org/xen-devel
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |