Re: [PATCH v4 03/12] KVM: arm64: guest debug, define API headers

From: Mark Rutland
Date: Fri May 15 2015 - 11:43:56 EST


On Fri, May 15, 2015 at 04:17:46PM +0100, Peter Maydell wrote:
> On 15 May 2015 at 16:14, Alex BennÃe <alex.bennee@xxxxxxxxxx> wrote:
> >
> > Mark Rutland <mark.rutland@xxxxxxx> writes:
> >
> >> On Fri, May 15, 2015 at 03:27:06PM +0100, Alex BennÃe wrote:
> >>> +/*
> >>> + * See v8 ARM ARM D7.3: Debug Registers
> >>> + *
> >>> + * The control registers are architecturally defined as 32 bits but are
> >>> + * stored as 64 bit values alongside the value registers. This is done
> >>
> >> Stale comment? They're stored as __u32 below.
> >
> > Gah yes it is.
> >
> >> It's possible that the registers could grow in future as happened in the
> >> case of CLIDR_EL1, so it might be worth treating system registers
> >> generally as u64 values.
> >
> > Really? I mean the existing debug *control* registers have reserved bits
> > 24-31 so there is space for expansion.
>
> Other places in the userspace ABI which deal with sysregs (notably
> ONE_REG) consistently define them all as 64-bit

Also for pt_regs.pstate.

I just spotted that in user_hwdebug_state in ptrace.h we seem to expose
the debug control regsiters as __u32 already, aalong with some other
registers.

So we're already inconsistent w.r.t. how we expose those registers, and
I'm not sure what we'd do elsewhere if any registers got expanded. :/

Mark.
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/