All of lore.kernel.org
 help / color / mirror / Atom feed
From: "Alex Bennée" <alex.bennee@linaro.org>
To: Mark Rutland <mark.rutland@arm.com>
Cc: "kvm@vger.kernel.org" <kvm@vger.kernel.org>,
	Marc Zyngier <Marc.Zyngier@arm.com>,
	Catalin Marinas <Catalin.Marinas@arm.com>,
	"r65777@freescale.com" <r65777@freescale.com>,
	Will Deacon <Will.Deacon@arm.com>,
	open list <linux-kernel@vger.kernel.org>,
	"dahi@linux.vnet.ibm.com" <dahi@linux.vnet.ibm.com>,
	"linux-arm-kernel@lists.infradead.org"
	<linux-arm-kernel@lists.infradead.org>,
	"zhichao.huang@linaro.org" <zhichao.huang@linaro.org>,
	"jan.kiszka@siemens.com" <jan.kiszka@siemens.com>,
	"pbonzini@redhat.com" <pbonzini@redhat.com>,
	"bp@suse.de" <bp@suse.de>,
	"kvmarm@lists.cs.columbia.edu" <kvmarm@lists.cs.columbia.edu>
Subject: Re: [PATCH v4 03/12] KVM: arm64: guest debug, define API headers
Date: Fri, 15 May 2015 17:19:03 +0100	[thread overview]
Message-ID: <87wq09ke4o.fsf@linaro.org> (raw)
In-Reply-To: <20150515154324.GC23652@leverpostej>


Mark Rutland <mark.rutland@arm.com> writes:

> 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@linaro.org> wrote:
>> >
>> > Mark Rutland <mark.rutland@arm.com> 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.

I thought those where ptrace specific fields which then get munged into
the final values inside the kernel?

>
> 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.

-- 
Alex Bennée
_______________________________________________
kvmarm mailing list
kvmarm@lists.cs.columbia.edu
https://lists.cs.columbia.edu/mailman/listinfo/kvmarm

WARNING: multiple messages have this Message-ID (diff)
From: alex.bennee@linaro.org (Alex Bennée)
To: linux-arm-kernel@lists.infradead.org
Subject: [PATCH v4 03/12] KVM: arm64: guest debug, define API headers
Date: Fri, 15 May 2015 17:19:03 +0100	[thread overview]
Message-ID: <87wq09ke4o.fsf@linaro.org> (raw)
In-Reply-To: <20150515154324.GC23652@leverpostej>


Mark Rutland <mark.rutland@arm.com> writes:

> 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@linaro.org> wrote:
>> >
>> > Mark Rutland <mark.rutland@arm.com> 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.

I thought those where ptrace specific fields which then get munged into
the final values inside the kernel?

>
> 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.

-- 
Alex Benn?e

WARNING: multiple messages have this Message-ID (diff)
From: "Alex Bennée" <alex.bennee@linaro.org>
To: Mark Rutland <mark.rutland@arm.com>
Cc: Peter Maydell <peter.maydell@linaro.org>,
	"kvm\@vger.kernel.org" <kvm@vger.kernel.org>,
	"linux-arm-kernel\@lists.infradead.org" 
	<linux-arm-kernel@lists.infradead.org>,
	"kvmarm\@lists.cs.columbia.edu" <kvmarm@lists.cs.columbia.edu>,
	"christoffer.dall\@linaro.org" <christoffer.dall@linaro.org>,
	Marc Zyngier <Marc.Zyngier@arm.com>,
	"agraf\@suse.de" <agraf@suse.de>,
	"drjones\@redhat.com" <drjones@redhat.com>,
	"pbonzini\@redhat.com" <pbonzini@redhat.com>,
	"zhichao.huang\@linaro.org" <zhichao.huang@linaro.org>,
	Catalin Marinas <Catalin.Marinas@arm.com>,
	"jan.kiszka\@siemens.com" <jan.kiszka@siemens.com>,
	Will Deacon <Will.Deacon@arm.com>,
	open list <linux-kernel@vger.kernel.org>,
	"dahi\@linux.vnet.ibm.com" <dahi@linux.vnet.ibm.com>,
	"r65777\@freescale.com" <r65777@freescale.com>,
	"bp\@suse.de" <bp@suse.de>
