* [PATCH 2/3 V2] pm8001: Fix erratic calculation in update_flash
@ 2014-07-30 14:40 Tomas Henzl
0 siblings, 0 replies; only message in thread
From: Tomas Henzl @ 2014-07-30 14:40 UTC (permalink / raw)
To: Suresh Thiagarajan, 'linux-scsi@vger.kernel.org'
Cc: xjtuwjp@gmail.com, James Bottomley, Viswas G, pmchba
V2 - 'from' string removed (as it comes from me now) and changed a signed-off to acked-by (Suresh is the maintainer)
Tomas
The loopcount is calculated by using some weird magic.
Use instead a boring macro
Signed-off-by: Tomas Henzl <thenzl@redhat.com>
Acked-by: Suresh Thiagarajan <Suresh.Thiagarajan@pmcs.com>
---
drivers/scsi/pm8001/pm8001_ctl.c | 7 ++-----
1 files changed, 2 insertions(+), 5 deletions(-)
diff --git a/drivers/scsi/pm8001/pm8001_ctl.c b/drivers/scsi/pm8001/pm8001_ctl.c
index 69aedea..7abbf28 100644
--- a/drivers/scsi/pm8001/pm8001_ctl.c
+++ b/drivers/scsi/pm8001/pm8001_ctl.c
@@ -585,11 +585,8 @@ static int pm8001_update_flash(struct pm8001_hba_info *pm8001_ha)
partitionSizeTmp =
*(u32 *)((u8 *)&image_hdr->image_length + sizeRead);
partitionSize = be32_to_cpu(partitionSizeTmp);
- loopcount = (partitionSize + HEADER_LEN)/IOCTL_BUF_SIZE;
- if (loopcount % IOCTL_BUF_SIZE)
- loopcount++;
- if (loopcount == 0)
- loopcount++;
+ loopcount = DIV_ROUND_UP(partitionSize + HEADER_LEN,
+ IOCTL_BUF_SIZE);
for (loopNumber = 0; loopNumber < loopcount; loopNumber++) {
payload = (struct pm8001_ioctl_payload *)ioctlbuffer;
payload->length = 1024*16;
-- 1.7.1
^ permalink raw reply related [flat|nested] only message in thread
only message in thread, other threads:[~2014-07-30 14:40 UTC | newest]
Thread overview: (only message) (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2014-07-30 14:40 [PATCH 2/3 V2] pm8001: Fix erratic calculation in update_flash Tomas Henzl
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).