Cmnt: [SRU][PULL][jammy:linux-gcp] Patches needed for AmpereOne (arm64)

Dimitri John Ledkov dimitri.ledkov at canonical.com
Thu Nov 30 20:47:00 UTC 2023


On Thu, 30 Nov 2023 at 14:33, John Cabaj <john.cabaj at canonical.com> wrote:
>
> BugLink: https://bugs.launchpad.net/bugs/2044192
>
> [Impact]
>
> * Google requested patches for AmpereOne machine type


As all of these are from v6.1 kernel and thus well tested by all our
kernels, and it is even present in our hwe jammy kernels, may I ask
you to also submit these patches for jammy generic under HWE
exception?

Ampere based servers are very popular, and actually most public clouds
use them for their arm64 instances. Thus it is likely all of them will
want these patches.

But for generic, Canonical itself needs or will likely to need them
for our internal deployments too.

Submitting this for jammy generic will also ensure that we will be
able to continue testing generic flavour on gcp arm64 instances (which
we often do when hunting down regressions and bugs).

Would it be possible to get these into generic in time for the Jammy
point release

>
> [Fix]
>
> * Cherry-picks from upstream
>
> 484baebd076c ("clocksource/drivers/arch_arm_timer: Move workaround synchronisation around")
> ad6c750791e3 ("clocksource/drivers/arm_arch_timer: Fix masking for high freq counters")
> 6e69aa090138 ("clocksource/drivers/arm_arch_timer: Drop unnecessary ISB on CVAL programming")
> ab9a0239324a ("clocksource/drivers/arm_arch_timer: Remove any trace of the TVAL programming interface")
> 9f074b90e6fd ("clocksource/drivers/arm_arch_timer: Work around broken CVAL implementations")
> 562eb64c090f ("clocksource/drivers/arm_arch_timer: Advertise 56bit timer to the core code")
> 7bc14651e24e ("clocksource/drivers/arm_arch_timer: Move MMIO timer programming over to CVAL")
> 8b06e41fe7bc ("clocksource/drivers/arm_arch_timer: Fix MMIO base address vs callback ordering issue")
> 0ffa6302e2f6 ("clocksource/drivers/arm_arch_timer: Move drop _tval from erratum function names")
> 8065137de0cf ("clocksource/drivers/arm_arch_timer: Move system register timer programming over to CVAL")
> 674941dc157e ("clocksource/drivers/arm_arch_timer: Extend write side of timer register accessors to u64")
> 0c1f5fc141ea ("clocksource/drivers/arm_arch_timer: Drop CNT*_TVAL read accessors")
> 02aecc78b278 ("clocksource/arm_arch_timer: Add build-time guards for unhandled register accesses")
>
> [Test Case]
>
> * Compile tested
> * Boot tested on AmpereOne instance
>
> [Where things could go wrong]
>
> * Low chance of regression. Changes isolated to ARM timers.
>
> [Other Info]
>
> * SF #00372821
>
> -----
>
> The following changes since commit 04c19cd6345a4c14df5e64d6a4523d52342321dc:
>
>   UBUNTU: Ubuntu-gcp-5.15.0-1048.56 (2023-11-18 14:50:34 -0300)
>
> are available in the git repository at:
>
>   git+ssh://user@kathleen/home/john-cabaj/for-review/jammy_linux-gcp/ ampere_one

Please do not leak internal private hostnames publically.

Also this is a public mailing list mailing submission, thus it should
use publically accessible repositories.

To make things easy in launchpad, please consider doing a "fork" of
the linux-gcp repo into your own namespace, and then pushing to it.

At https://code.launchpad.net/~canonical-kernel/ubuntu/+source/linux-gcp/+git/jammy/+fork
you can fork linux-gcp jammy repo which will create a similar looking
URL but under ~your-lp-account name, which you will then be able to
efficiently push to.

And for all private kernels, we should scope them under private
projects such that personal forks work there too, without any
information leaks.

>
> for you to fetch changes up to 484baebd076c93b60979ae26718477c8bf1bb47a:
>
>   clocksource/drivers/arch_arm_timer: Move workaround synchronisation around (2023-11-21 16:21:06 -0600)
>
> ----------------------------------------------------------------
> Marc Zyngier (12):
>       clocksource/arm_arch_timer: Add build-time guards for unhandled register accesses
>       clocksource/drivers/arm_arch_timer: Drop CNT*_TVAL read accessors
>       clocksource/drivers/arm_arch_timer: Extend write side of timer register accessors to u64
>       clocksource/drivers/arm_arch_timer: Move system register timer programming over to CVAL
>       clocksource/drivers/arm_arch_timer: Move drop _tval from erratum function names
>       clocksource/drivers/arm_arch_timer: Fix MMIO base address vs callback ordering issue
>       clocksource/drivers/arm_arch_timer: Move MMIO timer programming over to CVAL
>       clocksource/drivers/arm_arch_timer: Advertise 56bit timer to the core code
>       clocksource/drivers/arm_arch_timer: Work around broken CVAL implementations
>       clocksource/drivers/arm_arch_timer: Remove any trace of the TVAL programming interface
>       clocksource/drivers/arm_arch_timer: Drop unnecessary ISB on CVAL programming
>       clocksource/drivers/arch_arm_timer: Move workaround synchronisation around
>
> Oliver Upton (1):
>       clocksource/drivers/arm_arch_timer: Fix masking for high freq counters
>
>  arch/arm/include/asm/arch_timer.h    |  37 +++++++++++++---------
>  arch/arm64/include/asm/arch_timer.h  |  52 ++++++++++++++----------------
>  drivers/clocksource/arm_arch_timer.c | 243 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++-------------------------------------------------------
>  include/clocksource/arm_arch_timer.h |   2 +-
>  4 files changed, 193 insertions(+), 141 deletions(-)
>
> --
> kernel-team mailing list
> kernel-team at lists.ubuntu.com
> https://lists.ubuntu.com/mailman/listinfo/kernel-team



-- 
Dimitri

Sent from Ubuntu Pro
https://ubuntu.com/pro



More information about the kernel-team mailing list