From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-5.3 required=3.0 tests=BAYES_00, HEADER_FROM_DIFFERENT_DOMAINS,MAILING_LIST_MULTI,SPF_HELO_NONE,SPF_PASS, USER_AGENT_SANE_1 autolearn=no autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id 4B0D6C5519F for ; Wed, 25 Nov 2020 11:53:19 +0000 (UTC) Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by mail.kernel.org (Postfix) with ESMTP id DB6C72083E for ; Wed, 25 Nov 2020 11:53:18 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1726908AbgKYLxD (ORCPT ); Wed, 25 Nov 2020 06:53:03 -0500 Received: from mx2.suse.de ([195.135.220.15]:58914 "EHLO mx2.suse.de" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1726242AbgKYLxC (ORCPT ); Wed, 25 Nov 2020 06:53:02 -0500 X-Virus-Scanned: by amavisd-new at test-mx.suse.de Received: from relay2.suse.de (unknown [195.135.221.27]) by mx2.suse.de (Postfix) with ESMTP id 9BB36AC41; Wed, 25 Nov 2020 11:53:01 +0000 (UTC) Received: by ds.suse.cz (Postfix, from userid 10065) id 380A4DA7FF; Wed, 25 Nov 2020 12:51:32 +0100 (CET) Date: Wed, 25 Nov 2020 12:51:32 +0100 From: David Sterba To: David Sterba Cc: Nikolay Borisov , linux-btrfs@vger.kernel.org Subject: Re: [PATCH] btrfs: Remove noinline attribute from wait_for_commit Message-ID: <20201125115132.GC6430@twin.jikos.cz> Reply-To: dsterba@suse.cz Mail-Followup-To: dsterba@suse.cz, Nikolay Borisov , linux-btrfs@vger.kernel.org References: <20201124144502.3168362-1-nborisov@suse.com> <20201124153950.GA1803@twin.jikos.cz> <20201124160532.GA6430@twin.jikos.cz> MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Disposition: inline Content-Transfer-Encoding: 8bit In-Reply-To: <20201124160532.GA6430@twin.jikos.cz> User-Agent: Mutt/1.5.23.1-rc1 (2014-03-12) Precedence: bulk List-ID: X-Mailing-List: linux-btrfs@vger.kernel.org On Tue, Nov 24, 2020 at 05:05:32PM +0100, David Sterba wrote: > On Tue, Nov 24, 2020 at 05:42:57PM +0200, Nikolay Borisov wrote: > > On 24.11.20 г. 17:39 ч., David Sterba wrote: > > > On Tue, Nov 24, 2020 at 04:45:02PM +0200, Nikolay Borisov wrote: > > >> The function is a plain wrapper that noinline makes no sense. > > > > > > Or it is a way to let the function name appear in a stack trace, which > > > could be useful for debugging or analyzing system state. > > > > > > > Well, this information could generally be derived by having the debug > > info either in crash or one of the "beautify" scripts. In any case I > > won't insist. > > The way it's used is 'cat /proc/*/stack', without the need of debugging > kernels and not in a post-mortem analysis with crash. Actually, there's noinline_for_stack annotation that could make a bit more understandable, but reading the comment it's more about conserving stack space, not making the function visible in stack trace. There are functions like free_reloc_roots, memcmp_node_keys or cleanup_bitmap_list that do a trivial operations, no chance to block or wait. So these are the obvious cases where we don't want it, there are still many more for long functions that would need closer inspection.