git: bbfec32d156c - main - isci: Propagate error from bus_dma_tag_create.

From: John Baldwin <jhb_at_FreeBSD.org>
Date: Wed, 06 Apr 2022 23:46:13 UTC
The branch main has been updated by jhb:

URL: https://cgit.FreeBSD.org/src/commit/?id=bbfec32d156cec4c004f6f5148a074ba5f0a294d

commit bbfec32d156cec4c004f6f5148a074ba5f0a294d
Author:     John Baldwin <jhb@FreeBSD.org>
AuthorDate: 2022-04-06 23:45:28 +0000
Commit:     John Baldwin <jhb@FreeBSD.org>
CommitDate: 2022-04-06 23:45:28 +0000

    isci: Propagate error from bus_dma_tag_create.
    
    Return error from isci_controller_allocate_memory if bus_dma_tag_create
    fails instead of ignoring the error.
---
 sys/dev/isci/isci_controller.c | 6 ++++--
 1 file changed, 4 insertions(+), 2 deletions(-)

diff --git a/sys/dev/isci/isci_controller.c b/sys/dev/isci/isci_controller.c
index 9848f1bc8302..0c4773193e45 100644
--- a/sys/dev/isci/isci_controller.c
+++ b/sys/dev/isci/isci_controller.c
@@ -412,7 +412,6 @@ int isci_controller_allocate_memory(struct ISCI_CONTROLLER *controller)
 	int error;
 	device_t device =  controller->isci->device;
 	uint32_t max_segment_size = isci_io_request_get_max_io_size();
-	uint32_t status = 0;
 	struct ISCI_MEMORY *uncached_controller_memory =
 	    &controller->uncached_controller_memory;
 	struct ISCI_MEMORY *cached_controller_memory =
@@ -477,13 +476,16 @@ int isci_controller_allocate_memory(struct ISCI_CONTROLLER *controller)
 	 *  will enable better performance than creating the DMA maps every time we get
 	 *  an I/O.
 	 */
-	status = bus_dma_tag_create(bus_get_dma_tag(device), 0x1,
+	error = bus_dma_tag_create(bus_get_dma_tag(device), 0x1,
 	    ISCI_DMA_BOUNDARY, BUS_SPACE_MAXADDR, BUS_SPACE_MAXADDR,
 	    NULL, NULL, isci_io_request_get_max_io_size(),
 	    SCI_MAX_SCATTER_GATHER_ELEMENTS, max_segment_size, 0,
 	    busdma_lock_mutex, &controller->lock,
 	    &controller->buffer_dma_tag);
 
+	if (error != 0)
+	    return (error);
+
 	sci_pool_initialize(controller->request_pool);
 
 	virtual_address = request_memory->virtual_address;