From: Vincenzo Frascino <vincenzo.frascino@arm.com>
To: Boqun Feng <boqun.feng@gmail.com>,
linux-hyperv@vger.kernel.org,
linux-arm-kernel@lists.infradead.org,
linux-kernel@vger.kernel.org
Cc: Sasha Levin <sashal@kernel.org>,
Stefano Stabellini <sstabellini@kernel.org>,
Stephen Hemminger <sthemmin@microsoft.com>,
Catalin Marinas <catalin.marinas@arm.com>,
Haiyang Zhang <haiyangz@microsoft.com>,
Michael Kelley <mikelley@microsoft.com>,
xen-devel@lists.xenproject.org,
Thomas Gleixner <tglx@linutronix.de>,
"K. Y. Srinivasan" <kys@microsoft.com>,
Will Deacon <will@kernel.org>
Subject: Re: [RFC 0/6] vDSO support for Hyper-V guest on ARM64
Date: Thu, 23 Jan 2020 10:48:07 +0000 [thread overview]
Message-ID: <ef6cb7ba-b448-cfa5-abbb-1d99d1396ce5@arm.com> (raw)
In-Reply-To: <20191216001922.23008-1-boqun.feng@gmail.com>
[-- Attachment #1: Type: text/plain, Size: 2527 bytes --]
Hi Boqun Feng,
sorry for the late reply.
On 16/12/2019 00:19, Boqun Feng wrote:
> Hi,
>
> This is the RFC patchset for vDSO support in ARM64 Hyper-V guest. To
> test it, Michael's ARM64 support patchset:
>
> https://lore.kernel.org/linux-arm-kernel/1570129355-16005-1-git-send-email-mikelley@microsoft.com/
>
> is needed.
>
> Similar as x86, Hyper-V on ARM64 use a TSC page for guests to read
> the virtualized hardware timer, this TSC page is read-only for the
> guests, so could be used for vDSO data page. And the vDSO (userspace)
> code could use the same code for timer reading as kernel, since
> they read the same TSC page.
>
I had a look to your patches and overall, I could not understand why we can't
use the arch_timer to do the same things you are doing with the one you
introduced in this series. What confuses me is that KVM works just fine with the
arch_timer which was designed with virtualization in mind. Why do we need
another one? Could you please explain?
> This patchset therefore extends ARM64's __vsdo_init() to allow multiple
> data pages and introduces the vclock_mode concept similar to x86 to
> allow different platforms (bare-metal, Hyper-V, etc.) to switch to
> different __arch_get_hw_counter() implementations. The rest of this
> patchset does the necessary setup for Hyper-V guests: mapping tsc page,
> enabling userspace to read cntvct, etc. to enable vDSO.
>
> This patchset consists of 6 patches:
>
> patch #1 allows hv_get_raw_timer() definition to be overridden for
> userspace and kernel to share the same hv_read_tsc_page() definition.
>
> patch #2 extends ARM64 to support multiple vDSO data pages.
>
> patch #3 introduces vclock_mode similiar to x86 to allow different
> __arch_get_hw_counter() implementations for different clocksources.
>
> patch #4 maps Hyper-V TSC page into vDSO data page.
>
> patch #5 allows userspace to read cntvct, so that userspace can
> efficiently read the clocksource.
>
> patch #6 enables the vDSO for ARM64 Hyper-V guest.
>
> The whole patchset is based on v5.5-rc1 plus Michael's ARM64 support
> patchset, and I've done a few tests with:
>
> https://github.com/nlynch-mentor/vdsotest
>
> Comments and suggestions are welcome!
>
> Regards,
> Boqun
>
> _______________________________________________
> linux-arm-kernel mailing list
> linux-arm-kernel@lists.infradead.org
> http://lists.infradead.org/mailman/listinfo/linux-arm-kernel
>
--
Regards,
Vincenzo
[-- Attachment #2: pEpkey.asc --]
[-- Type: application/pgp-keys, Size: 14291 bytes --]
[-- Attachment #3: Type: text/plain, Size: 176 bytes --]
_______________________________________________
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:[~2020-01-23 10:48 UTC|newest]
Thread overview: 14+ messages / expand[flat|nested] mbox.gz Atom feed top
2019-12-16 0:19 [RFC 0/6] vDSO support for Hyper-V guest on ARM64 Boqun Feng
2019-12-16 0:19 ` [RFC 1/6] arm64: hyperv: Allow hv_get_raw_timer() definition to be overridden Boqun Feng
2019-12-16 0:19 ` [RFC 2/6] arm64: vdso: Add support for multiple vDSO data pages Boqun Feng
2019-12-16 0:19 ` [RFC 3/6] arm/arm64: clocksource: Introduce vclock_mode Boqun Feng
2019-12-16 0:19 ` [RFC 4/6] arm64: vdso: hyperv: Map tsc page into vDSO if enabled Boqun Feng
2019-12-16 0:19 ` [RFC 5/6] arm64: hyperv: Enable userspace to read cntvct Boqun Feng
2019-12-16 0:19 ` [RFC 6/6] arm64: hyperv: Enable vDSO Boqun Feng
2019-12-17 14:10 ` Vitaly Kuznetsov
2019-12-18 5:47 ` Boqun Feng
2020-01-23 10:48 ` Vincenzo Frascino [this message]
2020-01-24 6:32 ` [RFC 0/6] vDSO support for Hyper-V guest on ARM64 Boqun Feng
2020-01-24 10:24 ` Vincenzo Frascino
2020-01-28 5:58 ` Boqun Feng
2020-01-28 11:48 ` Marc Zyngier
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=ef6cb7ba-b448-cfa5-abbb-1d99d1396ce5@arm.com \
--to=vincenzo.frascino@arm.com \
--cc=boqun.feng@gmail.com \
--cc=catalin.marinas@arm.com \
--cc=haiyangz@microsoft.com \
--cc=kys@microsoft.com \
--cc=linux-arm-kernel@lists.infradead.org \
--cc=linux-hyperv@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=mikelley@microsoft.com \
--cc=sashal@kernel.org \
--cc=sstabellini@kernel.org \
--cc=sthemmin@microsoft.com \
--cc=tglx@linutronix.de \
--cc=will@kernel.org \
--cc=xen-devel@lists.xenproject.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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).