Hi bibo,
bibo,mao wrote:
> hiramatu san,
> If the probed instruction can cause one fault, there may be some problem.
> Because original instruction is copied into 2nd element of ainsn.insn,
> instruction execution address is different, search_exception_tables result
> will be different also.
Thank you for your good advice.
As far as I can see, the search_exception_tables() checks whether the
page-fault address is expected to cause an exception.
If it is correct, I think the problem can be avoided by disabling
booster if the table contains the target address.
For example;
if (can_boost(template) && !search_exception_tables(p->addr)) {
p->ainsn.inst_flag |= INST_FLAG_BOOSTABLE;
}
What would you think about this idea?
Thanks