Re: [PATCH] perf: qcom_l2_pmu: don't allow guest access

From: Will Deacon
Date: Thu Dec 07 2017 - 08:38:12 EST


On Wed, Dec 06, 2017 at 04:19:24PM -0500, Leeder, Neil wrote:
> On 12/6/2017 11:11 AM, Mark Rutland wrote:
> > On Wed, Dec 06, 2017 at 10:55:33AM -0500, Neil Leeder wrote:
> >> Guests cannot access IMPDEF system registers, which are used
> >> by this driver. Disable the driver if it's running in a guest VM.
> >>
> >> Signed-off-by: Neil Leeder <nleeder@xxxxxxxxxxxxxx>
> >> ---
> >> drivers/perf/qcom_l2_pmu.c | 4 ++++
> >> 1 file changed, 4 insertions(+)
> >
> > I'm a little confused by this. Why is this hypervisor providing a
> > QCOM8130 device to the guest that it cannot use?
> >
> > Could you elaborate on what's going on?
> >
>
> While there's an argument that the guest shouldn't be loading the driver
> in the first place, we can't control everyone's guest configuration or what
> their hypervisor does.

Ok, but why is the hypervisor advertising a device that effectively doesn't
exist? Most drivers trust the firmware tables they are given, so this makes
it sound like we should start annotating all drivers for devices that we
don't expect to see in a guest with is_hyp_mode_available() checks.

That doesn't feel quite right to me.

Will