[LTP] [PATCH] netstress: explicitly set a thread stack size
j.nixdorf@avm.de
j.nixdorf@avm.de
Thu Nov 26 15:52:28 CET 2020
Hi Alexey,
On Thu, Nov 26, 2020 at 05:05:14PM +0300, Alexey Kodanev wrote:
> > + tst_brk(TBROK | TERRNO, "pthread_attr_init failed");
> > +
> > + errno = pthread_attr_setstacksize(&attr, 128*1024 + 2*max_msg_len);
>
> Since max_msg_len is 65535, the result won't be even 4 bytes aligned,
> perhaps using just 256 * 1024?
The function pthread_attr_setstacksize does not have any alignment
requirements specified and only sets the minimum stack size. This means
the libc is required to over-allocate and suitably align the stack to
match platform requirements. Is this broken on any libraries the LTP
project cares about?
Note that this is different from pthread_attr_setstack, as there the
memory region is provided by the caller and the libc can't change the
alignment later on.
I'm reluctant to use a static value here as max_msg_len may be modified
by command line arguments.
Regards,
Johannes
More information about the ltp
mailing list