From: Catalin Marinas <catalin.marinas@arm.com>
To: Shaoqin Huang <shahuang@redhat.com>
Cc: Kristina Martsenko <kristina.martsenko@arm.com>,
linux-arm-kernel@lists.infradead.org, kvmarm@lists.linux.dev,
Will Deacon <will@kernel.org>, Marc Zyngier <maz@kernel.org>,
Oliver Upton <oliver.upton@linux.dev>,
James Morse <james.morse@arm.com>,
Suzuki K Poulose <suzuki.poulose@arm.com>,
Zenghui Yu <yuzenghui@huawei.com>,
Mark Rutland <mark.rutland@arm.com>,
Mark Brown <broonie@kernel.org>,
Luis Machado <luis.machado@arm.com>,
Vladimir Murzin <vladimir.murzin@arm.com>,
linux-kernel@vger.kernel.org
Subject: Re: [PATCH v2 07/11] arm64: mops: handle MOPS exceptions
Date: Mon, 5 Jun 2023 13:04:59 +0100 [thread overview]
Message-ID: <ZH3Pa/Ct3XX613Yj@arm.com> (raw)
In-Reply-To: <628463d5-b9df-51bd-8e1f-b0a41a928d85@redhat.com>
On Mon, Jun 05, 2023 at 07:43:27PM +0800, Shaoqin Huang wrote:
> Hi Kristina,
>
> On 5/9/23 22:22, Kristina Martsenko wrote:
> > The memory copy/set instructions added as part of FEAT_MOPS can take an
> > exception (e.g. page fault) part-way through their execution and resume
> > execution afterwards.
> >
> > If however the task is re-scheduled and execution resumes on a different
> > CPU, then the CPU may take a new type of exception to indicate this.
> > This is because the architecture allows two options (Option A and Option
> > B) to implement the instructions and a heterogeneous system can have
> > different implementations between CPUs.
> >
> > In this case the OS has to reset the registers and restart execution
> > from the prologue instruction. The algorithm for doing this is provided
> > as part of the Arm ARM.
>
> What is the Arm ARM? I'm not quite understand it.
The Arm Architecture Reference Manual:
https://developer.arm.com/documentation/ddi0487/latest
(the acronym we pretty well known among the arm/arm64 developers)
--
Catalin
WARNING: multiple messages have this Message-ID (diff)
From: Catalin Marinas <catalin.marinas@arm.com>
To: Shaoqin Huang <shahuang@redhat.com>
Cc: Kristina Martsenko <kristina.martsenko@arm.com>,
linux-arm-kernel@lists.infradead.org, kvmarm@lists.linux.dev,
Will Deacon <will@kernel.org>, Marc Zyngier <maz@kernel.org>,
Oliver Upton <oliver.upton@linux.dev>,
James Morse <james.morse@arm.com>,
Suzuki K Poulose <suzuki.poulose@arm.com>,
Zenghui Yu <yuzenghui@huawei.com>,
Mark Rutland <mark.rutland@arm.com>,
Mark Brown <broonie@kernel.org>,
Luis Machado <luis.machado@arm.com>,
Vladimir Murzin <vladimir.murzin@arm.com>,
linux-kernel@vger.kernel.org
Subject: Re: [PATCH v2 07/11] arm64: mops: handle MOPS exceptions
Date: Mon, 5 Jun 2023 13:04:59 +0100 [thread overview]
Message-ID: <ZH3Pa/Ct3XX613Yj@arm.com> (raw)
In-Reply-To: <628463d5-b9df-51bd-8e1f-b0a41a928d85@redhat.com>
On Mon, Jun 05, 2023 at 07:43:27PM +0800, Shaoqin Huang wrote:
> Hi Kristina,
>
> On 5/9/23 22:22, Kristina Martsenko wrote:
> > The memory copy/set instructions added as part of FEAT_MOPS can take an
> > exception (e.g. page fault) part-way through their execution and resume
> > execution afterwards.
> >
> > If however the task is re-scheduled and execution resumes on a different
> > CPU, then the CPU may take a new type of exception to indicate this.
> > This is because the architecture allows two options (Option A and Option
> > B) to implement the instructions and a heterogeneous system can have
> > different implementations between CPUs.
> >
> > In this case the OS has to reset the registers and restart execution
> > from the prologue instruction. The algorithm for doing this is provided
> > as part of the Arm ARM.
>
> What is the Arm ARM? I'm not quite understand it.
The Arm Architecture Reference Manual:
https://developer.arm.com/documentation/ddi0487/latest
(the acronym we pretty well known among the arm/arm64 developers)
--
Catalin
_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel
next prev parent reply other threads:[~2023-06-05 12:05 UTC|newest]
Thread overview: 43+ messages / expand[flat|nested] mbox.gz Atom feed top
2023-05-09 14:22 [PATCH v2 00/11] arm64: Support for Armv8.8 memcpy instructions in userspace Kristina Martsenko
2023-05-09 14:22 ` [PATCH v2 01/11] KVM: arm64: initialize HCRX_EL2 Kristina Martsenko
2023-06-02 13:49 ` Catalin Marinas
2023-06-02 13:49 ` Catalin Marinas
2023-06-05 15:41 ` Oliver Upton
2023-06-05 15:41 ` Oliver Upton
2023-06-03 8:39 ` Marc Zyngier
2023-06-03 8:39 ` Marc Zyngier
2023-05-09 14:22 ` [PATCH v2 02/11] arm64: cpufeature: detect FEAT_HCX Kristina Martsenko
2023-05-09 14:22 ` [PATCH v2 03/11] KVM: arm64: switch HCRX_EL2 between host and guest Kristina Martsenko
2023-06-02 13:51 ` Catalin Marinas
2023-06-02 13:51 ` Catalin Marinas
2023-06-05 15:41 ` Oliver Upton
2023-06-05 15:41 ` Oliver Upton
2023-06-03 8:40 ` Marc Zyngier
2023-06-03 8:40 ` Marc Zyngier
2023-05-09 14:22 ` [PATCH v2 04/11] arm64: mops: document boot requirements for MOPS Kristina Martsenko
2023-05-09 14:22 ` [PATCH v2 05/11] arm64: mops: don't disable host MOPS instructions from EL2 Kristina Martsenko
2023-05-09 14:22 ` [PATCH v2 06/11] KVM: arm64: hide MOPS from guests Kristina Martsenko
2023-05-25 19:26 ` Colton Lewis
2023-05-25 19:26 ` Colton Lewis
2023-05-30 16:34 ` Kristina Martsenko
2023-05-30 16:34 ` Kristina Martsenko
2023-06-03 8:42 ` Marc Zyngier
2023-06-03 8:42 ` Marc Zyngier
2023-06-05 15:45 ` Oliver Upton
2023-06-05 15:45 ` Oliver Upton
2023-05-09 14:22 ` [PATCH v2 07/11] arm64: mops: handle MOPS exceptions Kristina Martsenko
2023-05-25 19:50 ` Colton Lewis
2023-05-25 19:50 ` Colton Lewis
2023-05-30 16:36 ` Kristina Martsenko
2023-05-30 16:36 ` Kristina Martsenko
2023-06-05 11:43 ` Shaoqin Huang
2023-06-05 11:43 ` Shaoqin Huang
2023-06-05 12:04 ` Catalin Marinas [this message]
2023-06-05 12:04 ` Catalin Marinas
2023-05-09 14:22 ` [PATCH v2 08/11] arm64: mops: handle single stepping after MOPS exception Kristina Martsenko
2023-05-09 14:22 ` [PATCH v2 09/11] arm64: mops: detect and enable FEAT_MOPS Kristina Martsenko
2023-05-09 14:22 ` [PATCH v2 10/11] arm64: mops: allow disabling MOPS from the kernel command line Kristina Martsenko
2023-05-09 14:22 ` [PATCH v2 11/11] kselftest/arm64: add MOPS to hwcap test Kristina Martsenko
2023-05-12 4:02 ` Mark Brown
2023-06-05 17:46 ` [PATCH v2 00/11] arm64: Support for Armv8.8 memcpy instructions in userspace Catalin Marinas
2023-06-05 17:46 ` Catalin Marinas
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=ZH3Pa/Ct3XX613Yj@arm.com \
--to=catalin.marinas@arm.com \
--cc=broonie@kernel.org \
--cc=james.morse@arm.com \
--cc=kristina.martsenko@arm.com \
--cc=kvmarm@lists.linux.dev \
--cc=linux-arm-kernel@lists.infradead.org \
--cc=linux-kernel@vger.kernel.org \
--cc=luis.machado@arm.com \
--cc=mark.rutland@arm.com \
--cc=maz@kernel.org \
--cc=oliver.upton@linux.dev \
--cc=shahuang@redhat.com \
--cc=suzuki.poulose@arm.com \
--cc=vladimir.murzin@arm.com \
--cc=will@kernel.org \
--cc=yuzenghui@huawei.com \
/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.