Re: Linux 5.16-rc1
From: Linus Torvalds
Date: Wed Nov 17 2021 - 20:54:27 EST
On Wed, Nov 17, 2021 at 5:26 PM Anton Altaparmakov <anton@xxxxxxxxxx> wrote:
>
> So is it worth doing the singly linked list to fix one file only to have compilation fail a few files later when it gets to mft.c?
Heh.
That does sound dubious.
Honestly, maybe the solution here is to just make the Kconfig depend
on the page size not being excessive for what NTFS wants to do.
Because I'm not sure that "powerpc with 64kB pages" is all that
relevant for NTFS to begin with.
The main problem is that the page size thing isn't some generic
Kconfig entry, different architectures have different names for it. On
PPC, the confic name is PPC_*K_PAGES and PPC_PAGE_SHIFT.
And arm64 has something very similar.
We have other things that do that, ie KASAN support has
select HAVE_ARCH_KASAN if PPC32 && PPC_PAGE_SHIFT <= 14
(and something very similar for arm64).
But those KASAN dependencies are inside the core architecture Kconfig
files, so it can fairly naturally use that page size config variable
as a conditional.
For something like NTFS, we don't really have a generic Kconfig
variable to test.
It wouldn't be _hard_ to add, but it would have to be done somewhat
sensibly and preferably in a way that doesn't require every
architecture to change how their page size selection (or lack of
selection) is done.
The simplest thing would probably be to add something like
config BIG_PAGES
bool
to some generic file, and then add
select BIG_PAGES
to PPC and arm64 for the 64kB+ page size, and add a
depends on !BIG_PAGES
to the NTFS Kconfig entry.
But that honestly looks a bit hacky to me. It would be less hacky to
just add a PAGE_SIZE config variable, and have architectures just set
it, and then NTFS could do
depends on PAGE_SIZE < 65536
or whatever. I just don't know if it's worth it if this is only for NTFS.
I dunno. It all seems a bit dubious.
Linus