Commit b99c2386 authored by Anup Patel's avatar Anup Patel Committed by Vinod Koul

dmaengine: bcm-sba-raid: Remove redundant SBA_REQUEST_STATE_RECEIVED

The SBA_REQUEST_STATE_RECEIVED state is now redundant because
received sba_request are immediately freed or moved to completed
list in sba_process_received_request().

This patch removes redundant SBA_REQUEST_STATE_RECEIVED state.
Signed-off-by: default avatarAnup Patel <anup.patel@broadcom.com>
Signed-off-by: default avatarVinod Koul <vinod.koul@intel.com>
parent d6ffd239
...@@ -98,9 +98,8 @@ enum sba_request_flags { ...@@ -98,9 +98,8 @@ enum sba_request_flags {
SBA_REQUEST_STATE_ALLOCED = 0x002, SBA_REQUEST_STATE_ALLOCED = 0x002,
SBA_REQUEST_STATE_PENDING = 0x004, SBA_REQUEST_STATE_PENDING = 0x004,
SBA_REQUEST_STATE_ACTIVE = 0x008, SBA_REQUEST_STATE_ACTIVE = 0x008,
SBA_REQUEST_STATE_RECEIVED = 0x010, SBA_REQUEST_STATE_COMPLETED = 0x010,
SBA_REQUEST_STATE_COMPLETED = 0x020, SBA_REQUEST_STATE_ABORTED = 0x020,
SBA_REQUEST_STATE_ABORTED = 0x040,
SBA_REQUEST_STATE_MASK = 0x0ff, SBA_REQUEST_STATE_MASK = 0x0ff,
SBA_REQUEST_FENCE = 0x100, SBA_REQUEST_FENCE = 0x100,
}; };
...@@ -160,7 +159,6 @@ struct sba_device { ...@@ -160,7 +159,6 @@ struct sba_device {
struct list_head reqs_alloc_list; struct list_head reqs_alloc_list;
struct list_head reqs_pending_list; struct list_head reqs_pending_list;
struct list_head reqs_active_list; struct list_head reqs_active_list;
struct list_head reqs_received_list;
struct list_head reqs_completed_list; struct list_head reqs_completed_list;
struct list_head reqs_aborted_list; struct list_head reqs_aborted_list;
struct list_head reqs_free_list; struct list_head reqs_free_list;
...@@ -307,18 +305,6 @@ static void _sba_complete_request(struct sba_device *sba, ...@@ -307,18 +305,6 @@ static void _sba_complete_request(struct sba_device *sba,
sba->reqs_fence = false; sba->reqs_fence = false;
} }
/* Note: Must be called with sba->reqs_lock held */
static void _sba_received_request(struct sba_device *sba,
struct sba_request *req)
{
lockdep_assert_held(&sba->reqs_lock);
req->flags &= ~SBA_REQUEST_STATE_MASK;
req->flags |= SBA_REQUEST_STATE_RECEIVED;
list_move_tail(&req->node, &sba->reqs_received_list);
if (list_empty(&sba->reqs_active_list))
sba->reqs_fence = false;
}
static void sba_free_chained_requests(struct sba_request *req) static void sba_free_chained_requests(struct sba_request *req)
{ {
unsigned long flags; unsigned long flags;
...@@ -360,10 +346,6 @@ static void sba_cleanup_nonpending_requests(struct sba_device *sba) ...@@ -360,10 +346,6 @@ static void sba_cleanup_nonpending_requests(struct sba_device *sba)
list_for_each_entry_safe(req, req1, &sba->reqs_alloc_list, node) list_for_each_entry_safe(req, req1, &sba->reqs_alloc_list, node)
_sba_free_request(sba, req); _sba_free_request(sba, req);
/* Freeup all received request */
list_for_each_entry_safe(req, req1, &sba->reqs_received_list, node)
_sba_free_request(sba, req);
/* Freeup all completed request */ /* Freeup all completed request */
list_for_each_entry_safe(req, req1, &sba->reqs_completed_list, node) list_for_each_entry_safe(req, req1, &sba->reqs_completed_list, node)
_sba_free_request(sba, req); _sba_free_request(sba, req);
...@@ -482,9 +464,6 @@ static void sba_process_received_request(struct sba_device *sba, ...@@ -482,9 +464,6 @@ static void sba_process_received_request(struct sba_device *sba,
_sba_free_request(sba, nreq); _sba_free_request(sba, nreq);
INIT_LIST_HEAD(&first->next); INIT_LIST_HEAD(&first->next);
/* Mark request as received */
_sba_received_request(sba, first);
/* The client is allowed to attach dependent operations /* The client is allowed to attach dependent operations
* until 'ack' is set * until 'ack' is set
*/ */
...@@ -1498,7 +1477,6 @@ static int sba_prealloc_channel_resources(struct sba_device *sba) ...@@ -1498,7 +1477,6 @@ static int sba_prealloc_channel_resources(struct sba_device *sba)
INIT_LIST_HEAD(&sba->reqs_alloc_list); INIT_LIST_HEAD(&sba->reqs_alloc_list);
INIT_LIST_HEAD(&sba->reqs_pending_list); INIT_LIST_HEAD(&sba->reqs_pending_list);
INIT_LIST_HEAD(&sba->reqs_active_list); INIT_LIST_HEAD(&sba->reqs_active_list);
INIT_LIST_HEAD(&sba->reqs_received_list);
INIT_LIST_HEAD(&sba->reqs_completed_list); INIT_LIST_HEAD(&sba->reqs_completed_list);
INIT_LIST_HEAD(&sba->reqs_aborted_list); INIT_LIST_HEAD(&sba->reqs_aborted_list);
INIT_LIST_HEAD(&sba->reqs_free_list); INIT_LIST_HEAD(&sba->reqs_free_list);
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment