From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1752746AbdJLAjZ (ORCPT ); Wed, 11 Oct 2017 20:39:25 -0400 Received: from usa-sjc-mx-foss1.foss.arm.com ([217.140.101.70]:39596 "EHLO foss.arm.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751587AbdJLAjY (ORCPT ); Wed, 11 Oct 2017 20:39:24 -0400 Subject: Re: [PATCH] tracing/xen: Hide events that are not used when X86_PAE is not defined To: Steven Rostedt , LKML Cc: Ingo Molnar , Boris Ostrovsky , Juergen Gross , "Kirill A. Shutemov" References: <20171010191256.3d6d72cb@gandalf.local.home> From: Jeremy Linton Message-ID: Date: Wed, 11 Oct 2017 19:39:20 -0500 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:52.0) Gecko/20100101 Thunderbird/52.3.0 MIME-Version: 1.0 In-Reply-To: <20171010191256.3d6d72cb@gandalf.local.home> Content-Type: text/plain; charset=utf-8; format=flowed Content-Language: en-US Content-Transfer-Encoding: 7bit Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On 10/10/2017 06:12 PM, Steven Rostedt wrote: > From: Steven Rostedt (VMware) > > TRACE_EVENTS() take up memory. If they are defined but not used, then > they simply waste space. If their use case is behind a define, then the > trace events should be as well. > > The trace events xen_mmu_set_pte_atomic, xen_mmu_pte_clear, and > xen_mmu_pmd_clear are not used when CONFIG_X86_PAE is not defined. The only place i see them being used is mmu_pv.c, where they are wrapped in the stated #define. Looks good. Reviewed-by: Jeremy Linton Thanks, > > Signed-off-by: Steven Rostedt (VMware) > --- > Index: linux-trace.git/include/trace/events/xen.h > =================================================================== > --- linux-trace.git.orig/include/trace/events/xen.h > +++ linux-trace.git/include/trace/events/xen.h > @@ -147,7 +147,6 @@ DECLARE_EVENT_CLASS(xen_mmu__set_pte, > TP_ARGS(ptep, pteval)) > > DEFINE_XEN_MMU_SET_PTE(xen_mmu_set_pte); > -DEFINE_XEN_MMU_SET_PTE(xen_mmu_set_pte_atomic); > > TRACE_EVENT(xen_mmu_set_pte_at, > TP_PROTO(struct mm_struct *mm, unsigned long addr, > @@ -169,21 +168,6 @@ TRACE_EVENT(xen_mmu_set_pte_at, > (int)sizeof(pteval_t) * 2, (unsigned long long)__entry->pteval) > ); > > -TRACE_EVENT(xen_mmu_pte_clear, > - TP_PROTO(struct mm_struct *mm, unsigned long addr, pte_t *ptep), > - TP_ARGS(mm, addr, ptep), > - TP_STRUCT__entry( > - __field(struct mm_struct *, mm) > - __field(unsigned long, addr) > - __field(pte_t *, ptep) > - ), > - TP_fast_assign(__entry->mm = mm; > - __entry->addr = addr; > - __entry->ptep = ptep), > - TP_printk("mm %p addr %lx ptep %p", > - __entry->mm, __entry->addr, __entry->ptep) > - ); > - > TRACE_DEFINE_SIZEOF(pmdval_t); > > TRACE_EVENT(xen_mmu_set_pmd, > @@ -201,6 +185,24 @@ TRACE_EVENT(xen_mmu_set_pmd, > (int)sizeof(pmdval_t) * 2, (unsigned long long)__entry->pmdval) > ); > > +#ifdef CONFIG_X86_PAE > +DEFINE_XEN_MMU_SET_PTE(xen_mmu_set_pte_atomic); > + > +TRACE_EVENT(xen_mmu_pte_clear, > + TP_PROTO(struct mm_struct *mm, unsigned long addr, pte_t *ptep), > + TP_ARGS(mm, addr, ptep), > + TP_STRUCT__entry( > + __field(struct mm_struct *, mm) > + __field(unsigned long, addr) > + __field(pte_t *, ptep) > + ), > + TP_fast_assign(__entry->mm = mm; > + __entry->addr = addr; > + __entry->ptep = ptep), > + TP_printk("mm %p addr %lx ptep %p", > + __entry->mm, __entry->addr, __entry->ptep) > + ); > + > TRACE_EVENT(xen_mmu_pmd_clear, > TP_PROTO(pmd_t *pmdp), > TP_ARGS(pmdp), > @@ -210,6 +212,7 @@ TRACE_EVENT(xen_mmu_pmd_clear, > TP_fast_assign(__entry->pmdp = pmdp), > TP_printk("pmdp %p", __entry->pmdp) > ); > +#endif > > #if CONFIG_PGTABLE_LEVELS >= 4 > >