public inbox for b.a.t.m.a.n@lists.open-mesh.org
 help / color / mirror / Atom feed
From: Sven Eckelmann <sven@narfation.org>
To: b.a.t.m.a.n@lists.open-mesh.org
Subject: [B.A.T.M.A.N.] [PATCH 1/7] alfred: Avoid hash search for transaction cleanup
Date: Sat, 12 Nov 2016 10:25:18 +0100	[thread overview]
Message-ID: <20161112092524.13170-1-sven@narfation.org> (raw)
In-Reply-To: <4404358.R7R4S15M79@sven-edge>

A transaction can either be cleaned up on timeout or on TXEND. alfred has
in both situations already the head of the transaction list. An extra
search in the transaction hash is therefore not needed.

Signed-off-by: Sven Eckelmann <sven@narfation.org>
---
 alfred.h |  3 ---
 recv.c   | 16 +---------------
 2 files changed, 1 insertion(+), 18 deletions(-)

diff --git a/alfred.h b/alfred.h
index b2b08b0..7e7811b 100644
--- a/alfred.h
+++ b/alfred.h
@@ -159,9 +159,6 @@ int recv_alfred_packet(struct globals *globals, struct interface *interface,
 		       int recv_sock);
 struct transaction_head *
 transaction_add(struct globals *globals, struct ether_addr mac, uint16_t id);
-struct transaction_head *
-transaction_clean_hash(struct globals *globals,
-		       struct transaction_head *search);
 struct transaction_head *transaction_clean(struct globals *globals,
 					   struct transaction_head *head);
 /* send.c */
diff --git a/recv.c b/recv.c
index 98539cb..b6b6eab 100644
--- a/recv.c
+++ b/recv.c
@@ -160,18 +160,6 @@ struct transaction_head *transaction_clean(struct globals *globals,
 	return head;
 }
 
-struct transaction_head *
-transaction_clean_hash(struct globals *globals, struct transaction_head *search)
-{
-	struct transaction_head *head;
-
-	head = hash_find(globals->transaction_hash, search);
-	if (!head)
-		return head;
-
-	return transaction_clean(globals, head);
-}
-
 static int process_alfred_push_data(struct globals *globals,
 				    struct in6_addr *source,
 				    struct alfred_push_data_v0 *push)
@@ -369,9 +357,7 @@ static int process_alfred_status_txend(struct globals *globals,
 		free(transaction_packet);
 	}
 
-	head = transaction_clean_hash(globals, &search);
-	if (!head)
-		return -1;
+	transaction_clean(globals, head);
 
 	if (head->client_socket < 0)
 		free(head);
-- 
2.10.2


  reply	other threads:[~2016-11-12  9:25 UTC|newest]

Thread overview: 9+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2016-11-12  9:24 [B.A.T.M.A.N.] [PATCH 0/7] alfred: Allow out-of-order TXEND Sven Eckelmann
2016-11-12  9:25 ` Sven Eckelmann [this message]
2016-11-12  9:25 ` [B.A.T.M.A.N.] [PATCH 2/7] alfred: Move tx finish functionality in extra function Sven Eckelmann
2016-11-12  9:25 ` [B.A.T.M.A.N.] [PATCH 3/7] alfred: Remove checks for committed/dropped transaction Sven Eckelmann
2016-11-12  9:25 ` [B.A.T.M.A.N.] [PATCH 4/7] alfred: Don't force cleanup of transaction on TXEND Sven Eckelmann
2016-11-12  9:25 ` [B.A.T.M.A.N.] [PATCH 5/7] alfred: Use expected packet count to finished transactions Sven Eckelmann
2016-11-12  9:25 ` [B.A.T.M.A.N.] [PATCH 6/7] alfred: Allow PUSH_DATA to finish transactions Sven Eckelmann
2016-11-12  9:25 ` [B.A.T.M.A.N.] [PATCH 7/7] alfred: Allow TXEND to start new transaction Sven Eckelmann
2016-11-17 16:06 ` [B.A.T.M.A.N.] [PATCH 0/7] alfred: Allow out-of-order TXEND Simon Wunderlich

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20161112092524.13170-1-sven@narfation.org \
    --to=sven@narfation.org \
    --cc=b.a.t.m.a.n@lists.open-mesh.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox