From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1753198AbbJOMqZ (ORCPT ); Thu, 15 Oct 2015 08:46:25 -0400 Received: from mout.kundenserver.de ([212.227.126.131]:57297 "EHLO mout.kundenserver.de" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1752749AbbJOMqW (ORCPT ); Thu, 15 Oct 2015 08:46:22 -0400 From: Arnd Bergmann To: linux-arm-kernel@lists.infradead.org Cc: Li Bin , Catalin Marinas , Steven Rostedt , Will Deacon , Christoffer Dall , Punit Agrawal , Mark Rutland , zhouchengming1@huawei.com, xiexiuqi@huawei.com, dingtianhong@huawei.com, linux-kernel@vger.kernel.org, guohanjun@huawei.com Subject: Re: [PATCH] arm64: ftrace: function_graph: dump real return addr in call trace Date: Thu, 15 Oct 2015 14:46:16 +0200 Message-ID: <6277407.jveniKQDxt@wuerfel> User-Agent: KMail/4.11.5 (Linux/3.16.0-10-generic; KDE/4.11.5; x86_64; ; ) In-Reply-To: <1444911155-17480-1-git-send-email-huawei.libin@huawei.com> References: <1444911155-17480-1-git-send-email-huawei.libin@huawei.com> MIME-Version: 1.0 Content-Transfer-Encoding: 7Bit Content-Type: text/plain; charset="us-ascii" X-Provags-ID: V03:K0:BpnQD//ny0IgFsQvzQq3nOpIivwqA2V6UhZHSD5FEdCQG82lE86 sNu1F92kEvE+E+JLGnIArKFcZ1DKYcClljZSYNOoJBpPC5zOxc+SgOvMq2505HoV7hzJcrs eSIZqfWoIsjLi6zqxAKrh4MYkrQpCcXdnFV8Fevz3a9sTu8LOXkAwD7XmdZfw8YtwXj80hH YFPVCtk2k50WTXladYOSQ== X-UI-Out-Filterresults: notjunk:1;V01:K0:BJvhPQPthuI=:VOB1Nexpuog9de7FlHVm9L Uw5NebW7/T07OAiq+7cJXrzs+Dvv6qcD/3zCORgcI/HFDBSrECX9abOd6TIAs03qTDRrOoMLw cTys/0dgAQ/2ndSHHYku3hHOs0vSB74uTm14ACDqWLPhcwrEejF0KzEyQ7UL0414Z8duQJQab TaQBbcFw4qi6D6HzqV5VfCerKga8AzDWmfs0ZU6HVhgSK07A1ueo269EIkIIezhbvy8JuD4YQ eDHKVpyyu0V/5WJzCXG/G+YptkC4s2rmgr6pt4Z3UwqwoZH59EYEGg6s/pFgXETheSYhLs9/7 o4cYlQ/vWGMiVxCY38qvuI8CjQ+vIKPzPkcR6ohNQHKl0oOOLZ0SzHGRLrWPo27Z7lzXdTrtM xwXB0aX4UM/5XAovCWam4JiMybkCJ2+/nh8QpgJ9M71tJM5ww28NYOnDTREknzja6N4tSBPsa 1svPprWtY3gWxJIKCruYzsc2FIcLJsEi4WV2VW1zgvN1j++EZMnYuhjI26WxzZ+0UlV5OBA/T uEkjcoYfNrCwLOyVVwKozDusjKb6O+X/wJ93kRh6zaiVf3o5YdD6x5iDBqDxxQTugmfeBmF9e kLfjDzbOOW7jeRSxOdsQ9/4B1RUUfzQdlOLhl8npyvMABxTqVpHneONJ1ZFueLze+XoiBp4BW Y6V3x5ZfkQy+lKTjHLcM73sIg+Pd+yCnv3Wsn4Cbl4Knpiuin53w0OLTuFrwj786Bc/l9S6Hs XrirCZcjZgG239W1 Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Thursday 15 October 2015 20:12:35 Li Bin wrote: > > +#ifdef CONFIG_FUNCTION_GRAPH_TRACER > +static void print_ftrace_graph_addr(unsigned long addr, > + struct task_struct *tsk, > + unsigned long sp, int *graph) > +{ > + unsigned long ret_addr; > + int index = tsk->curr_ret_stack; > + > + if (addr != ((unsigned long)return_to_handler - 4)) > + return; > + > + if (!tsk->ret_stack || index < *graph) > I think it would be nicer to remove the #ifdef and write this as static void print_ftrace_graph_addr(unsigned long addr, struct task_struct *tsk, unsigned long sp, int *graph) { unsigned long ret_addr; int index = tsk->curr_ret_stack; if (!IS_ENABLED(CONFIG_FUNCTION_GRAPH_TRACER)) return; if (addr != ((unsigned long)return_to_handler - 4)) return;