aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/drivers/net/ipa/gsi.h
diff options
context:
space:
mode:
authorAlex Elder <elder@linaro.org>2022-09-06 12:19:39 -0500
committerDavid S. Miller <davem@davemloft.net>2022-09-09 11:45:25 +0100
commit11902b41f2fa3960280b3a3b17474caa22b54cba (patch)
tree6af3d8da2b70834e337638795b6254cd85be5f7b /drivers/net/ipa/gsi.h
parentnet: ipa: always use transaction IDs instead of lists (diff)
downloadwireguard-linux-11902b41f2fa3960280b3a3b17474caa22b54cba.tar.xz
wireguard-linux-11902b41f2fa3960280b3a3b17474caa22b54cba.zip
net: ipa: kill the allocated transaction list
The only place the trans_info->alloc list is used is when initializing it, when adding a transaction to it when allocation finishes, and when moving a transaction from that list to the committed list. We can just skip putting a transaction on the allocated list, and add it (rather than move it) to the committed list when it is committed. On additional caveat is that an allocated transaction that's committed without any TREs added will be immediately freed. Because we aren't adding allocated transactions to a list any more, the list links need to be initialized to ensure they're valid at the time list_del() is called for the transaction. Then we can safely eliminate the allocated transaction list. Signed-off-by: Alex Elder <elder@linaro.org> Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'drivers/net/ipa/gsi.h')
-rw-r--r--drivers/net/ipa/gsi.h1
1 files changed, 0 insertions, 1 deletions
diff --git a/drivers/net/ipa/gsi.h b/drivers/net/ipa/gsi.h
index 13468704c400..a3f2d27a7e4b 100644
--- a/drivers/net/ipa/gsi.h
+++ b/drivers/net/ipa/gsi.h
@@ -96,7 +96,6 @@ struct gsi_trans_info {
struct gsi_trans_pool cmd_pool; /* command payload DMA pool */
spinlock_t spinlock; /* protects updates to the lists */
- struct list_head alloc; /* allocated, not committed */
struct list_head committed; /* committed, awaiting doorbell */
struct list_head pending; /* pending, awaiting completion */
struct list_head complete; /* completed, awaiting poll */