Subject: Re: [PATCH v4 03/12] KVM: arm64: guest debug, define API headers
Date: Fri, 15 May 2015 17:19:03 +0100	[thread overview]
Message-ID: <87wq09ke4o.fsf@linaro.org> (raw)
In-Reply-To: <20150515154324.GC23652@leverpostej>


Mark Rutland <mark.rutland@arm.com> writes:

> 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@linaro.org> wrote:
>> >
>> > Mark Rutland <mark.rutland@arm.com> 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.

I thought those where ptrace specific fields which then get munged into
the final values inside the kernel?

>
> 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.

-- 
Alex Bennée

  reply	other threads:[~2015-05-15 16:08 UTC|newest]

Thread overview: 95+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2015-05-15 14:27 [PATCH v4 00/12] KVM Guest Debug support for arm64 Alex Bennée
2015-05-15 14:27 ` Alex Bennée
2015-05-15 14:27 ` [PATCH v4 01/12] KVM: add comments for kvm_debug_exit_arch struct Alex Bennée
2015-05-15 14:27   ` Alex Bennée
2015-05-15 14:27   ` Alex Bennée
2015-05-15 14:27 ` [PATCH v4 02/12] KVM: define common KVM_GUESTDBG_USE_SW/HW_BP bits Alex Bennée
2015-05-15 14:27   ` Alex Bennée
2015-05-15 14:27   ` Alex Bennée
2015-05-15 14:27   ` Alex Bennée
2015-05-15 14:27   ` Alex Bennée
2015-05-15 15:42   ` Christian Borntraeger
2015-05-15 15:42     ` Christian Borntraeger
2015-05-15 15:42     ` Christian Borntraeger
     [not found]     ` <555613F2.9060204-tA70FqPdS9bQT0dZR+AlfA@public.gmane.org>
2015-05-15 17:33       ` David Hildenbrand
2015-05-15 17:33         ` David Hildenbrand
2015-05-15 17:33         ` David Hildenbrand
2015-05-15 17:33         ` David Hildenbrand
2015-05-15 17:46         ` Jan Kiszka
2015-05-15 17:46           ` Jan Kiszka
2015-05-15 15:58   ` Christian Borntraeger
2015-05-15 15:58     ` Christian Borntraeger
2015-05-15 15:58     ` Christian Borntraeger
2015-05-15 15:58     ` Christian Borntraeger
2015-05-15 15:58     ` Christian Borntraeger
2015-05-15 14:27 ` [PATCH v4 03/12] KVM: arm64: guest debug, define API headers Alex Bennée
2015-05-15 14:27   ` Alex Bennée
2015-05-15 14:27   ` Alex Bennée
2015-05-15 14:44   ` Mark Rutland
2015-05-15 14:44     ` Mark Rutland
2015-05-15 15:14     ` Alex Bennée
2015-05-15 15:14       ` Alex Bennée
2015-05-15 15:14       ` Alex Bennée
2015-05-15 15:17       ` Peter Maydell
2015-05-15 15:17         ` Peter Maydell
2015-05-15 15:17         ` Peter Maydell
2015-05-15 15:43         ` Alex Bennée
2015-05-15 15:43           ` Alex Bennée
2015-05-15 15:43           ` Alex Bennée
2015-05-15 15:43         ` Mark Rutland
2015-05-15 15:43           ` Mark Rutland
2015-05-15 15:43           ` Mark Rutland
2015-05-15 16:19           ` Alex Bennée [this message]
2015-05-15 16:19             ` Alex Bennée
2015-05-15 16:19             ` Alex Bennée
2015-05-15 14:27 ` [PATCH v4 04/12] KVM: arm: guest debug, add stub KVM_SET_GUEST_DEBUG ioctl Alex Bennée
2015-05-15 14:27   ` Alex Bennée
2015-05-15 14:27   ` Alex Bennée
2015-05-15 14:27 ` [PATCH v4 05/12] KVM: arm: introduce kvm_arm_init/setup/clear_debug Alex Bennée
2015-05-15 14:27   ` Alex Bennée
2015-05-15 14:27   ` Alex Bennée
2015-05-15 14:27 ` [PATCH v4 06/12] KVM: arm64: guest debug, add SW break point support Alex Bennée
2015-05-15 14:27   ` Alex Bennée
2015-05-15 14:27   ` Alex Bennée
2015-05-20  9:17   ` Will Deacon
2015-05-20  9:17     ` Will Deacon
2015-05-20  9:17     ` Will Deacon
2015-05-20  9:17     ` Will Deacon
2015-05-20 12:33     ` Alex Bennée
2015-05-20 12:33       ` Alex Bennée
2015-05-20 12:33       ` Alex Bennée
2015-05-20 12:33       ` Alex Bennée
2015-05-15 14:27 ` [PATCH v4 07/12] KVM: arm64: guest debug, add support for single-step Alex Bennée
2015-05-15 14:27   ` Alex Bennée
2015-05-15 14:27   ` Alex Bennée
2015-05-15 14:27 ` [PATCH v4 08/12] KVM: arm64: re-factor hyp.S debug register code Alex Bennée
2015-05-15 14:27   ` Alex Bennée
2015-05-15 14:27   ` Alex Bennée
2015-05-15 14:27 ` [PATCH v4 09/12] KVM: arm64: introduce vcpu->arch.debug_ptr Alex Bennée
2015-05-15 14:27   ` Alex Bennée
2015-05-15 14:27   ` Alex Bennée
2015-05-15 14:27 ` [PATCH v4 10/12] KVM: arm64: guest debug, HW assisted debug support Alex Bennée
2015-05-15 14:27   ` Alex Bennée
2015-05-15 14:27   ` Alex Bennée
     [not found]   ` <1431700035-23479-11-git-send-email-alex.bennee-QSEj5FYQhm4dnm+yROfE0A@public.gmane.org>
