Skip to content

Commit 2ccde58

Browse files
remove unnecessary reordering key
1 parent 5730fcb commit 2ccde58

1 file changed

Lines changed: 7 additions & 18 deletions

File tree

libudpard/udpard.c

Lines changed: 7 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -1868,22 +1868,14 @@ static int32_t cavl_compare_rx_session_by_remote_uid(const void* const user, con
18681868
return 0; // clang-format on
18691869
}
18701870

1871-
// Key for reordering deadline ordering with stable tiebreaking.
1872-
typedef struct
1873-
{
1874-
udpard_us_t deadline;
1875-
uint64_t remote_uid;
1876-
} rx_reordering_key_t;
1877-
1878-
// Compare sessions by reordering deadline then by remote UID.
18791871
static int32_t cavl_compare_rx_session_by_reordering_deadline(const void* const user, const udpard_tree_t* const node)
18801872
{
1881-
const rx_reordering_key_t* const key = (const rx_reordering_key_t*)user;
1882-
const rx_session_t* const ses = CAVL2_TO_OWNER(node, rx_session_t, index_reordering_window); // clang-format off
1883-
if (key->deadline < ses->reordering_window_deadline) { return -1; }
1884-
if (key->deadline > ses->reordering_window_deadline) { return +1; }
1885-
if (key->remote_uid < ses->remote.uid) { return -1; }
1886-
if (key->remote_uid > ses->remote.uid) { return +1; }
1873+
const rx_session_t* const outer = (const rx_session_t*)user;
1874+
const rx_session_t* const inner = CAVL2_TO_OWNER(node, rx_session_t, index_reordering_window); // clang-format off
1875+
if (outer->reordering_window_deadline < inner->reordering_window_deadline) { return -1; }
1876+
if (outer->reordering_window_deadline > inner->reordering_window_deadline) { return +1; }
1877+
if (outer->remote.uid < inner->remote.uid) { return -1; }
1878+
if (outer->remote.uid > inner->remote.uid) { return +1; }
18871879
return 0; // clang-format on
18881880
}
18891881

@@ -2001,11 +1993,8 @@ static void rx_session_ordered_scan_slots(rx_session_t* const self,
20011993
// closure deadline, but we ignore them because the nearest transfer overrides the more distant ones.
20021994
if (slot != NULL) {
20031995
self->reordering_window_deadline = slot->ts_min + self->port->reordering_window;
2004-
// Insert into reordering index with deterministic tie-breaking.
2005-
const rx_reordering_key_t key = { .deadline = self->reordering_window_deadline,
2006-
.remote_uid = self->remote.uid };
20071996
const udpard_tree_t* res = cavl2_find_or_insert(&rx->index_session_by_reordering, //----------------
2008-
&key,
1997+
self,
20091998
&cavl_compare_rx_session_by_reordering_deadline,
20101999
&self->index_reordering_window,
20112000
&cavl2_trivial_factory);

0 commit comments

Comments
 (0)