On Thu, Sep 11, 2025 at 10:56:36AM -0700, Luck, Tony wrote: > On Thu, Sep 11, 2025 at 10:46:10AM +0200, David Hildenbrand wrote: > > On 10.09.25 18:15, Kyle Meyer wrote: > > > Soft offlining a HugeTLB page reduces the available HugeTLB page pool. > > > Since HugeTLB pages are preallocated, reducing the available HugeTLB > > > page pool can cause allocation failures. > > > > > > /proc/sys/vm/enable_soft_offline provides a sysctl interface to > > > disable/enable soft offline: > > > > > > 0 - Soft offline is disabled. > > > 1 - Soft offline is enabled. > > > > > > The current sysctl interface does not distinguish between HugeTLB pages > > > and other page types. > > > > > > Disable soft offline for HugeTLB pages by default (1) and extend the > > > sysctl interface to preserve existing behavior (2): > > > > > > 0 - Soft offline is disabled. > > > 1 - Soft offline is enabled (excluding HugeTLB pages). > > > 2 - Soft offline is enabled (including HugeTLB pages). > > > > > > Update documentation for the sysctl interface, reference the sysctl > > > interface in the sysfs ABI documentation, and update HugeTLB soft > > > offline selftests. > > > > I'm sure you spotted that the documentation for > > "/sys/devices/system/memory/soft_offline_pag" resides under "testing". > > But that is only one of several places in the kernel that > feed into the page offline code. > > This patch was motivated by the GHES path where BIOS indicates > a corrected error threshold was exceeded. There's also the > drivers/ras/cec.c path where Linux does it's own threshold > counting. > > > > If your read about MADV_SOFT_OFFLINE in the man page it clearly says: > > > > "This feature is intended for testing of memory error-handling code; it is > > available only if the kernel was configured with CONFIG_MEMORY_FAILURE." > > Agreed that this all depends on CONFIG_MEMORY_FAILURE ... so if any > part of the flow is compiled in when that is "=n" then some > changes are needed to fix that. > > > > > So I'm sorry to say: I miss why we should add all this complexity to make a > > feature used for testing soft-offlining work differently for hugetlb folios > > -- with a testing interface. I would also like to note that the current sysctl interface already affects testing interfaces. Please see the following commit: 56374430c5dfc ("mm/memory-failure: userspace controls soft-offlining pages") The sysctl interface should probably be mentioned in sysfs-memory-page-offline with or without this patch. Thanks, Kyle Meyer