On Tue, Oct 10, 2023 at 1:32 PM Nathan Chancellor <nathan@xxxxxxxxxx> wrote: > > Clang warns (or errors with CONFIG_WERROR=y) several times along the > lines of: > > drivers/scsi/ibmvscsi/ibmvfc.c:650:17: warning: implicit truncation from 'int' to a one-bit wide bit-field changes value from 1 to -1 [-Wsingle-bit-bitfield-constant-conversion] > 650 | vhost->reinit = 1; > | ^ ~ > > A single-bit signed integer bitfield only has possible values of -1 and > 0, not 0 and 1 like an unsigned one would. No context appears to check > the actual value of these bitfields, just whether or not it is zero. > However, it is easy enough to change the type of the fields to 'unsigned > int', which keeps the same size in memory and resolves the warning. > > Fixes: 5144905884e2 ("scsi: ibmvfc: Use a bitfield for boolean flags") > Signed-off-by: Nathan Chancellor <nathan@xxxxxxxxxx> Thanks for the patch! Reviewed-by: Nick Desaulniers <ndesaulniers@xxxxxxxxxx> > --- > drivers/scsi/ibmvscsi/ibmvfc.h | 18 +++++++++--------- > 1 file changed, 9 insertions(+), 9 deletions(-) > > diff --git a/drivers/scsi/ibmvscsi/ibmvfc.h b/drivers/scsi/ibmvscsi/ibmvfc.h > index 331ecf8254be..745ad5ac7251 100644 > --- a/drivers/scsi/ibmvscsi/ibmvfc.h > +++ b/drivers/scsi/ibmvscsi/ibmvfc.h > @@ -892,15 +892,15 @@ struct ibmvfc_host { > int init_retries; > int discovery_threads; > int abort_threads; > - int client_migrated:1; > - int reinit:1; > - int delay_init:1; > - int logged_in:1; > - int mq_enabled:1; > - int using_channels:1; > - int do_enquiry:1; > - int aborting_passthru:1; > - int scan_complete:1; > + unsigned int client_migrated:1; > + unsigned int reinit:1; > + unsigned int delay_init:1; > + unsigned int logged_in:1; > + unsigned int mq_enabled:1; > + unsigned int using_channels:1; > + unsigned int do_enquiry:1; > + unsigned int aborting_passthru:1; > + unsigned int scan_complete:1; > int scan_timeout; > int events_to_log; > #define IBMVFC_AE_LINKUP 0x0001 > > --- > base-commit: b6f2e063017b92491976a40c32a0e4b3c13e7d2f > change-id: 20231010-ibmvfc-fix-bitfields-type-971a07c64ec6 > > Best regards, > -- > Nathan Chancellor <nathan@xxxxxxxxxx> > > -- Thanks, ~Nick Desaulniers