[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20241002104334-b655500b-901b-42db-a2c8-582e10826889@linutronix.de>
Date: Wed, 2 Oct 2024 10:54:23 +0200
From: Thomas Weißschuh <thomas.weissschuh@...utronix.de>
To: Christophe Leroy <christophe.leroy@...roup.eu>
Cc: Michael Ellerman <mpe@...erman.id.au>,
Nicholas Piggin <npiggin@...il.com>, Naveen N Rao <naveen@...nel.org>, linux-kernel@...r.kernel.org,
linuxppc-dev@...ts.ozlabs.org, Jason@...c4.com
Subject: Re: [PATCH 1/2] powerpc/vdso: Add a page for non-time data
Hi Christophe,
On Wed, Oct 02, 2024 at 10:39:28AM GMT, Christophe Leroy wrote:
> The page containing VDSO time data is swapped with the one containing
> TIME namespace data when a process uses a non-root time namespace.
> For other data like powerpc specific data and RNG data, it means
> tracking whether time namespace is the root one or not to know which
> page to use.
>
> Simplify the logic behind by moving time data out of first data page
> so that the first data page which contains everything else always
> remains the first page. Time data is in the second or third page
> depending on selected time namespace.
>
> While we are playing with get_datapage macro, directly take into
> account the data offset inside the macro instead of adding that offset
> afterwards.
FYI
I am currently working on a series to unify the storage of the
VDSO data for most architectures, including powerpc.
This will also include a dedicated rng data page.
That generic infrastructure would replace the need for Patch 1.
Obviously, if your series gets applied, I can adapt mine for that.
If you are about to also modify other architectures in a similar way,
we may want to coordinate.
> Signed-off-by: Christophe Leroy <christophe.leroy@...roup.eu>
> ---
> arch/powerpc/include/asm/vdso_datapage.h | 24 +++++++-----------------
> arch/powerpc/kernel/vdso.c | 16 ++++++++++------
> arch/powerpc/kernel/vdso/cacheflush.S | 2 +-
> arch/powerpc/kernel/vdso/datapage.S | 4 ++--
> arch/powerpc/kernel/vdso/getrandom.S | 3 +--
> arch/powerpc/kernel/vdso/gettimeofday.S | 5 ++---
> arch/powerpc/kernel/vdso/vdso32.lds.S | 2 +-
> arch/powerpc/kernel/vdso/vdso64.lds.S | 2 +-
> 8 files changed, 25 insertions(+), 33 deletions(-)
Thomas
Powered by blists - more mailing lists