Messages in this thread | | | Date | Tue, 14 Apr 2020 17:19:31 +0200 | From | David Sterba <> | Subject | Re: [PATCH] btrfs: Fix backref.c selftest compilation warning |
| |
On Sat, Apr 11, 2020 at 11:49:15PM +0800, Tang Bin wrote: > Fix missing braces compilation warning in the ARM > compiler environment: > fs/btrfs/backref.c: In function ‘is_shared_data_backref’: > fs/btrfs/backref.c:394:9: warning: missing braces around initializer [-Wmissing-braces] > struct prelim_ref target = {0}; > fs/btrfs/backref.c:394:9: warning: (near initialization for ‘target.rbnode’) [-Wmissing-braces] > > Signed-off-by: Tang Bin <tangbin@cmss.chinamobile.com> > Signed-off-by: Shengju Zhang <zhangshengju@cmss.chinamobile.com> > --- > fs/btrfs/backref.c | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > > diff --git a/fs/btrfs/backref.c b/fs/btrfs/backref.c > index 9c380e7..0cc0257 100644 > --- a/fs/btrfs/backref.c > +++ b/fs/btrfs/backref.c > @@ -391,7 +391,7 @@ static int is_shared_data_backref(struct preftrees *preftrees, u64 bytenr) > struct rb_node **p = &preftrees->direct.root.rb_root.rb_node; > struct rb_node *parent = NULL; > struct prelim_ref *ref = NULL; > - struct prelim_ref target = {0}; > + struct prelim_ref target = {};
I wonder why this initialization is a problem while there are about 20 other uses of "{0}". The warning is about the embedded rbnode, but why does a more recent compiler not warn about that? Is this a missing fix from the one you use?
I don't mind fixing compiler warnings as long as it bothers enough people, eg. we have fixes reported by gcc 7 but I'm hesitant to fix anything older without a good reason.
| |