From: Hannes Reinecke <hare@suse.de>
To: "Martin K. Petersen" <martin.petersen@oracle.com>
Cc: Christoph Hellwig <hch@lst.de>,
James Bottomley <james.bottomley@hansenpartnership.com>,
John Garry <john.garry@huawei.com>,
linux-scsi@vger.kernel.org, Hannes Reinecke <hare@suse.de>,
Hannes Reinecke <hare@suse.com>,
Don Brace <don.brace@microchip.com>
Subject: [PATCH 14/18] hpsa: drop refcount field from CommandList
Date: Mon, 3 May 2021 17:03:29 +0200 [thread overview]
Message-ID: <20210503150333.130310-15-hare@suse.de> (raw)
In-Reply-To: <20210503150333.130310-1-hare@suse.de>
Field is now unused, so drop it.
Signed-off-by: Hannes Reinecke <hare@suse.com>
Acked-by: Don Brace <don.brace@microchip.com>
Tested-by: Don Brace <don.brace@microchip.com>
---
drivers/scsi/hpsa.c | 11 ++---------
drivers/scsi/hpsa_cmd.h | 10 ----------
2 files changed, 2 insertions(+), 19 deletions(-)
diff --git a/drivers/scsi/hpsa.c b/drivers/scsi/hpsa.c
index 282338944a85..61f993704e23 100644
--- a/drivers/scsi/hpsa.c
+++ b/drivers/scsi/hpsa.c
@@ -5533,8 +5533,8 @@ static void hpsa_cmd_init(struct ctlr_info *h, int index,
{
dma_addr_t cmd_dma_handle, err_dma_handle;
- /* Zero out all of commandlist except the last field, refcount */
- memset(c, 0, offsetof(struct CommandList, refcount));
+ /* Zero out all of commandlist */
+ memset(c, 0, sizeof(struct CommandList));
c->Header.tag = cpu_to_le64((u64) (index << DIRECT_LOOKUP_SHIFT));
cmd_dma_handle = h->cmd_pool_dhandle + index * sizeof(*c);
c->err_info = h->errinfo_pool + index;
@@ -5556,7 +5556,6 @@ static void hpsa_preinitialize_commands(struct ctlr_info *h)
struct CommandList *c = h->cmd_pool + i;
hpsa_cmd_init(h, i, c);
- atomic_set(&c->refcount, 0);
}
}
@@ -6172,7 +6171,6 @@ static struct CommandList *cmd_tagged_alloc(struct ctlr_info *h,
return NULL;
}
- atomic_inc(&c->refcount);
hpsa_cmd_partial_init(h, idx, c);
/*
@@ -6186,11 +6184,6 @@ static struct CommandList *cmd_tagged_alloc(struct ctlr_info *h,
static void cmd_tagged_free(struct ctlr_info *h, struct CommandList *c)
{
- /*
- * Release our reference to the block. We don't need to do anything
- * else to free it, because it is accessed by index.
- */
- (void)atomic_dec(&c->refcount);
c->scsi_cmd = NULL;
}
diff --git a/drivers/scsi/hpsa_cmd.h b/drivers/scsi/hpsa_cmd.h
index ba6a3aa8d954..04c92c94cc6c 100644
--- a/drivers/scsi/hpsa_cmd.h
+++ b/drivers/scsi/hpsa_cmd.h
@@ -454,18 +454,8 @@ struct CommandList {
bool retry_pending;
struct hpsa_scsi_dev_t *device;
- atomic_t refcount; /* Must be last to avoid memset in hpsa_cmd_init() */
} __aligned(COMMANDLIST_ALIGNMENT);
-/*
- * Make sure our embedded atomic variable is aligned. Otherwise we break atomic
- * operations on architectures that don't support unaligned atomics like IA64.
- *
- * The assert guards against reintroductin against unwanted __packed to
- * the struct CommandList.
- */
-static_assert(offsetof(struct CommandList, refcount) % __alignof__(atomic_t) == 0);
-
/* Max S/G elements in I/O accelerator command */
#define IOACCEL1_MAXSGENTRIES 24
#define IOACCEL2_MAXSGENTRIES 28
--
2.29.2
next prev parent reply other threads:[~2021-05-03 15:04 UTC|newest]
Thread overview: 55+ messages / expand[flat|nested] mbox.gz Atom feed top
2021-05-03 15:03 [PATCHv8 00/18] scsi: enabled reserved commands for LLDDs Hannes Reinecke
2021-05-03 15:03 ` [PATCH 01/18] fnic: kill 'exclude_id' argument to fnic_cleanup_io() Hannes Reinecke
2021-05-04 2:12 ` Bart Van Assche
2021-05-04 9:49 ` Christoph Hellwig
2021-05-03 15:03 ` [PATCH 02/18] fnic: use scsi_host_busy_iter() to traverse commands Hannes Reinecke
2021-05-04 9:50 ` Christoph Hellwig
2021-05-04 12:53 ` Hannes Reinecke
2021-05-03 15:03 ` [PATCH 03/18] scsi: add scsi_{get,put}_internal_cmd() helper Hannes Reinecke
2021-05-04 2:21 ` Bart Van Assche
2021-05-04 6:12 ` Hannes Reinecke
2021-06-23 10:57 ` John Garry
2021-06-23 13:48 ` Hannes Reinecke
2021-06-24 9:55 ` John Garry
2021-05-04 9:53 ` Christoph Hellwig
2021-05-04 12:54 ` Hannes Reinecke
2021-06-23 16:09 ` Bart Van Assche
2021-05-03 15:03 ` [PATCH 04/18] fnic: use internal commands Hannes Reinecke
2021-05-04 2:25 ` Bart Van Assche
2021-05-04 6:12 ` Hannes Reinecke
2021-05-03 15:03 ` [PATCH 05/18] scsi: use real inquiry data when initialising devices Hannes Reinecke
2021-05-04 2:28 ` Bart Van Assche
2021-05-04 9:55 ` Christoph Hellwig
2021-05-04 12:57 ` Hannes Reinecke
2021-05-03 15:03 ` [PATCH 06/18] scsi: Use dummy inquiry data for the host device Hannes Reinecke
2021-05-04 2:52 ` Bart Van Assche
2021-05-04 6:14 ` Hannes Reinecke
2021-05-03 15:03 ` [PATCH 07/18] scsi: revamp host device handling Hannes Reinecke
2021-05-04 3:06 ` Bart Van Assche
2021-05-04 6:15 ` Hannes Reinecke
2021-05-04 9:59 ` Christoph Hellwig
2021-05-04 13:10 ` Hannes Reinecke
2021-05-03 15:03 ` [PATCH 08/18] snic: use reserved commands Hannes Reinecke
2021-05-04 3:12 ` Bart Van Assche
2021-05-04 6:16 ` Hannes Reinecke
2021-05-03 15:03 ` [PATCH 09/18] snic: use tagset iter for traversing commands Hannes Reinecke
2021-05-04 9:59 ` Christoph Hellwig
2021-05-03 15:03 ` [PATCH 10/18] scsi: implement reserved command handling Hannes Reinecke
2021-05-04 3:20 ` Bart Van Assche
2021-05-04 6:17 ` Hannes Reinecke
2021-05-04 10:55 ` John Garry
2021-05-04 13:12 ` Hannes Reinecke
2021-05-04 16:59 ` Bart Van Assche
2021-05-04 18:09 ` Hannes Reinecke
2021-05-05 0:45 ` Bart Van Assche
2021-05-05 5:56 ` Hannes Reinecke
2021-05-03 15:03 ` [PATCH 11/18] hpsa: move hpsa_hba_inquiry after scsi_add_host() Hannes Reinecke
2021-05-03 15:03 ` [PATCH 12/18] hpsa: use reserved commands Hannes Reinecke
2021-05-03 15:03 ` [PATCH 13/18] hpsa: use scsi_host_busy_iter() to traverse outstanding commands Hannes Reinecke
2021-05-03 15:03 ` Hannes Reinecke [this message]
2021-05-03 15:03 ` [PATCH 15/18] aacraid: move scsi_add_host() Hannes Reinecke
2021-05-03 15:03 ` [PATCH 16/18] aacraid: store target id in host_scribble Hannes Reinecke
2021-05-04 3:22 ` Bart Van Assche
2021-05-04 6:18 ` Hannes Reinecke
2021-05-03 15:03 ` [PATCH 17/18] aacraid: use scsi_get_internal_cmd() Hannes Reinecke
2021-05-03 15:03 ` [PATCH 18/18] aacraid: use scsi_host_busy_iter() to traverse outstanding commands Hannes Reinecke
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20210503150333.130310-15-hare@suse.de \
--to=hare@suse.de \
--cc=don.brace@microchip.com \
--cc=hare@suse.com \
--cc=hch@lst.de \
--cc=james.bottomley@hansenpartnership.com \
--cc=john.garry@huawei.com \
--cc=linux-scsi@vger.kernel.org \
--cc=martin.petersen@oracle.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox