diff mbox series

libsas: Remove scsi_to_u32()

Message ID 20190123190805.119407-1-bvanassche@acm.org (mailing list archive)
State Mainlined
Commit 59abc8cc05856cb31d6e07a8e25f0d749d559233
Headers show
Series libsas: Remove scsi_to_u32() | expand

Commit Message

Bart Van Assche Jan. 23, 2019, 7:08 p.m. UTC
Since the function scsi_to_u32() is identical to get_unaligned_be32(),
change all scsi_to_u32() calls into get_unaligned_be32() calls.

Cc: Jian Luo <luojian5@huawei.com>
Cc: John Garry <john.garry@huawei.com>
Signed-off-by: Bart Van Assche <bvanassche@acm.org>
---
 drivers/scsi/libsas/sas_expander.c | 9 +++++----
 include/scsi/scsi.h                | 6 ------
 2 files changed, 5 insertions(+), 10 deletions(-)

Comments

John Garry Jan. 24, 2019, 10:12 a.m. UTC | #1
On 23/01/2019 19:08, Bart Van Assche wrote:
> Since the function scsi_to_u32() is identical to get_unaligned_be32(),
> change all scsi_to_u32() calls into get_unaligned_be32() calls.

I suppose you could define scsi_to_u32() to get_unaligned_be32(), but 
prob not worth the abstraction.

>
> Cc: Jian Luo <luojian5@huawei.com>
> Cc: John Garry <john.garry@huawei.com>
> Signed-off-by: Bart Van Assche <bvanassche@acm.org>

Reviewed-by: John Garry <john.garry@huawei.com>

> ---
>  drivers/scsi/libsas/sas_expander.c | 9 +++++----
>  include/scsi/scsi.h                | 6 ------
>  2 files changed, 5 insertions(+), 10 deletions(-)
>
> diff --git a/drivers/scsi/libsas/sas_expander.c b/drivers/scsi/libsas/sas_expander.c
> index 83e3715d30e4..b13b245791b0 100644
> --- a/drivers/scsi/libsas/sas_expander.c
> +++ b/drivers/scsi/libsas/sas_expander.c
> @@ -25,6 +25,7 @@
>  #include <linux/scatterlist.h>
>  #include <linux/blkdev.h>
>  #include <linux/slab.h>
> +#include <asm/unaligned.h>
>
>  #include "sas_internal.h"
>
> @@ -696,10 +697,10 @@ int sas_smp_get_phy_events(struct sas_phy *phy)
>  	if (res)
>  		goto out;
>
> -	phy->invalid_dword_count = scsi_to_u32(&resp[12]);
> -	phy->running_disparity_error_count = scsi_to_u32(&resp[16]);
> -	phy->loss_of_dword_sync_count = scsi_to_u32(&resp[20]);
> -	phy->phy_reset_problem_count = scsi_to_u32(&resp[24]);
> +	phy->invalid_dword_count = get_unaligned_be32(&resp[12]);
> +	phy->running_disparity_error_count = get_unaligned_be32(&resp[16]);
> +	phy->loss_of_dword_sync_count = get_unaligned_be32(&resp[20]);
> +	phy->phy_reset_problem_count = get_unaligned_be32(&resp[24]);
>
>   out:
>  	kfree(req);
> diff --git a/include/scsi/scsi.h b/include/scsi/scsi.h
> index eb7853c1a23b..5339baadc082 100644
> --- a/include/scsi/scsi.h
> +++ b/include/scsi/scsi.h
> @@ -274,10 +274,4 @@ static inline int scsi_is_wlun(u64 lun)
>  /* Used to obtain the PCI location of a device */
>  #define SCSI_IOCTL_GET_PCI		0x5387
>
> -/* Pull a u32 out of a SCSI message (using BE SCSI conventions) */
> -static inline __u32 scsi_to_u32(__u8 *ptr)
> -{
> -	return (ptr[0]<<24) + (ptr[1]<<16) + (ptr[2]<<8) + ptr[3];
> -}
> -
>  #endif /* _SCSI_SCSI_H */
>
Johannes Thumshirn Jan. 24, 2019, 10:27 a.m. UTC | #2
Reviewed-by: Johannes Thumshirn <jthumshirn@suse.de>
Martin K. Petersen Jan. 29, 2019, 5:46 a.m. UTC | #3
Bart,

> Since the function scsi_to_u32() is identical to get_unaligned_be32(),
> change all scsi_to_u32() calls into get_unaligned_be32() calls.

Applied to 5.1/scsi-queue, thanks!
diff mbox series

Patch

diff --git a/drivers/scsi/libsas/sas_expander.c b/drivers/scsi/libsas/sas_expander.c
index 83e3715d30e4..b13b245791b0 100644
--- a/drivers/scsi/libsas/sas_expander.c
+++ b/drivers/scsi/libsas/sas_expander.c
@@ -25,6 +25,7 @@ 
 #include <linux/scatterlist.h>
 #include <linux/blkdev.h>
 #include <linux/slab.h>
+#include <asm/unaligned.h>
 
 #include "sas_internal.h"
 
@@ -696,10 +697,10 @@  int sas_smp_get_phy_events(struct sas_phy *phy)
 	if (res)
 		goto out;
 
-	phy->invalid_dword_count = scsi_to_u32(&resp[12]);
-	phy->running_disparity_error_count = scsi_to_u32(&resp[16]);
-	phy->loss_of_dword_sync_count = scsi_to_u32(&resp[20]);
-	phy->phy_reset_problem_count = scsi_to_u32(&resp[24]);
+	phy->invalid_dword_count = get_unaligned_be32(&resp[12]);
+	phy->running_disparity_error_count = get_unaligned_be32(&resp[16]);
+	phy->loss_of_dword_sync_count = get_unaligned_be32(&resp[20]);
+	phy->phy_reset_problem_count = get_unaligned_be32(&resp[24]);
 
  out:
 	kfree(req);
diff --git a/include/scsi/scsi.h b/include/scsi/scsi.h
index eb7853c1a23b..5339baadc082 100644
--- a/include/scsi/scsi.h
+++ b/include/scsi/scsi.h
@@ -274,10 +274,4 @@  static inline int scsi_is_wlun(u64 lun)
 /* Used to obtain the PCI location of a device */
 #define SCSI_IOCTL_GET_PCI		0x5387
 
-/* Pull a u32 out of a SCSI message (using BE SCSI conventions) */
-static inline __u32 scsi_to_u32(__u8 *ptr)
-{
-	return (ptr[0]<<24) + (ptr[1]<<16) + (ptr[2]<<8) + ptr[3];
-}
-
 #endif /* _SCSI_SCSI_H */