From: Marc Zyngier <maz@kernel.org>
To: Chanho Park <parkch98@gmail.com>
Cc: Mark Rutland <mark.rutland@arm.com>,
Chanho Park <chanho61.park@samsung.com>,
Daniel Lezcano <daniel.lezcano@linaro.org>,
Thomas Gleixner <tglx@linutronix.de>,
linux-arm-kernel@lists.infradead.org
Subject: Re: [PATCH] clocksource/drivers/arm_arch_timer: export arch_timer_get_rate
Date: Tue, 12 Jan 2021 15:30:36 +0000 [thread overview]
Message-ID: <d9da1d0d309c16fe0d6edd3011224efc@kernel.org> (raw)
In-Reply-To: <CAPTzV16oGBK2=qD97iy++S75FTBfCF_QFrv=Z+7zUAvfMcocBQ@mail.gmail.com>
Chanho,
On 2021-01-12 15:14, Chanho Park wrote:
> Hi Marc,
>
> On Tue, Jan 12, 2021 at 11:45 PM Marc Zyngier <maz@kernel.org> wrote:
>>
>> On 2021-01-12 13:39, Chanho Park wrote:
>> > Hi,
>> >
>> >> On Tue, Jan 12, 2021 at 10:31:40AM +0900, Chanho Park wrote:
>> >> > This patch adds to export arch_timer_get_rate function for calculating
>> >> > absolute timestamp which is based on arch timer like below.
>> >> > arch_timer_read_counter was already exported but arch_timer_get_rate
>> >> > wasn't. Thus, this patch tries to export this to use this function from
>> >> > loadable kernel module.
>> >>
>> >> Can you please explain /where/ this would be used? i.e. which module?
>> >>
>> >> Generally we try to avoid drivers depending on the specific
>> >> clocksource,
>> >> so I think there needs to be stronger rationale for exposing this.
>> >
>> > I need a system-wide timestamp which can be available from bootloader
>> > and kernel stages including virtual machines.
>> > Actually, it's necessary to record a timestamp of each log message for
>> > system-wide debugging on type-1 hypervisor.
>> > RTC can be used for this purpose but we should make it to hypervisor
>> > awareness.
>> > |---------------|-------------------------|
>> > Bootloader VM1 (Guest)
>> > |-------------------------|
>> > VM2 (Guest)
>> >
>> > So, the easiest way is using the arm architect timer's timestamp
>> > because it's already supported on each VM by the hypervisor.
>>
>> This doesn't make much sense. The hypervisor and the VMs are
>> independent software entities, and they don't use symbols from
>> each other.
>
> I meant that each VM needs to be synchronized by the ARM arch timer's
> timestamp not the symbol itself.
> The symbol is necessary to calculate the system-wide time by the
> timestamp(counter) value.
>
> The counter of the arm architect timer will be increasing from the
> bootloader.
> The hypervisor will not reset the counter and each VMs as well. So, we
> can use this timestamp for comparing _real_ time :)
Well, you can compare the raw counter values, and do the conversion
in a single place. Also, if your system is correctly configured,
you have access to CNTFRQ_EL0, which contains the same thing as
arch_timer_get_rate().
>> So this symbol is probably used by a module *inside* the VMs,
>> and Mark's question still stands.
>>
>
> Yes. Actually, we use this timestamp for our internal module which is
> not yet upstreamed.
If the module code is not upstream, I don't see the point in exporting
this symbol. I suggest you post both as a series so that we can decide
whether that is a good idea or not.
Thanks,
M.
--
Jazz is not dead. It just smells funny...
_______________________________________________
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:[~2021-01-12 15:32 UTC|newest]
Thread overview: 8+ messages / expand[flat|nested] mbox.gz Atom feed top
2021-01-12 1:31 [PATCH] clocksource/drivers/arm_arch_timer: export arch_timer_get_rate Chanho Park
2021-01-12 10:12 ` Mark Rutland
2021-01-12 13:39 ` Chanho Park
2021-01-12 14:45 ` Marc Zyngier
2021-01-12 15:14 ` Chanho Park
2021-01-12 15:30 ` Marc Zyngier [this message]
2021-01-13 9:56 ` Chanho Park
2021-01-13 10:06 ` 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=d9da1d0d309c16fe0d6edd3011224efc@kernel.org \
--to=maz@kernel.org \
--cc=chanho61.park@samsung.com \
--cc=daniel.lezcano@linaro.org \
--cc=linux-arm-kernel@lists.infradead.org \
--cc=mark.rutland@arm.com \
--cc=parkch98@gmail.com \
--cc=tglx@linutronix.de \
/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.