[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <1377777581.2223.93.camel@dabdike>
Date: Thu, 29 Aug 2013 11:59:43 +0000
From: James Bottomley <jbottomley@...allels.com>
To: 黃清隆 <ching2048@...ca.com.tw>
CC: Tomas Henzl <thenzl@...hat.com>,
"fengguang.wu@...el.com" <fengguang.wu@...el.com>,
"linux-scsi@...r.kernel.org" <linux-scsi@...r.kernel.org>,
"linux-kernel@...r.kernel.org" <linux-kernel@...r.kernel.org>,
Dan Carpenter <dan.carpenter@...cle.com>
Subject: Re: [PATCH 1/1 v1.1] arcmsr: Support Areca new SATA Raid Adapter
ARC1214/1224/1264/1284 (Resend renew)
On Thu, 2013-08-29 at 12:55 +0800, 黃清隆 wrote:
> Update the patch code.
>
> From: Ching<ching2048@...ca.com.tw>
>
> Support Areca new SATA Raid Adapter ARC1214/1224/1264/1284.
> Modify maximum outstanding command number.
> Notify command complete with auto request sense.
> Fix bug of updating adapter firmware through ioctl(ARCHTTP) interface.
> Fix coding style warning.
> Fix compiling warning.
> Fix ARC1880 hardware reset.
> Fix coding style - indent
This patch is too big for the SCSI mailing list. We have a 400k limit.
Your patch is 292k, which would ordinarily be OK, but you attached it
twice (once inline and once as an attachment), which is why it's not
going through.
> - {PCI_DEVICE(PCI_VENDOR_ID_ARECA, PCI_DEVICE_ID_ARECA_1380)},
> - {PCI_DEVICE(PCI_VENDOR_ID_ARECA, PCI_DEVICE_ID_ARECA_1381)},
Why are you removing these adapters from the driver?
I agree with Dan, all these whitespace changes make the patch very hard
to read for the significant pieces; can't they be done separately?
Some of them, like this
> -static void arcmsr_hba_doorbell_isr(struct AdapterControlBlock *acb)
> +static void
> +arcmsr_hbaA_doorbell_isr(struct AdapterControlBlock *acb)
> {
> uint32_t outbound_doorbell;
> - struct MessageUnit_A __iomem *reg = acb->pmuA;
> + struct MessageUnit_A __iomem *reg = acb->pmuA;
Aren't even correct (last one introduces an extra spurious space).
Others, like this:
> + kfree((const void *)ver_addr);
[...]
> - kfree(ver_addr);
Are stylistically wrong: ver_addr is an unsigned char *; there's no
reason to cast it to anything before calling kfree (any pointer can be
passed without cast to a function taking a void *)
> - memcpy(ptmpuserbuffer, pcmdmessagefld->messagedatabuffer, user_len);
> + memcpy((void *)ptmpuserbuffer,
> + (const void *)pcmdmessagefld->messagedatabuffer, user_len);
You do a lot of this spurious casting to void *; please don't:
> - } while (((readl(&pmuC->host_diagnostic) & ARCMSR_ARC1880_DiagWrite_ENABLE) == 0) && (count < 5));
> - writel(ARCMSR_ARC1880_RESET_ADAPTER, &pmuC->host_diagnostic);
> + } while ((((temp = readl(&pmuC->host_diagnostic)) &
> + ARCMSR_ARC1880_DiagWrite_ENABLE) == 0) &&
> + (count < 5));
Why assign to temp? You never refer to it again.
I'm sure there are other issues, but the massive code reformat changes
mean I probably missed them.
James
Powered by blists - more mailing lists