On 1/26/21 1:36 PM, David Sterba wrote:
On Fri, Oct 09, 2020 at 09:28:18AM -0400, Josef Bacik wrote:
I got a automated message from somebody who runs clang against our
kernels and it's because I used the wrong enum type for what I passed
into flush_space.  Change the argument to be explicitly the enum we're
expecting to make everything consistent.  Maybe eventually gcc will
catch errors like this.

I can't find any such public report and none of the clang warnings seem
to be specific about that. Local run with clang 11 does not produce any
warning.


IDK, it was a private email just to me with the following output from clang

s/btrfs/space-info.c:1115:12: warning: implicit conversion from
enumeration type 'enum btrfs_flush_state' to different enumeration type
'enum btrfs_reserve_flush_enum' [-Wenum-conversion]
                         flush = FLUSH_DELALLOC;
                               ~ ^~~~~~~~~~~~~~
fs/btrfs/space-info.c:1120:12: warning: implicit conversion from
enumeration type 'enum btrfs_flush_state' to different enumeration type
'enum btrfs_reserve_flush_enum' [-Wenum-conversion]
                         flush = FORCE_COMMIT_TRANS;
                               ~ ^~~~~~~~~~~~~~~~~~
fs/btrfs/space-info.c:1124:12: warning: implicit conversion from
enumeration type 'enum btrfs_flush_state' to different enumeration type
'enum btrfs_reserve_flush_enum' [-Wenum-conversion]
                         flush = FLUSH_DELAYED_ITEMS_NR;
                               ~ ^~~~~~~~~~~~~~~~~~~~~~
fs/btrfs/space-info.c:1127:12: warning: implicit conversion from
enumeration type 'enum btrfs_flush_state' to different enumeration type
'enum btrfs_reserve_flush_enum' [-Wenum-conversion]
                         flush = FLUSH_DELAYED_REFS_NR;
                               ~ ^~~~~~~~~~~~~~~~~~~~~

I figure it made sense, might as well fix it. Do we have that option for our shiny new -W build options? Thanks,

Josef

Reply via email to