On 07/04/16 04:49, Konrad Rzeszutek Wilk wrote: > @@ -80,8 +82,12 @@ search_one_table(const struct exception_table_entry *first, > unsigned long > search_exception_table(unsigned long addr) > { > - return search_one_table( > - __start___ex_table, __stop___ex_table-1, addr); > + const struct virtual_region *region = find_text_region(addr); > + > + if ( region && region->ex ) > + return search_one_table(region->ex, region->ex_end-1, addr);
As you are moving the line, style for "end - 1". > +void unregister_virtual_region(struct virtual_region *r) > +{ > + /* Expected to be called from xSplice - which has IRQs disabled. */ > + ASSERT(!local_irq_is_enabled()); > + > + remove_virtual_region(r); > +} > + > +void unregister_init_virtual_region(void) __init > diff --git a/xen/include/xen/virtual_region.h > b/xen/include/xen/virtual_region.h > new file mode 100644 > index 0000000..71ab4bf > --- /dev/null > +++ b/xen/include/xen/virtual_region.h > @@ -0,0 +1,47 @@ > +/* > + * Copyright (c) 2016 Oracle and/or its affiliates. All rights reserved. > + * > + */ > + > +#ifndef __XEN_VIRTUAL_REGION__ > +#define __XEN_VIRTUAL_REGION__ > + > +#include <xen/list.h> > +#include <xen/symbols.h> > + > +struct virtual_region > +{ > + struct list_head list; > + unsigned long start; /* Virtual address start. */ > + unsigned long end; /* Virtual address start. */ Both start eh? No major issues. Once fixed, Reviewed-by: Andrew Cooper <andrew.coop...@citrix.com> _______________________________________________ Xen-devel mailing list Xen-devel@lists.xen.org http://lists.xen.org/xen-devel