On Fri, Aug 23, 2024 at 10:47 PM Vincent Legoll <vincent.legoll@xxxxxxxxx> wrote: > It looks like the highmem feature is deemed for removal. > > I am investigating the loss of some available RAM on a GnuBee PC1 board. > > An highmem-enabled kernel can access a 64MB chunk of RAM that a > no-highmem can't. The board has 512 MB. > > That's more than 10% on a RAM-poor NAS-oriented board, probably worth > the hassle to get it back. > > I built & flashed a current OpenWRT snapshot, without any modifications, > wich gave the following output: (...) > The lost RAM is back usable. > > Is there an alternative to CONFIG_HIGHMEM to use that RAM chunk ? Userspace can still use it right? The approach we are taking on ARM32 (despite it's.... really hard) is to try to create separate address spaces for the kernel and userspace so that in kernel context the kernel can use 4GB of memory as it wants without the restriction of userpace taking up the low addresses. This looks easy until you run into some kernel assumptions about memory being in a linear map at all times. Which I am wrestling with. Yours, Linus Walleij