Skip to content

Commit fe3b925

Browse files
committed
btl/am-rdma: Use opal's min function
Remove the type-specific implementation of min in the btl active message code and use opal_min instead. While this loses type safety in the general case, most compilers used in development support C generics, so we'll still get type safety checks. Signed-off-by: Brian Barrett <bbarrett@amazon.com>
1 parent 2328930 commit fe3b925

File tree

1 file changed

+12
-12
lines changed

1 file changed

+12
-12
lines changed

opal/mca/btl/base/btl_base_am_rdma.c

Lines changed: 12 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -4,17 +4,22 @@
44
* reserved.
55
* Copyright (c) 2020-2021 Google, LLC. All rights reserved.
66
* Copyright (c) 2021-2022 Cisco Systems, Inc. All rights reserved
7+
* Copyright (c) 2022 Amazon.com, Inc. or its affiliates.
8+
* All Rights reserved.
79
* $COPYRIGHT$
810
*
911
* Additional copyrights may follow
1012
*
1113
* $HEADER$
1214
*/
1315

16+
#include "opal_config.h"
17+
1418
#include "opal/mca/btl/base/btl_base_am_rdma.h"
1519
#include "opal/mca/btl/base/base.h"
1620
#include "opal/mca/btl/base/btl_base_error.h"
1721
#include "opal/mca/threads/mutex.h"
22+
#include "opal/util/minmax.h"
1823

1924
/**
2025
* @brief data for active-message atomics
@@ -210,11 +215,6 @@ typedef struct mca_btl_base_rdma_operation_t mca_btl_base_rdma_operation_t;
210215

211216
static OBJ_CLASS_INSTANCE(mca_btl_base_rdma_operation_t, opal_list_item_t, NULL, NULL);
212217

213-
static inline size_t size_t_min(size_t a, size_t b)
214-
{
215-
return (a < b) ? a : b;
216-
}
217-
218218
static mca_btl_base_am_rdma_module_t default_module;
219219

220220
static inline bool mca_btl_base_rdma_use_rdma_get(mca_btl_base_module_t *btl)
@@ -239,12 +239,12 @@ static inline size_t mca_btl_base_rdma_operation_size(mca_btl_base_module_t *btl
239239
switch (type) {
240240
case MCA_BTL_BASE_AM_PUT:
241241
if (mca_btl_base_rdma_use_rdma_get(btl)) {
242-
return size_t_min(remaining, btl->btl_get_limit);
242+
return opal_min(remaining, btl->btl_get_limit);
243243
}
244244
break;
245245
case MCA_BTL_BASE_AM_GET:
246246
if (mca_btl_base_rdma_use_rdma_put(btl)) {
247-
return size_t_min(remaining, btl->btl_put_limit);
247+
return opal_min(remaining, btl->btl_put_limit);
248248
}
249249
break;
250250
case MCA_BTL_BASE_AM_ATOMIC:
@@ -253,7 +253,7 @@ static inline size_t mca_btl_base_rdma_operation_size(mca_btl_base_module_t *btl
253253
return remaining;
254254
}
255255

256-
return size_t_min(remaining, btl->btl_max_send_size - sizeof(mca_btl_base_rdma_hdr_t));
256+
return opal_min(remaining, btl->btl_max_send_size - sizeof(mca_btl_base_rdma_hdr_t));
257257
}
258258

259259
static inline int mca_btl_base_rdma_tag(mca_btl_base_rdma_type_t type)
@@ -318,7 +318,7 @@ static void mca_btl_base_copy_to_segments(uint64_t addr, size_t max_len, size_t
318318
mca_btl_base_segment_t *segments, size_t segment_count)
319319
{
320320
void *seg0_data = (void *) ((uintptr_t) segments[0].seg_addr.pval + skip_bytes);
321-
size_t seg0_len = size_t_min(max_len, segments[0].seg_len - skip_bytes);
321+
size_t seg0_len = opal_min(max_len, segments[0].seg_len - skip_bytes);
322322

323323
if (seg0_len > 0) {
324324
BTL_VERBOSE(
@@ -330,7 +330,7 @@ static void mca_btl_base_copy_to_segments(uint64_t addr, size_t max_len, size_t
330330
}
331331

332332
for (size_t i = 1; i < segment_count && max_len; ++i) {
333-
size_t seg_len = size_t_min(segments[i].seg_len, max_len);
333+
size_t seg_len = opal_min(segments[i].seg_len, max_len);
334334

335335
BTL_VERBOSE(("packing %" PRIsize_t " bytes from 0x%" PRIx64 " to segment %" PRIsize_t,
336336
seg_len, addr, i));
@@ -458,13 +458,13 @@ mca_btl_base_rdma_start(mca_btl_base_module_t *btl, struct mca_btl_base_endpoint
458458
/* just go ahead and send the data */
459459
packet_size += size;
460460
} else if (!mca_btl_base_rdma_use_rdma_get (btl)) {
461-
packet_size += size_t_min (size, btl->btl_max_send_size - sizeof (*hdr));
461+
packet_size += opal_min (size, btl->btl_max_send_size - sizeof (*hdr));
462462
} else {
463463
use_rdma = true;
464464
}
465465
} else if (MCA_BTL_BASE_AM_GET == type) {
466466
if (!mca_btl_base_rdma_use_rdma_put(btl)) {
467-
packet_size += size_t_min(size, btl->btl_max_send_size - sizeof(*hdr));
467+
packet_size += opal_min(size, btl->btl_max_send_size - sizeof(*hdr));
468468
} else {
469469
use_rdma = true;
470470
}

0 commit comments

Comments
 (0)