2015-05-15 15:23     ` Mark Rutland
2015-05-15 15:23       ` Mark Rutland
2015-05-15 15:23       ` Mark Rutland
2015-05-15 15:23       ` Mark Rutland
2015-05-15 16:16       ` Alex Bennée
2015-05-15 16:16         ` Alex Bennée
2015-05-15 16:16         ` Alex Bennée
2015-05-15 16:16         ` Alex Bennée
2015-05-15 17:01         ` Mark Rutland
2015-05-15 17:01           ` Mark Rutland
2015-05-15 17:01           ` Mark Rutland
2015-05-15 17:01           ` Mark Rutland
2015-05-15 17:09         ` Peter Maydell
2015-05-15 17:09           ` Peter Maydell
2015-05-15 17:09           ` Peter Maydell
2015-05-15 17:09           ` Peter Maydell
2015-05-15 14:27 ` [PATCH v4 11/12] KVM: arm64: enable KVM_CAP_SET_GUEST_DEBUG Alex Bennée
2015-05-15 14:27   ` Alex Bennée
2015-05-15 14:27   ` Alex Bennée
2015-05-15 14:27 ` [PATCH v4 12/12] KVM: arm64: add trace points for guest_debug debug Alex Bennée
2015-05-15 14:27   ` Alex Bennée
2015-05-15 14:27   ` Alex Bennée

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=87wq09ke4o.fsf@linaro.org \
    --to=alex.bennee@linaro.org \
    --cc=Catalin.Marinas@arm.com \
    --cc=Marc.Zyngier@arm.com \
    --cc=Will.Deacon@arm.com \
    --cc=bp@suse.de \
    --cc=dahi@linux.vnet.ibm.com \
    --cc=jan.kiszka@siemens.com \
    --cc=kvm@vger.kernel.org \
    --cc=kvmarm@lists.cs.columbia.edu \
    --cc=linux-arm-kernel@lists.infradead.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=mark.rutland@arm.com \
    --cc=pbonzini@redhat.com \
    --cc=r65777@freescale.com \
    --cc=zhichao.huang@linaro.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.