Skip to content

Conversation

MichaelBrim
Copy link
Collaborator

Description

Allows users to explicitly set the Mercury address to use for server-to-server communication.

Motivation and Context

Useful when there are multiple interfaces that support the ofi+tcp protocol, or to use a different protocol.

How Has This Been Tested?

Tested in a docker environment using different network interface and protocol.

Types of changes

  • Bug fix (non-breaking change which fixes an issue)
  • New feature (non-breaking change which adds functionality)
  • Performance enhancement (non-breaking change which improves efficiency)
  • Code cleanup (non-breaking change which makes code smaller or more readable)
  • Breaking change (fix or feature that would cause existing functionality to change)
  • Testing (addition of new tests or update to current tests)
  • Documentation (a change to man pages or other documentation)

Checklist:

  • My code follows the UnifyFS code style requirements.
  • I have updated the documentation accordingly.
  • I have read the CONTRIBUTING document.
  • I have added tests to cover my changes.
  • All new and existing tests passed.
  • All commit messages are properly formatted.

@MichaelBrim
Copy link
Collaborator Author

@CamStan Have you had a chance to figure out why the CI builds are not running?

@CamStan
Copy link
Member

CamStan commented Sep 12, 2025

Have you had a chance to figure out why the CI builds are not running?

@MichaelBrim My apologies for the delay on this. I have the builds mostly working again, but am hitting a compilation error that I've argued myself in a circle on what a fix for this one might be:

testutil.c:20:12: error: static declaration of ‘asprintf’ follows non-static declaration
   20 | static int asprintf(char** strp, const char* fmt, ...)
      |            ^~~~~~~~
In file included from testutil.h:28,
                 from testutil.c:17:
/usr/include/stdio.h:403:12: note: previous declaration of ‘asprintf’ with type ‘int(char ** restrict,  const char * restrict, ...)’
  403 | extern int asprintf (char **__restrict __ptr,
      |            ^~~~~~~~

Builds are here: https://github.com/CamStan/UnifyFS/actions/runs/17686445589

@MichaelBrim
Copy link
Collaborator Author

@CamStan Yes, same issue as reported in #822 . I have a commit in my service-pool branch with my suggested fix, which is to not override the system definition and just use our own custom function (see #822 (comment))

Allows users to explicity set the Mercury address to use for
server-to-server communication. Useful when there are multiple
interfaces that support the ofi+tcp protocol, or to use a
different protocol.

TEST_CHECKPATCH_SKIP_FILES=common/src/unifyfs_configurator.h,docs/configuration.rst
@MichaelBrim MichaelBrim force-pushed the margo-interface-config branch from 82f5d41 to a1bd92a Compare September 29, 2025 19:19
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants