Skip to content

libc: enable testcases requiring tini#310

Open
adamdebek wants to merge 2 commits intomasterfrom
adamdebek/exit_enable_host_tc
Open

libc: enable testcases requiring tini#310
adamdebek wants to merge 2 commits intomasterfrom
adamdebek/exit_enable_host_tc

Conversation

@adamdebek
Copy link
Contributor

JIRA: CI-365

Description

Motivation and Context

Types of changes

  • Bug fix (non-breaking change which fixes an issue)
  • New feature (non-breaking change which adds functionality)
  • Breaking change (fix or feature that would cause existing functionality to change)

How Has This Been Tested?

  • Already covered by automatic testing.
  • New test added: (add PR link here).
  • Tested by hand on: (list targets here).

Checklist:

  • My change requires a change to the documentation.
  • I have updated the documentation accordingly.
  • I have added tests to cover my changes.
  • All new and existing linter checks and tests passed.
  • My changes generate no new compilation warnings for any of the targets.

Special treatment

  • This PR needs additional PRs to work (list the PRs, preferably in merge-order).
  • I will merge this PR by myself when appropriate.

@github-actions
Copy link

github-actions bot commented Jan 11, 2024

Unit Test Results

9 462 tests  +29   8 873 ✅ +26   49m 45s ⏱️ - 1m 38s
  561 suites ± 0     585 💤 ± 0 
    1 files   ± 0       4 ❌ + 3 

For more details on these failures, see this check.

Results for commit dbf63a4. ± Comparison against base commit bf20f74.

This pull request removes 1 and adds 30 tests. Note that renamed tests count towards both.
phoenix-rtos-tests/libc/exit ‑ aarch64a53-zynqmp-qemu:phoenix-rtos-tests/libc/exit
phoenix-rtos-tests/libc/exit ‑ aarch64a53-zynqmp-qemu:phoenix-rtos-tests/libc/exit.stdlib_exit.atexit_few_calls
phoenix-rtos-tests/libc/exit ‑ aarch64a53-zynqmp-qemu:phoenix-rtos-tests/libc/exit.stdlib_exit.atexit_register_inside
phoenix-rtos-tests/libc/exit ‑ aarch64a53-zynqmp-qemu:phoenix-rtos-tests/libc/exit.stdlib_exit.atexit_two_nodes
phoenix-rtos-tests/libc/exit ‑ aarch64a53-zynqmp-qemu:phoenix-rtos-tests/libc/exit.stdlib_exit.stream_flush
phoenix-rtos-tests/libc/exit ‑ aarch64a53-zynqmp-qemu:phoenix-rtos-tests/libc/exit.unistd_Exit.SIGCHLD_sent
phoenix-rtos-tests/libc/exit ‑ aarch64a53-zynqmp-qemu:phoenix-rtos-tests/libc/exit.unistd_Exit.chk_if_exits
phoenix-rtos-tests/libc/exit ‑ aarch64a53-zynqmp-qemu:phoenix-rtos-tests/libc/exit.unistd_Exit.close_streams
phoenix-rtos-tests/libc/exit ‑ aarch64a53-zynqmp-qemu:phoenix-rtos-tests/libc/exit.unistd_Exit.exit_status_waitpid
phoenix-rtos-tests/libc/exit ‑ aarch64a53-zynqmp-qemu:phoenix-rtos-tests/libc/exit.unistd_Exit.new_parent_id
phoenix-rtos-tests/libc/exit ‑ aarch64a53-zynqmp-qemu:phoenix-rtos-tests/libc/exit.unistd_Exit.no_atexit
…

♻️ This comment has been updated with latest results.

@adamdebek adamdebek force-pushed the adamdebek/exit_enable_host_tc branch 3 times, most recently from 5ac1042 to e06f7b4 Compare January 11, 2024 15:31
@adamdebek adamdebek requested a review from damianloew January 11, 2024 15:37
Copy link
Contributor

@damianloew damianloew left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM

@nalajcie
Copy link
Member

wouldn't it break running these tests on host outside of docker?

@adamdebek
Copy link
Contributor Author

It should not, I checked it anyway.
image

@nalajcie
Copy link
Member

It should not, I checked it anyway.

It's broken on my host (I don't have tini installed):
image

(killed by a signal in the middle of testing)

@nalajcie
Copy link
Member

It should not, I checked it anyway.

(killed by a signal in the middle of testing)

seems to be killed by SIGPIPE on line 589, not sure if related to tini as I don't see signal handler for SIGPIPE anywhere.

image

@damianloew
Copy link
Contributor

It should not, I checked it anyway.

(killed by a signal in the middle of testing)

seems to be killed by SIGPIPE on line 589, not sure if related to tini as I don't see signal handler for SIGPIPE anywhere.

image

I also see this problem now, it seems to be not related with tini and orphaned child ad has to be solved (I'd suggest the separate PR). However I see some other issue related to this topic:

Because of such code some cases are skipped when running on host without tini:

	/* Check if tini is available */
	if (access(TEST_TINI_PATH, F_OK) != 0) {
		TEST_IGNORE_MESSAGE("Lack of init system in docker container");
	}

@adamdebek
Copy link
Contributor Author

It should not, I checked it anyway.

(killed by a signal in the middle of testing)

seems to be killed by SIGPIPE on line 589, not sure if related to tini as I don't see signal handler for SIGPIPE anywhere.

image

Yea, it is related to this issue: phoenix-rtos/phoenix-rtos-project#733
On host SIGPIPE is sent and it causes process to terminate, it didn't show up while using runner because runner ignores SIGPIPE and probably exit-test inherited this signal disposition.

@adamdebek adamdebek force-pushed the adamdebek/exit_enable_host_tc branch 2 times, most recently from 36d3bb1 to 4602cad Compare January 12, 2024 11:47
@adamdebek adamdebek requested a review from damianloew January 12, 2024 11:59
@adamdebek adamdebek force-pushed the adamdebek/exit_enable_host_tc branch from 4602cad to ace727b Compare January 12, 2024 12:13
Copy link
Member

@nalajcie nalajcie left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

maybe we should set default signal handlers in trunner just before running the test?

@adamdebek adamdebek force-pushed the adamdebek/exit_enable_host_tc branch from ace727b to dbf63a4 Compare February 6, 2026 22:11
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.

3 participants