Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 8ea73db4 authored by James Smart's avatar James Smart Committed by Martin K. Petersen
Browse files

scsi: lpfc: Correct WQ creation for pagesize



Correct WQ creation for pagesize

The driver was calculating the adapter command pagesize indicator from
the system pagesize. However, the buffers the driver allocates are only
one size (SLI4_PAGE_SIZE), so no calculation was necessary.

Signed-off-by: default avatarDick Kennedy <dick.kennedy@broadcom.com>
Signed-off-by: default avatarJames Smart <james.smart@broadcom.com>
Reviewed-by: default avatarHannes Reinecke <hare@suse.com>
Reviewed-by: default avatarJohannes Thumshirn <jthumshirn@suse.de>
Reviewed-by: default avatarChristoph Hellwig <hch@lst.de>
Signed-off-by: default avatarMartin K. Petersen <martin.petersen@oracle.com>
parent 94344520
Loading
Loading
Loading
Loading
+2 −0
Original line number Original line Diff line number Diff line
@@ -1186,6 +1186,7 @@ struct lpfc_mbx_wq_create {
#define lpfc_mbx_wq_create_page_size_SHIFT	0
#define lpfc_mbx_wq_create_page_size_SHIFT	0
#define lpfc_mbx_wq_create_page_size_MASK	0x000000FF
#define lpfc_mbx_wq_create_page_size_MASK	0x000000FF
#define lpfc_mbx_wq_create_page_size_WORD	word1
#define lpfc_mbx_wq_create_page_size_WORD	word1
#define LPFC_WQ_PAGE_SIZE_4096	0x1
#define lpfc_mbx_wq_create_wqe_size_SHIFT	8
#define lpfc_mbx_wq_create_wqe_size_SHIFT	8
#define lpfc_mbx_wq_create_wqe_size_MASK	0x0000000F
#define lpfc_mbx_wq_create_wqe_size_MASK	0x0000000F
#define lpfc_mbx_wq_create_wqe_size_WORD	word1
#define lpfc_mbx_wq_create_wqe_size_WORD	word1
@@ -1257,6 +1258,7 @@ struct rq_context {
#define lpfc_rq_context_page_size_SHIFT	0		/* Version 1 Only */
#define lpfc_rq_context_page_size_SHIFT	0		/* Version 1 Only */
#define lpfc_rq_context_page_size_MASK	0x000000FF
#define lpfc_rq_context_page_size_MASK	0x000000FF
#define lpfc_rq_context_page_size_WORD	word0
#define lpfc_rq_context_page_size_WORD	word0
#define	LPFC_RQ_PAGE_SIZE_4096	0x1
	uint32_t reserved1;
	uint32_t reserved1;
	uint32_t word2;
	uint32_t word2;
#define lpfc_rq_context_cq_id_SHIFT	16
#define lpfc_rq_context_cq_id_SHIFT	16
+5 −4
Original line number Original line Diff line number Diff line
@@ -13722,7 +13722,7 @@ lpfc_wq_create(struct lpfc_hba *phba, struct lpfc_queue *wq,
			       LPFC_WQ_WQE_SIZE_128);
			       LPFC_WQ_WQE_SIZE_128);
			bf_set(lpfc_mbx_wq_create_page_size,
			bf_set(lpfc_mbx_wq_create_page_size,
			       &wq_create->u.request_1,
			       &wq_create->u.request_1,
			       (PAGE_SIZE/SLI4_PAGE_SIZE));
			       LPFC_WQ_PAGE_SIZE_4096);
			page = wq_create->u.request_1.page;
			page = wq_create->u.request_1.page;
			break;
			break;
		}
		}
@@ -13748,8 +13748,9 @@ lpfc_wq_create(struct lpfc_hba *phba, struct lpfc_queue *wq,
			       LPFC_WQ_WQE_SIZE_128);
			       LPFC_WQ_WQE_SIZE_128);
			break;
			break;
		}
		}
		bf_set(lpfc_mbx_wq_create_page_size, &wq_create->u.request_1,
		bf_set(lpfc_mbx_wq_create_page_size,
		       (PAGE_SIZE/SLI4_PAGE_SIZE));
		       &wq_create->u.request_1,
		       LPFC_WQ_PAGE_SIZE_4096);
		page = wq_create->u.request_1.page;
		page = wq_create->u.request_1.page;
		break;
		break;
	default:
	default:
@@ -13935,7 +13936,7 @@ lpfc_rq_create(struct lpfc_hba *phba, struct lpfc_queue *hrq,
		       LPFC_RQE_SIZE_8);
		       LPFC_RQE_SIZE_8);
		bf_set(lpfc_rq_context_page_size,
		bf_set(lpfc_rq_context_page_size,
		       &rq_create->u.request.context,
		       &rq_create->u.request.context,
		       (PAGE_SIZE/SLI4_PAGE_SIZE));
		       LPFC_RQ_PAGE_SIZE_4096);
	} else {
	} else {
		switch (hrq->entry_count) {
		switch (hrq->entry_count) {
		default:
		default: