aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJoe Carnuccio <joe.carnuccio@qlogic.com>2014-09-25 05:16:35 -0400
committerChristoph Hellwig <hch@lst.de>2014-09-25 08:25:01 -0400
commitce9b9b0858c6806ae84072d5fabb5ae0ca3f2799 (patch)
tree57453e9b03c1a46defba5e055e92c32c5e289d36
parent01cb65f1bb3e71df1a0eb3393d3066ea0161a425 (diff)
qla2xxx: ISP27xx fwdump template fix insertbuf() routine.
Signed-off-by: Joe Carnuccio <joe.carnuccio@qlogic.com> Signed-off-by: Saurav Kashyap <saurav.kashyap@qlogic.com> Signed-off-by: Christoph Hellwig <hch@lst.de>
-rw-r--r--drivers/scsi/qla2xxx/qla_tmpl.c12
1 files changed, 2 insertions, 10 deletions
diff --git a/drivers/scsi/qla2xxx/qla_tmpl.c b/drivers/scsi/qla2xxx/qla_tmpl.c
index 6da9dd272eb3..6f2f7b29607d 100644
--- a/drivers/scsi/qla2xxx/qla_tmpl.c
+++ b/drivers/scsi/qla2xxx/qla_tmpl.c
@@ -128,18 +128,10 @@ qla27xx_insert32(uint32_t value, void *buf, ulong *len)
128static inline void 128static inline void
129qla27xx_insertbuf(void *mem, ulong size, void *buf, ulong *len) 129qla27xx_insertbuf(void *mem, ulong size, void *buf, ulong *len)
130{ 130{
131 ulong cnt = size;
132 131
133 if (buf && mem) { 132 if (buf && mem && size) {
134 buf += *len; 133 buf += *len;
135 while (cnt >= sizeof(uint32_t)) { 134 memcpy(buf, mem, size);
136 *(__le32 *)buf = cpu_to_le32p(mem);
137 buf += sizeof(uint32_t);
138 mem += sizeof(uint32_t);
139 cnt -= sizeof(uint32_t);
140 }
141 if (cnt)
142 memcpy(buf, mem, cnt);
143 } 135 }
144 *len += size; 136 *len += size;
145} 137}