* [PATCH] scsi: gdth.c use unaligned access helpers
@ 2008-07-04 1:38 Harvey Harrison
0 siblings, 0 replies; only message in thread
From: Harvey Harrison @ 2008-07-04 1:38 UTC (permalink / raw)
To: James Bottomley; +Cc: Andrew Morton, linux-scsi
Remove two now unnecessary local vars.
Signed-off-by: Harvey Harrison <harvey.harrison@gmail.com>
---
drivers/scsi/gdth.c | 23 ++++++++++-------------
1 files changed, 10 insertions(+), 13 deletions(-)
diff --git a/drivers/scsi/gdth.c b/drivers/scsi/gdth.c
index 822d521..239274f 100644
--- a/drivers/scsi/gdth.c
+++ b/drivers/scsi/gdth.c
@@ -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)
{
register gdth_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;
--
1.5.6.1.281.g1087e
^ permalink raw reply related [flat|nested] only message in thread
only message in thread, other threads:[~2008-07-04 1:39 UTC | newest]
Thread overview: (only message) (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2008-07-04 1:38 [PATCH] scsi: gdth.c use unaligned access helpers Harvey Harrison
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.