scsi: gdth.c use unaligned access helpers
PATCH 1/1 scsi: gdth.c use unaligned access helpers
Remove two now unnecessary local vars.
Signed-off-by Harvey Harrison <[email protected]>
--- drivers/scsi/gdth.c | 23 ++++++++++------------- 1 files changed, 10 insertions(+), 13 deletions(-)
drivers/scsi/gdth.c +10 -13
@@ -131,6 +131,7 @@#include <asm/system.h> #include <asm/io.h> #include <asm/uaccess.h> +#include <asm/unaligned.h> #include <linux/spinlock.h> #include <linux/blkdev.h> #include <linux/scatterlist.h>
@@ -2441,8 +2442,8 @@ static int gdth_fill_cache_cmd(gdth_ha_str *ha, Scsi_Cmnd *scp, ushort hdrive) { registergdth_cmd_str *cmdp;struct gdth_cmndinfo *cmndinfo =gdth_cmnd_priv (scp); -ulong32 cnt, blockcnt; -ulong64 no, blockno; +ulong32 blockcnt; +ulong64 blockno;int i, cmd_index, read_write, sgcnt, mode64; cmdp = ha->pccb;
@@ -2510,19 +2511,15 @@ static int gdth_fill_cache_cmd(gdth_ha_str *ha, Scsi_Cmnd *scp, ushort hdrive)if (read_write) {if (scp->cmd_len ==16 ) { -memcpy (&no, &scp->cmnd[2 ],sizeof (ulong64)); - blockno =be64_to_cpu (no); -memcpy (&cnt, &scp->cmnd[10 ],sizeof (ulong32)); - blockcnt =be32_to_cpu (cnt); + blockno =get_unaligned_be64 (&scp->cmnd[2 ]); + blockcnt =get_unaligned_be64 (&scp->cmnd[10 ]); }else if (scp->cmd_len ==10 ) { -memcpy (&no, &scp->cmnd[2 ],sizeof (ulong32)); - blockno =be32_to_cpu (no); -memcpy (&cnt, &scp->cmnd[7 ],sizeof (ushort)); - blockcnt =be16_to_cpu (cnt); + blockno =get_unaligned_be32 (&scp->cmnd[2 ]); + blockcnt =get_unaligned_be16 (&scp->cmnd[7 ]); }else { -memcpy (&no, &scp->cmnd[0 ],sizeof (ulong32)); - blockno =be32_to_cpu (no) &0x001fffffUL ; - blockcnt= scp->cmnd[4 ]==0 ?0x100 : scp->cmnd[4 ]; + blockno =get_unaligned_be32 (&scp->cmnd[2 ]); + blockno &=0x001fffffUL ; + blockcnt= scp->cmnd[4 ]==0 ?0x100 : scp->cmnd[4 ]; }if (mode64) { cmdp->u.cache64.BlockNo = blockno;
Signature · 1 line
1.5.6.1.281.g1087e