[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <327ae6c3-a64a-66b4-a2ec-ce66d5a39eeb@huawei.com>
Date: Thu, 30 Sep 2021 09:17:52 +0100
From: John Garry <john.garry@...wei.com>
To: Arnd Bergmann <arnd@...nel.org>
CC: Russell King - ARM Linux <linux@...linux.org.uk>,
"James E.J. Bottomley" <jejb@...ux.ibm.com>,
"Martin K. Petersen" <martin.petersen@...cle.com>,
Hannes Reinecke <hare@...e.de>,
Linux ARM <linux-arm-kernel@...ts.infradead.org>,
linux-scsi <linux-scsi@...r.kernel.org>,
Linux Kernel Mailing List <linux-kernel@...r.kernel.org>
Subject: Re: [PATCH v2 2/3] acornscsi: remove tagged queuing vestiges
On 30/09/2021 08:21, Arnd Bergmann wrote:
> On Wed, Sep 15, 2021 at 11:16 AM John Garry<john.garry@...wei.com> wrote:
>> From: Hannes Reinecke<hare@...e.de>
>>
>> The acornscsi driver has a config option to enable tagged queuing,
>> but this option gets disabled in the driver itself with the comment
>> 'needs to be debugged'.
>> As this is a_really_ old driver I doubt anyone will be wanting to
>> invest time here, so remove the tagged queue vestiges and make
>> our live easier.
>>
>> Signed-off-by: Hannes Reinecke<hare@...e.de>
>> jpg: Use scsi_cmd_to_rq()
>> Signed-off-by: John Garry<john.garry@...wei.com>
> A few thousand randconfig builds later, I actually came across
> building this driver.
>
>> @@ -1821,7 +1776,7 @@ int acornscsi_reconnect_finish(AS_Host *host)
>> host->scsi.disconnectable = 0;
>> if (host->SCpnt->device->id == host->scsi.reconnected.target &&
>> host->SCpnt->device->lun == host->scsi.reconnected.lun &&
>> - host->SCpnt->tag == host->scsi.reconnected.tag) {
>> + scsi_cmd_to_tag(host->SCpnt) == host->scsi.reconnected.tag) {
>> #if (DEBUG & (DEBUG_QUEUES|DEBUG_DISCON))
>> DBG(host->SCpnt, printk("scsi%d.%c: reconnected",
>> host->host->host_no, acornscsi_target(host)));
> drivers/scsi/arm/acornscsi.c: In function 'acornscsi_reconnect_finish':
> drivers/scsi/arm/acornscsi.c:1779:6: error: implicit declaration of
> function 'scsi_cmd_to_tag'; did you mean 'scsi_cmd_to_rq'?
> [-Werror=implicit-function-declaration]
> scsi_cmd_to_tag(host->SCpnt) == host->scsi.reconnected.tag) {
> ^~~~~~~~~~~~~~~
> scsi_cmd_to_rq
>
> I have no idea what this is meant to do instead, but scsi_cmd_to_tag()
> does not appear to be defined in any kernel I can find.
Hannes added new function scsi_cmd_to_tag() in v1 series, but I removed
it when I reposted the v2 series. But then missed this reference.
I think the build fix should be as follows:
--- a/drivers/scsi/arm/acornscsi.c
+++ b/drivers/scsi/arm/acornscsi.c
@@ -1776,7 +1776,7 @@ int acornscsi_reconnect_finish(AS_Host *host)
host->scsi.disconnectable = 0;
if (host->SCpnt->device->id == host->scsi.reconnected.target &&
host->SCpnt->device->lun == host->scsi.reconnected.lun &&
- scsi_cmd_to_tag(host->SCpnt) == host->scsi.reconnected.tag) {
+ scsi_cmd_to_rq(host->SCpnt)->tag ==
host->scsi.reconnected.tag) {
Let me know if you want us to post a patch for this.
Thanks,
John
Powered by blists - more mailing lists