Re: [PATCH] selftests/mm: va_high_addr_switch: Do not skip test and give warning message post FEAT_LPA2

From: Dev Jain
Date: Tue May 21 2024 - 08:52:33 EST



On 5/20/24 05:18, Andrew Morton wrote:
On Thu, 16 May 2024 09:26:33 +0530 Dev Jain <dev.jain@xxxxxxx> wrote:

Post FEAT_LPA2, Aarch64 extends the 4KB and 16KB translation granule to
large virtual addresses. Currently, the test is being skipped for said
granule sizes, because the page sizes have been statically defined; to
work around that would mean breaking the nice array of structs used for
adding testcases.
Which array is that? testcases[]? If so, we could keep if fairly nice
by doing the array population at runtime. Something like:

static struct testcase *testcases;

static void init_thing()
{
struct testcase t[] = {
...
};

testcases = malloc(sizeof(t));
memcpy(testcases, t, sizeof(t));
}


Great idea! This should work. I shall implement it.