Re: [PATCH 1/3] gpu: nova-core: extract radix3 page table into its own module
From: Alexandre Courbot
Date: Tue Sep 22 2026 - 09:49:13 EST
On Mon Sep 14, 2026 at 4:54 AM JST, John Hubbard wrote:
> In order to boot the GSP, nova-core loads the GSP firmware image into
> system memory, and the GPU copies it into the framebuffer, the GPU's own
> memory. The GPU finds the GSP firmware image's pages via "radix3", a
> three-level page table of 4 KiB pages that the driver builds. Today the
> table exists as fields within the GSP firmware wrapper, which is fine
> because there is only one radix3 consumer.
>
> The upcoming r000 series[1], however, introduces a second radix3 caller:
> the ucodes firmware image. That is because the GSP has been changed, so
> that it automatically fetches the subset of ucodes that it requires,
> thus reducing the size of the GSP image. This is a helpful change for
> the firmware situation overall, but it will require nova-core to load
> and provide ucodes, in much the same way that it was loading and
> providing the GSP firmware image.
>
> Therefore, split out radix3 into its own module.
This patch does a multitude of renames and comment updates as it moves
code around, which makes it difficult to review with `--color-moved`.
`--color-moved` is a really nice git option that applies a different
color to lines that have just moved instead of having changed; on a
patch like this one I expect to see mostly the "this has moved" color,
which allows me to confirm that no undesirable side-effect has taken
place.
But unfortunately the mix of move and changes turns the `--color-moved`
augmented diff into a Christmas tree of moves mixed with code changes,
defeating its purpose.
So in order to be able to review properly I had to split this patch into
the mechanical move, plus two patches on top to handle the rename and
comments updates.
This makes the first patch's mechanical move easy to confirm using
`--color-moved`, and as a bonus the other changes also become easily
reviewable on top of that.
Anyway, all this to say that this series is merged with a couple of
extra commits (and some removed comments kept as they were useful imho).
Please check the end result of this patch with `--color-moved` to see
what I mean, and let's make sure to keep code moves and changes
separated from now on to make reviews easier.