Re: [PATCH v4 2/2] perf record: Update docs regarding the maximum limitation of AUX area
From: Leo Yan
Date: Fri Aug 04 2023 - 04:46:59 EST
On Fri, Aug 04, 2023 at 03:29:45PM +0800, Shuai Xue wrote:
> The maximum AUX area is limited by the page size of the system. Update
> the documentation to reflect this.
>
> Signed-off-by: Shuai Xue <xueshuai@xxxxxxxxxxxxxxxxx>
> ---
> tools/perf/Documentation/perf-record.txt | 3 +++
> 1 file changed, 3 insertions(+)
>
> diff --git a/tools/perf/Documentation/perf-record.txt b/tools/perf/Documentation/perf-record.txt
> index 680396c56bd1..b0ee7b63da0e 100644
> --- a/tools/perf/Documentation/perf-record.txt
> +++ b/tools/perf/Documentation/perf-record.txt
> @@ -292,6 +292,9 @@ OPTIONS
> Also, by adding a comma, the number of mmap pages for AUX
> area tracing can be specified.
>
> + The maximum AUX area is limited by the page size of the system. For
> + example with 4K pages configured, the maximum is 2GiB.
> +
This statement is incorrect as it fails to give out prerequisites.
E.g., on Arm64, for 4KiB, 16KiB or 64KiB base page size, different page
size has different default values for MAX_ORDER. Furthermore, MAX_ORDER
can be set by config ARCH_FORCE_MAX_ORDER, thus we cannot arbitrarily
say the maximum allocation size is 2GiB for 4KiB page size.
Maybe we could consider to use a formula to present the avaliable
maximum buffer size:
PAGE_SIZE << MAX_ORDER
( ---------------------- ) * PAGE_SIZE
sizeof(page_pointer)
PAGE_SIZE << MAX_ORDER : the size of maximal physically
contiguous allocations, which is the maximum size can be
allocated by slab/slub.
Thanks,
Leo
> -g::
> Enables call-graph (stack chain/backtrace) recording for both
> kernel space and user space.
> --
> 2.39.3
>