[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-Id: <20191009114956.37f3771b700e438a90945408@kernel.org>
Date: Wed, 9 Oct 2019 11:49:56 +0900
From: Masami Hiramatsu <mhiramat@...nel.org>
To: Alexey Dobriyan <adobriyan@...il.com>
Cc: Shuah Khan <shuah@...nel.org>, linux-kselftest@...r.kernel.org,
linux-kernel@...r.kernel.org, jaswinder.singh@...aro.org
Subject: Re: [BUGFIX PATCH 1/5] selftests: proc: Make va_max 3GB on 32bit
arch
On Tue, 8 Oct 2019 20:59:16 +0300
Alexey Dobriyan <adobriyan@...il.com> wrote:
> On Tue, Oct 08, 2019 at 12:10:26AM +0900, Masami Hiramatsu wrote:
> > Currently proc-self-map-files-002.c sets va_max (max test address
> > of user virtual address) to 4GB, but it is too big for 32bit
> > arch and 1UL << 32 is overflow on 32bit long.
> >
> > Make va_max 3GB on 32bit arch like i386 and arm.
>
> IIRC i386 had 1G/3G split, so 3GB would be too much still.
Hmm, would you know what is the best value for that?
i386 can also be configured 3G/1G, 2G/2G and 1G/3G, so it
depends on the build configuration. Would 1G is enough for test?
Thank you,
>
> > --- a/tools/testing/selftests/proc/proc-self-map-files-002.c
> > +++ b/tools/testing/selftests/proc/proc-self-map-files-002.c
>
> > +#if __BITS_PER_LONG == 32
> > +# define VA_MAX (3UL << 30)
> > +#elif __BITS_PER_LONG == 64
> > +# define VA_MAX (1UL << 32)
> > +#else
> > +# define VA_MAX 0
> > +#endif
> > +
> > int main(void)
> > {
> > const int PAGE_SIZE = sysconf(_SC_PAGESIZE);
> > - const unsigned long va_max = 1UL << 32;
> > + const unsigned long va_max = VA_MAX;
>
> This limit doesn't need to be precise, 1GB is "big enough".
--
Masami Hiramatsu <mhiramat@...nel.org>
Powered by blists - more mailing lists