Re: [RFC PATCH v3 6/6] [PATCH 6/6] mm: add tracing for VMA merges

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Mon, 16 May 2022 14:54:05 +0200
Jakub Matěna <matenajakub@xxxxxxxxx> wrote:

> +	TP_fast_assign(
> +		__entry->merged = merged == 0;
> +		__entry->predecessor_different_av = merge_prev;
> +		__entry->successor_different_av = merge_next;
> +		__entry->predecessor_with_successor_different_av = merge_both;


> +		__entry->same_count = (merge_prev == AV_MERGE_SAME) +
> +			(merge_next == AV_MERGE_SAME) +
> +			(merge_both == AV_MERGE_SAME);
> +		__entry->diff_count = (merge_prev == AV_MERGE_DIFFERENT) +
> +			(merge_next == AV_MERGE_DIFFERENT) +
> +			(merge_both == AV_MERGE_DIFFERENT);
> +		__entry->failed_count = (merge_prev == AV_MERGE_FAILED) +
> +			(merge_next == AV_MERGE_FAILED) +
> +			(merge_both == AV_MERGE_FAILED);

The above looks like it can be moved into the TP_printk(), as you have the
merge_prev, next and both saved already. Why waste more ring buffer space
and execution time for information that can be derived at the time of
reading the trace event?

-- Steve


> +	),
> +
> +	TP_printk("merged=%d predecessor=%s successor=%s predecessor_with_successor=%s same_count=%d diff_count=%d failed_count=%d",
> +		__entry->merged,
> +		__print_symbolic(__entry->predecessor_different_av, AV_MERGE_TYPES),
> +		__print_symbolic(__entry->successor_different_av, AV_MERGE_TYPES),
> +		__print_symbolic(__entry->predecessor_with_successor_different_av, AV_MERGE_TYPES),
> +		__entry->same_count, __entry->diff_count, __entry->failed_count)
> +
> +);
> +





[Index of Archives]     [Linux ARM Kernel]     [Linux ARM]     [Linux Omap]     [Fedora ARM]     [IETF Annouce]     [Bugtraq]     [Linux OMAP]     [Linux MIPS]     [eCos]     [Asterisk Internet PBX]     [Linux API]

  Powered by Linux