Charlie Jenkins <charlie@xxxxxxxxxxxx> writes: > On Wed, Sep 11, 2024 at 11:38:55PM +1000, Michael Ellerman wrote: >> Geert Uytterhoeven <geert@xxxxxxxxxxxxxx> writes: >> > Hi Christophe, >> > >> > On Tue, Sep 10, 2024 at 11:21 AM Christophe Leroy >> > <christophe.leroy@xxxxxxxxxx> wrote: >> >> >>> diff --git a/include/uapi/linux/personality.h b/include/uapi/linux/personality.h >> >> >>> index 49796b7756af..cd3b8c154d9b 100644 >> >> >>> --- a/include/uapi/linux/personality.h >> >> >>> +++ b/include/uapi/linux/personality.h >> >> >>> @@ -22,6 +22,7 @@ enum { >> >> >>> WHOLE_SECONDS = 0x2000000, >> >> >>> STICKY_TIMEOUTS = 0x4000000, >> >> >>> ADDR_LIMIT_3GB = 0x8000000, >> >> >>> + ADDR_LIMIT_47BIT = 0x10000000, >> >> >>> }; >> >> >> >> >> >> I wonder if ADDR_LIMIT_128T would be clearer? >> >> >> >> >> > >> >> > I don't follow, what does 128T represent? >> >> >> >> 128T is 128 Terabytes, that's the maximum size achievable with a 47BIT >> >> address, that naming would be more consistant with the ADDR_LIMIT_3GB >> >> just above that means a 3 Gigabytes limit. >> > >> > Hence ADDR_LIMIT_128TB? >> >> Yes it should be 128TB. Typo by me. > > 47BIT was selected because the usecase for this flag is for applications > that want to store data in the upper bits of a virtual address space. In > this case, how large the virtual address space is irrelevant, and only > the number of bits that are being used, and hence the number of bits > that are free. Yeah I understand that's how you came to the problem. But for the user API I think using the size of the address space is clearer, easier to explain, and matches the existing ADDR_LIMIT_3GB. cheers