libxlio icon indicating copy to clipboard operation
libxlio copied to clipboard

issue: 4262473 Deprecate XLIO_SELECT_POLL_OS_FORCE

Open tomerdbz opened this issue 9 months ago • 6 comments

Description

Remove the deprecated XLIO_SELECT_POLL_OS_FORCE configuration parameter as it can be fully controlled by XLIO_SELECT_POLL_OS_RATIO and XLIO_SELECT_SKIP_OS parameters. This aligns with the original repo's direction to remove this configuration while maintaining compatibility.

The behavior of XLIO_SELECT_POLL_OS_FORCE can be replicated by setting:

  • XLIO_SELECT_POLL_OS_RATIO=1
  • XLIO_SELECT_SKIP_OS=1
What

Deprecate XLIO_SELECT_POLL_OS_FORCE configuration parameter and its related functionality.

Why ?
  • The XLIO_SELECT_POLL_OS_FORCE parameter should be marked as deprecated in the README and will be removed from future libxlio releases
  • The same behavior can be achieved using XLIO_SELECT_POLL_OS_RATIO and XLIO_SELECT_SKIP_OS parameters
  • This aligns with the libvma to remove this configuration while maintaining compatibility (https://github.com/Mellanox/libvma/pull/1104)
How ?

The changes will involve:

  1. Removing any logic that checks for this parameter
  2. Ensuring the behavior can be replicated using XLIO_SELECT_POLL_OS_RATIO=1 and XLIO_SELECT_SKIP_OS=1
  3. Updating documentation to remove references to this deprecated parameter
  4. Maintaining backward compatibility by ensuring the same behavior can be achieved through the alternative parameters

Change type

What kind of change does this PR introduce?

  • [ ] Bugfix
  • [ ] Feature
  • [ ] Code style update
  • [ ] Refactoring (no functional changes, no api changes)
  • [ ] Build related changes
  • [ ] CI related changes
  • [ ] Documentation content changes
  • [ ] Tests
  • [ ] Other

Check list

  • [ ] Code follows the style de facto guidelines of this project
  • [ ] Comments have been inserted in hard to understand places
  • [ ] Documentation has been updated (if necessary)
  • [ ] Test has been added (if possible)

tomerdbz avatar Apr 01 '25 06:04 tomerdbz

/review

tomerdbz avatar Apr 21 '25 06:04 tomerdbz

PR Reviewer Guide 🔍

Here are some key observations to aid the review process:

⏱️ Estimated effort to review: 3 🔵🔵🔵⚪⚪
🧪 No relevant tests
🔒 No security concerns identified
⚡ Recommended focus areas for review

Possible Logic Change

The removal of the select_poll_os_force logic in the io_mux_call::call function may alter behavior when *m_p_num_all_offloaded_fds == 0. Ensure that the new behavior aligns with the intended functionality and does not introduce regressions.

if (*m_p_num_all_offloaded_fds == 0) {
    // 1st scenario
    timer_update();
    wait_os(false);
    if (g_b_exit || is_sig_pending()) {
Environment Variable Handling

The removal of select_poll_os_force environment variable handling may impact configurations relying on this parameter. Verify that the alternative parameters (select_poll_os_ratio and select_skip_os_fd_check) are sufficient replacements.

if ((env_ptr = getenv(SYS_VAR_SELECT_POLL_OS_RATIO))) {
    select_poll_os_ratio = (uint32_t)atoi(env_ptr);
}

pr-review-bot-app[bot] avatar Apr 21 '25 06:04 pr-review-bot-app[bot]

@AlexanderGrissik , is it approved?

galnoam avatar May 05 '25 11:05 galnoam

@tomerdbz , please resolve conflicts

galnoam avatar May 12 '25 08:05 galnoam

@galnoam ready for merge

tomerdbz avatar May 14 '25 11:05 tomerdbz

bot:retest

tomerdbz avatar May 15 '25 07:05 tomerdbz

bot:retest

tomerdbz avatar Jun 09 '25 08:06 tomerdbz

@tomerdbz please move to fixed/closed

galnoam avatar Jul 07 '25 08:07 galnoam