diff mbox

scsi: hisi_sas: silence a static checker warning

Message ID 20170623151544.57jlfbl5apofl6hj@mwanda (mailing list archive)
State Superseded, archived
Headers show

Commit Message

Dan Carpenter June 23, 2017, 3:15 p.m. UTC
phy->phy_type is a u64.  We only ever use the first two bits so it's a
bit over kill perhaps.  Anyway, let's declare the flags as ULL as well
because that lets us do things like "phy->phy_type &= ~PORT_TYPE_SAS;".
In the current code, static checkers complain that that would
unintentionally clear the high 32 bits as well.

Signed-off-by: Dan Carpenter <dan.carpenter@oracle.com>

Comments

John Garry June 23, 2017, 3:25 p.m. UTC | #1
On 23/06/2017 16:15, Dan Carpenter wrote:
> phy->phy_type is a u64.  We only ever use the first two bits so it's a
> bit over kill perhaps.

Hi Dan,

Right, u64 is unneeded and u32 would suffice, so I think that would be a 
more appropriate fix. And if we change hisi_sas_phy.phy_type to u32, I 
would want to reorder this structure to improve packing efficiency.

I can make this change unless you really want to...

Thanks,
John

Anyway, let's declare the flags as ULL as well
> because that lets us do things like "phy->phy_type &= ~PORT_TYPE_SAS;".
> In the current code, static checkers complain that that would
> unintentionally clear the high 32 bits as well.
>
> Signed-off-by: Dan Carpenter <dan.carpenter@oracle.com>
>
> diff --git a/drivers/scsi/hisi_sas/hisi_sas.h b/drivers/scsi/hisi_sas/hisi_sas.h
> index 4fc23087a939..b23245aeab74 100644
> --- a/drivers/scsi/hisi_sas/hisi_sas.h
> +++ b/drivers/scsi/hisi_sas/hisi_sas.h
> @@ -56,8 +56,8 @@
>  struct hisi_hba;
>
>  enum {
> -	PORT_TYPE_SAS = (1U << 1),
> -	PORT_TYPE_SATA = (1U << 0),
> +	PORT_TYPE_SAS = (1ULL << 1),
> +	PORT_TYPE_SATA = (1ULL << 0),
>  };
>
>  enum dev_status {
>
> .
>
Dan Carpenter June 23, 2017, 3:33 p.m. UTC | #2
On Fri, Jun 23, 2017 at 04:25:27PM +0100, John Garry wrote:
> On 23/06/2017 16:15, Dan Carpenter wrote:
> > phy->phy_type is a u64.  We only ever use the first two bits so it's a
> > bit over kill perhaps.
> 
> Hi Dan,
> 
> Right, u64 is unneeded and u32 would suffice, so I think that would be a
> more appropriate fix. And if we change hisi_sas_phy.phy_type to u32, I would
> want to reorder this structure to improve packing efficiency.
> 
> I can make this change unless you really want to...
> 

Feel free to make the change.  :)

regards,
dan carpenter
diff mbox

Patch

diff --git a/drivers/scsi/hisi_sas/hisi_sas.h b/drivers/scsi/hisi_sas/hisi_sas.h
index 4fc23087a939..b23245aeab74 100644
--- a/drivers/scsi/hisi_sas/hisi_sas.h
+++ b/drivers/scsi/hisi_sas/hisi_sas.h
@@ -56,8 +56,8 @@ 
 struct hisi_hba;
 
 enum {
-	PORT_TYPE_SAS = (1U << 1),
-	PORT_TYPE_SATA = (1U << 0),
+	PORT_TYPE_SAS = (1ULL << 1),
+	PORT_TYPE_SATA = (1ULL << 0),
 };
 
 enum dev_status {