22/*
33 * Copyright (c) 2018 Los Alamos National Security, LLC. All rights
44 * reserved.
5+ * Copyright (c) 2025 Google, LLC. All rights reserved.
56 * $COPYRIGHT$
67 *
78 * Additional copyrights may follow
1112
1213#include "btl_uct_frag.h"
1314
14- static void mca_btl_uct_frag_completion_compat (uct_completion_t * uct_comp , ucs_status_t status )
15- {
16- mca_btl_uct_uct_completion_t * comp = (mca_btl_uct_uct_completion_t
17- * ) ((uintptr_t ) uct_comp
18- - offsetof(mca_btl_uct_uct_completion_t ,
19- uct_comp ));
20-
21- BTL_VERBOSE (("frag operation complete. frag = %p. status = %d" , (void * ) comp -> frag , status ));
22-
23- comp -> status = status ;
24- opal_fifo_push (& comp -> dev_context -> completion_fifo , & comp -> super .super );
25- }
26-
27- #if UCT_API >= ((1L <<UCT_MAJOR_BIT )|(10L << UCT_MINOR_BIT ))
28- static void mca_btl_uct_frag_completion (uct_completion_t * uct_comp ) {
29- mca_btl_uct_frag_completion_compat (uct_comp , uct_comp -> status );
30- }
31- #else
32- static void mca_btl_uct_frag_completion (uct_completion_t * uct_comp , ucs_status_t status ) {
33- mca_btl_uct_frag_completion_compat (uct_comp , status );
34- }
35- #endif
36-
3715static void mca_btl_uct_base_frag_constructor (mca_btl_uct_base_frag_t * frag )
3816{
3917 mca_btl_uct_reg_t * reg = (mca_btl_uct_reg_t * ) frag -> base .super .registration ;
@@ -42,14 +20,11 @@ static void mca_btl_uct_base_frag_constructor(mca_btl_uct_base_frag_t *frag)
4220 memset ((char * ) frag + sizeof (frag -> base ), 0 , sizeof (* frag ) - sizeof (frag -> base ));
4321
4422 OBJ_CONSTRUCT (& frag -> comp , mca_btl_uct_uct_completion_t );
23+ frag -> comp .frag = frag ;
4524
4625 frag -> base .des_segments = frag -> segments ;
4726 frag -> base .des_segment_count = 1 ;
4827
49- frag -> comp .uct_comp .func = mca_btl_uct_frag_completion ;
50- frag -> comp .uct_comp .count = 1 ;
51- frag -> comp .frag = frag ;
52-
5328 frag -> segments [0 ].seg_addr .pval = frag -> base .super .ptr ;
5429 frag -> uct_iov .buffer = frag -> base .super .ptr ;
5530 frag -> uct_iov .stride = 0 ;
0 commit comments