On Tue, Apr 28, 2015 at 10:34:12AM +0100, Peter Maydell wrote: > On 28 April 2015 at 09:42, Alex Bennée <alex.bennee@xxxxxxxxxx> wrote: > > Peter Maydell <peter.maydell@xxxxxxxxxx> writes: > >> Does the kernel already have a conveniently implemented "inject > >> exception into guest" lump of code? If so it might be less effort > >> to do it that way round, maybe. > > > > So you pointed out we can't just re-inject the exceptions we get as we > > need to map from things like ESR_ELx_EC_WATCHPT_LOW to > > ESR_ELx_EC_WATCHPT_CUR before re-injection. > > > > Of course if it is as simple as modifying the ESR_EL1 register and > > returning +ve in the handle_exit path then I can do that but I assumed > > if any other wrangling needs doing it should be done in userspace. > > Well, somebody's got to do it, and it's the same amount of work > either way (fiddling with ESR, making sure we direct the guest > to the right exception vector entry point, maybe a few other > things). > We already have code in the kernel to inject data/instruction aborts, but not sure how much benefit there is in re-using that. It's up to you really, but I think the kernel code should be clear about what the intention is so that we don't end up in a situation where: (1) The intended behavior is unclear/vague, and (2) it doesn't actually work in practice so nobody can follow the code. Thanks, -Christoffer -- To unsubscribe from this list: send the line "unsubscribe kvm" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html