On Mon, Sep 10, 2018 at 08:15:18PM +0300, Nikolay Borisov wrote: > > > On 10.09.2018 19:48, David Sterba wrote: > > On Mon, Sep 10, 2018 at 11:00:29PM +0800, kbuild test robot wrote: > >> > >> Fixes: ac75a14eb672 ("btrfs: Factor out loop processing all refs of a > >> head") > >> Signed-off-by: kbuild test robot <fengguang...@intel.com> > >> --- > >> extent-tree.c | 6 +++--- > >> 1 file changed, 3 insertions(+), 3 deletions(-) > >> > >> diff --git a/fs/btrfs/extent-tree.c b/fs/btrfs/extent-tree.c > >> index b0882b6..719f1bb 100644 > >> --- a/fs/btrfs/extent-tree.c > >> +++ b/fs/btrfs/extent-tree.c > >> @@ -2537,9 +2537,9 @@ struct btrfs_delayed_ref_head *btrfs_obtain_ref_head( > >> } > >> > >> STATIC > >> -int btrfs_run_delayed_refs_for_head(struct btrfs_trans_handle *trans, > >> - struct btrfs_delayed_ref_head *locked_ref, > >> - unsigned long *run_refs) > >> +static int btrfs_run_delayed_refs_for_head(struct btrfs_trans_handle > >> *trans, > >> + struct btrfs_delayed_ref_head > >> *locked_ref, > >> + unsigned long *run_refs) > > > > I have a cleanup series to get rid of the STATIC macro, will result in > > normal 'static' of the function. The patch will need to be updated, you > > can ignore the warning for now. > > So one added benefit of the STATIC macro (at least in XFS and hence I > used it here) is that STATIC functions are noinline_for_stack pretty > much which is why I wanted to use it here. I guess for btrfs we ought to > use a bare noinline_for_static
Feel free to use noinline_for_static if you see a reason for it. Some functions are better not inlined so in case the error happen there we can tell immediatelly from the stack trace. As inlining is a compiler optimization, I'd rather not force turning it off with some convenient-looking macro like STATIC.