Skip to content

Update shimtest to v0.2.0#236

Open
dmcgowan wants to merge 4 commits into
containerd:mainfrom
dmcgowan:update-shimtest-0.2
Open

Update shimtest to v0.2.0#236
dmcgowan wants to merge 4 commits into
containerd:mainfrom
dmcgowan:update-shimtest-0.2

Conversation

@dmcgowan

Copy link
Copy Markdown
Member

Includes repository rename

Copilot AI review requested due to automatic review settings June 23, 2026 16:21

Copilot AI left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

Copilot encountered an error and was unable to review this pull request. You can try again by re-requesting a review.

@dmcgowan dmcgowan force-pushed the update-shimtest-0.2 branch from 98e8557 to 1c819b5 Compare June 23, 2026 18:28
Copilot AI review requested due to automatic review settings June 23, 2026 20:08
@dmcgowan dmcgowan force-pushed the update-shimtest-0.2 branch from 1c819b5 to b0cfa9a Compare June 23, 2026 20:08

Copilot AI left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

Pull request overview

Copilot reviewed 9 out of 45 changed files in this pull request and generated no new comments.

dmcgowan added 3 commits June 23, 2026 13:18
The 2-second timeout in waitTimeout was too short for large payloads:
when a process exits with data still buffered in the vsock send queue,
the in-VM copy goroutine may still be writing to the vsock. If
waitTimeout fires before the goroutine completes, e.io.Close() closes
the vsock streams while data is in flight, causing truncation.

Increase to 30 seconds to match the host-side ioShutdown drain timeout.

Signed-off-by: Derek McGowan <derek@mcg.dev>
Signed-off-by: Derek McGowan <derek@mcg.dev>
The vsock stdio path writes stdout data from the VM to the host via
send() on a blocking unix socket. send() can return a partial byte
count without an error (short write), after which UnixProxy::sendmsg
was silently discarding the unwritten remainder, causing stdout
truncation.

Add a retry loop that advances the buffer slice on each call and
retries until the full buffer is sent. EINTR is absorbed and retried
transparently; other errors break the loop as before.

The patch is stored in script/patches/ and applied to libkrun during
the Docker build via git apply.

Signed-off-by: Derek McGowan <derek@mcg.dev>
@dmcgowan dmcgowan force-pushed the update-shimtest-0.2 branch from b0cfa9a to ca01ffa Compare June 23, 2026 20:25
Signed-off-by: Derek McGowan <derek@mcg.dev>
Copilot AI review requested due to automatic review settings June 23, 2026 20:31
@dmcgowan dmcgowan force-pushed the update-shimtest-0.2 branch from ca01ffa to 4703ca7 Compare June 23, 2026 20:31

Copilot AI left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

Pull request overview

Copilot reviewed 9 out of 45 changed files in this pull request and generated no new comments.

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