Re: [PATCH] perf core: Get rid of 'uses dynamic stack allocation' warning

From: Wangnan (F)
Date: Fri Jan 22 2016 - 03:07:37 EST




On 2016/1/22 16:00, Peter Zijlstra wrote:
On Fri, Jan 22, 2016 at 06:52:01AM +0000, Wang Nan wrote:
On s390 with CONFIG_WARN_DYNAMIC_STACK set, 'uses dynamic stack
allocation' warning is issued when defining 'struct perf_sample_data'
local variable.

This patch suppress this warning by allocating extra 255 bytes and
compute aligned pointer manually.
I've seen the warning and always wondered wtf it was about. This
Changelog doesn't actually explain what the problem is, so I cannot
judge the solution.

That said, 255 extra bytes does sound excessive just to avoid a warn.

OK. Then I happly ignore it.

I also don't know the exact reason. I guess it related
to the ____cacheline_aligned decorator after 'struct
perf_sample_data'. When allocating that structure on the
stack, kernel has to dynamically compute the stack size it
need to satisify the alignment constrain. My patch does
this work manually.

Thank you.