52 lines
1.8 KiB
Diff
52 lines
1.8 KiB
Diff
From 4ef63d77803aeb322fe72eb5445897eba52c68ff Mon Sep 17 00:00:00 2001
|
|
Message-Id: <4ef63d77803aeb322fe72eb5445897eba52c68ff.1654086219.git.stefan@agner.ch>
|
|
In-Reply-To: <24b77460dbfa2497ceb7a1611bf28b6eb88a1d74.1654086219.git.stefan@agner.ch>
|
|
References: <24b77460dbfa2497ceb7a1611bf28b6eb88a1d74.1654086219.git.stefan@agner.ch>
|
|
From: Stefan Agner <stefan@agner.ch>
|
|
Date: Thu, 23 Sep 2021 23:52:44 +0200
|
|
Subject: [PATCH] nvme: improve readability of nvme_setup_prps()
|
|
|
|
Improve readability by introducing consts, reuse consts where
|
|
appropriate and adding variables with discriptive name.
|
|
|
|
Signed-off-by: Stefan Agner <stefan@agner.ch>
|
|
---
|
|
drivers/nvme/nvme.c | 10 +++++-----
|
|
1 file changed, 5 insertions(+), 5 deletions(-)
|
|
|
|
diff --git a/drivers/nvme/nvme.c b/drivers/nvme/nvme.c
|
|
index 3bda491e12..1601651449 100644
|
|
--- a/drivers/nvme/nvme.c
|
|
+++ b/drivers/nvme/nvme.c
|
|
@@ -76,12 +76,12 @@ static int nvme_wait_ready(struct nvme_dev *dev, bool enabled)
|
|
static int nvme_setup_prps(struct nvme_dev *dev, u64 *prp2,
|
|
int total_len, u64 dma_addr)
|
|
{
|
|
- u32 page_size = dev->page_size;
|
|
+ const u32 page_size = dev->page_size;
|
|
+ const u32 prps_per_page = (page_size >> 3) - 1;
|
|
int offset = dma_addr & (page_size - 1);
|
|
u64 *prp_pool;
|
|
int length = total_len;
|
|
int i, nprps;
|
|
- u32 prps_per_page = (page_size >> 3) - 1;
|
|
u32 num_pages;
|
|
|
|
length -= (page_size - offset);
|
|
@@ -119,9 +119,9 @@ static int nvme_setup_prps(struct nvme_dev *dev, u64 *prp2,
|
|
prp_pool = dev->prp_pool;
|
|
i = 0;
|
|
while (nprps) {
|
|
- if (i == ((page_size >> 3) - 1)) {
|
|
- *(prp_pool + i) = cpu_to_le64((ulong)prp_pool +
|
|
- page_size);
|
|
+ if (i == prps_per_page) {
|
|
+ u64 next_prp_list = (u64)prp_pool + page_size;
|
|
+ *(prp_pool + i) = cpu_to_le64(next_prp_list);
|
|
i = 0;
|
|
prp_pool += page_size;
|
|
}
|
|
--
|
|
2.36.1
|
|
|