mbox series

[v2,0/5] btrfs: fix compiler warning with make W=1

Message ID 20181119093817.9291-1-jthumshirn@suse.de (mailing list archive)
Headers show
Series btrfs: fix compiler warning with make W=1 | expand

Message

Johannes Thumshirn Nov. 19, 2018, 9:38 a.m. UTC
This patchset fixes most of the compiler warnings encountered when building
btrfs with make W=1.

There are two more compiler warnings left in raid56.c:
  CC [M]  fs/btrfs/raid56.o
fs/btrfs/raid56.c: In function ‘finish_rmw’:
fs/btrfs/raid56.c:1185:6: warning: variable ‘p_stripe’ set but not used [-Wunused-but-set-variable]
  int p_stripe = -1;
      ^
fs/btrfs/raid56.c: In function ‘finish_parity_scrub’:
fs/btrfs/raid56.c:2343:6: warning: variable ‘p_stripe’ set but not used [-Wunused-but-set-variable]
  int p_stripe = -1;
      ^
but I'm currently unsure how an appropriate fix would look like. As far as I
can tell these variables have always been unused since they have been
introduced.

There are still warnings left emitted by kernel-doc but these are subject to
another patchset, this one only addresses the warnings generated by gcc.

Changes to v1:
* Added Reviews
* Dropped already applied patches 4 + 5
* Added EXPORT_FOR_TESTS + users

Johannes Thumshirn (5):
  btrfs: remove unused drop_on_err in btrfs_mkdir()
  btrfs: remove set but not used variable err in btrfs_add_link
  btrfs: remove unused function btrfs_sysfs_feature_update()
  btrfs: introduce EXPORT_FOR_TESTS macro
  btrfs: use EXPORT_FOR_TESTS for conditionally shared functions

 fs/btrfs/ctree.h                 |  6 ++++++
 fs/btrfs/extent_io.c             | 14 ++------------
 fs/btrfs/extent_io.h             |  7 +++----
 fs/btrfs/free-space-tree.c       |  8 ++++++--
 fs/btrfs/inode.c                 | 16 ++++++----------
 fs/btrfs/sysfs.c                 | 33 ---------------------------------
 fs/btrfs/sysfs.h                 |  2 --
 fs/btrfs/tests/extent-io-tests.c | 10 +++++-----
 8 files changed, 28 insertions(+), 68 deletions(-)

Comments

David Sterba Nov. 19, 2018, 2:40 p.m. UTC | #1
On Mon, Nov 19, 2018 at 10:38:12AM +0100, Johannes Thumshirn wrote:
> This patchset fixes most of the compiler warnings encountered when building
> btrfs with make W=1.
> 
> There are two more compiler warnings left in raid56.c:
>   CC [M]  fs/btrfs/raid56.o
> fs/btrfs/raid56.c: In function ‘finish_rmw’:
> fs/btrfs/raid56.c:1185:6: warning: variable ‘p_stripe’ set but not used [-Wunused-but-set-variable]
>   int p_stripe = -1;
>       ^
> fs/btrfs/raid56.c: In function ‘finish_parity_scrub’:
> fs/btrfs/raid56.c:2343:6: warning: variable ‘p_stripe’ set but not used [-Wunused-but-set-variable]
>   int p_stripe = -1;
>       ^
> but I'm currently unsure how an appropriate fix would look like. As far as I
> can tell these variables have always been unused since they have been
> introduced.

I don't know either, it looks like they were caluclated as indexes to
the stripe array but not used. And I don't see that there would be
code missing them so removing them is probably ok. The RAID56 code
hasn't been touched for years so such gems can be found there.

> There are still warnings left emitted by kernel-doc but these are subject to
> another patchset, this one only addresses the warnings generated by gcc.

The kernel-doc warnings are an interesting topic. As there are no public
functions that would end up in some nice documentation, their use is
sparse and inconsistent and my firt idea was to drop them completely.

OTOH, if there are kdoc comments, the build checks will make sure the
argument names match the documentation, besides that we can also write
more comments to functions where it matters.

So, let's fix them and add more where the kdoc comments just lacks the
"/**" marker, and then incrementally update the rest.

> Changes to v1:
> * Added Reviews
> * Dropped already applied patches 4 + 5
> * Added EXPORT_FOR_TESTS + users
> 
> Johannes Thumshirn (5):
>   btrfs: remove unused drop_on_err in btrfs_mkdir()
>   btrfs: remove set but not used variable err in btrfs_add_link
>   btrfs: remove unused function btrfs_sysfs_feature_update()
>   btrfs: introduce EXPORT_FOR_TESTS macro
>   btrfs: use EXPORT_FOR_TESTS for conditionally shared functions

Patches 1, 4 and 5 merged, the other have comments.